Pengaturcaraan PikaBot menggunakan mBlock Ditulis oleh Abd Rahim bin Kasiman & Cheryl Ng | Ilustrasi oleh Suhana Oazmi 1
Pengaturcaraan PIKABOT menggunakan mBlock Ditulis oleh Abd Rahim bin Kasiman Cheryl Ng Ilustrasi oleh Suhana Oazmi Julai 2023 (v1.0) Diterbitkan oleh
Hak cipta @ 2023 Cytron Technologies Hak cipta terpelihara. Sekiranya ada sebarang soalan/pembetulan/cadangan penambahbaikan, sila hubungi cheryl@cytron.io. Diterbitkan oleh Cytron Technologies Sdn Bhd No 1, Lorong Industri Impian 1, Taman Industri Impian, 14000 Bukit Mertajam, Pulau Pinang, Malaysia. Tel: +604-5480668 Dapatkan kit dari
ISI KANDUNGAN Apakah PikaBot? 01 Kandungan PikaBot 02 Membina PikaBot 04 Pendawaian PikaBot 05 Skematik PikaBot 07 Elemen Sistem Robotik 10 Proses Rekabentuk PikaBot 14 Tetapan Perisian 17 Menguji motor DC PikaBot 24 Projek 1: Menggerakkan PikaBot 26 Asas Gerakan PikaBot 28 Case Study 1: Gerakan Segi Empat Sama 35 Case Study 2: Gerakan Hexagon 39 Case Study 3: Gerakan Bulatan 42 Membina Function (My Blocks) 43
ISI KANDUNGAN Projek 2: Ada objek, HENTI! 48 Jenis-jenis Suis 50 Suis Selak / Bukan Selak 51 Membaca Suis 52 Membaca Ultrasonik 56 Projek 2: Gabungan Ultrasonik dan motor DC 61 Projek 3: Garisan Hitam atau Putih? 67 Kalibrasi pengesan IR 69 Asas Kawalan Line Follower 71 Pengesan IR 72 Projek 3: Gabungan pengesan IR dan motor DC 73 Projek 4: Muzik ON 81 Asas Not Muzik 83 Projek 4: Gabungan push button dan buzzer 84
Apakah ? adalah sebuah 'mobile robot' yang berupaya untuk bergerak mengikut garisan dan mengesan objek di hadapan menggunakan pengesan ultrasonik. Ia menggunakan mikro pengawal dan boleh diaturcara dengan pelbagai platform yang sesuai seperti Arduino IDE, mBlock, ArduinoDroid, MAKE dan pelbagai lagi. Klik utk ke sesawang Klik utk Buku Panduan 1 6
Kandungan .
2 7
Kandungan .
3 8
Membina . Klik atau imbas utk panduan membina 1 9
Pendawaian . mempunyai pendawaian yang ditutupi oleh struktur kotak dan sentiasa kelihatan kemas dari luarannya. Sewaktu membuat pendawaian, pelajar dinasihatkan untuk: Memastikan pendawaian kemas dan tersusun rapi. Wayar dimasukkan sepenuhnya kepada terminal sambungan. Setelah selesai, dinasihatkan untuk mengikat wayar menggunakan cable tie untuk mengelakkan pendawaian longgar dan bergoyang. Gunakan alatan tangan yang sesuai untuk pendawaian seperti pemutar skru, dan playar untuk memotong cable tie. 6.5.3 Menjelaskan pemasangan perkakasan pada reka bentuk sebuah robot. * 6.5.8 Membina produk dan penyambungan berdasarkan lakaran menggunakan peralatan yang sesuai 5 10
Pendawaian . 6.5.3 Menjelaskan pemasangan perkakasan pada reka bentuk sebuah robot. * 6.5.8 Membina produk dan penyambungan berdasarkan lakaran menggunakan peralatan yang sesuai 6 11
Skematik . 6.5.3 Menjelaskan pemasangan perkakasan pada reka bentuk sebuah robot. * 6.5.8 Membina produk dan penyambungan berdasarkan lakaran menggunakan peralatan yang sesuai 7 12
Gambarajah . 6.5.3 Menjelaskan pemasangan perkakasan pada reka bentuk sebuah robot. * 6.5.8 Membina produk dan penyambungan berdasarkan lakaran menggunakan peralatan yang sesuai 8 13
Struktur . Buzzer (D8) Butang tekan (D2) Suis toggle bagi bekalan kuasa Motor Kiri Motor Kanan Sensor Ultrasonik Trig (D5), Echo (D4) M1A=D11 M2A=D9 M1B=D10 M2B=D3 Sensor IR Kanan (A1) Sensor IR Kiri (A0) 6.5.3 Menjelaskan pemasangan perkakasan pada reka bentuk sebuah robot. * 6.5.8 Membina produk dan penyambungan berdasarkan lakaran menggunakan peralatan yang sesuai 9 14
Elemen Sistem Robotik . Merujuk gambarajah di atas, PIKABOT mempunyai semua elemen-elemen yang diperlukan untuk dikategorikan sebagai sebuah robot automatik. Mari kita petakan Elemen Sistem Robotik dengan PikaBot. . 10 15 6.5.1 Menyatakan elemen sistem robotik
Elemen Sistem Robotik . No Elemen Sistem Robotik 1 Kawalan 2 Pengesan (sensor) 2 unit pengesan IR & Ultrasonik 3 Kuasa Sel kering 6V 4 Pergerakan Motor DC 11 16 6.5.1 Menyatakan elemen sistem robotik
Elemen Sistem Robotik . 1. Elemen Kawalan: memproses bacaan pengesan dan memberikan tindak balas melalui pergerakan tayar dan bunyi. Elemen kawalan yang digunakan adalah dari papan . Pendekatan pengaturcaraan yang digunakan dalam buku ini adalah mBlock. 2. Elemen Pengesan: Antara elemen pengesan yang digunakan oleh adalah pengesan IR dan pengesan ultrasonik. 12 17 6.5.2 Menghuraikan elemen sistem robotik yang terdapat pada robot.
Elemen Sistem Robotik . 3. Elemen Kuasa: menggunakan bateri jenis sel kering 1.5V untuk 4 unit bagi menghasilkan bekalan kuasa 6V arus terus. 4. Elemen Pergerakan: Elemen pergerakan bagi adalah 2 unit motor DC yang digerakkan secara mod pemacu berbeza (differential drive). Konfigurasi ini membolehkan setiap motor DC dipusingkan secara berbeza dari segi kelajuan dan arah. 13 18 6.5.2 Menghuraikan elemen sistem robotik yang terdapat pada robot.
Proses Rekabentuk . Dalam proses rekabentuk mekanikal, terdapat beberapa elemen yang perlu diambil kira sebelum membina produk tersebut. Antara elemen-elemen itu adalah: 1. Melakarkan idea 2. Menilai lakaran 3. Membuat lakaran yang ditambah baik PIKABOT juga melalui proses yang sama seperti dinyatakan di atas. Contoh rekabentuk awal PIKABOT dan hasil produk adalah seperti di muka surat sebelah. 14 19 6.5.4 Melakar reka bentuk produk yang mempunyai elemen sistem robotik.
Proses Rekabentuk . Lakaran awal PikaBot. Kawalan PID untuk balancing robot Lakaran PikaBot versi 2. Kawalan differential drive Lakaran PikaBot. penambahbaikan Kawalan differential Pengaturcaraan yang agak kompleks bagi pelajar sekolah Wayar yang berselirat Pengaturcaraan yang agak ringkas daripada balancing robot - Rekabentuk masih drive Rekabentuk tidak menampakkan wayar berselirat mempunyai wayar yang berselirat 6.5.4 Melakar reka bentuk produk yang mempunyai elemen sistem robotik. * 6.5.5 Menilai lakaran yang dipilih untuk membuat penambahbaikan. 15 20
Projek-projek untuk . Antara projek-projek yang boleh dibuat dengan : 1. Menggerakkan robot mengikut bentuk geometri tertentu. 2. Menggerakkan robot dan berhenti jika ada objek di hadapan. 3. Mengikut pergerakan objek sama ada mendekat atau menjauh. 4. Bergerak mengikut garisan hitam. 5. Membuat muzik menggunakan buzzer. 6. Dan pelbagai lagi.. 16 21
Tetapan Perisian 17
Memuat turun perisian mBlock 1. Bagi memuat turun perisian mBlock, klik pautan di bawah. Pelayar internet anda akan memuat turun perisian secara automatik. 2. Buat instalasi mBlock melalui fail aplikasi mBlock yang telah dimuat turun di bahagian folder Downloads. 3. Setelah selesai membuat instalasi, buka perisian mBlock dan paparan default adalah seperti dalam gambar rajah berikutnya. 18 23
Membuat tetapan Device Paparan ini adalah bagi sprite Panda. Pengguna perlu menambah Device bagi mengakses library Cytron PikaBot. . Klik butang untuk menambah device. 19 24
Membuat tetapan Device 1. Klik simbol pada library Cytron PikaBot untuk memuat turun library. 2. Klik ikon Cytron PikaBot dan klik OK. 3. Paparan pada mBlock anda kini mempunyai Device Cytron PikaBot. 20 25
Membuat tetapan Device Bagi Device Cytron PikaBot, ia akan menghasilkan 4 kategori iaitu Motor, Sensors, Music dan Serial. 21 26
1 Menguji kesambungan perkakasan 1. Pada bahagian Device, klik Connect seperti dalam gambar rajah kiri. 2. Setelah itu, tetingkap akan muncul untuk pemilihan port. 2 Nilai port untuk setiap komputer adalah berbeza. 3. Klik Connect dan perisian 3 mBlock telah disambungkan kepada PikaBot. . 22 27
1 Menguji kesambungan perkakasan 2 1. Setelah membuat sambungan kepada perisian mBlock, klik butang Upload untuk menguji kebolehan untuk memuat naik aturcara. 2. Anda kini sudah bersedia untuk menulis aturcara! 3 23 28
Menguji motor DC . Sebelum mengaturcara, pelajar harus menguji pergerakan tayar bagi mengelakkan sebarang kekeliruan sewaktu menguji pergerakan robot. Ikuti langkah-langkah yang disediakan untuk menguji arah pergerakan tayar. Carta alir di sebelah adalah panduan kepada pelajar untuk menguji arah pergerakan tayar. 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. 24 29
Menguji motor DC . 1) Menguji pergerakan motor secara manual. a) Hidupkan suis rocker pada PikaBot. b) Tekan butang pada motor driver mengikut gambarajah. c) Sekiranya motor berpusing pada arah berlawanan dari gambar rajah, terbalikkan polariti pendawaian motor pada motor driver. 25 30
26 31
Struktur . Buzzer (D8) Butang tekan (D2) Suis toggle bagi bekalan kuasa Motor Kiri Motor Kanan Sensor Ultrasonik Trig (D5), Echo (D4) M1A=D11 M2A=D9 M1B=D10 M2B=D3 Sensor IR Kanan (A1) Sensor IR Kiri (A0) 6.5.3 Menjelaskan pemasangan perkakasan pada reka bentuk sebuah robot. * 6.5.8 Membina produk dan penyambungan berdasarkan lakaran menggunakan peralatan yang sesuai 27 32
Projek 1: Asas gerakan . Pikabot menggunakan pergerakan jenis mod pacuan berbeza dan ini diterangkan melalui gambar rajah di bawah. Maju Undur Pusing Kanan Pusing Kiri Melalui pemerhatian, setiap tayar berupaya untuk bergerak bebas dari segi arah dan kelajuan dan ini adalah faktor utama pergerakan . 28 33
Carta Alir Projek 1 Robot akan bergerak ke hadapan dengan selang masa selama 1 saat. Setelah itu, robot akan berhenti. Carta alir ini menunjukkan satu contoh struktur kawalan jujukan. 29 34
Projek 1: Asas gerakan . 1. Buka perisian mBlock dan klik pada kategori. 2. Drag dan drop ke dalam ruang kerja mBlock. 2 3 1 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. 30 35
Projek 1: Asas gerakan . 3. Setelah itu, klik dan seret ke bawah arahan tadi. Buat perkara yang sama untuk arahan dan 2 1 3 4 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. 31 36
Projek 1: Asas gerakan . 4. Arahan akan diletakkan di atas arahan . Arahan tersebut boleh didapati daripada kategori . Klik upload* dan buat pemerhatian di robot. Boleh rujuk m/s 22 dan 23 untuk panduan memuat naik aturcara ke robot. 2 UPLOAD DAN UJI 3 1 Jangan lupa untuk cabut kabel USB sebelum menghidupkan suis rocker pada PikaBot! . 6.5.9 Memindahkan atur cara yang telah dihasilkan pada perkakasan dan menguji kefungsiannya. 32 37
Projek 1: Asas gerakan . 5. Robot PIKABOT akan maju ke hadapan selama 1 saat dan akan berhenti. Gambar rajah di sebelah menunjukkan carta alir jenis jujukan dan tiada ulangan. Ianya berfungsi untuk menjalankan suatu arahan untuk sekali sahaja. 1 saat 6.5.6 Menghasilkan carta alir sebuah robot yang akan dibina 33 38
Projek 1: Asas gerakan . Apakah maksud nilai 100 di atas? Nilai yang boleh diterima oleh PWM (pulse width modulation) adalah dalam bentuk 8 bit. PWM berfungsi untuk mengawal kadar kelajuan pada tayar robot. Oleh itu, maksud 8 bit dalam bentuk Matematik adalah 28 = 256. Namun begitu, semua jenis mikro pengawal akan bermula dengan nilai 0. Maka, nilai maksimum adalah 255 sahaja. Cuba pengguna masukkan nilai 255 dan lihat hasilnya. Anda dinasihatkan untuk meletakkan robot di atas lantai sebelum menggerakkan robot pada nilai 255. 34 39
Case Study: Asas Gerakan . Daripada pengaturcaraan blok bagi perisian mBlock, robot PIKABOT boleh bergerak secara maju, undur, pusing ke kanan, kiri, berhenti dan juga menggerakkan tayar dengan kelajuan berbeza. Terdapat beberapa pergerakan robot yang boleh dijadikan bentuk geometri. Contoh pergerakan geometri adalah dalam bentuk segiempat sama, bulatan, segitiga, hexagon dan lain-lain. 35 40
Case Study 1: Gerakan Segi Empat Sama Pengaturcaraan yang digunakan adalah dalam bentuk jujukan. Namun begitu, teknik ini menggunakan arahan yang banyak dan kurang efisien. Mari kita cuba gunakan arahan REPEAT. UPLOAD DAN UJI 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. * 6.5.9 Memindahkan atur cara yang telah dihasilkan pada perkakasan dan menguji kefungsiannya. 36 41
Carta Alir Case Study 1 Robot akan bergerak ke hadapan dengan selang masa selama 0.5 saat. Setelah itu, robot akan berhenti dengan selang masa 0.5 saat. Robot akan memeriksa nilai semasa counter (cnt) sama ada telah sama dengan nilai tetapan 4. Jika ya, ia akan menamatkan carta alir tersebut. Carta alir ini menunjukkan satu contoh struktur kawalan ulangan. 6.5.6 Menghasilkan carta alir sebuah robot yang akan dibina 37 42
Case Study 1: Gerakan Segi Empat Sama UPLOAD DAN UJI Pengaturcaraan ini menggunakan arahan ulangan sebanyak 4 kali. Setelah itu, aturcara akan keluar dari arahan REPEAT dan membuat arahan untuk berhenti. Carta alir bagi urutan ini adalah seperti gambar rajah sebelah. 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. * 6.5.9 Memindahkan atur cara yang telah dihasilkan pada perkakasan dan menguji kefungsiannya. 38 43
Case Study 2: Gerakan Hexagon 60ํ° x 6 = Sekiranya kita ingin membuat bentuk hexagon, kita perlu membuat satu gerakan lurus dan robot berpusing ke arah kiri bersudut 60ํ° sebanyak 6 kali ulangan. Pengguna perlu mencuba gerakan lurus dan pusingan menggunakan lengahan masa yang sesuai sehingga mendapat pusingan 60ํ°. Setelah itu, buat kawalan berstruktur ulangan FOR menggunakan arahan REPEAT dalam mBlock. 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. 39 44
Case Study 2: Gerakan Hexagon 60ํ° UPLOAD DAN UJI Aturcara di atas adalah contoh bagi menguji robot untuk bergerak ke hadapan selama 0.5 saat dan berpusing ke kiri dengan selang masa 0.3 saat untuk menghasilkan gerakan bersudut 60ํ°. Sekiranya sudut yang dibuat kurang daripada 60ํ°, maka pengguna harus menambah nilai lengahan masa dan begitu juga sebaliknya. Seterusnya untuk menghasilkan ulangan sebanyak 6 kali bagi mendapatkan geometri hexagon. 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. * 6.5.9 Memindahkan atur cara yang telah dihasilkan pada perkakasan dan menguji kefungsiannya. 40 45
Case Study 2: Gerakan Hexagon UPLOAD DAN UJI Setelah membuat pengujian bagi aturcara sebelum ini, pengguna hanya perlu menambah arahan REPEAT dan memasukkan isi kandungan ke dalam ruang arahan REPEAT. Pastikan arahan BRAKE diletakkan selepas arahan REPEAT untuk menghentikan robot . 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. * 6.5.9 Memindahkan atur cara yang telah dihasilkan pada perkakasan dan menguji kefungsiannya. 41 46
Case Study 3: Gerakan Bulatan Bagi pergerakan bulatan, pengguna perlu menggunakan arahan yang boleh menggerakkan tayar kanan dan kiri secara individu. Untuk menggerakkan seperti dalam gambarajah, tayar kiri perlu lebih perlahan berbanding tayar kanan. Jika tayar kiri diletakkan nilai 0, robot akan berpusing dengan jejari yang lebih kecil. UPLOAD DAN UJI 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. * 6.5.9 Memindahkan atur cara yang telah dihasilkan pada perkakasan dan menguji kefungsiannya. 42 47
Membina Function (My Blocks) Function adalah subaturcara yang melaksanakan tugas khusus dan berulangkali sekiranya dipanggil. mBlock menggunakan arahan "My Blocks" bagi function. Aturcara di bawah adalah pergerakan PIKABOT untuk Segi Empat Sama. Mari ubah ia menjadi function. 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. 43 48
1. Membina Function 2 3 1 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. Tuliskan nama function 4 44 49
1. Membina Function UPLOAD DAN UJI Isi kandungan pada bahagian "when pikabot starts up" diletakkan di dalam "define SegiEmpat". Setelah itu, arahan "SegiEmpat" diletakkan dibawah "when pikabot starts up" untuk memanggil function yang telah dibina tadi. Function ini tidak menerima sebarang argument menyebabkan kita perlu sentiasa membuat tetapan nilai kelajuan dan lengahan masa dalam function. Kita akan ubahsuai untuk membuat argument bagi function. 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. * 6.5.9 Memindahkan atur cara yang telah dihasilkan pada perkakasan dan menguji kefungsiannya. 45 50
2. Membina Function (argument) 2 4 Tuliskan nama function dan pembolehubah 3 Klik 2 kali untuk 2 pembolehubah 5 1 iaitu bagi laju dan masa 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. 46 51
2. Membina Function (argument) Gantikan function tadi dengan function segiEmpat yang mempunyai pembolehubah laju dan masa. Klik dan drag pembolehubah kepada lokasi yang dikehendaki. Nilai laju & masa berubah untuk mengawal saiz segiempat Nilai kelajuan 100 dan lengahan masa 0.5 saat boleh diubah untuk mengubah saiz segi empat 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. * 6.5.9 Memindahkan atur cara yang telah dihasilkan pada perkakasan dan menguji kefungsiannya. 47 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. * 6.5.9 Memindahkan atur cara yang telah dihasilkan pada perkakasan dan menguji kefungsiannya. 47 52
48 53
Struktur . Buzzer (D8) Butang tekan (D2) Suis toggle bagi bekalan kuasa Motor Kiri Motor Kanan Sensor Ultrasonik Trig (D5), Echo (D4) M1A=D11 M2A=D9 M1B=D10 M2B=D3 Sensor IR Kanan (A1) Sensor IR Kiri (A0) 6.5.3 Menjelaskan pemasangan perkakasan pada reka bentuk sebuah robot. * 6.5.8 Membina produk dan penyambungan berdasarkan lakaran menggunakan peralatan yang sesuai 49 54
Jenis-jenis Suis Di dalam pasaran, terdapat pelbagai jenis suis yang boleh didapati. Oleh itu, pengguna perlu tahu akan suis yang sesuai dan boleh digunakan bagi sesuatu aplikasi. Terdapat dua jenis suis secara umum mengikut kefungsian iaitu suis selak dan suis bukan selak. Jadual di bawah menunjukkan beberapa suis-suis tersebut. Suis Selak (Latch switch) Suis Bukan Selak (Momentary switch) Rocker switch Push button Slide switch Keypad Toggle switch Limit switch DIP switch IR sensor 50 55
Suis Selak / Bukan Selak Suis selak adalah suis yang apabila dihidupkan, statusnya kekal. Contohnya bila suis ditolak ke kanan, ia akan kekal pada posisi kanan sehingga ianya ditolak secara manual ke arah posisi kiri. Suis selak yang ada pada adalah jenis rocker switch. Manakala bagi suis bukan selak pula, ia merupakan suis yang hanya akan aktif apabila ada aktiviti/daya luar yang bertindak ke atasnya. Contoh suis bukan selak yang ada pada adalah suis butang tekan dan IR Line Sensor. 51 56
Carta Alir Membaca Suis Carta alir di bawah akan meminta pengguna untuk menekan push button bagi membunyikan not Muzik. Sekiranya push button tidak ditekan, ia akan sentiasa mengulangi arahan untuk sentiasa membaca status pada pin push button. Carta alir ini menunjukkan satu contoh struktur kawalan pilihan. 6.5.6 Menghasilkan carta alir sebuah robot yang akan dibina 52 57
Membaca suis Aturcara blok dibawah menunjukkan cara untuk membaca push button dan membuat bunyi not Muzik. Mari kita cuba aturcara tersebut. 1. Pilih arahan tersebut dari kategori . 2. Setelah itu, pilih arahan "FOREVER" dari kategori . Arahan ini akan menyebabkan isi kandungannya diulangi sentiasa. 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. 53 58
Membaca suis 3. Dari kategori , pilih arahan "IF". Arahan ini digunakan untuk membuat perbandingan sekiranya push button ditekan atau tidak. 4. Perbandingan yang akan dibuat adalah sekiranya push button ditekan. Oleh pengguna boleh mendapatkan arahan blok tersebut dalam kategori . 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. itu, 54 59
Membaca suis 5. Arahan berikutnya adalah mengeluarkan bunyi not C4 dengan lengahan 0.2 saat . Pilih arahan tersebut dari blok kategori . UPLOAD DAN UJI 6. Setelah memuat naik aturcara ke PikaBot, anda perlu menekan push button pada PikaBot untuk mendengar bunyi not C4 untuk 0.2 saat. Tekan PB 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. * 6.5.9 Memindahkan atur cara yang telah dihasilkan pada perkakasan dan menguji kefungsiannya. 55 60
Carta Alir Membaca Ultrasonik Carta alir dibawah akan meminta pengguna untuk menekan push button bagi memulakan aturcara. Sekiranya jarak dari ultrasonik adalah kurang dari 10cm, maka not Muzik akan dibunyikan dengan selang masa 0.2 saat. Aturcara akan sentiasa mengulang untuk membaca nilai jarak ultrasonik. 6.5.6 Menghasilkan carta alir sebuah robot yang akan dibina 56 61
Membaca Ultrasonik 1 2 1. Pada gambarajah diatas, tambahkan arahan untuk membuat deklarasi pin ECHO dan TRIG pada pengesan ultrasonik. 2. Gantikan arahan bunyi buzzer pada aturcara sebelum ini kepada arahan kawalan berstruktur "FOREVER". ** Apabila push button ditekan, ia akan mengulangi arahan dalam "FOREVER". 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. 57 62
Membaca Ultrasonik 3. Tambahkan kawalan berstruktur "IF" untuk memeriksa syarat melalui blok kategori "Control". 1 4. Buat perbandingan sekiranya sesuatu nilai adalah kurang daripada 50. 2 Masukkan dalam bahagian syarat "IF". 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. 58 63
Membaca Ultrasonik 1 5. Pilih bacaan ultrasonik dalam (cm) dan letakkannya dalam lokasi seperti dalam gambar rajah. 2 6. Buat suntingan nombor dari 50 kepada 10. Nombor ini mewakili jarak dalam ukuran cm. 7. Masukkan arahan membunyikan not muzik C4 dengan lengahan masa 0.25 UPLOAD DAN UJI 3 saat. 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. * 6.5.9 Memindahkan atur cara yang telah dihasilkan pada perkakasan dan menguji kefungsiannya. 59 64
Membaca Ultrasonik 1 2 Tekan push button dan dekatkan objek pada pengesan ultrasonik. Buat pemerhatian. 60 65 6.5.6 Menghasilkan carta alir sebuah robot yang akan dibina
Carta Alir Projek 2 Carta alir di bawah akan meminta pengguna untuk menekan push button bagi memulakan aturcara. Robot akan sentiasa maju ke depan jika tiada halangan di depannya. Jika terdapat halangan dan jaraknya kurang dari 10cm dari robot, maka robot akan berhenti. Sekiranya halangan dialihkan, robot akan maju semula. 6.5.6 Menghasilkan carta alir sebuah robot yang akan dibina 61 66
Projek 2: Ada Objek, HENTI! 1. Projek ini akan menggunakan latihan membaca push button untuk memulakan sistem. 2. Apabila push button ditekan, ia akan menggerakkan robot seperti yang telah dipelajari dalam Projek 1. 3. Sekiranya terdapat objek di depan pengesan ultrasonik, PikaBot akan berhenti. 4. Jika objek dialihkan, robot akan kembali bergerak pada satu pergerakan lurus. 6.5.6 Menghasilkan carta alir sebuah robot yang akan dibina 62 67
Projek 2: Ada Objek, HENTI! 1 1. Buat deklarasi pin bagi motor dengan menambah arahan seperti disebelah. 2 2. Tukarkan arahan "IF" kepada "IF ELSE" untuk menggerakkan robot dan menghentikan robot mengikut syarat. 63 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. 68
Projek 2: Ada Objek, HENTI! 1 3. Letakkan syarat membaca pengesan ultrasonik di bawah 10cm. 4. Masukkan arahan "BRAKE" untuk sekiranya 2 BENAR dan arahan maju jika PALSU. UPLOAD DAN UJI 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. * 6.5.9 Memindahkan atur cara yang telah dihasilkan pada perkakasan dan menguji kefungsiannya. 64 69
Projek 2: Ada Objek, HENTI! 1 2 Tekan push button dan letakkan halangan di hadapan PikaBot. Buat pemerhatian. 65 70
LATIHAN 1 saat 20cm Sunting aturcara dalam latihan sebelum ini untuk: 1. Robot PikaBot bergerak dalam garisan lurus apabila push button ditekan. 2. Apabila mengesan halangan pada jarak 20cm, henti selama 1 saat. 3. PikaBot akan berpusing pada arah kanan anggaran 90°. 4. Setelah itu, PikaBot akan bergerak seperti dalam arahan 1. 66 71
67 72
Struktur . Buzzer (D8) Butang tekan (D2) Suis toggle bagi bekalan kuasa Motor Kiri Motor Kanan Sensor Ultrasonik Trig (D5), Echo (D4) M1A=D11 M2A=D9 M1B=D10 M2B=D3 Sensor IR Kanan (A1) Sensor IR Kiri (A0) 6.5.3 Menjelaskan pemasangan perkakasan pada reka bentuk sebuah robot. * 6.5.8 Membina produk dan penyambungan berdasarkan lakaran menggunakan peralatan yang sesuai 68 73
Kalibrasi pengesan IR 1. Membuat kalibrasi pengesan IR atas garisan LANGKAH PENTING 1. Buka trek PikaBot. 2. Letakkan PikaBot atas permukaan putih trek. 1. Laraskan trimmer mengikut pusingan jam sehingga had max. 2. Kedua-dua LED sepatutnya ON. 1. Ubah kedudukan PikaBot supaya pengesan IR kiri berada di atas garisan hitam. 6.5.3 Menjelaskan pemasangan perkakasan pada reka bentuk sebuah robot. * 6.5.8 Membina produk dan penyambungan berdasarkan lakaran menggunakan peralatan yang sesuai 69 74
Kalibrasi pengesan IR 1. Membuat kalibrasi pengesan IR atas garisan 1. Pastikan kedua LED menyala. 2. Laraskan trimmer mengikut lawan arah jam. 3. Perhatikan LED sebelah label 'A0' dan berhenti melaras setelah LED tersebut padam. 1. Gerakkan pengesan IR ke permukaan putih. 2. Kedua-dua LED akan menyala semula. 3. Jika gagal, ulangi langkah 1 - 4. 1. Ulangi langkah 1 - 5 untuk membuat kalibrasi pada pengesan IR kanan. 6.5.3 Menjelaskan pemasangan perkakasan pada reka bentuk sebuah robot. * 6.5.8 Membina produk dan penyambungan berdasarkan lakaran menggunakan peralatan yang sesuai 70 75
Asas Kawalan Line Follower KONSEP ASAS MENGGERAKKAN ATAS GARISAN HITAM 6.5.3 Menjelaskan pemasangan perkakasan pada reka bentuk sebuah robot. 71 76
Pengesan IR Sensor Kanan & Kiri atas permukaan putih Sensor Kanan & Kiri atas garisan hitam Sensor Kiri atas garisan hitam Sensor Kanan atas garisan hitam 1. Pengesan IR ini akan memberikan bacaan nilai LOW (0) sekiranya pengesan berada di atas permukaan putih. 2. Jika pengesan berada di atas permukaan hitam, ia akan memberikan nilai HIGH (1) kepada mikro pengawal. 3. Oleh itu, kita akan membina sistem asas untuk memeriksa kesahihan pernyataan diatas. 72 6.5.3 Menjelaskan pemasangan perkakasan pada reka bentuk sebuah robot. 77
Carta Alir Projek 3 6.5.6 Menghasilkan carta alir sebuah robot yang akan dibina 73 78
Projek 3: Garisan hitam/putih? 1 1. Buat deklarasi pin melalui kategori "Sensor" seperti dalam gambarajah. 2 2. Tukar isi kandungan bagi "FOREVER" dengan arahan "IF" dari kategori "Control" bagi menguji syarat yang akan dibina. 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. 74 79
Projek 3: Garisan hitam/putih? 1 3. Masukkan syarat sekiranya IR kiri mengesan garisan hitam dalam syarat kawalan berstruktur "IF". 4. Masukkan arahan menggerakkan motor 2 kanan dan kiri melalui kategori "Motors" dan masukkan nilai kiri 0 dan kanan 150. 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. 75 80
Projek 3: Garisan hitam/putih? 1 2 5. Klik kanan pada arahan "IF" dan pilih "Duplicate". Letakkan arahan yang baru dibawah arahan "IF" sebelum ini. 6. Ubah nilai pada arahan "IF" yang baru pada motor kanan dengan nilai 0 dan motor kiri dengan nilai 150. Muat naik UPLOAD DAN UJI aturcara dan uji robot. 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. * 6.5.9 Memindahkan atur cara yang telah dihasilkan pada perkakasan dan menguji kefungsiannya. 76 81
Projek 3: Garisan hitam/putih? 7. PikaBot kini boleh mengikuti garisan hitam tetapi ia hanya akan bergerak setelah pengesan robot berada atas garisan hitam. 1 8. Masukkan control structure "IF" dan 2 arahan "MOVE FORWARD" dengan nilai 150. 77 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. 82
Projek 3: Garisan hitam/putih? 9. Tambah arahan pernyataan logik "AND" dalam syarat arahan "IF". 1 10. Kita akan gunakan arahan "NOT" untuk membuat togel signal apabila pengesan 2 IR berada diatas permukaan putih. 78 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. 83
Projek 3: Garisan hitam/putih? 1 UPLOAD DAN UJI 11. Letak syarat membaca pengesan IR untuk bahagian kiri dan kanan seperti dalam gambarajah. 12. Muat naik aturcara dan uji pergerakan robot untuk bergerak diatas garisan hitam. 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. * 6.5.9 Memindahkan atur cara yang telah dihasilkan pada perkakasan dan menguji kefungsiannya. 79 84
LATIHAN Sunting aturcara dalam latihan sebelum ini untuk: 1. Menghentikan PikaBot sekiranya terdapat halangan di depannya dengan menggunakan pengesan ultrasonik. 2. Robot akan berhenti jika jarak halangan adalah kurang daripada 10cm. 3. Sekiranya halangan dialihkan, robot akan bergerak mengikuti garisan hitam. 80 85
81 86
Struktur . Buzzer (D8) Butang tekan (D2) Suis toggle bagi bekalan kuasa Motor Kiri Motor Kanan Sensor Ultrasonik Trig (D5), Echo (D4) M1A=D11 M2A=D9 M1B=D10 M2B=D3 Sensor IR Kanan (A1) Sensor IR Kiri (A0) 6.5.3 Menjelaskan pemasangan perkakasan pada reka bentuk sebuah robot. * 6.5.8 Membina produk dan penyambungan berdasarkan lakaran menggunakan peralatan yang sesuai 82 87
Asas Not Muzik Note Value Semibreve Minim Crotchet Beat(s) 4 2 1 6.5.3 Menjelaskan pemasangan perkakasan pada reka bentuk sebuah robot. Quaver 0.5 Semiquaver 0.25 83 88
Carta Alir bagi Asas Not Muzik Carta alir dibawah akan meminta pengguna untuk menekan push button bagi memainkan muzik yang terdiri daripada beberapa not-not muzik yang telah ditetapkan dari segi not dan selang masa. Ia akan memainkan muzik tersebut untuk sekali sahaja. 6.5.6 Menghasilkan carta alir sebuah robot yang akan dibina 84 89
Projek 4: Muzik ON Membina lagu Paddle Pop Note E4 G4 C4
A4 C5 F4 Beat(s) 1 0.5 2 0.5 1 0.5 2 Note A4 B4 G4 A4 B4 D5 C5 Beat(s) 0.5 0.5 0.5 0.5 0.5 0.5 1.5 1. Bina template seperti dalam gambarajah untuk memulakan aturcara apabila push button ditekan. Ia akan membunyikan not muzik untuk 1 ulangan. 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. 85 90
Projek 4: Muzik ON Membina lagu Paddle Pop Note E4 G4 C4
A4 C5 Beat(s) 1 0.5 2 0.5 1 0.5 Note A4 B4 G4 A4 B4 D5 Beat(s) 0.5 0.5 0.5 0.5 0.5 0.5 2. Masukkan arahan aturcara bagi not muzik dan lengahan masa. Contoh empat not beserta lengahan masa adalah seperti dalam gambar rajah. 3. ISI not-not lain sehingga selesai. 4. Muat naik aturcara dan uji. 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. * 6.5.9 Memindahkan atur cara yang telah dihasilkan pada perkakasan dan menguji kefungsiannya. 86 F4 2 C5 1.5 91
Projek 4: Muzik ON Note E4 G4 C4
A4 C5 Beat(s) 1 0.5 2 0.5 1 0.5 Note A4 B4 G4 A4 B4 D5 Beat(s) 0.5 0.5 0.5 0.5 0.5 0.5 Membina lagu Paddle Pop Setelah membuat pengujian, didapati bahawa muzik tersebut mempunyai tempo yang agak perlahan. Bagaimana untuk membuat suntingan untuk memainkan melodi ini dengan tempo yang lebih rancak? UPLOAD DAN UJI 6.5.7 Menghasilkan atur cara yang dikehendaki berpandukan carta alir yang dibuat. * 6.5.9 Memindahkan atur cara yang telah dihasilkan pada perkakasan dan menguji kefungsiannya. 87 F4 2 C5 1.5 92
LATIHAN Buat aturcara untuk memainkan muzik dibawah: 1. Super Mario 2. Birthday Song 88 93
TAHNIAH, Jr Maker ! Anda telah berjaya membina dan mengaturcara . Diharapkan anda telah mempelajari pelbagai ilmu dan kemahiran sewaktu proses pembelajaran. Dengan ilmu yang ada, anda boleh membina robot automatik yang lain dengan menggunakan komponen dari robot . Semoga anda menjadi "MAKER" yang berilmu dan berupaya mengaplikasikan kemahiran anda di mana sahaja! Klik atau imbas utk bantuan teknikal atau soalan lanjut Adam & Anna