SINAU PROGRAMMING
SINAU PROGRAMMING
  • Home
  • Source Code
  • Social
  • CONTROL
    • Internet of Think (IoT)
    • ESP
      • NodeMcu
      • Lora
      • WeMos
      • Esp 32 Dev
      • Node 32s
    • Arduino
    • Raspberry
    • Proteus
  • MATLAB
    • MATLAB PROJECT
    • PLC
      • Omron
      • Mitsubishi
      • Siemens
      • Schneider
      • ArduinoPLC
    • Arduino
    • Basic & Doc
  • Contact Us

        kita akan membutuhkan pengukuran cahaya untuk mengetahui seberapa terang cahaya dalam ruangan kita. Hal ini penting, misalnya, untuk kebutuhan pencahayaan yang diperlukan untuk pemotretan, kebutuhan pencahayaan tanaman yang ada di dalam ruangan, atau bahkan menyalakan lampu secara otomatis jika cahaya kurang dari batas tertentu.

        Salah satu sensor yang bisa mengukur intensitas cahaya adalah MAX 44009, sebuah sensor berukuran kecil namun memiliki kemampuan yang istimewa. MAX 44009 dibuat oleh Maxim Integrated.

        MAX44009 ambient light sensor memiliki I2C output dan konsumsi arus sangat kecil (<1uA, sensor ambient light dengan arus terkecil!) sehingga sangat cocok untuk aplikasi portabel menggunakan baterai. Sangat umum dipakai di industri smartphones, notebooks, dan wearables. 


        Rentang dinamis 22-bit ultra lebar dari 0,045 lux hingga 188,000 lux. Pengoperasian dalam cahaya redup memungkinkan pengoperasian yang mudah dalam aplikasi kaca gelap. Respon spektral fotodioda pada chip penglihatan penglihatan manusia dan memblok cahaya IR dan UV. Blok penguatan adaptif secara otomatis memilih kisaran lux yang benar untuk mengoptimalkan hitungan / lux.

Spesifikasi sensor max44009:
- Range pencahayaan 0.045 Lux ~ 188,000 Lux
- Dimensi 2mm x 2mm x 0.6mm UTDFN-Opto package.
- VCC = 1.7V to 3.6V
- ICC = 0.65μA Operating Current
- -40°C to +85°C Operating Temperature Range
- Device Address Options 1001 010x and 1001 011x

Langsung saja rangkai projek seperti dibawah ini :

 

Lalu masukkan program di bawah ini :

// www.sinauprogramming.com 
#include <Wire.h> // Memanggil library Wire
#include <Max44009.h> // Memanggil library MAX44009
#include <LiquidCrystal_I2C.h> // Memanggil library LCD dengan modul I2C

Max44009 cahaya(0x4A); //Membuat variabel untuk MAX44009
LiquidCrystal_I2C lcd(0x27, 16, 4); // Mengatur alamat LCD dan dimensi LCD, yaitu 16 kolom dan 2 baris
String hasilCahaya; // Variabel untuk menyimpan hasil pengukuran yang memiliki satuan unit cahaya lux (lx)

uint32_t lastDisplay = 0; // Membuat variabel unsigned integer 32 bit

void setup() {
Serial.begin(9600); //Menginisiasikan setup kecepatan komunikasi
Wire.begin(); // Menginisiasi Wire
Wire.setClock(100000); // Menginisiasikan frequency clock komunikasi I2C dalam satuan Hertz
lcd.init();
lcd.backlight(); // Menghidupkan backlight
lcd.setCursor(3, 0); // Menempatkan posisi cursor pada baris 0 dan kolom 0
lcd.print("INTENSITAS"); // Menulis konten
lcd.setCursor(5, 1); // Menempatkan posisi cursor pada baris 1 dan kolom 0
lcd.print("CAHAYA"); // Menulis konten

delay(4000); // jeda 4 detik
lcd.clear();

}



void loop()
{
uint32_t interval = 1000; // Membuat variabel unsigned integer 32 bit
if (millis() - lastDisplay >= interval)
{
lastDisplay += interval;
float ukurCahaya = cahaya.getLux(); // Mendapatkan hasil pengukuran dari sensor
int err = cahaya.getError(); // Mendapatkan status error dalam pengukuran intensitas cahaya
if (err != 0)
{
Serial.print("Error:\t"); // Menampilkan konten melalui serial monitor
Serial.println(err); // Menampilkan pesan error apabila pengukuran gagal dilakukan
hasilCahaya = "Error " + String(err);
}
else
{
Serial.print("Cahaya:\t"); // Menampilkan konten melalui serial monitor
Serial.print(ukurCahaya); // Menampilkan konten hasil pengukuran melalui serial monitor
Serial.println(" lx"); // Menampilkan satuan unit hasil pengukuran
hasilCahaya = String(ukurCahaya) + " lx"; // Menempatkan hasil pengukuran pada variabel
}

lcd.setCursor(3, 0); // Menempatkan posisi cursor pada baris 0 dan kolom 0
lcd.print("MONITORING"); // Menulis konten pada LCD

lcd.setCursor(0, 1); // Menempatkan posisi cursor pada baris 0 dan kolom 0
lcd.print("RESULT: "); // Menulis konten pada LCD
lcd.setCursor(7, 1); // Menempatkan posisi cursor pada baris 1 dan kolom 0
lcd.print(hasilCahaya); // Menulis konten hasil pengukuran pada LCD
delay(1000);
lcd.clear(); // Menghapus konten LCD
}
}

 

Hasil pengukuran akan ditampilkan melalui Serial Monitor dan LCD 16×2 I2C. 

Terimakasih dan Selamat mencoba.




 


Deskripsi Sensor BME280

Sensor BME280 adalah sebuah sensor lingkungan dengan suhu, tekanan barometrik, dan kelembaban. Sensor ini bagus untuk semua jenis penginderaan lingkungan dalam ruangan dan bahkan dapat digunakan di I2C dan SPI!

Sensor presisi dari Bosch ini adalah solusi penginderaan berbiaya rendah terbaik untuk mengukur kelembaban dengan akurasi ± 3%, tekanan barometrik dengan akurasi absolut ± 1 hPa, dan suhu dengan akurasi ± 1.0 ° C. Karena tekanan berubah seiring ketinggian, dan pengukuran tekanannya sangat bagus, Anda juga dapat menggunakannya sebagai altimeter dengan akurasi ± 1 meter atau lebih!


BME280 adalah sensor generasi berikutnya dari Bosch, dan merupakan peningkatan ke BMP085 / BMP180 / BMP183 - dengan kebisingan ketinggian rendah 0,25 m dan waktu konversi cepat yang sama. Ini memiliki spesifikasi yang sama, tetapi dapat menggunakan I2C atau SPI. Untuk pemasangan kabel yang mudah dan sederhana, 

Prosedur untuk Mengubah Alamat I2C

  • Temukan jumper solder dibawah chip. Secara default, kuningan tembaga tengah terhubung ke kuningan kiri. note default alamat I2C adalah 0x76 HEX
  • Putuskan koneksi antara tengah dan kuningan tembaga kiri menggunakan pisau tajam.
  • Hubungkan menggunakan timah dan solder antara tengah dan pad tembaga kiri. Ini memungkinkan Anda untuk mengatur alamat I2C 0x77 HEX .


Modul sensor BME280 ini sudah dilengkapi dengan regulator 3.3V tipe LM6206 on-board dan I2C Voltage Level Translator.

Sehingga Anda dapat menggunakannya daya dari mikrokontroler dengan output logika 3.3V atau 5V seperti Arduino.



Instalasi library BME280

Berikut langkah – langkah instalasinya :

  1. Buka software Arduino IDE
  2. Pastikan komputer atau laptop terhubung dengan internet
  3. Kemudian klik Sketch > Include Library > Manage Libraries



Wiring BME280 Arduino


Newer Posts Older Posts Home





POPULAR POSTS

  • Skema Power Supply Switching SMPS
  • Proteus 8.5 Full Version Professional
  • Serial Communication UART Raspberry Pico (SoftSerial)
  • Artificial Neural Network for Identification MATLAB
  • Tutorial ILI9341 TFT SPI LCD touch Screen
  • Pulse Oxymetry (SPO2) + Raspberry Pi
  • Cara Install Board ESP32 Ke Arduino IDE

ABOUT ME

cobabaru

Sinau Programming

SUBSCRIBE & FOLLOW

Training


Contact Form

Name

Email *

Message *

Categories

  • alkes 1
  • Android 4
  • Arduino 35
  • Basic & Doc 12
  • centrifuge 1
  • ESP32 8
  • Internet of Things (IoT) 23
  • LCD TFT SPI 2
  • MATLAB 6
  • Metode kendali 1
  • Modul Charger 1
  • Nextion 4
  • NodeMcu 8
  • oled 1
  • Pattern Recognition 2
  • Pemrograman 2
  • Perbaikan 1
  • PID 2
  • PLC HMI VTSCADA ARDUINO 3
  • PRIVACY POLICY 1
  • Proteus 11
  • Python 1
  • raspberry 5
  • Teknik Elektromedik 2
  • Thingsboard 1
  • Video 5
  • Wemos 4

sinau_programming

Sinau Programming Distributed by Sinau Programming