Piedziņa#
Ievads#
Piedziņas sistēmā ietilpst riteņi un motori, kas kontrolē robota braukšanu un pagriešanos. Piedziņas sistēmas var atrast tādās versijās kā Code Base 2.0, Super Car vai pielāgotā robotā.
Piedziņas mehānismi izmanto smadzenēs esošo inerciālo sensoru, lai noteiktu avārijas un palīdzētu robotam precīzi kustēties un pagriezties. Katra projekta sākumā piedziņas mehānisms automātiski kalibrē inerciālo sensoru. Kalibrēšanas laikā robotam jāturas nekustīgi apmēram 2 sekundes, lai tas varētu pareizi kustēties un pagriezties.
Ir daudz veidu, kā kodēt piedziņas sistēmu. Zemāk ir visu piedziņas sistēmas bloku saraksts:
Darbības — Pārvietot un pagriezt robotu.
drive — Pārvieto robotu uz priekšu vai atpakaļ uz visiem laikiem.
drive for — Pārvieto robotu uz priekšu vai atpakaļ noteiktu attālumu.
braukt līdz — Pārvieto robotu uz priekšu vai atpakaļ, līdz acu sensors konstatē objektu vai robots konstatē avāriju.
pagrieziens — Pagriež robotu pa kreisi vai pa labi uz visiem laikiem.
pagriezties par — Pagriež robotu pa kreisi vai pa labi par noteiktu grādu skaitu.
pagriezties virzienā — Pagriež robotu noteiktā virzienā no -359 līdz 359 grādiem. Robots pagriezīsies īsākajā virzienā, lai sasniegtu mērķa virzienu.
pagriezt uz rotāciju — Pagriež robotu noteiktā rotācijā.
apturēt braukšanu — Aptur robota kustību.
Iestatījumi — pielāgojiet piedziņas iestatījumus.
iestatīt piedziņas ātrumu — Norāda robotam, cik ātri braukt.
iestatīt pagrieziena ātrumu — Norāda robotam, cik ātri griezties.
iestatīt piedziņas apstāšanos — Norāda, kā robots pārtrauks kustību: bremzējot, braucot brīvi vai turoties.
iestatīt piedziņas taimautu — Iestata, cik sekundes robots mēģinās pabeigt kustību.
iestatīt piedziņas virzienu — Maina robota pašreizējo virzienu uz jaunu virzienu.
iestatīt piedziņas rotāciju — Maina robota pašreizējo rotāciju uz jaunu rotāciju.
Vērtības — pārbaudiet kustības statusu.
braukšana pabeigta — Ziņo, vai robots ir pabeidzis kustību.
drive heading — Ziņo par robota pašreizējo virzienu no 0 līdz 359 grādiem.
piedziņas rotācija — Ziņo par robota pašreizējo rotāciju.
piedziņas ātrums — Ziņo par robota braukšanas ātrumu procentos no -100% līdz 100%.
Darbības#
braukt#
Piedziņas bloks pārvieto robotu uz priekšu vai atpakaļ bezgalīgi. Robots turpinās kustēties, līdz tam tiks dota cita darbība, piemēram, pagriešana vai apstāšanās.
braukt [uz priekšu v]
Parametri |
Apraksts |
|---|---|
virziens |
Robota kustības virziens: uz priekšu vai atpakaļ. |
Piemērs
kad sākts :: hat events
[Build Used: Code Base 2.0]
[Drive forward then stop.]
braukt [uz priekšu v]
gaidīt (2) sekundes
pārtraukt braukšanu
dzīties pēc#
Kaudzītes bloks piedziņai pārvieto robotu uz priekšu vai atpakaļ noteiktu attālumu. Projekts gaidīs, līdz robots būs pabeidzis kustību, pirms tiks palaists nākamais bloks kaudzē.
braukt [uz priekšu v] par [100] [mm v] ▶
Parametri |
Apraksts |
|---|---|
virziens |
Robota kustības virziens: uz priekšu vai atpakaļ. |
attālums |
Robota nobrauktais attālums. Tas var būt vesels skaitlis vai decimālskaitlis. |
vienība |
Attāluma mērvienība: mm (milimetri) vai collas. |
un negaidiet |
Atlasiet bultiņu (▶), lai izvērstu bloku, sakot un negaidiet, lai nākamais bloks kaudzē tiktu palaists nekavējoties. |
Piemērs
kad sākts :: hat events
[Build Used: Code Base 2.0]
[Drive back and forth.]
braukt [uz priekšu v] par [100] [mm v] ▶
braukt [atpakaļ v] par [4] [collas v] ▶
braukt līdz#
Braukt līdz bloks pārvieto robotu uz priekšu vai atpakaļ, līdz acu sensors konstatē objektu vai robots konstatē avāriju.
braukt [uz priekšu v] līdz [objekts v] ▶
Parametri |
Apraksts |
|---|---|
virziens |
Robota kustības virziens: uz priekšu vai atpakaļ. |
stāvoklis |
Nosacījums, kas aptur robotu: objekts vai avārija. |
un negaidiet |
Atlasiet bultiņu (▶), lai izvērstu bloku, sakot un negaidiet, lai nākamais bloks kaudzē tiktu palaists nekavējoties. |
Piemērs
kad sākts :: hat events
[Build Used: Code Base 2.0]
[Turn right after a crash.]
braukt [uz priekšu v] līdz [avārija v] ▶
griezties [pa labi v] par (90) grādiem ▶
pagrieziens#
Pagrieziena bloks griež robotu pa kreisi vai pa labi uz visiem laikiem. Robots turpinās griezties, līdz tam tiks dota cita darbība, piemēram, braukšana uz apstāšanos.
griezties [pa labi v]
Parametri |
Apraksts |
|---|---|
virziens |
Robota pagrieziena virziens: pa kreisi vai pa labi. |
Piemērs
kad sākts :: hat events
[Build Used: Code Base 2.0]
[Turn right and left, then stop.]
griezties [pa labi v]
gaidīt [2] sekundes
griezties [pa kreisi v]
gaidīt [2] sekundes
pārtraukt braukšanu
pagriezties pēc#
Kaudzītes bloks pagrieziens pagriež robotu pa kreisi vai pa labi par noteiktu grādu skaitu. Pagrieziens ir relatīvs attiecībā pret robota pašreizējo pozīciju. Projekts gaidīs, līdz robots būs pabeidzis pagriešanos, pirms tiks palaists nākamais bloks kaudzē.
griezties [pa labi v] par (90) grādiem ▶
Parametri |
Apraksts |
|---|---|
virziens |
Robota pagrieziena virziens: pa kreisi vai pa labi. |
leņķis |
Robota pagrieziena grādu skaits. Tas var būt vesels skaitlis vai decimālskaitlis. |
un negaidiet |
Atlasiet bultiņu (▶), lai izvērstu bloku, sakot un negaidiet, lai nākamais bloks kaudzē tiktu palaists nekavējoties. |
Piemērs
kad sākts :: hat events
[Build Used: Code Base 2.0]
[Turn right then left.]
griezties [pa labi v] par (90) grādiem ▶
griezties [pa kreisi v] par (90) grādiem ▶
pagriezieties uz virsrakstu#
Virziens ir virziens, kurā ir pavērstas robota smadzenes, mērot grādos. Pagrieziena virziena maiņa bloks pagriež robotu noteiktā virzienā no -359 līdz 359 grādiem. Robots pagriezīsies īsākajā virzienā, lai sasniegtu mērķa virzienu.
Sākuma kurss ir 0 grādi.

