Cuprins:

Antenă Andoriană alimentată cu Arduino: 4 pași
Antenă Andoriană alimentată cu Arduino: 4 pași
Anonim
Image
Image

Soția a decis să fie andoriană pentru viitoarea Silicon Valley Comic Con din San Jose, care să se potrivească costumului meu Elvis Captain Kirk. În timp ce pictura feței / machiajul și restul costumului au durat destul de mult timp, nu am putut lăsa antena să fie statică. Am decis să-i fac să se întoarcă și să se rotească pe o bază oarecum aleatorie. Se pare că mulți oameni vând atât antene statice andoriene, cât și cele care se rotesc deja. Dar prețul de 100 USD era prea scump și oricum sunt un tip DIY.

De vreme ce timpul a fost scurt, am găsit o antenă tipărită 3D de pe Etsy față de încercarea de a le face.

PIESE NECESARE -

Antena Andoriană - verificați etsy pentru acestea sau creați-le singur

Două micro servo - pot găsi numeroase locuri

Adafruit itsybitsy - vezi site-ul web adafruit. Mai mici, cu atât mai bine

Cabluri servo extinse - Amazon / eBay

cablu de alimentare servo cu două fire cu comutator pornit / oprit - amazon / ebay

Baterie de 9V

Suport baterie 9V

bandă de mascare, bandă electrică

bandă de păr - orice CVS, țintă etc.

INSTRUMENTE UTILIZATE

ciocan de lipit

pistol de lipit fierbinte

super-lipici

stripuri de sârmă

Cuțit Xacto

Prototip de placă de pâine la soluție de sârmă

Ați instalat mediul de dezvoltare Arduino pe computerul dvs.

Pasul 1: Codul

Iată codul pe care l-am folosit. Eliminat de pe internet.

Conducerea unui serviciu de la un Arduino este foarte ușor. Deși există mai multe modalități tehnice de a face acest lucru, am forțat două modele de mișcare diferite, cu o mișcare ciudată între ele și ping-pong-ul înainte și înapoi. Va trebui să vă jucați cu acest lucru pentru a vă asigura că știți unde este centrul odată ce servo-ul dvs. este atașat la banda de cap și ce arată cel mai bine pentru aplicația dvs. /* Mătura

de BARRAGAN

Acest exemplu de cod se află în domeniul public.

Modificat de r570sv

8-14-19

*/

#include

Servo miservo; // creați un obiect servo pentru a controla un servo

// douăsprezece obiecte servo pot fi create pe majoritatea panourilor

int posl = 0; // variabilă pentru a stoca poziția servo

int posr = 0; int AMANARE = 50; int everyOther = 0; int i = 0; int j = 0; int k = 0; int x = 0; Servo servo1; Servo servo2;

