Cuprins:

Împiedicarea antiefracției „Singur acasă” / Utilizați Attiny13 pentru a conduce un motor Steppermotor și un servo: 5 pași
Împiedicarea antiefracției „Singur acasă” / Utilizați Attiny13 pentru a conduce un motor Steppermotor și un servo: 5 pași

Video: Împiedicarea antiefracției „Singur acasă” / Utilizați Attiny13 pentru a conduce un motor Steppermotor și un servo: 5 pași

Video: Împiedicarea antiefracției „Singur acasă” / Utilizați Attiny13 pentru a conduce un motor Steppermotor și un servo: 5 pași
Video: BEBE LAVI ESTE IN MARE PERICOL! Hotii I-au Furat Diamantele 2024, Noiembrie
Anonim
„Singur la domiciliu”, prevenirea efracției / Folosiți Attiny13 pentru a conduce un Steppermotor și un Servo
„Singur la domiciliu”, prevenirea efracției / Folosiți Attiny13 pentru a conduce un Steppermotor și un Servo
„Singur la domiciliu”, prevenirea efracției / Folosiți Attiny13 pentru a conduce un Steppermotor și un Servo
„Singur la domiciliu”, prevenirea efracției / Folosiți Attiny13 pentru a conduce un Steppermotor și un Servo

Acesta ar putea fi unul dintre cele mai ciudate proiecte ale mele:-) Dar chiar dacă nu sunteți interesat să păstrați spargătorii la distanță, acest proiect poate fi folosit pentru orice lucru în care aveți nevoie pentru a conduce un motor cu pas sau servomotor, sau chiar mai multe motoare de curent continuu cu un Attiny13 Cei mai mulți dintre voi își vor aminti filmul Singur acasă, unde McCauly Calkin încearcă să pretindă spărgătorilor că, de fapt, nu este singur acasă, punând o figură de carton pe un recorder și punând corzi pe o altă figură de carton, astfel încât să poată imita oamenii În timp ce sunt departe de casă, sunt foarte conștient de faptul că îmi las casa în urmă ca și cum ar fi încă ocupată. arata ca cineva este prezent. Am adăugat un „TV fals” care face să pară că se joacă un televizor. Toate aceste lucruri ajută, dar dacă vine vorba de simularea prezenței, nu este nimic mai bun decât mișcarea reală. Așadar, aveam nevoie de ceva care să se miște și, deoarece nu am un player de disc și doream ceva care să funcționeze în timp ce eram plecat, aveam nevoie de ceva ceva mai solid. să o rotesc cu 90 de grade, astfel încât să blocheze alternativ lumina și nu să blocheze lumina. Am făcut asta mai întâi cu un servo ieftin, dar asta a dat două probleme: a fost greu să adaug o figură de carton chiar și una nu prea mare, pe axă și o dată Am făcut-o, dragul ar fi prea mult pentru acel servo. Un servo mai puternic a avut o creștere foarte puternică a prețului, așa că am început să mă gândesc la „Steppermotor”. Încă mai aveam unul greu din cauza radiatorului atașat la el, așa că mi se părea ideal. Un program de transformare a motorului Steppermotor a fost ușor scris pe un Arduino, dar dragul era încă o problemă, deoarece figura mea din carton avea dimensiunea de un trunchi uman (aproximativ 80 cm lungime). Fie că trebuia să întăresc cartonul, făcându-l mai greu, fie trebuia să-l fac mai mic. Aceasta din urmă părea să fie cea mai bună soluție, întrucât puteam să o pun mai aproape de o lumină. În tot acest timp mă jucasem și cu gândul de a avea o figură în picioare. Mi-au trecut prin cap motoare, scripeți etc. și, deși nu am renunțat complet la această idee, deocamdată am decis să adaug o mică caracteristică figurinei din carton și asta a fost un cap în mișcare. Ideea mea a fost ca cifra să se întoarcă cu 90 de grade, așa că ar arunca o umbră completă și apoi ar trebui să dea din cap. și aici a venit servo-ul meu din nou. De fapt nu am vrut să sacrific un întreg arduino doar pentru a transforma o figură de carton. În context, am ghicit un Attiny13 pe care îl aveam așezat în jurul meu ar putea face treaba la fel de bine: 4 pini pentru stepper, 1 pin pentru servo. asta este exact ceea ce un Attiny13 are de oferit. Recunosc că, uneori, pot fi foarte dens, m-am gândit la tot felul de scenarii despre cum să funcționez contarpția pentru a funcționa la un anumit moment, pentru un anumit moment, deoarece ideal am vrut să controlez din „Simulatorul acasă” pe care l-am menționat mai devreme. Așa că m-am gândit la un fir sau la o conexiune wireless, dar atunci Attin13 nu a fost cea mai bună idee care are o problemă cu Manchestercode și am avut nevoie de un pin pentru receptor și sensibilitatea acelor receptoare ieftine nu este atât de grozavă. Așa că m-am gândit deja doar la un comutator temporizator comercial, dar apoi mi-am dat seama că sunt un idiot. Întrucât lucrul ar avea nevoie de propria sa sursă de alimentare, de ce să nu iau un obstacol și să-l pun într-un comutator de la distanță pe care îl puteam controla deja din simulatorul meu de la domiciliu. Deci, am început să construiesc designul meu final.

Un ServoA Steppermotor ieftin O cutie de carton Un Attiny13Un soclu IC cu 8 pini O bucată de bord 9 benzi de 17 găuri Unele cabluri prelungitoare servo O ULN2003A Soclu IC cu 16 pini O rezistență de 10 k O placă de tăiere din plastic (sau o altă bucată de material ușor) antet masculin cu 3 pini (pentru servo) Antet de sex masculin cu 6 pini (pentru motorul pas cu pas) bandă lipită (desigur)

În plus: o modalitate de a programa Attiny

Doar o remarcă despre Steppermotor. Folosesc un vechi 55SI-25DAWC, dar dacă totuși trebuie să cumpărați unul, este disponibil un combo foarte ieftin cu motor de pas / driver: 28BYJ-48. Motorul în sine costă 1,50 euro, dar pentru 2 euro puteți obține același motor cu o placă de șofer. deci este o afacere bună

Pasul 1: „Acasă singur” Construirea omului de carton

„Singur acasă” Construirea omului de carton
„Singur acasă” Construirea omului de carton
„Singur acasă” Construirea omului din carton
„Singur acasă” Construirea omului din carton

Dintr-o cutie am tăiat o bucată de 40x20 cm și o bucată de 18x18. Am atașat cele două piese împreună ca un cap și un trunchi, folosind bandă adezivă, lăsând un mic spațiu între cele două piese, dar acoperit de banda adezivă, pentru a forma o balama pentru gât. (Imaginile fac acest lucru foarte clar) Din vechea tăietură am tăiat o bucată de 20 cm lungime, aproximativ o jumătate de cm grosime (grosimea plăcii) și aproximativ 1,5 cm lățime. Cea de 1,5 cm a fost suficientă pentru a se potrivi cu puntea pasului meu. dacă aveți un pas cu pas diferit, asigurați-vă că piesa pe care ați tăiat-o este suficient de largă pentru axa pasului dvs. Forat un punct mort în gaură care s-ar potrivi cu axa mea. apoi am lipit plasticul de baza cartonului „Tors” Doar sub „gât”, din bucăți de carton am construit un suport pentru servo. Desigur, acest lucru se poate face cu un fier de călcat (sau din plastic), dar este puțin greu de atașat la trunchiul din carton, așa că am folosit carton pentru a se potrivi servo-ului. Am adăugat un braț la servo realizat dintr-o bucată de plastic de 11 x 0,6 x 0,6 de pe placa de tăiere și am atașat-o pe Servo. Din nou, uitați-vă la imagini pentru a vedea cum se face acest lucru. Deși pasul meu era suficient de greu pentru a transporta cifra de carton, cuplul și tracțiunea cauzate de rotirea acestuia ar face ca motorul să înceapă să "meargă", așa că am creat o placă de bază din 24 * 11 cm de tăiere. Am forat două găuri pentru a atașa motorul pas cu pas și am încă un spațiu suficient pentru controler. Deși servo se învârte la 180 de grade, am poziționat brațul astfel încât să nu ridice capul complet drept. În acest fel, cade ușor înapoi atunci când servo-ul se întoarce în poziția 0

Pasul 2: „Acasă singur” Construirea controlerului

