Blok Khusus Robot#
Perkenalan#
Robot Hero, Axel, mencakup dua pilihan motor, Sensor Penglihatan AI, Sensor Optik, Sensor Rotasi, dan Sensor Sistem Penentuan Posisi Game (GPS).
Semua Blok VR VEXcode standar tersedia untuk digunakan di V5 24-25 High Stakes Playground.
Berikut adalah daftar semua Blok khusus Robot yang tersedia:
Sistem Penggerak – Menggerakkan dan membelokkan robot.
Tindakan
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
atur kecepatan penggerak — Memberi tahu robot seberapa cepat harus bergerak.
atur kecepatan putar — Memberi tahu robot seberapa cepat harus berputar.
atur arah penggerak — Mengubah arah robot saat ini ke arah baru.
atur rotasi penggerak — Mengubah rotasi robot saat ini ke rotasi baru.
set drive timeout — Mengatur berapa detik robot akan mencoba menyelesaikan suatu gerakan.
Nilai-nilai
pergerakan selesai — Melaporkan apakah robot telah selesai bergerak.
drive is moving — Melaporkan apakah robot sedang bergerak.
arah penggerak — Melaporkan arah penggerak robot saat ini dari 0 hingga 359,99 derajat.
rotasi penggerak — Melaporkan rotasi robot saat ini.
kecepatan mengemudi — Melaporkan seberapa cepat robot tersebut mengemudi.
Gerakan – Gerakkan dan lacak motor robot.
Tindakan
putar motor – Memutar motor maju atau mundur selamanya.
putar motor untuk – Memutar motor sejauh jarak tertentu dalam derajat atau putaran.
putar motor ke posisi – Memutar motor ke posisi tertentu.
hentikan motor – Menghentikan putaran motor.
Pengaturan
atur kecepatan motor – Memberi tahu motor seberapa cepat harus berputar.
atur waktu habis motor – Mengatur berapa lama motor akan mencoba menyelesaikan suatu gerakan.
atur posisi motor – Mengubah posisi motor saat ini ke nilai baru.
Nilai-nilai
motor sudah selesai – Melaporkan apakah motor sudah selesai bergerak.
motor sedang berputar – Melaporkan apakah motor sedang berputar.
posisi motor – Melaporkan posisi motor saat ini.
kecepatan motor – Melaporkan seberapa cepat motor berputar, dalam persentase dari -100% hingga 100%.
AI Vision – Tangkap dan analisis objek menggunakan Sensor AI Vision.
Tindakan
mendapatkan data objek – Mengambil data untuk tanda tangan tertentu, seperti Klasifikasi AI yang terdeteksi.
Pengaturan
set object item – Memilih objek tertentu dari daftar.
Nilai-nilai
objek ada – Mengembalikan apakah klasifikasi terdeteksi.
objek adalah – Mengembalikan nilai true jika klasifikasi terdeteksi.
jumlah objek – Mengembalikan jumlah objek yang terdeteksi.
properti objek – Mengembalikan detail seperti:
Penginderaan – Manfaatkan berbagai sensor robot.
Optik
Optik menemukan objek – Melaporkan apakah sensor mendeteksi objek dalam jangkauan.
Optik mendeteksi warna – Melaporkan apakah Sensor Optik mendeteksi warna tertentu.
Kecerahan Optik – Melaporkan kecerahan yang terdeteksi oleh Sensor Optik.
Warna optik – Melaporkan warna yang terdeteksi oleh Sensor Optik.
when Optical – Menjalankan tumpukan blok yang terpasang ketika Sensor Optik mendeteksi atau kehilangan objek.
Rotasi
atur posisi Sensor Rotasi – Mengatur posisi Sensor Rotasi saat ini ke nilai tertentu.
Sudut Sensor Rotasi – Mengembalikan sudut sensor saat ini antara 0 dan 359,99 derajat.
Posisi Sensor Rotasi – Mengembalikan posisi rotasi total dalam derajat atau putaran.
GPS
Posisi GPS – Mengembalikan posisi X atau Y dari Sensor GPS.
Arah GPS – Mengembalikan arah yang sedang dihadapi robot.
Contoh-contoh pada halaman ini menggunakan posisi awal Playground default.
Sistem penggerak#
Sistem penggerak mengontrol cara Robot VR bergerak dan berbelok. Sistem penggerak dapat bergerak maju atau mundur, berbelok ke kiri atau kanan, berbelok ke arah tertentu, dan mengikuti arah rotasinya.
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 :: hat events
[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 :: hat events
[Drive forward.]
kendarai [maju v] sejauh (500) [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 :: hat events
[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 :: hat events
[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.
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 :: hat events
[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.
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 :: hat events
[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 :: hat events
[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.
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 berkendara berkisar dari 0% hingga 100%. |
satuan |
Satuan kecepatan: *% |
Contoh
saat dimulai :: hat events
[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.
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 berkisar dari 0% hingga 100%. |
satuan |
Satuan kecepatan: *% |
Contoh
saat dimulai :: hat events
[Turn at default velocity.]
belok [kanan v] sejauh (100) derajat ▶
tunggu (1) detik
[Turn slower.]
atur kecepatan belok ke (20)%
belok [kanan v] sejauh (100) derajat ▶
tunggu (1) detik
[Turn faster.]
atur kecepatan belok ke (100)%
belok [kanan v] sejauh (100) derajat ▶
tunggu (1) detik
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. |
Contoh
saat dimulai :: hat events
[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.
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 :: hat events
[Spin counterclockwise two times.]
atur rotasi kendarai ke (720) derajat
belok ke rotasi (0) derajat ▶
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 :: hat events
[Drive forward for 1 second, then turn.]
atur batas waktu kendarai ke (1) detik
kendarai [maju v] sejauh (25) [inci v] ▶
belok [kanan v] sejauh (90) 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 yang memiliki parameter dan jangan menunggu.
<kendarai selesai?>
Parameter |
Keterangan |
|---|---|
Blok ini tidak memiliki parameter. |
Contoh
saat dimulai :: hat events
[Start spinning when the drive is complete.]
kendarai [maju v] sejauh (200) [mm v] ◀ dan jangan tunggu
tunggu sampai <kendarai selesai?>
belok [kanan v] sejauh (360) derajat ▶
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. |
Contoh
saat dimulai :: hat events
[Print that the robot is moving while it is still driving.]
kendarai [maju v] sejauh (200) [mm v] ◀ dan jangan tunggu
selagi <kendarai bergerak?>
cetak [Still Moving...] ▶
tunggu (0.1) detik
bersihkan layar
selesai
cetak [Done!] ▶
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.
(arah kendarai dalam derajat)
Parameter |
Keterangan |
|---|---|
Blok ini tidak memiliki parameter. |
Contoh
saat dimulai :: hat events
[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.
(rotasi kendarai dalam derajat)
Parameter |
Keterangan |
|---|---|
Blok ini tidak memiliki parameter. |
Contoh
saat dimulai :: hat events
[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.
(kecepatan kendarai dalam [% v])
Parameter |
Keterangan |
|---|---|
satuan |
Satuan kecepatan: *% |
Contoh
saat dimulai :: hat events
[Display the velocity after driving.]
kendarai [maju v] sejauh (200) [mm v] ▶
cetak (kecepatan kendarai dalam [% v]) di layar ◀ dan atur kursor ke baris berikutnya
Gerakan#
Axel menggunakan motor lengan untuk mengangkat dan menurunkan lengan sehingga Cincin dapat diposisikan di dekat tiang. Motor pendorong menggerakkan pendorong ke bawah lengan untuk mendorong Cincin dari lengan dan ke tiang.
Setiap motor memiliki pilihan arahnya sendiri. Nama-nama arah tersebut menjelaskan bagaimana motor itu bergerak pada Axel.
Tindakan#
motor putar#
Blok tumpukan spin motor memutar motor ke salah satu dari dua arah selamanya. Motor akan terus berputar sampai diberi tindakan lain, seperti berputar ke arah yang berbeda atau berhenti.
putar [ArmMotor v] [naik v]
Parameter |
Keterangan |
|---|---|
motor |
Motor yang akan diputar: ArmMotor atau PusherMotor. |
arah |
Arah putaran motor:
|
Contoh
saat dimulai
[Lift the Arm before moving to a Mobile Goal.]
putar [ArmMotor v] [naik v]
tunggu (1) detik
hentikan [ArmMotor v]
putar motor untuk#
Blok spin motor for stack memutar motor sejauh jarak tertentu. Putaran tersebut relatif terhadap posisi motor saat ini. Proyek akan menunggu hingga motor selesai berputar sebelum blok berikutnya dalam stack dijalankan.
putar [ArmMotor v] [naik v] sejauh (90) [derajat v] ▶
Parameter |
Keterangan |
|---|---|
motor |
Motor yang akan diputar: ArmMotor atau PusherMotor. |
arah |
Arah putaran motor:
|
jarak |
Jarak putaran motor. Derajat menggunakan bilangan bulat. Putaran dapat menggunakan bilangan bulat atau desimal. |
satuan |
Satuan jarak: derajat atau putaran. |
dan jangan menunggu |
Pilih tanda panah ( ▶ ) untuk memperluas blok menjadi dan jangan menunggu, sehingga blok berikutnya dalam tumpukan akan segera dijalankan. |
Contoh
saat dimulai
[Lift the Arm.]
putar [ArmMotor v] [naik v] sejauh [200] [derajat v] ▶
Putar motor ke posisi yang diinginkan.#
Blok tumpukan putar motor ke posisi memutar motor ke posisi tertentu.
Posisi motor adalah seberapa jauh motor tersebut telah berputar, diukur dalam derajat atau putaran. Satu putaran sama dengan 360 derajat. Pada awal proyek, posisi motor diatur ke 0 derajat. Posisi motor juga dapat diatur menggunakan blok atur posisi motor.
Nilai posisi bersifat absolut. Ini berarti arah putaran bergantung pada posisi motor saat ini.
Sebagai contoh, jika motor mulai berputar pada sudut 0 derajat dan berputar hingga posisi 720 derajat, maka motor akan berputar maju dua putaran. Jika kemudian berputar hingga posisi 360 derajat, maka motor akan berputar mundur satu putaran, karena 360 kurang dari 720.
putar [ArmMotor v] ke posisi (90) [derajat v] ▶
Parameter |
Keterangan |
|---|---|
motor |
Motor yang akan diputar: ArmMotor atau PusherMotor. |
posisi |
Nilai posisi putaran motor. Derajat menggunakan bilangan bulat. Putaran dapat menggunakan bilangan bulat atau desimal. |
satuan |
Satuan posisi: derajat atau putaran. |
dan jangan menunggu |
Pilih tanda panah ( ▶ ) untuk memperluas blok menjadi dan jangan menunggu, sehingga blok berikutnya dalam tumpukan akan segera dijalankan. |
Contoh
saat dimulai
[Lift the Arm.]
putar [ArmMotor v] ke posisi [350] [derajat v] ▶
motor berhenti#
Blok tumpukan stop motor menghentikan motor yang dipilih.
hentikan [ArmMotor v]
Parameter |
Keterangan |
|---|---|
motor |
Motor yang akan dihentikan: ArmMotor atau PusherMotor. |
Contoh
saat dimulai
putar [ArmMotor v] [naik v]
tunggu (1) detik
hentikan [ArmMotor v]
Pengaturan#
mengatur kecepatan motorik#
Blok tumpukan set motor velocity memberi tahu motor seberapa cepat harus berputar. Persentase yang lebih tinggi membuat motor berputar lebih cepat dan persentase yang lebih rendah membuat motor berputar lebih lambat.
Setiap proyek dimulai dengan setiap motor berputar pada kecepatan 50% secara default.
Catatan: Kecepatan yang lebih tinggi membuat motor berputar lebih cepat, tetapi mungkin kurang presisi. Kecepatan yang lebih rendah membuat motor berputar lebih lambat, tetapi bisa lebih presisi.
atur kecepatan [ArmMotor v] ke [50] [% v]
Parameter |
Keterangan |
|---|---|
motor |
Motor yang akan mengatur kecepatan: ArmMotor atau PusherMotor. |
kecepatan |
Kecepatan putaran motor. Persen menggunakan bilangan bulat dari 0% hingga 100%. |
satuan |
Satuan kecepatan: *%. |
Contoh
saat dimulai
atur kecepatan [ArmMotor v] ke [100] [% v]
putar [ArmMotor v] [naik v] sejauh [200] [derajat v] ▶
atur waktu habis motor#
Blok tumpukan set motor timeout mengatur berapa lama motor akan mencoba menyelesaikan suatu gerakan. Jika motor tidak dapat menyelesaikannya dalam waktu tersebut, motor akan berhenti mencoba dan beralih ke blok berikutnya dalam tumpukan. Ini mencegah motor macet pada suatu gerakan.
atur batas waktu [ArmMotor v] ke [1] detik
Parameter |
Keterangan |
|---|---|
motor |
Motor yang akan diatur waktu habisnya: ArmMotor atau PusherMotor. |
waktu |
Jumlah detik yang dapat dicoba oleh motor untuk menyelesaikan suatu gerakan. Ini bisa berupa bilangan bulat atau desimal. |
Contoh
saat dimulai
atur batas waktu [ArmMotor v] ke [1] detik
putar [ArmMotor v] [naik v] sejauh [5] [putaran v] ▶
Posisi#
posisi motor#
Posisi motor adalah seberapa jauh motor tersebut telah berputar, diukur dalam derajat atau putaran. Satu putaran sama dengan 360 derajat. Blok pelapor posisi motor melaporkan posisi motor saat ini.
Pada awal proyek, posisi motor diatur ke 0 derajat. Jika motor berputar satu putaran penuh ke depan, posisinya akan menjadi 360 derajat atau 1 putaran. Jika motor berputar ke arah lain, posisinya akan negatif.
(posisi [ArmMotor v] dalam [derajat v])
Parameter |
Keterangan |
|---|---|
motor |
Motor yang akan melaporkan posisi: ArmMotor atau PusherMotor. |
satuan |
Satuan untuk melaporkan posisi motor adalah: derajat atau putaran. |
atur posisi motor#
Posisi motor adalah seberapa jauh motor telah berputar, diukur dalam derajat atau putaran. Satu putaran sama dengan 360 derajat. Blok tumpukan atur posisi motor mengubah posisi motor saat ini ke nilai baru.
Sebagai contoh, jika sebuah motor telah berputar hingga 180 derajat, mengatur posisi ke 0 derajat akan mengatur ulang posisi tersebut dari 180 menjadi 0 derajat. Kemudian motor dapat berputar ke posisi berdasarkan nilai baru tersebut.
atur posisi [ArmMotor v] ke (0) [derajat v]
Parameter |
Keterangan |
|---|---|
motor |
Motor untuk mengatur posisi: ArmMotor atau PusherMotor. |
posisi |
Nilai posisi yang akan diatur untuk motor. Derajat menggunakan bilangan bulat. Putaran dapat menggunakan bilangan bulat atau desimal. |
satuan |
Satuan posisi: derajat atau putaran. |
Nilai-nilai#
mesin sudah selesai#
Blok Boolean motor is done melaporkan apakah motor telah selesai bergerak. Ini dapat digunakan untuk mengontrol pengaturan waktu perilaku lain berdasarkan pergerakan motor.
Benar — Motor sudah berhenti bergerak.
Salah — Motor masih berputar.
Blok ini bekerja bersama dengan blok Gerak berikut yang memiliki parameter dan jangan menunggu: putar motor selama dan putar motor ke posisi.
<[ArmMotor v] selesai?>
Parameter |
Keterangan |
|---|---|
motor |
Motor yang melaporkan apakah pergerakannya telah selesai: ArmMotor atau PusherMotor. |
motor berputar#
Blok Boolean motor sedang berputar melaporkan apakah motor sedang berputar. Ini dapat digunakan untuk mengontrol pengaturan waktu perilaku lain berdasarkan pergerakan motor.
Benar — Motornya berputar.
Salah — Motor tidak berputar.
Blok ini bekerja bersama dengan blok Gerak berikut yang memiliki parameter dan jangan menunggu: putar motor selama dan putar motor ke posisi.
<[ArmMotor v] sedang berputar?>
Parameter |
Keterangan |
|---|---|
motor |
Motor yang akan melaporkan apakah sedang berputar: ArmMotor atau PusherMotor. |
kecepatan motorik#
Blok pelapor kecepatan motor melaporkan seberapa cepat motor berputar, sebagai persentase dari -100% hingga 100%.
(kecepatan [ArmMotor v] dalam [% v] :: custom-motion)
Parameter |
Keterangan |
|---|---|
motor |
Motor yang akan melaporkan kecepatan: ArmMotor atau PusherMotor. |
satuan |
Satuan yang digunakan untuk melaporkan kecepatan motorik adalah: *%. |
Visi AI#
Tindakan#
mendapatkan data objek#
Blok get object data menyaring data dari frame AI Vision Sensor ke satu tanda tangan tunggal — deskripsi tersimpan dari sesuatu yang dapat dikenali oleh sensor, seperti elemen permainan di lapangan.
Dataset ini menyimpan objek yang diurutkan dari yang terbesar hingga terkecil berdasarkan lebar, dimulai dari indeks 0. Properti setiap objek dapat diakses menggunakan blok Properti objek AI Vision. Dataset kosong akan dikembalikan jika tidak ada objek yang cocok yang terdeteksi.
dapatkan data [Klasifikasi AI v] dari [AIVision v]
Parameter |
Keterangan |
|---|---|
tanda tangan |
Memfilter dataset agar hanya menyertakan data dari tanda tangan yang diberikan. Tanda tangan yang tersedia adalah:
|
Contoh
saat dimulai
[Spin the Arm Motor up so that the AI Vision Sensor is not blocked.]
putar [ArmMotor v] [naik v] sejauh [270] [derajat v] ▶
dapatkan data [Klasifikasi AI v] dari [AIVision v]
[Check if any AI Classifications were detected in the last snapshot.]
jika <objek [AIVision v] ada?> maka
[Only if an AI Classification is detected, then print data from the largest AI Classification.]
cetak [Largest object's width:] ▶
cetak (objek [AIVision v] [lebar v]) ◀ dan atur kursor ke baris berikutnya
selesai
Pengaturan#
atur item objek#
Blok set object item menentukan item mana dalam dataset yang akan digunakan.
atur item objek [AIVision v] ke [1]
Parameter |
Keterangan |
|---|---|
barang |
Nomor item dalam dataset yang akan digunakan. |
Contoh
saat dimulai
[Spin the Arm Motor up so that the AI Vision Sensor is not blocked.]
putar [ArmMotor v] [naik v] sejauh [270] [derajat v] ▶
dapatkan data [Klasifikasi AI v] dari [AIVision v]
[Check if any AI Classifications were detected in the last snapshot.]
jika <objek [AIVision v] ada?> maka
[If any AI Classification is detected, check if any of them are a Mobile Goal.]
jika <objek [AIVision v] adalah [MobileGoal v]?> maka
cetak [Mobile Goal is detected.] ▶
lainnya
cetak [Mobile Goal is not detected.] ▶
selesai
selesai
Nilai-nilai#
objek ada#
Blok objek ada mengembalikan nilai Boolean yang menunjukkan apakah ada objek yang terdeteksi dalam dataset.
Benar – Dataset tersebut mencakup objek yang terdeteksi.
Salah – Dataset ini tidak mencakup objek yang terdeteksi.
<objek [AIVision v] ada?>
Parameter |
Keterangan |
|---|---|
Blok ini tidak memiliki parameter. |
Contoh
saat dimulai
[Spin the Arm Motor up so that the AI Vision Sensor is not blocked.]
putar [ArmMotor v] [naik v] sejauh [270] [derajat v] ▶
dapatkan data [Klasifikasi AI v] dari [AIVision v]
[Check if any AI Classifications were detected in the last snapshot.]
jika <objek [AIVision v] ada?> maka
cetak (jumlah objek [AIVision v]) ◀ dan atur kursor ke baris berikutnya
selesai
objek adalah#
Blok AI Vision object is mengembalikan nilai Boolean yang menunjukkan apakah objek yang terdeteksi sesuai dengan klasifikasi tertentu.
Benar – Item dalam dataset adalah objek spesifik tersebut.
Salah – Item dalam dataset bukanlah objek spesifik tersebut.
<objek [AIVision v] adalah [MobileGoal v]?>
Parameter |
Keterangan |
|---|---|
obyek |
Objek mana yang harus dibandingkan dengan item ini:
|
Contoh
saat dimulai
[Spin the Arm Motor up so that the AI Vision Sensor is not blocked.]
putar [ArmMotor v] [naik v] sejauh [270] [derajat v] ▶
dapatkan data [Klasifikasi AI v] dari [AIVision v]
[Check if any AI Classifications were detected in the last snapshot.]
jika <objek [AIVision v] ada?> maka
[If any AI Classification is detected, check if any of them are a Mobile Goal.]
jika <objek [AIVision v] adalah [MobileGoal v]?> maka
cetak [Mobile Goal is detected.] ▶
lainnya
cetak [Mobile Goal is not detected.] ▶
selesai
selesai
jumlah objek#
Blok object count mengembalikan jumlah objek yang terdeteksi dalam dataset sebagai bilangan bulat.
(jumlah objek [AIVision])
Parameter |
Keterangan |
|---|---|
Blok ini tidak memiliki parameter. |
Contoh
saat dimulai
[Spin the Arm Motor up so that the AI Vision Sensor is not blocked.]
putar [ArmMotor v] [naik v] sejauh [270] [derajat v] ▶
dapatkan data [Klasifikasi AI v] dari [AIVision v]
[Check if any AI Classifications were detected in the last snapshot.]
jika <objek [AIVision v] ada?> maka
cetak (jumlah objek [AIVision v]) ◀ dan atur kursor ke baris berikutnya
selesai
properti objek#
Terdapat enam properti yang disertakan dengan setiap objek (ditunjukkan di bawah) yang disimpan setelah blok get object data digunakan.
(objek [AIVision v] [lebar v])
Semua nilai properti menjelaskan posisi dan ukuran objek yang terdeteksi dalam tampilan Sensor Visi AI pada saat blok mendapatkan data objek digunakan. Nilai-nilai ini diukur dalam piksel, berdasarkan resolusi sensor 320 x 240 piksel.
Parameter |
Keterangan |
|---|---|
milik |
Properti objek yang terdeteksi mana yang akan digunakan: |
lebar#
Properti width melaporkan lebar objek yang terdeteksi dalam piksel sebagai bilangan bulat dari 1 hingga 320.
(objek [AIVision v] [lebar v])
Contoh
saat dimulai
[Spin the Arm Motor up so that the AI Vision Sensor is not blocked.]
putar [ArmMotor v] [naik v] sejauh [270] [derajat v] ▶
dapatkan data [Klasifikasi AI v] dari [AIVision v]
[Check if any AI Classifications were detected in the last snapshot.]
jika <objek [AIVision v] ada?> maka
[Only if an AI Classification is detected, then print data from the largest AI Classification.]
cetak [Largest object's width:] ▶
cetak (objek [AIVision v] [lebar v]) ◀ dan atur kursor ke baris berikutnya
selesai
tinggi#
Properti height melaporkan tinggi objek yang terdeteksi dalam piksel sebagai bilangan bulat dari 1 hingga 240.
(objek [AIVision v] [tinggi v])
pusatX#
Properti centerX melaporkan koordinat x dari pusat objek yang terdeteksi dalam piksel sebagai bilangan bulat dari 0 hingga 320.
(objek [AIVision v] [centerX v])
pusatY#
Properti centerY melaporkan koordinat y dari pusat objek yang terdeteksi dalam piksel sebagai bilangan bulat dari 0 hingga 240.
(objek [AIVision v] [centerY v])
asalX#
Properti originX melaporkan koordinat x dari sudut kiri atas kotak pembatas objek yang terdeteksi dalam piksel sebagai bilangan bulat dari 0 hingga 320.
(objek [AIVision v] [originX v])
asal#
Properti originY melaporkan koordinat y dari sudut kiri atas kotak pembatas objek yang terdeteksi dalam piksel sebagai bilangan bulat dari 0 hingga 240.
(objek [AIVision v] [originY v])
Penginderaan#
Optik#
Optik menemukan sebuah objek#
Blok Boolean Optical found an object melaporkan apakah Sensor Optik mendeteksi objek dalam jangkauan atau tidak.
Benar — Sensor Optik mendeteksi sebuah objek.
Salah — Sensor Optik tidak mendeteksi objek.
<[FrontOptical v] menemukan objek?>
Parameter |
Keterangan |
|---|---|
Blok ini tidak memiliki parameter. |
Optik mendeteksi warna#
Blok Boolean Optical detects color melaporkan apakah Sensor Optik mendeteksi warna tertentu, berdasarkan nilai hue yang terdeteksi.
Benar – Sensor mendeteksi warna yang ditentukan.
Salah – Sensor tidak mendeteksi warna yang ditentukan.
Catatan: Sensor Optik mencari rentang warna yang sesuai dengan warna yang ditentukan. Untuk mendeteksi rentang warna tertentu, lihat blok Warna optik.
<[FrontOptical v] mendeteksi [merah v]?>
Parameter |
Keterangan |
|---|---|
warna |
Warna apa yang harus dicari:
|
Kecerahan optik#
Blok pelapor Kecerahan optik melaporkan seberapa banyak cahaya yang dipantulkan kembali ke Sensor Optik, sebagai persentase dari 0% hingga 100%.
Persentase yang lebih tinggi berarti lebih banyak cahaya yang dipantulkan kembali ke Sensor Optik. Persentase yang lebih rendah berarti lebih sedikit cahaya yang dipantulkan kembali.
(kecerahan [FrontOptical v] dalam %)
Parameter |
Keterangan |
|---|---|
Blok ini tidak memiliki parameter. |
Warna optik#
Blok pelapor Warna optik melaporkan warna yang terdeteksi oleh Sensor Optik sebagai angka dari 0 hingga 359 derajat.
Hue adalah cara untuk mendeskripsikan warna menggunakan angka-angka di sekitar roda warna.

(rona [FrontOptical v] dalam derajat)
Parameter |
Keterangan |
|---|---|
Blok ini tidak memiliki parameter. |
saat Optik#
Blok topi when Optical menjalankan tumpukan blok yang terhubung setiap kali Sensor Optik mendeteksi atau kehilangan objek.
saat [FrontOptical v] [mendeteksi v] objek :: hat events
Parameter |
Keterangan |
|---|---|
negara |
Kapan tumpukan blok yang terlampir akan dijalankan: mendeteksi dijalankan ketika objek yang tidak terdeteksi menjadi terdeteksi, sedangkan kehilangan dijalankan ketika objek yang terdeteksi tidak lagi terdeteksi. |
Rotasi#
Atur posisi Sensor Rotasi#
Blok set Rotation Sensor position mengatur posisi Rotation Sensor saat ini ke suatu nilai dalam derajat.
atur posisi [PusherRotation v] ke [0] derajat
Parameter |
Keterangan |
|---|---|
posisi |
Posisi untuk mengatur Sensor Rotasi. |
Contoh
saat dimulai
[Make lower Pusher position the new 0 degrees rotation position.]
putar [PusherMotor v] [lebih rendah v] sejauh [270] [derajat v] ▶
atur posisi [PusherRotation v] ke [0] derajat
Sudut Sensor Rotasi#
Blok Sudut Sensor Rotasi mengembalikan sudut sensor saat ini antara 0 dan 359,99 derajat.
(sudut [PusherRotation v] dalam derajat)
Parameter |
Keterangan |
|---|---|
Blok ini tidak memiliki parameter. |
Contoh
saat dimulai
[Make lower Pusher position the new 0 degrees rotation position.]
putar [PusherMotor v] [lebih rendah v] sejauh [270] [derajat v] ▶
cetak (sudut [PusherRotation v] dalam derajat) ▶
Posisi Sensor Rotasi#
Blok Posisi Sensor Rotasi mengembalikan posisi rotasi total dalam derajat atau putaran.
(posisi [PusherRotation v] dalam [derajat v] :: custom-sensing)
Parameter |
Keterangan |
|---|---|
satuan |
Satuan rotasi: derajat atau putaran. |
Contoh
saat dimulai
[Make lower Pusher position the new 0 degrees rotation position.]
putar [PusherMotor v] [lebih rendah v] sejauh [270] [derajat v] ▶
cetak (posisi [PusherRotation v] dalam [derajat v] :: custom-sensing) ▶
GPS#
Posisi GPS#
Blok Posisi GPS mengembalikan offset posisi titik referensi putar robot dari tengah lapangan dengan Sensor GPS (Game Positioning System™).
(posisi [GPS v] [X v] dalam [mm v])
Parameter |
Keterangan |
|---|---|
sumbu |
Sumbu mana yang akan dilaporkan:
|
satuan |
Satuan untuk menyatakan posisi: mm atau inci |
Arah GPS#
Blok Arah GPS mengembalikan arah yang saat ini dihadapi robot berdasarkan pembacaan Sensor GPS (Game Positioning System™) dari Kode Lapangan GPS VEX dari 0,00 hingga 359,99 derajat.
(arah [GPS v] dalam derajat)
Parameter |
Keterangan |
|---|---|
Blok ini tidak memiliki parameter. |