configurare nulă () {

// myservo.attach (9); // atașează servo pe pinul 9 la obiectul servo // myservo.attach (10); // atașează servo pe pinul 10 la obiectul servo servo1.attach (9); servo2.attach (10); servo1.write (0); servo2.write (0); întârziere (1000); servo1.write (180); servo2.write (180); întârziere (1000); Serial.begin (9600); }

//

// // începe 180 stânga mergi la stânga 50, dreapta mergi la dreapta 50, apoi încetinește înapoi la 180 apoi r 50 și stânga 50 // //

bucla nulă () {

for (j = 0; j <= 5; j ++) {for (i = 0, posl = 180, posr = 180; i <= 50; i ++) {// merge de la 0 grade la 180 grade posl = posl - 1; posr = posr + 1; servo1.write (posl); // spuneți servo să meargă în poziția variabilă „pos” servo2.write (posr); întârziere (întârziere); // așteaptă 15ms ca servo să ajungă la poziția} for (i = 0, posl = 130, posr = 230; i <= 50; i ++) {// merge de la 0 grade la 180 grade posl = posl + 1; posr = posr - 1; servo1.write (posl); // spuneți servo să meargă în poziția variabilă „pos” servo2.write (posr); întârziere (întârziere); // așteaptă 15ms ca servo să ajungă în poziție}} // pentru

if (everyOther == 1) {

servo1.write (180); servo2.write (180); întârziere (500); servo1.write (280); servo2.write (280); întârziere (500); servo1.write (120); servo2.write (120); întârziere (500); servo1.write (180); servo2.write (180); întârziere (500); everyOther = 0; // comutați acest lucru astfel încât, de fiecare dată, va face una dintre aceste două rutine} // if else {everyOther = 1; for (x = 0; x <= 5; x ++) {for (i = 0, posl = 180, posr = 180; i <= 40; i ++) {// merge de la 0 grade la 180 grade posl = posl - 1; posr = posr + 1; servo1.write (posl); // spuneți servo să meargă în poziția variabilă „pos” servo2.write (posr); întârziere (10); // așteaptă 10ms ca servo să ajungă la pozitiv} pentru (i = 0, posl = 140, posr = 220; i <= 40; i ++) {// merge de la 0 grade la 180 grade posl = posl + 1; posr = posr - 1; servo1.write (posl); // spuneți servo să meargă în poziția variabilă „pos” servo2.write (posr); întârziere (10); // așteaptă 1 ms până când servo-ul ajunge la poziția}}} // else} // bucla

Pasul 2: Cablare și ambalare

Cablare și ambalare
Cablare și ambalare
Cablare și ambalare
Cablare și ambalare

Deci, cablarea de bază este foarte simplă.

Un servo are trei fire. Puterea, împământarea și pinul PWM de la Arduino.

Deci, pinii 9 și 10 au fost folosiți pentru PWM, iar masa și puterea au fost utilizate de la Arduino.

Am ales o baterie de 9V pentru că aveam un suport pentru ea. Aș putea folosi o baterie LiPo mai mică de 3,7 V pentru a face întregul pachet mai mic, dar nu știam dacă aș putea funcționa 8 ore pe bateria foarte mică de 3,7 V pe care o aveam, așa că am mers cu bateria mai mare de 9 v, am pus-o în un titular și am adus o rezervă ca să o pot schimba dacă este necesar. Am inclus și un comutator de oprire / pornire pentru că am vrut o modalitate de a-l porni și opri cu ușurință. Întregul pachet urma să fie ascuns în partea din spate a capului între perucă și păr și ceea ce nu doream este un mod piratat de a-l alimenta, care poate provoca o perucă sau cabluri care nu reușesc să încerce să se învârtă cu el.

Ambalajul propriu-zis al întregului proiect a fost una dintre cele mai dificile părți. Am avut nevoie de el mic, dar nici nu am vrut ca firele să nu mai fie terminate și să am proiectul EȘECU atunci când aveam nevoie de el. Am lipit la cald toate conexiunile de pe Arduino, astfel încât pinii să nu alunece și am lipit firele de alimentare și de masă direct pe placa Arduino. Orice alte conexiuni de sârmă au fost lipite împreună și întregul pachet a fost înfășurat în bandă de mascare cu acces ușor la întrerupătorul de pornire și oprire.

Pasul 3: Instalarea gadgetului pe perucă

Image
Image
Instalarea gadgetului pe perucă
Instalarea gadgetului pe perucă

Dacă ambalajul nu era suficient de plictisitor, de fapt, obținerea întregului lucru în perucă era dureroasă.

Antena a venit montată pe o bandă de păr care urma să eșueze complet pentru ceea ce am planificat să o folosesc, așa că a trebuit să cumpărăm o bandă de păr mai puternică - din metal și acoperită cu cauciuc.

Antena tipărită 3D nu se potrivește cu micro-servo-urile, așa că a trebuit să scot sloturile mai mari. Servoarele au fost așezate la locul lor cu adeziv fierbinte.

Montarea claxonului servo pe banda de păr a fost o mizerie completă. Nu am vrut să tai o fantă uriașă în perucă, astfel încât să pot atașa în prealabil servo la banda de păr și antenă, provocând poate o defecțiune a perucii, așa că am urmat calea foarte dureroasă de a tăia o mică gaură în perucă 1/4 Așa că arborele servo se potrivea. Apoi am atașat claxonul serverului la servo. Apoi am epoxat claxonul serverului la banda de păr - ceea ce nu a funcționat. Nici super-lipirea claxonului serverului la banda de păr nu a funcționat. Soooooo, am înfășurat claxonul serverului cu banda de păr cu un paracord foarte subțire, am legat fiecare folie, apoi am lipit super nodurile paracordului, astfel încât să nu se slăbească. un serviciu, prima dată face acest lucru). Îmi place ce ai putea face pentru a face o săgeată ca acum 10 000 de ani, o tehnică.

Există modalități mai bune de a face acest lucru. Utilizați exemplul meu ca ceva care funcționează, dar ceva ce ar putea fi îmbunătățit:-)

Două sloturi suplimentare de 1/4 inch au fost tăiate, astfel încât firul serverului să poată pătrunde prin perucă și în partea din spate a perucii până acolo unde avea să locuiască bateria / Arduino.

Atașarea bateriei / Arduino la cap / perucă

YMMV în această privință. Am reușit să leg pachetul de cocul soției mele sub perucă. Purta o plasă de păr, iar cravata a fost înfășurată și în pachet. Am avut un eșec în care a scăpat, așa că l-am înfășurat din nou și a durat restul zilei (aduceți niște provizii când mergeți la con pentru a vă ajuta:)

Pasul 4: La spectacol - Ce a funcționat, ce nu, ce am face diferit

La spectacol - Ce a funcționat, ce nu, ce am face diferit
La spectacol - Ce a funcționat, ce nu, ce am face diferit
La spectacol - Ce a funcționat, ce nu, ce am face diferit
La spectacol - Ce a funcționat, ce nu, ce am face diferit

Deci, ce a funcționat -

Antenele nu au căzut - dar a trebuit să fim foarte atenți când intrăm și ieșim din mașină. Servo-ul este mic, iar conexiunea cornului servo la banda de păr este și mai fragilă.

Bateria a durat tot spectacolul - nu este nevoie să schimbați bateriile.

Nu s-au desprins fire, nici conexiuni libere - timpul suplimentar pentru lipire și bandă a dat roade

Ce nu a funcționat atât de bine -

Așa că la biroul meu îmi dau seama ce ar arăta bine pentru mișcarea antenei. Se întâmplă când am ajuns într-un centru expozițional imens, majoritatea oamenilor - nu toți, nu au observat că antena se mișcă. Cei care au făcut-o s-au cam speriat - „ți s-a mișcat doar antena?” un lucru frumos, dar un moment mai mare ar fi fost mai bun. Ceea ce ar trebui să fac este să ofer un potențiometru extern pe care să-l putem modifica în timp real pentru a crește rotația, frecvența etc. etc. Am putea să-l legăm de pachet ascuns sub păr.

Modul în care l-am legat de perucă și de părul soției mele - a căzut după câteva ore. Din fericire am avut o folie de cravată de rezervă și am reușit să o leg din nou de peruca / cocul de păr. De fapt, acest lucru nu este un eșec mai degrabă ca fiind pregătit pentru o slăbiciune pe care am văzut-o intrând în spectacol.

Recomandat: