MODUL4

PROJECT DEMO

JUDUL

PENGATURAN INTENSITAS CAHAYA RUANGAN MENGGUNAKAN LDR
BERDASARKAN PENGARUH INTENSITAS CAHAYA
DI LUAR RUANGAN SECARA WIRELESS

[KEMBALI KE MENU SEBELUMNYA]
      1. TUJUAN [kembali]

a. praktikan dapat menerapkan sebuah sistem menggunakan mikrokontroller.
b. praktikan dapat mengkombinasikan berbagai macam output, akumulator, display, dan berbagai media output lainnya menjadi sebuah alat.
c. praktikan dapat merancang suatu sistem menjadi sebuah alat.

 TUJUAN ALAT:

a. merancang ruangan yang mempertahankan intensitas cahaya didalamnya.
b. merancang ruangan yang dapat mengatur intensitas cahayanya secara otomatis.
c. otomatisasi lampu untuk mempertahankan intensitas cahaya dalam ruangan.


2. DAFTAR KOMPONEN [kembali]

1. LDR (Light Dependent Resistor)

2. arduino:
3. LCD 16 X 2:
4. BUZZER:

 5. LED
6. MODUL NRF24L01
7. Trimpot
8.Resistor
9.Jumper






3. DASAR TEORI [kembali]

a. Light Dependent Resistor (LDR)

         Light Dependent Resistor atau disingkat dengan LDR adalah jenis Resistor yang nilai hambatan atau nilai resistansinya tergantung pada intensitas cahaya yang diterimanya. Nilai Hambatan LDR akan menurun pada saat cahaya terang dan nilai Hambatannya akan menjadi tinggi jika dalam kondisi gelap. Dengan kata lain, fungsi LDR (Light Dependent Resistor) adalah untuk menghantarkan arus listrik jika menerima sejumlah intensitas cahaya (Kondisi Terang) dan menghambat arus listrik dalam kondisi gelap.

        Prinsip kerja LDR sangat sederhana tak jauh berbeda dengan variable resistor pada umumnya. LDR dipasang pada berbagai macam rangkaian elektronika dan dapat memutus dan menyambungkan aliran listrik berdasarkan cahaya. Semakin banyak cahaya yang mengenai LDR maka nilai resistansinya akan menurun, dan sebaliknya semakin sedikit cahaya yang mengenai LDR maka nilai hambatannya akan semakin membesar. Naik turunnya nilai Hambatan akan sebanding dengan jumlah cahaya yang diterimanya. Pada umumnya, Nilai Hambatan LDR akan mencapai 200 Kilo Ohm (kΩ) pada kondisi gelap dan menurun menjadi 500 Ohm (Ω) pada Kondisi Cahaya Terang.
            LDR (Light Dependent Resistor) yang merupakan Komponen Elektronika peka cahaya ini sering digunakan atau diaplikasikan dalam Rangkaian Elektronika sebagai sensor pada Lampu Penerang Jalan, Lampu Kamar Tidur, Rangkaian Anti Maling, Shutter Kamera, Alarm dan lain sebagainya.

bagian-Bagian LDR:

grafik respon LDR:
artinya adalah semakin tinggi tingkat intesitas cahaya yang diterima oleh LDR maka nilai resistansinya akan semakin rendah (intensitas cahaya berbanding terbalik dengan resistansi LDR).

b. Arduino

Arduino adalah kit elektronik atau papan rangkaian elektronik open source yang di dalamnya terdapat komponen utama yaitu sebuah chip mikrokontroler dengan jenis AVR dari perusahaan Atmel. Arduino yang kita gunakan dalam praktikum ini adalah Arduino Uno yang menggunakan chip AVR ATmega 328P. Dalam memprogram Arduino, kita bisa menggunakan komunikasi serial agar Arduino dapat berhubungan dengan komputer ataupun perangkat lain.
Adapun spesifikasi dari Arduino Uno ini adalah sebagai berikut :
Microcontroller                                           ATmega328P
Operating Voltage                                      5 V
Input Voltage (recommended)                   7 – 12 V
Input Voltage (limit)                                  6 – 20 V
Digital I/O Pins                                          14 (of which 6 provide PWM output)
PWM Digital I/O Pins                                6
Analog Input Pins                                       6
DC Current per I/O Pin                              20 mA
DC Current for 3.3V Pin                            50 mA
Flash Memory                                            32 KB of which 0.5 KB used by bootloader
SRAM                                                        2 KB
EEPROM                                                   1 KB
Clock Speed                                               16 MHz
berikut merupakan fungsi masing-masing komponen yang ada pada arduino. yaitu:
1)      USB Soket/Power USB


