Satura rādītājs:
- Piegādes
- 1. darbība: 1. darbība: ķēdes izveide
- 2. darbība: 2. darbība: programmēšana Boe-bot
- 3. solis: 3. solis: alumīnija folijas un popsicle nūju izmantošana stiepļu buferiem
- 4. darbība: 4. darbība: pārējo buferu salikšana
Video: Izgatavojiet robotu buferus (ar kodu): 4 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:56
Šī pamācība lasītājus iepazīstinās ar to, kā izveidot un kodēt buferus Boe-bot, kas spēs pārvietoties labirintā, vienlaikus atklājot šķēršļus. Projekta kodēšana tika veikta, izmantojot BASIC Stamp programmēšanas programmatūru un Boe-Bot robotu, un, lai veiksmīgi izveidotu šos buferus, ir nepieciešama pamata izpratne par shēmām un programmēšanu.
Piegādes
Lai izveidotu šos buferus, jums būs nepieciešams:
- Boe-Bot robots
- BASIC Zīmogu programmēšanas programmatūra
- Popsicle nūjas
- Sūklis
- Alumīnija folijs
- Saspraudes
- 8 pienācīgi gari vadi (vismaz 6 collas)
- 2 LED gaismas
-2 brūni melni dzelteni rezistori
-2 sarkani-sarkanbrūni rezistori
- lente un karstā līme (vai līdzīga līme)
- Baterijas jūsu Boe-Bot
1. darbība: 1. darbība: ķēdes izveide
Izpildiet iepriekš redzamo maizes dēļa diagrammu, lai izveidotu ķēdi, lai orientētu un darbinātu savu rīvdēli. Beigās jūsu maizes dēlim vajadzētu izskatīties līdzīgi attēlam kreisajā pusē.
Lietas, kas jāatceras:
- Pārliecinieties, vai gaismas diode atrodas pareizajā stāvoklī. Tas nozīmē, ka gaismas diodes plakanajai kājai jāatrodas negatīvajā pusē, bet otrai - pozitīvajai pusei.
- Vss kalpo par pamatu šajā maizes dēļā, kas nozīmē, ka tā vērtība ir nulle, bet Vdd - 1.
- Darbojošās ķēdes vērtība ir 0. Izslēgtai ķēdei ir vērtība 1.
2. darbība: 2. darbība: programmēšana Boe-bot
Šis kods programmē robotu pagriezties pa kreisi un pa labi par 90 grādiem atkarībā no tā, kurš buferis ir nospiests (sīkāka informācija par bufera izveidi nākamajā darbībā). Šis kods nodrošina, ka robots pagriezīsies pa kreisi, nospiežot labos bufera vadus, un pagriezīsies pa labi, nospiežot kreisā bufera vadus.
Daži pamata valodas tulkojumi:
- GOSUB = apakšprogramma (kodam jāseko pieprasījumam)
- Ja.. Else = norāda koda grupu, kas jāizpilda, ja nosacījumi ir patiesi, un izpilda norādījumus, ja nosacījumi ir nepatiesi
Kods:
'{$ STAMP BS2}
'{$ PBASIC 2.5}' ****************************************** ******************************** 'Atiestatīt restartēšanas kodu' Izmantojiet atiestatīšanas pogu, lai apturētu un iedarbinātu robotu '** ************************************************* *********************** temp VAR baits 'pagaidu veikals RunStatus DATA $ 00' mainīgais, kas saglabāts ROM READ RunStatus, temp 'Nolasiet mainīgo no ROM temp = ~ temp 'apgrieziet vērtību no 0 līdz 1 vai no 1 līdz 0 WRITE RunStatus, temp' Ierakstiet mainīgo atpakaļ uz ROM IF (temp> 0) THEN END 'Pārbaudiet, vai vērtība ir 1', ja tā, BEIDZIET programmu PAUSE 3000 'Pause to allow jūs pakustiniet savu roku, nospiežot atiestatīšanas pogu *************************************** *********************************** '' ************* ************************************************* *********** 'Pins AND Constants' Izmanto, lai vienkāršotu programmēšanu '***************************** ******************************************** 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 '******************************** ************************************** '' ********* ************************************************* ************** 'Mainīgie' Izmanto, lai vienkāršotu programmēšanu '**************************** ******************************************** MLoopC VAR vārds 'Par.. Nākamais mainīgais līdz 65000 sānu Skaitītājs VAR baitu pagrieziensAngle VAR Word '*********************************** ************************************* '' ----------- -------------------------------------------------- ------------- 'Galvenais kods' --------------------------------- ----------------------------------------- DARIET JA IN10 = 0 THEN 'Ja vads 10. tapā ir ieslēgts, tad grieziet pa kreisi --------------------------------- ------------------------------------ '** GALVENĀ KODA BEIGAS ****** ********************************************** ''- -------------------------------------------------- --------------------- '**************************** ****************************************** '' ** Apakšrutīnas / Apakšprocedūra / Metodes ******************************* '' *********** ************************************************* *********** '************************************* ********************************* '' *************** ************************************************* ******* RightTurn90: 'Apakšprocedūra 90 grādu pagriešanai' ********************************* ************************************* HIGH 1 LOW 0 MLoopC = 1 līdz 22 PULSOUT LMOTOR, Lfast 'virzās uz priekšu vienu impulsu PULSOUT RMOTOR, RfastRev', izmantojot tapas un konstantes PAUSE 20 '20mS ļauj robotam pārvietoties NEXT' pirms NEXT pulse RETURN '******************** ************************************************* * LeftTurn90: “Apakšprocedūra 90 grādu pagriešanai pa labi” ** ************************************************* ******************* HIGH 0 LOW 1 MLoopC = 1 līdz 22 PULSOUT LMOTOR, LfastRev 'virzās uz priekšu vienu impulsu PULSOUT RMOTOR, Rfast', izmantojot tapas un konstantes PAUSE 20 ' 20mS ļauj robotam pārvietoties NEXT 'pirms NEXT pulse RETURN' ************************************* ********************************* ForwardFast: 'Apakšprocedūra, lai robotu ātri pārvietotu uz priekšu par vienu kvadrātu' **** ************************************************* ***************** FOR MLoopC = 1 līdz 55 PULSOUT LMOTOR, LFast PULSOUT RMOTOR, RFast PAUSE 20 NEXT RETURN '************** ************************************************* ****** ReverseTurnLeft: 'Apakšprocedūra, lai apgrieztu un pagrieztu robotu pa kreisi, kad tiek trāpīts labais buferis' *************************** ****************************************** MLoopC = 1 līdz 55 PULSOUT LMOTOR, LSlowRev PULSOUT RMOTOR, RFastRev PAUSE 20 NEXT RETURN '************************************* ********************************* ReverseTurnRight: 'Apakšprocess Dure, lai atgrieztos un pagrieztu robotu pa labi, kad trāpīts kreisais buferis '*********************************** ********************************** MLoopC = 1 līdz 55 PULSOUT LMOTOR, LFastRev PULSOUT RMOTOR, RSlowRev PAUSE 20 NĀKAMA ATGRIEŠANA '******************************************** ************************ 'SUBROUTINES BEIGAS' ******************** ************************************************* *
3. solis: 3. solis: alumīnija folijas un popsicle nūju izmantošana stiepļu buferiem
Pirms sākat šo darbību, pārliecinieties, ka 4 vadi no maizes dēļa (skatiet 1. darbību) ir sadalīti pāros, un katrs pāris kontrolē labo vai kreiso buferi. Gaismas diodes šajā situācijā darbojas, lai pārbaudītu, vai kods ir efektīvs labajā un kreisajā buferī. Uz Popsicle nūjām viens vads no katra pāra dala vienu Popsicle stick galu (tas nozīmē, ka viena pāra vadi NEVAR būt vienā buferī).
Izgrieziet 4 mazus taisnstūrus no folijas un ar vienu aptiniet vadu ap katru Popsicle nūju galu. Tas palielina Popsicle nūjas vadītspējas virsmas laukumu, kā arī nodrošina lielāku virsmas laukumu, kur nūjām pieskarties.
Lai folija un stieples netiktu pielīmētas pie Popsicle nūjām, izmantojiet 1-2 saspraudes, lai materiālus turētu kopā. Saspraudes arī nodrošina lielāku pieejamību, lai Popsicle nūjas varētu pieskarties bez lieliem ārējiem traucējumiem. Pārvelciet saspraudi virs Popsicle nūjas tāpat kā ar parastu papīra kaudzi. Atkārtojiet to visiem četriem folijas gabaliem un abiem Popsicle nūju galiem.
4. darbība: 4. darbība: pārējo buferu salikšana
Kad alumīnija folija un saspraudes spēj noturēt vadus, kas piestiprināti pie katras Popsicle nūjas, sagrieziet divus mazus sūkļa kubiņus un pielīmējiet katru kubu starp nūjām (katras nūjas pašos galos, lai karstā līme līme netraucētu Sūkļi nodrošina buferu pieskārienu katru reizi, kad robots ietriecas sienā.
Pēc izvēles: pārgrieziet papildu Popsicle nūju uz pusēm un pielīmējiet to leņķī ārējā Popsicle stick bufera galā. Tas pastiprina bufera triecienu pret sienu un pagriešanos.
Atcerieties saliekt vadus tā, lai buferi izliektos tieši Bot-bot priekšā.
Ieteicams:
Izgatavojiet savu neapstrādātu kokteiļu automātu: 5 soļi (ar attēliem)
Izgatavojiet savu jēlnaftas kokteiļu automātu: Šajā projektā es jums parādīšu, kā es apvienoju Arduino Nano, LCD, rotējošu kodētāju, trīs peristaltiskus sūkņus ar dzinēju piedziņām, slodzes sensoru un pāris koka gabalus, lai izveidotu neapstrādātu, bet funkcionāla kokteiļu mašīna. Pa ceļam es vēl
Izgatavojiet savu neapstrādātu projektoru: 3 soļi
Izgatavojiet savu neapstrādātu projektoru: Šajā projektā es jums parādīšu, kā es, izmantojot pāris papildu detaļas, pārveidoju veco LCD komplektu par neapstrādātu projektoru. Sāksim
Izgatavojiet savu neapstrādātu kratīšanas lāpu (avārijas lukturītis): 4 soļi (ar attēliem)
Izveidojiet savu neapstrādātu kratīšanas lāpu (avārijas lukturītis): Šajā projektā es jums parādīšu, kā es apvienoju džoula zagļa ķēdi ar spoli un magnētu, lai izveidotu kratīšanas lāpu, kas ir avārijas lukturītis, kuram nav vajadzīgas baterijas. sāc
Izgatavojiet lētu ugunsdzēsības robotu mājās: 6 soļi
Izgatavojiet lētu ugunsdzēšanas robotu mājās: Vai vēlaties izveidot drošības projektu koledžas iesniegšanai vai varbūt personīgai lietošanai? Tad ugunsdzēsības robots ir lieliska iespēja! Es izveidoju šo prototipu kā pēdējā gada projektu aptuveni 50 USD (3500 INR) apmērā. Skatiet demonstrācijas video iepriekš. Šis robots darbojas
Kā pievienot buferus SUMOBOT: 9 soļi (ar attēliem)
Kā pievienot buferus SUMOBOT: to var izdarīt tā, lai, atsitoties pret kādu no robota buferiem, tas apgrieztos un novērstu no objekta