Kazalo:

Naredite robotske odbijače (s kodo): 4 koraki
Naredite robotske odbijače (s kodo): 4 koraki

Video: Naredite robotske odbijače (s kodo): 4 koraki

Video: Naredite robotske odbijače (s kodo): 4 koraki
Video: Бен Герцель: Неудержимый рост искусственного интеллекта 2024, Julij
Anonim
Naredite robotske odbijače (s kodo)
Naredite robotske odbijače (s kodo)

Ta navodila bodo bralcem predstavila, kako ustvariti in kodirati odbijače na Boe-botu, ki se bo lahko premikal po labirintu, medtem ko bo odkrival ovire. Kodiranje projekta je bilo izvedeno s programsko opremo za programiranje BASIC Stamp in robotom Boe-Bot, za ustvarjanje teh odbijačev pa je potrebno osnovno razumevanje vezja in programiranja.

Zaloge

Za izdelavo teh odbijačev boste potrebovali:

- Robot Boe-Bot

- programska oprema za programiranje žigov BASIC

- palčke za popsicle

- Gobica

- Aluminijasta folija

- Sponke

- 8 spodobno dolgih žic (najmanj 6 palcev)

- 2 LED luči

-2 rjavo-črno-rumena upora

-2 rdeče-rdeče-rjava upora

- trak in vroče lepilo (ali podobno lepilo)

- Baterije za vaš Boe-Bot

1. korak: 1. korak: Ustvarjanje vezja

1. korak: Ustvarjanje vezja
1. korak: Ustvarjanje vezja
1. korak: Ustvarjanje vezja
1. korak: Ustvarjanje vezja

Sledite zgornjemu diagramu mize, da ustvarite vezje za orientacijo in upravljanje vaše mize. Na koncu bi morala biti vaša plošča podobna sliki na levi.

Stvari, ki si jih morate zapomniti:

- Prepričajte se, da je LED v pravilnem položaju. To pomeni, da mora biti ravna noga LED na negativni strani, druga pa na pozitivni strani.

- Vss služi kot osnova na tej plošči, kar pomeni, da ima vrednost nič, Vdd pa vrednost 1.

- Tekoči tokokrog ima vrednost 0. Izklopljeno vezje ima vrednost 1.

2. korak: 2. korak: Programiranje za Boe-bot

Naslednja koda programira robota, da zavije za levo in desno za 90 stopinj, odvisno od tega, kateri od odbijačev pritisnete (več podrobnosti o izdelavi odbijača v naslednjem koraku). Ta koda zagotavlja, da bo robot zavil levo, ko pritisnete žice desnega odbijača, in zavil desno, ko pritisnete žice levega odbijača.

Nekaj osnovnih jezikovnih prevodov:

- GOSUB = podprogram (v kodi mora slediti zahteva)

- Če.. Else = podaja skupino kode, ki jo je treba izvesti, če so pogoji resnični, in izvede navodila, če so pogoji napačni

Koda:

'{$ STAMP BS2}

'{$ PBASIC 2.5}' ***************************************** ******************************** 'Ponastavi kodo za ponovni zagon' Za ustavitev in zagon robota uporabite gumb za ponastavitev '** ************************************************ *********************** temp VAR Byte 'začasna shramba RunStatus DATA $ 00' spremenljivka shranjena v ROM READ RunStatus, temp 'Preberite spremenljivko iz ROM temp = ~ temp 'spremenite vrednost 0 do 1 ali 1 do 0 WRITE RunStatus, temp' Vnesite spremenljivko nazaj v ROM IF (temp> 0) THEN END 'Preverite, če je vrednost 1', če je tako END PAUSE 3000 'Pause to allow premakniti "roko, ko pritisnete reset" ************************************* ************************************ '************* ************************************************ *********** 'Zatiči in konstante' Uporablja se za poenostavitev programiranja '***************************** ********************************************* LMOTOR PIN 15 PIN RMOTOR 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 '******************************* **************************************** '********* ************************************************ ************** 'Spremenljivke', ki se uporabljajo za poenostavitev programiranja '**************************** ********************************************* MLoopC VAR Beseda 'Za.. Naslednja spremenljivka do 65000ish strani Število VAR Byte turnAngle VAR Word '********************************** ************************************ '----------- -------------------------------------------------- ------------- 'Glavna koda' --------------------------------- ----------------------------------------- ČE IN IN10 = 0 TUDI 'Če je žica v zatiču 10 je vklopljena in nato zavijte levo --------------------------------- ------------------------------------- '** KONEC GLAVNE KODE ****** ********************************************** '- -------------------------------------------------- --------------------- '**************************** ******************************************** '** Podprogrami / Podprocedura / Metode ******************************** '*********** ************************************************ *********** '************************************** ********************************** '*************** ************************************************ ******* RightTurn90: 'Podproces za zavijanje 90 stopinj desno' ********************************** *********************************** HIGH 1 LOW 0 FOR MLoopC = 1 TO 22 PULSOUT LMOTOR, Lfast "premik naprej za en impulz PULSOUT RMOTOR, RfastRev" z uporabo zatičev in konstant PAUSE 20 '20mS omogoča robotu, da se premakne NEXT' pred NEXT impulz RETURN '******************** ************************************************ * LeftTurn90: 'Podprocedura za zavijanje 90 stopinj v desno' ** ************************************************ ******************* HIGH 0 LOW 1 FOR MLoopC = 1 TO 22 PULSOUT LMOTOR, LfastRev 'premakni naprej en impulz PULSOUT RMOTOR, Rfast' z uporabo nožic in konstant PAUSE 20 ' 20mS omogoča robotu, da se premakne NAPREJ 'pred NAPREJ PULS RETURN' ************************************ ******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************** ************************************************ ***************** ZA MLoopC = 1 DO 55 PULSOUT LMOTOR, LFast PULSOUT RMOTOR, RFast PAUSE 20 NEXT WETURN '************** ************************************************ ****** ReverseTurnLeft: 'Podprocedura za vzvratno vožnjo in obračanje robota v levo, ko je zadet desni odbijač' *************************** ********************************************* Za MLoopC = 1 DO 55 PULSOUT LMOTOR, LSlowRev PULSOUT RMOTOR, RFastRev PAUSE 20 NEXT RETURN '************************************ ********************************* ReverseTurnRight: 'Podproces potisnite nazaj in obračajte robota desno, ko pritisnete levi odbijač '********************************** ************************************************************************* Za MLoopC = 1 DO 55 PULSOUT LMOTOR, LFastRev PULSOUT RMOTOR, RSlowRev PAUSE 20 NASLEDNJA VRNITEV '****************************************** ************************* 'KONEC PODPROUTIN' ******************** ************************************************ *

Korak 3: Korak 3: Uporaba aluminijaste folije in palic za popsicle za žične odbijače

3. korak: Uporaba aluminijaste folije in palic za popsicle za žične odbijače
3. korak: Uporaba aluminijaste folije in palic za popsicle za žične odbijače
3. korak: Uporaba aluminijaste folije in palic za popsicle za žične odbijače
3. korak: Uporaba aluminijaste folije in palic za popsicle za žične odbijače
3. korak: Uporaba aluminijaste folije in palic za popsicle za žične odbijače
3. korak: Uporaba aluminijaste folije in palic za popsicle za žične odbijače
3. korak: Uporaba aluminijaste folije in palic za popsicle za žične odbijače
3. korak: Uporaba aluminijaste folije in palic za popsicle za žične odbijače

Preden začnete s tem korakom, se prepričajte, da so 4 žice iz plošče (glejte korak 1) razdeljene v pare, pri čemer vsak par nadzoruje desni ali levi odbijač. V tem primeru svetleče diode delujejo in preverjajo, ali je bila koda učinkovita na desnem in levem odbijaču. Na palicah Popsicle si ena žica iz vsakega para deli en konec palčke Popsicle (to pomeni, da žice istega para NE MORO biti na istem odbijaču).

Izrežite 4 majhne pravokotnike iz folije in z enim zavijte žico okoli obeh koncev dveh palčk za moke. To poveča površino prevodnosti palčke za moko in hkrati zagotovi večjo površino, na katero se palice dotikajo.

Če želite, da folija in žice ostanejo prilepljeni na palčke za moke, uporabite 1-2 sponke za papir, da držite materiale skupaj. Sponke za papir zagotavljajo tudi večjo dostopnost, da se palčke Popsicle dotaknejo brez večjih zunanjih motenj. Sponko potisnite čez palico za lončke, tako kot pri običajnem svežnju papirja. To ponovite za vse štiri kose folije in za vsak konec dveh palčk za zmes.

4. korak: 4. korak: Sestavljanje preostalih odbijačev

4. korak: Sestavljanje preostalih odbijačev
4. korak: Sestavljanje preostalih odbijačev
4. korak: Sestavljanje preostalih odbijačev
4. korak: Sestavljanje preostalih odbijačev
4. korak: Sestavljanje preostalih odbijačev
4. korak: Sestavljanje preostalih odbijačev
4. korak: Sestavljanje preostalih odbijačev
4. korak: Sestavljanje preostalih odbijačev

Ko aluminijasta folija in sponke za papir lahko obdržijo žice, pritrjene na vsako palico za mozaik, izrežite dve majhni kocki gobice in vsako kocko prilepite med palčke (na same konce koncev palice, tako da lepilo z vročim lepilom ne moti Gobice zagotavljajo, da se odbijači z dotikom vsakič, ko robot udari v steno.

Neobvezno: dodatno paličico za lončke prepolovite na polovico in jo prilepite pod kotom na konici zunanjega odbijača palčke za makalice. To krepi udarce odbijača ob zid in ob obračanju.

Upoštevajte, da žice upognite tako, da se odbijači ukrivijo tik pred Botom.

Priporočena: