Friday, June 26, 2015

Membuat Modul Dummy SCADA dengan HMI di Handphone Android

        Waktu yang kosong dikala kerja sangat membosankan, jika tidak digunakan oprek sesuatu yang berguna. apalagi bulan puasa gini, bawaannya pengen bobo aja................. zzzZZ
Di lapangan saya membutuhkan alat dummy scada yang mana bisa dikontrol atau monitoring via android ASUS Z5 (promosi... wkwkkwk).

        Kali ini akan saya jabarkan oprek arduino yang mau saya gunakan di lapangan. Saya membuat alat yang bisa digunakan :
1. untuk dummy SCADA, seperti monitoring kontrol dari master station, injek status ke master station.
2. untuk monitoring tegangan baterai rectifier saat pengujian ketahanan baterai.
3. untuk supply tegangan 110VDC

       Alat saya ini mempunyai fitur :
1. wifi (kenapa memilih ini??? karena jangkauannya bisa jauh. berbeda dengan bluetooth)
2. portable (bisa dibawa kemana-mana), kecuali supply tegangan 110 harus dicolokin ke 220VAC
3. ringan sekitar 2 ton kurang...... alias cuma + 2kg.
4. indikator tegangan baterai

       Material yang perlu disediakan, antara lain:
1. Arduino Mega
2. Ethernet Shield
3. Wifi Router TPlink
4. Switching 12V 2A
5. Baterai 12V 2A
6. Modul DI AI DO
7. Step down 12V to 5V
8. box 300 x 300

Langkah-langkah:
1. pasang arduino, ethernet shield, modul DI DO AI, switching, wifi router, step down



2. upload sket to arduino
#include <SPI.h>
#include <Ethernet.h>



void setup()
{
  uint8_t mac[]     = { 0x90, 0xA2, 0xDA, 0x00, 0x51, 0x06 };
  uint8_t ip[]      = { 192, 168, 1, 88 };
  uint8_t gateway[] = { 192, 168, 1, 1 };
  uint8_t subnet[]  = { 255, 255, 255, 0 };
  Ethernet.begin(mac, ip, gateway, subnet);
  //Avoid pins 4,10,11,12,13 when using ethernet shield

  delay(5000);
  Serial.begin(9600);
 
  pinMode(22, INPUT);
  pinMode(24, INPUT);
  pinMode(26, INPUT);
  pinMode(28, INPUT);
  pinMode(30, INPUT);
  pinMode(32, INPUT);
  pinMode(34, INPUT);
  pinMode(36, INPUT);
  pinMode(38, INPUT);
  pinMode(40, INPUT);
  pinMode(42, INPUT);
  pinMode(44, INPUT);
  pinMode(46, INPUT);
  pinMode(48, INPUT);
  pinMode(50, INPUT);
 
  pinMode(23, OUTPUT);
  pinMode(25, OUTPUT);
  pinMode(27, OUTPUT);
  pinMode(29, OUTPUT);
  pinMode(31, OUTPUT);
  pinMode(33, OUTPUT);
  pinMode(35, OUTPUT);
  pinMode(37, OUTPUT);
  pinMode(39, OUTPUT);
  pinMode(41, OUTPUT);
  pinMode(43, OUTPUT);
  pinMode(45, OUTPUT);
  pinMode(47, OUTPUT);
  pinMode(49, OUTPUT);
  pinMode(51, OUTPUT);
 
 
}

void loop()
{
  Mb.Run();
 
  //Analog inputs 0-1023
  Mb.R[0] = (analogRead(A0)*1.0); //pin A0 to Mb.R[0]
  Mb.R[1] = analogRead(A1);
  Mb.R[2] = analogRead(A2);
  Mb.R[3] = analogRead(A3);
  Mb.R[4] = analogRead(A4);
  Mb.R[5] = analogRead(A5);
  Mb.R[6] = analogRead(A6);
  Mb.R[7] = analogRead(A7);
  Mb.R[8] = analogRead(A8);
  Mb.R[9] = analogRead(A9);
  Mb.R[10] = analogRead(A10);
  Mb.R[11] = analogRead(A11);
  Mb.R[12] = analogRead(A12);
  Mb.R[13] = analogRead(A13);
  Mb.R[14] = analogRead(A14);

  //Analog outputs 0-255
 // analogWrite(6, Mb.R[6]); //pin ~6 from Mb.R[6]

  //Digital inputs
  Mb.C[0] = digitalRead(22); //pin 7 to Mb.C[7]
  Mb.C[1] = digitalRead(24); //pin 7 to Mb.C[7]
  Mb.C[2] = digitalRead(26); //pin 7 to Mb.C[7]
  Mb.C[3] = digitalRead(28); //pin 7 to Mb.C[7]
  Mb.C[4] = digitalRead(30); //pin 7 to Mb.C[7]
  Mb.C[5] = digitalRead(32); //pin 7 to Mb.C[7]
  Mb.C[6] = digitalRead(34); //pin 7 to Mb.C[7]
  Mb.C[7] = digitalRead(36); //pin 7 to Mb.C[7]
  Mb.C[8] = digitalRead(38); //pin 7 to Mb.C[7]
  Mb.C[9] = digitalRead(40); //pin 7 to Mb.C[7]
  Mb.C[10] = digitalRead(42); //pin 7 to Mb.C[7]
  Mb.C[11] = digitalRead(44); //pin 7 to Mb.C[7]
  Mb.C[12] = digitalRead(46); //pin 7 to Mb.C[7]
  Mb.C[13] = digitalRead(48); //pin 7 to Mb.C[7]
  Mb.C[14] = digitalRead(50); //pin 7 to Mb.C[7]

  //Digital outputs
  digitalWrite(23, Mb.C[20]); //pin 8 from Mb.C[8]
  digitalWrite(25, Mb.C[21]); //pin 8 from Mb.C[8]
  digitalWrite(27, Mb.C[22]); //pin 8 from Mb.C[8]
  digitalWrite(29, Mb.C[23]); //pin 8 from Mb.C[8]
  digitalWrite(31, Mb.C[24]); //pin 8 from Mb.C[8]
  digitalWrite(33, Mb.C[25]); //pin 8 from Mb.C[8]
  digitalWrite(35, Mb.C[26]); //pin 8 from Mb.C[8]
  digitalWrite(37, Mb.C[27]); //pin 8 from Mb.C[8]
  digitalWrite(39, Mb.C[28]); //pin 8 from Mb.C[8]
  digitalWrite(41, Mb.C[29]); //pin 8 from Mb.C[8]
  digitalWrite(43, Mb.C[30]); //pin 8 from Mb.C[8]
  digitalWrite(45, Mb.C[31]); //pin 8 from Mb.C[8]
  digitalWrite(47, Mb.C[32]); //pin 8 from Mb.C[8]
  digitalWrite(49, Mb.C[33]); //pin 8 from Mb.C[8]
  digitalWrite(51, Mb.C[34]); //pin 8 from Mb.C[8]
 
}


3. Masukkan kedalam box





4. Wiring semua komponen material



5. Jadilah alat uji portable



alat ini kami uji dengan relay Micom P127 dan ION 6200

 

Pengujian baterai ( maaf tadi saat pengujian lupa di screenshoot, insyaalloh nanti jika ada waktu luang akan saya upload lagi)


tampilan HMI alat dummy


 aplikasi android yang digunakan untuk HMI ini namanya MORENO. diplaystore belum ada. karena belum dipasarkan secara bebas.

alat ini bisa diaplikasikan, antara lain:
1. Home automation
2. kontrol pintu gerbang via HP.
3. start engine mobil dari jarak jauh.
4. dll...................masih banyakkkkkkkk





ruwet with sim800l v2

#include <gprs.h> #include <SoftwareSerial.h> #define TIMEOUT    5000 #define LED_PIN    13 #define ON HIGH #define OFF LOW ...