Yksin kotona' -murtovaurio/ Käytä Attiny13 -askelta askelmoottorin ja servon ajamiseen: 5 vaihetta
Yksin kotona' -murtovaurio/ Käytä Attiny13 -askelta askelmoottorin ja servon ajamiseen: 5 vaihetta

Video: Yksin kotona' -murtovaurio/ Käytä Attiny13 -askelta askelmoottorin ja servon ajamiseen: 5 vaihetta

Video: Yksin kotona' -murtovaurio/ Käytä Attiny13 -askelta askelmoottorin ja servon ajamiseen: 5 vaihetta
Video: YKSIN KOTONA Minecraftissa! 2025, Tammikuu
Anonim
'Yksin kotona' -murtovaurio/ Käytä Attiny13 -askelta askelmoottorin ja servon ajamiseen
'Yksin kotona' -murtovaurio/ Käytä Attiny13 -askelta askelmoottorin ja servon ajamiseen
'Yksin kotona' -murtovaurio/ Käytä Attiny13 -askelta askelmoottorin ja servon ajamiseen
'Yksin kotona' -murtovaurio/ Käytä Attiny13 -askelta askelmoottorin ja servon ajamiseen

Tämä saattaa olla yksi kummallisimmista projekteistani vielä:-) Mutta vaikka et olisikaan kiinnostunut pitämään murtovarkaita, tätä projektia voidaan käyttää mihin tahansa, missä sinun on käytettävä askelmoottoria tai servomoottoria tai jopa useita tasavirtamoottoreita, joissa on Attiny13 Suurin osa teistä muistaa elokuvan Yksin kotona, jossa McCauly Calkin yrittää teeskennellä murtovarkaille, että hän ei itse asiassa ole yksin kotona, asettamalla pahvihahmon levysoittimen päälle ja asettamalla jouset toiselle pahvihahmolle, jotta hän voi jäljitellä ihmisiä. Koska olen usein poissa kotoa, olen hyvin tietoinen siitä, että jätän taloni taakseni ikään kuin se olisi edelleen käytössä. näyttää siltä, että joku on läsnä. Lisäsin Fake TV: n, joka näyttää siltä, että televisiota toistetaan. Kaikki nämä asiat auttavat, mutta läsnäolon simuloinnissa ei ole mitään parempaa kuin todellinen liike. Joten tarvitsin jotain liikkuvaa ja koska minulla ei ole levysoitinta ja halusin jotain, joka voisi toimia poissa ollessani, tarvitsin jotain hieman kiinteämpää tilaa. kääntää sitä 90 astetta, jotta se vuorotellen estäisi valoa eikä estä valoa. Tein, vastus olisi vain liikaa tuolle servolle. Tehokkaamman servon hinta nousi erittäin jyrkästi, joten aloin ajatella "Steppermotor". Minulla oli vielä yksi, joka oli raskas jäähdytyselementin takia, joten se näytti ihanteelliselta. Ohjelma Steppermoottorin kääntämiseksi oli helppo kirjoittaa Arduinolle, mutta vetäminen aiheutti silti hieman ongelmia, koska pahvihahmoni oli kooltaan ihmisen vartalo (noin 80 cm pitkä). Minun täytyi joko vahvistaa kartonkia ja tehdä siitä raskaampaa tai pienentää sitä. Jälkimmäinen näytti olevan paras ratkaisu, koska voisin vain laittaa sen lähemmäksi valoa. Moottorit, hihnapyörät jne. Tulivat mieleeni, ja vaikka en ole kokonaan luopunut tästä ajatuksesta, nyt päätin vain lisätä pienen ominaisuuden pahvihahmoon ja se oli liikkuva pää. Ajatukseni oli saada kuva kääntymään 90 astetta, niin se heittäisi täyden varjon ja sitten sen nyökkää päätään. ja sieltä minun servoni tuli jälleen sisään. en todellakaan halunnut uhrata koko arduinoa vain pahvihahmon kääntämiseksi. Arvelin, että Attiny13, jonka olin asettanut, voisi tehdä työn yhtä hyvin: 4 nastaa askelmalle, 1 nasta servolle. Myönnän, että joskus voin olla hyvin tiheä, koska ajattelin kaikenlaisia skenaarioita siitä, miten kontrapulaatio toimisi tiettynä ajankohtana ja tietyn ajan, koska ideaalisesti halusin hallita sitä. se aiemmin mainitsemastani "Kotona simulaattorista". Joten ajattelin lanka- tai langatonta yhteyttä, mutta silloin Attin13 ei ollut paras idea, jolla on ongelma Manchestercoden kanssa, ja tarvitsin nastan vastaanottimelle, ja näiden halpojen vastaanottimien herkkyys ei ole niin suuri. Joten ajattelin jo vain kaupallista ajastinkytkintä, mutta sitten tajusin olevani idiootti. Koska asia kaipaisi omaa virtalähdettä, miksi et ota seinäsylinteriä ja laita se etäkytkimeen, jota voisin jo hallita At Home -simulaattoristani, joten aloin rakentaa lopullista suunnittelua.

Halpa ServoA -askelmoottoriA pahvilaatikkoAtiny13An 8 -nastainen IC -kanta 6 -nastainen urosliitin (askelmoottorille) liimanauha (tietysti)

Lisäksi: Tapa ohjelmoida Attiny

Vain huomautus askelmoottorista. Käytän vanhaa 55SI-25DAWC: tä, mutta jos joudut vielä ostamaan sellaisen, saatavilla on erittäin halpa askelmoottori/ohjainyhdistelmä: 28BYJ-48. Itse moottori maksaa 1,50 euroa, mutta 2 eurolla saat saman moottorin ohjainkortilla. niin se on hyvä juttu

Vaihe 1: Yksin kotona Pahvimiehen rakentaminen

'Yksin kotona' Pahvimiehen rakentaminen
'Yksin kotona' Pahvimiehen rakentaminen
'Yksin kotona' Pahvimiehen rakentaminen
'Yksin kotona' Pahvimiehen rakentaminen

Leikkasin laatikosta 40x20 cm palan ja 18x18 palan. Kiinnitin nämä kaksi kappaletta pääksi ja vartaloon käyttämällä teippiä, jättäen kahden raon väliin, mutta kanavanauhan peittämän, muodostaen niskan saranan. (Kuvista selviää tämä hyvin) Leikkasin vanhalta leikkuulaudalta palan, joka oli 20 cm pitkä, noin puoli cm paksu (levyn paksuus) ja noin 1,5 cm leveä. 1,5 cm riitti askelmani akseliin. jos sinulla on erilainen askelmoottori, varmista, että leikkaamasi kappale on riittävän leveä askelman akselille. porattiin reikäkuollut akseli, joka sopisi akselilleni. sitten liimasin muovin pahvin "Torso" pohjaan "kaulan" alle pahvilaatikoista rakensin pidikkeen servolleni. Tietenkin tämä voidaan tehdä kulmaraudalla (tai muovilla), mutta sitä on hieman vaikea kiinnittää pahvivarsiin, joten käytin vain pahvia servon sovittamiseen. Lisäsin servoon varren, joka oli valmistettu 11 x 0,6 x 0,6 muovista leikkuulaudalta ja kiinnitin sen Servoon. Katsokaa jälleen kuvia nähdäkseni, miten tämä tehdään Vaikka askelmani oli tarpeeksi painava kantaakseen pahvihahmoa, vääntömomentti ja sen kääntymisen aiheuttama vastus saisivat moottorin alkamaan "kävellä" ympäri, joten loin pohjalevyn 24 * 11 cm leikkuulauta. Porasin kaksi reikää askelmoottorin kiinnittämiseksi ja minulla on vielä riittävästi tilaa ohjaimelle. Näin se putoaa helposti takaisin, kun servo kääntyy takaisin 0 -asentoon

Vaihe 2: "Yksin kotona" Ohjaimen rakentaminen

'Yksin kotona' Ohjaimen rakentaminen
'Yksin kotona' Ohjaimen rakentaminen
'Yksin kotona' Ohjaimen rakentaminen
'Yksin kotona' Ohjaimen rakentaminen
'Yksin kotona' Ohjaimen rakentaminen
'Yksin kotona' Ohjaimen rakentaminen
'Yksin kotona' Ohjaimen rakentaminen
'Yksin kotona' Ohjaimen rakentaminen

Ohjain on An Attiny13, joka on liitetty ULN2003: een. Vaikka versiossani olen käyttänyt hieman enemmän tappeja, jotta levystä olisi joustavampi käyttää muihin projekteihin, tarvitsemasi ainoat otsikot ovat 3 -nastainen uros -servopää ja 6 -nastainen uros -otsikko askelmalle

Vaihe 3: Yksin kotona: Ohjelmisto

EDIT 2019 Hanke tehtiin Attiny13: n aikoinaan suositun Smeezekitty -ytimen perusteella13. MCUDuden nyt usein käytetyllä MicroCorella on ilmeisesti ongelmia delayMicroseconds -lausekkeiden muuttujien kanssa. Jos käytät sitä, vaihda "delayMicroseconds (300 + p * (2500 /180));" "viiveellä (5)";

Yllä oleva ohjelma näyttää, kuinka ajaa tiettyä askelmaani, ja saatat joutua muuttamaan PORTB: ään kirjoitettavia arvoja, jos sinulla on anotehr -askel. Koska Attiny13 on melko pieni muistissa eikä myöskään tarjoa liikaa nastoja, ohjelma kaipaa hienostuneisuutta. Kirjoittaminen suoraan PORTB: ään on OK, mutta tässä tapauksessa se kirjoittaa myös "0" PB4: lle ja PB5: lle. PB5 ei ole suuri ongelma, mutta haluat ehkä käyttää PB4: ää. Minun tapauksessani laitoin servoni tähän paikkaan ja se ei todellakaan aiheuta ongelmia, koska en käytä niitä samanaikaisesti.

Jos kuitenkin haluat käyttää toista mikro-ohjainta, kuten 328, ja et halua kirjoittaa PB4- ja PB5- ja PB6- ja PB7-kirjoittimille, kirjoita maski vain bittiin 0-3. Maski tähän on B00001111.

Jos haluat sitten asettaa bitit 0 ja 2, toimi näin:

Ilmoita PORTB = 5: n sijasta: PORTB = (PORTB & ~ maski) | (B00000101);

Niille, jotka pitävät tätä liian salaperäisenä:

se ensin JA on PORTB: n arvo NOT maskilla ja OR on tulos, jonka arvon haluamme kirjoittaa, ja antaa sen takaisin PORTB: lle.

Oletetaan siis, että PORTB = 00010000 ja haluamme kirjoittaa sille 00000101, emme voi määrittää sitä heti, koska se poistaisi PB4: n.

Jos kuitenkin teemme kuvatulla tavalla, siitä tulee:

PORTB = (PORTB & 11110000) | 00000101

PORTB = (00010000 & 11110000) | 00000101

PORTB = 00010000 | 00000101

PORTB = 00010101

Olemme kirjoittaneet arvomme ja säilyttäneet PB4: n

Joten miksi emme voi heti TAI PORTB haluamallamme arvolla sen sijaan, että saisimme sen ensin?

Hyvin siksi, että se saattaa pitää PB4: n ja PB5: n… mutta se pitää myös PB3-PB0: n muuttumattomana, jos jokin niistä sisältää jo "1"

Maskin kääntäminen ei tietenkään olisi välttämätöntä, jos määrittäisimme sen jo käänteisenä, mutta on yleinen käytäntö tehdä se sellaisenaan

Vaihe 4: Yksinäinen murtovarkauden esto: Käytä

katso video nähdäksesi sen toimivan (sitä käännettiin -90 astetta, pahoittelut siitä)

Tämän laitteen tarkoituksena on heittää liikkuvia varjoja verhoihin tai kaihtimiin. Siksi se toimii parhaiten kevyiden verhojen kanssa. Itse laitetta ei saa nähdä ulkopuolelta. Varmista, että valaisimen takana on valonlähde.

Vaihe 5: Yksin kotona mikä ei toiminut ……

Tämä video näyttää yhden aiemmista kokeistani suuremmalla vartalolla ja yksinkertaisella servolla. Ilmeisesti ei hyvä muotoilu