Sadržaj:

Napravite odbojnike robota (sa kodom): 4 koraka
Napravite odbojnike robota (sa kodom): 4 koraka

Video: Napravite odbojnike robota (sa kodom): 4 koraka

Video: Napravite odbojnike robota (sa kodom): 4 koraka
Video: КОНЕЦ МУЧЕНИЯМ. Трава больше не проблема! 2024, Novembar
Anonim
Napravite odbojnike robota (sa kodom)
Napravite odbojnike robota (sa kodom)

Ovo uputstvo će čitatelje provesti kroz to kako stvoriti i kodirati odbojnike na Boe-botu koji će se moći kretati kroz labirint dok otkrivaju prepreke. Kodiranje projekta izvedeno je pomoću softvera za programiranje BASIC Stamp i robota Boe-Bot, a za uspjeh u stvaranju ovih odbojnika potrebno je osnovno razumijevanje sklopova i programiranja.

Supplies

Za izradu ovih branika trebat će vam:

- Boe-Bot robot

- BASIC softver za programiranje pečata

- Štapići od slatkiša

- Sunđer

- Aluminijska folija

- Spajalice

- 8 pristojno dugih žica (najmanje 6 inča)

- 2 LED svjetla

-2 braon-crno-žuta otpornika

-2 crveno-crveno-smeđa otpornika

- Traka i vruće ljepilo (ili slično ljepilo)

- Baterije za vaš Boe-Bot

Korak 1: Korak 1: Kreiranje kruga

Korak 1: Kreiranje kruga
Korak 1: Kreiranje kruga
Korak 1: Kreiranje kruga
Korak 1: Kreiranje kruga

Slijedite gornji dijagram matične ploče kako biste stvorili krug za orijentaciju i rad sa vašom matičnom pločom. Na kraju, vaša ploča bi trebala izgledati slično slici sa lijeve strane.

Stvari koje treba zapamtiti:

- Uvjerite se da je LED u ispravnom položaju. To znači da ravna noga LED -a treba biti na negativnoj strani, a druga noga na pozitivnoj strani.

- Vss služi kao osnova na ovoj ploči, što znači da ima vrijednost nula, a Vdd vrijednost 1.

- Krug koji radi ima vrijednost 0. Krug koji je isključen ima vrijednost 1.

Korak 2: Korak 2: Programiranje za Boe-bot

Sljedeći kôd programira robota da skrene lijevo i desno za 90 stepeni ovisno o tome koji od branika je pritisnut (više detalja o izradi branika u sljedećem koraku). Ovaj kôd osigurava da će robot skrenuti ulijevo kada se pritisne žica desnog odbojnika, a da će skrenuti udesno kada se pritisne žica lijevog odbojnika.

Neki prijevodi s osnovnih jezika:

- GOSUB = potprogram (mora biti popraćen zahtjevom u kodu)

- Ako.. Else = navodi grupu koda koju treba izvršiti, ako su uslovi tačni, i izvodi instrukcije ako su uslovi lažni

Kod:

'{$ STAMP BS2}

'{$ PBASIC 2.5}' ******************************************* ******************************** 'Resetiraj kôd za ponovno pokretanje' Upotrijebite gumb za resetiranje da biste zaustavili i pokrenuli robota '** ************************************************ *********************** temp VAR Byte 'privremeno spremište RunStatus DATA $ 00' varijabla pohranjena u ROM -u READ RunStatus, temp 'Pročitajte varijablu iz ROM temp = ~ temp 'invertirati vrijednost 0 do 1 ili 1 do 0 WRITE RunStatus, temp' Vratiti varijablu natrag u ROM IF (temp> 0) THEN END 'Provjeriti je li vrijednost 1' ako je tako END program PAUSE 3000 'Pauziraj da dozvoli da pomerite 'ruku kad pritisnete reset' *************************************** ************************************ '************* ************************************************ *********** 'Pinovi i konstante' Koriste se za pojednostavljivanje programiranja '***************************** ********************************************* 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 '******************************* **************************************** '********* ************************************************ ************** 'Varijable' Koristi se za pojednostavljivanje programiranja '**************************** ********************************************* MLoopC VAR Rijec 'Za.. Sljedeća varijabla do 65000ish sideCount VAR Byte turnAngle VAR Word '********************************** ************************************** '----------- -------------------------------------------------- ------------- 'Glavni kod' --------------------------------- ----------------------------------------- UČINITI AKO IN10 = 0 ONDA 'Ako je žica u pinu 10 je uključena, zatim skrenite lijevo GOSUB LijevoTurn90 GOSUB LFastRev GOSUB RFastRev ELSEIF IN11 = 0 THEN 'Ako je žica u pinu 11 uključena, onda skrenite desno GOSUB DesnoTurn90 GOSUB LFastRev GOSUB RFastRev ENDIF GOSUB ForwardFast' Pomicanje naprijed jedan impuls LOOP ' --------------------------------- ------------------------------------- '** KRAJ GLAVNOG KODA ****** ********************************************** '- -------------------------------------------------- --------------------- '**************************** ******************************************** '** Podrutine / Podpostupak / Metode ******************************** '*********** ************************************************ *********** '************************************** ********************************** '*************** ************************************************ ******* RightTurn90: 'Potprogram za skretanje za 90 stepeni udesno' ********************************** *********************************** HIGH 1 LOW 0 FOR MLoopC = 1 TO 22 PULSOUT LMOTOR, Lfast 'pomakni se za jedan impuls PULSOUT RMOTOR, RfastRev' pomoću pinova i konstanti PAUSE 20 '20mS omogućava robotu da se pomakne NEXT' prije NEXT pulsa RETURN '******************** ************************************************ * LeftTurn90: 'Potproces za skretanje za 90 stepeni udesno' ** ************************************************ ******************* HIGH 0 LOW 1 FOR MLoopC = 1 TO 22 PULSOUT LMOTOR, LfastRev 'pomakni se za jedan impuls PULSOUT RMOTOR, Rfast' pomoću pinova i konstanti PAUSE 20 ' 20mS omogućava robotu da se pomakne NEXT 'prije NEXT PULS RETURN' ************************************ ********************************* NaprijedFast: 'Potpostupak za brzo pomicanje robota za jedan kvadrat naprijed' **** ************************************************ ***************** ZA MLoopC = 1 DO 55 PULSOUT LMOTORA, LFast PULSOUT RMOTOR, RFast PAUSE 20 SLJEDEĆE POVRATAK '************** ************************************************ ****** ReverseTurnLeft: 'Potpostupak za kretanje unatrag i okretanje robota ulijevo kada je pritisnut desni odbojnik' *************************** ***************************************** ZA MLoopC = 1 DO 55 PULSOUTA LMOTOR, LSlowRev PULSOUT RMOTOR, RFastRev PAUZA 20 SLJEDEĆE POVRATAK '************************************ ********************************* ReverseTurnRight: 'Potproces povucite unatrag i okrenite robota udesno kada je lijevi odbojnik pogođen '************************************ ********************************* ZA MLoopC = 1 DO 55 PULSOUT LMOTOR, LFastRev PULSOUT RMOTOR, RSlowRev PAUZA 20 SLJEDEĆE POVRATAK '******************************************** ************************* 'KRAJ PODROUTINA' ******************** ************************************************ *

