0% found this document useful (0 votes)
74 views34 pages

Tutorial Sensor Cahaya LDR Arduino

The document describes Arduino code for connecting various sensors and devices to Firebase using an ESP32. This includes code snippets for connecting a light sensor, ultrasonic sensor, PIR motion sensor, RGB LED, relay module, and servo motor to Firebase and updating values based on sensor readings or button presses. The code initializes WiFi connection and Firebase and reads/writes data to specific nodes on the Firebase database.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
74 views34 pages

Tutorial Sensor Cahaya LDR Arduino

The document describes Arduino code for connecting various sensors and devices to Firebase using an ESP32. This includes code snippets for connecting a light sensor, ultrasonic sensor, PIR motion sensor, RGB LED, relay module, and servo motor to Firebase and updating values based on sensor readings or button presses. The code initializes WiFi connection and Firebase and reads/writes data to specific nodes on the Firebase database.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 34

SENSOR CAHAYA (MODUL LDR)

Program Arduino IDE

#include <WiFi.h>

#include "FirebaseESP32.h"

#define FIREBASE_HOST "coba-esp-dcd5c.firebaseio.com"


#define FIREBASE_AUTH "axtOcEXQqU9IhXjwlisaRiJkTwxUy9Yrcpt5PvnK"
#define WIFI_SSID "StayBisnis"
#define WIFI_PASSWORD "cobalagi"

#define ldr 36

FirebaseData firebaseData;

String path = "/Node1";

int oldAdcLdr;
int newAdcLdr;

void setup() {
// put your setup code here, to run once:
Serial.begin(115200);

pinMode(ldr,INPUT);

initWifi();

oldAdcLdr = analogRead(ldr);
}

void loop() {
// put your main code here, to run repeatedly:
delay(500);

//ambil nilai dari sensor LDR dan kirim ke firebase


newAdcLdr = analogRead(ldr);
Serial.println(newAdcLdr);
if(newAdcLdr != oldAdcLdr){
Firebase.setDouble(firebaseData, path + "/ldr", newAdcLdr);
oldAdcLdr = newAdcLdr;
}
}

void initWifi(){
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();
Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
Firebase.reconnectWiFi(true);

//Set database read timeout to 1 minute (max 15 minutes)


Firebase.setReadTimeout(firebaseData, 1000 * 60);
//tiny, small, medium, large and unlimited.
//Size and its write timeout e.g. tiny (1s), small (10s), medium
(30s) and large (60s).
Firebase.setwriteSizeLimit(firebaseData, "tiny");
}
SENSOR ULTRASONIK
Program Arduino IDE

#include <WiFi.h>
#include <HCSR04.h>

#include "FirebaseESP32.h"

#define FIREBASE_HOST "coba-esp-dcd5c.firebaseio.com"


#define FIREBASE_AUTH "axtOcEXQqU9IhXjwlisaRiJkTwxUy9Yrcpt5PvnK"
#define WIFI_SSID "StayBisnis"
#define WIFI_PASSWORD "cobalagi"

UltraSonicDistanceSensor distanceSensor(17,5);//initialisation class

FirebaseData firebaseData;

String path = "/Node1";


int oldDistance;
int newDistance;

void setup() {
// put your setup code here, to run once:
Serial.begin(115200);

initWifi();

oldDistance = distanceSensor.measureDistanceCm();
}

void loop() {
// put your main code here, to run repeatedly:
delay(500);

//ambil nilai dari sensor ultarsonic dan kirim ke firebase


newDistance = distanceSensor.measureDistanceCm();
Serial.println(newDistance);
if(newDistance != oldDistance){
Firebase.setInt(firebaseData, path + "/distance", newDistance);
oldDistance = newDistance;
}
}

void initWifi(){
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();

Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
Firebase.reconnectWiFi(true);

//Set database read timeout to 1 minute (max 15 minutes)


Firebase.setReadTimeout(firebaseData, 1000 * 60);
//tiny, small, medium, large and unlimited.
//Size and its write timeout e.g. tiny (1s), small (10s), medium
(30s) and large (60s).
Firebase.setwriteSizeLimit(firebaseData, "tiny");
}
SENSOR PIR
Program Arduino IDE

#include <WiFi.h>

#include "FirebaseESP32.h"

#define FIREBASE_HOST "coba-esp-dcd5c.firebaseio.com"


#define FIREBASE_AUTH "axtOcEXQqU9IhXjwlisaRiJkTwxUy9Yrcpt5PvnK"
#define WIFI_SSID "StayBisnis"
#define WIFI_PASSWORD "cobalagi"

#define pir 18

FirebaseData firebaseData;

String path = "/Node1";

int stateMotion = LOW; // default tidak ada gerakan


int valMotion = 0;

