Menggunakan Variabel

Menggunakan Variabel

Sebelumnya kita telah mempelajari dan mempraktekkan bagaimana cara mengendalikan lima buah lampu LED. Pada praktikum tersebut, kalian menuliskan program untuk menghidupkan LED secara berurutan sebagai berikut:

Pada program yang ditulis diatas, kita menuliskan delay(1000) sebanyak 6 kali dan setiap kali kita ingin menambah kecepatan kedipan lampu maka kita harus mengganti nilai 1000 yang ada didalam delay ke nilai yang lebih kecil. Penggantian nilai ini cukup memakan waktu karena kita harus mengganti nilai yang ada didalam delay satu persatu. Belum lagi jika kemudian baris program yang kita buat semakin banyak, misalnya sampai 300-an baris, maka kita akan mendapatkan kesulitan. oleh karena itu, untuk mempersingkat waktu perbaikan atau perubahan nilai, maka kita dapat menggunakan variabel untuk menyimpan suatu data yang mana nilainya bisa dipanggil dan digunakan baris lainnya didalam program.

variabel

Variabel adalah suatu simbol atau nama yang digunakan untuk merepresentasikan atau menyimpan nilai atau data dalam suatu program komputer atau dalam konteks matematika. Dalam pemrograman, variabel digunakan untuk menyimpan informasi yang dapat diakses dan diubah selama eksekusi program.

Setiap variabel memiliki tipe data yang menentukan jenis nilai yang dapat disimpan di dalamnya, seperti bilangan bulat, pecahan, string, atau jenis data lainnya. Selain itu, variabel juga memiliki cakupan (scope), yang mengindikasikan bagian dari program di mana variabel dapat diakses.

Penggunaan variabel dalam pemrogramman sama dengan penggunaannya dalam ilmu matematika, misalnya:

A + B = C

dimana A, B dan C adalah variabel yang masing-masing memiliki nilai.

A = 10

B = 20

Jadi, A + B = C sama artinya dengan 10 + 20 = 30.

Begitu pula dengan penggunaan varibel dalam programming. perhatikan contoh program berikut ini:

Keterangan program:

  1. baris 1-3 adalah pendefinisian variabel, masing-masing diberi nama A, B dan C.
  2. Pada baris ke 6, Arduino di instruksikan untuk menampilkan nilai variabel C pada serial monitor dan ketika instruksi ini dijalankan, pada serial monitor akan tampil nilai 0.
  3. Baris ke 7 kita menginstruksikan Arduino untuk melakukan operasi matematika A + B = C
  4. Pada baris ke 8 kita kembali menampilkan nilai variabel C pada serial monitor dan kali ini nilai C sudah berubah menjadi 30 yang berasal dari penjumlahan A+ B (10+20).

Menggunakan variabel untuk mengubah nilai delay( )

Dengan pengetahuan dasar kita tentang variabel, maka kita bisa memodifikasi program yang telah kita buat sebelumnya agar lebih mudah diubah nilai delay ( ) nya menjadi seperti ini:

Pada program diatas, kita menambahkan variabel bernama “waktu” pada baris pertama dan variabel ini memiliki data atau nilai sebesar 500. Selanjutnya, pada penulisan delay, kita menuliskan delay(waktu) yang artinya sama dengan delay(500) karena nilai variabel waktu adalah 500. Jika kita mengganti nilai variabel “waktu” ke nilai lainnya, misalnya 300, maka seluruh nilai pada delay akan berubah secara otomatis mengikuti nilai variabel “waktu” sehingga kita tidak lagi mengganti nilai delay satu persatu seperti sebelumnya.

Nah, itu saja penjelasan saya tentang penggunaan variabel dan pada tulisan berikutnya kita akan mengenal jenis-jenis variabel dan tipe-tipe data nya. Sekian dan terima kasih

Praktikum 2 – Mengendalikan lebih dari 3 buah LED dengan Arduino

Praktikum 2 – Mengendalikan lebih dari 3 buah LED dengan Arduino

Sebelumnya kalian sudah memperagakan cara mengendalikan 1 sampai 3 buah lampu LED dengan menggunakan Arduino. Kalian sudah mengenal beberapa fungsi dasar pada saaat memprogram Arduino yaitu setup(), loop(), pinMode(), digitalWrite() dan delay(). Selain itu, kalian juga sudah mempelajari bagaimana cara membuat rangkaian elektronik dengan menggunakan Arduino dan kabel jumper.

Pada praktikum kali ini kita akan menjelajahi penggunaan breadboard lebih dalam lagi. Untuk itu, penting bagi kalian untuk membaca tulisan ini dan tulisan sebelumnya tentang Praktikum Arduino – Blink supaya kalian lebih memahami cara kerja Arduino, breadboard dan rangkaian elektronik.

GND

Pada praktikum sebelumnya tentang Blink kalian sudah membuat rangkaian yang terdiri dari arduino dan LED. pada rangkaian itu, kaki LED yang panjang (+) dihubungkan ke salah satu pin pada Arduino dan kaki LED yang pendek dihubungkan ke resistor secara seri lalu dihubungkan lagi ke pin GND pada Arduino seperti pada gambar dibawah ini:

Jika kita ingin mengontrol LED lainnya, kita tinggal menambahkan LED dan menghubungkannya ke pin-pin yang tidak terpakai antara pin 1 sampai 13 dan ke pin GND. Namun demikian, ketika kalian akan menghubungkan lebih dari 3 LED ke Arduino, maka kalian akan menemukan masalah yaitu kurangnya pin GND. Hal ini dikarenakan Arduino hanya memiliki 3 pin GND saja yaitu pada sisi kanan atas bersebelahan dengan pin 13 dan 2 buah lagi berada di barisan power.

Untuk mengatasi hal tersebut diatas, maka kita bisa menggunakan 1 pin GND saja untuk semua sambungan yang memiliki anotasi negatif (-) dengan cara mencabangkan pin GND dengan menggunakan breadboard. perhatikan gambar dibawah ini

Pada gambar diatas, kita cukup menghubungkan satu pin GND ke salah satu titik lubang yang memiliki tanda garis biru (-) dan secara otomatis semua titik yang ada pada barisan tersebut akan menjadi GND.

Rangkaian 5 LED dengan menggunakan Arduino

Setalah memahami cara mencabangkan pin GND agar bisa dipakai bersama-sama oleh banyak komponen, maka sekarang kita sudah bisa membuat rangkaian dengan menggunakan 5 LED dengan menggunakan Arduino.

Peragakanlah rangkaian berikut ini:

Setelah rangkaian selesai dibuat, buka aplikasi Arduino IDE pada komputer atau laptop kalian, lalu programlah Arduino agar bisa menyalakan ke 5 LED secara bergantian dari lampu 1 ke lampu 5. Sebagai referensi, kalian bisa buka kembali tulisan sebelumnya disini : praktikum-arduino-blink

Silahkan diperagakan dan semoga berhasil.

Mengendalikan Motor DC dengan modul L298N dan Arduino

boy in denim jacket holding a toy with electric wires and wheel

Motor DC adalah mesin listrik yang mengubah energi listrik menjadi energi mekanik/gerakan. Motor DC sangat cocok untuk digunakan untuk menggerakkan roda robot. Pada tulisan ini, kita akan mempelajari cara mengendalikan motor DC dengan menggunakan modul L298N dan Arduino.

Pinout Modul L298N

Keterangan Gambar

Motor OutKonektor untuk menghubungkan motor
VCCInput tegangan dari power supply atau baterai
GNDGND
5VInput Logic 5V
ENA & ENBDigunakan untuk mengontrol menghidupkan/mematikan dan mengatur kecepatan motor
IN1 & IN2Kontrol arah putaran motor 1
IN3 & IN4Kontrol arah putaran motor 2

Cara Kerja Modul

INPUT 1INPUT 2Arah Putaran
LOWLOWMati
HIGHLOWMaju
LOWHIGHMundur
HIGHHIGHMati

Gambar Rangkaian

Coding

// Motor A
int enA = 9;
int in1 = 8;
int in2 = 7;
// Motor B
int enB = 3;
int in3 = 5;
int in4 = 4;

void setup() {
	//Semua pin motor sebagai output
	pinMode(enA, OUTPUT);
	pinMode(enB, OUTPUT);
	pinMode(in1, OUTPUT);
	pinMode(in2, OUTPUT);
	pinMode(in3, OUTPUT);
	pinMode(in4, OUTPUT);
	
	// motor dimatikan di awal
	digitalWrite(in1, LOW);
	digitalWrite(in2, LOW);
	digitalWrite(in3, LOW);
	digitalWrite(in4, LOW);
}

void loop() {
	directionControl();
	delay(1000);
	speedControl();
	delay(1000);
}

// fungsi dibawah ini digunakan untuk mengontrol arah putaran motor
void directionControl() {
	// kecepatan maksimum (bisa diatur antara 0-255)
	analogWrite(enA, 255);
	analogWrite(enB, 255);

	// arah maju
	digitalWrite(in1, HIGH);
	digitalWrite(in2, LOW);
	digitalWrite(in3, HIGH);
	digitalWrite(in4, LOW);
	delay(2000);
	
	// arah mundur
	digitalWrite(in1, LOW);
	digitalWrite(in2, HIGH);
	digitalWrite(in3, LOW);
	digitalWrite(in4, HIGH);
	delay(2000);
	
	// motor mati
	digitalWrite(in1, LOW);
	digitalWrite(in2, LOW);
	digitalWrite(in3, LOW);
	digitalWrite(in4, LOW);
}

// fungsi untuk mengatur kecepatan motor
void speedControl() {
	// hidupkan motor
	digitalWrite(in1, LOW);
	digitalWrite(in2, HIGH);
	digitalWrite(in3, LOW);
	digitalWrite(in4, HIGH);
	
	// Perputaran mulai dari lambat ke cepat
	for (int i = 0; i < 256; i++) {
		analogWrite(enA, i);
		analogWrite(enB, i);
		delay(20);
	}
	
	// Perputaran mulai dari cepat ke lambat
	for (int i = 255; i >= 0; --i) {
		analogWrite(enA, i);
		analogWrite(enB, i);
		delay(20);
	}
	
	// Matikan motor
	digitalWrite(in1, LOW);
	digitalWrite(in2, LOW);
	digitalWrite(in3, LOW);
	digitalWrite(in4, LOW);
}
//ulang kembali

Setelah rangkaian dan coding selesai dikerjakan, langkah berikutnya adalah mengupload program yang kita buat tadi lalu menghubungkan rangkaian ke powersupply atau baterai 12 V. Perhatikan gerakan motor dan bandingkan dengan coding yang telah kita buat.

Sekian dan terima kasih.

Praktikum Arduino – Blink

Praktikum Arduino – Blink

Seperti yang kita telah pahami bersama, Arduino adalah sebuah papan mikrokontroler yang dapat digunakan untuk mengendalikan berbagai macam sensor dan komponen elektronik sesuai dengan perintah-perintah yang kita berikan lewat penulisan program.

Pada tulisan ini, kita akan memahami dan memperagakan cara mengendalikan sebuah LED dengan Arduino. Kita akan menyalakan dan mematikan LED tersebut secara otomatis dengan rentang waktu tertentu. Dalam peragaan ini juga kita akan mempelajari cara penulisan program Arduino yang kita kenal sebagai sketch dan pengenalan beberapa fungsi-fungsi yang sering digunakan dalam pemrograman. kamu juga dapat menonton video dibawah ini untuk mempermudah pembelajaran secara visual.

Sebelum kita masuk ke bagian utama dari peragaan ini, kita membutuhkan beberapa alat dan bahan, yaitu:

Arduino UNO1 buah
Breadboard1 buah
LED (Light Emitting Diode)1 buah
Resistor 220 Ohm1 buah
Kabel JumperSecukupnya
Kabel USB1 buah
Laptop / PC1 buah

Cara Menggunakan Breadboard

Breadboard disebut juga sebagai papan uji coba elektronik. papan ini digunakan untuk mempermudah kita menguji sebuah rangkaian elektronik tanpa harus melakukan proses soldering. Selain itu, penggunaan breadboard juga memungkinkan kita untuk melakukan penggantian maupun penambahan komponen dengan mudah.

Kalau kita perhatikan gambar diatas, sebuah breadboard terdiri dari lubang-lubang kecil yang tersusun rapi dan memiliki 4 kelompok berbeda. 2 kelompok yang berada di sisi breadboard disebut dengan Power Rails, dan 2 kelompok yang ada dibagian tengah disebut dengan DIP support.

Power Rails berfungsi sebagai penghubung sumber tenaga listrik. Lubang-lubang pada power rail ini terhubung satu sama lain secara horizontal. perhatikan gambar berikut:

Setiap titik kuning pada gambar diatas menandakan bahwa titik-titik tersebut terhubung satu sama lainnya.

Gambar rangkaian dengan dan tanpa breadboard

Gambar diatas adalah gambar rangkaian antara Arduino, LED dan Resistor tanpa menggunakan breadboard. Sedangkan gambar dibawah ini adalah gambar skema rangkaian dengan menggunakan breadboard. Perhatikan kembali jalur-jalur yang terdapat pada breadboard

Praktikum Arduino – Blink

Untuk memprogram sebuah Arduino, dibutuhkan sebuah aplikasi yang bernama Arduino IDE. Aplikasi ini harus terinstal di laptop atau PC sebelum kita melakukan coding. Arduino IDE dapat di download lewat link https://www.arduino.cc/en/software.

Setelah Arduino IDE berhasil di download dan sudah terinstal, maka kita bisa langsung melakukan coding Arduino.

setup() dan loop()

langkah berikutnya, kita akan melakukan penulisan perintah-perintah agar Arduino bisa melakukan tugasnya sesuai dengan yang kita inginkan (coding). Untuk melakukannya, pertama-tama kita buka aplikasi Arduino IDE yang sudah kita instal sebelumya. Aplikasi Arduino IDE yang sudah terbuka akan terlihat seperti gambar dibawah ini:

Pada lembar kerja terlihat dua baris fungsi yaitu void setup() dan void loop(). Kedua fungsi tersebut merupakan fungsi dasar yang harus ada setiap kali kita memprogram Arduino. Jika salah satu atau kedua fungsi tersebut tidak ada atau hilang, maka kita akan mengalami error ketika akan mengupload program ke Arduino.

void setup() adalah fungsi yang perintah-perintah didalamnya hanya di eksekusi atau dijalankan sekali saja oleh Arduino yaitu saat Arduino dihidupkan atau di restart. Karena hanya akan dijalankan sekali saja, perintah-perintah yang ditulis didalamnya biasanya berisi perintah-perintah yang berupa pengaturan dasar misalnya penentuan mode pin sebagai input / output, mengaktifkan komunikasi serial, mengaktifkan sensor, display dsb.

void loop() adalah fungsi yang perintah-perintah didalamnya akan dijalankan berulang-ulang selama Arduino aktif dan hanya akan berhenti jika Arduino diaktifkan atau di restart. semua perintah dalam void loop() akan dieksekusi secara berurutan mulai dari perintah yang paling atas sampai kebawah. Setalah semua perintah di laksanakan, Arduino akan mengulang lagi perintah yang diberikan dari atas dan seterusnya sampai arduio di matikan atau di reset.

Blink

Setelah memahami kedua fungsi diatas, langkah berikutnya kita akan menuliskan perintah-perintah program dengan mengetikkan program dibawah ini langsung ke Arduino IDE:

Perhatikan kembali program yang telah ditulis, pastikan tidak ada error atau kesalahan misalnya kesalahan tulisan, huruf besar/kecil, titik koma, tanda kurung buka dan tutup dll secara manual. Setelah itu, klik tombol centang untuk memeriksa error secara otomatis. Jika tidak terdapat error maka lanjutkan ke proses upload dengan menekan tombol upload (tombol dengan tanda panah), pastikan Arduino sudah dihubungkan ke laptop atau PC dan juga sudah memilih jenis board dan port dengan benar pada aplikasi Arduino IDE lalu tunggu sampai selesai.

Penjelasan Program

Selain setup() dan loop(), pada penulisan program kita menemukan beberapa fungsi lainnya yaitu pinMode, digitalWrite dan delay yang masing-masing memiliki kegunaan yang berbeda-beda. Dibawah ini, kita akan membahas fungsi-fungsi tersebut satu persatu dengan lengkap agar dapat diaplikasikan kembali pada pemrograman berikutnya.

pinMode()

Deskripsi

pinMode berfungsi untuk mengkonfigurasikan atau mengaktifkan pin sebagai output ataupun input.

Syntax

pinMode(pin, mode);

Parameter
pinnomor pin pada Arduino, atau variabel yang berisi nomor pin
modemode pengaturan pin : OUTPUT, INPUT, INPUT_PULLUP
Contoh Penggunaan
pinMode(4, INPUT);Mengaktifkan pin 4 sebagai input (biasanya digunakan untuk membaca sensor)
pinMode(4, OUTPUT);Mengaktifkan pin 4 sebagai output
int ledPin = 4;
pinMode(ledPin, OUTPUT);
Mengaktifkan ledPin (pin 4) sebagai output)
pinMode(4, INPUT_PULLUP);mengaktifkan 4 sebagai input dengan pull up resistor internal

digitalWrite()

Deskripsi

Memberi nilai berupa HIGH atau LOW pada pin digital. Pin yang diberi nilai sebelumnya harus telah diaktifkan sebagai OUTPUT dengan pinMode. Nilai HIGH dan LOW bisa disamakan artinya dengan “on” dan “off”, “1” atau “0”, “hidup” dan “mati”.

Syntax

digitalWrite(pin, value);

Parameter
pinnomor pin pada Arduino, atau variabel yang berisi nomor pin
valueHIGH untuk membuat pin menjadi “on”
LOW untuk membuat pin menjadi “off”
Contoh Penggunaan
digitalWrite(4, HIGH);Perintah pin 4 “on”
digitalWrite(4,LOW);Perintah pin 4 “off”
int ledPin = 4;
digitalWrite (ledPin, HIGH);
perintah variabel ledPin (pin 4) “on”

Delay

Deskripsi

Menghentikan program sementara selama x milidetik (ms)

Syntax

delay(ms)

Parameter
msDiisi dengan nilai waktu dalam milidetik, misalnya 1000 = 1 detik, 500 = 1/2 detik, 2000 = 2 detik
Contoh Penggunaan
delay(1000);menghentikan pembacaan program selama 1 detik
delay(500);menghentikan pembacaan program selama 1/2 detik

Membaca intensitas cahaya dengan menggunakan LDR

Membaca intensitas cahaya dengan menggunakan LDR

LDR (Light Dependent Resistor) adalah sejenis resistor variabel yang nilai hambatannya berubah-ubah sesuai intensitas atau tingkat kecerahan cahaya. Ketika cahaya mengenai permukaan LDR, maka konduktivitas atau kekuatan hantaran listrik pada bahan LDR akan meningkat. Begitu pula sebaliknya, kemampuan menghantarkan listrik akan menurun apabila LDR tidak terpapar cahaya.

berdasarkan sifatnya ini, kita bisa menggunakannya sebagai sensor peka cahaya yang bisa dimanfaatkan untuk berbagai inovasi elektronik misalnya lampu jalan otomatis atau jendela otomatis.

Penggunaan LDR sebagai sensor dengan Arduino

LDR merupakan komponen analog, karena LDR menaikkan dan menurunkan daya hantar listrik dengan cara merubah nilai hambatan karena perubahan cahaya. Oleh karena itu, LDR akan dihubungkan ke pin Analog input pada Arduino. Perhatikan rangkaian berikut ini:

Setelah rangkaian selesai dibuat, buka software Arduino IDE dan ketikkan program dibawah ini:

int sensorPin = A0; 

int sensorValue = 0;
void setup() {
Serial.begin(9600); 
}
void loop() {
sensorValue = analogRead(sensorPin); 
Serial.println(sensorValue); 

delay(100);

}

Setelah itu, hubungkan Arduino ke komputer atau laptop kamu dan upload program yang telah ditulis tadi. Berikutnya, perhatikan hasil output lewat serial monitor sambil perlahan-lahan menutupi LDR yang terpapar cahaya dengan menggunaan tangan atau benda lainnya.

Proyek membuat lampu otomatis dengan LDR

Setelah kita memperhatikan dan memahami cara kerja LDR, berikutnya kita akan menggunakan sifat-sifat LDR ini untuk mengontrol lampu agar hidup dan mati sesuai dengan intensitas cahaya yang diterima nya. Perhatikan gambar dan kode dibawah ini:

int sensorPin = A0; //pin analog yang digunakan untuk membaca LDR
int ledPin = 7; //pin LED

int nilaiSensor = 0; //nilai awal sensor LDR

void setup() {
pinMode(ledPin,OUTPUT); //mengaktifkan pin "ledPin" sebagai output
Serial.begin(9600); //mengaktifkan serial monitor untuk membaca nilai dari sensor
}

void loop() {
nilaiSensor = analogRead(sensorPin); //membaca nilai yang dihasilkan oleh sensor
Serial.println(nilaiSensor); //menampilkan hasil pembacaan nilai sensor ke serial monitor
  if(nilaiSensor < 600){ //jika nilai sensor mencapai kurang dari 600, maka.....
    digitalWrite(ledPin,HIGH); //lampu akan dihidupkan
  }
    else{ //jika tidak.....
      digitalWrite(ledPin,LOW); //maka lampu akan dimatikan
    }
      
delay(100);

}

Program diatas sudah dilengkapi dengan penjelasan di tiap baris nya, silahkan dipahami dan diperagakan sesuai dengan hasil pengamatan yang telah dilakukan.

Demikian tulisan ini, semoga bermanfaat, selamat bereksperimen.

Computational Thinking (Cara Berfikir Komputasional)

Computational Thinking (Cara Berfikir Komputasional)
Photo by olia danilevich: https://www.pexels.com/photo/man-using-3-computers-4974914/

Ilmu komputer adalah salah satu cabang dari bidang sains yang mempelajari tentang komputasi, pengembangan perangkat keras (hardware) dan perangkat lunak (software). ilmu komputer umumnya lebih menekankan pengembangan algoritma, artificial intelligence (AI) dan pemrograman atau rekayasa perangkat lunak. Seorang ilmuwan komputer selalu dituntut untuk bisa memecahkan berbagai masalah yang berhubungan dengan dunia komputer dan komputasi dengan efisien. Oleh karena itu, mereka selalu dituntut untuk bisa berpikir secara sistematis dan logis agar bisa menyelesaikan masalah-masalah terkait teknologi komputer ini.

Computational Thinking adalah pendekatan pemecahan masalah yang terinspirasi dari cara berpikir para ilmuwan komputer. Seorang ilmuwan komputer biasanya akan menerapkan langkah-langkah kerja secara sistematis dalam mengembangkan perangkat lunak maupun perangkat keras komputer, sehingga komputer dapat bekerja dengan efisien dan sesuai dengan keinginan pembuatnya. Dalam era di mana teknologi semakin berkembang pesat dan berpacu sangat cepat seperti saat ini, kemampuan untuk berpikir secara komputasional menjadi semakin penting untuk mengatasi berbagai masalah dan tantangan, bukan hanya di dunia komputer tapi juga dalam berbagai aspek kehidupan sehari-hari. Dalam tulisan ini, kita akan mengenali apa itu konsep Computational Thinking atau cara berfikir komputasional dan melihat bagaimana penerapannya dapat memberikan manfaat nyata dalam kehidupan sehari-hari.

Fondasi Berfikir dalam Computatonal Thinking

Computational Thinking adalah pendekatan berpikir yang sistematis dan logis dalam memecahkan masalah, dengan menerapkan prinsip-prinsip ilmu komputer. Dalam penerapannya, para ilmuwan komputer menggunakan 4 fondasi berfikir komputasional yang dikenal dalam ilmu informatika, yaitu Abstraksi, Algoritma, Dekomposisi dan Pola. Penjelasan tentang 4 fondasi ini dapat kita pahami satu persatu dibawah ini:

1. Abstraksi

Abstraksi adalah proses menghilangkan detail yang tidak relevan atau bagian-bagian yang tidak penting dari suatu masalah untuk membuat masalah tersebut lebih mudah dipahami dan diselesaikan. Dalam Computational Thinking, abstraksi digunakan untuk membuat masalah lebih mudah dipecah menjadi masalah yang lebih kecil dan lebih mudah dikelola. Abstraksi juga digunakan untuk membuat solusi masalah lebih efisien dan efektif.

Ada beberapa cara untuk melakukan abstraksi. Salah satu cara yang paling umum adalah dengan menggunakan representasi/gambaran abstrak dari data. Representasi abstrak atau gambaran umum dari data dapat berupa diagram, grafik, atau tabel. Representasi abstrak dari data dapat membantu kita untuk melihat pola dan hubungan antara data yang tidak dapat dilihat dengan jelas jika kita hanya melihat data dalam bentuk aslinya.

Abstraksi adalah keterampilan yang penting dalam Computational Thinking. Keterampilan abstraksi dapat membantu kita untuk memahami masalah yang kompleks, sehingga kita dapat memecah masalah menjadi masalah yang lebih kecil, dan membuat solusi masalah yang efisien dan efektif.

2. Algoritma

Algoritma adalah serangkaian langkah yang terstruktur untuk menyelesaikan suatu masalah. Algoritma dapat digunakan untuk memecahkan masalah secara sistematis dan efisien.

Dalam Computational Thinking, algoritma digunakan untuk memecahkan masalah yang kompleks. Algoritma dapat membantu kita untuk memahami masalah dengan lebih baik, memecah masalah menjadi masalah yang lebih kecil, dan membuat solusi masalah yang efisien dan efektif.

3. Dekomposisi

Dekomposisi adalah proses memecahkan masalah yang kompleks menjadi masalah yang lebih kecil dan lebih mudah dikelola. keterampilan dekomposisi Ini adalah salah satu keterampilan yang sangat penting dalam computational thinking. Dengan keterampilan dekomposisi, masalah yang besar dan kompleks (rumit) akan terbagi menjadi blok-blok kecil yang dapat diselesaikan satu persatu dengan mudah.

.4. Pola

Adalah kemampuan untuk mengenali kemiripan maupun pola. Pola dapat ditemukan dalam data, kode, dan sistem. Pengenalan pola adalah keterampilan yang penting dalam Computational Thinking karena dapat membantu kita untuk memahami masalah, membuat solusi yang lebih baik, dan membuat prediksi berdasarkan kemiripan data atau sistem yang telah ada sebelumnya.

Kemampuan berfikir secara komputasional atau computational thinking harus senantiasa diasah dengan rutin dengan cara menyelesaikan berbagai permasalahan mulai dari yang sederhana sampai ke permasalahan yang lebih rumit.

Penerapan Computational Thinking dalam Kehidupan Sehari-hari

Computational thinking, jika diterapkan, dapat mempermudah kita menyelesaikan berbagai permasalahan dalam kehidupan sehari-hari dengan cara yang terstruktur dan efisien. Computational thinking dapat diterapkan untuk:

Pemecahan Masalah Personal:

  1. Menghadapi tantangan sehari-hari, seperti mengatur jadwal atau mengelola keuangan pribadi, dapat dipecahkan dengan mendekomposisi atau mengurai masalah menjadi tugas-tugas yang lebih sederhana.
  2. Menerapkan algoritma dalam rutinitas harian untuk meningkatkan efisiensi dan produktivitas.

Pengambilan Keputusan:

Menggunakan analisis data untuk membuat keputusan yang lebih cerdas, seperti dalam memilih produk atau layanan yang sesuai dengan kebutuhan kita. Menerapkan abstraksi untuk memfokuskan pada informasi yang relevan dan mengabaikan yang tidak penting.

Pengembangan Keterampilan:

Dalam memperlajari hal-hal baru, Computational Thinking membantu kita memecah materi menjadi bagian-bagian kecil yang lebih mudah dipahami dan memberikan pola berpikir yang jelas dalam proses pembelajaran.

Pemecahan Masalah Kompleks:

Dalam menghadapi masalah besar, seperti isu lingkungan atau sosial, Computational Thinking membantu dalam merumuskan solusi yang terukur dan berorientasi pada data.

Kreativitas dan Inovasi:

Computational Thinking dapat meningkatkan kreativitas dan inovasi karena dapat memunculkan berbagai macam kemungkinan baru selama proses berfikir sehingga muncul ide-ide baru yang bisa jadi belum pernah terpikir sebelumnya.

Computational Thinking adalah keterampilan kritis yang harus dikuasai setiap siswa dalam era digital seperti saat ini. Dengan menerapkan pendekatan berpikir yang sistematis ini, kita dapat mengatasi berbagai masalah dengan lebih baik, mengoptimalkan peluang, dan mengambil keputusan yang lebih cerdas dalam berbagai aspek kehidupan kita, terutama dibidang informatika. Oleh karena itu, ayo terus mengembangkan dan mengasah keterampilan Computational Thinking kita agar dapat meraih keberhasilan di masa depan yang semakin canggih.

Membaca Database Firebase dan Menampilkannya di Aplikasi Android

Membaca Database Firebase dan Menampilkannya di Aplikasi Android

Pada 2 tulisan sebelumnya kita sudah membahas tentang mengukur suhu ruangan dengan DHT 11 dan mengirimkan data hasil pembacaan sensor ke firebase, maka pada tulisan ini saya akan menyambung tulisan lagi untuk melengkapi project ini dengan menampilkan data yang tersimpan di firebase ke aplikasi android yang kita buat sendiri.

pada tulisan kali ini, kita akan menggunakan situs kodular membuat aplikasi android sederhana yang akan digunakan untuk membaca nilai yang tersimpan di firebase. Baiklah, tanpa berpanjang lebar lagi, langsung saja kit ake materi pokok nya

Kodular

Kodular adalah situs yang menyediakan platform pembuatan aplikasi android dengan mudah tanpa menggunakan text-based programming. Untuk membuat aplikasi android di kodular, kita hanya perlu melakukan drag and drop komponen untuk membuat tampilan aplikasi android. Untuk melakukan programming terhadap komponen yang telah disusun, kodular menyediakan sistem programming model block yang juga digunakan dengan metode drag and drop.

Tampilan Designer Tab pada Kodular
Tampilan Block Tab pada Kodular

Memulai Kodular

Untuk mulai menggunakan situs aplikasi kodular, ikutilah langkah-langkah berikut ini:

1. Buka browser dan ketikkan https://www.kodular.io/ lalu klik tombol “Create Apps”

2. Kita akan diarahkan ke halaman sign in. Pada halaman ini pilih sign in dengan menggunakan akun google.

3. lalu pilih akun gmail yang kamu miliki sebagai akun untuk log in ke kodular.

4. Setelah berhasil log in, kalian akan diarahkan ke halaman creator. Pada halaman ini akan terlihat project-project yang sudah pernah dibuat sebelumnya.

5. Untuk membuat project baru, maka klik tombol “Create project” pada bagian kiri atas halaman Kodular Creator.

6. Berikan nama untuk project yang akan kita buat.

7. Pada “Configure your project”, biarkan saja semua konfigurasi tetap default dan langsung klik finish.

8. Kita akan diarahkan ke tab Designer untuk membuat tampilan aplikasi android yang akan kita buat.

Membuat Aplikasi Android

Aplikasi android yang akan kita buat di situs kodular ini adalah aplikasi yang berfungsi untuk membaca data yang terdapat pada realtime database nya firebase. Untuk mempermudah pembuatan aplikasi silahkan ikuti langkah-langkah berikut ini.

1. Buatlah tampilan android sederhana seperti dibawah ini:

2. untuk komponen image, kalian bisa download asset nya disini lalu nanti upload di properties “Background Image” pada komponen Image2.

3. Pada komponen Firebase_Database1, kita akan diminta untuk memasukkan Firebase token dan firebase URL.

Firebase token bisa didapatkan dengan cara:

  • Buka web firebase dan masuk ke console.
  • Pilih project firebase yang telah kita buat sebelumnya.
  • Klik icon gear yang terdapat pada sebelah kiri atas layar lalu klik project settings
  • pada menu project settings, copy isian web API lalu paste kan ke firebase token di kodular

Firebase URL bisa didapatkan dengan cara

  • Buka web firebase dan masuk ke console.
  • Pilih project firebase yang telah kita buat sebelumnya.
  • Klik Realtime Database
  • Copy link yang terdapat didalam Realtime Database lalu pastekan ke Firebase URL di kodular

4. Masuk ke tab block dan ikuti gambar dibawah ini

Sampai disini, aplikasi kita sudah bisa di download dalam bentuk apk dengan cara klik export >> android APK. Copy aplikasi yang telah kita buat tadi ke HP kita lalu install

Jika pembuatan aplikasi berhasil, maka tampilan aplikasi yang kita buat akan terlihat seperti ini:

Jika kalian masih merasa kesulitan membuat aplikasi nya, silahkan download file aia dibawah ini lalu masukkan ke kodular dengan klik tombol import project pada halaman project.

Project aia

Demikianlah Membaca Database Firebase dan Menampilkannya di Aplikasi Android dengan menggunakan kodular, semoga tulisan ini bermanfaat. Sampai jumpa pada tulisan-tulisan berikutnya

Mengirim data sensor DHT11 dari ESP8266 ke firebase

Mengirim data sensor DHT11 dari ESP8266 ke firebase

Sebelumnya kita telah berhasil Mengukur Suhu dan Kelembaban Ruangan dengan menggunakan Sensor DHT11 dan ESP8266 (Part 1). Sekarang kita lanjutkan dengan tahapan berikutnya yaitu mengirim data sensor DHT11 dari ESP8266 ke firebase.

Tujuan dari proyek ini adalah untuk mengirim dan menyimpan data dari sensor DHT11 supaya nantinya data tersebut bisa dibaca oleh perangkat atau aplikasi lain yang juga terhubung dengan google firebase.

Seperti yang kita ketahui bersama, ESP8266 adalah mikrokontroller yang memliki fitur jaringan wireless sehingga sangat cocok digunakan untuk proyek-proyek IoT yang membutuhkan kontrol perangkat dari jarak jauh. Oleh karena itu, tulisan kali ini akan dibagi menjadi beberapa bagian yaitu:

Tulisan ini merupakan tulisan ke -2 dari 3 bagian yang tersedia dengan judul Mengirim data sensor DHT11 dari ESP8266 firebase. Langsung saja, berikut ini tutorialnya.

Google Firebase

Google firebase adalah platform pengembangan aplikasi yang membantu para developer untuk membangun serta mengembangkan aplikasi yang di dukung oleh google. firebase memiliki berbagai service yang dapat digunakan untuk berbagai kebutuhan aplikasi digital.

Dalam tulisan ini, kita akan mencoba untuk membuat database sederhana dengan menggunakan realtime database yang merupakan salah satu fitur yang terdapat di dalam google firebase.

Adapun Langkah mulai menggunakan Google Firebase adalah sebagai berikut:

Membuat Project Firebase

buka firebase.google.com lalu klik “sign in” dengan memasukkan akun google dan password kita (aplikasi google saya berbahasa Inggris, silahkan disesuaikan)

Berikutnya, setelah berhasil login, klik tombol “Get started”

pada laman berikutnya, kita pilih “add project”

Selanjutnya, beri nama project yang akan kita buat lalu klik continue

Berikutnya, saya menonaktifkan google analytics untuk project ini lalu klik tombol “Create project”

Setelah itu, kita tunggu proses pembuatan project nya, klik continue dan kita akan masuk ke halaman utama project firebase seperti gambar dibawah ini

Sampai disini kita telah berhasil membuat project firebase yang kita inginkan, namun masih perlu beberapa penyesuaian dan aktivasi fitur realtime database yang nantinya akan digunakan untuk menyimpan data hasil pembacaan sensor dari NodeMCU ESP8266.

Membuat Realtime Database

Setelah kita berhasil membuat project, langkah berikutnya kita akan membuat Realtime Database dengan cara klik menu build > Realtime Database

Kita akan diarahkan ke laman Realtime Database. Klik tombol “Create Database” untuk membuat database baru.

Berikutnya, kita pilih server “Singapore (asia-southeast1)” karena lebih dekat dengan lokasi kita, lalu klik next.

pada menu ‘Set up database”, pilih “Start in locked mode”. Setelah itu klik enable.

Sampai disini kita sudah berhasil membuat database, langkah berikutnya adalah memberi ijin untuk read/write database dengan cara klik tab “Rules”, ubah kedua tulisan “false” menjadi “true”.

Berikutnya, kita kembali ke menu build > autentication, lalu arahkan mouse ke “Sign in method” lalu pilih tombol “Anonymous”

Geser slider menjadi enable lalu save

Sampai disini Realtime Database sudah dapat menerima data dari NodeMCU ESP8266. Langkah berikutnya adalah melakukan programming di Arduino IDE.

Menambahkan Firebase ke Sketch DHT11

Buka kembali sketch/program DHT 11 yang pernah dibuat sebelumnya pada tulisan sebelumnya di Mengukur Suhu dan Kelembaban Ruangan dengan menggunakan Sensor DHT11 dan ESP8266.

Buka Library manager di sebelah kiri layar (saya menggunakan Arduino IDE 2.1.0), cari library “Firebase Arduino Client Library for ESP8266 and ESP32”. Jika sudah ketemu, Klik install (perhatikan gambar)

Setelah library berhasil diinstal, kita lanjutkan menulis sketch dengan menambahkan beberapa library supaya ESp8266 bisa terhubung ke firebase.

