Sistem penggerak#
Perkenalan#
Robot 123 memiliki sistem penggerak dua roda yang memungkinkannya untuk bergerak dan berbelok. Sistem penggerak tersebut membatasi kendali pergerakan robot.
Sistem penggerak dapat mengukur jarak dengan dua cara: langkah dan mm (milimeter). Satu langkah sama dengan satu kotak pada 123 Field.
Ada banyak cara untuk memprogram sistem penggerak (drivetrain). Berikut adalah daftar semua blok Drivetrain:
Aksi — Gerakkan dan putar robot.
drive — Menggerakkan robot maju atau mundur selamanya.
drive for — Menggerakkan robot maju atau mundur sejauh jarak tertentu.
bergerak sampai — Menggerakkan robot maju atau mundur sampai mendeteksi objek, tabrakan, atau garis.
turn — Memutar robot ke kiri atau ke kanan selamanya.
turn for — Memutar robot ke kiri atau ke kanan sejumlah derajat tertentu.
putar ke arah — Memutar robot untuk menghadap arah tertentu dari -359 hingga 359 derajat. Robot akan berbelok ke arah terpendek untuk mencapai arah target.
berhenti mengemudi — Menghentikan pergerakan robot.
Pengaturan — Sesuaikan pengaturan sistem penggerak.
set drive timeout — Mengatur berapa detik robot akan mencoba menyelesaikan suatu gerakan.
atur arah penggerak — Mengubah arah robot saat ini ke arah baru.
Nilai — Periksa status pergerakan.
pergerakan selesai — Melaporkan apakah robot telah selesai bergerak.
arah penggerak — Melaporkan arah penggerak robot saat ini dari 0 hingga 359 derajat.
Tindakan#
menyetir#
Blok tumpukan drive menggerakkan robot maju atau mundur tanpa henti. Robot akan terus bergerak hingga diberi tindakan lain, seperti berbelok atau berhenti.
kendarai [maju v]
Parameter |
Keterangan |
|---|---|
arah |
Arah pergerakan robot: maju atau mundur. |
Contoh
saat dimulai
[Drive for 2 seconds.]
kendarai [maju v]
tunggu (2) detik
hentikan mengemudi
dorongan untuk#
Blok drive for stack menggerakkan robot maju atau mundur sejauh jarak tertentu. Proyek akan menunggu hingga robot selesai bergerak sebelum blok berikutnya dalam stack dijalankan.
kendarai [maju v] sejauh (1) [langkah v]
Parameter |
Keterangan |
|---|---|
arah |
Arah pergerakan robot: maju atau mundur. |
jarak |
Jarak yang ditempuh robot. Ini bisa berupa bilangan bulat atau desimal. |
satuan |
Satuan jarak: langkah atau mm. |
Contoh
saat dimulai
[Drive back and forth.]
kendarai [maju v] sejauh (3) [langkah v]
kendarai [mundur v] sejauh (3) [langkah v]
berkendara sampai#
Blok tumpukan drive until menggerakkan robot maju hingga Sensor Mata mendeteksi suatu objek, tabrakan, atau garis.
berkendara maju hingga [objek v]
Parameter |
Keterangan |
|---|---|
kondisi |
Kondisi yang menghentikan robot:
|
Contoh
saat dimulai
[Reverse after a crash.]
berkendara maju hingga [tabrakan v]
kendarai [mundur v] sejauh (1) [langkah v]
berbelok#
Blok tumpukan turn akan memutar robot ke kiri atau ke kanan selamanya. Robot akan terus berputar hingga diberi tindakan lain, seperti mengemudi atau berhenti.
belok [kanan v]
Parameter |
Keterangan |
|---|---|
arah |
Arah putaran robot: kiri atau kanan. |
Contoh
saat dimulai
[Turn for 2 seconds.]
belok [kanan v]
tunggu (2) detik
hentikan mengemudi
berbalik untuk#
Blok tumpukan turn for membelokkan robot ke kiri atau ke kanan sejumlah derajat tertentu. Belokan tersebut relatif terhadap posisi robot saat ini. Proyek akan menunggu hingga robot selesai berbelok sebelum blok berikutnya dalam tumpukan dijalankan.
belok [kanan v] sejauh (90) derajat
Parameter |
Keterangan |
|---|---|
arah |
Arah putaran robot: kiri atau kanan. |
sudut |
Jumlah derajat putaran robot. Ini bisa berupa bilangan bulat atau desimal. |
Contoh
saat dimulai
[Turn left, then turn around to the right.]
belok [kiri v] sejauh (90) derajat
belok [kanan v] sejauh (180) derajat
beralih ke judul#
Arah haluan adalah arah yang dihadapi robot, diukur dalam derajat. Blok tumpukan turn to heading memutar robot untuk menghadap arah haluan tertentu dari -359 hingga 359 derajat. Robot akan berbelok melalui arah terpendek untuk mencapai arah haluan target.
Arah awal pergerakan robot adalah 0 derajat.
belok ke arah (90) derajat
Parameter |
Keterangan |
|---|---|
menuju |
Arah yang harus dihadapi robot, dalam derajat. Ini bisa berupa bilangan bulat atau desimal dari -359 hingga 359. |
Contoh
saat dimulai
[Turn to face the cardinal directions.]
belok ke arah (90) derajat
tunggu (2) detik
belok ke arah (180) derajat
tunggu (2) detik
belok ke arah (270) derajat
tunggu (2) detik
belok ke arah (0) derajat
tunggu (2) detik
berhenti mengemudi#
Blok tumpukan berhenti mengemudi menghentikan pergerakan robot.
hentikan mengemudi
Parameter |
Keterangan |
|---|---|
Blok ini tidak memiliki parameter. |
Contoh
saat dimulai
[Stop driving after 4 seconds.]
kendarai [maju v]
tunggu [4] detik
hentikan mengemudi
Pengaturan#
atur batas waktu drive#
Blok tumpukan set drive timeout mengatur berapa detik robot akan mencoba menyelesaikan suatu gerakan. Jika robot tidak dapat menyelesaikannya dalam waktu tersebut, robot akan berhenti mencoba dan melanjutkan ke blok berikutnya dalam tumpukan. Ini mencegah robot terjebak pada suatu gerakan.
atur batas waktu kendarai ke (1) detik
Parameter |
Keterangan |
|---|---|
waktu |
Jumlah detik yang dapat dicoba robot untuk menyelesaikan suatu gerakan. Ini bisa berupa bilangan bulat atau desimal. |
Contoh
saat dimulai
[Turn right after driving for 1 second.]
atur batas waktu kendarai ke (1) detik
kendarai [maju v] sejauh (1000) [mm v]
belok [kanan v] sejauh (90) derajat
atur arah berkendara#
Heading adalah arah yang dihadapi robot, diukur dalam derajat. Blok tumpukan set drive heading mengubah heading robot saat ini ke nilai heading baru.
Sebagai contoh, jika robot telah berputar menghadap ke kanan, mengatur arah menjadi 0 derajat akan menjadikan posisi menghadap ke kanan tersebut sebagai 0 derajat yang baru. Kemudian robot dapat berputar ke posisi lain berdasarkan arah yang baru tersebut.
atur arah kendarai ke (0) derajat
Parameter |
Keterangan |
|---|---|
menuju |
Nilai haluan, dalam derajat, yang akan diatur untuk robot. Nilai ini dapat berupa bilangan bulat atau desimal dari 0 hingga 359. |
Contoh
saat dimulai
[Face the new 0 degree heading.]
atur arah kendarai ke (90) derajat
belok ke arah (0) derajat
Nilai-nilai#
perjalanan selesai#
Blok Boolean drive is done melaporkan apakah robot telah selesai bergerak. Ini dapat digunakan untuk mengontrol waktu perilaku lain berdasarkan pergerakan robot.
Benar — Robot telah selesai bergerak.
Salah — Robot itu masih bergerak.
Blok ini bekerja bersama dengan blok Drivetrain berikut: berkendara untuk, berkendara sampai, berbelok untuk, dan berbelok ke arah.
<kendarai selesai?>
Parameter |
Keterangan |
|---|---|
Blok ini tidak memiliki parameter. |
Contoh
saat dimulai
[Glow blue after a crash.]
berkendara maju hingga [tabrakan v]
selamanya
jika <kendarai selesai?> maka
bercahaya [biru v]
lainnya
bercahaya [hijau v]
arah berkendara#
Heading adalah arah yang dihadapi robot, diukur dalam derajat. Blok pelapor drive heading melaporkan heading robot saat ini dari 0 hingga 359 derajat.
Arah awal pergerakan robot adalah 0 derajat.
(arah kendarai dalam derajat)
Parameter |
Keterangan |
|---|---|
Blok ini tidak memiliki parameter. |
Contoh
saat dimulai
[Display the heading after turning.]
belok [kanan v] sejauh (450) derajat
cetak (arah kendarai dalam derajat) ▶