Mundarija:

Animatronik ko'z: 7 qadam
Animatronik ko'z: 7 qadam

Video: Animatronik ko'z: 7 qadam

Video: Animatronik ko'z: 7 qadam
Video: Multimusic Million Dizayn Okalarim #bek_media 2024, Noyabr
Anonim
Image
Image
Bu sizga kerak bo'lgan narsa
Bu sizga kerak bo'lgan narsa

Men CNC operatori sifatida ishlayman va o'ylaymanki, menda juda zo'r ish bor, lekin men o'z loyihalarimni boshqarishga qodir ekanligimni isbotlamoqchi edim. Men universitetda boshqaruv texnologiyasini o'rgandim, lekin menda ish bilan shug'ullanish imkoniyati yo'q, shuning uchun men o'zimni qandaydir yo'l bilan davom ettirishga qaror qildim. Bugungi kunda texnologiya juda qulay ekanligini kashf qilish juda hayajonli edi. Men kelajakda robotlar qurmoqchiman va ko'z yaxshi boshlanish deb o'yladim.

1 -qadam: Bu sizga kerak

Materiallar:

  • 2 ta stol tennisi bo'yicha oq to'plar
  • Dumaloq boshli suv sovutish trubkasi

Asboblar:

  • Issiq yopishtiruvchi qurol
  • dumaloq tegirmon
  • ko'rdim
  • Hammer

2 -qadam: Ko'zlar

Ko'zlar
Ko'zlar
Ko'zlar
Ko'zlar
Ko'zlar
Ko'zlar

To'plarni kesib oling, lekin yarmida emas. Bir qismi boshqasidan ko'ra kattaroq bo'lsin, biz ichkariga biror narsa qo'yish uchun koptoklarni kesib tashladik va ko'zlarni boshqarishga yordam beradigan teshiklarni burg'ilash uchun qirralarga muhtojmiz.

Bo'yoq va teshiklarni burg'ulash.

3 -qadam: Juma aylanishi

Image
Image
Juma aylanishi
Juma aylanishi
Juma aylanishi
Juma aylanishi

Men faqat bir tomondan boshqa tomonga o'tadigan ko'zni xohlamadim. Men juda ko'p ko'rsatmalarni ko'rdim, lekin buni qanday amalga oshirishni tushunolmadim. Oxir-oqibat You-Tube-da video topdim, lekin sotib olishni xohlamadim. Men kliplardan yog'och va metalldan foydalanishga birinchi urinish qildim. Men pinlarni yopishtiruvchi qurol bilan mahkamladim, lekin natijalar meni qoniqtirmadi. Sanoat ishchisi sifatida men ko'p narsalarga ega bo'laman. Men dumaloq boshli suvni sovutish trubkasi menga kerakli narsaga o'xshab ketganini ko'rdim, lekin u erkin aylanishi uchun qattiq edi. Men bo'lim ichida freze qildim, keyin mening qismim erkin aylanishga tayyor edi.

4 -qadam: Baza

Baza
Baza
Baza
Baza
Baza
Baza

Poydevorni egish uchun bolg'adan foydalanishingiz mumkin, skameykaning burchagi mukammal 90 ° ga erishishga yordam beradi. Burilishdan oldin teshikni burg'ilashga ishonch hosil qiling, bu ancha oson.

5 -qadam: Ko'zni nazorat qilish

Ko'zlarni nazorat qilish
Ko'zlarni nazorat qilish
Ko'zlarni nazorat qilish
Ko'zlarni nazorat qilish
Ko'zlarni nazorat qilish
Ko'zlarni nazorat qilish

6 -qadam: Dastur

Men juda yangi, shuning uchun menga dasturda yordam kerak edi, siz bu erda loyihani ko'rishingiz mumkin. Mening manbam

Dasturni Arduino muhitiga nusxalash va joylashtirish.

#qo'shing

#define pi 3.14159265358979323846 #define twopi (2*pi) float circleradius = 50; // har tomondan 50 - maksimal chegara qiymatlarining birortasini o'zgartirmang float stepnumber = 360; suzuvchi qadam burchak;

#include // servo boshqaruvi uchun servo kutubxonani o'z ichiga oladi

Servo horServo; // chap/o'ng harakat uchun servo Servo vertServo; // yuqoriga/pastga harakatlanish uchun servo

tasodifiy bayt; // tasodifiy gorizontal joylashuv o'zgaruvchisini aniqlang byte randomvert; // tasodifiy vertikal holat o'zgaruvchisini aniqlang int randomdelay; // tasodifiy kechikish o'zgaruvchisini aniqlang

#define HLEFTLIMIT 40 // gorizontal (chap/o'ng) servoda chap chegarani belgilang #define HRIGHTLIMIT 80 // gorizontal (chap/o'ng) servoda o'ng chegarasini belgilang

#define VTOPLIMIT 70 // vertikal (yuqoriga/pastga) servoda yuqori chegarani belgilang #debine VBOTLIMIT 110 // gorizontal (yuqoriga/pastga) servoda pastki chegarani belgilang.

void setup () {horServo.attach (8); // 8 -pinli gorizontal servo vertServo.attach (9); // 9 -pinli vertikal servo randomSeed (analogRead (0)); // Ulanmagan analog pin yordamida tasodifiy qiymatlarni yarating

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

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

horServo.write (x); // gorizontal servoga yozish vertServo.write (y); // gorizontal servoga yozing

kechikish (10); }}

void loop () {randomhor = tasodifiy (HLEFTLIMIT, HRIGHTLIMIT); // chegaralarni belgilash randomvert = tasodifiy (VTOPLIMIT, VBOTLIMIT); // chegaralarni belgilash randomdelay = tasodifiy (1000, 4000); // har 1 - 4 soniyada siljiydi

horServo.write (tasodifiy); // gorizontal servo vertServo.write -ga yozish (randomvert); // vertikal servo kechiktirishga yozish (randomdelay); // tasodifiy vaqtni kechiktirish (yuqorida belgilangan qiymatlar ichida)}

Tavsiya: