Perancangan Perangkat Keras
3.3.1 Perancangan Perangkat Keras
Perangkat keras pada rangkaian alat monitoring pada sistem proteksi petir early streamer emission dengan sms gateway dan berbasis Web, terdiri dari Arduino Uno, Ethernet Shield, Sensor Arus, SIM800L dan LCD. Dalam pemilihan komponen pada sistem-sistem ini maka sangatlah penting untuk memperhatikan beberapa hal berikut:
1. Menggunakan mikrokontroler dengan platform open source, sehingga untuk pengembangannya dapat dibantu oleh komunitas pengguna mikrokontroler tersebut.
2. Menggunakan jaringan ethernet, sehingga dapat terhubung baik secara jaringan LAN internal maupun terhubung ke jaringan internet.
3. Menggunakan komponen-komponen yang tersedia di pasaran, sehingga
harganya murah, mudah di dapat jika ada komponen yang suatu saat rusak.
4. Rangkaian yang sederhana sehingga mudah untuk dilakukan pengembangan lebih lanjut kedepannya.
Gambar 3.3 Rangkaian Sistem Proteksi Petir Cara kerja rangkaian perangkat keras:
1. Sensor Arus SCT Pada simulasi alat ini peneliti menggunakan sensor arus SCT 019, prinsip kerja yang digunakan adalah mengukur arus yang melewati konduktor penyalur petir (down conductor) ketika terjadi sambaran petir (lightning strike) yang mengenai penangkal petir (head protector) yang terpasang 1. Sensor Arus SCT Pada simulasi alat ini peneliti menggunakan sensor arus SCT 019, prinsip kerja yang digunakan adalah mengukur arus yang melewati konduktor penyalur petir (down conductor) ketika terjadi sambaran petir (lightning strike) yang mengenai penangkal petir (head protector) yang terpasang
Gambar 3.4 Skema Rangkaian Sensor Arus
Pin V+ dari SCT 019 dihubungkan dengan catu daya pada pin power 5 volt yang terdapat pada arduino, pin GDN dihubungkan ke pin GDN power arduino dan pin Vout- yang menghasilkan tegangan analog hasil arus dihubungkan ke pin A1 analog In pada arduino.
Berikut contoh programnya: // EmonLibrary examples openenergymonitor.org, Licence GNU GPL V3
#include "EmonLib.h" // Include Emon Library EnergyMonitor emon1; // Create an instance
void setup() {
Serial.begin(9600); emon1.current(1, 111.1); // Current: input pin, calibration.
} void loop() {
double Irms = emon1.calcIrms(1480); // Calculate Irms only Serial.print(Irms*230.0);
// Apparent power
Serial.print(" "); Serial.println(Irms);
// Irms
2. LCD 16x2 LCD (Liquid Crystal Display) adalah suatu jenis media tampilan yang menggunakan kristal cair sebagai penampilan utama. LCD sudah digunakan di berbagai bidang, misalnya dalam alat-alat elektronik, seperti televisi, kalkulator ataupun layar komputer. Pada percobaan kali ini adalah menggunakan LCD 16x2 yang artinya LCD tersebut terdiri dari 16 kolom dan 2 baris karakter (tulisan).
Tabel 3.1 Pin dari LCD 16x2
No. Kaki/Pin Nama Keterangan
Tegangan Kontras LCD
4 RS
Register Select
5 R/W
1 = Read, 0 = Write
6 E Enable Clock LCD
7 D0 Data Bus 0
8 D1 Data Bus 1
9 D2 Data Bus 2
10 D3 Data Bus 3
11 D4 Data Bus 4
12 D5 Data Bus 5
13 D6 Data Bus 6
14 D7 Data Bus 7
15 Anoda
Teg backlight +
16 Katoda
Teg backlight -
Pin LCD nomor 4 (RS) merupakan Register Selector yang berfungsi untuk memilih Register Kontrol atau Register Data. Register Kontrol digunakan untuk mengkonfirmasi LCD. Register Data digunakan untuk menulis data karakter ke memori display LCD. Pin LCD nomor 5 (R/W) digunakan untuk memilih aliran data apakah READ atau WRITE. Karena kebanyakan fungsi hanya untuk membaca data dari LCD dan hanya perlu menulis data saja ke LCD, maka kaki ini dihubungkan ke GND (WRITE). Pin LCD nomor 6 (ENABLE) digunakan untuk mengaktifkan LCD pada proses penulisan data ke Register Kontrol dan Register Data LCD. Menyambungkan LCD dengan Board Arduino
Pin RS (kaki 4) di sambungkan dengan pin arduino digital pin 12 Pin E (kaki 6) di sambungkan dengan pin arduino digital pin 11 Pin D4 (kaki 11) di sambungkan dengan pin arduino digital pin 5 Pin D5 (kaki 12) di sambungkan dengan pin arduino digital pin 4 Pin D6 (kaki 13) di sambungkan dengan pin arduino digital pin 3 Pin D7 (kaki 14) di sambungkan dengan pin arduino digital pin 2 Pin 5 (R/W) ke Ground
Gambar 3.5 Skema Konfigurasi Arduino dengan LCD
Berikut contoh programnya:
// include the library code: #include <LiquidCrystal.h> // initialize the library with the number of the interface pins LiquidCristal lcd(12, 11, 5, 4, 3, 2); void setup() {
// set put the LCD's number of columns and rows: lcd.begin(16, 2); // Print a message to the LCD. lcd.print("hello, world");
void loop() { // set the cursor to column 0, line 1 // (not: line 1 is the second row, since counting begins with 0): lcd.setCursor(0, 1); // print the number of seconds since reset: void loop() { // set the cursor to column 0, line 1 // (not: line 1 is the second row, since counting begins with 0): lcd.setCursor(0, 1); // print the number of seconds since reset:
3. Modul GSM SIM800L Modul GSM pada alat ini berfungsi untuk mengirimkan sms ke pengguna tentang informasi besaran arus melalui sensor arus dimana prinsip kerjanya adalah data yang sudah diolah arduino dikirimkan dengan menggunakan jalur data pin TX arduino ke pin RX yang ada pada SIM800L. Karena perbedaan tegangan pin TX dan RX antara SIM800L dengan arduino maka data dari pin TX arduino disambungkan dengan 2 resistor yang diseri baru dihubungkan dengan RX SIM800L seperti gambar dibawah.
Gambar 3.6 Skema Konfigurasi Arduino dengan SIM800L
Resistor yang digunakan pada rangkaian ini adalah sebesar R1=10kΩ dan R2=2,2kΩ. Perhitungan tegangan ini dirumuskan dengan persamaan berikut.
Berikut contoh programnya:
#include <Sim800l.h> #include <SoftwareSerial.h> //is necesary for the library!!
Sim800l Sim800l; //to declare the library char* text; char* number; bool error; //to catch the response of sendSms
void setup(){ Sim800l.begin(); // initializate the library. text="Testing Sms"; //text for the message. number="2926451386"; //change to a valid number. error=Sim800l.sendSms(number,text); // OR //Sim800l.sendSms("+620111111111","the text go here")
void loop(){ //do nothing }