INTERNET OF THINGS
MODUL 3
INTEGRASI INPUT PROCESS DAN OUTPUT DALAM ARDUINO
Disusun Oleh:
Kelompok 01
1. Indah Nur Jayanti (21070121120009)
2. Ahmas Mumtaza (21070121140046)
3. RM Hendratama Rafi S. (21070121140145)
4. Almira Oktapazia (21070121140146)
DAFTAR ISI..............................................................................................................ii
DAFTAR GAMBAR.................................................................................................iii
BAB I PENJELASAN UMUM PROGRAM............................................................1
1.1 Sensor Ultrasonik...........................................................................................1
1.1.1 Pengertian Sensor Ultrasonik.........................................................................1
1.1.2 Cara Kerja Sensor Ultrasonik........................................................................2
1.1.3 Penerapan Sensor Ultrasonik.........................................................................3
1.2 Penjelasan Skenario Pada Modul...................................................................5
BAB II FLOWCHART...............................................................................................6
2.1 Flowchart Program........................................................................................6
2.2 Penjelasan Flowchart Program......................................................................10
BAB III PROGRAM ARDUINO..............................................................................12
3.1 Sketch Program..............................................................................................12
3.2 Penjelasan Sketch Program............................................................................16
DAFTAR PUSTAKA
LAMPIRAN
ii
DAFTAR TABEL(HRS OTOMATIS)
iii
DAFTAR GAMBAR(HRS OTOMATIS)
iv
BAB I
PENJELASAN UMUM PROGRAM
1
Bunyi ultrasonik tidak dapat di dengar oleh telinga manusia. Bunyi ultrasonik
bisa 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 dapat diserap oleh tekstil dan busa.
2
Dengan S merupakan jarak, t adalah selisih antara waktu pemancaran
gelombang oleh transmitter dan waktu ketika gelombang pantul diterima receiver dan
340 adalah angka cepat rambat suara dalam udara yaitu 340 m/s. Dalam rangkaian
Arduino ini menggunakan sensor ultrasonik HC-SR04. HC-SR04 merupakan sensor
ultrasonik yang berfungsi sebagai pengirim, penerima, dan pengontrol gelombang
ultrasonik. Alat ini bisa digunakan untuk mengukur jarak benda dari 2cm-4m dengan
akurasi 3mm. Mikrokontroller bisa bekerja pada order mikrosekon (1s = 1.000.000 μs)
dan satuan jarak bisa kita ubah ke satuan cm (1m = 100cm). Oleh sebab itu, rumus di
atas menjadi:
S=340 ( 1000000
100
) .t ∕ 2
S= ( 0,034
2
⋅t)
HC-SR04 memiliki 4 buah pin yang memiliki fungsi berbeda yaitu pin Vcc,
Gnd, Trigger, dan Echo. Pin Vcc untuk listrik positif dan Gnd untuk ground-nya. Pin
Trigger untuk trigger keluarnya sinyal dari sensor dan pin Echo untuk menangkap
sinyal pantul dari benda. (Limantara et al., 2017)
3
ultrasonik ini dapat untuk mendeteksi kista, miom, dan tumor payudara. Selain
digunakan untuk mendiagnosis, sinar ultrasonik juga dapat digunakan untuk
menghancurkan tumor, sebab gelombang ultrasonik ini dapat digunakan untuk
merusak jaringan tubuh tertentu. Bahkan dengan teknologi terbaru sinar
ultrasonik dapat digunakan untuk menghancurkan batu ginjal serta operasi mata
dari katarak.
b. Bidang Industri
Dalam bidang industri, gelombang ultrasonik digunakan untuk mendeteksi
keretakan pada logam, meratakan campuran besi dan timah. Gelombang
ultrasonik juga bisa digunakan untuk mendeteksi keberadaan mineral maupun
minyak bumi yang tersimpan di dalam perut bumi. Selain itu penggunaan sensor
ultrasonik juga banyak ditemui di pabrik-pabrik, yaitu sebagai pengukur level
muatan pada tangki baik itu berupa zat cair maupun padat, mensterilkan
makanan yang diawetkan dalam kaleng, dan membersihkan benda benda yang
sangat halus.
c. Bidang Pertanian
Dalam bidang pertanian, sensor ultrasonik digunakan untuk memantau tanaman,
aplikasi pupuk, pengukuran level, dan aplikasi lainnya. Sensor ultrasonik juga
digunakan untuk memantau sistem irigasi untuk mencegah over watering dan
under watering sebagai pencegahan terhadap kerusakan tanaman. Sensor
ultrasonik juga digunakan untuk memantau dan mengontrol aplikasi insektisida,
pupuk, dan pestisida. Pestisida digunakan secara luas pada tanaman untuk
memastikan kesehatan yang baik dan hasil yang maksimal. Sering kali, pestisida
ini digunakan secara berlebihan, yang menyebabkan pemborosan. Oleh karena
itu, dengan mengadopsi sensor ultrasonik dapat mendeteksi celah antara
tanaman dalam baris untuk disemprot di tempat-tempat yang tidak ada tanaman.
d. Bidang Militer
Dalam bidang militer, gelombang ultrasonik digunakan sebagai radar atau
navigasi, baik di darat maupun di dalam air. Gelombang ultrasonik biasanya
digunakan oleh kapal pemburu untuk mengetahui keberadaan kapal selam,
apabila sensor dipasang pada kapal selam maka digunakan untuk mengetahui
4
keberadaan kapal yang berada di atas permukaan air. Selain itu, gelombang
ultrasonik juga dimanfaatkan untuk mengukur kedalaman palung laut,
mendeteksi ranjau, dan menentukan posisi sekelompok ikan.
e. Bidang Otomotif
Dalam bidang otomotif, aplikasi sensor ultrasonik yang umum sekarang ini
adalah sistem keamanan saat berkendara pada mobil. Sensor ultrasonik akan
mendeteksi rintangan dan memperingatkan bahkan mengerem sebelum
kemungkinan terjadinya tabrakan di lingkungan lalu lintas yang padat. Sensor
tersebut ditempatkan pada bumper depan dan belakang sehingga membantu
dalam menentukan kecepatan dan jarak melalui gelombang suara. Selain itu,
sensor ultrasonik juga digunakan pada sistem parkir mobil otomatis.
5
menunjukkan jarak sekaligus keterangan bahwa objek menjauh. Keadaan terakhir pada
mode 2 adalah 3 LED akan menyala ketika jarak yang dibaca sensor berada di atas
85cm dan pada serial monitor akan menunjukkan jarak sekaligus keterangan bahwa
objek hilang.
6
BAB II
FLOWCHART
7
Gambar 2.1 Flowchart Program
8
Gambar 2.1 Flowchart Program (Lanjutan)
9
Gambar 2.1 Flowchart Program (Lanjutan)
10
2.2 Penjelasan Flowchart Program
Setelah seluruh komponen sudah tersusun dengan benar, selanjutnya adalah
memulai pemrograman pada menu Code, lalu mempersiapkan penyimpanan untuk LED
dan sensor ultrasonik sebagai variabel yang akan diganti menggunakan nilai integer
sesuai dengan pin-pin yang sudah dipasangkan. Ledmerah dipasangkan pada pin nomor
4, ledkuning dipasangkan pada pin nomor 5, dan ledhijau dipasangkan pada pin nomor
6, pin echo dipasangkan pada pin nomor 2 dan pin trigger dipasangkan pada pin nomor
3. Setelah mempersiapkan storage yang dilakukan adalah membuat void setup
menggunakan pinMode. Semua LED dan sensor ultrasonik akan diatur sebagai output.
Lalu dalam void setup ini juga akan ditambahkan serial.begin 9600 untuk mengatur
kecepataan transfer data ke serial monitor. Setelah itu mengatur void setup ledmerah
OUTPUT, ledkuning OUTPUT, ledhijau OUTPUT, trig OUTPUT, dan echo INPUT
dengan serial.begin(9600). Langkah selanjutnya adalah mengatur void distance
measurement.
Langkah selanjutnya adalah menjalankan simulasi dan membuka serial monitor.
Setelah itu, jika menginput angka 1 ke serial monitor maka akan menjalankan mode 1,
tetapi jika tidak menginput angka 1 maka akan melanjutkan ke proses input 2. Apakah
proses input 2 berhasil? Jika iya maka akan melanjutkan ke input 2 tetapi, jika tidak
maka proses akan selesai. Namun, jika input berhasil maka yang terjadi selanjutnya
adalah sistem akan melanjutkan ke proses selanjutnya yang dimana jika jarak lebih dari
80 cm dan kurang dari 95 cm maka LED hijau akan menyala sekaligus menunjukkan
keterangan “aman” dengan delay 0,75 second. Jika tidak maka akan lanjut ke proses
selanjutnya dimana jarak lebih dari 50 cm dan kurang dari 80 cm maka LED merah dan
kuning akan menyala sekaligus menunjukkan keterangan “tidak aman” dengan delay
0,75 second, jika tidak maka akan lanjut ke proses selanjutnya dimana jarak kurang dari
50 cm maka LED merah, kuning, dan hijau akan menyala sekaligus menunjukkan
keterangan “bahaya” dengan delay 0,75 second. Jika tetap menjalankan mode 1, maka
proses yang akan berjalan sama. Jika tidak, komputer akan melanjutkan ke proses input
2 dimana jika input 2 tidak berhasil maka akan dilanjutkan ke proses input 1 dan jika
proses input 1 berhasil maka akan mengulang ke proses input 1 tetapi, jika tidak maka
akan berakhir di input 3.
11
Namun, jika input 2 berhasil maka sistem akan melanjutkan ke proses
selanjutnya dimana jarak lebih dari 45 cm dan kurang dari 65 cm jika ya maka akan
membuat LED hijau menyala dengan delay 0,75 second tetapi jika tidak maka akan
melanjutkan ke proses selanjutnya dimana jarak lebih dari 65 cm dan kurang dari 85 cm
jika ya maka akan membuat LED merah dan kuning menyala dengan delay 0,75 second
tetapi jika tidak akan melanjutkan ke proses selanjutnya dimana jarak lebih dari 85 cm
jika ya maka akan menyalakan LED merah, kuning, dan hijau dengan delay 0,75 second
kemudian jika tetap menjalankan mode 2 maka akan kembali ke proses yang sama.
Jika tidak akan lanjut ke input void loop. Pada void loop ini, terdapat perintah
untuk membaca jika angka 1 diinputkan pada serial monitor maka fungsi void led 1
akan berjalan dan jika yang diinputkan angka 2 pada serial monitor, maka yang akan
berjalan adalah fungsi void led 2. Kemudian jika menginput angka 3 pada serial
monitor, lalu proses akan selesai.
12
BAB III
PROGRAM ARDUINO
13
Tabel 3.1 Sketch Program (TAMBAHIN KETERANGAN LG)
1. // C++ code
2. // skenario 11
3. //
4.
5. const int ledmerah = 4 ;
6. const int ledkuning = 5 ;
7. const int ledhijau = 6 ;
8. #define echo 2 //pin echo
9. #define trig 3 //pin trigger
10.
11. long duration;
12. float distance;
13.
14.
15. void setup()//inisialisasi program
16. {
17. pinMode(ledmerah, OUTPUT);
18. pinMode(ledkuning, OUTPUT);
19. pinMode(ledhijau, OUTPUT);
20. pinMode(trig, OUTPUT);
21. pinMode(echo, INPUT);
22. Serial.begin(9600);
23. }
24.
25. void distance_measurement()//inisialisasi fungsi untuk menghitung
26. jarak
27. {
28. digitalWrite(trig, LOW);
29. delayMicroseconds(2);
30. digitalWrite(trig, HIGH);
14
delayMicroseconds(10);
Tabel 3.1 Sketch Program (Lanjutan)
31. digitalWrite(trig, LOW);
32.
33. duration = pulseIn(echo, HIGH);
34. distance = duration*(0.0343)/2;
35. }
36.
37. // mode 1
38. void led1()
39. {
40. distance_measurement();
41. if (distance >= 80 && distance <= 95){
42. digitalWrite(ledmerah, LOW);
43. digitalWrite(ledkuning, LOW);
44. digitalWrite(ledhijau, HIGH);
45. Serial.println("Jarak :" + (String)distance + "(aman)");//mencetak jarak
46. }
47. else if (distance >= 50 && distance <= 80){
48. digitalWrite(ledmerah, HIGH);
49. digitalWrite(ledkuning, HIGH);
50. digitalWrite(ledhijau, LOW);
51. Serial.println("Jarak :" + (String)distance + "(tidak aman)");
52. }
53. else if (distance < 50){
54. digitalWrite(ledmerah, HIGH);
55. digitalWrite(ledkuning, HIGH);
56. digitalWrite(ledhijau, HIGH);
57. Serial.println("Jarak :" + (String)distance + "(bahaya)");
58. }
15
59. delay(750);
60. }
Tabel 3.1 Sketch Program (Lanjutan)
61.
62. // mode 2
63. void led2()
64. {
65. distance_measurement();
66. if (distance >= 45 && distance <= 65){
67. digitalWrite(ledmerah, LOW);
68. digitalWrite(ledkuning, LOW);
69. digitalWrite(ledhijau, HIGH);
70. Serial.println("Jarak :" + (String)distance + "(objek dekat)");
71. }
72. else if (distance >= 65 && distance <= 85){
73. digitalWrite(ledmerah, HIGH);
74. digitalWrite(ledkuning, HIGH);
75. digitalWrite(ledhijau, LOW);
76. Serial.println("Jarak :" + (String)distance + "(objek menjauh)");
77. }
78. else if (distance > 85){
79. digitalWrite(ledmerah, HIGH);
80. digitalWrite(ledkuning, HIGH);
81. digitalWrite(ledhijau, HIGH);
82. Serial.println("Jarak :" + (String)distance + "(objek hilang)");
83. }
84. delay(750);
85. }
86.
87. void loop()//inisialisasi pengulangan program
16
88. {
89. char input = Serial.read();
90. while (Serial.available() == 0){
Tabel 3.1 Sketch Program (Lanjutan)
91. if (input == '1'){
92. led1();
93. } else if (input == '2'){
94. led2();
95. } else if (input == '3'){
96. digitalWrite(ledmerah, LOW);
97. digitalWrite(ledkuning, LOW);
98. digitalWrite(ledhijau, LOW);
99. exit(0);
100. }
101. }
102. }
17
8. #define echo 2 //pin echo
9. #define trig 3 //pin trigger
10
. long duration;
11 float distance;
.
12
.
13
.
14
.
Deklarasi const dan #define digunakan untuk mendefinisikan sebuah variabel
(pin input - output) dengan nama variabel baru, fungsi mendefinisikan variabel ini agar
dalam pembuatan program kita lebih mudah mengingat nama variablenya, Perbedaan
utama dari const dan #define adalah bahwa penggunaan variabel dengan const akan
mengikuti aturan variabel scoping pada bahasa C++, jadi penggunaan variabel tersebut
dapat dibatasi. Sedangkan #define tidak terbatas oleh scope, jadi berlaku di semua
bagian kode. Seperti deklarasi pada baris 5-9 yang mendefinisikan pin-pin input-output
menjadi sebuah variabel yang berarti pin 4, 5, 6 pada arduino didefinisikan sebagai led
merah, kuning dan hijau. Dan untuk pin 2 dan 3 didefinisikan sebagai pin echo dan
trigger pada sensor ultrasonik yang terhubung. Kemudian untuk baris 11 terdapat
penggunaan tipe data long yang digunakan ketika integer tidak mencukupi lagi untuk
variabel duration dan pada baris 12 penggunaan tipe data float (angka desimal) pada
variabel distance.
15. void setup()//inisialisasi program
16. {
17. pinMode(ledmerah, OUTPUT);//set pin led1
18. pinMode(ledkuning, OUTPUT);//set pin led2
19. pinMode(ledhijau, OUTPUT);//set pin led3
18
20. pinMode(trig, OUTPUT);//set pin trigger
21. pinMode(echo, INPUT);//set pin echo
22. Serial.begin(9600);//mendaftarkan serial
23. }
24.
Pada fungsi bertipe void berarti menjalankan perintah-perintah saja tanpa
memiliki value. Dan pada fungsi void setup ( ) digunakan untuk menyatakan
fungsi yang akan dijalankan pertama kali. Fungsi ini berisi kode-kode untuk
kepentingan inisialisasi. Perintah pinMode menghasilkan tegangan yang
digunakan untuk mengontrol LED dan sensor ultrasonik yang ditancapkan pada
pin tersebut. LED dan pin trigger sensor ultrasonik pada void setup() ini,
dijalankan sebagai output, sedangkan untuk pin echo sensor ultrasonik
dijalankan sebagai input. Perintah Serial.begin(9600) berarti membuat koneksi
serial band rate 9600. Band berkaitan dengan jumlah bit yang akan ditransfer
setiap detik.
25. void distance_measurement()//inisialisasi fungsi untuk menghitung
26. jarak
27. {
28. digitalWrite(trig, LOW);
29. delayMicroseconds(2);
30. digitalWrite(trig, HIGH);
31. delayMicroseconds(10);
32. digitalWrite(trig, LOW);
33.
34. duration = pulseIn(echo, HIGH);
35. distance = duration*(0.0343)/2;
36. }
19
dimulai dengan mematikan pin trigger dan kemudian setelah jeda selama 2
microseconds pin tingger kembali menyala dan jeda kembali selama 10 microseconds
sebelum pin trigger kembali mati.
Dan sedangkan untuk deklarasi duration pada baris ke 32 yang terdapat Fungsi
pulseIn() yang akan memerintahkan sistem untuk menunggu hingga pin Echo bernilai
HIGH. Lama proses menunggu akan dianggap sebagai durasi pengiriman + penerimaan
sinyal echo yang dipantulkan oleh benda. Sedangkan pada deklarasi distance bermakna
mendefinisikan satuan cm untuk jarak dengan menggunakan rumus deklarasi distance
dikali (0,0343) dibagi 2.
37. // mode 1
38. void led1()
39. {
40. distance_measurement();
41. if (distance >= 80 && distance <= 95){
42. digitalWrite(ledmerah, LOW);
43. digitalWrite(ledkuning, LOW);
44. digitalWrite(ledhijau, HIGH);
45. Serial.println("Jarak :" + (String)distance + "(aman)");
46. }
47. else if (distance >= 50 && distance <= 80){
48. digitalWrite(ledmerah, HIGH);
49. digitalWrite(ledkuning, HIGH);
50. digitalWrite(ledhijau, LOW);
51. Serial.println("Jarak :" + (String)distance + "(tidak aman)");
52. }
53. else if (distance < 50){
54. digitalWrite(ledmerah, HIGH);
55. digitalWrite(ledkuning, HIGH);
56. digitalWrite(ledhijau, HIGH);
57. Serial.println("Jarak :" + (String)distance + "(bahaya)");
58. }
20
59. delay(750);
60. }
61.
Fungsi void led1() berisi perintah-perintah untuk menjalankan skenario yang
diinginkan, dimana pada fungsi ini menggambarkan mode 1 yang bekerja pada sensor
ultrasonik yang dihubungkan. Fungsi ini diawali dengan memasukkan fungsi
distance_measurement() yang telah dibuat sebelumnya agar perintah yang ada dalam
fungsi void led1() ini juga mengacu terhadap fungsi distance_measurement().
Kemudian diikuti oleh statement yang akan dieksekusi atau running, jika
pengujian statement if(distance >= 80 && distance <= 95) benar maka akan diikuti
oleh statement digitalWrite(ledhijau, HIGH) yang berarti jika sensor mendeteksi pada
jarak antara 80 hingga 95 cm disimulasikan maka akan menghasilkan ledhijau yang
menyala dan menghasilkan kalimat “Jarak :….cm (aman)” pada serial monitor yang
merupakan efek dari perintah Serial.println("Jarak :" + (String)distance + "(aman)").
Serial.println merupakan sebuah fungsi yang digunakan untuk mengirimkan data ke
port serial monitor yang membuat baris baru pada pengulangannya dan (String)distance
digunakan untuk mencetak nilai jarak. Statement else if berlaku apabila nilai jarak
sudah bukan bernilai 80 hingga 95 cm lagi.
Selanjutnya apabila jarak yang terdeteksi tidak lagi bernilai 80 hingga 95 cm,
maka akan berlaku statement else if (distance >= 50 && distance <= 80), pada
statement ini ledhijau yang tadinya menyala akan mati dan led merah dan kuning akan
menyala dan data yang dihasilkan pada serial monitor berupa “Jarak :...cm (tidak
aman)” hal ini juga disebabkan karena adanya perintah Serial.println("Jarak :" +
(String)distance + "(tidak aman)").
Dan apabila jarak yang terdeteksi tidak lagi bernilai 50 hingga 80 cm, maka akan
berlaku statement else if (distance < 50) dimana pada statement ini ketiga led yaitu led
merah, kuning, dan hijau akan menyala bersamaan dan menghasilkan data “Jarak :...cm
(bahaya)” pada serial monitor yang disebabkan adanya perintah Serial.println("Jarak :"
+ (String)distance + "(bahaya)")
62. // mode 2
63. void led2()
21
64. {
65. distance_measurement();
66. if (distance >= 45 && distance <= 65){
67. digitalWrite(ledmerah, LOW);
68. digitalWrite(ledkuning, LOW);
69. digitalWrite(ledhijau, HIGH);
70. Serial.println("Jarak :" + (String)distance + "(objek dekat)");
71. }
72. else if (distance >= 65 && distance <= 85){
73. digitalWrite(ledmerah, HIGH);
74. digitalWrite(ledkuning, HIGH);
75. digitalWrite(ledhijau, LOW);
76. Serial.println("Jarak :" + (String)distance + "(objek menjauh)");
77. }
78. else if (distance > 85){
79. digitalWrite(ledmerah, HIGH);
80. digitalWrite(ledkuning, HIGH);
81. digitalWrite(ledhijau, HIGH);
82. Serial.println("Jarak :" + (String)distance + "(objek hilang)");
83. }
84. delay(750);
85. }
86.
Kemudian pada fungsi void led2() juga berisi perintah-perintah untuk
menjalankan skenario yang diinginkan, namun pada fungsi ini menggambarkan mode 2
yang bekerja pada sensor ultrasonik yang dihubungkan. Fungsi ini juga diawali dengan
memasukkan fungsi distance_measurement() yang telah dibuat sebelumnya agar
perintah yang ada dalam fungsi void led2() ini juga mengacu terhadap fungsi
distance_measurement().
Kemudian diikuti oleh statement yang akan dieksekusi atau running, jika
pengujian statement if (distance >= 45 && distance <= 65) benar maka akan diikuti
22
oleh statement digitalWrite(ledhijau, HIGH) yang berarti jika sensor mendeteksi pada
jarak antara 45 hingga 65 cm disimulasikan maka akan menghasilkan led hijau yang
menyala dan menghasilkan kalimat “Jarak :…..cm (objek dekat)” pada serial monitor
yang merupakan efek dari perintah Serial.println("Jarak :" + (String)distance + "( objek
dekat)"). Serial.println merupakan sebuah fungsi yang digunakan untuk mengirimkan
data ke port serial monitor yang membuat baris baru pada pengulangannya dan
(String)distance digunakan untuk mencetak nilai jarak.
Selanjutnya apabila jarak yang terdeteksi tidak lagi bernilai 45 hingga 65 cm,
maka akan berlaku statement else if (distance >= 65 && distance <= 85), pada
statement ini led merah dan kuning akan menyala dan data yang dihasilkan pada serial
monitor berupa “Jarak :…..cm (objek menjauh)” hal ini juga disebabkan karena adanya
perintah Serial.println("Jarak :" + (String)distance + "( objek menjauh").
Dan apabila jarak yang terdeteksi tidak lagi bernilai 65 hingga 85 cm, maka akan
berlaku statement else if (distance > 85) dimana pada statement ini ketiga led yaitu led
merah, kuning, dan hijau akan menyala bersamaan dan menghasilkan data “Jarak :
…..cm (objek hilang)” pada serial monitor yang disebabkan adanya perintah
Serial.println("Jarak :" + (String)distance + "( objek hilang)")
87. void loop()//inisialisasi pengulangan program
88. {
89. char input = Serial.read();
90. while (Serial.available() == 0){
91. if (input == '1'){
92. led1();
93. } else if (input == '2'){
94. led2();
95. } else if (input == '3'){
96. digitalWrite(ledmerah, LOW);
97. digitalWrite(ledkuning, LOW);
98. digitalWrite(ledhijau, LOW);
99. exit(0);
100 }
23
. }
101 }
.
102
.
Perintah void loop() ini, Setelah dijalankan satu kali fungsi ini maka akan
dijalankan lagi, dan lagi secara terus menerus sampai satu daya (power) dilepaskan.
Pada perintah ini terdapat deklarasi char input = Serial.read() yang berarti setiap
character yang diinput didefinisikan sebagai membaca data yg diterima. Kemudian
perintah while () untuk melakukan perulangan berdasarkan suatu kondisi, jadi
banyaknya perulangan tidak bisa ditentukan dengan pasti. Dalam while terdapat
pengecekan suatu kondisi, yaitu Serial.available() == 0
Pada void loop() ini juga terdapat perintah if (input == '1'){led1();} yang
bermakna jika kita menginput nilai 1 pada serial monitor maka program yang akan
berjalan terhadap arduino merupakan mode 1 yaitu void led1() namun jika kita
menginput angka 2 maka yang akan berlaku merupakan statement else if (input == '2')
{led2();} yang berarti program yang akan berjalan terhadap arduino adalah mode 2 atau
fungsi void led2(). Jika kita menginput angka 3 pada serial monitor maka setiap lampu
akan padam dan program akan berakhir yang ditandai dengan perintah exit(0).
24
DAFTAR PUSTAKA
25
LAMPIRAN
26
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
UNIVERSITAS DIPONEGORO FAKULTAS TEKNIK
Jl. Prof. H. Soedarto, S.H. DEPARTEMEN TEKNIK INDUSTRI
Tembalang – Semarang
Telp. (024) 7460052; Fax. (024) 7460052
LEMBAR ASISTENSI
PRAKTIKUM INTERNET OF THINGS
LABORATORIUM DECISION SUPPORT SYSTEM
Modul :3
Kelompok : 01
Nama Asisten : Fadia Syahrina
Asistensi ke-
Nama NIM
1 2 3
Indah Nur Jayanti 21070121120009
Ahmad Mumtaza 21070121140046
RM Hendratama Rafi S. 21070121140045
Almira Oktapazia 21070121140146
No. Materi Asistensi Approve
Bab 1 (Pin-pin pada sensor ultrasonik)
Bab 2 (Flowchart dan penjelasan)
1
Bab 3 (Sketch dan Penjelasannya)
Formatting
Bab 1 (Formatting)
2 Bab 2 (Flowchart)
Bab 3 (Penambahan keterangan, formatting)
27
Asisten,