Բովանդակություն:
Video: Ռոբոտի համար բամպեր ստեղծելը. 4 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:48
Իմ 11 -րդ դասարանի համակարգչային ճարտարագիտության դասընթացին մեզ տրվեց առաջադրանք ՝ ստիպել մեր ռոբոտին անցնել լաբիրինթոսով: Ուղղակի, ձախ կամ աջ թեքվելու համար վերահսկելու համար մեզ խնդրեցին բամպեր պատրաստել: Այս կերպ, եթե ռոբոտը դիպչեր պատին և այն դիպչեր աջ բամպերին, ռոբոտը կշրջվեր ձախ, իսկ եթե ձախ բամպերին հարվածեր, ռոբոտը կշրջվեր աջ: Այսպիսով, ըստ էության, մեր խնդիրն էր ստեղծել մի բամպեր, որը կարող է մղվել դեպի ներս, որպեսզի շրջվի, և ես նույնպես պետք է դուրս գամ, որպեսզի այն չշարունակի միացնել օղակը: Այնուամենայնիվ, բամպերի տեղադրումը պահանջում է նաև կոդ և միացում սահմանել, որպեսզի ձեր բամպերը աշխատի: Հետևեք հետևյալ քայլերին ՝ սովորելու, թե ինչպես պատրաստել ձեր սեփական բամպերը ռոբոտի համար:
Քայլ 1: Շղթան
Բամպերները աշխատեցնելու համար դուք պետք է միացում ստեղծեք ձեր ռոբոտի վերևի հացահատիկի վրա:
(հետևեք վերևի նկարին ՝ 2 բամպեր ձեռք բերելու համար)
Անհրաժեշտ նյութեր
- 2 փոքր լուսադիոդային լույս (ապահովելու համար, որ ձեր բամպերները աշխատում են)
- 8 լար
- 2 շագանակագույն-սեւ-դեղին ռեզիստոր
- 2 կարմիր-կարմիր-շագանակագույն ռեզիստոր
Որոշ բաներ պետք է հաշվի առնել
- Vss- ն այնտեղ «հիմք» է, որովհետև այն հավասար է զրոյի, իսկ Vdd- ն հավասար է 1 -ի
- Երբ միացումն աշխատում է, արժեքը 0 է, երբ այն չի աշխատում, արժեքը 1 է
- LED- ի հարթ կողմը բացասական է, իսկ մյուս կողմը `դրական
Սխալներ սխեմաներում
- LED- ը սխալ ճանապարհ է
- LED- ը, ռեզիստորը և մետաղալարերը շարված չեն միևնույն սյունակում
- LED- ն այլևս չի աշխատում
Քայլ 2: Կոդ
Կոդ
'{$ STAMP BS2}' {$ PBASIC 2.5}
LBump PIN 11
RBump PIN 10
LMOTOR PIN 15
RMOTOR PIN 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 Variable up to 65000ish
ԱՆԵԼ
GOSUB Forfastfast 'առաջ գնացեք
ԵԹԵ IN10 = 0 ԱՊԱ 'եթե մուտքի 10 -ի երկու լարերը սեղմված են, ապա թեքվեք ձախ
GOSUB TurnLeft90
ELSEIF IN11 = 0 ԱՊԱ 'եթե մուտքի 11 -ի երկու լարերը սեղմված են, ապա թեքվեք աջ
GOSUB TurnRight90
ENDIF
ՀԱՅՏՆԵԼ
TurnRight90:
«90 աստիճան աջ թեքվելու ենթամշակման ընթացակարգ»
'**********************************************************
ԲԱՐՁՐ 1
OWԱOWՐ 0
MLoopC = 1 -ից 22 -ի համար
PULSOUT LMOTOR, LfastRev 'առաջ շարժվել մեկ զարկերակով
PULSOUT RMOTOR, Rfast 'օգտագործելով կապումներն ու հաստատունները
ԴԱՍ 20
«20mS- ը թույլ է տալիս ռոբոտին շարժվել» մինչև հաջորդ զարկերակը
ՀԱEՈՐԴ
ՎԵՐԱԴԱՐՁ
'*********************************************************
TurnLeft90:
«90 աստիճան աջ թեքվելու ենթամշակման ընթացակարգ»
'********************************************************
ԲԱՐՁՐ 0
LԱOWՐ 1
MLoopC = 1 -ից 22 -ի համար
PULSOUT LMOTOR, Lfast- ը մեկ զարկ է առաջ շարժվում
PULSOUT RMOTOR, RfastRev 'օգտագործելով կապումներն ու հաստատունները
ԴԱՅԼ 20 '20mS- ը թույլ է տալիս ռոբոտին շարժվել' մինչև հաջորդ զարկերակը
ՀԱEՈՐԴ
ՎԵՐԱԴԱՐՁ
'***********************************************************
ForwardFast:
«Ռոբոտը մեկ քառակուսի արագ առաջ տանելու ենթապայման
'**********************************************************
MLoopC = 1 -ից 70 -ի համար
PULSOUT LMOTOR, LFast PULSOUT
RMOTOR, RFast
ԴԱՍ 20
ՀԱEՈՐԴ
ՎԵՐԱԴԱՐՁ
Հակիրճ ակնարկ
Այս ծածկագրի նպատակն է ծրագրավորել ռոբոտին ձախ թեքվելիս, երբ սեղմվում են աջ լարերը (բամպերը) և թեքվում աջ, երբ ձախ լարերը (բամպեր) սեղմվում են:
Ի՞նչ է նշանակում ծածկագիրը:
Այդ հարցին պատասխանելուց առաջ դուք պետք է ծանոթ լինեք, թե ինչ են նշանակում այս ծրագրում օգտագործված որոշ կոդեր:
GOSUB - այնպես որ ենթատեքստը նշանակում է գնալ ենթածրագրի (ենթածրագիրը պետք է նշվի ձեր ծածկագրում)
ENDIF - օգտագործվում է IF հրամանի բազմաթիվ տողերի ավարտման համար
_
բացատրելով ծածկագրի հետևում եղած իմաստը…..
DOGOSUB Առաքում արագ
- Արդյո՞ք ռոբոտին ասում է ՝ առաջ գնալ, երբ այն միացված է
ԵԹԵ IN10 = 0 ՀԵՏՈ
GOSUB TurnLeft90
- ասում է, որ եթե մուտքի 10 -ի երկու լարերը (աջ բամպերը) դիպչեն, ապա ռոբոտը 90 թեքությամբ կշրջվի ձախ:
ELSEIF
IN11 = 0 ՀԵՏՈ GOSUB TurnRight90
- ասում է, որ եթե մուտքի 11 -ի երկու լարերը (ձախ բամպերը) դիպչեն, ապա ռոբոտը 90 անկյան տակ կշրջվի աջ:
TurnRight90. «90 աստիճանի աջ թեքվելու ենթամշակման ընթացակարգ»
'**********************************************************
ԲԱՐՁՐ 1
OWԱOWՐ 0
MLoopC = 1 -ից 22 -ի համար
PULSOUT LMOTOR, LfastRev
PULSOUT RMOTOR, Rfast
ԴԱՍ 20
ՀԱEՈՐԴ ՎԵՐԱԴԱՐՁ '' ***************************************** **********
- սա ենթածրագրի օրինակ է, որն օգտագործվում է, որպեսզի ստիպված չլինեք անընդհատ կրկնել նույն երկար ծածկագիրը: այս կերպ ձեր կոդը ավելի կոկիկ և ավելի համակցված տեսք ունի:
- բարձր 1 / ցածր զրո նշանակում է, որ երբ ռոբոտը թեքվում է աջ (ձախ լարերը դիպչում են) led- ը միանում է, այս կերպ դուք գիտեք, որ ամեն ինչ աշխատում է:
Քայլ 3. Բամպեր (պահանջվող նյութեր)
Բամպերը պատրաստելու համար ձեզ հարկավոր է…
- 4 Popsicle ձող հիմնական կառուցվածքի համար և 2 Popsicle ձող ՝ բամպերը ռոբոտի վրա ամրացնելու համար
- 4 կտոր սպունգ
- 4 թղթե սեղմակներ
- այսպես ալյումինե փայլաթիթեղ
- 4 մետաղալար (տախտակին միանալու համար, բացատրված է 1 -ին քայլով `սխեմայի մասին)
- տաք սոսինձ ատրճանակ և սոսինձ ձողիկներ
- դիմակավոր ժապավեն
Քայլ 4: Բամպերների հավաքում
Մեկ բամպեր պատրաստելու համար վերցրեք 2 ձողիկ և կտրեք կլորացված ծայրերը (ինչպես նշված է 1 -ին նկարում): Այս փոշոտ ձողերը հանդես կգան որպես ձեր բամպերի վերևի և ներքևի մաս: Որպեսզի լարերը դիպչեն և չշոշափվեն անմիջապես հետո, անհրաժեշտ է սպունգ: Վերցրեք սպունգ և կտրեք 2 փոքր քառակուսիներ (ինչպես վերևում ներկայացված երկրորդ նկարում): Այնուհետև, օգտագործելով տաք սոսինձ ատրճանակ, վերցրեք 1 պղպեղի փայտ և սոսնձեք 1 սպունգ քառակուսի ձախ կողմում, իսկ մեկ սպունգ ՝ աջ կողմում (որպես հղում օգտագործեք 3 -րդ նկարը): Այնուհետև վերցրեք 1 մետաղալար և փաթեթավորեք մետաղալարերի ծայրերի մի ծայրը ալյումինե փայլաթիթեղով: Տեղադրեք մետաղալարերը փոշու փայտիկի մեջտեղում և ամրացրեք այն թղթե սեղմակով: Կրկնեք այս քայլը երկրորդ մետաղալարով և փոշու փայտիկով: Վերջին սոսինձը կպցրեք առանց սպունգների, սպունգով սպունգին (ինչպես ցույց է տրված վերը նշված 3 -րդ նկարում): Այժմ ձեր առաջին բամպերն ավարտված է
Կրկնեք այս ամբողջ գործընթացը երկրորդ անգամ `երկրորդ բամպեր պատրաստելու համար:
Ռոբոտի վրա բամպերներ ավելացնելու համար վերցրեք մեկ սափրիչի փայտ և սոսնձեք այն բամպերի ներքևի մասում: Անկյունեք ձախ բամպերը դեպի ձախ կողմը, իսկ աջ բամպերը ՝ դեպի աջ կողմը: Ես բամպերները կպցրեցի դիմակավոր ժապավենով: (թիվ 4 նկարը ավարտված բամպերներն են ՝ ամրացված ռոբոտին):
Խորհուրդ ենք տալիս:
Պատրաստեք ռոբոտների բամպեր (ծածկագրով) ՝ 4 քայլ
Պատրաստեք ռոբոտների բամպեր (ծածկագրով) Նախագծի կոդավորումը կատարվել է BASIC Stamp ծրագրավորման ծրագրաշարի և Boe-Bo- ի միջոցով
Բամպեր բոտ ՝ 8 քայլ
Bumper Bot. Այս հրահանգը կսովորեցնի ձեզ, թե ինչպես ստեղծել բոմպեր ռոբոտի համար և ինչպես սկսել կոդից, որպեսզի ձեր ռոբոտը արագ աշխատի: Ձեր ունեցած ռոբոտի տեսակը կարող է տարբերվել այն բանից, թե ինչպես կարող եք բամպերները ամրացնել ձեր ռոբոտին և ինչպես սեղմել
Ռոբոտի բամպեր `6 քայլ
Ռոբոտի բամպեր. Սա այն դիզայնն է, որը ես պատրաստել եմ ռոբոտի համար `այն հայտնաբերելու համար, երբ այն բախվում է մակերեսի հետ: Հիմնական նամականիշի ծածկագիրը դեռ ընթացքի մեջ է
Ինչպես ավելացնել բամպեր SUMOBOT- ին. 9 քայլ (նկարներով)
Ինչպես ավելացնել բամպեր SUMOBOT- ին. Այն, ինչ անում է, այն է, որ կարող ես այնպես անել, որ եթե այն հարվածի ռոբոտի բամպերներից մեկին, այն հետ շրջվի և շեղվի օբյեկտից:
Փրփուր բամպեր RC18R- ի համար. 5 քայլ
RC18R- ի համար նախատեսված փրփուր բամպեր. Միակ բանը, որին ես իսկապես պակասում եմ, առջևի բամպերն է: RC մեքենայի շասսին պետք է ունենա բամպեր; հակառակ դեպքում ճակատային հարվածը կվնասի մարմինը: Այստեղ ես ձեզ ցույց կտամ, թե ինչպես պատրաստել ձեզ համար պարզ, բայց արդյունավետ բամպեր RC18R! & N