Korak 3: Korak 3: Upotreba aluminijske folije i štapića za sladoled za žičane branike

Korak 3: Upotreba aluminijske folije i štapića za sladoled za žičane branike
Korak 3: Upotreba aluminijske folije i štapića za sladoled za žičane branike
Korak 3: Korištenje aluminijske folije i štapića za sladoled za žičane branike
Korak 3: Korištenje aluminijske folije i štapića za sladoled za žičane branike
Korak 3: Upotreba aluminijske folije i štapića za sladoled za žičane branike
Korak 3: Upotreba aluminijske folije i štapića za sladoled za žičane branike
Korak 3: Korištenje aluminijske folije i štapića za sladoled za žičane branike
Korak 3: Korištenje aluminijske folije i štapića za sladoled za žičane branike

Prije nego započnete ovaj korak, pobrinite se da su 4 žice s matične ploče (pogledajte korak 1) podijeljene u parove, pri čemu svaki par kontrolira desni ili lijevi branik. LED diode u ovoj situaciji funkcioniraju kako bi provjerile je li kod učinkovit na desnom i lijevom odbojniku. Na štapićima sladoleda jedna žica iz svakog para dijeli jedan kraj štapića sa slatkišima (to znači da žice istog para NE MOGU biti na istom braniku).

Izrežite 4 mala pravokutnika folije i pomoću jednog omotajte žicu oko svakog kraja dva štapića za sladoled. Ovo povećava površinu provodljivosti štapića za sladoled, kao i pruža veću površinu za dodir štapića.

Da biste držali foliju i žice zalijepljene za štapiće za sladoled, upotrijebite 1-2 spajalice da držite materijale zajedno. Sponke za papir takođe omogućavaju veću pristupačnost štapića za slatkiše na dodir bez velikih vanjskih smetnji. Prevucite spajalicu preko štapića za sladoled isto kao što biste to učinili sa normalnim snopom papira. Ponovite ovo za sva četiri komada folije i za svaki kraj dva štapića za sladoled.

Korak 4: Korak 4: Sastavljanje ostatka branika

Korak 4: Sastavljanje ostatka branika
Korak 4: Sastavljanje ostatka branika
Korak 4: Sastavljanje ostatka branika
Korak 4: Sastavljanje ostatka branika
Korak 4: Sastavljanje ostatka branika
Korak 4: Sastavljanje ostatka branika
Korak 4: Sastavljanje ostatka branika
Korak 4: Sastavljanje ostatka branika

Kad aluminijska folija i spajalice budu u mogućnosti držati žice pričvršćene za svaki štapić sladoleda, izrežite dvije male kocke spužve i zalijepite svaku kocku između štapića (na samim krajevima svakog štapića tako da ljepilo za vruće ljepilo ne ometa rad ljepila). Spužve osiguravaju da odbojnici dodiruju svaki put kada robot udari u zid.

Opcionalno: Prerežite dodatni štapić od sladoleda na pola i zalijepite ga pod kutom na vrhu vanjskog odbojnika štapića za sladoled. Ovo pojačava udar branika koji udara u zid i okreće se.

Upamtite da savijte žice tako da se odbojnici zakrive ispred Bota.

Preporučuje se: