Obsah:

Odrádzajúci zlodej „sám“/ Použite Attiny13 na riadenie krokového motora a serva: 5 krokov
Odrádzajúci zlodej „sám“/ Použite Attiny13 na riadenie krokového motora a serva: 5 krokov

Video: Odrádzajúci zlodej „sám“/ Použite Attiny13 na riadenie krokového motora a serva: 5 krokov

Video: Odrádzajúci zlodej „sám“/ Použite Attiny13 na riadenie krokového motora a serva: 5 krokov
Video: Свирепые тигры перегородили дорогу таксисту. Причина просто обескураживает! 2024, November
Anonim
Odrádzajúci zlodej „doma sám“/ Použite Attiny13 na riadenie krokového motora a serva
Odrádzajúci zlodej „doma sám“/ Použite Attiny13 na riadenie krokového motora a serva
Odrádzajúci zlodej „doma sám“/ Použite Attiny13 na riadenie krokového motora a serva
Odrádzajúci zlodej „doma sám“/ Použite Attiny13 na riadenie krokového motora a serva

Toto môže byť ešte jeden z mojich najpodivnejších projektov:-) Ale aj keď nemáte záujem držať zlodejov mimo, tento projekt je možné použiť na čokoľvek, kde potrebujete poháňať krokový alebo servomotor alebo dokonca niekoľko jednosmerných motorov s Attiny13. Väčšina z vás si určite spomenie na film Sám doma, kde sa McCauly Calkin pokúša pred zlodejmi predstierať, že v skutočnosti nie je doma sám, a to tak, že na gramofón položí kartónovú figúrku a na inú kartónovú figúrku navlečie struny, aby mohol napodobňovať ľudí. pretože som často mimo domova, veľmi dobre si uvedomujem, že nechávam svoj dom za sebou, ako keby bol stále obsadený. Na to som predtým publikoval „Doma simulátor“, ktorý prepína svetlá v špecifickom vzore s dostatočnou náhodnosťou, aby sa to podarilo. zdá sa, že je niekto prítomný. Pridal som „falošný televízor“, aby vyzeral, že hrá televízia. Všetky tieto veci pomáhajú, ale pokiaľ ide o simuláciu prítomnosti, nie je nič lepšie ako skutočný pohyb. Potreboval som teda niečo, čo sa hýbalo, a pretože nemám gramofón a chcel som niečo, čo by fungovalo, keď som bol preč, potreboval som niečo pevnejšie. Najzrejmejší spôsob, ako by lepenková figúra vytvorila dojem pohybu, by bol otočiť o 90 stupňov, aby striedavo blokovalo svetlo a nie blokovalo svetlo. Najprv som to urobil s lacným servom, ale to spôsobilo dva problémy: Bolo ťažké pridať na nápravu kartónovú figúrku, aj keď nie príliš veľkú, a raz. Urobil som, ten ťah by bol na to servo príliš veľký. Silnejšie servo malo veľmi prudký nárast ceny, takže som začal uvažovať o „steppermotore“. Stále som mal ten, ktorý bol ťažký kvôli chladiču, ktorý bol k nemu pripevnený, takže sa to zdalo ideálne. Program na otáčanie krokového motora bol ľahko napísaný na Arduine, ale ťah stále spôsoboval trochu problém, pretože moja lepenková figúrka mala veľkosť ľudský trup (dlhý asi 80 cm). Buď som musel spevniť kartón, aby bol ťažší, alebo som ho musel zmenšiť. Ten sa zdal byť najlepším riešením, pretože som ho mohol priblížiť k svetlu. Celú dobu som sa tiež pohrával s myšlienkou postaviť postavu. Hlavou mi prešli motory, kladky atď. A aj keď som sa tejto myšlienky úplne nevzdal, teraz som sa len rozhodol pridať na kartónovú figúrku malú vlastnosť, ktorou bola pohyblivá hlava. Mojou myšlienkou bolo, aby sa postava otočila o 90 stupňov, tak to vrhne plný tieň a potom to kývne hlavou. a tu opäť prišlo moje servo. V skutočnosti som nechcel obetovať celé arduino, aby som zmenil figúrku z lepenky. Na druhej strane som predpokladal, že Attiny13, ktorý som mal okolo seba, by mohol rovnako dobre vykonávať túto prácu: 4 piny pre stepper, 1 pin pre servo. to je presne to, čo môže Attiny13 ponúknuť. Priznám sa, že niektoré veci môžem byť veľmi husté, pretože som premýšľal nad všetkými druhmi scenárov, ako prevádzať antikoncepciu tak, aby fungovala v konkrétnom čase, na konkrétny čas, pretože v ideálnom prípade som chcel ovládať zo simulátora „Doma“, ktorý som už spomenul. Uvažoval som o kábli alebo bezdrôtovom, ale potom Attin13 nebol najlepší nápad, pretože má problém s Manchestercode a potreboval som kolík pre prijímač a citlivosť týchto lacných prijímačov nie je taká veľká. Už som teda premýšľal iba o komerčnom časovom spínači, ale potom som si uvedomil, že som idiot. Keďže vec by potrebovala vlastný zdroj napájania, prečo nezobrať nástennú bránu a vložiť ju do diaľkového prepínača, ktorý som už mohol ovládať zo svojho simulátora doma. Začal som teda stavať svoj konečný návrh. BOM

Lacný servopohon Steppermotor Kartónová krabica Attiny13A 8 pinov IC zásuvkaA Kus lišty 9 dierok po 17 dierachNiektoré predlžovacie káble servaA ULN2003A 16 pinov IC zásuvkaA 10 k rezistor Plastová doska na krájanie (alebo nejaký iný kus ľahkého materiálu) 3 -pinový konektor (pre servo) 6 -kolíková zástrčka (pre steppermotor) lepiaca páska (samozrejme)

Navyše: Spôsob programovania Attiny

Len poznámka k Steppermotoru. Používam starý 55SI-25DAWC, ale ak si ho stále musíte kúpiť, je k dispozícii veľmi lacná kombinácia krokového motora a ovládača: 28BYJ-48. Samotný motor stojí 1,50 EUR, ale za 2 EUR môžete rovnaký motor dostať s doskou vodiča. tak to je dobrý obchod

Krok 1: „Sám doma“, výroba kartónového muža

„Sám doma“- konštrukcia kartónového muža
„Sám doma“- konštrukcia kartónového muža
„Sám doma“- konštrukcia kartónového muža
„Sám doma“- konštrukcia kartónového muža

Z krabice som vystrihol kus 40x20 cm a kus 18x18. Pripojil som dva kusy k sebe ako hlavu a trup pomocou lepiacej pásky, pričom medzi týmito dvoma kusmi zostala malá medzera, ale prekrytá lepiacou páskou, aby sa vytvoril záves pre krk. (Obrázky to veľmi jasne ukazujú) Zo starej dosky na krájanie som odrezal kúsok dlhý 20 cm, hrubý asi pol cm (hrúbka dosky) a široký asi 1,5 cm. 1,5 cm stačilo, aby sa mi zmestila náprava môjho steppera. ak máte iný stepper, uistite sa, že vami odrezaný kus je dostatočne široký na osu vášho steppera. Vyvŕtajte otvor v úvrati, ktorý by sa zmestil na moju nápravu. Potom som plast prilepil na základňu kartónu „Torso“pod „krk“som si z kúskov kartónu postavil držiak na servo. To sa dá samozrejme dosiahnuť uhlovou žehličkou (alebo plastovou), ale pripevnenie na trup z lepenky je trochu ťažké, takže som na servo použil iba kartón. Pridal som rameno k servu vyrobenému z kusu plastu 11 x 0,6 x 0,6 z rezacej dosky a pripevnil som ho k servu. Opäť sa pozrite na obrázky, aby ste zistili, ako sa to robí. Aj keď bol môj steper dostatočne ťažký na to, aby uniesol kartónovú figúrku, krútiaci moment a odpor spôsobený jeho otáčaním spôsobili, že motor začal „chodiť“, takže som vytvoril základnú dosku z 24 * 11 cm doštička. Vyvŕtal som dva otvory na pripevnenie krokového motora a stále mám dostatok priestoru pre ovládač. Napriek tomu, že sa servo otáča o 180 stupňov, rameno som umiestnil tak, aby nevytáčalo hlavu úplne rovno. Takto sa ľahko vráti späť, keď sa servo vráti do polohy 0

Krok 2: Konštrukcia ovládača „sama doma“

Konštrukcia ovládača „sama doma“
Konštrukcia ovládača „sama doma“
Konštrukcia ovládača „sama doma“
Konštrukcia ovládača „sama doma“
Konštrukcia ovládača „sama doma“
Konštrukcia ovládača „sama doma“
Konštrukcia ovládača „sama doma“
Konštrukcia ovládača „sama doma“

Ovládač je An Attiny13, pripojený k ULN2003. Aj keď som vo svojej verzii použil o niečo viac kolíkov, aby bola doska flexibilnejšia na použitie v iných projektoch, jediné záhlavie, ktoré potrebujete, sú 3 -kolíková servo hlavička a 6 -pinová hlavička pre stepper

Krok 3: „Sám doma“: softvér

EDIT 2019 Projekt bol vytvorený na základe kedysi populárneho jadra „Smeezekitty“pre Attiny13. Teraz často používaný MicroCore od MCUDude má zrejme problémy s premennými vo výkazoch delayMicroseconds. Ak ho používate, nahraďte „delayMicroseconds (300 + p * (2500 /180));“„oneskorením (5);“

Vyššie uvedený program ukazuje, ako riadiť môj konkrétny stepper, a ak máte anotehr stepper, možno budete musieť zmeniť hodnoty zapísané do PORTB. Pretože je Attiny13 v pamäti pomerne malý a neposkytuje príliš veľa pinov, programu chýba určitá náročnosť. Zápis priamo na PORTB je v poriadku, ale v tomto prípade zapíše aj „0“do PB4 a PB5. PB5 nie je veľký problém, ale možno budete chcieť použiť PB4. V mojom prípade som dal svoje servo a to skutočne nespôsobuje problém, pretože ich nepoužívam súčasne.

Ak však chcete použiť iný mikrokontrolér, ako je 328, a chcete sa vyhnúť zápisu do systémov PB4 a PB5 a PB6 a PB7, na zápis do bitu 0-3 použite iba masku. Maska, ako to urobiť, je B00001111.

Ak potom chcete nastaviť bity bity 0 a 2, postupujte takto:

Namiesto PORTB = 5 zadajte: PORTB = (PORTB & ~ maska) | (B00000101);

Pre tých, ktorým to príde príliš záhadné:

najskôr je to hodnota PORTB s maskou NOT a ALEBO je výsledok s hodnotou, ktorú chceme napísať, a priradí ju späť k PORTB.

Predpokladajme teda, že PORTB = 00010000 a chceme mu napísať 00000101, nemôžeme to priradiť okamžite, pretože by to vyčistilo PB4.

Ak však urobíme, ako je popísané, stane sa to:

PORTB = (PORTB & 11110000) | 00000101

PORTB = (00010000 & 11110000) | 00000101

PORTB = 00010000 | 00000101

PORTB = 00010101

Napísali sme svoju hodnotu a ponechali sme PB4

Prečo teda nemôžeme ihneď ALEBO PORTOVAŤ s hodnotou, ktorú chceme, namiesto toho, aby sme to najskôr urobili A?

Pretože to môže ponechať PB4 a PB5 … ale tiež to ponechá PB3-PB0 nezmenené, ak jeden z nich už obsahoval „1“

Obrátenie masky by samozrejme nebolo potrebné, ak by sme ju definovali už obrátene, ale je bežnou praxou, že to robíme takto.

Krok 4: Odrádzajúci zlodej „Sám doma“: Používajte

pozrite si video, ako to funguje (otočilo sa to o 90 stupňov, ospravedlňujeme sa)

Zámerom tohto zariadenia je vrhať pohyblivé tiene na závesy alebo žalúzie. Najlepšie to teda funguje so svetelnými závesmi. Samotné zariadenie by nemalo byť zvonku viditeľné. Uistite sa, že je niekde za sebou svetelný zdroj. Ovládam ho odoslaním signálu RF do diaľkového spínača v elektrickej zásuvke, ktorá napája nástenný napájací zdroj pre toto zariadenie, ale môžete použiť aj časovač.

Krok 5: „Sám doma“, čo nefungovalo ……

Toto video ukazuje jeden z mojich predchádzajúcich experimentov s väčším trupom a jednoduchým servom. Očividne to nie je dobrý dizajn

Odporúča: