Arduino által működtetett andoriai antenna: 4 lépés
Arduino által működtetett andoriai antenna: 4 lépés
Anonim
Image
Image

A feleség úgy döntött, hogy andoriai lesz a San Jose -i Szilícium -völgy Comic Con -on, hogy megfeleljen az Elvis Kapitány Kirk jelmezemnek. Míg az arcfestés/sminkelés és a többi jelmez elég sok időt vett igénybe, nem hagyhattam, hogy az antenna csak statikus legyen. Úgy döntöttem, hogy kissé véletlenszerűen fordulok és forognak. Kiderült, hogy sok ember árulja a statikus andori antennákat, és azokat is, amelyek már forognak. De a 100 dolláros árcédula túl drága volt, és amúgy is barkács vagyok.

Mivel az idő kevés volt, találtam néhány 3D nyomtatott antennát az Etsy vs.

SZÜKSÉGES ALKATRÉSZEK -

Andoriai antenna - keresse meg ezeket, vagy készítse el saját maga

Két mikro szervó - számos helyen megtalálható

Adafruit itsybitsy - lásd az adafruits weboldalát. Minél kisebb, annál jobb

Kiterjesztett szervókábelek - amazon/ebay

szervo két vezetékes tápkábel be/ki kapcsolóval - amazon/ebay

9V -os akkumulátor

9V elemtartó

maszkolószalag, elektromos szalag

hajpánt - bármilyen CVS, cél, stb.

HASZNÁLT ESZKÖZÖK

forrasztópáka

ragasztópisztoly

pillanatragasztó

huzalcsupaszítók

Xacto kés

A kenyértábla és a huzalos megoldás prototípusa

Telepítette az Arduino fejlesztői környezetet a számítógépére

1. lépés: A kód

Itt a kód, amit használtam. Kikapcsolva az internetről.

Szervó (k) vezetése Arduino -ból rendkívül egyszerű. Bár ennek technikai módszerei is vannak, brute kényszerítettem két különböző mozgásmintát, köztük egy furcsa mozgással, és össze-vissza pingáltam. Játszania kell ezzel, hogy megbizonyosodjon arról, hogy hol van a központ, amikor a szervója a fejpánthoz van rögzítve, és hogy mi néz ki a legjobban az alkalmazásához. /* Söprés

szerző: BARRAGAN

Ez a példakód nyilvános.

Módosította: r570sv

8-14-19

*/

#befoglalni

Szervo myservo; // szervo objektum létrehozása a szervó vezérlésére

// a legtöbb táblán tizenkét szervo objektum hozható létre

int posl = 0; // változó a szervo pozíció tárolására

int posr = 0; int DELAY = 50; int everyOther = 0; int i = 0; int j = 0; int k = 0; int x = 0; Szervo szervo1; Szervo szervo2;

void setup () {

// myservo.attach (9); // a szervó objektumhoz csatolja a 9. tűn lévő szervót // myservo.attach (10); // a 10 -es csap szervóját a szervo objektumhoz csatolja servo1.attach (9); servo2.attach (10); servo1.write (0); servo2.write (0); késleltetés (1000); szervo1.write (180); servo2.write (180); késleltetés (1000); Sorozat.kezdet (9600); }

//

Kezdje 180 balra balra 50, jobbra jobbra 50, majd lassan vissza 180 -ra, majd r 50 -re és balra 50 //

void loop () {

for (j = 0; j <= 5; j ++) {for (i = 0, posl = 180, posr = 180; i <= 50; i ++) {// 0 fokról 180 fokra megy posl = posl - 1; posr = posr + 1; servo1.write (posl); // mondja meg a szervónak, hogy menjen a pozícióba a 'pos' változóban servo2.write (posr); késleltetés (DELAY); // 15 ms -ot vár, amíg a szervó eléri a pozíciót} esetén (i = 0, posl = 130, posr = 230; i <= 50; i ++) {// 0 fokról 180 fokra megy posl = posl+1; posr = posr - 1; servo1.write (posl); // mondja meg a szervónak, hogy menjen a pozícióba a 'pos' változóban servo2.write (posr); késleltetés (DELAY); // 15 ms -ig vár, amíg a szervó eléri a pozíciót}} //

if (everyOther == 1) {

szervo1.write (180); servo2.write (180); késleltetés (500); szervo1.write (280); servo2.write (280); késleltetés (500); servo1.write (120); servo2.write (120); késleltetés (500); szervo1.write (180); servo2.write (180); késleltetés (500); everyOther = 0; // kapcsolja be, hogy minden második alkalommal a két rutin valamelyikét végezze el} // if else {everyOther = 1; for (x = 0; x <= 5; x ++) {for (i = 0, posl = 180, posr = 180; i <= 40; i ++) {// 0 fokról 180 fokra megy posl = posl - 1; posr = posr + 1; servo1.write (posl); // mondja meg a szervónak, hogy menjen a pozícióba a 'pos' változóban servo2.write (posr); késleltetés (10); // 10 ms -ot vár, amíg a szervó eléri a positio -t} esetén (i = 0, posl = 140, posr = 220; i <= 40; i ++) {// 0 fokról 180 fokra megy posl = posl+1; posr = posr - 1; servo1.write (posl); // mondja meg a szervónak, hogy menjen a pozícióba a 'pos' változóban servo2.write (posr); késleltetés (10); // 1 ms -ot vár, amíg a szervó eléri a pozíciót}}} // else} // hurok

2. lépés: Kábelezés és csomagolás

Kábelezés és csomagolás
Kábelezés és csomagolás
Kábelezés és csomagolás
Kábelezés és csomagolás

Tehát az alapvető huzalozás szempontjából szuper egyenesen előre.

Egy szervónak három vezetéke van. Power, Ground és az Arduino PWM csapja.

Tehát a 9 -es és 10 -es csapokat használták a PWM -hez, a földet és az áramot pedig az Arduino -ból.

9V -os akkumulátort választottam, mert volt tartóm hozzá. Használhattam volna egy kisebb LiPo 3,7 V -os akkumulátort, hogy kicsinyítsem az egész csomagot, de nem tudtam, hogy képes vagyok -e 8 órán keresztül működni a nagyon apró, 3,7 V -os elemen, így nálam a nagyobb, 9 V -os akkumulátor került behelyezésre. tartót és hozott egy tartalékot, hogy szükség esetén kicserélhessem. Azért is mellékeltem egy ki/be kapcsolót, mert szerettem volna egy egyszerű be- és kikapcsolást. Az egész csomagot a fej hátsó részébe akarták helyezni a paróka és a haj közé, és amit nem akartam, valami feltört mód az áramellátáshoz, ami miatt paróka vagy huzalozás meghibásodhat.

Az egész projekt tényleges csomagolása az egyik legnehezebb rész volt. Kicsi volt szükségem rá, de azt sem akartam, hogy a vezetékek megszakadjanak, és a projekt FAIL legyen, amikor szükségem van rá. Az Arduino összes csatlakozóját melegen ragasztottam, hogy a csapok ne csússzanak le, és a táp- és földelővezetékeket közvetlenül az Arduino táblához forrasztottam. Minden más vezetékcsatlakozót összeragasztottak, és az egész csomagot maszkolószalagba csomagolták, így könnyen hozzáférhet a be- és kikapcsoláshoz.

3. lépés: A Gadget telepítése a parókába

Image
Image
A Gadget telepítése a parókába
A Gadget telepítése a parókába

Ha a csomagolás nem volt elég unalmas, valójában fájdalmas volt az egészet a parókába helyezni.

Az antennát egy hajpántra szerelték fel, amely teljesen elbukott a tervezett felhasználásomhoz, ezért egy erősebb hajszalagot kellett vásárolnunk - fémből és gumi borítással.

A 3D nyomtatott antenna nem illeszkedett a mikro szervókhoz, így nagyobbra kellett emelnem a nyílásokat. A szervókat forró ragasztóval helyezték a helyükre.

A szervókürt felszerelése a hajszalagra teljes káosz volt. Nem akartam hatalmas nyílást vágni a parókában, így előzetesen rögzíthettem a szervót a hajpántra és az antennára, ami talán parókahibát okozhat, ezért a nagyon fájdalmas utat választottam, amikor egy kis lyukat vágtam a parókába 1/4 így a szervótengely átfért. Ezután a szerverkürtöt a szervóhoz rögzítettem. Ezután epoxáltam a szerverkürtöt a hajszalaghoz - ami nem működött. A szerverkürt szuper ragasztása a hajszalagra sem működött. Nagyon vékony paracorddal tekertem be a szerverkürtöt a hajszalagra, lekötöttem minden csomagolást, majd szuper ragasztással ragasztottam a paracord csomókat, hogy ne lazuljanak el. Vigyázva, hogy ne vaduljak meg a ragasztóval és zárjam be a szervo tengelyt (kukába dobtam) Egy szervó az első alkalommal, amikor ezt megteszi.) Kicsit tetszik, amit tehetnél, ha olyan nyilat készítesz, mint 10 000 évvel ezelőtt.

Vannak jobb módszerek is erre. Használd a példámat, mint valami, ami működik, de javítható lenne:-)

Két extra 1/4 hüvelykes nyílást vágtak le, így a szerverhuzal elfér a parókán és lefelé a paróka hátulján arra a helyre, ahol az akkumulátor/Arduino fog tartózkodni.

Az akkumulátor/Arduino rögzítése a fejhez/parókához

YMMV erről. A csomagolást a feleségem kontyára tudtam kötni a paróka alatt. Hajháló volt rajta, és a nyakkendő is a csomagba volt csomagolva. Volt egy kudarcunk, amikor kicsúszott, ezért újrakötöttem, majd újra becsomagoltam, és a nap hátralévő részében tartott (hozzon néhány kelléket, amikor a konzolra megy, hogy segítsen ebben:-))

4. lépés: A kiállításon - Mi működött, mi nem, mit tennénk másképp

A kiállításon - Mi működött, mi nem, mit tennénk másképp
A kiállításon - Mi működött, mi nem, mit tennénk másképp
A kiállításon - Mi működött, mi nem, mit tennénk másképp
A kiállításon - Mi működött, mi nem, mit tennénk másképp

Tehát mi működött -

Az antennák nem estek le - de rendkívül óvatosnak kellett lennünk az autóba való be- és kiszálláskor. A szervó kicsi, és a szervókürt csatlakozása a hajszalaghoz még törékenyebb.

Az akkumulátor az egész műsort bírta - nem kell elemeket cserélni.

Nem estek le a vezetékek, nincsenek laza csatlakozók - a ragasztáshoz és a ragasztáshoz szükséges többletidő kifizetődött

Ami nem működött olyan jól …

Így az asztalomnál kitalálom, mi nézne ki jól az antenna mozgásához. Kiderült, amikor egy hatalmas kiállítási központba értünk, a legtöbb ember - nem mindenki - nem vette észre az antenna mozgását. Akik ezt tették, nagyon megijedtek - "az antennája csak megmozdult?" valami, ami szép volt, de a nagyobb pillanat jobb lett volna. Amit tennem kellett, az egy külső potenciométer biztosítása volt, amelyet valós időben csíphettünk, hogy növeljük a forgást, a gyakoriságot stb. Stb. Felköthetnénk a haj alá rejtett csomaghoz.

Ahogy a parókához és a feleségem hajához kötöttem - pár óra múlva leesett. Szerencsére volt egy tartalék nyakkendőcsomagom, és újra fel tudtam kötni a parókájára/hajas kontyára. Valójában ez nem kudarc, inkább felkészülés egy gyengeségre, amit a műsorban láttunk.

Ajánlott: