Modul Prak Mikrokontroler 2023
Modul Prak Mikrokontroler 2023
MIKROKONTROLER
Website : www.itpln.ac.id
KATA PENGANTAR
Segala puji syukur kepada Tuhan Yang Maha Esa yang telah memberikan berkat kepada
hamba-Nya untuk dapat menyelesaikan Modul Praktikum Mikrokontroler ini dengan penuh
semangat. Semoga modul ini dapat memberikan wawasan yang lebih luas kepada praktikan, dan
semoga praktikan bisa memahami tentang isi dari modul yang kami rancang ini. kami meminta
maaf yang sebesar - besarnya apabila ada beberapa kekurangan, kesalahan penulisan, serta
penyampaian pada modul ini yang kurang baik bagi para praktikan. Kami juga menyadari
sepenuhnya bahwa modul ini masih belum dapat memenuhi seluruh harapan, sehingga beberapa
perbaikan dan penyempurnaan masih diperlukan. Oleh karena itu, kami mengharapkan kritik dan
saran untuk menjadikan modul ini lebih baik lagi di masa depan. Atas perhatian sekalian, kami
mengucapkan terima kasih.
Meyhart Torsna Bangkit Sitorus, S.T, M.Eng Ir. Tasdik Darmana, M.T
Asisten Laboratorium :
A. Tujuan Percobaan :
1. Memahami penggunaan C++ dalam Pemrograman Mikrokontroller
2. Memahami penggunaan arduino IDE
B. Dasar Teori
Sebelum kita mengenal jauh tentang mikrokontroller (arduino) kita harus berkenalan denganaplikasi
Arduino IDE yaitu sebuah aplikasi yang digunakan untuk mengirim kode program ke
mikrokontrollernya. Berikut cara instalasi arduino IDE di windows:
1. Pastikan praktikan sudah mengunduh aplikasi Arduino IDE sesuai dengan sistem operasi
komputer, klik link beriku untuk mengunduh aplikasi.
Arduino IDE
Untuk library yang akan digunakan selama praktikum, terdapat pada link berikut :
https://bit.ly/LibraryArduinoPrakMikon
2. Ekstrak file yang diunduh sebelumnya lalu klik file yang bertipe aplikasi seperti berikut.
Atau klik file arduino IDE yang diakhiri “.exe”.
3. Klik “I agree” lalu pilih aplikasi dapat tersedia di pengaturan yang diinginkan.
Fungsi analog I/O (input dan output) : fungsi yang digunakan untuk mengirim atau
menerima sinyal analog. Contoh sintaxnya : analogWrite(pin , nilai) dan analogRead(pin).
Fungsi tone() : fungsi yang digunakan untuk menghasilkan sinyal kotak dengan frekuensi
tertentu. Biasanya fungsi ini diterapkan pada koomponen yang menghasilkan bunyi seperti
buzzer. Contoh sintaxnya : tone(pin, frekuensi, durasi).
Fungsi delay() : fungsi yang digunakan untuk menjeda program yang berjalan dengan jeda
waktutertentu. Contoh sintaxnya : delay(nilai).
Fungsi perulangan : fungsi yang dapat mengulang pernyataan-pernyataan yang ada di dalam
cakupannya. Salah satu contoh sintaxnya :
void loop(){
for (int b=0;b<a;b++){
digitalWrite(3,HIGH);
delay(1000);
digitalWrite(3,LOW);
delay(1000);
Serial.println(b);
if(b==3){
Serial.println("diulang");
break;
}
A. Tujuan Percobaan :
1. Memahami konsep dasar Input, Proses, dan Output.
2. Merangkai rangkaian LED dan Potensiometer dengan menggunakan Arduino
sebagaiMikrokontroler.
3. Memahami cara kerja rangkaian dan Source Code LED dan Potensiometer.
B. Teori Modul
Arduino IDE adalah software yang digunakan untuk membuat sketch pemrogaman atau dengan
kata lain arduino IDE sebagai media untuk pemrogaman pada board yang ingin diprogram.
Arduino IDE ini berguna untuk mengedit, membuat, meng-upload ke board yang ditentukan, dan
meng-coding program tertentu. Arduino IDE dibuat dari bahasa pemrogaman JAVA, yang
dilengkapi dengan library C/C++(wiring), yang membuat operasi input/output lebih mudah.
Struktur dasar program Arduino setidak nya terdiri dari 3 Bagian, ini sudah di bahas juga secara
singkat di link belajar arduino ini, tiga bagian ini adalah sebagai berikut,
1) Global Variable
Apabila di dalam kode program membutuhkan sebuah variabel yang dapat dikenali oleh
semua lingkungan dalam program yang kita buat, maka variabel tersebut harus dideklarasikan
sebagai variabel yang bersifat global.
Dalam bahasa C++ sendiri kita telah mengetahui bahwa struktur program dalam bahasa
C++ selalu ada fungsi utama dengan nama main() . Apabila kita mendeklarasikan sebuah
variabel diluar fungsi main() / fungsi lain / prosedur lain, maka dengan sendirinya compiler
akan menganggap variabel tersebut sebagai variabel global.
Berbeda dengan variabel global, variabel lokal adalah variabel yang hanya dikenali oleh
sebuah fungsi / prosedur saja (hanya dikenali pada fungsi / prosedur tempat variabel tersebut
dideklarasikan). Hal tersebut karena proses deklarasi variabel lokal dilakukan di dalam
lingkup fungsi yang dimaksud.
2) Setup
Unit Register
Void setup pada program Arduino adalah sebuah tempat atau fungsi untuk men deklarasi
fungsi fungsi mikrokontroller pada Arduino. Chip mikrokontroller nya memiliki register yang
mem fungsikan apakah PIN di gunakan sebagai input, atau sebagai output, apakah di gunakan
komunikasi Serial, dan lain lain.
Sebagai Contoh, jika di Arduino kita cukup menggunakan perintah di bawah ini untuk setting
pin apakah sebagain input atau output
D. Rangkaian Percobaan
1.) Rangkaian Percobaan Output
void setup(){
pinMode(led1, OUTPUT);
void loop(){
digitalWrite(led1, HIGH);
delay(500);
digitalWrite(led1, LOW);
delay(500);
void setup(){
pinMode(led, OUTPUT);
Serial.begin(9600);
void loop(){
digitalWrite(13, HIGH);
}
else{
digitalWrite(13,LOW);
Serial.println(angka);
A. Tujuan Percobaan :
1. Merangkai rangkaian LCD dengan Arduino sebagai Mikrokontroler.
2. Memahami cara kerja rangkaian dan Source Code LCD.
B. Teori Modul
LCD (Liquid Crystal Display) adalah suatu jenis media tampilan yang menggunakan
kristal cair sebagai penampil utama. LCD (Liquid Crystal Display) bisa menampilkan suatu
gambar/karakter dikarenakan terdapat banyak sekali titik cahaya (piksel) yang terdiri dari satu
buah kristal cair sebagai titik cahaya. Walau disebut sebagai titik cahaya, namun Kristal cair ini
tidak memancarkan cahaya sendiri. LCD 16x2 dapat menampilkan sebanyak 32 karakter yang
terdiri dari 2 baris dan tiap baris dapat menampilkan 16 karakter.
Pada LCD 16×2 pada umumnya menggunakan 16 pin sebagai kontrolnya, tentunya akan
sangat boros apabila menggunakan 16 pin tersebut. Karena itu, digunakan driver khusus sehingga
LCD dapat dikontrol dengan modul I2C atau Inter-Integrated Circuit. Dengan modul I2C, maka
LCD 16x2 hanya memerlukan dua pin untuk mengirimkan data dan dua pin untuk pemasok
tegangan. Sehingga hanya memerlukan empat pin yang perlu dihubungkan ke NodeMCU yaitu :
• GND : Terhubung ke ground
• VCC : Terhubung dengan 5V
• SDA : Sebagai I2C data dan terhubung ke pin D2
• SCL : Sebagai I2C data dan terhubung ke pin D1
#include <LiquidCrystal_I2C.h>
void setup()
lcd.init();
lcd.backlight();
void loop()
lcd.clear();
lcd.print("Praktikum Mikon");
lcd.setCursor(0, 1);
lcd.print("Modul 2");
delay(5000);
lcd.clear();
lcd.print("Aku Suka");
lcd.setCursor(0, 1);
lcd.print("Belajar Mikon");
delay(5000);
A. Tujuan Percobaan :
1. Merangkai rangkaian Push Button dan Relay dengan Arduino sebagai Mikrokontroler.
2. Memahami cara kerja rangkaian dan Source Code Push Button dan Relay.
B. Dasar Teori
Push Button (saklar tombol tekan) adalah perangkat / saklar sederhana yang berfungsi untuk
menghubungkan atau memutuskan aliran arus listrik dengan sistem kerja tekan unlock (tidak
mengunci). Sistem kerja unlock disini berarti saklar akan bekerja sebagai device penghubung atau
pemutus aliran arus listrik saat tombol ditekan, dan saat tombol tidak ditekan (dilepas), maka saklar
akan kembali pada kondisi normal. Sebagai Perangkat penghubung atau pemutus, push button
switch hanya memiliki 2 kondisi, yaitu On dan Off (1 dan 0). Istilah On dan Off ini menjadi sangat
penting karena semua perangkat listrik yang memerlukan sumber energi listrik pasti membutuhkan
kondisi On dan Off (Hidup atau Mati).
• NO (Normally Open), merupakan kontak terminal dimana kondisi normalnya terbuka (aliran
arus listrik tidak mengalir). Dan ketika tombol saklar ditekan, kontak yang NO ini akan
menjadi menutup (Close) dan mengalirkan atau menghubungkan arus listrik. Kontak NO
digunakan sebagai penghubung atau menyalakan sistem circuit (Push Button ON).
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. Sebagai contoh, dengan Relay yang
menggunakan Elektromagnet 5V dan 50 mA mampu menggerakan Armature Relay (yang berfungsi
sebagai saklarnya) untuk menghantarkan listrik 220V 2A.
E. Program Percobaan :
void setup()
pinMode(13, INPUT);
pinMode(3, OUTPUT);
Serial.begin(9600);
void loop(){
Serial.println(pusshed);
if(pusshed == 0){
digitalWrite(3, HIGH);
}else{
digitalWrite(3, LOW);}
A. Tujuan Percobaan :
1. Merangkai rangkaian Sensor Ultrasonik dengan Arduino sebagai Mikrokontroler.
2. Memahami cara kerja rangkaian dan Source Code Sensor Ultrasonik.
B. Dasar Teori
Sensor ultrasonik adalah sebuah sensor yang berfungsi untuk mengubah besaran fisis (bunyi)
menjadi besaran listrik dan sebaliknya. Cara kerja sensor ini didasarkan pada prinsip dari pantulan
suatu gelombang suara sehingga dapat dipakai untuk menafsirkan eksistensi (jarak) suatu benda
dengan frekuensi tertentu. Disebut sebagai sensor ultrasonik karena sensor ini menggunakan
gelombang ultrasonik (bunyi ultrasonik).
Gelombang ultrasonik adalah gelombang bunyi yang mempunyai frekuensi sangat tinggi yaitu 20.000
Hz. Bunyi ultrasonik tidak dapat di dengar oleh telinga manusia. Bunyi ultrasonik dapat didengar
oleh anjing, kucing, kelelawar, dan lumbalumba. Bunyi ultrasonik nisa merambat melalui zat padat,
cair dan gas. Reflektivitas bunyi ultrasonik di permukaan zat padat hampir sama dengan reflektivitas
bunyi ultrasonik di permukaan zat cair. Akan tetapi, gelombang bunyi ultrasonik akan diserap oleh
tekstil dan busa.
Pada sensor ultrasonik, gelombang ultrasonik dibangkitkan melalui sebuah alat yang disebut dengan
piezoelektrik dengan frekuensi tertentu. Piezoelektrik ini akan menghasilkan gelombang ultrasonik
(umumnya berfrekuensi 40kHz) ketika sebuah osilator diterapkan pada benda tersebut. Secara umum,
alat ini akan menembakkan gelombang ultrasonik menuju suatu area atau suatu target. Setelah
gelombang menyentuh permukaan target, maka target akan memantulkan kembali gelombang
tersebut. Gelombang pantulan dari target akan ditangkap oleh sensor, kemudian sensor menghitung
selisih antara waktu pengiriman gelombang dan waktu gelombang pantul diterima. Kisaran jarak yang
dapat diukur sekitar 2-450 cm.
E. Program Percobaan :
#define trigPin 3
#define echoPin 2
#define led 13
void setup()
Serial.begin (9600);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(led, OUTPUT);
void loop()
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
if (distance < 4)
digitalWrite(led,HIGH);
}else{
digitalWrite(led,LOW);
Serial.println("Out of range");
}else{
Serial.print(distance);
Serial.println(" cm");
delay(500); }
A. Tujuan Percobaan :
1. Merangkai rangkaian Keypad dengan Arduino sebagai Mikrokontroler.
2. Memahami cara kerja dan Source Code Keypad.
B. Dasar Teori
Keypad merupakan antarmuka antara komunikasi perangkat elektronik dengan manusia
yang disebut dengan istilah HMI (Human Machine Interface). Keypad adalah kumpulan tombol
numerik atau alfanumerik dengan jumlah tombol yang terbatas. Keypad numerik hanya berisi
tombol karakter angka, dari 0 – 9, sedangkan keypad alfanumerik sama dengan keypad numeric
dengan ditambahi karakter alphabet A – D. Kedua tipe keypad ini dilengkapi dengan spesial
karakter ‘*’ dan ‘#’.
Keypad 4x4 adalah sebuah alat yang terdiri dari 16 saklar push button yang disusun secara
matriks 1,2,3,4,5,dan 6. Kontruksi matrix memiliki 4 baris dan 4 kolom yang keypad berupa push
buttom yang diletakkan setiap persilangan kolom dan barisnya. Rangkaian Matrix pada keypad
diatas terdiri dari 16 saklar push buttom dengan konfirgurasi 4 baris dan 4 kolom. 8 Line terdiri
dari 4 baris dan 4 kolom yang akan di hubungkan dengan port mikrokontroller 8 bit. Sisi baris
dan dari matrix keypad di tandai dengan Row1, Row2, Row3 dan Row 4. Pada sisi kolom ditandai
dengan nama Col1, Col2, Col3 dan Col4. Sisi input atau output dari matrix keypad 4x4 ini tidak
mengikat sehingga membuatnya dapat di konfirgurasi kolom sebagai input dan baris sebagai
output ataupun sebaliknya.
D. Rangkaian Percobaan
E. Program Percobaan :
#include <Keypad.h>
#define ROWS 4
};
void setup()
Serial.begin(9600);
void loop(){
if(tombol){
Serial.println(tombol);
Serial.begin(9600);
void loop(){
if(tombol){
Serial.println(tombol);
A. Tujuan Percobaan :
1. Merangkai rangkaian RFID dengan Arduino sebagai Mikrokontroler.
2. Memahami cara kerja rangkaian dan Source Code RFID.
B. Dasar Teori
RFID (Radio Frequency Identification) adalah sebuah metode identifikasi dengan
menggunakan sarana yang disebut label RFID untuk menyimpan dan mengambil data jarak jauh.
Label atau kartu RFID adalah sebuah benda yang bisa dipasang atau dimasukkan di dalam sebuah
produk dengan tujuan untuk identifikasi menggunakan gelombang radio. Label RFID berisi
informasi yang disimpan secara elektronik. Label RFID terdiri atas mikrochip silikon dan antena.
Label yang pasif tidak membutuhkan sumber tenaga, sedangkan label yang aktif membutuhkan
sumber tenaga untuk dapat berfungsi.
Sistem RFID memiliki sebuah antena yang berisi transceiver dan decoder yang membuat
dapat memancarkan sinyal kepada RFID tag sehingga dapat membaca dan menulis data. Pada
prinsipnya pada saat RFID tag melewati zona elektromagnetis membuat adanya sinyal aktivasi
yang akan dipancarkan oleh reader. Reader akan membaca atau men-decode data pada tag yang
selanjutnya akan diproses oleh computer.
D. Rangkaian Percobaan
#include<SPI.h>
#include<MFRC522.h>
void setup() {
Serial.begin (9600);
SPI.begin();
rfid.PCD_Init();
void loop() {
if(!adaKartu || !bacaSerial ){
return;
String id;
id=String(rfid.uid.uidByte[0])
+ String(rfid.uid.uidByte[1])
+ String(rfid.uid.uidByte[2])
+ String(rfid.uid.uidByte[3]);
Serial.print("ID Anda:");
Serial.println(id);
rfid.PICC_HaltA();
rfid.PCD_StopCrypto1();
A. Tujuan Percobaan :
1. Merangkai rangkaian Motor Stepper dengan Arduino sebagai Mikrokontroler.
2. Memahami cara kerja rangkaian dan Source Code Motor Stepper.
B. Teori Modul
Motor Stepper adalah jenis motor yang putarannya berdasarkan langkah (step) diskrit. Input pada
motor stepper berasal dari pulsa-pulsa digital, berdeda dengan motor DC konvensional yang
bekerja berdasarkan komutasi pada komponen brush (sikat) nya.
Gambar di atas sebelah kiri adalah arah putaran rotor motor stepper dan sebalah kanan adalah
logic phase pada setiap step. contoh bentuk pulsa yang diberikan pada kumparan untuk
menggerakkan motor stepper pada arah sesuai dengan jarum jam (clockwise). Jika diperhatikan,
signal pulsa seolah – olah berjalan dari phase A ke phase B dan seterusnya. Sehingga bagian
rotor yang diibaratkan seperti magnet akan berputar karena tertarik oleh gaya magnet yang
dibangkitkan oleh setiap phase. Pemberian signal seperti di atas adalah metode full step, sehingga
untuk 1 putaran penuh dibutuhkan 4 kali step.
E. Program Percobaan :
#include <AccelStepper.h>
#define motorPin1 8
#define motorPin2 9
#define motorPin3 10
#define motorPin4 11
#define MotorInterfaceType 8
motorPin1);
bool flagDirect = 0;
void setup()
stepper.setMaxSpeed(700);
void loop()
if(flagDirect == 0) stepper.setSpeed(600);
else stepper.setSpeed(-600);
stepper.runSpeed();
delay(1000);
stepper.setCurrentPosition(0);
A. Tujuan Percobaan :
1. Merangkai rangkaian Motor Servo dengan Arduino sebagai Mikrokontroler.
2. Memahami cara kerja rangkaian dan Source Code Motor Servo.
B. Teori Modul
Motor servo merupakan perangkat atau aktuator putar (motor) yang dirancang dengan sistem
kontrol feedback loop tertutup (close loop), sehingga dapat memastikan dan menentukan posisi
sudut dari poros output motor. Daya yang dimiliki motor servo bervariasi, mulai beberapa watt
sampai ratusan watt. Motor servo digunakan untuk berbagai keperluan seperti sistem pelacakan,
peralatan mesin dan lain sebagainya. Motor servo dibagi menjadi dua, yaitu motor serco AC dan
DC.
• Komponen Motor Servo
D. Rangkaian Percobaan
#include <Servo.h>
Servo motor;
motor.attach(6);
void loop(){
motor.write(120);
delay(500);
motor.write(90);
delay(500);
motor.write(60);
delay(500);
motor.write(30);
delay(500);
exit (0);
A. Tujuan Percobaan :
1. Memahami penggunaan ESP32 dalam perancangan Mikrokontroller
2. Memahami penggunaan DHT 11 sebagai sensor dalam Mikrokontroller
3. Memahami penggunaan Blynk IoT Platform dalam perancangan IoT Monitoring
B. Dasar Teori
ESP32
ESP32 merupakan mikrokontroler yang dikembangkan oleh Espressif. Mikrokontroler ini didesain
berbasis IoT (Internet of Things) sehingga dilengkapi dengan periferal-periferal jaringan built-in
seperti Bluetooth dan Wi-Fi. Dewasa ini, penggunaan mikrokontroler ini sudah cukup masif
dilakukan dikarenakan tuntutan untuk menyesuaikan diri dengan revolusi industri 4.0. Tabel berikut
menunjukkan spesifikasi dari ESP32.
ESP32 ini merupakan penerus dari module ESP8266. Pada ESP32 terdapat inti CPU serta Wi-Fi
yang lebih cepat, GPIO yang lebih, dan mendukung Bluetooth 4.2 konsumsi daya yang rendah.
DHT 11
Sensor DHT11 merupakan serangkaian komponen sensor dan IC kontroler yang dikemas dalam satu
paket. Sensor ini ada yang memiliki 4 pin ada pula yang 3 pin. Tapi tidak menjadi masalah karena
dalam penerapannya tidak ada perbedaan. Didalam bodi sensor yang berwarna biru atau putih
terdapat sebuah Resistor dengan tipe NTC (Negative Temperature Coefficient).
Resistor jenis ini memiliki karakteristik dimana nilai resistansinya berbanding terbalik dengan
kenaikan suhu. Artinya, semakin tinggi suhu ruangan maka nilai resistansi NTC akan semakin kecil.
Sebaliknya nilai resistansi akan meningkat ketika suhu disekitar sensor menurun.
Selain itu didalamnya terdapat sebuah sensor kelembapan dengan karkteristik resistif terhadp
perubahan kadar air di udara. Data dari kedua sensor ini diolah didalam IC kontroler. IC kontroler
ini akan mengeluarkan output data dalam bentuk single wire bi-directional.
Cara DHT11 mengukur kelembaban adalah dengan mendeteksi uap air dengan mengukur resistansi
listrik antara dua elektroda. Komponen pendeteksi kelembaban yang digunakan adalah berupa
substrat penahan kelembaban dengan elektroda.
Ketika uap air diserap oleh substrat, ion dilepaskan oleh substrat yang akan menyebabkan
peningkatan terhadap konduktivitas antar elektroda. Perubahan resistansi antara kedua elektroda
sebanding dengan kelembaban relatif. Kelembaban relatif yang lebih tinggi akan mengurangi
resistansi antara elektroda, sementara kelembaban relatif yang lebih rendah akan meningkatkan
resistansi antara elektroda.
Blynk
Blynk adalah suatu platform antarmuka yang ditujukan untuk dapat mengendalikan module
Arduino, Raspberry Pi, ESP8266, WEMOS D1, dan module yang sejenis dengan metode drag and
drop widget. BLYNK adalah platform untuk aplikasi OS Mobile (iOS dan Android) yang bertujuan
untuk kendali module Arduino, Raspberry Pi, ESP8266, WEMOS D1, dan module sejenisnya
melalui Internet.
Penggunaannya sangat mudah untuk mengatur semuanya dan dapat dikerjakan dalam waktu
kurang dari 5 menit. Blynk tidak terikat pada papan atau module tertentu. Dari platform aplikasi
inilah dapat mengontrol apapun dari jarak jauh, dimanapun kita berada dan waktu kapanpun. Dengan
catatan terhubung dengan internet dengan koneksi yang stabil dan inilah yang dinamakan dengan
sistem Internet of Things (IOT).
Blynk digunakan untuk merancang Internet of Things. Blynk mampu mengontrol Hardware dari
jarak jauh, selain itu Blynk juga dapat menampilkan data sensor , menyimpan data serta
memvisualisasikannya. Berikut merupakan 3 komponen dari aplikasi Blynk:
a. Template
Template adalah seperangkat elemen dan konfigurasi, yang digunakan untuk menampilkan semua
Perangkat dari jenis tertentu. Template dibuat oleh Pengembang dan dapat dipublikasikan untuk
dapat diakses secara global.
c. Web Dashboard
Kita perlu menyiapkan sebuah dashboard untuk bisa berinteraksi dengan perangkat kita dan
memvisualisasikan data darinya.
• Arrange : Seret widget ke area yang Anda inginkan sehingga Anda dapat membentuk
tampilan dasbor yang diinginkan
• Resize : Arahkan sudut kanan bawah widget hingga kursor berubah untuk mengubah ukuran
piktogram, tahan tombol kiri mouse sehingga Anda dapat mengubah ukuran dan/ataubentuk
widget
• Delete : Menghapus widget secara permanen. Arahkan widget dan arahkan ke kanan atas,
klik bin pictogram.
• Clone : Mengkloning widget yang dipilih (juga dapat diterapkan ke widget yang
dikonfigurasi). Arahkan kursor ke widget dan arahkan ke kanan atas, klik clone pictogram.
• Configure : Membuka jendela konfigurasi widget.
d. Datastream
Datastream digunakan untuk mengirim data dari perangkat ke platform blynk. Datastream inilah
yang bertanggung jawab untuk menyampaikan data dari mikrokontroller ke Blynk. 1 Datastream
hanya bisa mengirimkan 1 data, contohnya jika kita akan mengirimkan data suhu dan kelembaban
maka kita perlu membuat 2 datastream.
Widget Switch, digunakan untuk mengirim perintah dan melihat status biner perangkat, seperti daya
ON/OFF.
• Slider
Pindahkan tuas penggeser untuk menyetel nilai atau gunakan tombol kontrol halus + dan – untuk
menyetel nilai dengan lebih tepat.
• Switch
Cara visual yang bagus untuk menampilkan nilai numerik yang yang masuk, misalkan Suhu,
Tekanan, Volume, dll.
• Label
Label digunakan untuk menunjukkan nilai Pin Virtual misalkan panjang/jarak, massa, durasi,
volume, suhu dan tipe data lainnya termasuk string. Juga dapat menampilkan bilah level/kemajuan
(horizontal atau vertikal) dan/atau memiliki perubahan warna widget berdasarkan mendapatkan nilai
standar yang berbeda.
D. Rangkaian Percobaan
Keterangan :
b. Setelah mengisikan alamat email, blynk akan mengirimkan pesan konfirmasi ke email
yang sudah dimasukan.
d. Setelah kita membuat password, kita akan diminta untuk membuat username untuk akun
kita
Membuat Template
2. Pada template kita harus menambahkan widget yang memiliki fungsi untuk menampilkan data.
Pada praktikum ini kita akan menggunakan widget gauge. Tambahkan widget gauge pada
template.
2. Klik Edit pada pojok kanan atas. Kemudian pilih New DataStream > Virtual Pin.
• Suhu :
o PIN : V0
o Data Type : Integer
o Units : Celcius
o Min 0
o Max 500
• Kelembaban :
o PIN : V1
o Data Type : Integer
o Units : Percent(%)
Untuk mengetahui apakah program sudah berhasil, buka search >> My Device Pilih device yang
digunakan. Buka Dashboard maka terdapat dua widget yang nilainya akan berubah seiring
pengukuran sensor.
2. Tekan Edit
6. Tekan checkbox untuk mengkonfirmasi bahwa anda paham dengan ketentuan tersebut
7. Tekan DELETE
3. Pilih My New Device > Klik New Device pada pojok kanan atas > Pilih From Template
5. Setelah itu klik device info, terdapat firmware configuration. Copy tiga coding pada firmware
configuration lalu paste pada coding program di Arduino IDE
//template ID dan Device name dapat dilihat di Blynk Cloud bagian device
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
BlynkTimer timer;
void sendSensor()
float h = dht.readHumidity();
Serial.print(t);
Serial.println("C ");
Serial.print(h);
Serial.println("% ");
void setup()
// Debug console
void loop()
A. Tujuan Percobaan :
B. Dasar Teori
IoT dapat dianggap sebagai sistem dimana berbagai things terhubung sedemikian rupa sehingga
mereka dapat berinteraksi secara cerdas satu sama lain dan tentu juga dapat terhubung dengan
manusia. Namun, untuk lebih memahami definisi IoT, sejumlah organisasi standar dan badan
pengembangan yang terkait telah memberikan definisi mereka sendiri. Menurut Institute of
Electronic and Electric Engineering (IEEE):
"Internet of Things (IoT) adalah kerangka kerja di mana semua hal memiliki representasi dan
kehadiran di Internet. Lebih khusus lagi, IoT bertujuan untuk menawarkan aplikasi dan layanan baru
yang menjembatani dunia fisik dan virtual, di mana komunikasi Machine-to-Machine (M2M)
mewakili komunikasi dasar yang memungkinkan interaksi antara berbagai Things dan aplikasi di
Cloud.”
Mempertimbangkan semua perspektif sistem IoT modern, beberapa karakteristik umum dan vital
ditunjukkan pada dibawah ini.
Arsitektur IoT
Pada dunia Internet, komunikasi didasarkan pada lapisan protokol TCP/IP. Demikian pula,
paradigma IoT adalah teknologi multilayer yang mendukung komunikasi dari miliaran smart things
yang dilengkapi dengan prosesor, sensor/aktuator, dan komunikator. Mempertimbangkan elemen
dasar IoT (seperti yang ditunjukkan pada Gambar diatas), IoT pada dasarnya menghubungkan
berbagai perangkat keras ke sejumlah besar domain aplikasi.
• Network Layer
Layer tengah dalam arsitektur IoT tiga layer adalah layer network atau jaringan (juga dikenal sebagai
transmisi). Layer jaringan menerima informasi yang diproses dari layer perception dan meneruskan
data yang diterima ke antarmuka aplikasi yang jaraknya jauh dengan menggunakan jaringan
terintegrasi, Internet, dan teknologi komunikasilainnya. Sejumlah teknologi komunikasi (yaitu
Wireless Local Area Networks (WLAN), Wi-Fi, LTE, Bluetooth Low Energy [BLE], Bluetooth,
3G/4G/5G, dll) terintegrasi dengan gateway IoT yang menangani tipe data yang heterogen ke atau
dari berbagai things ke aplikasi dan sebaliknya. Selain operasi jaringan, layer jaringan dalam
beberapa kasus ditingkatkan untuk melakukan operasi informasi di dalam Cloud.
• Application Layer
Layer aplikasi di bagian paling atas dari arsitektur IoT tiga layer dan bertanggung jawab atas
penyediaan layanan yang diminta oleh pengguna, misal hasil pembacaan suhu, kelembaban, tekanan
udara, pengukuran intensitas cahaya, dll. Selain layanan yang diminta pengguna, layer aplikasi
menyediakan layanan data (yaitu data warehousing, penyimpanan big data, penambangan data, dll)
untuk melakukan data semantik analisis. Smart health, intelligent transport system, smart building,
smart industry, dan smart city adalah beberapa aplikasi dengan smart user interface pada layer
aplikasi.
Contoh arsitektur IoT 3 layer dapat berupa sistem rumah pintar yang menggunakan sensor untuk
mengumpulkan data tentang suhu, kelembapan, dan tingkat cahaya di sebuah ruangan. Data tersebut
kemudian ditransmisikan melalui jaringan nirkabel ke hub pusat, yang memproses data dan
mengirimkannya ke aplikasi seluler agar pemilik rumah dapat melihat dan mengontrolnya.
Dengan adanya sistem smart home, pemilik rumah dapat dengan mudah mengatur rumah dan
juga mengurangi pengeluaran biaya. Beberapa kelebihan yang bisa dirasakan adalah menikmati
kenyamanan tingkat tinggi, lebih efisien dalam melakukan aktivitas, hemat energi, dan
mempermudah dalam mengatur perlengkapan rumah tangga yang berteknologi tinggi.
E. Langkah Percobaan :
Konfigurasi Blynk Desktop
1. Pertama kita akan membuat template baru dengan klik menu Template > New Template >
Kemudian isikan sesuai dengan gambar berikut ini.
3. Lakukan konfigurasi seperti berikut ini, kemudian klik create lalu save.
4. Letakkan dan susun tombol switch pada template sesuai illustrasi berikut
Membuat Device
Sekarang kita akan membuat Device, kita save terlebih dahulu template yang sudah kita buat.
1. Masuk ke Template
3. Pilih My New Device > Klik New Device pada pojok kanan atas > Pilih From Template
5. Setelah itu klik device info, terdapat firmware configuration. Copy tiga coding pada firmware
configuration lalu paste pada coding program di Arduino IDE
BLYNK_WRITE(V1)
{
int pinValue1 = param.asInt();
digitalWrite(buzzer,pinValue1);
}
void setup()
{
// Debug console