Spisu treści:

Mini lampy lawowe sterowane przez USB: 9 kroków
Mini lampy lawowe sterowane przez USB: 9 kroków

Wideo: Mini lampy lawowe sterowane przez USB: 9 kroków

Wideo: Mini lampy lawowe sterowane przez USB: 9 kroków
Wideo: Imposing Abandoned 18th Century Castle: Mysteriously Left Everything! 2024, Lipiec
Anonim
Mini lampy lawowe sterowane przez USB
Mini lampy lawowe sterowane przez USB
Mini lampy lawowe sterowane przez USB
Mini lampy lawowe sterowane przez USB
Mini lampy lawowe sterowane przez USB
Mini lampy lawowe sterowane przez USB

Ta instrukcja opisuje budowę zestawu lamp lawowych zasilanych i kontrolowanych przez USB z klawiatury USB i dwóch lamp lawowych Think Geek USB za pomocą prostego obwodu przełącznika przekaźnika tranzystorowego sterowanego przez diody LED klawiatury. Ilustruje prosty sposób kontrolowania do trzech przełączników o wysokim opóźnieniu (do 120 woltów, 0,5 ampera) przez połączenie USB, za minimalną kwotę (0$ do 40$ w zależności od kolekcji śmieci) i bez konieczności posiadania aby zaprogramować sterownik portu szeregowego USB lub mikrokontroler. Potencjalnie można również użyć klawiszy klawiatury, aby dodać ponad 100 danych wejściowych, które będą wpisywać znaki, które mogą być używane do sterowania programem (jak opisali Randofo i David Merrill, ale to podejście nie zostało użyte w tym projekcie. Ten projekt został pomyślany jako prezent dla mojego przyjaciela Chrisa Lashera na pamiątkę jego przeprowadzki i rozpoczęcia studiów magisterskich z bioinformatyki. Chris będzie dużo programował i jest zwolennikiem Pragmatic / Agile Programing, którego jednym z zasad jest testowanie jednostkowe. trwają testy jednostkowe programu, dobrze jest wiedzieć, czy kończą się pomyślnie, czy nie, i co jest dominujące. Słynnie, niektórzy pragmatyczni programiści stworzyli system sprzężenia zwrotnego, kontrolując pełnowymiarowe lampy lawowe z platformy testów jednostkowych, łącząc ze sobą niektóre gotowe urządzenia do sterowania domem (kosztowały ponad 60 USD). Lampy pozwoliły sprawdzić, czy testy szły, czy nie, a stopniowe nagrzewanie się jednej lampy pozwoliło zobaczyć, która ts były dominujące. To fajny pomysł, ale chciałem zrobić z Chrisa coś, co: 1) będzie sterować dwoma małymi lampami lawowymi zasilanymi przez USB, 2) będzie zasilane z nowego, fantazyjnego laptopa Chrisa i interfejsu przez USB (brak starszych portów na nowszych komputerach, szczególnie laptopy), 3) byłyby nieco bardziej domowe i przyjazne dla hakerów, 4) byłyby przydzielone dużo taniej. Prostym rozwiązaniem wydaje się być sterowanie przekaźnikami z konwertera USB na port szeregowy. Istnieje wiele obwodów dostępnych on-line dla projektów sterowania portami szeregowymi. Jeden doskonały projekt, który zaadaptowałem, znajdował się pod adresem https://www.windmeadow.com/node/4. Niestety, prawie wszystkie urządzenia USB na szeregowe nie pozwalają na bit banging niskiego poziomu (ręczne przełączanie linii sterujących), które jest wymagane do korzystania z tych obwodów. Innym podejściem byłoby kupienie obwodu interfejsu USB lub zbudowanie go z mikrokontrolera. Tak czy inaczej, projekt wymagałby dużej ilości kodu mikrokontrolera i sterowników (nawet przy użyciu istniejących wcześniej sterowników interfejsu ludzkiego lub gotowego kontrolera). Postanowiłem rozwiązać ten problem za pomocą uratowanej klawiatury USB, ponieważ są one stosunkowo tanie, i zawiera wszystko, co jest potrzebne do trzech prostych wyjść włączania/wyłączania, w postaci diod LED liczby, czapek i blokady przewijania. W Linuksie istnieje wiele mechanizmów do przełączania diod LED z programu lub wiersza poleceń (jeden jest nawet wspomniany w Cryptonomiconie). Setled jest najprostszy i jest preinstalowany na prawie wszystkich maszynach, ledd jest zbudowany na modelu klient-serwer, a nawet jest moduł w języku programowania Ruby. Windows i Mac OS oraz inne języki programowania powinny mieć porównywalne mechanizmy - opublikuj je w komentarzach, jeśli wiesz jak przełączać diody klawiatury w innych systemach operacyjnych lub językach programowania! Podarowałem Chrisowi prezent, a teraz nie tylko może zobaczyć, czy jego testy jednostkowe mijają, wszyscy programiści w jego nowym dziale wiedzą, jakim jest fajnym majsterkowiczem.

Krok 1: Lista części

2 lampy lawowe USB (od Thinkgeek lub froogle ~ 10 USD każda) 1 klawiatura USB (klawiatura Apple pozwoliłaby również uratować dwa gniazda USB, czyniąc hakerię wymienioną w kroku „gniazdo USB biednego człowieka”) 0 USD za zeskrobana klawiatura z martwym klawiszem lub dwoma, od 4 USD on-line (https://froogle.google.com/froogle?q=usb%20keyboard) do 30 USD w najlepszym wypadku) 2 przekaźniki kontaktronowe (Radio Shack #275-233 3,00 USD, Mouser #677-OMR-112H 1,54 USD) wszystkie inne elementy elektryczne powinny kosztować tylko kilka dolarów. 2 tranzystory (jak 2N2222) (Radio Shack #276-1617, Mouser #511-2N2222A)2 rezystory (Radio Shack #271-1124, Mouser #291-4,7k, pasma żółto-fioletowo-czerwono-złote)4 diody, coś takiego jak 1N404 (Radio Shack #276-1103, Mouser #512-1N414B)1 wyłącznik zasilania (SPST)trochę drutu1 płyta perforowana (Radio Shack #276-1395)1 Altoids blaszany karton, arkusz folii/folii do podwieszaniaNarzędzia: lutownica i / lub narzędzie do owijania drutu i narzędzie do drutu dremel lub narzędzie ręczne i wiertło i wiertło cyfrowe bitsa multimetr i zielony marker sharpieWiedza i umiejętności: podstawowa wiedza na temat lutowania i elektroniki. Gorąco polecam książkę Forest Mimm, jeśli jesteś początkującym elektroniką i chciałbyś wiedzieć, jak działają obwody. Czas: Ten projekt zajął dwa wieczory i popołudnie, w tym rozwiązywanie problemów.

Krok 2: Patroszenie klawiatury

Patroszenie klawiatury
Patroszenie klawiatury
Patroszenie klawiatury
Patroszenie klawiatury
Patroszenie klawiatury
Patroszenie klawiatury

Rozłóż klawiaturę na części tak nieszkodliwie, jak to możliwe. Klawiatura, którą leżałem, była multimedialną klawiaturą USB firmy Dynex, numer modelu DX-MKB101. Podczas demontażu uważaj, aby nie złamać często używanych cienkich przewodów. Powinieneś zobaczyć coś podobnego do drugiego obrazu po otwarciu klawiatury. Chcesz uratować obudowę obwodu i płytkę z diodami LED (często na tej samej płytce drukowanej) i stracić nieporęczną klawiaturę. Miejmy nadzieję, że uda Ci się oderwać cienką folię, która działa jak przełączniki klawiszy klawiatury, lub w inny sposób odciąć przełączniki klawiatury, nie uszkadzając głównego obwodu. Musiałem przeciąć trochę plastiku, aby uwolnić płytkę, ale po zakończeniu powinieneś być w stanie podłączyć klawiaturę, rozpoznać ją i przełączyć gołe diody LED na inne, funkcjonalne klawisze blokady klawiatury podłączone do tego samego komputera. Możesz mieć wiele klawiatur, USB i nie, podłączonych jednocześnie do większości nowoczesnych systemów operacyjnych i będą one wzajemnie uruchamiać klawisze Caps Lock i inne klawisze blokady. W tym miejscu powinienem powiedzieć, że można uszkodzić lub zniszczyć komputer, podłączając do niego gołe obwody. Zachowaj ostrożność i postępuj ostrożnie. Jeśli się martwisz, przetestuj tani koncentrator USB. Z drugiej strony próbowałem różnych rzeczy podczas rozwiązywania problemów z tym obwodem, w tym zmiany okablowania obwodów pod napięciem, a mój laptop pozostaje niesmażony.

Krok 3: Wtyczka USB biednego człowieka

Wtyczka USB biednego człowieka
Wtyczka USB biednego człowieka
Wtyczka USB biednego człowieka
Wtyczka USB biednego człowieka

Nie chciałem niszczyć wtyczek USB w lampach lawowych, aby można było ich używać osobno, a kontroler lamp lawowych USB był modułowy (inne urządzenia można było włączać i wyłączać zamiast lamp). Jeśli zdemontowałeś klawiaturę Apple w ostatnim kroku, będziesz miał dwa żeńskie gniazda USB-A, których możesz użyć, więc możesz pominąć ten krok. Możesz także kupić żeńskie gniazda USB-A od mouser lub te ocalone z zapasowego koncentratora USB. Zdecydowałem się jednak na tanią i prostą opcję - proste gniazdo USB wykonane z jakiegoś pasiastego drutu (wystarczy dowolny cienki drut), trochę płyty perforowanej i trochę papieru i folii do izolacji. Po prostu wytnij kawałek płyty perforowanej, aby wejść WEWNĄTRZ wtyczek USB, włóż przewód przez otwory, aby włożenie wtyczki ich nie wyciągnęło i umożliwiło zetknięcie się ze złączami +5V i uziemienia we wtyczce (patrz wyprowadzenia na Wykonaj obwód” krok dla którego połączenie jest które). Następnie przytnij folię przezroczystą, aby pokryć jedną stronę płytki, aby drut płyty perforowanej nie zwierał się z metalowym korpusem wtyczki. Podłącz tę izolowaną płytkę do wtyczki USB i potwierdź multimetrem, że przewody mają dobry kontakt i nie są zwarte. W ten sposób lampy lawowe USB są podłączone do obwodu. W tym projekcie zrób dwie wtyczki tych biedaków łeb w łeb na tym samym kawałku płyty perforowanej (patrz obrazek). Podczas etapu montażu zobaczysz, jak obudowa trzyma obie wtyczki USB na tym złączu.

Krok 4: Wytnij obudowę i płytę perforowaną

Cięcie obudowy i płyty perforowanej
Cięcie obudowy i płyty perforowanej
Cięcie obudowy i płyty perforowanej
Cięcie obudowy i płyty perforowanej

Ustal układ swojego projektu w jego obudowie. Użyłem popularnej puszki Altoids. Wywierć otwór z tyłu puszki Altoids na duży włącznik/wyłącznik SPST, jeden z przodu na kabel USB klawiatury i dwa otwory po bokach na wtyczki USB lampy lawy. Wytnij otwory w kształcie dziurek od klucza za pomocą tarczy do cięcia dremel lub piły ręcznej do przednich i bocznych otworów, aby można było dopasować kable USB (patrz rysunek). Wysłać otwory taśmą klejącą, aby zapobiec przecięciu kabli. Wybierz kształt swojej płytki perforowanej do obwodu i wytnij go za pomocą narzędzia dremel. To będzie dość ciasny krój…

Krok 5: Wykonaj obwód

Wykonaj obwód
Wykonaj obwód
Wykonaj obwód
Wykonaj obwód
Wykonaj obwód
Wykonaj obwód

Sercem tego projektu jest po prostu używanie oprogramowania do przełączania diod LED klawiatury i przejmowanie diod LED w celu przełączania większych prądów. Powinienem tutaj wspomnieć, że niektóre diody LED są włączane poprzez przyłożenie dodatniego napięcia do anody, podczas gdy inne obwody (takie jak ten w tej klawiaturze) unoszą anodę LED wysoko (więc dioda LED jest wyłączona) i wiążą katodę diody LED z uziemienie, gdy jest włączony (przełączanie pull-down). Możesz zmodyfikować ten obwód, aby działał z którymkolwiek, ale przedstawię schemat ujemnej metody wiązania. Zgaszona dioda LED (ustawiona wysoko) włącza przełącznik tranzystorowy, który zamyka przekaźnik, a na koniec włącza się lampa lawowa. Oznacza to, że przełącznik oprogramowania lampy zostanie odwrócony od diody LED. Układ zaadaptowałem z Windmeadow, ale opiera się on na prostym przełączniku tranzystorowym, jak to opisano w większości tekstów o elektronice (s. 50 w książce Mimma lub na wikipedii). Dołączyłem plik ktechlab, dzięki czemu możesz zobaczyć, jak działa przełącznik tranzystorowy, oraz pełny schemat (w formatach svg i png). Pamiętaj, aby użyć oryginalnego schematu lub pliku svn do wydrukowania, ponieważ mniejsze obrazy nie są wyraźne. Będziesz musiał usunąć diody LED z płytki drukowanej klawiatury i określić ich biegunowość i która strona jest przełączana za pomocą multimetru. Uruchom jeden przewód z każdej diody LED, która będzie zaangażowana w obwód przełączający (są one oznaczone na schemacie jako SCROLLLOCK i CAPSLOCK). Odlutuj +5V i uziemienie z obwodu klawiatury, aby zapewnić zasilanie płytce perforowanej, a następnie poprowadź przewody, aby przywrócić zasilanie do płyty (na schemacie jest to +5V i uziemienie). Następnie postępuj zgodnie ze schematem, aby utworzyć obwód, używając wyprowadzeń elementów do identyfikacji połączeń. Najpierw zmontuj ten obwód na płytce prototypowej i przetestuj obwód. To był etap, w którym ustaliłem, że diody LED były podciągane, a nie obniżane, i ogólnie osiągnęły punkt maksymalnego chaosu na moim stole warsztatowym. Kiedy obwód działa (można to przetestować, naciskając klawisz Caps Lock lub Scroll Lock i sprawdzając, czy lampy lawowe się przełączają), zastanów się, jak spakować komponenty na płytkę perforowaną. Można użyć Wirewrap, ale najprostszą metodą montażu jest po prostu wsunięcie komponentów przez otwory, owinięcie wyprowadzeń i zlutowanie ich razem. Sprawdź, czy zmontowany obwód działa na płycie perforowanej.

Krok 6: Kolorowe lampy lawowe USB

Kolorowe lampy lawowe USB
Kolorowe lampy lawowe USB

Pokoloruj przezroczyste lampy lawowe USB, barwiąc fragment folii górnej czerwonymi lub zielonymi markerami, a następnie wycinając okrąg do wstawienia w podstawę lampy między lampą a komorą „lawy”. Zmontuj światła lawowe.

Krok 7: Montaż końcowy

Montaż końcowy
Montaż końcowy
Montaż końcowy
Montaż końcowy
Montaż końcowy
Montaż końcowy

Puszki Altoids są doskonałymi obudowami. Są dobre w ekranowaniu, ale niestety są przewodnikami i zwierają niechronione obwody. Aby temu zapobiec, przytnij karton i folię do rozmiaru puszki i zmieszczą się między płytką drukowaną klawiatury a płytą perforowaną. Włóż przełącznik w tylny otwór w puszce. Włóż wtyczki USB połączone ze złączem USB biedaka do dziurki od klucza z boku, tak aby cyna trzymała wtyczki w złączu. Wepchnij w płytę perforowaną i odzyskany obwód klawiatury, zaizoluj tekturą i folią przezroczystą. Spróbuj zamknąć puszkę (nasze ledwo pasują).

Krok 8: Kod

Lampy lawowe będą sterowane przez wywołania systemowe do programu „ustalonego”, który będzie włączał i wyłączał diody LED capslock i scroll lock. Przetestuj to, uruchamiając następujące polecenie z wiersza poleceń (możliwe jako root, w zależności od konfiguracji), aby lampy migały:setleds -L -caps +scroll < /dev/tty0;sen 3s;setleds -L +caps -scroll < /dev/tty0; spać 3; setleds -L </dev/tty0załamanie tego:#Aby włączyć czerwoną lampę:setleds -L -caps +przewiń </dev/tty0#aby włączyć zieloną lampę:setleds -L +caps -przewiń </dev/ tty0#aby powrócić do stanu, w którym diody LED wyświetlają ustawienia klawiaturysetleds -L </dev/tty0Możesz uwzględnić te wywołania systemowe we własnym programie lub użyć modułu testów jednostkowych phythona, który napisał Chris w oparciu o zbudowany framework testów jednostkowych PyUnit w Pythona. Po prostu rozpakuj pliki z archiwum tar (tar -xzvf lava_unittest.tar.gz z konsoli) i wypróbuj następujące polecenia z konsoli: python lava_unittest.py test_lava_unittest-passpython lava_unittest.py test_lava_unittest-failorpython test_lava_unitthtest-pass. fail.pyAby uruchomić z emulatorów terminala, odkomentuj linie z ostrzeżeniem i spróbuj uruchomić itas root z emulatora terminala. Z tym kodem wystarczy zamienić instancje "unittest" na "lava_unittest" w skryptach Pythona napisanych dla testów jednostkowych. Nie jest konieczne ponowne kodowanie.

Krok 9: Ładne opakowanie

Ładne opakowanie
Ładne opakowanie
Ładne opakowanie
Ładne opakowanie

Aby zakończyć ten projekt, wykonaj i wydrukuj własną etykietę lub użyj dołączonego obrazu (otwórz pełnowymiarowy drugi obraz lub plik xcf za pomocą gimpa). Po prostu wklej na okładce swoich niesamowitych lamp lawowych sterowanych przez USB.

Zalecana: