Mundarija:
- 1 -qadam: Ko'z mexanizmi uchun fayllarni 3D chop etish
- 2 -qadam: 3D bosilgan qismlar uchun postlarni qayta ishlash
- 3 -qadam: Ko'zoynakni yanada aniqroq qiling
- 4 -qadam: Aloqalarni yarating
- 5 -qadam: Ko'z mexanizmini yig'ing
- 6 -qadam: Hamma narsani ulang
- 7 -qadam: Servislaringizni uyga joylashtiring va ko'z mexanizmini tugating
- 8 -qadam: Qovog'ingizni o'yib oling va qovoqqa ko'zni o'rnating
- 9 -qadam: Kodni yuklang
- 10 -qadam: Siz tugadingiz
2025 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2025-01-13 06:58
Bu yo'riqnomada siz ko'zini qimirlatganda hammani qo'rqitadigan Halloween oshqovog'ini tayyorlashni o'rganasiz
Ultrasonik sensorning tetik masofasini kerakli qiymatga moslashtiring (9 -qadam), va sizning oshqovog'ingiz uyingizdan konfet olishga jur'at etgan har bir kishini toshbo'ron qiladi
Yuqoridagi videoda siz bu ko'z qodir bo'lgan harakatlarning namoyishini ko'rasiz. Dastlabki 2 ta klipda ko'zni dasturlash mumkin bo'lgan tasodifiy chayqalish harakatlari ko'rsatilgan, 3 -chi va 4 -chi kliplar esa, qanday qilib qovoq ko'zni xuddi odam bezovta qilsa, aylantirishi mumkin.
Bu men uchun Halloween shoshilinch loyihasi edi, shuning uchun men rasmlarimning ko'pini loyiham tugagandan so'ng oldim. Shuning uchun ham men ko'z uchun universal bo'g'in sotib olishning o'rniga, 3D formatida chop etilishi qiyin bo'lgan qismlarni talab qilmaydigan bo'g'in yaratdim. Shuning uchun siz ushbu loyihani bir kunda bajarishingiz mumkin!
Bu erda kerakli fayllar joylashgan papkaga havola.
Ta'minot:
1. 1x Arduino Nano (yoki shunga o'xshash)
2. 2x SG90 9G Micro Servo
3. 1x qovoq (diametri kamida ~ 20 sm)
4. 2x yog'ochdan yasalgan shish
5. 4x AA batareyalar (yoki shunga o'xshash 5V)
6. ~ Jumper simlari (yoki 22 AWG simining 1m)
7. ~ 15 sm Bend-and-Wire (qog'oz qisqichlari yaxshi ishlaydi)
8. Bir nechta marker yoki bo'yoq (qizil, ko'k va qora ranglar)
9. Oq (PLA) filament
Majburiy emas:
1. 1x HC-SR04 ultrasonik masofa sensori
2. Lehimlash temir va lehim
3. Elektr tasmasi
1 -qadam: Ko'z mexanizmi uchun fayllarni 3D chop etish
Birinchidan, sizga biriktirilgan STL fayllarini oq PLA filamentida 3D bosib chiqarish kerak bo'ladi.
"2020_Halloween_Pumpkin_With_Moving_Animatronic_Eye_MASTER" jildini yuklab oling. Bu papkada barcha 3D va kodli fayllar, shuningdek havolalar mavjud.
3D -fayllar allaqachon 3D bosib chiqarishga eng mos keladigan yo'nalishga yo'naltirilgan. Shuni ta'kidlash kerakki, "Tashqi ko'z" dumaloq tomoni pastga, "Ichki ko'z" tekis tomoni pastga qarab bosilishi kerak. Garchi bu sizga tashqi ko'z uchun qo'llab -quvvatlash kerak bo'ladi degan ma'noni anglatsa -da, siz bu fayllarning hech birini teskari yo'nalishda chop qilmasligingiz kerak. Buning sababi shundaki, ko'z mexanizmining bog'lanishiga yo'l qo'ymaslik uchun tashqi ko'zning ichki qismi va tashqi qismi iloji boricha silliq bo'lishi kerak.
Men tashqi va ichki ko'z qismlarini 0,1 mm qatlam balandligida chop etdim, chunki bu zinapoyalar ta'sirini kamaytiradi, natijada sirt tekislanadi. Boshqa fayllarni 0,2-0,3 mm qatlam balandligida chop etdim.
Loyihani namoyish etishga tayyor bo'lgach, men chiroqni ko'z mexanizmining orqasiga qo'ydim, shunda ko'z porlab turardi. Agar siz bu yorqin effektga erishmoqchi bo'lsangiz, men tashqi va ichki ko'z qismlari uchun past to'lg'azish va perimetr sozlamalarini ishlatishni tavsiya qilaman.
2 -qadam: 3D bosilgan qismlar uchun postlarni qayta ishlash
Ishga muhtoj bo'lgan yagona qism - tashqi ko'z.
Tashqi ko'zning ko'rinadigan tomonida tayanchlar ishlatilganligi sababli, sirt biroz qo'pol bo'ladi. ~ 120 - 240 dona zımpara qog'ozidan foydalanib, sirtini yaxshi ko'ringuncha tekislang (bilaman, hech kim silliqlashni yoqtirmaydi, shuning uchun ko'rinishdan mamnun bo'lguncha tekislang yoki bu bosqichni butunlay o'tkazib yuboring).
3 -qadam: Ko'zoynakni yanada aniqroq qiling
Ko'zoynakni silliq silliqlash uchun silliqlaganimdan so'ng, men iris va qon tomirlarini qo'shish uchun turli kenglikdagi qizil, qora va ko'k doimiy markerlardan foydalandim. (Aytishingiz mumkinki, men rassom emasman va bu ko'rsatma qanday qilib giper-realistik ko'zni yaratishni o'z ichiga olmaydi).
Tasavvur qilamanki, siz ko'zni bo'yash va bo'yash orqali giper-realistik ko'z yasashingiz mumkin, lekin men bularning hech birini bezovta qilmaganman; Sizning qovoq qorong'ida joylashtirilganda, hech kim bu nozik tafsilotlarni ko'rmaydi!
4 -qadam: Aloqalarni yarating
Endi sizda 3D bosilgan barcha qismlar tayyor, siz mexanizmni yig'ishga deyarli tayyormiz. Bog'lanish uchun siz faqat 3 ta egiluvchi simni egishingiz kerak (men oddiy qog'oz qisqichidan foydalanganman).
Igna qisqichlari yordamida simlarni yuqoridagi rasmdagi o'lchamlari bir xil bo'lguncha buking.
5 -qadam: Ko'z mexanizmini yig'ing
Endi sizda ko'z mexanizmini yig'ish uchun kerak bo'lgan hamma narsa bor.
1. Birinchi qadam - "25mmEyeConnector" ni ichki ko'zga va taglikning yon tomoniga yopishtirish.
2. Keyin, yuqorida ko'rsatilganidek, taglikning pastki qismiga 2 "BaseSkewerMount1" yopishtiring. Oddiy yog'ochdan yasalgan shishni shish idishlaridagi teshiklardan siljitish kerak bo'ladi, shuning uchun agar kerak bo'lsa, teshiklarni burang.
3. 2 ta SG90 mikro -servosini taglikdagi uyalariga o'rnating va har bir servo uchun 1 vint bilan mahkamlang. Bu servolarning ikkalasi ham simlari uyaning ochiq tomonidan chiqadigan tarzda hizalanishi kerak.
4. 3 ta bo'g'inni tashqi ko'z va servo shoxlarga ulang. Eng katta bo'g'in ko'zning yuqori teshigidan o'tadi va pastki teshik ulanmagan holda qoladi. Keyin tashqi ko'zni ichki ko'zning ustiga siljiting. Yuqoridagi rasmlarga qarang.
SERVO HORSLARINI HAM XIZMATLARGA ULAYMANG. Buning sababi shundaki, servolarni birinchi navbatda uyga joylashtirish kerak (keyingi bosqichda tushuntiriladi).
6 -qadam: Hamma narsani ulang
Servolarni uyga o'rnatish va servo shoxlarini ulashdan oldin, biz simlarni ulashimiz kerak.
Agar siz Arduino Nano ish fayllaridan foydalanayotgan bo'lsangiz:
1. Nanoning yuqori qismidagi 6 ta erkak sarlavhani ajratib oling. Ular korpusning qopqog'ini to'sib qo'yishadi, lekin Nanoning pastki qismidagi erkaklarning 2 qatorli qatorlari joylashishi uchun mo'ljallangan bo'lib, ular qolishi mumkin.
2. Taxtani korpusning pastki qismiga suring, 2 qatorli sarlavhani korpusning pastki qismidagi teshiklardan o'tib, taxta tekis o'tirguncha.
3. Gorizontal o'qli servo (servo ko'zning pastki va yaqiniga o'rnatilgan) signal simini Arduino Nano D8 piniga ulang.4. Vertikal o'qli servo signal simini Nano D9 piniga ulang.
5. Ultrasonik sensorning uchli pinini D3 piniga ulang.
6. Eko -pinni D2 piniga ulang.
7. Nihoyat, ikkita simni Nano 5V va GND pinlariga ulang.
8. Nano, gorizontal o'q, vertikal o'q va ultratovush sensori quvvat simlarini AA akkumulyator to'plamiga parallel ravishda ulang (men 2SAA korpusini bir-biriga yopishtirib, 4SAA korpusini yasash uchun ketma-ket simlar bilan bog'ladim). Umumiy asos yaratilganligiga ishonch hosil qiling. Tugallangan sxemaga va yuqoridagi sxemaga qarang.
9. Ulanishlarni elektr lenta bilan o'rab oling. Bu ulanishlarni suvga chidamli bo'lishiga yordam beradi, shuningdek bo'shashish ehtimolini kamaytiradi.
4. Bu sumkaning qopqog'ida tugmacha kengaytmasi mavjud, shuning uchun siz qutini ochmasdan turib, reset tugmasini bosishingiz mumkin. Koson qopqog'ini yopishdan oldin, "buttonExtender" ni yupqa tomoni tashqariga chiqib, teshikka suring va qopqog'ini joyiga qo'ying. Men tugmani dasturni tezda to'xtatish uchun foydali deb topdim, lekin agar siz reset tugmasiga kirishni xohlamasangiz va qopqog'ida kichik tuynuk paydo bo'lishiga qarshi bo'lmasangiz, bu bosqichni o'tkazib yuboring.
7 -qadam: Servislaringizni uyga joylashtiring va ko'z mexanizmini tugating
Servo 0 dan 180 ° gacha harakat qiladi, shuning uchun servoning harakatlanish oralig'i ko'zning harakat oralig'ining o'rtasini tashkil qilishi muhim.
Servo shoxlarini ulashdan oldin siz servolarni 90º ga markazlashtirishingiz kerak va buni "Home_Servos1" eskizini Nano -ga yuklash orqali amalga oshirish mumkin. Bu eskiz shunday qiladiki, servo har qanday raqamli pinga ulanganda, servo 90º ga o'tishni buyuradi.
Servo markazlashtirilgan holda siz servo shoxlarini tegishli servolarga ehtiyotkorlik bilan bosishingiz mumkin. Servo shoxlari servo markazlashtirilganda qanday burchak ostida bo'lishi kerakligi uchun yuqoridagi rasmlarning oxirgisiga qarang.
Har bir servo shoxini o'rtasidan bitta vint bilan mahkamlang.
8 -qadam: Qovog'ingizni o'yib oling va qovoqqa ko'zni o'rnating
Qovoqni xohlagan narsangiz bilan o'yib oling! Bu qovoqni qanday o'yib yasashni o'rgatmaydi, shuning uchun men bu tafsilotlarning ko'pini o'tkazib yuboraman.
Qovoq o'ymakorligingizdagi yagona muhim narsa shundaki, ko'z teshigi juda baland bo'lmasligi kerak, aks holda qovoqning "shipi" orqali servo bo'g'inlarga to'siq qo'yiladi.
Ko'z teshigini yasayotganda, asta -sekin ko'z teshigini kattalashtiring, shunda ko'z kerakli miqdorda chiqadi. Siz bu tuynukning ichki qismini pichoqlashingiz kerak, shuning uchun qovoq ichidagi teshik tomonining diametri qovoq tashqarisidagi teshik tomonidan kattaroqdir.
Ko'z mexanizmini o'rnatish uchun:
1. Qisqichbaqani kesib oling va uni taglikning pastki qismiga yopishtirgan mahkamlagichlardan biriga joylashtiring. Endi hamma narsani qovoq ichidan ushlab turing, shunda ko'z to'g'ri joyda bo'ladi va qovoqning ichki qismidan qisqichni boshqa tomondan chiqib ketguncha itaring. Qovoqning tashqarisidan shishani chayish va kerakli joyga etib borishingizga umid qilish o'rniga, siz shishlarning joylashishini aniq belgilaysiz. Qovoqning boshqa qismi va qovoqning boshqa tomoni uchun takrorlang.
2. Endi siz qovoqning tashqarisidan 2 ta shishni, tayoqchalar orasidan itarib, keyin qovoqning boshqa tarafini orqaga qaytarishingiz mumkin. Endi ko'z mexanizmi etarlicha ishonchli o'rnatilishi kerak. Yuqoridagi rasmlarga qarang. (Yelim ishlamay qolganda men ishlatgan qora lentani sezasiz).
3. Men elektronika va batareyalarni toza saqlash uchun plastik to'rva ichiga joylashtirdim va uni oshqovoq ichiga qo'ydim.
4. Elektr chirog'ining linzasini shaffof sariq plastmassa bilan yoping va ko'zni qorong'uda porlashi uchun bu chiroqni to'g'ridan -to'g'ri ko'zning orqasiga qo'ying. Chiroqni ko'z bilan o'rnatish uchun uni bankaning tepasiga qo'ydim.
O'ylaymanki, ultratovushli datchikni ishlatishning eng yaxshi usuli - uning simlarini uzaytirish, shunda siz uni oshqovoqqa emas, balki qovoqning yoniga qo'yishingiz mumkin. Men sensorni ilovam uchun kerak emas deb qaror qildim, shuning uchun sensorni o'tkazib yubordim va to'rtta qo'shimcha sim qoldirdim. Xuddi shu kod, ulangan ultrasonik sensori ulanganligidan qat'i nazar, ishlaydi va parametrlarni o'zgartirish shart emas.
9 -qadam: Kodni yuklang
Siz deyarli tugadingiz!
Kodni yuklab oling va Arduino IDE -ni oching.
Men sizga kod sozlamalari bilan tanishtiraman, ular sizga kerak bo'ladi:
int takrorlanadi = 40; // boshqa sonar pingni kutishdan oldin bajariladigan ko'z harakatlarining sonini aniqlang
Ultrasonik sensor ishga tushirilgandan keyin ko'z o'z harakatlarini ko'p yoki kamroq takrorlashini xohlasangiz, bu qiymatni sozlang. Yuqorida aytganimdek, ultratovush sensoridan foydalanish ixtiyoriy va boshqa kodni talab qilmaydi. Agar siz ultratovushli datchikdan foydalanishni xohlamasangiz, bu sozlamani o'zgarishsiz qoldiring.
55 -sonni aniqlang
#define hRightLIMIT 110 #define vTopLIMIT 6 #define vBotLIMIT 155
Bu qiymatlar servolarning oxirgi to'xtash joylarini aniqlaydi va mexanizmning bog'lanishiga to'sqinlik qiladi. Men rollEye funktsiyasini asosan servo harakatining maksimal diapazonini sinab ko'rish uchun yaratdim, shuning uchun rollEye funktsiyasini ishga tushiring va agar kerak bo'lsa, bu qiymatlarni o'rnating.
#HServoCenterTrim -3 ni aniqlang
#ServoCenterTrim -13 ni aniqlang -13
Bu qiymatlar, qovoq ultratovush sensori yana ishga tushishini kutganda, ko'zning uy holatini aniq belgilashga imkon beradi.
const int hServoPin = 8; // gorizontal servo ulanadigan pinni aniqlang
const int vServoPin = 9; // vertikal servoni ulash uchun pinni aniqlang
Ushbu kod satrlari servolarni tayinlash uchun pinlarni belgilaydi.
const int ultrasonic1 = {3, 2}; // mos ravishda trig va echo pinlarini belgilaydi
Ushbu kod qatori ultratovush sensori qaysi pimlarga ulanganligini ko'rsatadigan qatorni yaratadi.
const long triggerDistance = 1000; // ultratovush sensori ishga tushmasidan oldin maksimal masofani (mm) o'rnating
Ushbu kod qatori ultratovush sensori ishga tushguncha va funktsiya chaqirilgunga qadar maksimal masofani belgilaydi.
const bayt whatFunctionToCall = 1; // (0-1) dasturga qaysi funktsiyani chaqirish kerakligini aytadi
// rollEyes = 0 // randomTwitching = 1
Bu kod satrlari, agar siz qovoqning ko'zini yumishini yoki tasodifiy, jirkanch tarzda harakatlanishini xohlasangiz, tanlash imkonini beradi. Qiymat = 0 yoki 1 bo'lishi kerak. Agar qiymat = 1 bo'lsa, dastur randomTwitching funktsiyasini bajaradi. Agar qiymat = 0 bo'lsa, dastur rollEye funktsiyasini bajaradi. Agar qiymat 1 yoki 0 bo'lsa, dastur hech qanday funktsiyani bajarmaydi.
10 -qadam: Siz tugadingiz
Va bu oddiy qadamlarni bajarib, siz o'zingiz qovoqni animatronik ko'z bilan qurdingiz!
Savollaringiz bo'lsa yoki fikr bildirmoqchi bo'lsangiz, sharh qoldiring.