Mündəricat:

Arduino Powered Andorian Antenna: 4 addım
Arduino Powered Andorian Antenna: 4 addım

Video: Arduino Powered Andorian Antenna: 4 addım

Video: Arduino Powered Andorian Antenna: 4 addım
Video: Amazing arduino project 2024, Noyabr
Anonim
Image
Image

Arvad, Elvis Kapitanı Kirk kostyumu ilə uyğunlaşmaq üçün San Jozedə keçiriləcək Silicon Valley Comic Con üçün Andoriyalı olmağa qərar verdi. Üz boyama/makiyaj və kostyumun qalan hissəsi kifayət qədər vaxt aparsa da, antenanın sadəcə statik olmasına icazə verə bilmədim. Onları bir az təsadüfi olaraq döndərməyə və döndərməyə qərar verdim. Məlum olur ki, bir çox insan həm statik Andoriya antenasını, həm də artıq fırlanan antenaları satır. Ancaq 100 dollarlıq qiymət etiketi çox bahalı idi və mən hər halda DIY adamıyam.

Vaxt qısa olduğundan, Etsy -dən kənarda 3D çaplı bir anten tapdım.

Tələb olunan hissələr -

Andoriya antenası - bunlar üçün yoxlayın və ya özünüz edin

İki mikro servo - çoxsaylı yerlər tapa bilərsiniz

Adafruit itybitsy - adafruits veb saytına baxın. Kiçik daha yaxşı

Genişləndirilmiş servo kabellər - amazon/ebay

açma/söndürmə açarı olan servo iki telli elektrik kabeli - amazon/ebay

9V batareya

9V batareya tutacağı

maska, elektrik lenti

saç bandı - hər hansı bir CVS, hədəf və s.

İSTİFADƏ EDİLƏN ARAÇLAR

lehimleme dəmir

isti yapışqan silahı

super yapışqan

tel soyucular

Xacto bıçağı

Tel həlli üçün çörək taxtasının prototipi

Kompüterinizə Arduino inkişaf mühiti quraşdırılmışdır

Addım 1: Kod

İşdə istifadə etdiyim kod budur. İnternetdən çıxarıldı.

Bir Arduinodan servo (lar) sürmək çox asandır. Bunun daha texniki yolları olsa da, aralarındakı qəribə bir hərəkətlə və irəli və irəli ping-pongla iki fərqli hərəkət modelini zorla zorladım. Servounuzun baş bandına bağlandıqdan sonra mərkəzinizin harada olduğunu və tətbiqiniz üçün ən yaxşı göründüyünü bilmək üçün bununla oynamalısınız. /* Süpür

BARRAGAN tərəfindən

Bu nümunə kodu ictimai malıdır.

R570sv tərəfindən dəyişdirildi

8-14-19

*/

#daxil edin

Servo xidməti; // servoya nəzarət etmək üçün servo obyekti yaradın

// əksər lövhələrdə on iki servo obyekt yaradıla bilər

int posl = 0; // servo mövqeyini saxlamaq üçün dəyişən

int posr = 0; int GECİKMƏ = 50; int everyOther = 0; int i = 0; int j = 0; int k = 0; int x = 0; Servo servo1; Servo servo2;

