Mundarija:
- 1 -qadam: uskunani loyihalash
- 2 -qadam: to'g'ri motorlarni tanlash
- 3 -qadam: bazani qurish
- 4 -qadam: uskunani yig'ish
- 5 -qadam: elektronika
- 6 -qadam: dasturiy ta'minot va ketma -ket interfeys
- 7 -qadam: Xulosa
Video: Q -Bot - ochiq manbali Rubik kublarini hal qiluvchi: 7 qadam (rasmlar bilan)
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:23
Tasavvur qiling -a, sizda Rubik kupi bor, siz 80 -yillardagi hamma jumboqlarni bilasiz, lekin hech kim hal qilishni bilmaydi va siz uni asl namunasiga qaytarishni xohlaysiz. Yaxshiyamki, bugungi kunda hal qilish bo'yicha ko'rsatmalarni topish juda oson. Shunday qilib, Internetga o'ting, videoni ko'ring va sizga qanday qilib yon tomonga burilish kerakligini bilib oling, bu sizga quvonch keltiradi. Buni bir necha marta qilganingizdan so'ng, nimadir etishmayotganini tushunasiz. Ichkarida to'ldirish mumkin bo'lmagan teshik. Sizning ichingizdagi muhandislar/ishlab chiqaruvchilar/xakerlar shunchaki ajoyib narsani shunchalik sodda tarzda hal qilishdan qoniqish hosil qila olmaydilar. Agar sizda hamma narsani hal qiladigan mashina bo'lsa, shoirona bo'larmidi? Agar siz biror narsa qurgan bo'lsangiz, barcha do'stlaringizni hayratda qoldirgan bo'larmidingiz? Sizga kafolat bera olamanki, bu sizning yaratganingizni ko'rish va Rubik kubigini hal qilishdan ko'ra yaxshiroq bo'lmaydi. Shunday qilib, keling va menga Q-Botni yaratish bo'yicha ajoyib sayohatga qo'shiling, bu Rubik kubiklarini hal qiluvchi ochiq manba, albatta, u hech qanday jahon rekordini buzmaydi, balki sizga bir necha soatlik quvonch bag'ishlaydi (albatta, barcha umidsizliklarni boshdan kechirganingizdan so'ng). qurilish jarayonida).
1 -qadam: uskunani loyihalash
To'liq hal qiluvchi Catia -da SAPR bilan ishlab chiqilgan. Shunday qilib, dizayndagi xatolarning aksariyati jismoniy komponentlarni ishlab chiqarishdan oldin topilishi va tuzatilishi mumkin edi. Yechuvchilarning ko'pchiligi prusa MK3 printer yordamida PLAda 3D bosilgan. Bundan tashqari, quyidagi uskunalar ishlatilgan:
- 8 dona 8 mm alyuminiy novda (uzunligi 10 sm)
- 8 chiziqli rulman (LM8UU)
- GT2 6 mm vaqt kamarining 2 m dan bir oz pastroq + ba'zi kasnaklar
- 6 NEMA 17 bipolyar qadamli motor
- 6 Polulu 4988 step haydovchi
- Arudino Mega loyihani boshqaruvchi sifatida
- 12 V 3A quvvat manbai
- Arduino -ni xavfsiz quvvatlantirish uchun pastga aylantiruvchi konvertor
- ba'zi vintlardek va ulagichlar
- taglik uchun bir nechta kontrplak
Uskuna tavsifi
Bu bo'limda Q-Bot qanday ishlashini va yuqorida aytilgan komponentlar qayerda ishlatilishini qisqacha yoritib beradi. Quyida siz to'liq yig'ilgan SAPR modellining tasvirini ko'rishingiz mumkin.
Q-bot to'rtta dvigatelni to'g'ridan-to'g'ri Rubik kubigiga 3D bosilgan tutqichlar bilan bog'lab ishlaydi. Bu shuni anglatadiki, chap, o'ng, old va orqa to'g'ridan -to'g'ri burilishi mumkin. Agar yuqori yoki pastki tomonni burish kerak bo'lsa, butun kubni aylantirish kerak, shuning uchun ikkita dvigatelni boshqa joyga ko'chirish kerak. Bu tutqichli dvigatellarning har birini boshqa pog'onali dvigatel boshqaradigan chanaga va chiziqli temir yo'l bo'ylab vaqt kamariga ulash orqali amalga oshiriladi. Rey tizimi chanadagi bo'shliqlarga o'rnatilgan ikkita 8 ta bilyali rulmanlardan iborat bo'lib, butun chana 8 mmli ikkita alyuminiy valda yuradi. Quyida siz hal qilgichning bitta o'qining pastki yig'ilishini ko'rishingiz mumkin.
X va Y o'qlari asosan bir xil, ular faqat kamarning o'rnatish nuqtasi balandligida farq qiladi, shuning uchun to'liq yig'ilganda ikkita kamar o'rtasida to'qnashuvlar bo'lmaydi.
2 -qadam: to'g'ri motorlarni tanlash
Albatta, bu erda to'g'ri dvigatellarni tanlash juda muhimdir. Asosiy qismi shundaki, ular Rubik kubini aylantira oladigan darajada kuchli bo'lishi kerak. Bu erda yagona muammo shundaki, Rubik kublarini ishlab chiqaruvchilarning hech biri tork reytingini bermaydi. Shunday qilib, men improvizatsiya qilishim va o'z o'lchovlarimni qilishim kerak edi.
Odatda burilish momenti r masofadagi aylanish nuqtasi holatiga perpendikulyar yo'naltirilgan kuch bilan belgilanadi:
Shunday qilib, agar men qandaydir tarzda kubga qo'llaniladigan kuchni o'lchay olsam, torkni hisoblay olaman. Men aynan shunday qildim. Men kubni tokchaga yopishtirdim, faqat bir tomoni harakatlana oladigan qilib. Kubni ip bilan bog'lab qo'yishdi va pastki qismiga sumka yopishdi. Endi faqat kub aylanmaguncha sumkadagi og'irlikni asta -sekin oshirish kerak edi. To'g'ri vazn yo'qligi uchun men kartoshkadan foydalandim va keyin o'lchadim. Eng ilmiy usul emas, lekin men minimal momentni topishga harakat qilmaganim uchun bu etarli.
Men uch marta o'lchov qildim va xavfsiz bo'lish uchun eng yuqori qiymatni oldim. Olingan vazn 0,52 kg ni tashkil etdi. Endi Sir Isaak Nyuton tufayli biz bilamizki, kuch massa tezlanish tezligiga teng.
Bu holda tezlanish - bu tortishish tezlanishi. Shunday qilib, kerakli moment beriladi
Rubik kubining diagonalining yarmini o'z ichiga olgan barcha qiymatlarni ulash, nihoyat, kerakli momentni ko'rsatadi.
Men 0,4 Nm ga qadar qo'llanadigan qadamli motorlar bilan bordim, bu, ehtimol, ortiqcha, lekin men xavfsiz bo'lishni xohlardim.
3 -qadam: bazani qurish
Baza juda oddiy yog'och qutidan iborat bo'lib, unda barcha kerakli elektronika mavjud. U mashinani yoqish va o'chirish uchun vilka, uning yoqilganligini ko'rsatuvchi LED, USB B porti va quvvat manbai uchun rozetkaga ega. U 15 mm kontrplak, vintlardek va ozgina elim yordamida qurilgan.
4 -qadam: uskunani yig'ish
Endi barcha kerakli qismlar, shu jumladan taglik bilan, Q-bot yig'ilishga tayyor edi. Maxsus qismlar 3D bosilgan va kerak bo'lganda sozlangan. Siz barcha kitoblarni oxirida SAPR fayllarini yuklab olishingiz mumkin. O'rnatish 3D bosilgan barcha qismlarni sotib olingan qismlarga o'rnatishni, motor kabellarini uzaytirishni va barcha qismlarni taglikka vidalashni o'z ichiga oladi. Bundan tashqari, men motor kabellari atrofiga qisqichlar qo'ydim, ular biroz chiroyli ko'rinardi va JST ulagichlarini uchlariga qo'shib qo'ydim.
Men qurgan bazaning ahamiyatini ta'kidlash uchun, yig'ilish qanday ko'rinishga ega bo'lganidan oldin va keyin. Hamma narsani biroz tuzatish katta farq qilishi mumkin.
5 -qadam: elektronika
Elektronikaga kelsak, loyiha juda oddiy. Asosiy 12V quvvat manbai mavjud, u 3A gacha bo'lgan tokni uzatishi mumkin, bu dvigatellarni quvvatlaydi. Arduino-ni xavfsiz quvvatlantirish uchun pastga tushuvchi modul ishlatiladi va Arduino uchun maxsus qalqon ishlab chiqarilgan bo'lib, u barcha step motorli haydovchilarni o'z ichiga oladi. Haydovchilar dvigatellarni boshqarishni ancha osonlashtiradi. Bosqichli dvigatelni boshqarish muayyan boshqaruv ketma -ketligini talab qiladi, lekin dvigatel drayverlari yordamida biz faqat dvigatel aylanadigan har bir qadam uchun yuqori impuls hosil qilishimiz kerak. Bundan tashqari, dvigatellarni ulashni osonlashtirish uchun qalqonga ba'zi jst ulagichlari qo'shilgan. Arduino qalqoni perfboard taxtasida mustahkam qurilgan va hamma narsa jlc pcb tomonidan ishlab chiqarilganidek ishlayotganiga ishonch hosil qilgan.
Bu erda prototip va ishlab chiqarilgan pcb -dan oldin va keyin.
6 -qadam: dasturiy ta'minot va ketma -ket interfeys
Q-Bot ikki qismga bo'lingan. Bir tomondan, Arduino tomonidan boshqariladigan uskuna bor, boshqa tomondan, hozirgi chalkashliklarga asoslanib, kubni hal qilish yo'lini hisoblaydigan dasturiy ta'minot mavjud. Arduino -da ishlaydigan dasturiy ta'minotni o'zim yozganman, lekin bu qo'llanmani qisqartirish uchun men bu erda bu haqda batafsil ma'lumot bermayman. Agar siz uni ko'rib chiqishni va u bilan o'ynashni xohlasangiz, bu hujjatning oxirida mening git omboriga havola ko'rsatiladi. Yechimni hisoblaydigan dastur oyna mashinasida ishlaydi va uni mening hamkasbim yozgan, yana uning manba kodiga havolalarni kitobning oxirida topish mumkin. Ikki qism oddiy ketma -ket interfeys yordamida muloqot qiladi. U echimni Kociembaning ikki fazali algoritmi asosida hisoblab chiqadi. Yechish dasturi ikki baytdan iborat buyruqni echuvchiga yuboradi va uning "ACK" ni qaytarishini kutadi. Shunday qilib, oddiy ketma -ket monitor yordamida hal qiluvchi sinovdan o'tkazilishi va tuzatilishi mumkin. To'liq ko'rsatmalar to'plamini quyida topishingiz mumkin.
Har bir dvigatelni bir qadamga burish buyruqlari muammoning echimidir, bunda ba'zi qadamchilar tasodifan yoqilganda kichik sakrashlarni bajarishadi. Buning o'rnini bosish uchun dvigatellarni hal qilish jarayonidan oldin dastlabki holatiga moslashtirish mumkin.
7 -qadam: Xulosa
Sakkiz oylik rivojlanishdan so'ng, qasam ichish, klaviaturani urish va Q-botni raqsga tushirish nihoyat birinchi bo'lib Rubik kubigini muvaffaqiyatli hal qildi. Kubning chalkashliklarini qo'lda boshqaruv dasturiga kiritish kerak edi, lekin hammasi yaxshi ishladi.
Bir necha hafta o'tgach, men veb -kamera uchun moslama qo'shdim va kollejim dasturni kubni olingan rasmlardan avtomatik o'qish uchun moslashtirdi. Biroq, bu hali yaxshi sinovdan o'tkazilmagan va hali ham ba'zi yaxshilanishlarni talab qiladi.
Agar bu sizning qiziqishingizni qo'zg'atgan bo'lsa, ikkilanmang va Q-botning o'z versiyasini yaratishni boshlang. Avvaliga bu juda qo'rqinchli bo'lib tuyulishi mumkin, lekin bu harakatga arziydi va agar men buni qila olsam, siz ham qila olasiz.
Resurslar:
Dasturiy ta'minotning manba kodi:
github.com/Axodarap/QBot_firmware
Dasturiy ta'minotning manba kodi
github.com/waldhube16/Qbot_SW
Tavsiya:
Raspberry Pi va OpenCV-dan foydalangan holda, Rubik kubikining ko'zlari yopiq hal qiluvchi: 4 qadam
Raspberry Pi va OpenCV-dan foydalangan holda Rubik kubikining ko'zlari yopiladigan hal qiluvchi: bu Rubik kubik asbobining ko'zlarini bog'lab hal qilish uchun qilingan 2-chi versiyasidir. Birinchi versiya javascript tomonidan ishlab chiqilgan, siz RubiksCubeBlindfolded1 loyihasini ko'rishingiz mumkin, avvalgisidan farqli o'laroq, bu versiya OpenCV kutubxonasidan foydalanib ranglarni aniqlash va
Kubik hal qiluvchi Rubiks uchun Arduino Mega Step qalqoni: 4 qadam
Rubiks kublarini hal qilish uchun Arduino Mega Stepper Shield: Bir muncha vaqt oldin men 3x3 Rubik kubiklarini avtomatik ravishda echadigan mashinada ishlaganman. Bu erda mening ko'rsatmalarni ko'rishingiz mumkin. Loyihada polulu stepperlari oltita dvigatelni haydash uchun ishlatilgan. Ikkalasini bir -biriga ulash uchun
Trafikni hal qiluvchi: 7 qadam
Traffic Solver: Traffic Solver qurilish zonasida bitta bo'lakda harakatni boshqarishni avtomatlashtiradi. Bu tizim hech qanday baxtsiz hodisalarsiz ishlashi uchun har tomondan ikkita birlik bo'lishi kerak. Ikkala blokda ham dvigatel va aylanadigan ushlab turuvchi qurilma bo'ladi
Kam manbali sozlamalar uchun er osti suvlari sathi o'lchovi: 4 qadam (rasmlar bilan)
Resurslarning pastligi uchun er osti suvlari sathini o'lchash zondlari: Kirish Bizga Oxfamdan Afg'oniston maktab o'quvchilari yaqin quduqlardagi er osti suvlari sathini kuzatishning oddiy usulini ishlab chiqish so'rovi keldi. Bu sahifani doktor Amir Haydariy dari tiliga tarjima qilgan va tarjimani
ARS - Rubik hal qiluvchi Arduino: 13 qadam (rasmlar bilan)
ARS - Arduino Rubik Solver: ARS - bu Rubik kubini yechish uchun to'liq tizim: ha, kubni hal qiladigan boshqa robot! ARS - bu uch yillik bosma qismlar va lazerli kesilgan tuzilmalar bilan yaratilgan maktab loyihasi: Arduino to'g'ri yaratilgan ketma -ketlikni oladi uy qurgan divan tomonidan