Teach Pelajaran dengan makmal jarak jauh

Pelajaran Teach

Pengaturcaraan visual dengan Arduino sebenar (4/4): pengawal mini

Murid menggabungkan input, keputusan dan output dalam pengaturcaraan visual untuk membina pengawal mini serta mendokumenkan bukti ujian pada papan Arduino sebenar.

  • Papan Arduino (visual)
  • 60 min
  • Sekolah menengah rendah / Tingkatan 2–3
  • Bahasa Melayu
  • Sistem terbenam

Log masuk dengan akaun pendidik untuk menyediakan sesi kelas. Pelajar menyertai dengan kod kelas.

Rajah blok visual: di dalam gelung Arduino selama-lamanya terdapat syarat jika bacaan pin analog A0 lebih besar atau sama dengan nilai ambang; dalam lakukan, Tetapkan LED terbina dalam kepada HIGH; dalam jika tidak, Tetapkan LED terbina dalam kepada HIGH, Tunggu 400 milisaat, Tetapkan LED terbina dalam kepada LOW, kemudian Tunggu 400 milisaat.
Papan Arduino (visual) · Butiran makmal

Hasil pembelajaran

  • Mereka bentuk pengawal mini dengan input, keputusan dan output.

  • Menguji program dengan dua keadaan yang ditetapkan.

  • Menerangkan tingkah laku program dan satu penambahbaikan yang munasabah.

Pratonton aktiviti pelajar

Kandungan aktiviti

Pratonton sahaja. Dalam sesi kelas, pelajar boleh mengisi jawapan dan menyerahkan hasil kerja mereka kepada guru.

1

Pilih cabaran

10 min

Pengawal mini ialah program yang membaca input, membuat keputusan dan menghasilkan output, kemudian mengulang proses itu dalam gelung. Pilih satu daripada dua cabaran asas berikut (kedua-duanya menggunakan LED terbina dalam dan tidak memerlukan pendawaian):

Dalam projek ini, Arduino run first digunakan untuk persediaan yang hanya berlaku sekali. Bahagian utama (membaca input, membuat keputusan dan bertindak) diletakkan dalam Arduino loop forever kerana pengawal perlu terus menyemak input.

  • Penunjuk nilai ambang: baca potensiometer; jika bacaannya melepasi nilai ambang, LED kekal menyala. Jika tidak, LED berkelip perlahan.
  • Amaran dua mod: baca butang; jika ditekan, LED berkelip pantas. Jika tidak, LED berkelip perlahan.

Aktiviti lanjutan pilihan (hanya jika guru mengesahkan perkakasan): gunakan LED luaran sebagai lampu isyarat, atau motor servo dengan dua kedudukan. Aktiviti ini tidak diwajibkan.

Cabaran manakah yang anda pilih? Nyatakan input dan output yang akan anda gunakan.

Isi jadual sebelum mula membina. Gunakan hanya satu baris untuk reka bentuk asas anda dan biarkan baris tambahan kosong. Dalam baris itu, nyatakan input yang akan dibaca, keputusan atau nilai ambang yang akan digunakan oleh program, output yang akan diperhatikan, dan cara anda akan mengetahui bahawa program berfungsi.

Matlamat Input Keputusan atau nilai ambang Output Cara mengetahui program berfungsi
2

Bina versi pertama

22 min

Bina versi pertama yang ringkas. Jangan cuba menjadikannya sempurna pada percubaan pertama. Program mesti mengandungi satu bacaan input, satu keputusan if / else, satu output yang dapat diperhatikan dan arahan tunggu jika tingkah laku berulang terlalu pantas.

  1. Buka arduino-visual-board.

  2. Bina program dengan blok di dalam Arduino loop forever.

  3. Tekan Verify / compile. Betulkan sebarang ralat yang muncul.

  4. Tekan Upload into device.

  5. Uji dua keadaan: satu yang mengaktifkan satu cabang keputusan dan satu lagi yang mengaktifkan cabang yang lain.

Contoh bagi cabaran "Penunjuk nilai ambang" (menyala tetap apabila melebihi nilai ambang, berkelip perlahan apabila di bawahnya):

Rajah blok visual: di dalam gelung Arduino selama-lamanya terdapat syarat jika bacaan pin analog A0 lebih besar atau sama dengan nilai ambang; dalam lakukan, Tetapkan LED terbina dalam kepada HIGH; dalam jika tidak, Tetapkan LED terbina dalam kepada HIGH, Tunggu 400 milisaat, Tetapkan LED terbina dalam kepada LOW, kemudian Tunggu 400 milisaat.

Rajah rujukan bagi cabaran Penunjuk nilai ambang. LED menyala tetap apabila bacaan melebihi nilai ambang dan berkelip perlahan apabila bacaan di bawahnya.

Arduino loop forever:
   if  [read analog pin# [A0]]  [≥]  [threshold]
   do:
      [set built-in LED] [HIGH]        # melebihi nilai ambang: menyala tetap
   else:
      # di bawah nilai ambang: berkelip perlahan
      [set built-in LED] [HIGH]
      [wait] 400 milliseconds
      [set built-in LED] [LOW]
      [wait] 400 milliseconds

Huraikan hasil versi pertama. Sertakan sekurang-kurangnya dua ujian, input bagi setiap ujian dan tindakan LED yang anda perhatikan.

3

Perbaik satu perkara

15 min

Pilih satu penambahbaikan kecil dan gunakannya:

  • Laraskan nilai ambang supaya pertukaran berlaku pada kedudukan yang anda mahu.
  • Ubah tempoh tunggu supaya kelipan lebih mudah dilihat.
  • Gunakan blok repeat N times supaya anda tidak perlu menyalin blok yang sama.
  • Jadikan kedua-dua mod lebih mudah dibezakan.

Apakah penambahbaikan yang anda lakukan? Mengapakah penambahbaikan itu diperlukan? Apakah bukti yang menunjukkan bahawa program telah bertambah baik?

4

Bentangkan pengawal

13 min

Ringkasan pengawal mini

Serahkan penerangan ringkas (teks atau tangkap layar) yang mengandungi:

  1. Nama pengawal mini.
  2. Input yang digunakan.
  3. Keputusan utama (dan nilai ambang, jika ada).
  4. Output yang dapat diperhatikan.
  5. Dua ujian dan hasilnya.
  6. Satu penambahbaikan yang dilaksanakan dan diuji semula, berserta hasil sebelum dan selepasnya.

Apakah yang anda pelajari tentang memprogram sistem sebenar yang berbeza daripada memprogram pada skrin sahaja? Fikirkan perbezaan antara "program sepatutnya berfungsi" dengan "saya telah memerhatikan program berfungsi".

Jadikan pratonton ini satu sesi kelas sebenar

Teruskan ke LabsLand Teach untuk menggunakan pelajaran ini bersama pelajar dan menyemak akses akaun anda.