USB Soket/Power USB digunakan untuk memberikan catu daya ke Papan Arduino menggunakan kabel USB dari komputer. Selain menjadi port catu daya, USB juga memiliki berfungsi untuk:

   i.            Memuat program dari komputer ke dalam board Arduino.

   ii.            Komunikasi serial antara papan Arduino dan komputer begitu juga sebaliknya.

Pada versi lebih lama Arduino terdapat sambungan SV1 Sambungan atau jumper untuk memilih sumber daya yang digunakan, apakah dari sumber eksternal atau menggunakan USB. Sambungan ini tidak diperlukan lagi pada papan Arduino versi terakhir karena pemilihan sumber daya eksternal atau USB dilakukan secara otomatis.
2)      Power (Barrel Jack)


Papan Arduino dapat juga diberikan colokan catu daya secara langsung dari sumber daya AC dengan menghubungkannya ke Barrel Jack yang tersedia. Tegangan maksimal yang dapat diberikan kepada Arduino maksimal 12volt dengan range arus maksimal 2A (Agar regulator tidak panas).
3)      Voltage Regulator


Fungsi dari voltage regulator adalah untuk mengendalikan atau menurunkan tegangan yang diberikan ke papan Arduino dan menstabilkan tegangan DC yang digunakan oleh prosesor dan elemen-elemen lain.
4)      Crystal Oscillator


Kristal (quartz crystal oscillator), jika mikrokontroler dianggap sebagai sebuah otak, maka kristal adalah jantung-nya karena komponen ini menghasilkan detak-detak yang dikirim kepada mikrokontroler agar melakukan sebuah operasi untuk setiap detak-nya. Kristal ini dipilih yang berdetak 16 juta kali per detik (16MHz).

Crystal oscillator membantu Arduino dalam hal yang berhubungan dengan waktu. Bagaimana Arduino menghitung waktu? Jawabannya adalah, dengan menggunakan crystal oscillator. Angka yang tertulis pada bagian atas crystal 16.000H9H berarti bahwa frekuensi dari oscillator tersebut adalah 16.000.000 Hertz atau 16 MHz.
5)      5, 17 Arduino Reset


Kita dapat mereset papan arduino, misalnya memulai program dari awal. Terdapat dua cara untuk mereset Arduino Uno. Pertama, dengan menggunakan reset button (17) pada papan arduino. Kedua, dengan menambahkan reset eksternal ke pin Arduino yang berlabel RESET (5). Perhatikan bahwa tombol reset ini bukan untuk menghapus program atau mengosongkan mikrokontroler.
6)      3.3V (6) − Supply 3.3 output volt
7)      5V (7) − Supply 5 output volt


Sebagaian besar komponen yang digunakan papan Arduino bekerja dengan baik pada tegangan 3.3 volt dan 5 volt.
8)      GND (8)(Ground) – Ada beberapa pin GND pada Arduino, salah satunya dapat digunakan untuk menghubungkan ground rangkaian.
9)      Vin (9) – Pin ini juga dapat digunakan untuk memberi daya ke papan Arduino dari sumber daya eksternal, seperti sumber daya AC.
10)  10 Analog pins


Papan Arduino Uno memiliki enam pin input analog A0 sampai A5. Pin-pin ini dapat membaca tegangan dan sinyal yang dihasilkan oleh sensor analog seperti sensor kelembaban atau temperatur dan mengubahnya menjadi nilai digital yang dapat dibaca oleh mikroprosesor. Program dapat membaca nilai sebuah pin input antara 0 – 1023, dimana hal itu mewakili nilai tegangan 0 – 5V.
11)  Main microcontroller


