Cuprins:

Mini lămpi de lavă controlate prin USB: 9 pași
Mini lămpi de lavă controlate prin USB: 9 pași

Video: Mini lămpi de lavă controlate prin USB: 9 pași

Video: Mini lămpi de lavă controlate prin USB: 9 pași
Video: 32 de combinații secrete pe tastatura ta 2024, Iulie
Anonim
Mini lămpi de lavă controlate prin USB
Mini lămpi de lavă controlate prin USB
Mini lămpi de lavă controlate prin USB
Mini lămpi de lavă controlate prin USB
Mini lămpi de lavă controlate prin USB
Mini lămpi de lavă controlate prin USB

Această instrucțiune descrie construirea unui set de lămpi de lavă alimentate și controlate prin USB de la o tastatură USB și a două lămpi de lavă Think Geek USB folosind un circuit de comutare cu releu de tranzistor simplu acționat de LED-urile tastaturii. Acesta ilustrează o modalitate simplă de a controla până la trei comutatoare cu latență ridicată (până la 120 volți, 0,5 amperi) printr-o conexiune USB, pentru o sumă minimă de bani (de la 0 la 40 USD în funcție de colecția dvs. de junk) și fără a avea pentru a programa un driver de control serial USB sau un microcontroler. Potențial, puteți utiliza tastele tastaturii pentru a adăuga peste 100 de intrări care ar tasta caractere care ar putea fi utilizate pentru a controla un program (așa cum este descris de randofo și de David Merrill, dar această abordare nu a fost utilizată pentru acest proiect. Acest proiect a fost conceput ca un cadou pentru prietenul meu Chris Lasher pentru a-și comemora mișcarea și începerea unui program postuniversitar în bioinformatică. Chris va face o mulțime de programări și este un adept al programării pragmatice / agile, unul dintre principalele sale fiind testarea unității. testele unitare ale unui program rulează, este plăcut să știți dacă reușesc sau nu, și care este predominant. Cel mai renumit, unii programatori pragmatici au realizat un sistem de feedback prin controlul lămpilor de lavă de dimensiuni mari dintr-un cadru de testare a unității prin conectarea unor dispozitive de control la domiciliu (le-a costat peste 60 USD). Lămpile le-au permis să vadă dacă testele trec sau nu, iar încălzirea treptată a unei lămpi le-a permis să vadă care ts au fost predominante. Aceasta este o idee interesantă, dar am vrut să-i fac lui Chris ceva care: 1) ar controla două lămpi mici de lava alimentate cu USB, 2) ar fi oprit de pe noul laptop fantezist al lui Chris și interfața prin USB (fără porturi vechi pe computerele mai noi, în special laptopurile), 3) ar fi ceva mai de casă și mai prietenoase cu hackerii, 4) ar fi mult mai ieftin. Există multe circuite disponibile online pentru proiecte de control al portului serial. Un proiect excelent pe care l-am adaptat a fost la https://www.windmeadow.com/node/4. Din păcate, aproape toate dispozitivele USB către serie nu permit bangingul de nivel scăzut (comutarea manuală a liniilor de control) care este necesar pentru utilizarea acestor circuite. O altă abordare ar fi cumpărarea unui circuit de interfață USB sau construirea unuia dintr-un microcontroler. Oricum ar fi, proiectul ar necesita o mulțime de coduri de microcontroler și drivere (chiar și folosind driverele de interfață umane preexistente sau un controler pre-fabricat). Am ales să rezolv această problemă cu o tastatură USB recuperată, deoarece acestea sunt relativ ieftine., și conține tot ce este necesar pentru trei ieșiri simple de pornire / oprire, sub forma LED-urilor numerice, majuscule și de blocare a defilării. Sub Linux există o serie de mecanisme pentru a comuta LED-urile dvs. dintr-un program sau linie de comandă (unul este chiar menționat în Cryptonomicon). Setled este cel mai simplu și este preinstalat pe aproape toate mașinile, ledd este construit pe un model client-server și există chiar și un modul în limbajul de programare Ruby. Sistemele de operare Windows și Mac și alte limbaje de programare ar trebui să aibă mecanisme comparabile - postați-le în comentarii dacă știți cum să comutați LED-urile tastaturii în alte sisteme de operare sau limbaje de programare! I-am oferit lui Chris prezentul său, iar acum nu poate vedea doar dacă testele unitare trec, toți programatorii din noul său departament pot să știe ce creator de bricolaj.

Pasul 1: Lista pieselor

2 lămpi de lavă USB (de la Thinkgeek sau froogle ~ 10 USD fiecare) 1 tastatură USB (o tastatură Apple vă va permite, de asemenea, să salvați două mufe USB, făcând inutilă pirateria listată în pasul „mufa USB a săracului”) 0 USD pentru o tastatură răzuită cu o cheie moartă sau două, până la 4 USD on-line (https://froogle.google.com/froogle?q=usb%20keyboard) la 30 USD la cea mai bună cumpărare) 2 relee de comutare reed (Radio Shack # 275-233 3,00 USD, Mouser # 677-OMR-112H 1,54 USD) toate celelalte componente electrice ar trebui să coste doar câțiva dolari. 2 tranzistoare (ca un 2N2222) (Radio Shack # 276-1617, Mouser # 511-2N2222A) 2 rezistențe (Radio Shack # 271-1124, Mouser # 291-4.7k, benzi galben-violet-roșu-auriu) 4 diode, ceva de genul 1N404 (Radio Shack # 276-1103, Mouser # 512-1N414B) 1 întrerupător de alimentare (SPST) un pic de sârmă 1 perfboard (Radio Shack # 276-1395) 1 carton de tip Altoids, o foaie de transparență / film de sus Instrumente: instrument de lipit sârmă și / sau sârmă și unealtă de scos cu fir sau unealtă manuală și terasă și biți un marker digital multimetrat și verde Sharpie Cunoaștere și abilități: cunoștințe de bază de lipire și electronică. Recomand cu tărie cartea lui Forest Mimm dacă sunteți începător în domeniul electronicii și doriți să știți cum funcționează circuitele. Timp: Acest proiect a durat două seri și o după-amiază, inclusiv depanarea.

Pasul 2: Evitația tastaturii

Eviscerarea tastaturii
Eviscerarea tastaturii
Eviscerarea tastaturii
Eviscerarea tastaturii
Eviscerarea tastaturii
Eviscerarea tastaturii

Îndepărtați tastatura cât mai nedistructivă posibil. Tastatura pe care o întindeam era o tastatură USB multimedia Dynex, numărul modelului DX-MKB101. Pe măsură ce dezasamblați, aveți grijă să nu rupeți firele subțiri care sunt adesea folosite. Ar trebui să vedeți ceva de genul celei de-a doua imagini după ce ați deschis tastatura. Doriți să salvați corpul circuitului și placa cu LED-urile (adesea pe aceeași placă de circuit) și să pierdeți tastatura voluminoasă. Sperăm că puteți detașa pelicula subțire de plastic care acționează ca întrerupătoarele tastaturii tastaturii sau într-un alt mod întrerupeți întrerupătoarele tastaturii fără a deteriora circuitul principal. A trebuit să tai niște plastic pentru a elibera placa, dar după ce ați terminat, ar trebui să puteți conecta tastatura, să o recunoașteți și să comutați LED-urile goale cu alte taste de blocare funcționale ale tastaturii conectate la același computer. Puteți avea mai multe tastaturi, USB și nu, conectate simultan cu majoritatea sistemelor de operare moderne și se vor declanșa reciproc blocarea capacelor și alte taste de blocare. În acest moment ar trebui să spun că este posibil să vă deteriorați sau să vă distrugeți computerul conectând circuite goale în el. Aveți grijă și continuați cu atenție. Dacă sunteți îngrijorat, testați cu un hub USB ieftin. Pe de altă parte, am încercat tot felul de lucruri în timp ce depanam acest circuit, inclusiv recablarea circuitelor live, iar laptopul meu rămâne neprajit.

Pasul 3: mufa USB a săracului

Plug USB Usor sărac
Plug USB Usor sărac
Plug USB Usor sărac
Plug USB Usor sărac

Nu am vrut să distrug mufele USB de pe lămpile de lavă, astfel încât acestea să poată fi utilizate separat, și astfel încât controlerul lămpii de lavă USB să fie modular (alte dispozitive ar putea fi utilizate pornite și oprite în locul lămpilor). Dacă ați dezasamblat o tastatură Apple în ultimul pas, ați avea două mufe USB-A de sex feminin pe care le puteți utiliza, astfel încât să puteți sări peste acest pas. De asemenea, puteți achiziționa mufele USB-A feminine de la Mouser sau le puteți salva de la un hub USB de rezervă. Am ales totuși să merg cu o opțiune ieftină și simplă - o mufă USB simplă făcută dintr-o folie de sârmă dungată (orice fir subțire ar fi suficient), un pic de placă de perfecțiune, și niște hârtie și folie de transparență pentru izolare. Pur și simplu tăiați un pic de perfboard pentru a intra în interiorul mufelor USB, adăugați sârmă prin orificii, astfel încât introducerea mufei să nu le scoată afară și să le permită să contacteze + 5V și conectorii de masă din mufă (consultați pinouturile de pe Faceți circuitul „pas pentru care conexiune este care). Apoi tăiați o peliculă de transparență pentru a acoperi o parte a plăcii, astfel încât firul perfboard să nu se scurteze pe corpul metalic al mufei. Blocați această placă izolată în mufa USB și confirmați cu multimetrul că firele fac un contact bun și nu sunt scurtcircuitate. Acesta este modul în care lămpile de lavă USB sunt conectate la circuit. Pentru acest proiect, faceți două dintre prizele acestor săraci om cap la cap pe același bit de perfboard (a se vedea imaginea). În timpul pasului de asamblare, veți vedea cum carcasa conține ambele prize USB de pe acest conector.

Pasul 4: Tăiați carcasa și placa de perfecționare

Cut Cut și Perfboard
Cut Cut și Perfboard
Cut Cut și Perfboard
Cut Cut și Perfboard

Descoperiți aspectul proiectului dvs. în incinta sa. Am folosit tot timpul popularul tablou Altoids. Găuriți o gaură în partea din spate a tabloului Altoids pentru comutatorul mare de pornire / oprire SPST, unul în față pentru cablul USB al tastaturii și două găuri în părțile laterale pentru mufele pentru lămpi de lavă USB. Tăiați fantele găurilor de cheie cu o roată de tăiere dremel sau cu ferăstrăul în jos în gaurile frontale și laterale, astfel încât cablurile USB să poată intra (a se vedea imaginea). Liniați găurile cu bandă adezivă pentru a preveni tăierea cablurilor. Decideți forma perfboard-ului pentru circuitul dvs. și decupați acea formă cu un instrument dremel. Aceasta va fi o potrivire destul de strânsă…

Pasul 5: Creați un circuit

Faceți circuitul
Faceți circuitul
Faceți circuitul
Faceți circuitul
Faceți circuitul
Faceți circuitul

Inima acestui proiect este pur și simplu utilizarea software-ului pentru a comuta LED-urile tastaturii și deturnarea LED-urilor pentru a comuta curenți mai mari. Ar trebui să menționez aici că unele LED-uri sunt pornite aplicând o tensiune pozitivă la anod, în timp ce alte circuite (cum ar fi cel de pe această tastatură) plutesc anodul LED înalt (deci LED-ul este oprit) și leagă catodul LED-ului la împământare când este activată (comutare verticală). Ați putea modifica acest circuit pentru a lucra cu oricare dintre ele, dar voi schema metoda de legare negativă. LED-ul oprit (setat la maxim) pornește un comutator cu tranzistor, care închide un releu și, în cele din urmă, lampa de lavă este activată. Aceasta înseamnă că comutatorul software pentru lampă va fi inversat de la LED. Am adaptat circuitul de la windmeadow, dar se bazează pe un comutator simplu cu tranzistor, așa cum este descris în majoritatea textelor electronice (p. 50 în cartea lui Mimm sau pe wikipedia). Am inclus un fișier ktechlab, astfel încât să puteți vedea cum funcționează comutatorul tranzistorului și o schemă completă (în format svg și png). Asigurați-vă că utilizați schema originală sau fișierul svn pentru imprimare, deoarece imaginile mai mici nu sunt clare. Va trebui să scoateți LED-urile de pe placa de circuite a tastaturii și să determinați polaritatea acestora și care parte este comutată cu un multimetru. Rulați câte un fir de la fiecare LED care va fi implicat într-un circuit de comutare (acestea sunt etichetate SCROLLLOCK și CAPSLOCK pe schemă). Desoldați + 5v și împământarea de pe circuitul tastaturii pentru a furniza energie perfboard-ului, apoi rulați fire pentru a returna alimentarea pe placa (acesta este + 5V și terenurile din schemă). Apoi urmați schema pentru a realiza circuitul, utilizând pinouturile componentelor pentru a identifica conexiunile. Asamblați mai întâi acest circuit pe o placă de testare și testați circuitul. Acesta a fost pasul în care am stabilit că LED-urile au fost ridicate în loc să fie reduse și au ajuns în general la punctul de haos maxim pe bancul meu de lucru. Când circuitul funcționează (testabil apăsând tasta de blocare a majusculelor sau tasta de blocare a defilării și văzând dacă lămpile de lavă se comută), aflați cum să împachetați componentele pe panoul de perfecționare. Wirewrap poate fi utilizat, dar cea mai simplă metodă de asamblare este să împingeți pur și simplu componentele prin găuri, să înfășurați cablurile și să le lipiți împreună. Testați dacă circuitul asamblat funcționează pe perfboard.

Pasul 6: Colorează lămpile de lavă USB

Lămpi de culoare USB Lava
Lămpi de culoare USB Lava

Faceți lămpile de lavă USB clare colorate colorând un petic al filmului de deasupra cu marcajele roșii sau verzi, apoi tăiați un cerc pentru a introduce în baza lămpii între lumină și camera „lava”. Reasamblați luminile de lavă.

Pasul 7: Adunarea finală

Asamblarea finala
Asamblarea finala
Asamblarea finala
Asamblarea finala
Asamblarea finala
Asamblarea finala

Cutiile de altoizi fac incinte grozave. Sunt buni la ecranare, dar din păcate sunt conductori și vor scurtcircuita circuitele neprotejate. Pentru a preveni acest lucru, tăiați cartonul și folia de transparență la dimensiunea de tablă și pentru a se încadra între placa de circuite a tastaturii și placa de bord. Introduceți întrerupătorul în gaura din spate a cutiei. Introduceți mufele USB cuplate la conectorul USB al omului sărac în tăieturile găurilor din lateral, astfel încât tabloul să țină fișele în conector. Prindeți în circuitul de perfboard și tastatura recuperată, izolați cu cartonul și folia de transparență. Încercați să închideți tabla (a noastră abia se potrivește).

Pasul 8: Cod

Lămpile de lavă vor fi controlate prin apeluri de sistem către programul „setled” care va porni și opri LED-urile de blocare a capacului și de defilare. Testați-l executând următoarele dintr-o linie de comandă (posibil ca root, în funcție de configurația dvs.) pentru a lăsa lampile să clipească: setleds -L -caps + scroll </ dev / tty0; sleep 3s; setleds -L + caps -scroll </ dev / tty0; dormi 3; Setleds -L </ dev / tty0 tty0 # pentru a reveni la starea în care LED-urile afișează setările tastaturii setate -L </ dev / tty0 Puteți include aceste apeluri de sistem în propriul program sau puteți utiliza modulul de testare a unei unități phython pe care Chris l-a scris pe baza cadrului de testare a unității PyUnit în python. Pur și simplu despachetați fișierele din arhiva tar (tar -xzvf lava_unittest.tar.gz de pe o consolă) și încercați următoarele comenzi de pe o consolă: python lava_unittest.py test_lava_unittest-passpython lava_unittest.py test_lava_unittest-failorpython test_lava_unittest-test_live fail.py Pentru a rula de la un emulator de terminal, decomentați liniile semnalizate de avertizare și încercați să rulați root ca un emulator de terminal. Cu acest cod, tot ce trebuie să faceți este să schimbați instanțele „unittest” cu „lava_unittest” în scripturile Python scrise pentru testarea unitara. Nu este necesară recodificarea.

Pasul 9: Ambalaj destul

Destul de ambalaj
Destul de ambalaj
Destul de ambalaj
Destul de ambalaj

Pentru a finaliza acest proiect, creați și imprimați propria etichetă sau utilizați imaginea inclusă (deschideți imaginea secong full-size sau fișierul xcf cu gimp). Pur și simplu lipiți pe capacul uimitoarelor lămpi de lavă controlate prin USB.

Recomandat: