Modul Embedded System
Modul Embedded System
Penulis :
Penyunting :
Desain Sampul :
Hazrul Aswad
Penerbit :
Sampul................................................................................................................ i
DAFTAR ISI ...................................................................................................... ii
KATA PENGANTAR ....................................................................................... iii
PENDAHULUAN .............................................................................................. iv
BAB 1 Pengenalan Embedded System ............................................................ 1
BAB 2 Pengenalan Microbit............................................................................. 9
BAB 3 Robot Remote Control.......................................................................... 31
BAB 4 Robot Pemadam Api ............................................................................. 47
BAB 5 Disaster Alarm ...................................................................................... 64
BAB 6 Vending Machine .................................................................................. 90
BAB 7 Greenhouse Bit (IoT Microbit) ............................................................ 109
BAB 8 Husbandry Bit (IoT Microbit) ............................................................. 129
DAFTAR PUSTAKA ........................................................................................ 146
Berkaitan hal tersebut, melalui lembaga Pendidikan SMP IDN dibuatlah modul ini
sesuai kurikulum SMP IDN yang menitik beratkan kepada praktik penggunaan
Embedded System guna untuk mempersiapkan siswa-siswanya menghadapi
tantangan revolusi industri dan teknologi yang banyak dibutuhkan saat ini dan masa
mendatang.
Tidak lupa kami berterima kasih Kepada Allah Subhanahu Wa Ta’ala, pihak
yayasan, kepala sekolah, serta guru dan staf yang telah membantu dalam
penyelesaian modul ini. Tentu masih ada kekurangan yang perlu diperbaiki dalam
penulisan modul ini. Maka dari itu, kritik dan saran yang konstruktif kami apresiasi
dan terima dengan senang hati.
Semoga modul ini bermanfaat bagi kita semua, khususnya para peserta didik.
Tim Penyusun
A. Deskripsi
Embedded System adalah salah satu mata pelajaran IT yang ada di semester
3 SMP IDN. Berdasarkan kurikulum, mata pelajaran Embedded System
disampaikan di kelas 8 semester I dan II yang disampaikan 4 jam perhari selama
seminggu. Pada mata pelajaran ini peserta didik akan belajar proses pengembangan
mikrokontroller dari langkah yang paling mudah hingga langkah lebih lanjut.
Seluruh komponen mikrokontroller akan dikenalkan kepada siswa bersamaan
dengan pengerjaan proyek sederhana untuk memberikan gambaran kepada peserta
didik bagaimana penerapan Embedded System di dunia industri.
B. Prasyarat
C. Petunjuk
Buku pedoman siswa ini disusun berdasarkan kurikulum IDN 2.0. Buku ini
terdiri dari dua bab yaitu bab satu pendahuluan dan bab dua pembelajaran. Dalam
bab pendahuluan beberapa yang harus dipelajari peserta didik adalah deskripsi mata
pelajaran yang berisi informasi umum, rasionalisasi dan penggunaan metode
scientifik. Selanjutnya pengetahuan tentang persyaratan, tujuan yang diharapkan,
kompetensi inti dan dasar yang akan dicapai serta test kemampuan awal. Bab dua
menuntun peserta didik untuk memahami deskripsi umum tentang topik yang akan
dipelajari dan rincian kegiatan belajar sesuai dengan kompetensi dan tujuan yang
Tugas yang harus dikerjakan oleh peserta didik dapat berupa tugas praktek,
eksperimen atau pendalaman materi pembelajaran. Setiap tugas yang dilakukan
melalui beberapa tahapan scientifik yaitu: 1) melakukan pengamatan setiap tahapan
unjuk kerja 2) melakukan praktek sesuai dengan unjuk kerja 3) mengumpulkan data
yang dihasilkan setiap tahapan 4) menganalisa hasil data menggunakan analisa
diskriptif 5) mengasosiasikan beberapa pengetahuan dalam uraian materi
pembelajaran untuk membentuk suatu kesimpulan 6) mengkomunikasikan hasil
dengan membuat laporan portofolio. Laporan tersebut merupakan tagihan yang
akan dijadikan sebagai salah satu referensi penilaaian
D. Tujuan Akhir
Pada pembelajaran Embedded System ini kita akan belajar mengenal bidang
sistem tertanam dalam skala micro atau kecil yang tentunya untuk mengasah logika,
guna menciptakan solusi atas persoalan yang ada disekitar. Sebelum belajar
perangkat keras, tools dan bahasa pemograman yang digunakan di sistem tertanam,
maka kita perlu memahami bentuk-bentuk Embedded System. Berikut merupakan
macam-macam Embedded System berdasarkan kelompoknya:
2. Robotika
Latihan
- Sebutkan 1 bentuk dan penerapan Embedded System yang ingin kamu
buat. Presentasikan ke teman-teman kamu!
Hardware Microbit
Bagian Belakang
Microbit memiliki bagian utama yang berperan penting dan selaras dengan
fungsinya sebagai mikrokontroller yaitu pin I/O dan voltage output. Berdasarkan
datasheet microbit dapat digambarakan sebagai berikut:
Pin Utama terdiri atas pin GPIO 0, 1 dan 2 (P0, P1, P2) yang merupakan
pin umum dan dapat difungsikan sebagai pin I/O digital ataupun analog. Selain itu
dapat memproses sinyal ADC (Analog Digital Converter).
Pin Kecil terdiri atas 20 pin yang memiliki fungsi default dan khusus seperti
sebagai pin komunikasi, power, atau secara default terhubung dengan komponen
internal microbit. Berikut penjelasan fungsi dimulai dari bagian bawah microbit
pada gambar diatas.
1. P3 : Terhubung dengan LED Col 1 (pada LED Screen). Jika LED
Screen sedang off, maka dapat digunakan sebagai pin digital I/O dan
memproses sinyal analog input dengan ADC.
2. P4 : Terhubung dengan LED Col 2 (pada LED Screen). Jika LED
Screen sedang off, maka dapat digunakan sebagai pin digital I/O dan
memproses sinyal analog input dengan ADC.
3. P5 : Terhubung dengan Button A sehingga pin ini yang membaca
sinyal input dari button A. Pin ini terhubung dengan resistor Pull Up.
4. P6 : Terhubung dengan LED Col 9 (pada LED Screen). Jika LED
Screen sedang off, maka dapat digunakan sebagai pin digital I/O.
5. P7 : Terhubung dengan LED Col 8 (pada LED Screen). Jika LED
Screen sedang off, maka dapat digunakan sebagai pin digital I/O.
6. P8 : Pin khusus yang berfungsi untuk mengirim dan sensing digital
signal.
7. P9 : Terhubung dengan LED Col 7 (pada LED Screen). Jika LED
Screen sedang off, maka dapat digunakan sebagai pin digital I/O.
8. P10 : Terhubung dengan LED Col 3 (pada LED Screen). Jika LED
Screen sedang off, maka dapat digunakan sebagai pin digital I/O dan
memproses sinyal analog input dengan ADC.
9. P11 : Terhubung dengan Button B sehingga pin ini yang membaca
sinyal input dari button B.
10. P12 : Pin khusus yang berfungsi untuk memberikan dukungan untuk
aksesibilitas.
11. P13 : Pin khusus yang berfungsi sebagai pin SCK (Serial Clok) untuk
komunikasi SPI bus (Serial Peripheral Interface).
Eksternal Power
Note: Pemahaman mengenai pin I/O ini sangat penting untuk memudahkan dalam
proses wiring (pengkabelan) pada pembuatan produk Embedded System.
Pemograman Microbit
Tampilan halaman Code Editor Microsoft Makecode terdiri atas berbagai bagian.
Oleh karena itu kita perlu mengenal bagian-bagian utama dari halaman kerja blok
coding microbit. Adapun bagian-bagian utama Microsoft Makecode sebagai
berikut:
Menu Setting
2. Namun jika proses download atau save dilakukan di luar microbit maka proses
tersebut tanpa upload.
Selain itu terdapat menu github untuk melakukan penyimpanan coding di github.
Simulasi Microbit
Terdapat menu simulasi tambahan yaitu Show console Device. Menu inilah
yang digunakan untuk melihat dan merekam simulasi dari device microbit real.
7. Untuk menyimpan data rekaman dalam bentuk (.csv) maka dapat menekan icon
(.txt) maka dapat menekan tombol . Hasil dari rekaman data yang
disimpan dapat dilihat seperti berikut:
2. Klik go back
3. Untuk mendapatkan informasi cara memutuskan sambungan yaitu dengan
Klik menu tiga titik sebelah download berikut:
5. Kemudian putus akses dengan klik lambang x pada nama device seperti
berikut:
Langkah 1
Buka Aplikasi Makecode kamu yang sudah terinstall terlebih dahulu ataupun
secara Online dengan URL : https://makecode.microbit.org/#editor. Pada editor
utama, tempatkan blok show string yang terdapat pada toolbox Basic
di blok Forever untuk perulangan progarmnya. Maksudnya agar teks/karater yang
ingin kita tampilkan, ditampilkan secara terus menurus selama ada daya yang
Langkah 2
Kita bisa melihat hasil dari blok program yang kita susun pada simulator yang
terletak pada sebelah kiri dari Toolbox. Seperti contoh yang ditampilkan pada
gambar berikut.
Langkah 3
Kita bisa menempatkan lebih banyak show string pada blok Forever untuk
membuat tulisan/karakter lebih banyak lagi. Karakter yang ditampilkan
terlebih dahulu adalah yang penempatannya paling atas, disusul blok
dibawahnya.
On Start Blok
On Forever Blok
Dalam blok forever data suhu dapat terus dikumpulkan dari sensor suhu mikrobit.
Data ini bersifat dinamis,tergantung pada suhu yang terdeteksi oleh mikrobit
kita. Data suhu bisa kita tampilan pada LED mikrobit menggunakan blok show
number dari Toolbox Basic. Setelahnya kita tambahkan blok temperature(oc) yang
Sampai langkah ini, program sudah jadi dan dapat kita download.
Ekstensi
Contoh:
Celcius ke Reamur
Alat Bahan
Cutter 1 Robot Tiny:Bit
Double Tip 1 Microbit
Sterofoam
Langkah 2:
Modifikasi design mekanika Robot dengan menambah penggiring. Hal ini
diperlukan agar robot dapat menggiring/ membawa barang ke tempat tujuan. Pada
praktik ini mekanik penggiring menggunakan sterofoam seperti gambar dibawah
ini:
Langkah 4:
Menambahkan ekstensi Tiny:Bit. Sebelum menyusun code untuk robot Tiny:Bit,
terlebih dahulu harus menambahkan ekstensinya dengan link
“https://github.com/lzty634158/Tiny-bit”
Langkah 5:
Menambahkan ekstensi Tinybit_IR dengan link
https://github.com/lzty634158/Tinybit_IR.
Langkah 6:
Menyusun program Tinybit IR Control. Hal pertama yang dilakukan adalah
memperkenalkan pin sensor IR robot. Ambil blok connect ir pada menu Blok
Tinybit_IR.
Langkah 7:
b) Susun blok code pengatur arah motor dan kecepatannya ke dalam blok “on
UP button pressed”
Keterangan:
“Run” → mengatur arah robot kedepan
“100” → mengatur kecepatan robot sebesar 100/255.
d) Susun blok code dari menu Tinybit untuk menghentikan pergerakan robot
saat tombol tidak lagi ditekan.
Langkah 8:
Memfungsikan tombol “Down” untuk menggerakkan robot ke belakang. Setting
kecepatan sebesar 75/255.
Langkah 9:
Langkah 10:
Memfungsikan tombol “Right” untuk menggerakkan robot ke kanan. Setting
kecepatan sebesar 100/255.
Langkah 11:
Setelah membuat code untuk arah gerak robot. Selanjutnya sedikit memberi
modifikasi, seperti akses buzzer dan mengendalikan RGB LED. Buzzer
Terdapat pilhan tone yang dapat dicoba dan dipilih hanya dengan menekan
simulasi piano:
Begitu juga dengan rest beat nya. Umumnya menggunakan ¼ seperti berikut:
Pada code di atas terdiri atas beberapa Blok code dengan key_id remote IR dengan
logic fungsi:
1) key_id “Up” difungsikan untuk mengatur robot berjalan lurus dengan
kecepatan 100.
Industri 4.0 Segala hal dapat diakses dari smartphone. Robot Tiny:bit juga
dapat diakses melalui smartphone by Bluetooth Microbit.
Nama aplikasinya adalah “Mbit”. Aplikasi tersebut merupakan aplikasi default dari
Yahboom. Aplikasi ini dapat di download di playstore untuk Android dan di apps
store untuk IOS. Code blok dari Robot Tiny:bit by Bluetooth ini juga telah tersedia
secara default dari Yahboom. Code tersebut dapai di download di
http://www.yahboom.net/study/Tiny:bit, tepatnya pada menu berikut:
Latihan Praktikum
- Temukan minimal dua integrasi menu apps dengan code Bluetooth Tinybit!
- Buatlah susunan code blok untuk memfungsikan minimal dua tombol
remote IR yang belum difungsikan saat kelas praktikum diatas!
Line Follower
Robot line follower adalah sebuah robot yang dapat mengikuti garis. Robot
line follower terinspirasi oleh gerak semut yang selalu mengikuti garis yang telah
dibuat. Robot dapat mengikuti garis berdasarkan perbedaan warna garis. Dalam hal
ini, garis pandu yang digunakan adalah garis putih yang ditempatkan di atas
permukaan berwarna gelap atau sebaliknya, garis hitam yang ditempatkan pada
permukaan yang berwarna putih (cerah). Prinsip kerja pendeteksian garis pandu
dari robot ini adalah bahwa tiap-tiap warna permukaan mempunyai kemampuan
untuk memantulkan cahaya yang berbeda. Hal inilah yang digunakan untuk
mendeteksi garis pandu tersebut.
Perlu diketahui bahwa arah robot tentu berhubungan dengan prinsip kerja motor
robot. Oleh karena itu, agar lebih jelas pahami tabel berikut:
Selain memahami hubungan logic motor dengan arah robot, maka perlu memahami
pula mengenani konsep kecepatan motor. Kecepatan motor diatur dengan
pemberian sinyal PWM. Apa itu PWM ?
PWM adalah kepanjangan dari Pulse Width Modulation atau dalam bahasa
Indonesia dapat diterjemahkan menjadi Modulasi Lebar Pulsa. Jadi pada dasarnya,
PWM adalah suatu teknik modulasi yang mengubah lebar pulsa (pulse width)
dengan nilai frekuensi dan amplitudo yang tetap. PWM dapat dianggap sebagai
kebalikan dari ADC (Analog to Digital Converter) yang mengkonversi sinyal
Analog ke Digital, PWM atau Pulse Width Modulation ini digunakan menghasilkan
sinyal analog dari perangkat Digital (contohnya dari Mikrokontroller).
Sinyal input analog (sinusioda) dimodulasikan dengan sinyal gigi gergaji
(sinyal segitiga), sehingga didapatkan sinyal PWM seperti gambar dibawahnya
(pulsa dengan kelebaran bervariasi). Teknik PWM untuk pengendalian kecepatan
motor adalah dengan cara merubah-rubah besarnya duty cycle pulse. Pulsa inilah
yang menentukan kecepatan motor. Dengan mengatur besarnya duty cycle pulse
kotak yang dikirimkan, maka dapat diatur banyaknya logika high yang diberikan
pada motor, dengan kata lain mengatur lamanya waktu motor untuk berputar dalam
satu periode pulsa.
PWM merupakan salah satu mode pada timer. Mode PWM Timer juga dapat
mencacah turun yang berlawanan dengan mode Timer atau mencacah naik. Pada
mode PWM tersebut, Timer mencacah naik hingga mencapai nilai TOP, yaitu 0xFF
(255) untuk PWM 8 bit dan 0x3FF (1023) untuk PWM 10 bit. Robot Tinybit
menggunakan Microbit sebagai mikrokontroller. Nilai PWM Microbit yaitu (0-
Note:
0 → LOW
1 → HIGH
cw → Clok Wise (searah jarum jam)
ccw → Counter Clok Wise
Pembuatan Program
Berikut langkah-langkah penyusunan program robot pemadam api Tiny:Bit
dengan konsep line follower:
Langkah 1:
Tambahkan icon dari menu dan letakkan pada blok start untuk
menandakan robot mulai aktif dan program telah tertanam.
Langkah 2:
Menambahkan ekstensi Tiny:Bit dengan link :
“https://github.com/lzty634158/Tiny-bit”.
Langkah 3:
Buat main program pada blok forever. Gunakan logic if dari menu
untuk menuliskan logic line follower. Sesuai konsep yang telah dijelaskan
Langkah 4:
Robot Tinybit menggunakan dua sensor garis, maka gunakan logic and untuk
menuliskan kondisi pembacaan sensor. Susun logic “and” pada setiap kolom
kondisi if - else if seperti berikut:
Hukum logic “and” adalah jika kedua input bernilai benar, maka nilai outputnya
akan benar (true/ 1). Sedangkan jika nilai input salah satunya salah (false/ 0) maka
nilai outputnya akan salah (false/ 0).
Ambil blok code dari menu , kemudian susun logic kondisi untuk
robot seperti berikut:
Langkah 6:
Susun output atas kondisi yang telah disetting. Output ini berupa blok code untuk
mengarhkan pergerakan robot beserta kecepatannya. Perlu diketahui bahwa Tinybit
telah menyediakan function untuk menentukan arah gerak motor beserta setting
kecepatannya tanpa perlu memberikan logic digital ke setiap motor. Berikut
susunan code full line follower tinybit:
Langkah 7:
Modifikasi mekanik robot dengan menambahkan kipas angin 5vDC yang
diletakkan dengan tiang penyangga dibagian depan robot. Pada contoh ini,
Langkah 8:
Robot dapat mengetahui posisi api berdasarkan logic pembacaan jalur oleh
programmer dalam menentukan jalur yang harus ditempuh robot agar sampai ke
posisi Lilin. Namun hal tersebut kurang akurat. Oleh karena itu, robot
memanfaatkan sensor jarak (ultrasonic) iuntuk mendeteksi keberadaan lilin.
Langkah 9:
Keluarkan logic if seperti berikut:
→ Klik menu
→ Buat variable dengan nama “jarak”
→ Ambil blok
→ Letakkan pada blok forever.
Langkah 12:
Tambahkan logic if-else dan comparison > (lebih dari sama dengan) dari menu
Langkah 13:
Buat kondisi dengan nilai jarak tertentu, dimana robot menganggap bahwa dia
sudah mendeteksi lilin atau belum. Pada praktik ini ditentukan jarak 10 cm sebagai
nilai bahwa robot mulai mendeteksi lilin.
Langkah 15:
Tambahkan code “stop” untuk menghentikan robot.
Langkah 16:
Lakukan wiring kipas angin ke pin Microbit di bagian belakang robot Tinybit.
Langkah 17:
Tambahkan code digital write untuk pin P2 dengan logic 1 (HIGH) agar kipas
menjadi ON saat robot mendeteksi lilin (api). Sehingga robot line follower
pemadam api dianggap sukses melaksanakan misi.
Tugas
- Amati kesesuaian code dengan robot!
- Buatlah mini kompetisi dengan teman sekelas untuk menentukan robot Line
Follower Pemadam Api tercepat dalam melakukan misi!
Disaster Alarm
Pada prototype pertama kita mengambil kasus tentang masalah banjir yang
biasa terjadi akibat sungai yang meluap (bertambah volume) karena curah hujan.
Dari kasus tersebut maka kita dapat menentukan parameter yang akan dijadikan
atokan deteksi adalah “Volume”. Setelah mendapatkan parameter yang tepat,
selanjutnya kita menentukan perangkat yang memungkinkan untuk digunakan,
kemudian logic kerja antar perangkat, serta membuat perencanaan posisi alat.
Sensor level ketinggian air ini merupakan jenis sensor analog dengan
tegangan operasi sebesar 5v DC. Sensor ini berdimensi 65mm x 20mm x 8mm
dengan area deteksi sebesar 40mm x 16mm. Ukuran yang cukup untuk skala
prototype. Kita akan belajar mengoperasikan sensor analog, membaca nilai analog
menggunakan microbit, juga menganalisanya untuk dijadikan nilai standar
parameter. Konfigurasi pin sensor K-0135 terdiri atas:
Sensor Getar
Buzzer
B. Pembuatan Prototype
a. Wiring perangkat
Merupakan kegiatan pengkabelan komponen/ perangkat.
b. Kalibrasi
• Kalibrasi Sensor
Sensor deteksi volume air menggunakan pin analog sehingga nilai volume
dibaca dalam range nilai analog. Dalam proses kalibrasi kita harus dapat
menentukan range setiap kondisi yaitu:
1) Berapa nilai sensor ketika belum mendeteksi air?
2) Berapa nilai sensor ketika sensor mendeteksi sedikit terkena air (level
tertentu dari mata sensor)?
3) Berapa nilai sensor ketika sensor mendeteksi banyak air (level tertentu
dari mata sensor)?
Gunakan “Serial Device” untuk lebih mudah menentukan nilai hasil kalibrasi
seperti berikut:
Hasil pemantauan kalibrasi nilai sensor pada beberapa kondisi tidak jauh
berbeda:
Saat kondisi tidak ada air dan sedikit air nilai analog sensor mencapai 279++
sedangkan Saat banyak air nilai analog sensor mencapai 288++ sampai
300++.
Hal ini menunjukkan bahwa tingkat sensifitas sensor yang cukup kurang. Oleh
karena itu diambil rata-rata nilai tengah dimana sensor menganggap mulai
mendeteksi banyak air yaitu sebesar 290.
• Kalibrasi buzzer+LED
Kalibrasi ini bertujuan untuk memastikan buzzer dan LED yang dijadikan
sebagai output prototype dapat bekerja dengan baik. Buzzer dan LED ini
berperan sebagai alarm peringatan dini bahaya.
Jika button A microbit ditekan maka buzzer dan LED akan aktif. Sebaliknya pada
saat kondisi awal dengan keadaan button A belum ditekan maka buzzer dan LED
mati atau non-aktif.
C. Blok Code
Blok Code ini merupakan program utama yang disusun berdasarkan logic
program kalibrasi yang dikombinasikan sehingga prototype dapat bekerja sesuai
rancangan.
Jika nilai analog sensor lebih dari sama dengan 290 maka buzzer dan LED yang
tersambung pada pin P0 microbit akan aktif sebagai tanda alarm bahaya.
Sebaliknya jika tidak memenuhi kondisi maka alarm akan mati.
B. Pembuatan Prototype
a. Wiring Perangkat
b. Kalibrasi
Tahap kalibrasi ini adalah tahap untuk mendapatkan nilai patokan untuk
kondisi dimana telah terjadi gempa dan naiknya volume air. Sehingga utamanya
adalah melakukan kalibrasi terhadap kedua sensor yang digunakan.
Gambar 5.13 Kalibrasi disaster alarm dengan deteksi gempa dan level air
Praktik kalibrasi sensor getar ini yaitu dengan mengguncangkan sensor. Jika
sensor mengalami guncangan maka nilai sinyal digitalnya adalah 1 (high).
C. Blok Code
Setelah dipastikan kalibrasi setiap komponen/ perangkat berjalan dengan
baik, maka selanjutnya adalah menyusun program utama.
Gambar 5.14 Blok code disaster alarm dengan deteksi gempa dan level air
Pada program diatas, terdapat blok program serial untuk pembacaan sinyal
digital sensor gempa di pin P1 dengan variabel “gempa” dan pembacaan sinyal
analog sensor level air di pin P2 dengan variabel “level”. Logic sistem kerja
prototype berada di bagian if, yaitu:
Jika sensor gempa membaca sinyal digital 1 (high) dan sinyal analog sensor level
air lebih dari sama dengan 290, maka buzzer dan LED yang tersambung dengan
Sebaliknya jika tidak memenuhi kondisi “if” maka buzzer dan LED akan non-aktif
(mati) yang berarti kondisi alam aman atau tidak terdeteksi akan banjir.
Berikut hasil monitoring nilai sensor pada prototype flood detection kedua:
Dasar Teori
Sensor Api (IR Flame Detector)
Sensor Api (IR Flame Detector) merupakan sensor api sederhana yang
harganya terjangkau dan cukup akurat untuk deteksi api dengan jarak +80cm.
Kemampuan deteksi yang cukup untuk skala prototype. Sensor ini bekerja dengan
tegangan 3.3v - 5v dengan sudut deteksi +60 derajat. IR Flame Detector bekerja
menggunakan pembanding LM393 comparator yang stabil. Nilai output dari IR
Flame Detector ini dapat berupa nilai analog ataupun digital tergantung pin yang
digunakan. Berikut konfiigurasi pin IR Flame Detector:
Pin Deskripsi
GND (G) Ground (Power Supply)
VCC (+) Voltage Pin Power (3.3v - 5v DC)
AO Analog out pin
DO Digital out pin
Nama Keterangan
Perangkat
1 Microbit Sebagai mikrokontroler/ otak alat.
1 Microbit dapat menggunakan expation board, superbit, atau microbit
Socket socket yang lain.
1 Sensor Api Panca indra pendeteksi api.
sensor. Gunakan blok forever dan menu blok dan susun code blok
seperti berikut:
:: Ketika ada api dan nilai gas naik (ada gas yang berpotensi kebakaran)
C. Blok Program
Program utama dapat disusun dengan melanjutkan blok program kalibrasi.
Tambahkan blok logic if sepeti berikut:
Logic boolean and digunakan karena standar kondisi bahaya kebakaran ditentukan
oleh dua nilai sensor dimana kedua nilai harus terpenuhi. Agar logic and dapat
menentukan true/false atas standar kondisi yang akan di-setting-kan, maka
tabahkan logic comparison berikut:
Kemudian susun ke dalam kolom and. Kolom kiri untuk menampung pembacaan
sensor digital (api) sehingga menggunakan tanda “=” (sama dengan). Sedangkan
Setelah itu, letakkan blok code pembacaan sensor digital dan analog dari menu
. Letakkan digital read pin sebagai key ruas kiri, dan analog read pin
sebagai key untuk ruas kanan. Kemudian sesuaikan pin yang digunakan seperti
berikut:
Setelah kondisi input telah clear, maka selanjutnya menyusun blok code untuk
output. Output pertama disusun pada statement true dari logic if, yang berarti
kondisi if terpenuhi (kondisi warning kebakaran). Oleh karena itu susun code untuk
menghidupkan buzzer dan LED guna memberikan tanda bahaya sebagai berikut:
Kemudian susun code blok output kedua pada statement false logic if, yang
mendakan bahwa kondisi sedang aman. Pada saat kondisi aman, buzzer dan LED
tidak aktif atau OFF. Sehingga program utama akan tersusun sebagai berikut:
Latihan Praktikum
- Lakukan kalibrasi terhadap sensor api dengan pembacaan sinyal analognya
dan tuliskan hasil analisa perbedaan nilai pada lima jarak titik api (10cm,
25cm, 40cm, 55cm, 70cm)!
- Buatlah percobaan, dimana LED akan berkedip hanya saat ada guncangan.
Namun Buzzer akan berbunyi hanya saat level air naik!
Vending Machine merupakan suatu alat atau mesin seperti atm dan
berbentuk seperti kulkas kaca yang berfungsi untuk menjual makanan atau
minuman ringan secara otomatis tanpa adanya kasir atau operator, sehingga apabila
hendak membeli produk yang berada pada vending machine cukup dengan
memasukkan uang koin atau uang kertas kedalam mesin tanpa ada orang atau
operator yang menjual produk dan produk yang berada di dalam vending machine
akan keluar secara otomatis setelah uang terhitung sesuai harga barang.
Dasar Teori
Sensor LDR
Pin Deskripsi
GND (G) Ground (Power Supply)
VCC (+) Voltage Pin Power (3.3v - 5v DC)
Motor servo adalah sebuah perangkat atau aktuator putar (motor) yang
dirancang dengan sistem kontrol umpan balik loop tertutup (servo), sehingga dapat
di set-up atau di atur untuk menentukan dan memastikan posisi sudut dari poros
output motor.
Motor servo merupakan perangkat yang terdiri dari motor DC, serangkaian gear,
rangkaian kontrol dan potensiometer. Serangkaian gear yang melekat pada poros
motor DC akan memperlambat putaran poros dan meningkatkan torsi motor servo,
sedangkan potensiometer dengan perubahan resistansinya saat motor berputar
berfungsi sebagai penentu batas posisi putaran poros motor servo.
Ketika lebar pulsa kendali telah diberikan, maka poros motor servo akan
bergerak atau berputar ke posisi yang telah diperintahkan, dan berhenti pada posisi
tersebut dan akan tetap bertahan pada posisi tersebut. Jika ada kekuatan eksternal
yang mencoba memutar atau mengubah posisi tersebut, maka motor servo akan
mencoba menahan atau melawan dengan besarnya kekuatan torsi yang dimilikinya
(rating torsi servo). Namun motor servo tidak akan mempertahankan posisinya
untuk selamanya, sinyal lebar pulsa kendali harus diulang setiap 20 ms (mili detik)
untuk menginstruksikan agar posisi poros motor servo tetap bertahan pada
posisinya.
B. Pengerjaan Prototype
Langkah 1:
Pembuatan design mekanika prototype vending machine.
:: Siapkan Alat dan bahan mekanik
Alat Bahan
Gunting 1 Kardus Bekas
Cutter 1 Solatip / perekat lain
Penggaris Lem bakar
:: Buat lipatan (seperti prosotan) dari bagian kardus yang tidak digunakan seperti
berikut:
:: Buat hal yang sama seperti langkah sebelumnya namun lebih kecil. Letakkan
dibagian belakang lubang koin (lubang kanan atas).
:: Siapkan sensor LDR yang telah dipasang kabel jumper dan perekat, kemudian
pasang tepat di bagian lubang penerma koin:
Langkah 2:
Wiring Perangkat
Wiring setiap komponen dengan superbit (microbit socket). Atur letak kabel
dengan rapi dan dapat tersmbung dengan baik. Lakukan pengkabelan perangkat
seperti tabel berikut:
Langkah 3:
Kalibrasi sensor
Sensor LDR difungsikan untuk mendeteksi ada atau tidak ada koin yang
masuk. Output yang dibutuhkan adalah nilai pasti ada dan pasti tidak ada sehingga
pembacaan sensor lebih tepat dengan menggunakan sinyal digital. Kalibrasi sensor
digital dapat dilakukan tanpa program, cukup dengan memantau LED indikator
digital sensor, dimana LED sensor akan mati ketika tidak ada koin dan akan hidup
ketika ada koin atau bisa saja sebaliknya tergantung penyesuaian screw resistansi
sensor. Jika menginginkan hasil kalibrasi yang lebih akurat, maka lebih baik
menggunakan program seperti berikut:
Langkah 4:
Kalibrasi servo
Kalibrasi servo dilakukan untuk memastikan servor tidak rusak (dapat
bergerak) dan bertujuan untuk menentukan sudut yang tepat untuk melakukan
tugasnya di prototype. Kalbrasi sudut servo dapat menggunakan program seperti
berikut:
Perhatikan bagian pin yang digunakan. Pin program harus sesuai dengan pin
hardware. “S5” untuk servo koin dan “S1” untuk servo pendorong makanan.
Kondisikan sudut servo pertama kali disudut 0o untuk mengetahui posisi palang
(hardware) saat servo bersudut 0o. Upload program diatas.
:: Upload program secara bergantian dan amati arah gerak servo. Tentukan dan
catat dua sudut untuk setiap servo, dimana sudut pertama untuk kondisi awal dan
sudut kedua untuk sudut tujuan yang ketika servo bergerak menuju sudut kedua
tersebut merupakan gerakan untuk mendorong objek.
(!) Perlu dierhatikan bahwa penentuan sudut servo setiap prototype akan berbeda-
beda karena peletakan posisi servo prototype belum tentu sama. Oleh karena itu,
kalibrasi ini penting untuk menentukan arah gerak servo pendorong sehingga dapat
melakukan tugasnya. Kunci dari kalibrasi servo adalah mengetahui posisi 0o servo
untuk memudahkan penentuan sudut.
Langkah 5:
Analisa hasil kalibrasi
Sebelum menyusun program utama, perlu dilakukan analisa hasil kalibrasi sensor
dan servo. Hasil kalibrasi (penyesuaian hardware-software) adalah sebagi berikut:
Langkah 6:
Program Utama
Penyusunan program utama dilakukan dengan mempertimbangkan hasil kalibrasi
dan algoritma dari cara kerja prototype vending machine yang dirancang. Pada
prototype ini algortmanya adalah “ketika sensor mendeteksi adanya koin, maka
servo koin akan mendorong koin menuju penampung koin, dan selanjutnya servo
makanan akan mendorong makanan untuk keluar menuju lubang keluaran
makanan”. Algoritma yang sangat simple untuk dibuat. Berikut susunan program
utama.
:: Susun logic “if” untuk pembacaan sensor. Kondisi “if” adalah ketika sensor
mendeteksi koin. Sertakan show number untuk mengetahui nilai pembacaan
sensor melalui LED matrix microbit.
:: Susun blok code servo koin saat kondisi sensor tidak mendeteksi koin.
Servo koin dan servo makanan berada pada statemen false dari logic “if” dengan
sudut kondisi awal (belum ada koin yang dideteksi sensor).
Pada statemen true dari kondisi “if” diatas terjadi pergerakan terlebih dahulu oleh
servo S5 (servo koin) untuk mendorong koin ke tempat penampungan. Kemudikan
setelah 2 detik diikuti pergerakan oleh servo S1 (servo makanan) untuk mendorong
makanan keluar dilubang keluaran makanan vending machine. Ketika statemen true
sudah dilakukan, maka servo akan kembali ke posisi awal. Kembalinya servo ke
posisi awal ini berarti microbit sedang menjadalanya statemen false dari logic “if”.
Latihan Praktikum
- Buatlah mekanika/ algoritma yang lebih bagus dan lebih menarik menurut
versi kalian. Hal ini bertujuan sebagai bentuk penyempurnaan dari vending
machine yang telah dibuat saat praktikum agar lebih realistis.
Hal yang mungkin dapat ditambahkan:
• Tersedianya penampung makanan dan memastikan makanan daat
keluar satu persatu saat di dorong oleh aktuator.
• System password untuk drawer penampung koin vending machine.
• Other idea.
- Demokan hasilnya dalam bentuk video!
Istilah IoT sudah sering/familiar kita dengar. IoT (Internet of Things) ini
merupakan teknologi dimana memungkinkan komunikasi/pertukaran “things”
melalui media internet. Things yang dimaksud adalah segala macam sensor,
aktuator, benda, dan perangkat yang memiliki akses untuk terhubung ke internet.
Pemanfaatan IoT ini sendiri sering dijumpai dalam kehidupan sehari-hari. Misal,
pada smartwacth dimana informasi tentang detang jantung, langkah kaki dll, bisa
tersimpan di akun kita, dan kita bisa mengakses data tersebut melalui sebuah
layanan aplikasi/website yang disediakan dan dapat diakses melalui internet.
Pada project ini, kita akan mencoba mengimpelementasikan pemanfaatan IoT di
bidang pertanian, yaitu membuat Greenhouse:Bit dimana kita bisa memantau suhu,
kelembapan udara, kelembapan tanah, dan intensitas cahaya yang ada pada ruangan
greenhouse tersebut.
1. ESP-01
ESP8266 merupakan platform yang sangat murah tetapi benar-benar efektif untuk
digunakan berkomunikasi atau kontrol melalui internet baik digunakan secara
standalone (berdiri sendiri) maupun dengan menggunakan mikrokontroler
tambahan. Di pasaran ada beberapa tipe dari keluarga ESP8266 yang beredar,
tetapi yang paling banyak dan mudah dicari di Indonesia yaitu tipe ESP-01, ESP-
07, dan ESP-12. Untuk secara fungsi hampir sama tetapi perbedaannya terletak
pada pin GPIO (General Purpose Input Output) pada masing – masing tipe.
Berikut beberapa tipe dari keluarga ESP8266 antara lain:
Pada tutorial kali ini akan dibahas tentang modul ESP-01 yang digunakan dalam
project ini. ESP-01 merupakan modul yang memungkinkan mengakses
mikrokontroler melalui internet.Modul ini tergolong StandAlone atau System on
Chip yang tidak selalu membutuhkan mikrokontroler untuk mengontrol Input
Ouput yang bisaa dilakukan pada mikrokontroler lain seperti arduino dikarenakan
ESP-01 dapat bertindak sebagai mini komputer, tetapi dengan kondisi jumlah GPIO
yang terbatas.
Keterangan :
2. DHT11
Sensor DHT11 adalah salah satu jenis sensor yang banyak digunakan pada project
microcontroller. Sensor ini memiliki keunikan yaitu dapat membaca suhu
(temperature) ruangan dan kelembapan udara (humidity). Sensor ini dikemas dalam
bentuk kecil dan ringkas, serta harganya yang terjangkau. Kegunaan sensor DHT11
ini bisaanya dipakai pada project monitoring suhu ruangan maupun kelembapan
udara pada berbagai kondisi ruang dan lingkungan.
Susunan Pin
Sensor DHT11 memiliki 2 versi, yatu versi 4 pin dan versi 3 pin. Tidak ada
perbedaan karakteristik dari 2 versi ini. Pada versi 4 pin,. Pin 1 adalah tegangan
sumber, berkisar antara 3V sampai 5V. Pin 2 adalalah data keluaran (output) . Pin
Rh =ma/mt x 100%
Keterangan:
Rh = Kelembaban Tanah (%)
ma = Massa Air (Gram)
mt = Massa Tanah (Gram)
4. Relay
Relay adalah Saklar (Switch) yang dioperasikan secara listrik dan merupakan
komponen Electromechanical (Elektromekanikal) yang terdiri dari 2 bagian utama
yakni Elektromagnet (Coil) dan Mekanikal (seperangkat Kontak Saklar/Switch).
Relay menggunakan Prinsip Elektromagnetik untuk menggerakkan Kontak Saklar
sehingga dengan arus listrik yang kecil (low power) dapat menghantarkan listrik
yang bertegangan lebih tinggi.
▪ Normally Close (NC) yaitu kondisi awal sebelum diaktifkan akan selalu
berada di posisi CLOSE (tertutup)
▪ Normally Open (NO) yaitu kondisi awal sebelum diaktifkan akan selalu
berada di posisi OPEN (terbuka)
Berdasarkan gambar diatas, sebuah Besi (Iron Core) yang dililit oleh sebuah
kumparan Coil yang berfungsi untuk mengendalikan Besi tersebut. Apabila
Kumparan Coil diberikan arus listrik, maka akan timbul gaya Elektromagnet yang
kemudian menarik Armature untuk berpindah dari Posisi sebelumnya (NC) ke
posisi baru (NO) sehingga menjadi Saklar yang dapat menghantarkan arus listrik di
posisi barunya (NO). Posisi dimana Armature tersebut berada sebelumnya (NC)
akan menjadi OPEN atau tidak terhubung. Pada saat tidak dialiri arus listrik,
Armature akan kembali lagi ke posisi Awal (NC). Coil yang digunakan oleh Relay
untuk menarik Contact Poin ke Posisi Close pada umumnya hanya membutuhkan
arus listrik yang relatif kecil.
Karena Relay merupakan salah satu jenis dari Saklar, maka istilah Pole dan Throw
yang dipakai dalam Saklar juga berlaku pada Relay. Berikut ini adalah penjelasan
singkat mengenai Istilah Pole and Throw :
Berdasarkan penggolongan jumlah Pole dan Throw-nya sebuah relay, maka relay
dapat digolongkan menjadi :
▪ Single Pole Single Throw (SPST) : Relay golongan ini memiliki 4 Terminal,
2 Terminal untuk Saklar dan 2 Terminalnya lagi untuk Coil.
▪ Single Pole Double Throw (SPDT) : Relay golongan ini memiliki 5
Terminal, 3 Terminal untuk Saklar dan 2 Terminalnya lagi untuk Coil.
▪ Double Pole Single Throw (DPST) : Relay golongan ini memiliki 6
Terminal, diantaranya 4 Terminal yang terdiri dari 2 Pasang Terminal
Saklar sedangkan 2 Terminal lainnya untuk Coil. Relay DPST dapat
dijadikan 2 Saklar yang dikendalikan oleh 1 Coil.
▪ Double Pole Double Throw (DPDT) : Relay golongan ini memiliki
Terminal sebanyak 8 Terminal, diantaranya 6 Terminal yang merupakan 2
pasang Relay SPDT yang dikendalikan oleh 1 (single) Coil. Sedangkan 2
Terminal lainnya untuk Coil.
Selain Golongan Relay diatas, terdapat juga Relay-relay yang Pole dan Throw-nya
melebihi dari 2 (dua). Misalnya 3PDT (Triple Pole Double Throw) ataupun 4PDT
(Four Pole Double Throw) dan lain sebagainya. Untuk lebih jelas mengenai
Penggolongan Relay berdasarkan Jumlah Pole dan Throw, silakan lihat gambar
dibawah :
Sebelum membuat channel thingspeak, kita perlu login dulu menggunakan email
dan password yang sudah terdaftar. Apabila belum terdaftar, kita bisa mendaftarkan
akun kita secara gratis. Kia hanya perlu mengisi data-data pada kolomm yang telah
disediakan.
Setelahnya, klik Continue dan kita diharuskan memverifikasi akun email kita.
Setelah verifikasi kita akan di arahkan untuk membuat password. Setelah berhasil,
kita akan dihantarkan pada tampilan menu utama.
Kita sudah mempunyai 4 Field Chart, yaitu chart temperature untuk suhu,
humadity kelembapan udara, soil kelembapan tanah dan light level intensitas
cahaya. Agar data yang ditangkap oleh sensor bisa di visualisasikan pada
thingspeak, kita perlu sebuah jembatan yang menghubungkan antara perangkat
Pinout
Modul Power
Komponen Pin Board Microbit
Supply
ESP 01 VCC 5V
Langkah – langkah
1. Buka Aplikasi Makecode kamu yang sudah terinstall terlebih dahulu
ataupun secara Online dengan URL :
https://makecode.microbit.org/#editor. Kita perlu memasukkan ekstensi
terlebih dahulu untuk kebutuhan blok program ESP-01 dan Thingspeak.
Masukkan keyword ESP8266 pada pencarian ekstensi. Klik ekstensi
(lingkaran merah) untuk proses instalasi. Setelah berhasil, kita akan melihat
tools baru, yaitu ESP8266 Thingspeak.
Sampai langkah ini, program sudah jadi dan bisa kita test di rangkaian kita.
Latihan Praktikum
- Tambahkan sensor HCSR-04 yang kita analogikan sebagai pemantau debit
air pada tangki persediaan air greenhouse. Tampilkan debit air tersebut
pada channel thingspeak kalian masing-masing !
Dasar Teori
1. Sensor Infrared
Sebagai Pendeteksi Benda, Sensor Infrared adalah komponen elektronika
yang dapat mendeteksi benda ketika cahaya infra merah terhalangi oleh benda.
Sensor infared terdiri dari led infrared sebagai pemancar dan fototransistor sebagai
penerima cahaya infra merah. (http://elektronika-dasar.web.id/infra-red-ir-
detektor-sensor-infra-merah/) Led infrared sebagai pemancar cahaya infra merah
merupakan singkatan dari Light Emitting Diode Infrared yang terbuat dari bahan
Galium Arsenida (GaAs) dapat memancarkan cahaya infra merah dan radiasi panas
saat diberi energi listrik. Proses pemancaran cahaya akibat adanya energi listrik
yang diberikan terhadap suatu bahan disebut dengan sifat elektroluminesensi.
𝒗∗𝒕
𝑹= 𝒅𝒆𝒏𝒈𝒂𝒏 𝒗 = 𝟑𝟒𝟎 𝒎/𝒔
𝟐
Spesifikasi HC-SR04:
Tegangan Input 5 Volt
Frekuensi 40 kHz
Range Pembacaan 2 cm – 400 cm
Akurasi 3 mm
Sudut Pengukuran 15°
Dimensi 45 20 * 15 mm
Langkah – langkah
1. Buka Aplikasi Makecode kamu yang sudah terinstall terlebih dahulu
ataupun secara Online dengan URL :
https://makecode.microbit.org/#editor. Kita perlu memasukkan ekstensi
terlebih dahulu untuk kebutuhan blok program ESP-01 dan Thingspeak.
Masukkan keyword ESP8266 pada pencarian ekstensi. Klik ekstensi
(lingkaran merah) untuk proses instalasi. Setelah berhasil, kita akan melihat
tools baru, yaitu ESP8266 Thingspeak.
3. Disini kita membutuhkan beberapa blok forever. Blok forever pertama kita
gunakan untuk membuat program counter telur menggunakan sensor IR.
Jadi ketika ada telur yang melewati sensor IR, maka akan terhitung counter
6. Langkah terakhir, kita siapkan program di on start. Kita set dulu counter nya
ke 0 setiap microbit kita jalankan. Konfigurasikan juga RX,TX,Baud
Rate,Wifi SSID dan Wifi PW sesuai dengan Wifi kita. Sampai langkah ini,
program kita sudah ready dan siap di test.