Projekts gaidīs, līdz robots būs pabeidzis pagriešanos, pirms tiks palaists nākamais bloks kaudzē.
griezties uz virziena leņķi [90] grādos ▶
Parametri |
Apraksts |
|---|---|
virsraksts |
Virziens, kādā robotam jāgriežas, kā vesels skaitlis no -359 līdz 359 grādiem. |
un negaidiet |
Atlasiet bultiņu (▶), lai izvērstu bloku, sakot un negaidiet, lai nākamais bloks kaudzē tiktu palaists nekavējoties. |
Piemērs
kad sākts :: hat events
[Build Used: Code Base 2.0]
[Turn to face the cardinal directions.]
griezties uz virziena leņķi [90] grādos ▶
gaidīt [1] sekundes
griezties uz virziena leņķi [180] grādos ▶
gaidīt [1] sekundes
griezties uz virziena leņķi [270] grādos ▶
gaidīt [1] sekundes
griezties uz virziena leņķi [0] grādos ▶
pagriezties uz rotāciju#
Pagrieziena uz rotāciju bloks ieslēdz robotu noteiktā rotācijā.
Rotācija ir robota pagrieziena lielums, mērot grādos. Projekta sākumā rotācijas vērtība tiek iestatīta uz 0 grādiem. Rotāciju var iestatīt arī, izmantojot bloku set drive rotation.
Rotācijas vērtības ir absolūtas. Tas nozīmē, ka pagrieziena virziens ir atkarīgs no robota pašreizējās rotācijas. Pagriežoties pa labi, rotācija palielinās, bet pagriežoties pa kreisi, tā samazinās.
Piemēram, ja robots sāk darboties no 0 grādiem un jūs pagriežaties par 720 grādiem, tas divreiz pagriezīsies pa labi. Ja pēc tam pagriezīsities par 360 grādiem, tas vienreiz pagriezīsies pa kreisi, jo 360 grādi ir mazāki par 720.

Projekts gaidīs, līdz robots būs pabeidzis pagriešanos, pirms tiks palaists nākamais bloks kaudzē.
griezties uz rotāciju (90) grādos ▶
Parametri |
Apraksts |
|---|---|
rotācija |
Rotācijas vērtība grādos, kādā robots pagriezīsies. Tas var būt vesels skaitlis. |
un negaidiet |
Atlasiet bultiņu (▶), lai izvērstu bloku, sakot un negaidiet, lai nākamais bloks kaudzē tiktu palaists nekavējoties. |
Piemērs
kad sākts :: hat events
[Build Used: Code Base 2.0]
[Make one full turn to the right.]
griezties uz rotāciju [360] grādos ▶
[Make another full turn to the right.]
griezties uz rotāciju [720] grādos ▶
[Make one full turn to the left, returning to 360 degrees.]
griezties uz rotāciju [360] grādos ▶
beidz braukt#
Steka bloks apturēt braukšanu aptur robota kustību.
pārtraukt braukšanu
Parametri |
Apraksts |
|---|---|
Šim blokam nav parametru. |
Piemērs
kad sākts :: hat events
[Build Used: Code Base 2.0]
[Drive forward then stop.]
braukt [uz priekšu v]
gaidīt (2) sekundes
pārtraukt braukšanu
Iestatījumi#
iestatīt piedziņas ātrumu#
Iestatītā piedziņas ātruma bloks norāda robotam, cik ātri jābrauc. Augstāka procentuālā vērtība liek robotam braukt ātrāk, bet zemāka procentuālā vērtība liek robotam braukt lēnāk.
Katrs projekts sākas ar robota kustību ar noklusējuma ātrumu 50%.
Piezīme: Lielāks ātrums padara robotu ātrāku, bet tas var būt mazāk precīzs. Mazāks ātrums padara robotu lēnāku, bet precīzāku.
iestatīt braukšanas ātrumu uz (50) %
Parametri |
Apraksts |
|---|---|
ātrums |
Braukšanas ātrums no 0% līdz 100%. |
Piemērs
kad sākts :: hat events
[Build Used: Code Base 2.0]
[Drive at different velocities.]
braukt [uz priekšu v] par [100] [mm v] ▶
gaidīt [1] sekundes
[Drive slow.]
iestatīt braukšanas ātrumu uz (20) %
braukt [uz priekšu v] par [100] [mm v] ▶
gaidīt [1] sekundes
[Drive fast.]
iestatīt braukšanas ātrumu uz (100) %
braukt [uz priekšu v] par [100] [mm v] ▶
iestatīts pagrieziena ātrums#
Iestatītā pagrieziena ātruma bloks norāda robotam, cik ātri griezties. Augstāka procentuālā vērtība liek robotam griezties ātrāk, bet zemāka procentuālā vērtība liek robotam griezties lēnāk.
Katrs projekts sākas ar robota griešanos ar noklusējuma ātrumu 50%.
Piezīme: Lielāks ātrums liek robotam griezties ātrāk, bet tas var būt mazāk precīzs. Mazāks ātrums liek robotam griezties lēnāk, bet tas var būt precīzāks.
iestatīt pagrieziena ātrumu uz [50]%
Parametri |
Apraksts |
|---|---|
ātrums |
Griešanās ātrums no 0% līdz 100%. |
Piemērs
kad sākts :: hat events
[Build Used: Code Base 2.0]
[Turn at different velocities.]
griezties [pa labi v] par [180] grādiem ▶
gaidīt [1] sekundes
[Turn fast.]
iestatīt pagrieziena ātrumu uz [100]%
griezties [pa labi v] par [180] grādiem ▶
iestatīt piedziņas apturēšanu#
Steka bloks iestatīt piedziņas apstāšanos nosaka, kā robots pārtrauks kustību: bremzējot, braucot brīvi vai turoties.
iestatīt braukšanas apturēšanu uz [bremzēt v]
Parametri |
Apraksts |
|---|---|
apstāšanās uzvedība |
Kā robots apstāsies:
|
Ja šis bloks netiek izmantots, robots apstājoties izmantos bremzi.
Piemērs
kad sākts :: hat events
[Build Used: Code Base 2.0]
[Drive, then coast to a stop.]
iestatīt braukšanas ātrumu uz (100) %
iestatīt braukšanas apturēšanu uz [brīvgaita v]
braukt [uz priekšu v]
gaidīt [2] sekundes
pārtraukt braukšanu
iestatīt piedziņas taimautu#
Steka bloks iestatīt piedziņas taimautu nosaka, cik sekundes robots mēģinās pabeigt kustību. Ja robots nevar pabeigt šajā laikā, tas pārtrauks mēģinājumu un pāries uz nākamo bloku stekā. Tas neļauj robotam iestrēgt kustībā.
iestatīt braukšanas taimautu uz [1] sekundēm
Parametri |
Apraksts |
|---|---|
laiks |
Sekunžu skaits, kurā robots var mēģināt pabeigt kustību. Tas var būt vesels skaitlis vai decimālskaitlis. |
Piemērs
kad sākts :: hat events
[Build Used: Code Base 2.0]
[Drive as far as possible for 1 second before turning right.]
iestatīt braukšanas taimautu uz [1] sekundēm
braukt [uz priekšu v] par [25] [collas v] ▶
griezties [pa labi v] par [90] grādiem ▶
iestatīt braukšanas virzienu#
Virziens ir virziens, kurā atrodas robota smadzenes, mērot grādos. iestatīt piedziņas virzienu steka bloks maina robota pašreizējo virzienu uz jaunu virziena vērtību.
Piemēram, ja robots ir pagriezies pa labi, iestatot virzienu uz 0 grādiem, šī pozīcija, kas vērsta pa labi, kļūst par jauno 0 grādu pozīciju. Pēc tam robots var pagriezties uz citām pozīcijām, pamatojoties uz šo jauno virzienu.
iestatīt braukšanas virziena leņķi uz [0] grādiem
Parametri |
Apraksts |
|---|---|
virsraksts |
Robota iestatāmā virziena vērtība grādos. Tas var būt vesels skaitlis no 0 līdz 359. |
Piemērs
kad sākts :: hat events
[Build Used: Code Base 2.0]
[Face the new 0 degree heading.]
iestatīt braukšanas virziena leņķi uz [90] grādiem
griezties uz virziena leņķi [0] grādos ▶
iestatīt piedziņas rotāciju#
Rotācija ir robota pagrieziena lielums, mērot grādos. Projekta sākumā rotācijas vērtība ir iestatīta uz 0 grādiem. iestatīt piedziņas rotāciju steka bloks maina robota pašreizējo rotāciju uz jaunu vērtību.
Piemēram, ja robots ir veicis divus pilnus pagriezienus pa labi, tā rotācijas vērtība būs 720 grādi. Iestatot rotāciju uz 0 grādiem, šī rotācija tiks atiestatīta no 720 uz 0 grādiem. Pēc tam robots var veikt rotācijas, pamatojoties uz šo jauno vērtību.
iestatīt braukšanas rotāciju uz (0) grādiem
Parametri |
Apraksts |
|---|---|
rotācija |
Robota rotācijas vērtība grādos. Tā var būt vesels skaitlis. |
Piemērs
kad sākts :: hat events
[Build Used: Code Base 2.0]
[Spin counterclockwise two times.]
iestatīt braukšanas rotāciju uz [720] grādiem
griezties uz rotāciju [0] grādos ▶
Vērtības#
brauciens ir pabeigts#
Būla bloks braukšana pabeigta ziņo, vai robots ir pabeidzis kustību. To var izmantot, lai kontrolētu citu darbību laiku, pamatojoties uz robota kustību.
Patiess — Robots ir pabeidzis kustību.
Aplams — Robots joprojām kustas.
Šis bloks darbojas kopā ar šādiem piedziņas blokiem, kuriem ir parametrs un negaidi: drive for, drive until, turn for, turn to heading un turn to rotation.
<braukšana pabeigta?>
Parametri |
Apraksts |
|---|---|
Šim blokam nav parametru. |
Piemērs
kad sākts :: hat events
[Build Used: Code Base 2.0]
[Turn when the drivetrain is done moving forward.]
braukt [uz priekšu v] par [100] [mm v] ◀ un negaidīt
gaidīt [0.25] sekundes
mūžīgi
ja <braukšana pabeigta?> tad
griezties [pa labi v] par [180] grādiem ▶
pārtraukt
citādi
drukāt [Still moving...] ▶
gaidīt [0.1] sekundes
notīrīt visas rindas
braukšanas virziens#
Virziens ir virziens, kurā atrodas robota smadzenes, mērot grādos. Drive heading ziņotāja bloks ziņo par virzienu no 0 līdz 359 grādiem.
Robota sākuma virziens ir 0 grādi.

(braukšanas virziena leņķis grādos)
Parametri |
Apraksts |
|---|---|
Šim blokam nav parametru. |
Piemērs
kad sākts :: hat events
[Build Used: Code Base 2.0]
[Display the heading while turning.]
griezties [pa labi v] par [450] grādiem ◀ un negaidīt
mūžīgi
notīrīt visas rindas
drukāt (braukšanas virziena leņķis grādos) ▶
gaidīt [0.1] sekundes
piedziņas rotācija#
Rotācija ir robota pagrieziena lielums, mērot grādos. Projekta sākumā rotācijas vērtība ir iestatīta uz 0 grādiem. Piedziņas rotācijas ziņošanas bloks ziņo par robota pašreizējo rotāciju.
Pagriežoties pa labi, rotācija palielinās, bet pagriežoties pa kreisi, tā samazinās. Piemēram, veicot divus pilnus pagriezienus pa labi, tiks ziņots par 720 grādu rotāciju.

(braukšanas rotācija grādos)
Parametri |
Apraksts |
|---|---|
Šim blokam nav parametru. |
Piemērs
kad sākts :: hat events
[Build Used: Code Base 2.0]
[Display the rotation while turning.]
griezties [pa labi v] par [450] grādiem ◀ un negaidīt
mūžīgi
notīrīt visas rindas
drukāt (braukšanas rotācija grādos) ▶
gaidīt [0.1] sekundes
piedziņas ātrums#
Piedziņas ātruma ziņotāja bloks ziņo par robota braukšanas ātrumu procentos no -100% līdz 100%.
Pozitīva vērtība nozīmē, ka robots brauc uz priekšu. Negatīva vērtība nozīmē, ka robots brauc atpakaļgaitā.
(braukšanas ātrums %)
Parametri |
Apraksts |
|---|---|
Šim blokam nav parametru. |
Piemērs
kad sākts :: hat events
[Build Used: Code Base 2.0]
[Display the velocity of the robot before and while moving.]
drukāt [Start: ] ▶
drukāt (braukšanas ātrums %) ▶
pāriet uz nākamo rindu
braukt [uz priekšu v]
gaidīt [0.5] sekundes
drukāt [Moving: ] ▶
drukāt (braukšanas ātrums %) ▶
pārtraukt braukšanu