Anda di halaman 1dari 32

LAPORAN AKHIR

PRAKTIKUM MIKROKONTROLER

Nama Dosen :
Gaguk Firasanto S.T,
M.T

Dibuat Oleh :
Nama : Febiyana Ramdhani
Nim : 211010100117
Kelas : 05 Telm 001
Program Studi : Teknik Elektro

FAKULTAS TEKNIK
PROGRAM STUDI TEKNIK ELEKTRO
UNIVERSITAS PAMULANG
2023
KATA PENGANTAR
Puji dan syukur kita panjatkan kehadirat Allah SWT atas segala rahmat dan
karunia-Nya, sehingga penyusun bisa menyelesaikan Laporan Praktikum
Mikrokontroler ini dengan tepat waktu. Selain itu juga, saya ucapkan terima kasih
kepada bapak Gaguk Firasanto S.T, M.T. yang sudah memberikan arahan dan
bimbingan dalam mempelajari pelajaran praktikum Dasar Sistem Kontrol ini
dengan baik dan jelas.
Laporan Praktikum ini sudah selesai saya susun dengan bantuan dari
berbagai pihak sehingga bisa memperlancar pembuatan Laporan Praktikum ini.
Adapun tujuan disusunnya laporan ini adalah sebagai syarat untuk memenuhi
tugas mata kuliah Praktikum Mikrokontroler.
Saya menyadari seutuhnya bahwa Laporan yang saya buat masih jauh dari
kata sempurna baik dari segi susunan kata, kalimat maupun tata bahasanya. Oleh
karena itu, saya terbuka untuk menerima segala masukan dan kritik yang bersifat
membangun sehingga saya bisa melakukan perbaikan agar bisa menjadi lebih baik
dan benar.
Diakhir kata, saya harapkan semoga laporan ini bisa memperoleh nilai yang
baik dan bermanfaat bagi penulis dan pembaca, terima kasih.

Tangerang, 15 Desember 2023


Penulis,

FEBIYANA RAMDHANI
211010100117

ii
DAFTAR ISI

KATA PENGANTAR.............................................................................................ii
DAFTAR ISI...........................................................................................................iii
PERTEMUAN 1 PEMROGRAMAN......................................................................1
1.1 Tujuan Pembelajaran.................................................................................1
1.2 Alat dan Bahan..........................................................................................1
1.3 Tugas.........................................................................................................1
1.4 Lembar Jawaban........................................................................................1
1.5 Kesimpulan................................................................................................3
PERTEMUAN 2 INPUT DAN OUTPUT...............................................................4
2.1 Tujuan Pembelajaran.................................................................................4
2.2 Alat dan bahan...........................................................................................4
2.3 Tugas.........................................................................................................4
2.4 Lembar Jawaban........................................................................................4
2.5 Kesimpulan................................................................................................6
PERTEMUAN 3 ANALOG DIGITAL CONVERTER..........................................7
3.1 Tujuan Praktikum......................................................................................7
3.2 Alat dan Bahan..........................................................................................7
3.3 Tugas.........................................................................................................7
3.4 Lembar Jawaban........................................................................................7
3.5 Kesimpulan................................................................................................9
PERTEMUAN 4 TIMER AND COUNTER.........................................................10
4.1 TUJUAN PEMBELAJARAN.................................................................10
4.2 Alat dan bahan.........................................................................................10
4.3 Tugas.......................................................................................................10
4.4 Lembar Jawaban......................................................................................10
4.5 Kesimpulan..............................................................................................13
PERTEMUAN 5 KOMUNIKASI SERIAL..........................................................14
5.1 Tujuan Pembelajaran...............................................................................14
5.2 Alat Dan Bahan.......................................................................................14
5.3 Tugas.......................................................................................................14
5.4 Lembar Jawaban......................................................................................14

iii
5.5 Kesimpulan..............................................................................................19
PERTEMUAN 6 INTERUPT................................................................................20
6.1 Tujuan Pembelajaran...............................................................................20
6.2 Alat dan Bahan........................................................................................20
6.3 Tugas.......................................................................................................20
6.4 Lembar Jawaban......................................................................................20
6.5 Kesimpulan..............................................................................................22
PERTEMUAN 7 INTERNET OF THINK............................................................24
7.1 Tujuan Pembelajaran...............................................................................24
7.2 Alat dan Bahan........................................................................................24
7.3 Tugas.......................................................................................................24
7.4 Lembar Jawaban......................................................................................24
7.5 Kesimpulan..............................................................................................28

iv
PERTEMUAN 1
PEMROGRAMAN

1.1 Tujuan Pembelajaran


Setelah menyelesaikan praktikum pertemuan ini mahasiswa mampu mengetahui
jenis-jenis arduino beserta pin-pinnya, memahami tentang bahasa C/CC+ arduino, arduino
IDE dan juga dapat memahami pemrograman pada sebuah arduino.

1.2 Alat dan Bahan


a. Arduino
b. Komputer/laptop
c. Software Arduino IDE
1.3 Tugas
1. Buatlah sebuah tabel yang berisi bagian-bagian yang terdapat pada sebuah arduino
IDE beserta fungsinya.
2. Buatlah sebuah pemrograman sederhana pada arduino dengan menggunakan kode
program yang terdapat pada void set up dan void loop.

1.4 Lembar Jawaban


1. Tabel bagian-bagian yang terdapat pada sebuah arduino UNO

2. Untuk Tugas dipertemuan 1 ini saya membuat program sederhana menggunakan


program Examples yang tersedia pada software Arduino IDE, yaitu Program Blink
:

void setup() {
pinMode(LED_BUILTIN, OUTPUT);
}

void loop() {
digitalWrite(LED_BUILTIN, HIGH);
delay(1000);
digitalWrite(LED_BUILTIN, LOW);
delay(1000);
}

Deskripsi program :
Pada bagian Void setup() arduino di setting untuk menggunakan LED_BUILTIN (LED
bawaan arduino) sebagai outputnya. Pada bagian void loop arduino diperintahkan untuk
mengulang terus menerus kondisi dimana LED akan menyala selama 1 detik dan mati
selama 1 detik.

1
Gambar 1. 1 Arduino UNO LED ON akan berkedip

Berikut dokumentsi dari praktikum yang telah dilakukan :

Gambar 1. 2 Hasil Upload Program ke dalam Arduino IDE

Gambar 1. 3 foto perangkat setelah upload program

2
1.5 Kesimpulan
Pada pertemuan praktikum 1 ini, sebelum kita melakukan / memprogram sebuah
mikrokontroler kita perlu tahu perangkat yang di gunakan, pin yang tersedia di perangkat,
dan bahasa apa yang digunakan agar kita dapat mengetahui apa saja sintax yang
digunakan. Karena tanpa mengetahui dan mengerti fungsi dari bahasa apa yang di gunakan
pada suatu perangkat, program tidak akan bisa diproses oleh perangkat tersebut.

3
PERTEMUAN 2
INPUT DAN OUTPUT

2.1 Tujuan Pembelajaran


Setelah menyelesaikan praktikum pertemuan ini mahasiswa mampu memahami dan
mempraktekkan tentang input atau masukan maupun output atau keluaran pada sebuah
arduino, memahami perbedaan antara pin analog atau digital baik input atau output, serta
dapat membuat sebuah program sederhana.

2.2 Alat dan bahan


a. Arduino
b. Komputer/laptop
c. Software Arduino IDE
d. Lampu LED
e. Kabel jumper
f. Pushbutton
g. Resistor
h. Breadboard

2.3 Tugas
1. Buatlah atau rangkailah sebuah rangkaian sederhana untuk menyalakan atau
mematikan LED dengan konfigurasi berikut berikut :
a. Hubungkan pin anoda LED ke pin 13 arduino melalui resitor
b. Hubungkan pin katoda LED ke ground arduino
c. Hubungkan pin input pushbutton ke pin 2 arduino dan pin lainnya ke pin
5v arduino
2. Buatlah sebuah program sederhana pada arduino untuk menghidupkan dan
mematikan sebuah LED dengan memanfaatkan digital output dan dengan saklar
pushbutton

2.4 Lembar Jawaban


1. Gambar rangkaian sederhana dengan konfigurasi pin pada soal diatas

Gambar 2. 1 Gambar Rangkaian Input dan Output

4
2. Berikut program sederhana pada arduino untuk menghidupkan dan mematikan
sebuah LED dengan memanfaatkan digital output dan dengan saklar pushbutton :

const int pinButton =


22; const int pinLed =
24; int nilaiButton = 0;

void setup() {
pinMode(pinButton, INPUT);
pinMode(pinLed, OUTPUT);
}

void loop() {
nilaiButton = digitalRead(pinButton);
if (nilaiButton == HIGH) {
digitalWrite(pinLed, HIGH);
}
else{
digitalWrite(pinLed, LOW);
}
}

Deskripsi program :
Pada bagian pinbutton dan pinled sebelumnya mendeklarasikan pin 2 sebagai pinButton,
pin 3 sebagai pinLed dan nilaiButton dimulai dari 0. Lalu pada bagian Void setup() arduino
di setting untuk menginisisasi pinbutton sebagai input dan pinLED sebagai output. Pada
bagian void loop arduino diperintahkan untuk mengulang terus menerus kondisi dimana
arduino harus membaca kondisi pada pinButton melalui nilaiButton. ketika nilaiButton
bernilai High, arduino diperintahkan untuk pinLed bernilai High. Jika nilaiButton bernilai
low, arduino diperintahkan untuk pinLed diberi nilai low juga (tidak diproses).

Berikut dokumentasi dari project praktikum pertemuan 2 yang telah di praktikan:

Gambar 2. 2 Kode program Input dan output

5
Gambar 2. 3 Gambar perangkat setelah upload program dan button tidak di tekan

Gambar 2. 4 Gambar perangkat setelah upload program dan button ditekan

2.5 Kesimpulan
Input / output adalah salah satu bagian dari komponen Arduino yang berperan
penting dalam merangkai kode program ataupun komponen nya. Tanpa kita mengetahui
input (masukan) apa yang digunakan, kode program tidak akan pernah bisa berjalan sesuai
dengan yang diharapkan.

6
PERTEMUAN 3
ANALOG DIGITAL
CONVERTER

3.1 Tujuan Praktikum


Setelah menyelesaikan praktikum pertemuan ini mahasiswa mampu untuk memahami
tentang sinyal analog dan sinyal digital, bentuk-bentuk sinyal analog maupun digital, bentuk
diagram rangkain ADC, dapat membaca nilai ADC, dan dapat mempraktekkan fungsi ADC pada
arduino.

3.2 Alat dan Bahan


a. Arduino
b. Komputer/laptop
c. Modul ADC
d. Kabel jumper
e. Breadboard
f. Sensor/potensiometer

3.3 Tugas
1. Buatlah sebuah rangkaian sederhana untuk membaca nilai sebuah ADC pada
arduino UNO dengan menggunakan potensiometer dengan konfigurasi berikut
:
a. Hubungkan pin 5v arduino ke pin pinggir kiri potensiometer
b. Hubungkan pin ground arduino ke pin pinggir kanan potensiometer
c. Hubungkan pin A5 arduino ke pin tengah potensiometer
2. Buatlah sebuah program untuk dapat di gunakan untuk membaca nilai analog
dari potensiometer

3.4 Lembar Jawaban


1. Gambar rangkaian sederhana dengan konfigurasi pin pada soal diatas

Gambar 3. 1 Rangkaian ADC dengan Potensiometer

7
2. Berikut program pada arduino untuk membaca nilai analog dari potensiometer :

int pinPot = A5;


int val = 0;

void setup(){
Serial.begin(9600);
}

void loop() {
val = analogRead(pinPot);
Serial.println(val);
delay(100);
}

Deskripsi Program :
Pada A5 dideklarasikan sebagai pinPot, lalu beri val nilai awal yaitu 0. Pada bagian Void
setup disetting untuk mengirim data ke Serial Monitor. Pada bagian void loop, val
diperintahkan untuk membaca nilai pinPot dan kemudian data pada val akan dikirim ke
Serial Monitor setiap 0,1 detik.

Berikut dokumentasi dari project praktikum pertemuan 3 yang telah di praktikan:

Gambar 3. 2 Hasil Upload kode program ADC dengan Potensiometer

8
Gambar 3. 3 Gambar Alat dan Hasil dari Conversi Analog to Digital melalui Serial
Monitor dan serial ploter

3.5 Kesimpulan
Komponen Arduino memiliki fitur conversi signal, dimana salah satunya adalah
conversi signal analog ke digital (ADC). Fungsi dari ADC ini ialah mengubah masukan
(input) analog menjadi sebuah data digital yang dapat diolah oleh mikroprosesornya
arduino.

9
PERTEMUAN 4
TIMER AND
COUNTER

4.1 TUJUAN PEMBELAJARAN


Setelah menyelesaikan praktikum pertemuan ini mahasiswa mampu merangkai rangkaian
membuat program timer sebagai pewaktu, membuat program timer sebagai penghitung dan mampu
mempraktekkan timer pada arduino UNO dengan membuat program atau sketchnya.

4.2 Alat dan bahan


a. Arduino
b. Komputer/laptop
c. Software Arduino IDE
d. Breadboard
e. Kabel jumper
f. Buzzer
g. LCD 16 X 2 I2C
h. Resistor 100 ohm

4.3 Tugas
1. Buatlah atau rangkailah rangkaian timer sebagai pewaktu
2. Kemudian buatlah sebuah program timer yang berfungsi sebagai pewaktu,
3. Rangkailah atau konfigurasikan fungsi timer sebagai penghitung
4. Kemudian buatlah sebuah program timer yang berfungsi sebagai penghitung

4.4 Lembar Jawaban


1. Rangkaian Arduino UNO untuk fungsi Timer sebagai Pewaktu

Gambar 4. 1 Rangkaian fungsi Timer sebagai Pewaktu

1
2. Kode program timer yang berfunggsi sebagai pewaktu

#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);

int runTimer = 1;
int runFor = 15; // timer
int buzzerPin = 13;
int relayPin=4;
int data = 0;

void setup() {
pinMode(buzzerPin, OUTPUT);
pinMode(relayPin,OUTPUT);
lcd.begin(16, 2);
lcd.backlight();
}

void loop() {
if(runTimer == 1){
digitalWrite(relayPin,LOW); // relay
OFF lcd.clear();
lcd.print("TIMER=");//Start timer
timer();
}
else {
digitalWrite(relayPin,HIGH); // relay ON
}

runTimer = 0;
lcd.noDisplay();
delay(250);

for(int duration = 0; duration < 100; duration ++){


digitalWrite(buzzerPin, HIGH);
delayMicroseconds(500);
digitalWrite(buzzerPin, LOW);
delayMicroseconds(500);
}
lcd.display();
delay(250);
}

void timer() {
for(int timer = runFor;timer > 0; --timer){
if(timer >= 10) {
lcd.setCursor(6,0);
}
else {

1
lcd.setCursor(6,0);
lcd.print("0");
lcd.setCursor(7,0);
}
lcd.print(timer);
lcd.print(" SECOND!");
delay(1000);
}
lcd.setCursor(0,0);
lcd.clear();
lcd.print(" TIMER ALERT!");
}

Deskripsi Program :
Program di atas akan menghitung mundur saat dijalankan berdasarkan waktu yang di
tentukan. Kemudian ketika waktu mencapai angka 0 LCD displayy akan menampilkan
“timer allert” , buzzer pun berbunyi dan relay pun akan aktif.

Berikut dokumentasi dari project praktikum pertemuan 4 yang telah di praktikan:

Gambar 4. 2 Kode program fungsi Timer sebagai Pewaktu

1
Gambar 4. 3 Running Program saat counting

Gambar 4. 4 Running Program saat Timer alert

4.5 Kesimpulan
Fungsi Timer sebagai pewaktu merupakan fungsi dimana arduino akan menghitung
mundur dari batas yang di tentukan ke 0. Dalam pengaplikasiannya fungsi timer bisa
digunakan sebagai alarm seperti praktikum kali ini.

1
PERTEMUAN 5
KOMUNIKASI SERIAL

5.1 Tujuan Pembelajaran


Setelah menyelesaikan praktikum pertemuan ini mahasiswa mampu memahami
pengertian komunikasi serial arduino, memahami fungsi dari serial komunikasi dari
arduino, jenis-jenis perintah komunikasi dari arduino, dapat merangkai rangkaian fungsi
serial komunikasi dan dapat membuat program serial komunikasi dengan arduino.

5.2 Alat Dan Bahan

a. Arduino UNO
b. LED 4 buah
c. Resistor 220 ohm 4 buah
d. Breadboard
e. Kabel jumper
f. Komputer/laptop

5.3 Tugas
1. Konfigurasikan rangkaian di bawah ini :
a. Hubungkan ke tiga katoda LED ke pin ground arduino UNO
b. Hubungkan tiap kaki/pin anoda LED ke masing-masing resistor bernilai 220
ohm,kemudian pin keluaran resistor tersebut hubungkan ke masing-masing pin
13, 12, 11 pin arduino.
2. Buatlah program sederhana dengan mengikuti skema di atas

5.4 Lembar Jawaban


1. Berikut Rangkaian yang telah saya buat berdasarkan perintah pada soal diatas :

Gambar 5. 1 Rangkaian Arduino UNO untuk praktikum Komunikasi serial

1
2. Berikut Kode program yang terdapat pada modul dan berdasarkan rangkaian di atas:

int led1 =
13; int led2
= 12; int
led3 = 11;
int out;

void setup()
{
Serial.begin(9600);
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
}

void loop()
{
if (Serial.available()>0)
{
int baca = Serial.read();
if (baca =='a')
{
out=1;
}
if (baca =='b')
{
out=2;
}
if (baca =='c')
{
out=3;
}
if(out==1)
jalan: //LED akan berjalan running
{
digitalWrite(led1, HIGH);
delay(500);
digitalWrite(led1, LOW);
delay(500);
digitalWrite(led2, HIGH);
delay(500);
digitalWrite(led2, LOW);
delay(500);
digitalWrite(led3, HIGH);
delay(500);
digitalWrite(led3, LOW);
delay(500);
Serial.println("LED
running"); loop();
1
goto jalan;
}
if(out==2)
start: // LED akan berjalan flip flop
{
digitalWrite(led1, HIGH);
digitalWrite(led2, HIGH);
digitalWrite(led3, HIGH);
delay(500);
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
delay(500);
Serial.println("LED flip flop");
loop();
goto start;
}
if(out==3)
stop:
{
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
Serial.println("LED mati");
loop();
goto stop;
}
}
}

Deskripsi Program :
Program ini memiliki tiga buah LED yang akan dihidupkan. Ketika program
berjalan Lampu tidak akan langsung aktif, melainkan kita perlu untuk memberi perintah
atau mengetikan pada kolom command serial monitor sesuai dengan apa yang ada pada
program inputnya, perintah yang bisa kita berikan dalam program ini ialah “a” untuk
menjalankan perintah LED berjalan (Running LED), “b” untuk menjalankan perintah
Ketiga LED berkedip (LED Flip Flop), dan “c” untuk mematikan semua lampu.

1
Berikut dokumentasi dari project praktikum pertemuan 5 yang telah di di praktikan :

Gambar 5. 2 Kode Program yang telah diupload ke dalam Arduino UNO

Gambar 5. 3 memanggil fungsi command LED Running

1
Gambar 5. 4 Memanggil fungsi command LED FLIP FLOP

1
Gambar 5. 5 Memanggil fungsi command LED mati

5.5 Kesimpulan
Komunikasi serial adalah dimana user itu dapat berkomunikasi / berinteraksi
dengan arduino. Komunikasi serial bisa dilakukan jika terdapat input kode program yang
diberikan memiliki bahasa / perintah yang jika diketikan / diinputkan pada kolom
command saat program berjalan, pemroses dapat dimengerti, lalu diolah.

1
PERTEMUAN 6
INTERUPT

6.1 Tujuan
Pembelajaran
Setelah menyelesaikan praktikum pertemuan ini mahasiswa mampu mengetahui
dan memahami tentang pengertian interrupt, jenis-jenis interrupt, dapat membuat atau
mempraktekkan fungsi interrupt serta dapat membuat pemrogramannya.

6.2 Alat dan Bahan


a. Arduino
b. Komputer/laptop
c. 2 buah LED
d. Kabel jumper
e. Breadboard
f. 2 buah Resistor 10 K
g. LCD 16 X 2
h. 2 buah saklar pushbutton

6.3 Tugas
1. Tentukan pin-pin pada arduino UNO yang di gunakan untuk membuat sebuah counter
interrupt, kemudian rangkailah rangkainnya.
2. Buatah program atau sketch pada arduino UNO yang sesuai dengan rangkaian yang telah
di buat pada tugas 1

6.4 Lembar Jawaban


1. Rangkaian arduino UNO yang di gunakan untuk membuat sebuah counter interrupt,
sebagai berikut :

Gambar 6. 1 Rangkaian Koneksi pin pada arduino untuk membuta counter interrupt

2
2. Kode program arduino UNO yang di gunakan untuk membuat sebuah counter interrupt
dan tersedia di modul, sebagai berikut :

#include<LiquidCrystal.h>
LiquidCrystal lcd (7,8,9,10,11,12);

volatile int output = LOW;


int i = 0;

void setup(){
lcd.begin(16,2);
lcd.setCursor(0,0);
lcd.print("LAB MIKRO");
lcd.setCursor(0,1);
lcd.print("ArduinoInterrupt");
delay(3000);

lcd.clear();
pinMode(13,OUTPUT);
attachInterrupt(digitalPinToInterrupt(2),buttonPressed1,RISING);
attachInterrupt(digitalPinToInterrupt(3),buttonPressed2,RISING);
}

void loop(){
lcd.clear();
lcd.print("COUNTER:")
; lcd.print(i);
++i;
delay(1000);
digitalWrite(13,output);
}

void buttonPressed1(){
output = LOW;
lcd.setCursor(0,1);
lcd.print("Interrupt 1");
}

void buttonPressed2(){
output = HIGH;
lcd.setCursor(0,1);
lcd.print("Interrupt2");
}
Deskripsi Program :
Program diatas hampir sama dengan timer sebelumnya, tapi program ini
menghitung dari 0 sampai tak terhingga yang di tampilkan di LCD, setelah itu program
akan coba di ganggu dengan menekan tombol 1 / 2 yang akan mengirim perintah untuk
menampilkan “Interupsi 1” / “Interupsi 2” dibawah . Ketika program menghitung nya tidak
terganggu / terus berjalan berjalan maka program tersebut berjalan dengan baik.

2
Berikut dokumentasi dari project praktikum pertemuan 6 yang telah di di praktikan :

Gambar 6. 2 Setelah Program diupload dan dijalankan

Gambar 6. 3 Tombol 1 (sebelah kiri) ditekan

2
Gambar 6. 4 Tombol 2 (Sebelah kanan) ditekan

6.5 Kesimpulan
Interupsi merupakan salah satu fungsi dimana kita dapat memicu program lain baik
eksternal / internal tanpa mengganggu jalannya program utama

2
PERTEMUAN 7
INTERNET OF THINK

7.1 Tujuan Pembelajaran


Setelah menyelesaikan praktikum pertemuan ini mahasiswa mampu memahami
konsep maupun sistem kerja internet, contoh hardware sebagai interface dengan arduino,
dapat membuat program sederhana dengan mempraktekkan atau membuat sebuah
monitoring suhu dengan IOT.

7.2 Alat dan Bahan


a. Arduino
b. Komputer/laptop
c. Software Arduino IDE
d. Modul wifi / ESP
e. Kabel jumper
f. Breadboard
g. Sensor suhu LM 35

7.3 Tugas
1. Isilah pin-pin yang kosong pada modul ESP 8266 berikut, sehingga dapat mengetahui
fungsi masing-masing pin
2. Buatlah sebuah program atau sketch internet of thing (IOT) untuk membuat monitoring
suhu dengan menggunakan sensor LM 35 dengan aplikasi web thingspeak
7.4 Lembar Jawaban
1. Tabel pada masing masing pin ESP8266 (ESP-01)

NO. PIN ESP8266 Keterangan


(ESP-01)
1. TX Transmit Data (3.3V Level)
2. GND Ground
3. CH_PD Chip Power Down (Low : Power Down Active)
4. GPIO 2 General Purpose I/O 2
5. RST Reset (Reset : LOW active)
6. GPIO 0 General Purpose I/O 1
7. VCC 3,3V (3,6V Max) Supply voltage
8. RX Receive Data (3.3V Level)

2
2. Kode program internet of thing (IOT) untuk membuat monitoring suhu dengan
menggunakan sensor LM 35 dengan aplikasi web thingspeak.
#include <ESP8266WiFi.h>

String apiWritekey = "V1D6L13AYFIHS6I6";

const char* ssid = "Galaxy M30s66D3";


const char* password = "undm8501";

const char* server = "api.thingspeak.com";


float resolution=3.3/1023;
WiFiClient client;

void setup()
{
Serial.begin(115200);
WiFi.disconnect();
delay(10);
WiFi.begin(ssid, password);
//Actual connection to WiFi is initialized by calling below
instructions.

Serial.println();
Serial.println();
Serial.print("Connecting to ");
Serial.println(ssid);

WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED)
{
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.print("ESP8266 connected to wifi...");
Serial.println(ssid);
Serial.println();
}

void loop()
{
float temp = ((analogRead(A0) * resolution) * 100);

if (client.connect(server,80))
{
String tsData = apiWritekey;
tsData +="&field1=";
tsData += String(temp);
tsData += "\r\n\r\n";

2
client.print("POST /update HTTP/1.1\n");
client.print("Host: api.thingspeak.com\n");
client.print("Connection: close\n");
client.print("X-THINGSPEAKAPIKEY: "+apiWritekey+"\
n"); client.print("Content-Type: application/x-www-
form-
urlencoded\n");
client.print("Content-Length:
");
client.print(tsData.length());
client.print("\n\n");
client.print(tsData);

Serial.print("Temperature: ");
Serial.print(temp);
Serial.println(" -->Uploaded to Thingspeak server...");
}
client.stop();
Serial.println();
Serial.println("Waiting to upload next reading...");
Serial.println();
delay(15000);
}

Deskripsi Program :
Program ini berjalan untuk membaca temperatur atau suhu pada LM35, ketika
pembacaan suhu di peroleh, hasil akan dikirimkan ke website Thingspeak dan akan tampil
dalam berbagai bentuk yang sesuai dengan apa yang di setting di thingspeaknya. Proses
pengiriman data tersebut melalui jaringan internet yang terkoneksi dengan perangkat IOT
yang digunakan. Perangkat IOT itu ialah modul ESP-8266 (NodeMCU 1.0(ESP-12E
Module)).

2
Berikut dokumentasi dari project praktikum pertemuan 6 yang telah di di praktikan :

Gambar 7. 1 Program yang di Upload ke Arduino

Gambar 7. 2 Hasil dari data yang dikirimkan ESP ke Thingspeak

2
Gambar 7. 3 Perangkat yang di gunakan dan konfigurasi pin yang di gunakan

7.5 Kesimpulan
Internet Of Things merupakan salah satu fitur yang tersedia pada perangkat
arduino, namun perangkat tersebut terbuat secar terpisah (Perangkat External). Dimana
perngkat ini bisa mengkoneksikan internet kedalam perangkat arduino. Dengan adanya
fitur IOT ini, user dapat mengkontrol suatu perangkat melalui jaringan internet, seperti
mematikan / menyalakan lampu rumah, AC, TV, dll

Anda mungkin juga menyukai