Setiap papan Arduino memiliki Mikrokontroler (11). Kita dapat menganggapnya sebagai otak dari papan Arduino. IC (integrated circuit) utama pada Arduino sedikit berbeda antara papan arduino yang satu dengan yang lainnya. Mikrokontroler yang sering digunakan adalah ATMEL. Kita harus mengetahui IC apa yang dimiliki oleh suatu papan Arduino sebelum memulai memprogram arduino melalui Arduino IDE. Informasi tentang IC terdapat pada bagian atas IC. Untuk mengetahui kontruksi detai dari suatu IC, kita dapat melihat lembar data dari IC yang bersangkutan.
12)  12 ICSP pin


Kebanyakan, ICSP (12) adalah AVR, suatu programming header kecil untuk Arduino yang berisi MOSI, MISO, SCK, RESET, VCC, dan GND. Hal ini sering dirujuk sebagai SPI (Serial Peripheral Interface), yang dapat dipertimbangkan sebagai “expansion” dari output. Sebenarnya, kita memasang perangkat output ke master bus SPI.

In-Circuit Serial Programming (ICSP)Port ICSP memungkinkan pengguna untuk memprogram microcontroller secara langsung, tanpa melalui bootloader. Umumnya pengguna Arduino tidak melakukan ini sehingga ICSP tidak terlalu dipakai walaupun disediakan.
13)  Power LED indicator


LED ini harus menyala jika menghubungkan Arduino ke sumber daya. Jika LED tidak menyala, maka terdapat sesuatu yang salah dengan sambungannya.
14)  14 TX dan RX LEDs
Pada papan Arduino, kita akan menemukan label: TX (transmit) dan RX (receive). TX dan RX muncul di dua tempat pada papan Arduino Uni. Pertama, di pin digital 0 dan 1, Untuk menunjukkan pin yang bertanggung jawab untuk komunikasi serial. Kedua, TX dan RX led (13). TX led akan berkedip dengan kecepatan yang berbeda saat mengirim data serial. Kecepatan kedip tergantung pada baud rate yang digunakan oleh papan arduino. RX berkedip selama menerima proses.
15)  Digital I/O


Papan Arduino Uno memiliki 14 pin I/O digital (15), 6 pin output menyediakan PWM (Pulse Width Modulation). Pin-pin ini dapat dikonfigurasikan sebagai pin digital input untuk membaca nilai logika (0 atau 1) atau sebagai pin digital output untuk mengendalikan modul-modul seperti LED, relay, dan lain-lain. Pin yang berlabel “~” dapat digunakan untuk membangkitkan PWM.
16)  AREF


AREF merupakan singkatan dari Analog Reference. AREF kadanag-kadang digunakan untuk mengatur tegangan referensi eksternal (antar 0 dan 5 Volts) sebagai batas atas untuk pin input analog input.

c. Liquid Crystal Display(LCD)

Liquid Crystal Display (LCD) adalah sebuah peralatan elektronik yang berfungsi untuk
menampilkan output sebuah sistem dengan cara membentuk suatu citra atau gambaran pada sebuah layar. Secara garis besar komponen penyusun LCD terdiri dari kristal cair (liquid crystal) yang diapit oleh 2 buah elektroda transparan dan 2 buah filter polarisasi (polarizing filter).


Gambar Penampang komponen penyusun LCD
Keterangan:
1. Film dengan polarizing filter vertical untuk memolarisasi cahaya yang masuk.
2. Glass substrate yang berisi kolom-kolom elektroda Indium tin oxide (ITO).
3. Twisted nematic liquid crystal (kristal cair dengan susunan terpilin).
4. Glass substrate yang berisi baris-baris elektroda Indium tin oxide (ITO).
5. Film dengan polarizing filter horizontal untuk memolarisasi cahaya yang masuk.
6. Reflektor cahaya untuk memantulkan cahaya yang masuk LCD kembali ke mata pengamat.
Sebuah citra dibentuk dengan mengombinasikan kondisi nyala dan mati dari pixel-pixel yang menyusun layar sebuah LCD. Pada umumnya LCD yang dijual di pasaran sudah memiliki integrated circuit tersendiri sehingga para pemakai dapat mengontrol tampilan LCD dengan mudah dengan menggunakan mikrokontroler untuk mengirimkan data melalui pin-pin input yang sudah tersedia.

Kaki-kaki yang terdapat pada LCD

Register control yang terdapat dalam suatu LCD diantaranya adalah.

    ~ Register perintah yaitu register yang berisi perintah-perintah dari mikrokontroler ke panel LCD (Liquid Cristal Display) pada saat proses penulisan data atau tempat status dari panel LCD (Liquid Cristal Display) dapat dibaca pada saat pembacaan data
    ~Register data yaitu register untuk menuliskan atau membaca data dari atau keDDRAM. Penulisan data pada register akan menempatkan data tersebut keDDRAM sesuai dengan alamat yang telah diatur sebelumnya.

Pin, kaki atau jalur input dan kontrol dalam suatu LCD (Liquid Cristal Display) diantaranya adalah :

·       ~ Pin data adalah jalur untuk memberikan data karakter yang ingin ditampilkan menggunakan LCD (Liquid Cristal Display) dapat dihubungkan dengan bus data dari rangkaian lain seperti mikrokontroler dengan lebar data 8 bit.

·        ~Pin RS (Register Select) berfungsi sebagai indikator atau yang menentukan jenis data yang masuk, apakah data atau perintah. Logika low menunjukan yang masuk adalah perintah, sedangkan logika high menunjukan data.

·        ~Pin R/W (Read Write) berfungsi sebagai instruksi pada modul jika low tulis data, sedangkan high baca data.

·        ~Pin E (Enable) digunakan untuk memegang data baik masuk atau keluar.

~Pin VLCD berfungsi mengatur kecerahan tampilan (kontras) dimana pin ini dihubungkan dengan trimpot 5 Kohm, jika tidak digunakan dihubungkan ke ground, sedangkan tegangan catu daya ke LCD sebesar 5 Volt.
d. BUZZER:

       Buzzer Listrik adalah sebuah komponen elektronika yang dapat mengubah sinyal listrik menjadi getaran suara. Pada umumnya, Buzzer yang merupakan sebuah perangkat audio ini sering digunakan pada rangkaian anti-maling, Alarm pada Jam Tangan, Bel Rumah, peringatan mundur pada Truk dan perangkat peringatan bahaya lainnya. Jenis Buzzer yang sering ditemukan dan digunakan adalah Buzzer yang berjenis Piezoelectric, hal ini dikarenakan Buzzer Piezoelectric memiliki berbagai kelebihan seperti lebih murah, relatif lebih ringan dan lebih mudah dalam menggabungkannya ke Rangkaian Elektronika lainnya. Buzzer yang termasuk dalam keluarga Transduser ini juga sering disebut dengan Beeper.

       Piezoelectric Buzzer adalah jenis Buzzer yang menggunakan efek Piezoelectric untuk menghasilkan suara atau bunyinya. Tegangan listrik yang diberikan ke bahan Piezoelectric akan menyebabkan gerakan mekanis, gerakan tersebut kemudian diubah menjadi suara atau bunyi yang dapat didengar oleh telinga manusia dengan menggunakan diafragma dan resonator.

          Piezo Buzzer dapat bekerja dengan baik dalam menghasilkan frekuensi di kisaran 1 – 5 kHz hingga 100 kHz untuk aplikasi Ultrasound. Tegangan Operasional Piezoelectric Buzzer yang umum biasanya berkisar diantara 3Volt hingga 12 Volt.
komponen buzzer:
e. LED:

      LED adalah suaatu semikonduktor yang memancarkan cahaya,  LED mempunyai kecenderungan polarisasi. LED mempunyai kutub positif dan negatif (p-n) dan hanya akan menyala bila diberikan arus maju. Ini dikarenakan LED terbuat dari bahan semikonduktor yang hanya akan mengizinkan arus listrik mengalir ke satu arah dan tidak ke arah sebaliknya. Bila LED diberikan arus terbalik, hanya akan ada sedikit arus yang melewati  LED. Ini menyebabkan LED tidak akan mengeluarkan emisi cahaya.
f. NRF24L01

        Module Wireless nRF24L01 merupakan module yang mempunyai fungsi untuk komunikasi jarak jauh atau nirkabel yang memanfaatkan gelombang RF 2.4 GHz yang biasanya diaplikasikan untuk Scientific , Industrial, maupun Medical.Pada modul ini menggunakan antarmuka SPI (Serial Parallel Interface) untuk berkomunikasi dengan mikrokontroler dalam hal ini Arduino. Tegangan operasional normal untuk mengakses module ini yaitu 3.3Vdc, yang biasanya dibantu dengan regulator AMS1117.
       Module nRF24L01 memiliki perangkat keras yang berupa baseband logic Enhanced ShockBurst dan protocol accelerator yang memungkinan untuk berkomunikasi dalam kecepatan tinggi.
       Selain itu, module ini juga memiliki fitur true ULP solution, yang berfungsi sebagai penghemat konsumsi daya sehingga hemat energi.  Dan bisa digunakan juga sebagai pembuatan perangkat fitnes dan olahraga, pendukung PC, mainan anak-anak, piranti perangkat untuk permainan, dan lainnya.
Kesimpulan dari beberapa fitur Modul Wireless RF nRF24L01 :
  • Data rate mencapai 2Mbps
  • Penanganan transaksi paket otomatis
  • Beroperasi pada pada pita ISM 2.4 GHZ
  • Konsumsi daya yang rendah
  • Penanganan paket data otomatis
Pin Out dari Modul Wireless RF nRF24L01


DASAR TEORI KOMUNIKASI

Serial Peripheral Interface ( SPI ) merupakan salah satu mode komunikasi serial synchrounous kecepatan tinggi yang dimiliki oleh ATmega 328. Komunikasi SPI membutuhkan 3 jalur yaitu MOSI, MISO, dan SCK. Melalui komunikasi ini data dapat saling dikirimkan baik antara mikrokontroller maupun antara mikrokontroller dengan peripheral lain di luar mikrokontroler.
MOSI : Master Output Slave Input Artinya jika dikonfigurasi sebagai master maka pin MOSI sebagai output tetapi jika dikonfigurasi sebagai slave maka pin MOSI sebagai input.
MISO : Master Input Slave Output Artinya jika dikonfigurasi sebagai master maka pin MISO sebagai input tetapi jika dikonfigurasi sebagai slave maka pin MISO sebagai output.
SCLK : Clock Jika dikonfigurasi sebagai master maka pin CLK berlaku sebagai output tetapi jika dikonfigurasi sebagai slave maka pin CLK berlaku sebagai input.
SS/CS : Slave Select/ Chip Select adalah jalur master memilih slave mana yang akan dikirimkan data.
Cara Kerja Komunikasi SPI
Sinyal clock dialirkan dari master ke slave yang berfungsi untuk sinkronisasi. Master dapat memilih slave mana yang akan dikirimkan data melalui slave select, kemudian data dikirimkan dari master ke slave melalui MOSI. Jika master butuh respon data maka slave akan mentransfer data ke master melalui MISO.



4. FLOWCHART [kembali]

MASTER:

SLAVE:







5. LISTING PROGRAM [kembali]

PROGRAM MASTER:
#include <Wire.h>
#include <SPI.h>
//#include <nRF24L01.h>
#include <RF24.h>

int pin = 3;
int val = 0;
int vel = 1;

int nilai;

RF24 radio(9, 10); // CE, CSN
const byte addresses[][6] = {"00298", "00910"};
char data;
void setup() {

  pinMode(A0, INPUT);
  pinMode(A1, INPUT);
  pinMode(3, OUTPUT);
  Serial.begin(9600);
  radio.begin();
  radio.openWritingPipe(addresses[0]); // 00002
  radio.openReadingPipe(1, addresses[1]); // 00001
  radio.setPALevel(RF24_PA_MAX);
  delay(1000);

}

void loop() {
  vel = map(analogRead(1), 0, 1023, 255, 1);
  int nilai = analogRead(0);
  val = map(nilai, 1023, 0, 1, 255);
  {
    if (vel > 120) {
      digitalWrite(3, HIGH);

    }

    else {
      digitalWrite(3, LOW);
    }
  }
  Serial.print(val);
  Serial.print('\t');
  radio.stopListening();
  delay(200);
  if (val < 80) {
    data = '1';
    radio.write(&data, sizeof(data));
    delay(200);
  }
  else if (val < 120)
  {
    data = '2';
    radio.write(&data, sizeof(data));
    delay(200);
  }
  else {
    data = '3';
    radio.write(&data, sizeof(data));
    delay(200);
  }
  //radio.startListening();
  Serial.print("Data to NRF : ");
  Serial.print(data);
  Serial.println();
}
PROGRAM SLAVE:
 #include <SPI.h>
//#include <nRF24L01.h>
#include <RF24.h>
#include<LiquidCrystal.h>
LiquidCrystal lcd (2, 3, 4, 5, 6, 7);

byte pin[] = {A0, A1, A2, A3, A4};

byte data ;
RF24 radio(9, 10); // CE, CSN
const byte addresses[][6] = {"00298", "00910"};


void setup() {
  pinMode(A0, OUTPUT);
  pinMode(A1, OUTPUT);
  pinMode(A2, OUTPUT);
  pinMode(A3, OUTPUT);
  pinMode(A4, OUTPUT);
  lcd.begin(16, 2);
  Serial.begin(9600);
  radio.begin();
  radio.openWritingPipe(addresses[1]); // 00001/
  radio.openReadingPipe(1, addresses[0]); // 00002
  radio.setPALevel(RF24_PA_MAX);
  delay(200);
}

void loop() {

  radio.startListening();
  delay(200);
  while (!radio.available()) {
    Serial.println("No Data Received");
  }
  radio.read(&data, sizeof(data));
  Serial.print("Data Received : ");
  Serial.print(data);
  Serial.println();
  switch (data) {
    case '1' :
      digitalWrite(A0, HIGH);
      digitalWrite(A1, LOW);
      digitalWrite(A2, LOW);
      digitalWrite(A3, LOW);
      digitalWrite(A4, LOW);
      lcd.clear();
      lcd.setCursor(0, 0);
      lcd.print("DI LUAR");
      lcd.setCursor(0, 1);
      lcd.print("TERANG");
      break;

    case '2' :
      digitalWrite(A0, HIGH);
      digitalWrite(A1, HIGH);
      digitalWrite(A2, HIGH);
      digitalWrite(A3, LOW);
      digitalWrite(A4, LOW);
      lcd.clear();
      lcd.setCursor(0, 0);
      lcd.print("DI LUAR");
      lcd.setCursor(0, 1);
      lcd.print("GELAP");
      break;
    case '3' :
      digitalWrite(A0, HIGH);
      digitalWrite(A1, HIGH);
      digitalWrite(A2, HIGH);
      digitalWrite(A3, HIGH);
      digitalWrite(A4, HIGH);
      lcd.clear();
      lcd.setCursor(0, 0);
      lcd.print("DI LUAR");
      lcd.setCursor(0, 1);
      lcd.print("SANGAT GELAP");
      break;
  }
  radio.stopListening();
}



6. RANGKAIAN SIMULASI [kembali]




7. FOTO ALAT [kembali]



8. VIDEO RANGKAIAN [kembali]






9. VIDEO ALAT [kembali]




10. ANALISA [kembali]

        pada modul 4 praktikum mikro prosessor dan mikro kontroller merupakan pembuatan alat demo dengan menggunakan komunikasi wireless. alat yang dibuat yaitu demonstrasi pengaturan intensitas cahaya di dalam ruangan berdasarkan intensitas cahaya di luar ruangan.

         rangkaian ini menggunakan 2 arduino, 2 LDR, 2 modul NRF24L01, 5 LED, 1 LCD 16x2, dan jumper.

pronsip kerja rangakaian:
         sebuah LDR (LDR 1) akan diletakkan di luar ruangan dimana ia akan membaca intensitas cahaya yang ada di luar ruangan tersebut. nilai intensitas cahaya yang diterima oleh LDR aka mempengaruhi resistansi LDR tersebut. akibatnya tegangan yang di lewatkan oleh LDR akan berubah sesuai dengan perubahan resistansi LDR akibat intensitas cahaya yang ia terima. dimana tegangan yang dilewatkan oleh LDR akan dibaca oleh pin analog 1 arduino master. pada semua pin analog arduino terdapat ADC yang berguna untuk mengubah data analog menjadi data digital. data digital yang dihasilkan oleh LDR 1 akan memiliki rentang 0 sampai dengan 1024. data yang dapat diolah oleh mikro prosesor hanya pada rentang 0 sampai dengan 255 oleh karena itu, data dari LDR tadi dilakukan mapping yaitu untuk mengubah nilai dari rentang 0 sampai 1024 menjadi rentang 0 sampai 255. hasil mapping ini akan di beri nama variabel val. mikro prosessor akan mengolah data yaitu saat nilai val <  80 maka akan menghasilkan nilai data '1', saat nilai val >80 namun <100 maka akan menghasilkan nilai data '2', saat nilai val >100 namun <120 maka akan menghasilkan nilai data '3', saat nilai val > 120 maka  akan menghasilkan nilai data '4'. nilai-nilai data yang telah dihasilkan akan dikirimkan ke modul NRF24L01.

        setelah data sampai pada modul NRF24L01 yang terhubung dengan arduino master maka NRF24L01 akan mentransmisikan data tersebut secara nirkabel atau wireless. dengan terlebih dahulu melakukan seting pada NRF25L01 yang terhubung dengan arduino master sebagai pengirim data.  setelah data dikirimkan oleh NRF24L01 pengirim maka data tersebut akan diterima oleh NRF24L01 penerima, yaitu NRF24L01 yang terhubung dengan arduino slave.

         melalui arduino slave dilakukan seting NRF24L01 sebagai penerima data, sehingga ia akan menerima data yang ditransmisikan oleh NRF24L01 pengirim. data yang telah diterima oleh NRF24L01 penerima akan di lanjutkan kepada arduino slave. pada arduino salve akan membaca data yang ia terima dalam bentuk karakter (char) dan diberlakukan dalam kode case. saat nilai case '1' maka arduino slave akan menghidupkan 1 LED dan akan ditampilkan pada LCD statment "diluar terang". saat nilai case '2' maka arduino slave akan menghidupkan 2 LED dan akan ditampilkan pada LCD statment "diluar redup". saat nilai case '3' maka arduino slave akan menghidupkan 3 LED dan akan ditampilkan pada LCD statment "diluar gelap". saat nilai case '4' maka arduino slave akan menghidupkan 5 LED dan akan ditampilkan pada LCD statment "diluar sangat gelap". hal ini sesuai dengan prpgram yang diset pada arduino salve.

      saat intensitas yang diterima oleh LDR 1 tinggi. maka nilai resistansinya akan rendah. sehingga nilai tegangan yanng ia lewatkan akan bernilai maksimum. akibatnya adalah data analog yang diterima arduino master bernilai maksimal. lalu dilakukan mapping "val = map(analogRead(0), 0,1023, 255, 1);" artinya adalah saat nilai yang masuk tinggi maka nilai val yang dihasilkan adalah nilai terkecil. maka saat nilai val minimum maka arduino master akan mengirimkan data '1' kepada NRF pengirim. lalu NRF pengirim akan mentransmisikan nilai data tersebut. setelah ditransmisikan oleh NRF pengirim maka data tersebut akan diterima oleh NRF penerima. setelah diterima oleh NRF penerima data tersebut akan diteruskan kepada arduinno slave. saat nilai dat atau case yang masuk pada arduino slave adalah '1' maka arduino 1 akan menghidupkan 1 LED saja dan LED yang lainnya akan mati. lalu pada LCD akan ditampilkan statment " diluar terang".
untuk kondisi lainnya memiliki alur yang sama namun dengan nilai yang berbeda sesuai dengan program yang telah di setting.

      untuk mendeteksi keadaan intensitas didalam ruangan maka dipasang sebuah LDR didalam ruangan yaitu LDR 2. LDR 2 terhubunng kepada arduino master. saat keadaan di dalam ruangan terang, maka resistansi LDR yang dihasilkan akan kecil dan tegang yang dihasilkan bernilai tertinggi lalu dialkukan mapping " vel=map(analogRead(1), 0,1023, 255, 1);" akibatnya saat nilai yang masuk maksimal maka nilai yang diproses bernilai minimal. saat nilai vel yang diperoleh >120 maka buzzer akan aktif. nilai dari LDR2 langsung di olah oleh arduino master.

Tidak ada komentar:

Posting Komentar