Cuprins:

Animatronic Eye: 7 pași
Animatronic Eye: 7 pași

Video: Animatronic Eye: 7 pași

Video: Animatronic Eye: 7 pași
Video: Obsidian Fury Death|Pacific Rim Uprising [Second Battle] [Fight Scene] 2024, Noiembrie
Anonim
Image
Image
De asta ai nevoie
De asta ai nevoie

Lucrez ca operator CNC și cred că am o slujbă foarte drăguță, dar am vrut să-mi demonstrez că sunt capabil să-mi conduc propriile proiecte. Am studiat tehnologia de control la universitate, dar nu am ocazia să practic asta la locul de muncă, așa că am decis să mă duc cumva. A fost foarte interesant să descoperim că tehnologia este atât de accesibilă astăzi. Vreau să construiesc roboți în viitor și am crezut că ochiul este un început bun.

Pasul 1: De asta aveți nevoie

Materiale:

  • 2 bile albe de ping-pong
  • Țeavă de răcire a apei cu cap rotund

Instrumente:

  • Pistol de lipit fierbinte
  • moara rotunda
  • a văzut
  • Ciocan

Pasul 2: Ochii

Ochii
Ochii
Ochii
Ochii
Ochii
Ochii

Tăiați bilele, dar nu în jumătăți. Lasă o parte să fie mult mai mare decât cealaltă, tăiem bilele pentru a putea pune ceva înăuntru și avem nevoie de margini pentru a găuri găurile care ajută la controlul ochilor.

Vopsiți și găuriți găurile.

Pasul 3: rotația de vin

Image
Image
Vin Rotatie
Vin Rotatie
Vin Rotatie
Vin Rotatie

Nu am vrut un ochi care să se miște doar dintr-o parte în alta. Am văzut multe instructabile, dar nu am reușit să înțeleg cum să fac posibil acest lucru. În cele din urmă, am găsit un videoclip pe You-Tube, dar nu am vrut să cumpăr. Am făcut o primă încercare folosind lemn și metal din cleme. Am asigurat știfturile cu pistolul de lipit, dar nu am fost mulțumit de rezultate. Ca muncitor industrial am acces la multe lucruri. Am observat că țeava de răcire a apei cu cap rotund arată exact ca ceea ce aveam nevoie, dar era strâns pentru a se roti liber. Am frezat în interiorul secțiunii și apoi partea mea a fost gata să se rotească liber.

Pasul 4: baza

Baza
Baza
Baza
Baza
Baza
Baza

Puteți folosi un ciocan pentru a îndoi baza, o menghină de bancă vă ajută să obțineți 90 ° perfect. Asigurați-vă că găuriți gaura înainte de îndoire, este mult mai ușor.

Pasul 5: Controlul ochilor

Controlul ochilor
Controlul ochilor
Controlul ochilor
Controlul ochilor
Controlul ochilor
Controlul ochilor

Pasul 6: Programul

Sunt foarte nou, așa că am avut nevoie de ajutor cu programul, puteți vedea proiectul aici. Sursa mea

Copiați și lipiți programul în mediul dvs. Arduino.

#include

#define pi 3.14159265358979323846 #define twopi (2 * pi) float circleradius = 50; // 50 fiecare parte - nu mai faceți niciuna dintre valorile limită maxime float stepnumber = 360; stepangle plutitor;

#include // include servotecă pentru servo control

Servo horServo; // servo pentru mișcare stânga / dreapta Servo vertServo; // servo pentru mișcare sus / jos

octet randomhor; // definirea poziției orizontale aleatorii octet variabil randomvert; // definește variabila de poziție verticală aleatorie int randomdelay; // definește variabila de întârziere aleatorie

#define HLEFTLIMIT 40 // definește limita la stânga la servo orizontală (stânga / dreapta) #define HRIGHTLIMIT 80 // definește limita la dreapta la servo orizontală (stânga / dreapta)

#define VTOPLIMIT 70 // definește limita superioară pe servo vertical (sus / jos) #define VBOTLIMIT 110 // definește limita inferioară pe servo orizontal (sus / jos)

void setup () {horServo.attach (8); // servo orizontal pe pinul 8 vertServo.attach (9); // servo vertical pe pinul 9 randomSeed (analogRead (0)); // Creați câteva valori aleatorii folosind un pin analogic neconectat

stepangle = twopi / stepnumber; pentru (int i = 0; i

x = hartă (x, 1-circleradius, circleradius, 0, 2 * circleradius); y = hartă (y, 1-circleradius, circleradius, 0, 2 * circleradius);

horServo.write (x); // scrie pe servo orizontal vertServo.write (y); // scrieți pe servo orizontal

întârziere (10); }}

bucla void () {randomhor = random (HLEFTLIMIT, HRIGHTLIMIT); // setați limite randomvert = aleatoriu (VTOPLIMIT, VBOTLIMIT); // setați limite randomdelay = random (1000, 4000); // se mișcă la fiecare 1 până la 4 secunde

horServo.write (randomhor); // scrieți pe servo orizontal vertServo.write (randomvert); // scrieți pe întârzierea servo verticală (randomdelay); // întârzie o perioadă aleatorie de timp (în limitele setate mai sus)}

Recomandat: