Mundarija:
- Ta'minotlar
- 1 -qadam: 1 -qadam: O'chirish sxemasini yaratish
- 2-qadam: 2-qadam: Boe-bot uchun dasturlash
- 3 -qadam: 3 -qadam: simli tamponlar uchun alyumin folga va popsikl tayoqchalarini ishlatish
- 4 -qadam: 4 -qadam: Qolgan bamperlarni yig'ish
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:25
Bu ko'rsatma o'quvchilarga Boe-botda to'siqlarni aniqlashda labirint bo'ylab harakatlana oladigan bamperlarni qanday yaratish va kodlashni o'rgatadi. Loyihani kodlash BASIC Stamp dasturlash dasturi va Boe-Bot robotidan foydalangan holda amalga oshirilgan va bu bamperlarni yaratishda muvaffaqiyat qozonish uchun sxemalar va dasturlash bo'yicha asosiy tushunchalar talab qilinadi.
Ta'minotlar
Bunday bamperlarni yaratish uchun sizga kerak bo'ladi:
- Boe-Bot robot
- BASIC Stamp dasturlash dasturi
- Popsicle tayoqchalari
- Gubka
- alyumin folga
- Qog'oz qisqichlari
- 8 ta yaxshi uzunlikdagi simlar (kamida 6 dyuym)
- 2 ta LED chiroq
-2 ta jigarrang-qora-sariq rezistorlar
-2 qizil-qizil-jigarrang rezistor
- lenta va issiq elim (yoki shunga o'xshash yopishtiruvchi)
- Boe-Bot uchun batareyalar
1 -qadam: 1 -qadam: O'chirish sxemasini yaratish
Non panelini yo'naltirish va ishlatish uchun sxemani yaratish uchun yuqoridagi jadvalga amal qiling. Oxir -oqibat, sizning non paneli chapdagi rasmga o'xshash bo'lishi kerak.
Eslash kerak bo'lgan narsalar:
- LED to'g'ri holatidadir ekanligiga ishonch hosil qiling. Bu shuni anglatadiki, LEDning tekis oyog'i salbiy tomonda, ikkinchi oyog'i esa ijobiy tomonda bo'lishi kerak.
- Vss bu non panelida zamin bo'lib xizmat qiladi, demak u nolga teng, Vdd esa 1 ga teng.
- Ishlayotgan sxemaning qiymati 0. O'chirilgan sxemaning qiymati 1 ga teng.
2-qadam: 2-qadam: Boe-bot uchun dasturlash
Quyidagi kod robotni chap va o'ng tomonga 90 gradusga burilishni dasturlaydi, bamperlarning qaysi biri bosilganiga qarab (keyingi bosqichda bamper yaratish haqida batafsilroq). Bu kod o'ng bamper simlari bosilganda robot chapga, chap bamper simlari bosilganda esa o'ngga burilishini ta'minlaydi.
Ba'zi asosiy til tarjimalari:
- GOSUB = subroutine (kodni talab qilish kerak)
- If.. Else = bajarilishi kerak bo'lgan kodlar guruhini bildiradi, agar shartlar to'g'ri bo'lsa va shartlar noto'g'ri bo'lsa ko'rsatmalarni bajaradi.
Kod:
'{$ STAMP BS2}
"{$ PBASIC 2.5}" ***************************************** ******************************* 'Qayta ishga tushirish kodini tiklash' Robotni to'xtatish va ishga tushirish uchun reset tugmasidan foydalaning '** ************************************************ *********************** temp VAR Bayt "RunStatus DATA $ 00" vaqtinchalik saqlanadigan o'zgaruvchisi ROM READ -da saqlanadi RunStatus, temp "ROM temp dan o'zgaruvchini o'qing = ~ temp '0 qiymatini 1 ga yoki 1 ga 0 ga aylantiring RunStatus, temp' O'zgaruvchini ROMga qaytarib yozing IF (temp> 0) THEN END 'qiymat 1 bo'lsa, tekshiring, agar shunday bo'lsa, dasturni PAUSE 3000' to'xtatib turing "Reset" tugmasini bosganingizda qo'lingizni siljiting ************************************* ********************************** '************* ************************************************ *********** 'PIN VA SABITLAR' dasturlashni soddalashtirish uchun ishlatiladi '*************************** ***************************************** LMOTOR PIN 15 RMOTOR PIN 14 RFast CON 650 LFast CON 850 RSlow CON 700 LSlow CON 780 MStop CON 750 RFastRev CON 8 50 LFastRev CON 650 RSlowRev CON 800 LSlowRev CON 700 TurnLeft90 CON 90 TurnRight90 CON 90 '******************************* ************************************** '********* ************************************************ ************** 'O'zgaruvchilar' dasturlashni soddalashtirish uchun ishlatiladi '************************** ******************************************** MLoopC VAR Word '.. Keyingi o'zgaruvchilar 65000 gacha. Hisob VAR bayt burilish ************************************ '----------- -------------------------------------------------- ------------- "Asosiy kod" --------------------------------- ----------------------------------------- IN10 = 0 BOSHQA QILING 'Agar 10-pinli sim yoqilgan, keyin chapga burilgan --------------------------------- ------------------------------------- '** ASOSI KODINING SONI ****** ********************************************* '- -------------------------------------------------- --------------------- **************************** ****************************************** '** Subtutinlar / Sub-protsedura / Usullar ****************************** '*********** ************************************************ *********** '************************************ ********************************** '*************** ************************************************ ******* RightTurn90: "90 daraja o'ngga burilishning pastki tartibi" ******************************** ******** Lfast "bir puls oldinga siljiydi, RfastRev" pin va doimiylardan foydalanadi PAUSE 20 '20mS robotga NEXT puls RETURN oldidan NEXT harakat qilishiga imkon beradi ******************** ************************************************ * LeftTurn90: "90 daraja o'ngga burilish uchun kichik protsedura" ** ************************************************ ******************* YUQORI 0 LOW 1 MLoopC uchun = 1 dan 22 gacha PULSOUT LMOTOR, LfastRev 'bir puls oldinga siljish RMOTOR, Rfast' pinlari va doimiylari yordamida PAUSE 20 ' 20mS robotga NEXT pulsni qaytishidan oldin NEXT harakat qilishiga imkon beradi ************************************ ******************************************************************************************************************************************************** ************************************************ ***************** MLoopC uchun = 1 dan 55 gacha PULSOUT LMOTOR, LFast PULSOUT RMOTOR, RFast PAUSE 20 NEXT RETURN '************** ************************************************ ****** ReverseTurnLeft: "O'ng bamperga urilganda robotni teskari burish va chapga burish uchun kichik protsedura" *************************** ************************************************************************************************************************************************************************************************************ LMOTOR, LSlowRev PULSOUT RMOTOR, RFastRev PAUSE 20 NEXT RETURN '************************************ ******************************* ReverseTurnRight: "Subproce" chap bamperga urilganda robotni teskari aylantirishga va o'ngga burishga jur'at et "********************************** ****************************************************************************************************************************************************************************************************************************************************************************************************************************************** 20 NEXT QAYTISH ****************************************** ************************* "SUBROUTINLARNING OXIRI" ******************** ************************************************ *
3 -qadam: 3 -qadam: simli tamponlar uchun alyumin folga va popsikl tayoqchalarini ishlatish
Bu qadamni boshlashdan oldin, non panelidagi 4 ta simni (1 -bosqichga qarang) juftlarga bo'linganligiga ishonch hosil qiling, bunda har bir juft o'ng yoki chap bamperni boshqaradi. LEDlar bu holatda kodning o'ng va chap bamperlarda samarali ekanligini tekshirish uchun ishlaydi. Popsicle tayoqchalarida har bir juftlikdan bitta sim Popsicle tayog'ining bir uchini taqsimlaydi (bu shuni anglatadiki, xuddi shu juftlik simlari bir xil bamperda bo'lolmaydi).
4 ta kichik to'rtburchaklar folga kesib oling va bittasini ishlating, simni ikkita uchli tayoqchaning har uchiga o'rang. Bu Popsicle tayoqchasining o'tkazuvchanlik maydonini oshiradi va tayoqlar tegishi uchun katta sirt maydonini beradi.
Folga va simlarning Popsicle tayoqchalariga yopishib qolmasligi uchun materiallarni bir-biriga yopishtirish uchun 1-2 ta qog'oz qisqichidan foydalaning. Qog'oz qisqichlari, shuningdek, Popsicle tayoqchalariga tashqi aralashuvsiz tegishi uchun ko'proq qulaylik yaratadi. Qog'oz qisqichini oddiy qog'ozlar to'plamida bo'lgani kabi Popsicle tayog'i ustiga siljiting. Buni folga bo'laklarining to'rttasi va ikkita Popsicle tayog'ining har bir uchi uchun takrorlang.
4 -qadam: 4 -qadam: Qolgan bamperlarni yig'ish
Alyuminiy folga va qog'oz qisqichlari simlarni har bir tayoqchaga mahkamlay olgandan so'ng, ikkita kichkina gubkani kesib oling va har bir kubni tayoqlar orasiga yopishtiring (har bir tayoqning uchida, issiq yopishtiruvchi yopishtiruvchi materialga ta'sir qilmasligi uchun). gubkalar, robot devorga har urilganda, bamperlar tegib turishini ta'minlaydi.
Ixtiyoriy: Qo'shimcha Popsicle tayog'ini yarmini kesib oling va uni tashqi Popsicle tayoq bamperining uchiga burchak bilan yopishtiring. Bu bamperning devorga urilishi va burilishining ta'sirini kuchaytiradi.
Bamperlar Bot-botning oldida egilib qolishi uchun simlarning egilishini eslang.
Tavsiya:
TinkerCad kod blokida kosmik stansiya yarating -- Oson qo'llanma: 7 qadam (rasmlar bilan)
TinkerCad -da kosmik stantsiya yarating Codeblock || Oson qo'llanma: Garchi kosmosda yashash haqidagi tasavvur ilmiy fantastika bo'lib tuyulsa -da, siz buni o'qiyotganingizda, Xalqaro kosmik stansiya Yerni sekundiga besh mil tezlikda aylanib, Yerni bir marta aylanib chiqadi. har 90 daqiqada. Ushbu loyihada siz o'rganasiz
ML bilan Pi axlat tasniflagichini yarating!: 8 qadam (rasmlar bilan)
ML bilan Pi axlat tasniflagichini yarating: "Qayerga ketadi?!" Deb nomlangan, axlatni tasniflagich loyihasi narsalarni tezroq va ishonchli tashlab yuborish uchun mo'ljallangan. Bu loyihada Machine Learning (ML) modeli qo'llaniladi. Lobada o'qitilgan, yangi boshlanuvchilar uchun qulay (kod yo'q!)
Imo -ishora bilan boshqariladigan robot yarating: 4 qadam (rasmlar bilan)
Imo -ishora bilan boshqariladigan robot yarating: Ushbu ko'rsatmada biz 3D imo -ishoralar yordamida boshqariladigan Arcbotics Sparki robotini quramiz. Bu loyihaning yoqimli xususiyati shundaki, robotni boshqarish uchun smartfon yoki qo'lqop kabi qo'shimcha qurilmaga ehtiyoj yo'q. Qo'lingizni birinchi ustunga o'tkazing
Juda kichik robot yarating: Dunyoning eng kichik g'ildirakli robotini ushlagich bilan yasang: 9 qadam (rasmlar bilan)
Juda kichik robot yarating: Dunyoning eng kichik g'ildirakli robotini ushlagich bilan yasang. 1/20 kubik dyuymli robotni ushlagich bilan yarating, u kichik narsalarni olib, harakatlantira oladi. U Picaxe mikrokontroller tomonidan boshqariladi. Menimcha, bu dunyodagi eng kichik g'ildirakli tutqichli robot bo'lishi mumkin. Bu shubhasiz bo'ladi
Arduino bilan ishlaydigan gapiradigan robot boshini yarating!: 26 qadam (rasmlar bilan)
Arduino bilan ishlaydigan gaplashadigan robot boshini yarating!: Bu robot boshi dastlab mening jismoniy hisoblash sinfim uchun yil oxiri loyihasi sifatida qurilgan edi, lekin yozda u " o'rgangan " qanday gapirish kerak. Bosh ikkita Freeduino, 3 TLC5940NT chiplari va Adafruit Industries tomonidan quvvatlanadi