Tambahkan library ESP8266WIF.I.h dan buatlah variabel untuk menyimpan data SSID dan password wifi

#include "DHT.h"
#include <ESP8266WiFi.h>
#define WIFI_SSID "nama_wifi" // isikan nama 
#define WIFI_PASSWORD "password_wifi"

Berikutnya, tambahkan library firebase dan buatah variabel untuk menyimpan data API key dan URL database dari firebase kita:

#include <Firebase_ESP_Client.h>
#include "addons/TokenHelper.h"
#include "addons/RTDBHelper.h"
#define API_KEY "API_dari_firebase"
#define DATABASE_URL "link_realtime_database"

Untuk mendapatkan API key, kita harus membuka firebase terlebih dahulu lalu buka project settings. Perhatikan gambar berikut:

Sedangkan link database bisa di copy dari menu Realtime Database

Langkah berikutnya adalah membuat firebase data objectdengan mengetikkan:

FirebaseData fbdo;
FirebaseAuth auth;
FirebaseConfig config;
unsigned long sendDataPrevMillis = 0;
bool signupOK = false;

pada void setup() tambahkan:

WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
  Serial.print("Connecting to Wi-Fi");
  while (WiFi.status() != WL_CONNECTED){
    Serial.print(".");
    delay(300);
  }
  Serial.println();
  Serial.print("Connected with IP: ");
  Serial.println(WiFi.localIP());
  Serial.println();

  config.api_key = API_KEY;
  config.database_url = DATABASE_URL;

  /* Sign up */
  if (Firebase.signUp(&config, &auth, "", "")){
    Serial.println("ok");
    signupOK = true;
  }
  else{
    Serial.printf("%s\n", config.signer.signupError.message.c_str());
  }

  /* Assign the callback function for the long running token generation task */
  config.token_status_callback = tokenStatusCallback; //see addons/TokenHelper.h
  
  Firebase.begin(&config, &auth);
  Firebase.reconnectWiFi(true);

Terakhir, pada void loop tambahkan:

if (Firebase.ready() && signupOK && (millis() - sendDataPrevMillis > 15000 || sendDataPrevMillis == 0)){
    sendDataPrevMillis = millis();
    if (Firebase.RTDB.setFloat(&fbdo, "DHT/Kelembaban", h)){
      Serial.println("PASSED");
      Serial.println("PATH: " + fbdo.dataPath());
      Serial.println("TYPE: " + fbdo.dataType());
    }
    else {
      Serial.println("FAILED");
      Serial.println("REASON: " + fbdo.errorReason());
    }

    if (Firebase.RTDB.setFloat(&fbdo, "DHT/Suhu", t)){
      Serial.println("PASSED");
      Serial.println("PATH: " + fbdo.dataPath());
      Serial.println("TYPE: " + fbdo.dataType());
    }
    else {
      Serial.println("FAILED");
      Serial.println("REASON: " + fbdo.errorReason());
    }
  }

Sampai disini Sketch atau program telah selesai dikerjakan, langkah berikutnya adalah melakukan upload ke ESP8266.

Keseluruhan code dapat kamu lihat di bawah ini:

#include "DHT.h"
#include <ESP8266WiFi.h>
#define WIFI_SSID "nama_wifi"
#define WIFI_PASSWORD "password_wifi"

#include <Firebase_ESP_Client.h>
#include "addons/TokenHelper.h"
#include "addons/RTDBHelper.h"

#define API_KEY "API_Key dati project setting"
#define DATABASE_URL "link yang ada di realtime database" 

#define DHTPIN 4    
#define DHTTYPE DHT11   
DHT dht(DHTPIN, DHTTYPE);

//firebase data object
FirebaseData fbdo;
FirebaseAuth auth;
FirebaseConfig config;

unsigned long sendDataPrevMillis = 0;
bool signupOK = false;

void setup() {
  Serial.begin(115200);
  dht.begin();
  WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
  Serial.print("Connecting to Wi-Fi");
  while (WiFi.status() != WL_CONNECTED){
    Serial.print(".");
    delay(300);
  }
  Serial.println();
  Serial.print("Connected with IP: ");
  Serial.println(WiFi.localIP());
  Serial.println();

  config.api_key = API_KEY;
  config.database_url = DATABASE_URL;

  /* Sign up */
  if (Firebase.signUp(&config, &auth, "", "")){
    Serial.println("ok");
    signupOK = true;
  }
  else{
    Serial.printf("%s\n", config.signer.signupError.message.c_str());
  }

  /* Assign the callback function for the long running token generation task */
  config.token_status_callback = tokenStatusCallback; //see addons/TokenHelper.h
  
  Firebase.begin(&config, &auth);
  Firebase.reconnectWiFi(true);
}

void loop() {
  delay(2000);
  float h = dht.readHumidity();
  float t = dht.readTemperature();
  
    if (isnan(h) || isnan(t)) {
    Serial.println(F("gagal membaca DHT11"));
    return;
  }

  Serial.print(F("Kelembaban: "));
  Serial.print(h);
  Serial.print(F("%  Suhu Udara: "));
  Serial.print(t);
  Serial.println(F("°C "));

  if (Firebase.ready() && signupOK && (millis() - sendDataPrevMillis > 15000 || sendDataPrevMillis == 0)){
    sendDataPrevMillis = millis();
    if (Firebase.RTDB.setFloat(&fbdo, "DHT/Kelembaban", h)){
      Serial.println("PASSED");
      Serial.println("PATH: " + fbdo.dataPath());
      Serial.println("TYPE: " + fbdo.dataType());
    }
    else {
      Serial.println("FAILED");
      Serial.println("REASON: " + fbdo.errorReason());
    }

    if (Firebase.RTDB.setFloat(&fbdo, "DHT/Suhu", t)){
      Serial.println("PASSED");
      Serial.println("PATH: " + fbdo.dataPath());
      Serial.println("TYPE: " + fbdo.dataType());
    }
    else {
      Serial.println("FAILED");
      Serial.println("REASON: " + fbdo.errorReason());
    }
  }
}

Jika upload berhasil maka data akan terkirim ke Realtime Database seperti yang terlihat dibawah ini

Tampilan Firebase
Tampilan serial monitor

Demikianlah tulisan saya hari ini, tulisan yang lebih banyak gambarnya daripada teks nya.
pada tulisan berikutnya kita akan ke judul selanjutnya yaitu: Membuat aplikasi android sederhana untuk menampilkan pembacaan DHT11 dengan kodular

Mengukur Suhu dan Kelembaban Ruangan dengan menggunakan Sensor DHT11 dan ESP8266 (Part 1)

Mengukur Suhu dan Kelembaban Ruangan dengan menggunakan Sensor DHT11 dan ESP8266 (Part 1)

Setelah berhasil melakukan Pengukuran Suhu dan Kelembaban dengan DHT 11 dan Arduino, kali ini kita akan mencoba untuk melakukan hal yang sama dengan mikrokontroler NodeMCU ESP8266.

Seperti yang kita ketahui bersama, ESP8266 adalah mikrokontroller yang memliki fitur jaringan wireless sehingga sangat cocok digunakan untuk proyek-proyek IoT yang membutuhkan kontrol perangkat dari jarak jauh. Oleh karena itu, tulisan kali ini akan dibagi menjadi beberapa bagian yaitu:

Tulisan ini merupakan tulisan pertama dari 3 bagian yang tersedia dengan judul Mengukur Suhu dan Kelembaban Ruangan dengan menggunakan Sensor DHT11 dan ESP8266. Langsung saja, berikut ini tutorialnya.

Bahan-bahan

pada tutorial ini kita menggunakan sensor DHT 11, NodeMCU ESP8266 dan beberapa helai kabel jumper.

NodeMCU ESP82661 Buah
Sensor DHT111 Buah
Kabel JumperSecukupnya

Skema Rangkaian

Setelah bahan-bahan tersedia, kita lanjutkan ke proses perangkaian komponen. Perhatikan gambar skema dibawah ini dengan seksama agar tidak salah colok kabel

Program / Sketch

Hubungkan NodeMCU ESP8266 ke komputer lewat kabel USB dan pilih board (saya menggunakan NodeMCU 1.0(ESP-12E Module)) dan port dengan benar lalu upload program dibawah ini:

#include "DHT.h"

#define DHTPIN 4    
#define DHTTYPE DHT11   
DHT dht(DHTPIN, DHTTYPE);

void setup() {
  Serial.begin(115200);
  dht.begin();
}

void loop() {
  delay(2000);
  float h = dht.readHumidity();
  float t = dht.readTemperature();
  
    if (isnan(h) || isnan(t)) {
    Serial.println(F("gagal membaca DHT11"));
    return;
  }

  Serial.print(F("Kelembaban: "));
  Serial.print(h);
  Serial.print(F("%  Suhu Udara: "));
  Serial.print(t);
  Serial.println(F("°C "));
}

Jika rangkaian telah dirakit dengan benar dan sketch atau program juga telah diketik dengan benar maka kita bisa melihat hasilnya pada layar serial monitor seperti dibawah ini.

perhatikan juga baudrate yang ada pada serial monitor harus sama dengan yang ada pada sketch yaitu 115200.

Jika tampilan serial monitor sudah menunjukkan nilai kelembaban dan suhu, maka bisa dikatakan peragaaan yang kamu kerjakan telah berhasil.

Ok, segitu aja tulisan untuk bagian pertama ini, kita lanjut ke bagian ke-2 yaitu : Mengirim data sensor DHT11 dari ESP8266 firebase.
Sekian dan terima kasih

Pengukuran Suhu dan Kelembaban dengan DHT 11 dan Arduino

Pengukuran Suhu dan Kelembaban dengan DHT 11 dan Arduino

Salah satu kemudahan yang kita dapatkan dari development board Arduino adalah kemampuannya untuk membaca berbagai kondisi lingkungan dengan bantuan bermacam-macam sensor. Sensor-sensor ini dapat dengan mudah dihubungkan dengan Arduino dan mudah pula di program dengan bantuan berbagai library yang telah tersedia secara default di Arduino IDE maupun dari berbagai sumber di internet.

Pada tulisan ini saya akan mencoba untuk memberi tutorial tentang cara mengukur suhu dan kelembaban ruangan dengan menggunakan Arduino dan sensor DHT-11. Hasil pengukuran pada tutorial ini akan ditampilkan pada serial monitor sehingga kita bisa melihat hasilnya secara langsung.

DHT-11

DHT11 adalah salah satu jenis sensor yang sering digunakan bersama-sama arduino. Sensor ini digunakan untuk mengukur suhu dan kelebaban udara disekitarnya. Spesifikasi umum dari sensor DHT 11 adalah sebagai berikut:

  • Tegangan kerja antara 3-5 Volt
  • Rentang pengukuran suhu antara 0-50 derajat celcius
  • Rentang pengukuran kelembaban antara 20-90% RH (kelembaban Relatif)
  • Kebutuhan Arus 0.5 mA – 2.5 mA
DHT11

Perakitan

Bahan-bahan

Arduino Uno1 Buah
DHT 111 Buah
BreadBoard1 Buah
kabel JumperSecukupnya

Skema Rangkaian

ArduinoDHT 11
5VVCC
GNDGND
Pin 2Dout

Sketch / Program

Setelah rangkaian berhasil dibuat, maka langkah berikutnya adalah menulis dan mengupload program yang telah ditulis ke Arduino.

Ketiklah program dibawah ini dengan menggunakan Arduino IDE, lalu lakukan proses upload ke Arduino dengan menghubungkan Arduino lewat USB. Jangan lupa tentukan tipe Arduino dan port yang di gunakan pada menu tools.

#include "DHT.h"

#define DHTPIN 2    
#define DHTTYPE DHT11   
DHT dht(DHTPIN, DHTTYPE);

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

void loop() {
  delay(2000);
  float h = dht.readHumidity();
  float t = dht.readTemperature();
  
    if (isnan(h) || isnan(t)) {
    Serial.println(F("gagal membaca DHT11"));
    return;
  }

  Serial.print(F("Kelembaban: "));
  Serial.print(h);
  Serial.print(F("%  Suhu Udara: "));
  Serial.print(t);
  Serial.println(F("°C "));
}

Jika program atau sketch telah berhasil dibuat dan telah di upload, maka langkah berikutnya adalah membuka menu serial monitor. Pada serial monitor akan terlihat hasil pembacaan kelembaban dan temperatur dalam satuan % dan celcius seperti yang terlihat dibawah ini.

Nah, itu tadi langkah-langkah untuk mengukur suhu udara dan kelembaban dengan menggunakan DHT11 dan Arduino. Semoga bermanfaat dan sampai ketemu pada tulisan-tulisan berikutnya….