Turinys:

Įsilaužimo atgrasymo priemonė „Vienas namuose“/ naudokite „Attiny13“, kad vairuotumėte žingsninį ir servo variklį: 5 žingsniai
Įsilaužimo atgrasymo priemonė „Vienas namuose“/ naudokite „Attiny13“, kad vairuotumėte žingsninį ir servo variklį: 5 žingsniai
Anonim
„Vienišų namų“įsilaužimo atgrasymo priemonė/ naudokite „Attiny13“vairuodami žingsninį ir servo variklį
„Vienišų namų“įsilaužimo atgrasymo priemonė/ naudokite „Attiny13“vairuodami žingsninį ir servo variklį
„Vienišų namų“įsilaužimo atgrasymo priemonė/ naudokite „Attiny13“vairuodami žingsninį ir servo variklį
„Vienišų namų“įsilaužimo atgrasymo priemonė/ naudokite „Attiny13“vairuodami žingsninį ir servo variklį

Tai kol kas gali būti vienas keisčiausių mano projektų:-) Bet net jei nesate suinteresuoti, kad įsilaužėliai nebūtų atokiau, šis projektas gali būti naudojamas bet kur, kur reikia vairuoti žingsninį arba servo variklį, ar net kelis nuolatinės srovės variklius su „Attiny13“. Dauguma jūsų prisimins filmą „Vienas namuose“, kuriame McCauly Calkinas bando apsimesti įsilaužėliams, kad iš tikrųjų jis nėra vienas namuose, uždėdamas kartoninę figūrą ant įrašų grotuvo ir uždėjęs stygas ant kitos kartoninės figūros, kad jis galėtų mėgdžioti žmones. šokiai. Kadangi dažnai būnu toli nuo namų, aš labai suprantu, kaip palikti savo namus, tarsi jie vis dar būtų užimti. Dėl to aš anksčiau paskelbiau „Namuose simuliatorių“, kuris perjungia žibintus pagal tam tikrą modelį pakankamai atsitiktinai, kad tai padarytų atrodo, kad kažkas yra. Pridėjau „netikrą televizorių“, kuris atrodo, kad yra televizorius. Visi šie dalykai padeda, bet jei reikia imituoti buvimą, nėra nieko geriau nei tikrasis judėjimas. Taigi man reikėjo kažko, kas judėjo, ir kadangi neturiu įrašų grotuvo ir norėjau kažko, kas galėtų veikti, kol buvau toli, man reikėjo kažko šiek tiek tvirtesnės būsenos. Akivaizdžiausias būdas sukurti kartoninę figūrą būtų judėjimo įspūdis pasukti 90 laipsnių kampu, kad jis pakaitomis užblokuotų šviesą, o ne užblokuotų šviesą. Pirmiausia tai padariau pigiu servo varikliu, tačiau tai sukėlė dvi problemas: prie ašies ir vieną kartą buvo sunku pridėti net ne per didelę kartoninę figūrą Aš tai padariau, tam servui to tempimo būtų tiesiog per daug. Galingesnė servo kaina labai pakilo, todėl pradėjau galvoti apie „žingsninį variklį“. Aš vis dar turėjau vieną, kuris buvo sunkus dėl prijungto radiatoriaus, todėl atrodė idealus. „Steppermotor“pasukimo programa buvo lengvai parašyta „Arduino“, tačiau vilkimas vis tiek sukėlė šiek tiek problemų, nes mano kartono figūra buvo žmogaus liemuo (apie 80 cm ilgio). Turėjau arba sustiprinti kartoną, padaryti jį sunkesnį, arba padaryti mažesnį. Pastarasis atrodė geriausias sprendimas, nes galėjau jį priartinti prie šviesos. Visą tą laiką aš taip pat žaidžiau su mintimi, kad atsistosiu. Mano galvoje sukosi varikliai, skriemuliai ir tt todėl jis mestų visą šešėlį, o paskui linktelėtų galva. ir čia vėl įėjo mano servo. Tiesą sakant, nenorėjau paaukoti viso arduino, kad tik apsuktum kartoninę figūrą. Kita vertus, aš spėjau, kad „Attiny13“, kurį turėjau, galėjo atlikti darbą taip pat gerai: 4 smeigtukai žingsniukui, 1 kaištis servo. tai yra būtent tai, ką gali pasiūlyti „Attiny13“. Pripažįstu, kad kartais galiu būti labai tanki, nes pagalvojau apie įvairius scenarijus, kaip valdyti kontūro darbą tam tikru laiku, tam tikrą laiką, nes idealiu atveju norėjau kontroliuoti iš anksčiau minėto „Namų simuliatoriaus“. Taigi aš galvojau apie laidą ar belaidį ryšį, bet tada „Attin13“nebuvo geriausia idėja, turinti problemų su „Manchestercode“, ir man reikėjo imtuvo kaiščio, o tų pigių imtuvų jautrumas nėra toks didelis. Taigi aš jau galvojau tik apie komercinį laikmačio jungiklį, bet tada supratau, kad esu idiotas. Kadangi tam reiktų savo PSU, kodėl gi ne paėmus sieną ir įdėjus ją į nuotolinį jungiklį, kurį jau galėčiau valdyti iš savo „At Home“simuliatoriaus. Taigi, aš pradėjau kurti savo galutinį dizainą.

Pigus „ServoA Steppermotor“Kartoninė dėžutė „Attiny13“8 8 kontaktų IC lizdas Juostelės gabalas 9 juostelės iš 17 skylių Kai kurie servo prailginimo laidai ULN2003A 16 kontaktų IC lizdas 10 k rezistorius Plastikinė pjaustymo lenta (arba kita lengva medžiaga) 3 kontaktų antraštė (servo) 6 kontaktų kištukinė galvutė (žingsninio variklio) klijavimo juosta (žinoma)

Papildomai: būdas programuoti „Attiny“

Tiesiog pastaba apie žingsninį variklį. Aš naudoju seną 55SI-25DAWC, bet jei vis tiek turite jį nusipirkti, yra labai pigus žingsninio variklio/tvarkyklės derinys: 28BYJ-48. Pats variklis kainuoja 1,50 euro, tačiau už 2 eurus tą patį variklį galite įsigyti su vairuotojo lenta. taigi tai geras sandoris

1 žingsnis: „Vienas namuose“Kartono žmogaus kūrimas

„Vienas namuose“- kartono kūrimas
„Vienas namuose“- kartono kūrimas
„Vienas namuose“- kartono kūrimas
„Vienas namuose“- kartono kūrimas

Iš dėžutės išpjoviau 40x20 cm gabalėlį ir 18x18 gabalėlį. Dvi dalis sujungiau kaip galvą ir liemenį, naudodami lipnią juostą, palikdamas nedidelį tarpą tarp dviejų dalių, bet padengtas lipnia juostele, kad susidarytų kaklo lankstas. (Nuotraukos tai labai aiškiai parodo) Iš senos pjaustymo lentos išpjoviau 20 cm ilgio, maždaug pusės cm storio (lentos storis) ir apie 1,5 cm pločio gabalėlį. 1,5 cm pakako, kad tilptų mano žingsniuko ašis. jei turite kitą žingsninį žingsnį, įsitikinkite, kad supjaustytas gabalas yra pakankamai platus jūsų žingsninio ašiai. Išgręžtas skylės negyvas centras, kuris tiktų mano ašiai. tada priklijavau plastiką prie kartono „Liemens“pagrindo po „kaklu“iš kartono gabalų aš pastatiau laikiklį savo servui. Žinoma, tai galima padaryti naudojant kampinį lygintuvą (arba plastiką), tačiau jį šiek tiek sunku pritvirtinti prie kartono liemens, todėl aš tiesiog naudoju kartoną, kad tilptų servo. Aš pridėjau ranką prie servo, pagaminto iš 11 x 0,6 x 0,6 plastiko gabalo iš pjaustymo lentos, ir pritvirtinau jį prie „Servo“. Dar kartą pažiūrėkite į paveikslėlius, kad pamatytumėte, kaip tai daroma. Nors mano žingsnelis buvo pakankamai sunkus nešioti kartoninę figūrą, sukimo momentas ir sukimosi sukeltas pasipriešinimas priverstų variklį pradėti „vaikščioti“, todėl sukūriau pagrindo plokštę 24 * 11 cm pjovimo lenta. Aš išgręžiau dvi skyles, kad pritvirtinčiau žingsninį variklį, ir dar turiu pakankamai vietos valdikliui. Nors servo posūkis yra 180 laipsnių, aš pastatiau ranką taip, kad galva nebūtų visiškai tiesi. Tokiu būdu jis lengvai nukrenta, kai servo pasukama atgal į 0 padėtį

2 žingsnis: „Vienas namuose“Valdiklio kūrimas

„Vienas namuose“valdiklio kūrimas
„Vienas namuose“valdiklio kūrimas
„Vienas namuose“valdiklio kūrimas
„Vienas namuose“valdiklio kūrimas
„Vienas namuose“valdiklio kūrimas
„Vienas namuose“valdiklio kūrimas
„Vienas namuose“valdiklio kūrimas
„Vienas namuose“valdiklio kūrimas

Valdiklis yra „Attiny13“, prijungtas prie ULN2003. Nors savo versijoje aš naudojau šiek tiek daugiau kaiščių, kad plokštė būtų lankstesnė naudoti kitiems projektams, vienintelės jums reikalingos antraštės yra 3 kontaktų servo antraštė ir 6 kontaktų antraštė stepperiui

3 žingsnis: „Vienas namuose“: programinė įranga

REDAGUOTI 2019 Projektas buvo sukurtas remiantis kažkada populiariu „Smeezekitty“branduoliu, skirtu „Attiny “13. Dabar dažnai naudojamas „MicroCore“iš „MCUDude“, matyt, turi problemų su „delayMicroseconds“teiginių kintamaisiais. Jei naudojate tą, pakeiskite "delayMicroseconds (300 + p * (2500 /180));" pagal "uždelsimas (5)";

Aukščiau pateikta programa parodo, kaip vairuoti mano konkretų žingsnelį, ir jums gali tekti pakeisti PORTB rašomas reikšmes, jei turite anotehr stepper. Kadangi „Attiny13“yra gana mažos atminties ir taip pat nesuteikia per daug kaiščių, programai trūksta tam tikro rafinuotumo. Rašymas tiesiai į PORTB yra gerai, tačiau šiuo atveju jis taip pat parašys „0“į PB4 ir PB5. PB5 nėra didelė problema, tačiau galbūt norėsite naudoti PB4. Mano atveju aš įdėjau savo servo ir tai tikrai nesukelia problemų, nes nenaudoju jų tuo pačiu metu.

Tačiau, jei norite naudoti kitą mikrovaldiklį, pvz., 328, ir nenorite rašyti į PB4 ir PB5 bei PB6 ir PB7, naudokite kaukę, kad rašytumėte tik į bitą 0-3. Tam skirta kaukė yra B00001111.

Jei norite nustatyti bitus 0 ir 2, atlikite šiuos veiksmus:

Vietoj PORTB = 5 nurodykite: PORTB = (PORTB & ~ kaukė) | (B00000101);

Tiems, kuriems tai atrodo per daug paslaptinga:

tai pirmiausia IR yra PORTB vertė su NE kauke ir ARBA rezultatas su verte, kurią norime parašyti, ir priskiria ją PORTB.

Taigi, tarkime, PORTB = 00010000 ir norime jam parašyti 00000101, negalime to priskirti iš karto, nes tai išvalytų PB4.

Tačiau jei elgsimės taip, kaip aprašyta, tai bus:

PORTB = (PORTB & 11110000) | 00000101

PORTB = (00010000 ir 11110000) | 00000101

PORTB = 00010000 | 00000101

PORTB = 00010101

Mes parašėme savo vertę ir išsaugojome PB4

Taigi, kodėl mes negalime iš karto ARBA PORTB su norima verte, o ne pirmą kartą?

Na, nes tai gali išlaikyti PB4 ir PB5 … bet taip pat nekeičia PB3-PB0, jei viename iš jų jau yra „1“

Žinoma, apversti kaukę nereikėtų, jei ją apibrėžtume jau apverstą, tačiau įprasta tai daryti

4 veiksmas: nuo namų įsilaužimo atgrasantis įrankis: naudokite

žiūrėkite vaizdo įrašą, kad pamatytumėte, kaip jis veikia (jis pasuko -90 laipsnių, atsiprašau)

Šio prietaiso tikslas yra mesti judančius šešėlius ant užuolaidų ar žaliuzių. Todėl jis geriausiai tinka su šviesiomis užuolaidomis. Pats prietaisas neturėtų būti matomas iš išorės. Įsitikinkite, kad kažkur už jo yra šviesos šaltinis. Aš jį valdau siunčiant RF signalą į nuotolinio jungiklio maitinimo lizdą, kuris tiekia šio įrenginio sieninį maitinimo šaltinį, tačiau taip pat galite naudoti laikmatį.

5 žingsnis: „Vienas namuose“, kas nepadėjo ……

Šis vaizdo įrašas rodo vieną iš mano ankstesnių eksperimentų su didesniu liemeniu ir paprastu servo. Akivaizdu, kad dizainas nėra geras

Rekomenduojamas: