0% found this document useful (0 votes)
15 views

Coding Smart Home

Uploaded by

Barkha Roza95
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)
15 views

Coding Smart Home

Uploaded by

Barkha Roza95
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/ 4

int Led = 10; //deklarasi LED pada pin 10 Arduino

int LDR = A5; //deklarasi LDR pada pin A5 Arduino

#define pinecho1 7

#define pintriger1 6

#include <Servo.h>

Servo myservo;

const int mqxPin = 11; // pin A0 MQ2 connected to pin analog A0 Arduino

int redLed = 12; // LED connected to pin 12 Arduino

int buzzer = 10; // Buzzer connected to pin 10 Arduino

int sensorThres = 400;

const int sensorMin = 0; // sensor minimum

const int sensorMax = 1024;

const int trigPin = 12;

const int echoPin = 13;

const int Relay = A2;

int duration = 0;

int distance = 0;

float read_srf(int pintriger, int pinecho) {

long durasi;

float jarak;

digitalWrite(pintriger, LOW);

delayMicroseconds(2);

digitalWrite(pintriger, HIGH);

delayMicroseconds(10);
digitalWrite(pintriger, LOW);

delayMicroseconds(2);

durasi = pulseIn(pinecho, HIGH);

jarak = durasi / 58.2;

return jarak;

void setup()

pinMode(Led, OUTPUT); //deklarasi LED sebagai output

Serial.begin(115200);

pinMode (pintriger1, OUTPUT);

pinMode (pinecho1, INPUT);

myservo.attach(9);

pinMode(mqxPin, INPUT);

pinMode(redLed, OUTPUT);

pinMode(buzzer, OUTPUT);

pinMode(trigPin , OUTPUT);

pinMode(echoPin , INPUT);

pinMode(Relay , OUTPUT);

int cahaya = analogRead(LDR); //membaca nilai ADC LDR

//jika nilai ADC > 800 maka

if (cahaya > 800)

digitalWrite(Led, HIGH); // LED menyala

else //atau

{
digitalWrite(Led, LOW); // LED mati

void loop()

int analogSensor = analogRead(mqxPin);

Serial.print("Output MQ-2 : ");

Serial.println(analogSensor);

// Check whether it is greater than the threshold value

if (analogSensor > sensorThres)

digitalWrite(redLed, HIGH);

tone(buzzer, 1000, 200);

else

digitalWrite(redLed, LOW);

noTone(buzzer);

int sensorReading = analogRead(A0);

int map(long int, long int, long int, long int, long int);

int range = map(sensorReading,sensorMin, sensorMax, 0, 3);

switch (range) {
Serial.println("** Close Fire **");

break;

case 1: // A fire between 1-3 feet away.

Serial.println("** Distant Fire **");

break;

case 2: // No fire detected.

Serial.println("No Fire");

break;

digitalWrite(trigPin, LOW);

delayMicroseconds(2);

digitalWrite(trigPin, HIGH);

delayMicroseconds(10);

digitalWrite(trigPin, LOW);

duration = pulseIn(echoPin, HIGH);

distance = duration/58.2;

if ( distance <= 4 ) // set value when you want to turn OFF water pump

digitalWrite(Relay, LOW);

else if ( distance >= 7 ) // set value when you want to turn ON water pump

digitalWrite(Relay, HIGH);

int jarak = read_srf(pintriger1, pinecho1);

jarak = map (jarak, 3, 30, 0, 180);

myservo.write(jarak);

Serial.println(jarak);

You might also like