boş quraşdırma () {

// myservo.attach (9); // pin 9 -dakı servonu servo obyektə bağlayır // myservo.attach (10); // servo1.attach (9) servo obyektinə pin 10 -da servo bağlayır; servo2. əlavə (10); servo1.write (0); servo2.write (0); gecikmə (1000); servo1.write (180); servo2.write (180); gecikmə (1000); Serial.begin (9600); }

//

// // başla 180 sola sola 50, sağa sağa 50, sonra yavaşca 180 -ə, sonra r 50 -yə və sola 50 // //

boşluq döngəsi () {

for (j = 0; j <= 5; j ++) {for (i = 0, posl = 180, posr = 180; i <= 50; i ++) {// 0 dərəcədən 180 dərəcəyə qədər gedir posl = posl - 1; posr = posr + 1; servo1.write (posl); // servoya deyin 'pos' servo2.write (posr) dəyişən mövqeyinə getməsini; gecikmə (gecikmə); // servonun mövqeyə çatması üçün 15ms gözləyir} (i = 0, posl = 130, posr = 230; i <= 50; i ++) {// 0 dərəcədən 180 dərəcəyə qədər gedir posl = posl+1; posr = posr - 1; servo1.write (posl); // servoya deyin 'pos' servo2.write (posr) dəyişən mövqeyinə getməsini; gecikmə (gecikmə); // servonun mövqeyə çatması üçün 15ms gözləyir}} // for

əgər (hər biri == 1) {

servo1.write (180); servo2.write (180); gecikmə (500); servo1.write (280); servo2.write (280); gecikmə (500); servo1.write (120); servo2.write (120); gecikmə (500); servo1.write (180); servo2.write (180); gecikmə (500); everyOther = 0; // hər iki dəfə bu iki prosedurdan birini yerinə yetirəcək şəkildə dəyişdirin} // başqa halda {everyOther = 1; for (x = 0; x <= 5; x ++) {for (i = 0, posl = 180, posr = 180; i <= 40; i ++) {// 0 dərəcədən 180 dərəcəyə qədər gedir posl = posl - 1; posr = posr + 1; servo1.write (posl); // servoya deyin 'pos' servo2.write (posr) dəyişən mövqeyinə getməsini; gecikmə (10); // servonun pozitioya çatması üçün 10ms gözləyir} (i = 0, posl = 140, posr = 220; i <= 40; i ++) {// 0 dərəcədən 180 dərəcəyə qədər gedir posl = posl+1; posr = posr - 1; servo1.write (posl); // servoya deyin 'pos' servo2.write (posr) dəyişən mövqeyinə getməsini; gecikmə (10); // servonun mövqeyə çatması üçün 1ms gözləyir}}} // else} // loop

Addım 2: Kablolama və Qablaşdırma

Kablolama və Qablaşdırma
Kablolama və Qablaşdırma
Kablolama və Qablaşdırma
Kablolama və Qablaşdırma

Belə ki, əsas naqillər ağıllıdır.

Bir servoda üç tel var. Arduinodan Power, Ground və PWM pin.

Beləliklə, PWM üçün 9 və 10 pinləri, Arduinodan torpaq və güc istifadə edildi.

9V batareya seçdim, çünki tutacaqım var. Bütün paketi kiçiltmək üçün daha kiçik bir LiPo 3.7V batareya istifadə edə bilərdim, amma malik olduğum çox kiçik 3.7V batareyada 8 saat işləyə biləcəyimi bilmirdim, buna görə də daha böyük 9v batareya ilə getdim. bir tutacaq və ehtiyat hissə gətirdi, lazım olduqda dəyişdirə bilərəm. Asanlıqla açmaq və söndürmək üçün bir yol istədiyim üçün söndürmə/açma düyməsini də daxil etdim. Bütün paket, başın arxasına perukla saçın arasına töküləcəkdi və istəmədiyim şey, onu gücləndirmək üçün bir parik və ya məftilin uğursuzluğa səbəb ola biləcəyi bir hack yolu.

Bütün layihənin faktiki qablaşdırılması ən çətin hissələrdən biri idi. Kiçik bir şeyə ehtiyacım var idi, amma heç bir telin işlənməməsini və ehtiyacım olanda layihənin FAIL olmasını istəmirdim. Sancaqlar sürüşməsin deyə Arduino üzərindəki bütün əlaqələri isti şəkildə yapışdırdım və güc və torpaq tellərini Arduino lövhəsinə düz lehimlədim. Hər hansı digər tel əlaqələri bir -birinə yapışdırıldı və bütün paket, açma -söndürmə düyməsinə asanlıqla daxil olmaq üçün maskalanan lentlə büküldü.

Addım 3: Gadget'ı Peruka quraşdırın

Image
Image
Gadgetın Peruya quraşdırılması
Gadgetın Peruya quraşdırılması

Qablaşdırma kifayət qədər yorucu olmasa, hər şeyi perukla almaq ağrılı idi.

Anten, istifadə etməyi planlaşdırdığım üçün tamamilə uğursuz olacaq bir saç bandına bağlandı, buna görə metaldan hazırlanmış və rezinlə örtülmüş daha güclü bir saç bandı almalı olduq.

3D çaplı anten mikro servolara uyğun gəlmədi, buna görə yuvaları daha böyük ölçüyə salmalı oldum. Servolar isti yapışqan ilə yerinə qoyuldu.

Servo buynuzu saç bandına bağlamaq tamamilə qarışıq idi. Perukun böyük bir yuvasını kəsmək istəmədim, buna görə də servoyu saç bandına və antenaya əvvəlcədən bağlaya bilərdim, bəlkə də bir parik uğursuzluğuna səbəb olardı, buna görə də perukdakı kiçik bir çuxurun kəsilməsinin çox ağrılı yolunu getdim 1/4 buna görə də servo şaft uyğun gəlir. Sonra server buynuzunu servoya bağladım. Sonra server buynuzunu saç bandına epoksil etdim - bu da işləmədi. Server buynuzunu saç bandına super yapışdırmaq da işləmədi. Soooooo, server buynuzunu saç bandına çox nazik bir paracord ilə bağladım, hər sarğısını bağladım sonra gevşetməmək üçün parakord düyünlərini super yapışdırdım. 10 min il əvvəl bir texnika kimi bir ox düzəltmək üçün nə edə biləcəyinizi çox xoşlayırsınız.

Bunun daha yaxşı yolları var. Misalımı işləyən bir şey kimi istifadə edin, amma təkmilləşdirilə bilən bir şey kimi:-)

İki əlavə 1/4 düymlük yuva kəsildi, beləliklə server teli perukun içərisinə və perukun arxasına bataryanın/Arduinonun yerləşəcəyi yerə sığa bildi.

Batareyanı/Arduino -nu başa/peruka bağlamaq

YMMV bu barədə. Paketi arvadımın çörəyinə perukun altından bağlaya bildim. Saç ağı taxmışdı və qalstuk da paketə bükülmüşdü. Çıxarıldığı bir uğursuzluğumuz oldu, buna görə yenidən bağladım və günün qalan hissəsinə qədər davam etdi (bu işdə kömək etmək üçün kassaya getdiyiniz zaman bir neçə material gətirin:-))

Addım 4: Şouda - Nə işlədi, nələr etmədi, fərqli olaraq nələr edərdik

Şouda - Nə İşlədi, Nə Etmədi, Nə Fərqli Etdik
Şouda - Nə İşlədi, Nə Etmədi, Nə Fərqli Etdik
Şouda - Nə İşlədi, Nə Etmədi, Nə Fərqli Etdik
Şouda - Nə İşlədi, Nə Etmədi, Nə Fərqli Etdik

Yaxşı, nə işlədi -

Antenalar yıxılmadı - ancaq maşına minərkən və düşərkən çox diqqətli olmalıyıq. Servo kiçikdir və servo buynuzunun saç bandına bağlanması daha da kövrəkdir.

Batareya şou boyunca davam etdi - batareyaları dəyişdirməyə ehtiyac yoxdur.

Heç bir tel kəsilməmiş, boş əlaqələr olmamışdır - yapışqan və lent üçün əlavə vaxt ödəmişdir

Nə yaxşı işləmədi -

Beləliklə, masamda antenin hərəkəti üçün nəyin yaxşı olacağını anlayıram. Böyük bir sərgi mərkəzinə girəndə məlum oldu ki, hamı deyil, hamı antenanın hərəkət etdiyini gördü. Bunu edənlər bir qədər çaşdılar - 'anteniniz sadəcə hərəkət etdi?' gözəl bir şey amma daha böyük bir an daha yaxşı olardı. Etməli olduğum şey, fırlanmanı, tezliyi və s. Artırmaq üçün real vaxtda düzəltdiyimiz xarici bir potensiometr təmin etmək idi.

Peruka və həyat yoldaşımın saçına bağladığım yol - bir neçə saat sonra düşdü. Xoşbəxtlikdən ehtiyat qalstukum var idi və onu peruk/saç topuzuna yenidən bağlaya bildim. Əslində bu, şouya girərkən gördüyümüz bir zəifliyə hazırlaşmaq kimi bir uğursuzluq deyil.

Tövsiyə: