Cuprins:
- Pasul 1: Abilități necesare
- Pasul 2: Descoperiți dacă decorația dvs. de Halloween este „hackabilă”
- Pasul 3: Lista componentelor / hardware-ului
- Pasul 4: Prezentare generală a proiectului
- Pasul 5: tăiați conexiunea butonului
- Pasul 6: Adăugați un releu
- Pasul 7: Montați senzorul sonar DST1200
- Pasul 8: decideți dacă aveți nevoie de o incintă
- Pasul 9: Scrierea codului
2025 Autor: John Day | [email protected]. Modificat ultima dată: 2025-01-13 06:58
Acest proiect vă va arăta cum vă puteți „pirata” decorațiunile de Halloween și să le determinați să se comporte exact așa cum doriți!
Decorul de Halloween cu care lucrăm are următoarele funcții implicite:
- Activat prin comutatorul de aruncare (prezentat în videoclip)
- Activat de un sunet puternic
Scopul nostru pentru acest proiect este să-l activăm în schimb!
Pasul 1: Abilități necesare
Pentru acest proiect, veți avea nevoie de următoarele instrumente:
- ciocan de lipit
- stripuri de sârmă
De asemenea, vă va ajuta dacă aveți cunoștințe de bază despre programare. Am scris programul care controlează decorarea în C.
Pasul 2: Descoperiți dacă decorația dvs. de Halloween este „hackabilă”
Primul pas este să descoperiți dacă puteți modifica decorul de Halloween. De obicei, decorațiunile vor avea un mod demo care va activa componenta electronică a decorațiunii cu un simplu buton sau comutator. Dacă acesta este cazul, ai noroc. Puteți pur și simplu înlocui butonul cu un releu pentru a controla sistemul.
Pasul 3: Lista componentelor / hardware-ului
Iată ce am folosit:
- Phidget SBC4
- DST1200 - Sonar Phidget
- REL2002 - Releu semnal Phidget
- Carcasă impermeabilă
- Cablu Phidget
Pasul 4: Prezentare generală a proiectului
Acest proiect va avea următorul aspect:
- PhidgetSBC4 va rula codul programului nostru (scris în C). Acesta va fi conectat la senzorul sonar DST1200 și la releul de semnal REL2002 prin hub-ul VINT încorporat.
- Senzorul sonar va fi folosit pentru a detecta obiecte.
- Releul va fi conectat la firul demonstrativ al decorului și va fi utilizat pentru a activa decorarea pe baza citirilor din senzorul sonar.
Pasul 5: tăiați conexiunea butonului
Pentru a adăuga releul nostru, va trebui să scoatem butonul. Pur și simplu tăiați firele aproape de buton, apoi îndepărtați o parte din izolație.
Pasul 6: Adăugați un releu
Luați firele de la buton și conectați-le la releu.
Conectați un fir la terminalul comun și unul la terminalul normal deschis.
Pasul 7: Montați senzorul sonar DST1200
Unde amplasați senzorul sonar va depinde de aplicația dvs. Acest proiect va fi instalat într-o casă bântuită în aer liber, unde vizibilitatea va fi redusă, așa că senzorul sonar așezat direct deasupra nu va fi o problemă. Alternativ, puteți monta sonarul deasupra unei uși sau îndreptați-vă de la sol dacă doriți să-l ascundeți.
Am folosit niște lipici pentru a monta senzorul sonar. De asemenea, banda dublă ar funcționa excelent!
Pasul 8: decideți dacă aveți nevoie de o incintă
Acest proiect va fi în afara, astfel încât protejarea electronice este esențială.
SBC va sta într-o incintă impermeabilă cu releu. Am extins conexiunea releului la decor prin lipire pe niște fire și am folosit un cablu Phidget lung de 350 cm pentru a conecta SBC la senzorul sonar.
Pasul 9: Scrierea codului
Tot codul pentru acest proiect este deja scris și este inclus în fișierul halloween.c, deci, dacă doriți să-l implementați, tot ce va trebui să faceți este să modificați câteva lucruri (numere de serie, sincronizare etc.) și să îl compilați.
Pentru mai multe informații despre cum să compilați programe C pe SBC, consultați aceste linkuri:
- Instalarea pachetelor pentru dezvoltare
- Compilarea programelor C pe Linux
Iată o prezentare rapidă a codului:
- Creați obiecte DistanceSensor și DigitalOutput.
- Adresați Phidgets. Vedeți acest videoclip pentru mai multe informații.
-
Abonați-vă pentru a atașa și detașa evenimente pentru sonar și releu.
În evenimentul sonar atașați, setați intervalul de date la 100ms (intervalul minim de date)
-
Abonați-vă la evenimentele de schimbare a distanței pentru sonar.
În evenimentele de schimbare a distanței, vedeți dacă obiectul este mai aproape de 1 metru, dacă este, setați variabila objectDetected la 1
- În bucla while, verificați dacă obiectul a fost detectat. Dacă da, porniți și apoi opriți releul (aceasta va activa decorarea). Așteptați patru secunde, apoi dezactivați decorul.