void setup() {
// put your setup code here, to run once:
Serial.begin(115200);

pinMode(pir,INPUT);

initWifi();

void loop() {
// put your main code here, to run repeatedly:
delay(500);

valMotion = digitalRead(pir); // read sensor value


if (valMotion == HIGH) { // check if the sensor is HIGH
if (stateMotion == LOW) {
Firebase.setInt(firebaseData, path + "/pir", 1);
stateMotion = HIGH; // update variable state to HIGH
}
}
else {
if (stateMotion == HIGH){
Firebase.setInt(firebaseData, path + "/pir", 0);
stateMotion = LOW; // update variable state to LOW
}
}
}

void initWifi(){
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();

Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
Firebase.reconnectWiFi(true);

//Set database read timeout to 1 minute (max 15 minutes)


Firebase.setReadTimeout(firebaseData, 1000 * 60);
//tiny, small, medium, large and unlimited.
//Size and its write timeout e.g. tiny (1s), small (10s), medium
(30s) and large (60s).
Firebase.setwriteSizeLimit(firebaseData, "tiny");
}
MODUL RGB LED
Program Arduino IDE

#include <WiFi.h>

#include "FirebaseESP32.h"

#define FIREBASE_HOST "coba-esp-dcd5c.firebaseio.com"


#define FIREBASE_AUTH "axtOcEXQqU9IhXjwlisaRiJkTwxUy9Yrcpt5PvnK"
#define WIFI_SSID "StayBisnis"
#define WIFI_PASSWORD "cobalagi"

#define led1 19
#define led2 21
#define led3 3

FirebaseData firebaseData;

String path = "/Node1";

void setup() {
// put your setup code here, to run once:
Serial.begin(115200);

pinMode(led1,OUTPUT);
pinMode(led2,OUTPUT);
pinMode(led3,OUTPUT);

initWifi();
}

void loop() {
// put your main code here, to run repeatedly:
delay(500);

//get value /Node1/lampu1


if(Firebase.getInt(firebaseData, path + "/lampu1")){
if(firebaseData.intData() == 0)
digitalWrite(led1,0);
else
digitalWrite(led1,1);
}

//get value /Node1/lampu2


if(Firebase.getInt(firebaseData, path + "/lampu2")){
if(firebaseData.intData() == 0)
digitalWrite(led2,0);
else
digitalWrite(led2,1);
}

//get value /Node1/lampu3


if(Firebase.getInt(firebaseData, path + "/lampu3")){
if(firebaseData.intData() == 0)
digitalWrite(led3,0);
else
digitalWrite(led3,1);
}
}

void initWifi(){
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();

Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
Firebase.reconnectWiFi(true);

//Set database read timeout to 1 minute (max 15 minutes)


Firebase.setReadTimeout(firebaseData, 1000 * 60);
//tiny, small, medium, large and unlimited.
//Size and its write timeout e.g. tiny (1s), small (10s), medium
(30s) and large (60s).
Firebase.setwriteSizeLimit(firebaseData, "tiny");
}
MODUL RELAY 2 CHANNEL
Program Arduino IDE

#include <WiFi.h>

#include "FirebaseESP32.h"

#define FIREBASE_HOST "coba-esp-dcd5c.firebaseio.com"


#define FIREBASE_AUTH "axtOcEXQqU9IhXjwlisaRiJkTwxUy9Yrcpt5PvnK"
#define WIFI_SSID "StayBisnis"
#define WIFI_PASSWORD "cobalagi"

#define rly1 22
#define rly2 23

FirebaseData firebaseData;

String path = "/Node1";

void setup() {
// put your setup code here, to run once:
Serial.begin(115200);

pinMode(rly1,OUTPUT);
pinMode(rly2,OUTPUT);

initWifi();
}

void loop() {
// put your main code here, to run repeatedly:
delay(500);

//get value /Node1/relay1


if(Firebase.getInt(firebaseData, path + "/relay1")){

if(firebaseData.intData() == 0)
digitalWrite(rly1,LOW);
else
digitalWrite(rly1,HIGH);
}

//get value /Node1/relay2


if(Firebase.getInt(firebaseData, path + "/relay2")){

if(firebaseData.intData() == 0)
digitalWrite(rly2,LOW);
else
digitalWrite(rly2,HIGH);
}
}

void initWifi(){
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();

Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
Firebase.reconnectWiFi(true);

//Set database read timeout to 1 minute (max 15 minutes)


Firebase.setReadTimeout(firebaseData, 1000 * 60);
//tiny, small, medium, large and unlimited.
//Size and its write timeout e.g. tiny (1s), small (10s), medium
(30s) and large (60s).
Firebase.setwriteSizeLimit(firebaseData, "tiny");
}
MOTOR SERVO
Program Arduino IDE

#include <WiFi.h>
#include <Servo.h>

#include "FirebaseESP32.h"

#define FIREBASE_HOST "coba-esp-dcd5c.firebaseio.com"


#define FIREBASE_AUTH "axtOcEXQqU9IhXjwlisaRiJkTwxUy9Yrcpt5PvnK"
#define WIFI_SSID "StayBisnis"
#define WIFI_PASSWORD "cobalagi"

Servo servoMotor;

#define srv 4

FirebaseData firebaseData;

String path = "/Node1";

void setup() {
// put your setup code here, to run once:
Serial.begin(115200);

initWifi();

servoMotor.attach(4);
}

void loop() {
// put your main code here, to run repeatedly:
delay(500);

Firebase.getInt(firebaseData, path + "/servomotor");


int val_srv=firebaseData.intData();

servoMotor.write(val_srv);
Serial.println(val_srv);

void initWifi(){
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();

Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
Firebase.reconnectWiFi(true);
//Set database read timeout to 1 minute (max 15 minutes)
Firebase.setReadTimeout(firebaseData, 1000 * 60);
//tiny, small, medium, large and unlimited.
//Size and its write timeout e.g. tiny (1s), small (10s), medium
(30s) and large (60s).
Firebase.setwriteSizeLimit(firebaseData, "tiny");
}

You might also like