Sistem penggerak#

Perkenalan#

Sistem penggerak mencakup roda dan motor yang mengontrol cara robot bergerak dan berbelok. Sistem penggerak dapat dikonfigurasi dengan motor atau kelompok motor.

Jika sistem penggerak dikonfigurasi dengan Sensor Inersia, Sensor GPS, atau Sensor Giroskop, maka sistem tersebut dapat melakukan gerakan maju, mundur, dan berbelok dengan lebih tepat dengan melacak arah dan rotasi sensor.

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.

  • 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 ke arah tertentu.

  • putar ke rotasi — Memutar robot ke rotasi tertentu.

  • berhenti mengemudi — Menghentikan pergerakan robot.

Pengaturan — Sesuaikan pengaturan sistem penggerak.

Nilai — Periksa status pergerakan.

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 forward, then stop.]
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 [200] [mm 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: mm (milimeter) atau inci

dan jangan menunggu

Pilih tanda panah ( ▶ ) untuk memperluas blok menjadi dan jangan menunggu, sehingga blok berikutnya dalam tumpukan akan segera dijalankan.

Contoh

saat dimulai
[Drive forwards and backwards.]
kendarai [maju v] sejauh [200] [mm v] ▶
tunggu [1] detik
kendarai [mundur v] sejauh [200] [mm 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 right, then stop.]
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.

dan jangan menunggu

Pilih tanda panah ( ▶ ) untuk memperluas blok menjadi dan jangan menunggu, sehingga blok berikutnya dalam tumpukan akan segera dijalankan.

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 adalah 0 derajat.

Proyek ini akan menunggu hingga robot selesai berputar sebelum blok berikutnya dalam tumpukan dijalankan.

Catatan: Blok ini hanya tersedia jika sistem penggerak dikonfigurasi dengan Sensor Inersia, Sensor GPS, atau Sensor Giroskop di jendela Perangkat.

belok ke arah (90) derajat ▶

Parameter

Keterangan

menuju

Arah haluan yang harus dihadapi robot, dari -359 hingga 359 derajat.

dan jangan menunggu

Pilih tanda panah ( ▶ ) untuk memperluas blok menjadi dan jangan menunggu, sehingga blok berikutnya dalam tumpukan akan segera dijalankan.

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

beralih ke rotasi#

Blok tumpukan putar ke rotasi memutar robot ke rotasi tertentu.

Rotasi adalah seberapa jauh robot telah berputar, diukur dalam derajat. Pada awal proyek, nilai rotasi diatur ke 0 derajat. Rotasi juga dapat diatur menggunakan blok set drive rotation.

Nilai rotasi bersifat absolut. Artinya, arah putaran bergantung pada rotasi robot saat ini. Berbelok ke kanan akan meningkatkan rotasi, dan berbelok ke kiri akan mengurangi rotasi.

Sebagai contoh, jika robot mulai dari 0 derajat dan Anda memutarnya hingga mencapai rotasi 720 derajat, robot akan berbelok ke kanan dua kali. Jika kemudian Anda memutarnya hingga mencapai rotasi 360 derajat, robot akan berbelok ke kiri sekali, karena 360 kurang dari 720.

Proyek ini akan menunggu hingga robot selesai berputar sebelum blok berikutnya dalam tumpukan dijalankan.

Catatan: Blok ini hanya tersedia jika sistem penggerak dikonfigurasi dengan Sensor Inersia, Sensor GPS, atau Sensor Giroskop di jendela Perangkat.

belok ke rotasi [90] derajat ▶

Parameter

Keterangan

rotasi

Nilai rotasi, dalam derajat, yang akan dilakukan robot. Nilai ini dapat berupa bilangan bulat atau desimal.

dan jangan menunggu

Pilih tanda panah ( ▶ ) untuk memperluas blok menjadi dan jangan menunggu, sehingga blok berikutnya dalam tumpukan akan segera dijalankan.

Contoh

saat dimulai
[Turn left, then spin in a circle clockwise and face right.]
belok ke rotasi [-90] derajat ▶
tunggu [2] detik
belok ke rotasi [450] derajat ▶

berhenti mengemudi#

Blok tumpukan berhenti mengemudi menghentikan pergerakan robot.

hentikan mengemudi

Parameter

Keterangan

Blok ini tidak memiliki parameter.

Contoh

saat dimulai
[Drive forward, then stop.]
kendarai [maju v]
tunggu [4] detik
hentikan mengemudi

Pengaturan#

atur kecepatan penggerak#

Blok tumpukan set drive velocity memberi tahu robot seberapa cepat ia harus bergerak. Persentase yang lebih tinggi membuat robot bergerak lebih cepat dan persentase yang lebih rendah membuat robot bergerak lebih lambat. Untuk RPM, batasnya diubah oleh rasio gigi dari sistem penggerak.

Setiap proyek dimulai dengan robot yang bergerak dengan kecepatan 50% secara default.

Catatan: Kecepatan yang lebih tinggi membuat robot bergerak lebih cepat, tetapi mungkin kurang presisi. Kecepatan yang lebih rendah membuat robot bergerak lebih lambat, tetapi bisa lebih presisi.

atur kecepatan kendarai ke (50) [% v]

Parameter

Keterangan

kecepatan

Kecepatan untuk menggerakkan dari 0% hingga 100% saat menggunakan velocityUnits::pct, atau dari 0 hingga 600 rpm untuk rpm.

satuan

Satuan kecepatan:

  • % – persen
  • rpm – putaran per menit

Contoh

saat dimulai
[Drive forward at the default velocity.]
kendarai [maju v] sejauh (100) [mm v] ▶
tunggu (1) detik
[Move slower.]
atur kecepatan kendarai ke (20) [% v]
kendarai [maju v] sejauh (100) [mm v] ▶
tunggu (1) detik
[Move faster.]
atur kecepatan kendarai ke (100) [% v]
kendarai [maju v] sejauh (100) [mm v] ▶
tunggu (1) detik

atur kecepatan putar#

Blok tumpukan set turn velocity memberi tahu robot seberapa cepat harus berbelok. Persentase yang lebih tinggi membuat robot berbelok lebih cepat dan persentase yang lebih rendah membuat robot berbelok lebih lambat. Untuk RPM, batasnya diubah oleh rasio gigi dari sistem penggerak.

Setiap proyek dimulai dengan robot yang berputar dengan kecepatan 50% secara default.

Catatan: Kecepatan yang lebih tinggi membuat robot berbelok lebih cepat, tetapi mungkin kurang presisi. Kecepatan yang lebih rendah membuat robot berbelok lebih lambat, tetapi bisa lebih presisi.

atur kecepatan belok ke (50) [% v]

Parameter

Keterangan

kecepatan

Kecepatan untuk berbelok dari 0% hingga 100% saat menggunakan velocityUnits::pct, atau dari 0 hingga 120 rpm untuk rpm.

satuan

Satuan kecepatan:

  • % – persen
  • rpm – putaran per menit

Contoh

saat dimulai
[Turn at default velocity.]
belok [kanan v] sejauh (100) derajat ▶
tunggu (1) detik
[Turn slower.]
atur kecepatan belok ke (20) [% v]
belok [kanan v] sejauh (100) derajat ▶
tunggu (1) detik
[Turn faster.]
atur kecepatan belok ke (100) [% v]
belok [kanan v] sejauh (100) derajat ▶
tunggu (1) detik

set drive berhenti#

Blok tumpukan set drive stopping mengatur bagaimana robot akan berhenti bergerak: dengan mengerem, meluncur, atau berhenti.

atur penghentian kendarai ke [rem v]

Parameter

Keterangan

menghentikan perilaku

Cara robot berhenti:

  • rem — Berhenti seketika.
  • meluncur — Melambat hingga berhenti.
  • tahan — Berhenti seketika dan mempertahankan posisi roda.

Jika blok ini tidak digunakan, robot akan menggunakan rem saat berhenti.

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.

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.

Catatan: Blok ini hanya tersedia jika sistem penggerak dikonfigurasi dengan Sensor Inersia, Sensor GPS, atau Sensor Giroskop di jendela Perangkat.

atur arah kendarai ke (0) derajat

Parameter

Keterangan

menuju

Nilai haluan, dalam derajat, yang akan diatur untuk robot.

Contoh

saat dimulai
[Turn to the left.]
atur arah kendarai ke (90) derajat
belok ke arah (0) derajat ▶

atur rotasi penggerak#

Rotasi adalah seberapa jauh robot telah berputar, diukur dalam derajat. Pada awal proyek, nilai rotasi diatur ke 0 derajat. Blok tumpukan set drive rotation mengubah rotasi robot saat ini ke nilai baru.

Sebagai contoh, jika robot telah melakukan dua putaran penuh ke kanan, nilai rotasinya akan menjadi 720 derajat. Mengatur rotasi ke 0 derajat akan mengatur ulang rotasi tersebut dari 720 menjadi 0 derajat. Kemudian robot dapat berputar berdasarkan nilai rotasi yang baru tersebut.

Catatan: Blok ini hanya tersedia jika sistem penggerak dikonfigurasi dengan Sensor Inersia, Sensor GPS, atau Sensor Giroskop di jendela Perangkat.

atur rotasi kendarai ke (0) derajat

Parameter

Keterangan

rotasi

Nilai rotasi, dalam derajat, yang akan diatur untuk robot. Nilai ini dapat berupa bilangan bulat atau desimal.

Contoh

saat dimulai
[Spin counterclockwise two times.]
atur rotasi kendarai ke (720) derajat
belok ke rotasi (0) derajat ▶

Nilai-nilai#

kalibrasi sistem penggerak#

Blok tumpukan kalibrasi drivetrain mengkalibrasi Sensor Inersia, GPS, atau Gyro yang telah dikonfigurasi pada drivetrain. Semua blok selanjutnya akan menunggu hingga kalibrasi selesai sebelum dieksekusi. Kalibrasi adalah prosedur internal yang mengukur dan mengkompensasi noise dan drift sensor selama periode waktu tertentu. Selama waktu ini, sensor harus tetap diam sepenuhnya (yaitu, di permukaan yang stabil tanpa gerakan eksternal apa pun). Pergerakan selama kalibrasi akan menghasilkan hasil yang tidak akurat.

Catatan: Blok ini hanya tersedia jika sistem penggerak dikonfigurasi dengan Sensor Inersia, Sensor GPS, atau Sensor Giroskop di jendela Perangkat.

kalibrasi drivetrain

Parameter

Keterangan

Blok ini tidak memiliki parameter.

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 yang memiliki parameter dan jangan menunggu.

<kendarai selesai?>

Parameter

Keterangan

Blok ini tidak memiliki parameter.

penggeraknya sedang bergerak#

Blok Boolean drive is moving melaporkan apakah robot sedang bergerak. Ini dapat digunakan untuk mengontrol pengaturan waktu perilaku lain berdasarkan pergerakan robot.

  • Benar — Robot itu sedang bergerak.

  • Salah — Robot tersebut tidak bergerak.

Blok ini bekerja bersama dengan blok drivetrain yang memiliki parameter dan jangan menunggu.

<kendarai bergerak?>

Parameter

Keterangan

Blok ini tidak memiliki parameter.

arah berkendara#

Heading adalah arah yang dihadapi robot, diukur dalam derajat. Blok pelapor drive heading melaporkan heading tersebut dari 0 hingga 359,99 derajat.

Arah awal pergerakan robot adalah 0 derajat.

Catatan: Blok ini hanya tersedia jika sistem penggerak dikonfigurasi dengan Sensor Inersia, Sensor GPS, atau Sensor Giroskop di jendela Perangkat.

(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) di layar ◀ dan atur kursor ke baris berikutnya

rotasi penggerak#

Rotasi adalah seberapa jauh robot telah berputar, diukur dalam derajat. Pada awal proyek, nilai rotasi diatur ke 0 derajat. Blok pelapor drive rotation melaporkan rotasi robot saat ini.

Memutar ke kanan akan meningkatkan rotasi, dan memutar ke kiri akan mengurangi rotasi. Misalnya, melakukan dua putaran penuh ke kanan akan menghasilkan rotasi sebesar 720 derajat.

Catatan: Blok ini hanya tersedia jika sistem penggerak dikonfigurasi dengan Sensor Inersia, Sensor GPS, atau Sensor Giroskop di jendela Perangkat.

(rotasi kendarai dalam derajat)

Parameter

Keterangan

Blok ini tidak memiliki parameter.

Contoh

saat dimulai
[Display the rotation after turning.]
belok [kanan v] sejauh (450) derajat ▶
cetak (rotasi kendarai dalam derajat) di layar ◀ dan atur kursor ke baris berikutnya

kecepatan penggerak#

Blok pelapor kecepatan penggerak melaporkan seberapa cepat robot tersebut bergerak.

Nilai positif berarti robot bergerak maju. Nilai negatif berarti robot bergerak mundur.

(kecepatan kendarai dalam [% v])

Parameter

Keterangan

satuan

Satuan kecepatan:

  • %
  • rpm – putaran per menit

arus penggerak#

Blok pelapor arus penggerak melaporkan berapa banyak arus listrik yang digunakan oleh sistem penggerak, diukur dalam ampere. Arus adalah jumlah listrik yang mengalir melalui sistem penggerak.

Nilai arus yang lebih tinggi berarti sistem penggerak menggunakan lebih banyak arus listrik. Hal ini dapat terjadi ketika robot mendorong suatu objek atau mencoba bergerak saat terjebak.

Ini dapat digunakan untuk memeriksa apakah sistem penggerak mengalami kesulitan selama pergerakan. Jika arus tetap tinggi, sistem penggerak mungkin menjadi lebih panas atau menggunakan daya kurang efisien.

(arus kendarai dalam ampere)

Parameter

Keterangan

Blok ini tidak memiliki parameter.

daya penggerak#

Blok pelapor daya penggerak melaporkan berapa banyak daya yang digunakan oleh sistem penggerak, yang diukur dalam watt. Daya menunjukkan seberapa cepat sistem penggerak menggunakan energi.

Nilai daya yang lebih tinggi berarti sistem penggerak menggunakan energi lebih cepat. Hal ini dapat terjadi ketika robot mendorong suatu objek atau mencoba bergerak saat terjebak.

Ini dapat digunakan untuk membandingkan pergerakan atau memeriksa apakah sistem penggerak mengalami masalah. Jika daya tetap tinggi, sistem penggerak mungkin menjadi lebih panas atau menggunakan energi kurang efisien.

(daya kendarai dalam watt)

Parameter

Keterangan

Blok ini tidak memiliki parameter.

torsi penggerak#

Torsi menunjukkan seberapa kuat sistem penggerak dapat memutar, mendorong, atau menarik saat berputar.

Blok pelapor torsi penggerak melaporkan berapa banyak torsi yang digunakan oleh sistem penggerak, yang diukur dalam inci-pon (InLb) atau Newton-meter (Nm).

Nilai torsi yang lebih tinggi berarti sistem penggerak mendorong atau menarik lebih keras. Hal ini dapat terjadi ketika robot mendorong suatu objek atau mencoba bergerak saat terjebak.

Ini dapat digunakan untuk memeriksa apakah sistem penggerak (drivetrain) mengalami masalah atau untuk membandingkan seberapa besar dorongan yang dibutuhkan oleh gerakan yang berbeda.

(torsi kendarai dalam [InLb v])

Parameter

Keterangan

satuan

Satuan torsi:

  • InLb – inci-pon
  • Nm – Newton-meter

meningkatkan efisiensi#

Blok pelapor efisiensi penggerak melaporkan seberapa efisien sistem penggerak menggunakan daya, dalam persentase dari 0% hingga 100%.

Efisiensi menunjukkan seberapa banyak daya sistem penggerak yang digunakan untuk pergerakan. Nilai efisiensi yang lebih tinggi berarti lebih banyak daya sistem penggerak yang digunakan untuk bergerak. Nilai efisiensi yang lebih rendah dapat terjadi ketika sistem penggerak bekerja keras tetapi tidak banyak bergerak, seperti ketika robot terjebak atau mendorong suatu objek.

Ini dapat digunakan untuk membandingkan pergerakan atau memeriksa apakah sistem penggerak membuang daya alih-alih menggunakannya untuk pergerakan.

(efisiensi kendarai dalam %)

Parameter

Keterangan

Blok ini tidak memiliki parameter.

suhu penggerak#

Blok pelapor suhu penggerak melaporkan suhu sistem penggerak sebagai persentase dari 0% hingga 100%.

Suhu motor menunjukkan seberapa panas sistem penggerak. Suhu yang lebih tinggi berarti motor semakin panas saat bekerja. Motor harus tetap berada di bawah 55°C agar tetap bekerja dengan performa maksimal.

Jika motor terlalu panas, motor akan menurunkan arus maksimumnya untuk melindungi diri. Pada suhu 70°C, motor akan berhenti beroperasi hingga mendingin.

Ini dapat digunakan untuk memeriksa apakah sistem penggerak menjadi terlalu panas selama gerakan berulang, penggunaan jangka panjang, atau saat menekan suatu objek.

(suhu kendarai dalam %)

Parameter

Keterangan

Blok ini tidak memiliki parameter.