Mundarija:
2025 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2025-01-23 15:14
Mening yotoqxonamda rolikli qorong'i pardalar to'plami bor, men ularni ko'pincha ertalab yoki kechqurun ochishni yoki yopishni unutaman. Men ochilish va yopilishni avtomatlashtirishni xohlayman, lekin qachon o'zgarganda.
1 -qadam: Potentsial g'oyalar yoki echimlar
YouTube, Instructables va Thingiverse kabi turli saytlarni ko'rib chiqib, men ko'rdimki, eng keng tarqalgan echim - bu plyonkali pog'onali dvigatel yoki servo yordamida yaralarni ochish. Men har xil afzalliklari va kamchiliklari bo'lgan ikkita asosiy variantni topdim.
1 -fikr: g'altak usuli, bu erda vosita va tishli g'altakning ichida joylashgan. Bu usulning afzalliklari borki, u toza va oqlangan usuldir, lekin kamchiliklari borki, u ko'r -ko'rona katta o'zgarishlarni talab qiladi, shnur endi ishlatilmaydi va montaj qilinganida uni parvarish qilish juda qiyin bo'ladi.
2 -fikr: shnur usuli, bu erda dvigatel va vites shnurga joylashtirilgan. Buning afzalligi shundaki, u osonroq va montajga osonlikcha kirish mumkin. Ammo uning kamchiliklari borki, u chirkin va katta hajmli bo'lishi mumkin, shuningdek, uni sillga mahkamlash kerak.
Men shnur usulini afzal ko'raman, chunki bu simni qo'lda ishlatishga xalaqit bermaydi va ko'rlar katta modifikatsiyani talab qilmaydi. Men ESP8266 bilan yakuniy versiyani yaratganimda, uni iloji boricha yashirin va ixcham qilishni rejalashtiryapman.
2 -qadam: yig'ilish
Men bu loyihani Lego mindstorms EV3 yordamida qildim, uning funktsional imkoniyatlari bor, men loyihaning ishlashi mumkinligini ko'rsatishim kerak va men aniq yordam bergan dasturiy ta'minot bilan tanishman. Ko'zi ojizlar g'altakni haydash uchun to'p zanjiridan foydalanganligi sababli, Lego tishli moslamalari mos kelmaydi, men qaror qildimki, tashqi tomondan to'g'ri to'p oralig'i bo'lgan tishli qutini- "xoch shaklidagi" standart teshik bilan jihozlash. markaz, men dizaynni 3D bosib chiqaraman. Shu nuqtada men ham kalibrlash tugmachasini yasadim va derazaga yorug'lik sensori va uning o'rnini bosuvchi tugma biriktirdim.
3 -qadam: ko'r -ko'rona mexanizmni loyihalash
Krank qanday batafsilroq ko'rinishini ko'rish uchun ko'rlarni qismlarga ajratdim. Sökme paytida men 16 tishli kichkina tishli qutichani topdim, bu men izlagan qism edi. Vitesning nusxasini yaratgandan so'ng, men Lego-ga mos keladigan teshiklarni qo'shdim, 3 ta alohida qismni chop etdim va nihoyat ularni super yopishtiruvchi bilan yopishtirdim. Dastlab men Lego qismini moslashtirishda muammolarga duch keldim, chunki 3D printerimda "x" teshigiga etarlicha ruxsat yo'q edi, lekin uning ikkala tomonidagi dumaloq teshiklar bilan hech qanday muammo yo'q edi. Shunday qilib, men "x" ni dumaloq teshikka almashtirdim va u yaxshi chop etildi. Keyin, oz miqdordagi sinovdan so'ng, men ko'r -ko'rona tortish momentini va og'irligini boshqarishi mumkinligini ko'rdim. Men o'z dizaynlarimni quyidagi viteslar bilan bog'layman yoki uni Thingiverse -da topishingiz mumkin:
4 -qadam: ko'rlarni kodlash
Men ma'lum bir yorug'lik darajasiga kelganda ko'rlarni avtomatik ravishda ochadigan va yopadigan kodni xohlardim, lekin u ham xohlagan vaqtda ko'rni ochishi yoki yopishi uchun bekor qilish tugmasiga ega edi. Men o'z GitHub -ni kodning oxirgi versiyasi bilan bog'ladim:
Loyihaning kodini bajarish uchun bir necha kun kerak bo'ldi, men dasturning asosiy mantig'ini yorug'lik sensori bilan to'g'ri ishladim, lekin bir zumda bekor qilish tugmasi to'g'ri ishlamadi. U bosilganda ko'rlarning holatini o'zgartirib yubordi, lekin "qulflash" funktsiyasi yo'q edi, bu esa ko'rning o'z o'rnida qolishini anglatardi, ya'ni ko'r uni darhol avvalgi holatiga qaytaradi. Men buni yorug'lik sensori va sensor sensori qiymatlarini o'qiy oladigan mantiqiy YoK eshik bilan bog'langan "kutguncha" bloki yordamida tuzatdim.
Kod dvigatellar va ko'rlarni kalibrlashdan boshlanadi, ko'r -ko'rona to'liq ochilib, pastdagi sensorli sensorga tegmaguncha pastga tushadi, pastki qismga qancha chorak burilish kerakligini hisoblab, "RotationsNeeded" sifatida saqlanadi. o'zgaruvchan Keyin u ko'rlarning holatini kuzatish uchun ishlatiladigan "BlindOpen" o'zgaruvchisiga "noto'g'ri" deb yozadi. Bu vaqtda kod 4 ta halqaga bo'linadi.
Bu looplardan biri tugma holatini "ButtonPressed" deb nomlangan o'zgaruvchiga doimiy ravishda e'lon qilib turadigan "Buttonstate" pastadir. Bu skriptga bir nechta tugma bloklarini joylashtirish zaruratini yo'q qiladi.
Ikkinchi tsikl - bu "yorug'lik yoki qorong'i", bu mening derazam tashqarisidagi yorug'lik darajasini doimiy ravishda kodda belgilangan sobit bilan taqqoslaydi. Agar natija doimiydan past bo'lsa, pastadir "ItIsLight" o'zgaruvchisiga "noto'g'ri" yozadi, agar u qiymatdan yuqori bo'lsa "haqiqiy" deb yozadi.
Uchinchi tsiklda 3 variantdan iborat raqamli ro'yxat mavjud bo'lib, ular asosan ko'rlarga nima qilish kerakligini aytadi, 0 = ko'r, 1 = ko'r, 2 = hech narsa qilma, chunki ko'r to'g'ri joyda. Loop "BlindShould" o'zgaruvchisini o'qishdan boshlanadi, unda ko'rlar bajarishi kerak bo'lgan to'g'ri vazifa ko'rsatilgan, so'ngra bu vazifani bajaradi, "BlindOpen" o'zgaruvchisini to'g'ri variantga o'zgartiradi va keyin "BlindShould" o'zgaruvchisi o'zgartirilguncha bo'sh qoladi. takrorlaydi. Ko'zi ojizlarni to'liq ochish yoki yopish uchun "RotationsNeeded" qiymatini, shuningdek +/- 100% quvvatini ishlatadi.
To'rtinchi va oxirgi tsikl eng murakkab, bu "Decider" tsikli bo'lib, u barcha ma'lumotlarni qayta ishlaydi va har bir almashtirish bilan nima qilishni hal qiladi. Bu mantiqqa asoslangan "yo'ldagi vilkalar" yordamida amalga oshiriladi, bu erda "tugma bosiladi", "yorug'lik darajasi", "ko'r -ko'rona ochish" to'g'ri yoki noto'g'ri savollar. Hamma almashtirishlar qattiq kodlangan javobga ega, bu 0 = ko'r -ko'rona, 1 = ko'r -ko'rona yuqoriga yoki 2 = hech narsa qilmang - bu qiymat "BlindShould" o'zgaruvchisiga yoziladi, u avvalgi pastadir bilan ishlanadi. Ba'zi javoblar "ItIsLight" va/yoki "ButtonPressed" o'zgaruvchilarining skriptni tugatguncha o'zgarishini kutadi, bu faqat tugma faollashtirilgan almashtirishlar uchun, aks holda u o'z o'rnini to'g'rilashga harakat qiladi, demak ko'rlar qaytadi. asl holatiga. Bu jarayon keyinchalik osonlikcha qo'shilishi va tuzatilishi mumkin bo'lgan mustahkam va nisbatan oddiy avtomatik tizimni yaratish uchun halqa qilinadi. Puf.
5 -qadam: teginishni tugatish
Keyin men "EV3" ga 9V quvvat manbaini bir nechta yog'och dublonlar va vintlardek "batareya" sifatida ulashga qaror qildim, bu mahsulotni batareyalarga ishonchsiz qildi va batareyani har ikki kunda almashtirishimga to'sqinlik qildi.
6 -qadam: Loyihani baholash
O'ylaymanki, loyiha umuman yaxshi o'tdi, men avtomat pardalarni yig'ish uchun ishlaydigan prototipga ega bo'ldim, uni loyiha davomida topilgan barcha kerakli ma'lumotlarni olib, yakuniy versiyaga o'tkaza olaman. Men qurilmani muvaffaqiyatli kodladim va keyinchalik kod bilan hech qanday katta muammo topmadim. Men qurilmani yanada jozibali qilishni xohlardim, lekin bu yana bir bor kontseptsiyaning isboti va men ESP8266 bilan yakuniy versiyani yaratganimda uni yaxshi ko'rinishga keltirishga harakat qilaman. Men yana loyihani amalga oshirganimda, men motorni ko'rning ichida o'tiradigan qilib yarataman, chunki buni yashirish osonroq bo'ladi. Men o'rgangan eng katta saboq - bu kodni amalga oshirishdan oldin mantiqiy disk raskadrovka qilish va o'ylash, hujjatlashtirish va sinab ko'rish.
Tavsiya:
Bosqichli motorli boshqariladigan lokomotiv modeli - Bosqichli motor aylanadigan kodlovchi sifatida: 11 qadam (rasmlar bilan)
Bosqichli motorli boshqariladigan lokomotiv modeli | Bosqichli dvigatel aylanuvchi kodlovchi sifatida: Oldingi ko'rsatmalarni birida biz step motorini aylanuvchi kodlovchi sifatida ishlatishni o'rgandik. Ushbu loyihada biz Arduino mikrokontrolleridan foydalanib, lokomotiv modelini boshqarish uchun aylanadigan aylanadigan enkoderdan foydalanamiz. Shunday qilib, fu holda
Covid-19: 4 bosqichli Raspberry Pi asosidagi sensorli avtomatik qo'l yuvish tizimi
Covid-19 uchun Raspberry Pi-ga asoslangan Touch Free avtomatik qo'l yuvish tizimi: bu pir sensorlar va Raspberry pi taxtasi yordamida oddiy qo'l yuvish tizimi. Ushbu dastur asosan gigienik maqsadlar uchun mo'ljallangan. Model jamoat joylarida, kasalxonalarda, savdo markazlarida va boshqalarda joylashtirilishi mumkin
Bosqichli dvigatel bilan boshqariladigan step motor - Bosqichli motor aylanadigan kodlovchi sifatida: 11 qadam (rasmlar bilan)
Bosqichli dvigatel bilan boshqariladigan step motor | Bosqichli dvigatel aylanadigan kodlovchi sifatida: Bir nechta qadam dvigatellari yotib, biror narsa qilishni xohlayaptimi? Ushbu yo'riqnomada, Arduino mikrokontroller yordamida boshqa step motorining holatini nazorat qilish uchun qadamli motorni aylanuvchi kodlovchi sifatida ishlatamiz. Xo'sh, boshqa ko'p gapirmasdan, keling
Tovuq eshiklarini avtomatik ochuvchi: 6 qadam
Tovuqli eshiklarni avtomatik ochuvchi: tovuqli eshiklarni avtomatik ochuvchi Ushbu qo'llanmada men sizga ko'plab chakana sotuvchilardan sotib olinadigan umumiy qismlardan tovuqli eshikni avtomatik ochish moslamasini yaratish uchun zarur bo'lgan qadamlar va qismlar bilan tanishtiraman. Qo'llaniladigan qismlar va asboblar ham
Avtomatik ko'r ochuvchi: 11 qadam
Avtomatik ko'r -ko'r ochuvchi: http: //contraptionmaker.info Biz asl derazalari bo'lgan 150 yillik fermada yashaymiz. Izolyatsiyaga va yangi sidingga qaramay, bu qishda elakda yashashga o'xshaydi. Ushbu muammoni hal qilish uchun biz derazalarga plastmassa o'rnatamiz va