Mundarija:
2025 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2025-01-13 06:58
Men robot-bamperlarni qanday yaratishni va ularni batareyali boshqariladigan robotga joylashtirishni ko'rsatadigan ko'rsatma yaratishga qaror qildim. Birinchidan, siz simlarning to'g'ri joylarga ulanganligiga ishonch hosil qilmoqchisiz. Aks holda, sxema ishlamaydi. Ikkinchidan, siz VDD ga ulangan simlardan birini (musbat) va VSSga ulangan boshqa simlarni (manfiy) ishonch hosil qilishni xohlaysiz. Nihoyat, siz ushbu simlarning ikkalasini ham qalay plyonkaga ulashingizga ishonch hosil qilmoqchisiz. Siz qilishingiz kerak bo'lgan oxirgi qadam - qalay folga bamperlarga ulanganligini ta'minlash.
Ta'minotlar
Ko'rsatmani yaratish uchun quyidagi materiallar ishlatilgan:
- Ikki tayoq
- Qalay folga
- 3 simlar
1 -qadam: Folga tayoqchalarga joylashtirish
Ikkita tayoqni tamponning orqa tomoniga qo'ying, ikkala tayoq ham qalay folga bilan qoplangan. Ikkala tayoq ham robotning orqa tomonida qolishini ta'minlashning eng yaxshi varianti kichik yopishqoq lentani qo'llashdir.
2 -qadam: simlarni ulash
Sizning sxemangiz ishlashi uchun siz VDD va VSS dan uchta simni qalay folga bilan qoplangan tayoqlarga ulashingiz kerak.
3 -qadam: Barcha simlarni bir -biriga ulash
Nihoyat, barcha simlarni bamperga ishga tushirish uchun ularni folga bilan o'rab, folga bilan qoplangan tayoqchalarga bosing. Bosilganda simlarning oqimi robotning harakatlanishiga olib keldi.
4 -qadam: Ko'ring
Bamperlarga uchta simni bosganingizda, mashina harakatlana boshlashi kerak. Keyingi qadam, bu ishlashi uchun zarur bo'lgan kodni ko'rsatadi. Ushbu jarayonda ishlatilgan dastur "Asosiy muhr muharriri" deb nomlanadi.
5 -qadam: Robotni dasturlash kodi
Bu robot harakatlanishi uchun u quyidagi kodga ega bo'lishi kerak:
'{$ STAMP BS2}' {$ PBASIC 2.5}
LBump PIN 11
RBump PIN 10
LMOTOR PIN kodi 15
RMOTOR PIN kodi 14
RFast CON 650
LFast CON 850
RSlow CON 700
LSLOW CON 800
MStop CON 750
RFastRev CON 850
LFastRev CON 650
RSlowRev CON 800
LSlowRev CON 700
MLoopC VAR Word 'For.. Next Taxminan 65000 gacha o'zgaruvchan
QILING
GOSUB Forwardfast oldinga boring
IF IN10 = 0 SONRA 'agar 10 -kirishda ikkita sim bosilsa, chapga buriling
GOSUB TurnLeft90
ELSEIF IN11 = 0 SONRA 'Agar 11 -kirishda ikkita sim bosilsa, o'ngga buriling
GOSUB TurnRight 90
ENDIF
Loop
TurnRight90:
90 daraja o'ngga burilish uchun quyi tartib
'**********************************************************
YUQORI 1
YO'Q 0
MLoopC uchun = 1 dan 22 gacha
PULSOUT LMOTOR, LfastRev bir zarba oldinga siljiydi
PULSOUT RMOTOR, Rfast pin va doimiylardan foydalanadi
Pauza 20
NEXT pulsidan oldin "20mS robot harakatlanishiga imkon beradi"
KEYINGI
Qaytish
'*********************************************************
TurnLeft90:
90 daraja o'ngga burilish uchun quyi tartib
'********************************************************
YUQORI 0
YO'Q 1
MLoopC uchun = 1 dan 22 gacha
PULSOUT LMOTOR, Lfast bir puls oldinga siljiydi
PULSOUT RMOTOR, RfastRev pin va doimiylardan foydalanadi
PAUSE 20 '20mS robotning NEXT pulsidan oldin harakatlanishiga imkon beradi
KEYINGI
Qaytish
'***********************************************************
ForwardFast:
Robotni bir kvadrat tez oldinga siljitishning quyi tartibi
'**********************************************************
MLoopC uchun = 1 dan 70 gacha
LMOTOR PULSOUT, LFast 'PULSOUT
RMOTOR = RFast
Pauza 20
KEYINGI
Qaytish