„Acasă singur” Construirea controlerului
„Acasă singur” Construirea controlerului
„Acasă singur” Construirea controlerului
„Acasă singur” Construirea controlerului
„Acasă singur” Construirea controlerului
„Acasă singur” Construirea controlerului
„Acasă singur” Construirea controlerului
„Acasă singur” Construirea controlerului

Controlerul este An Attiny13, atașat la un ULN2003. Deși în versiunea mea am folosit ceva mai mulți pini pentru a face placa mai flexibilă de utilizat pentru alte proiecte, singurele anteturi de care aveți nevoie sunt un antet servo cu 3 pini masculin și un antet tată cu 6 pini pentru stepper

Pasul 3: „Singur acasă”: software-ul

EDITARE 2019 Proiectul a fost realizat pe baza nucleului „Smeezekitty”, popular odată pentru Attiny13. MicroCore de acum des folosit de la MCUDude pare să aibă probleme cu variabilele din instrucțiunile delayMicroseconds. Dacă îl utilizați, înlocuiți „delayMicroseconds (300 + p * (2500/180));” prin „întârziere (5);”

Programul de mai sus arată cum să conduc un pas cu pas special și poate fi necesar să schimbați valorile scrise în PORTB dacă aveți un pas cu pas. Deoarece Attiny13 este destul de mic în memorie și, de asemenea, nu oferă prea mulți pini, programului îi lipsește ceva sofisticare. Scrierea directă în PORTB este OK, dar în acest caz se va scrie și un „0” în PB4 și PB5. PB5 nu este o mare problemă, dar poate doriți să utilizați PB4. În cazul meu, acolo am pus servo-ul meu și asta nu provoacă într-adevăr o problemă, deoarece nu le folosesc în același timp.

Cu toate acestea, dacă doriți să utilizați un alt microcontroler, cum ar fi un 328 și doriți să evitați scrierea pe PB4 și PB5 și PB6 și PB7, utilizați o mască pentru a scrie numai pe bitul 0-3. Masca pentru a face acest lucru este B00001111.

Dacă doriți apoi să setați biții de biți 0 și 2, mergeți astfel:

În loc de PORTB = 5, spuneți: PORTB = (masca PORTB & ~) | (B00000101);

Pentru cei care consideră acest lucru prea criptic:

mai întâi AND este valoarea PORTB cu masca NOT și SAU este rezultatul cu valoarea pe care dorim să o scriem și o atribuie înapoi la PORTB.

Deci, să presupunem PORTB = 00010000 și vrem să îi scriem 00000101, nu putem atribui asta imediat, deoarece acest lucru ar elimina PB4.

Cu toate acestea, dacă facem așa cum este descris, devine:

PORTB = (PORTB & 11110000) | 00000101

PORTB = (00010000 & 11110000) | 00000101

PORTB = 00010000 | 00000101

PORTB = 00010101

Ne-am scris valoarea și am păstrat PB4

Deci, de ce nu putem imediat SAU PORTB cu valoarea pe care o dorim în locul AND-ing mai întâi?

Ei bine, pentru că s-ar putea să păstreze PB4 și PB5 … dar păstrează și PB3-PB0 neschimbat dacă unul dintre ei conține deja un „1”

Desigur, inversarea măștii nu ar fi necesară dacă am defini-o deja inversată, dar este o practică obișnuită să o faci ca atare

Pasul 4: „Singur la domiciliu”, prevenirea efracției: utilizați

vizionați videoclipul pentru a vedea cum funcționează (s-a rotit -90 grade, îmi pare rău pentru asta)

Intenția acestui dispozitiv este de a arunca umbre în mișcare pe perdele sau jaluzele. Prin urmare, funcționează cel mai bine cu perdelele de lumină. Dispozitivul în sine nu ar trebui să fie vizibil din exterior. Asigurați-vă că are o sursă de lumină undeva în spatele ei. Îl controlez trimițând un semnal RF la comutatorul de la distanță de la priza de alimentare care alimentează alimentatorul de blocare pentru acest dispozitiv, dar puteți utiliza și un cronometru.

Pasul 5: „Singur acasă” Ce nu a funcționat ……

Acest videoclip arată unul dintre experimentele mele anterioare cu un trunchi mai mare și doar un servo simplu. Evident, nu este un design bun

Recomandat: