Pelajaran Teach
Robot Arduino Visual (1/4): pergerakan selamat yang pertama
Murid memprogram robot Arduino visual untuk bergerak dengan selamat, menguji mula dan berhenti, serta merekod bukti daripada robot jauh yang sebenar.
Log masuk dengan akaun pendidik untuk menyediakan sesi kelas. Pelajar menyertai dengan kod kelas.
Kali pertama menggunakan LabsLand? Cipta akaun guru anda
Hasil pembelajaran
Memprogram robot mudah alih sebenar menggunakan blok motor dan masa.
Menghubungkan kelajuan motor kiri dan kanan dengan gerakan ke hadapan, belokan dan berhenti.
Merekod bukti yang dapat diperhatikan daripada satu larian robot sebenar.
Pratonton aktiviti pelajar
Kandungan aktiviti
Pratonton sahaja. Dalam sesi kelas, pelajar boleh mengisi jawapan dan menyerahkan hasil kerja mereka kepada guru.
Sebelum menggerakkan robot
8 min
Ini ialah robot fizikal: program blok dimuat naik ke peranti dan lariannya diperhatikan melalui kamera. Dalam sesi pertama ini, matlamatnya ialah pergerakan yang singkat dan selamat.
Robot Arduino Visual pada trek
Kedudukan anda dalam kursus
Kursus Arduino Visual · Bahagian 2 daripada 2: robot · Sesi 1 daripada 4 (sesi 5 daripada 8 dalam keseluruhan siri).
Dalam Bahagian 1, anda memprogram papan Arduino yang tidak bergerak. Kini anda memprogram robot Arduino sebenar: idea blok yang sama, tetapi peranti ini bergerak. Robot ialah sistem yang mempunyai motor untuk bergerak, LED dan penderia yang dikawal oleh program. Jika anda belum mengikuti Bahagian 1, inilah perkara asas yang perlu diketahui:
- Program visual: anda mencantumkan blok dan bukannya menulis kod teks.
- Sahkan / kompil: memeriksa program untuk memastikan tiada ralat.
- Muat naik ke robot: memasukkan program ke dalam robot sebenar.
- Bukti: perkara yang benar-benar anda lihat melalui kamera, bukan sekadar perkara yang "sepatutnya berlaku".
Anda disarankan mengikuti Bahagian 1 (papan) dahulu, tetapi sesi ini juga boleh diikuti secara tersendiri.
Sebelum memprogram, kenal pasti fungsi setiap bahagian. Dalam pelajaran ini anda akan menggunakan motor dan LED pada robot fizikal, penderia garisan dan jaraknya, serta butang A/B/C yang muncul dalam antara muka web makmal.
Bahagian robot dalam antara muka makmal
Robot bermotor dua boleh bergerak ke hadapan, membelok atau berhenti bergantung pada kelajuan setiap roda. Dalam makmal ini anda akan membina program blok, mengesahkan program, memuat naiknya dan melihat robot sebenar melaksanakannya.
Hari ini anda akan menguji pergerakan singkat:
- Bergerak perlahan ke hadapan.
- Berhenti selepas setiap pergerakan.
- Membelok dengan menukar kelajuan kedua-dua roda.
- Merekod perkara yang benar-benar dilihat melalui kamera.
Ramalkan perkara yang akan dilakukan oleh robot jika kedua-dua motor ditetapkan kepada 150 selama setengah saat, kemudian kedua-duanya ditetapkan kepada 0. Jelaskan mengapa blok berhenti terakhir yang menetapkan kedua-dua motor kepada 0 penting.
Bina pergerakan pertama
22 min
Buka makmal Arduino Robot Visual.
Editor robot menyerupai editor dalam Bahagian 1 (papan): kategori blok berada di sebelah kiri, manakala butang Verify / compile (sahkan / kompil) dan Upload into robot (muat naik ke robot) berada di atas. Terdapat juga kategori khusus robot: Motors (motor), LEDs, Buttons (butang), Proximity (jarak) dan Line sensors (penderia garisan). Gelung utama ialah blok besar yang berulang tanpa henti (dalam Bahagian 1, namanya Arduino loop forever): letakkan di dalamnya segala tindakan yang mahu diulangi oleh robot.
Buka editor visual robot. Kategori berada di kiri; Verify/compile dan Upload to robot berada di atas.
Pilih First available robot (of any type of circuit) / Any circuit dan pastikan terdapat ruang lapang melalui kamera.
Cari dua bahagian blok Arduino ungu: Arduino run first berjalan sekali selepas muat naik/set semula; Arduino loop forever berulang.
Dalam Arduino run first, tetapkan kedua-dua motor kepada 0, kemudian tunggu 2000 milisaat supaya anda boleh melihat kamera sebelum robot bergerak.
Dalam bahagian yang sama, tetapkan kedua-duanya kepada 150, tunggu 500 milisaat, kemudian kembalikan kedua-duanya kepada 0.
Dalam Arduino loop forever, letakkan hanya blok yang menetapkan kedua-dua motor kepada 0. Jangan letakkan urutan pergerakan di situ.
Sahkan, muat naik dan perhatikan pergerakan singkat ke hadapan. Terus perhatikan sekurang-kurangnya 3 saat selepas itu: robot mesti kekal berhenti.
Muat naik baharu atau set semula memulakan satu percubaan baharu. Semak ruang sebelum mengulang. Jika kamera tidak menunjukkan pergerakan, catatkannya dan ulang hanya apabila kamera kelihatan.
Rujukan teks:
Arduino run first:
Change two motors speed: Left 0, Right 0
wait 2000 milliseconds
Change two motors speed: Left 150, Right 150
wait 500 milliseconds
Change two motors speed: Left 0, Right 0
Arduino loop forever:
Change two motors speed: Left 0, Right 0
Jika anda menambah mesej bersiri, gunakan dahulu Setup dengan Serial pada 9600, kemudian gunakan blok print dengan teks yang mahu direkodkan.
Jadual ini mesti mempunyai tiga baris pada akhir aktiviti: satu untuk maju dan berhenti, satu untuk Ujian Belok A dan satu untuk Ujian Belok B. Buat masa ini, selepas muat naik dan pemerhatian pertama, isi hanya baris pertama (Maju dan berhenti) dan biarkan dua baris lain untuk fasa belokan. Dalam setiap baris, tulis kelajuan motor kiri dan kanan, masa dalam milisaat, pergerakan yang dilihat dan sama ada robot berhenti pada akhir.
Julat 125–150 digunakan pada roda yang memacu; roda berhenti menggunakan 0. Lengkapkan baris pertama di sini dan dua baris belokan dalam fasa seterusnya.
| Ujian | Motor kiri | Motor kanan | Masa (ms) | Pergerakan yang diperhatikan | Berhenti pada akhir? |
|---|---|---|---|---|---|
Huraikan satu bukti khusus bahawa program anda dijalankan pada robot sebenar. Nyatakan perkara yang anda lihat melalui kamera dan apa-apa mesej bersiri yang digunakan.
Belokan terkawal
15 min
Uji dua belokan singkat. Gunakan kelajuan antara 125 hingga 150 supaya motor mempunyai daya yang mencukupi dan masa antara 300 hingga 700 ms. Ingat: kelajuan negatif membuat roda itu berputar ke belakang. Oleh itu, apabila satu roda bergerak ke hadapan dan satu lagi ke belakang, robot membelok hampir di tempat yang sama.
Ujian A:
Arduino run first:
Change two motors speed: Left 0, Right 0
wait 2000 milliseconds
Change two motors speed: Left 150, Right -150
wait 400 milliseconds
Change two motors speed: Left 0, Right 0
Arduino loop forever:
Change two motors speed: Left 0, Right 0
Ujian B:
Arduino run first:
Change two motors speed: Left 0, Right 0
wait 2000 milliseconds
Change two motors speed: Left 0, Right 150
wait 500 milliseconds
Change two motors speed: Left 0, Right 0
Arduino loop forever:
Change two motors speed: Left 0, Right 0
Selepas memerhati setiap belokan, kembali ke jadual sebelumnya dan isi satu baris untuk Ujian A: belok di tempat dan satu baris untuk Ujian B: lengkung lebih lebar. Jangan padam baris maju dan berhenti yang pertama.
Bandingkan kedua-dua belokan. Yang manakah membelok lebih banyak di tempat yang sama? Yang manakah lebih menyerupai lengkung? Gunakan pemerhatian anda, bukan teori sahaja.
Jika robot bergerak terlalu banyak atau terlalu sedikit, perkara manakah yang akan anda ubah dahulu: kelajuan atau masa? Berikan alasan.
Bukti akhir
10 min
Bukti pergerakan pertama
Hantar tangkap layar atau huraian program anda serta bukti daripada sekurang- kurangnya dua ujian: ujian maju dan berhenti serta satu ujian belokan. Pastikan jelas bahawa robot berakhir dengan kedua-dua motor ditetapkan kepada 0.
Terangkan sebab pergerakan bermasa diletakkan dalam Arduino run first dan arahan kelajuan sifar dalam Arduino loop forever. Apakah yang anda perhati dalam 3 saat selepas pergerakan tamat?
Jadikan pratonton ini satu sesi kelas sebenar
Teruskan ke LabsLand Teach untuk menggunakan pelajaran ini bersama pelajar dan menyemak akses akaun anda.
Kali pertama menggunakan LabsLand? Cipta akaun guru anda