1. Sensor Garis

int a;
void setup()
{
Serial.begin(9600);
a = 0;
pinMode(A0, INPUT);
}
void loop()
{
a = digitalRead(A0);
Serial.print("sensor:");
Serial.println(a);
delay(100);
}
2. Sensor Suara

volatile boolean data_;
volatile boolean a;
void setup()
{
Serial.begin(9600);
data_ = 0;
a = 0;
pinMode(A0, INPUT);
}
void loop()
{
if (data_ == digitalRead(A0)) {
data_ = digitalRead(A0);
a = !a;
Serial.print("sensor:");
Serial.println(a);
delay(100);
}
}
3. Sensor Jarak(Ultrasonic)

volatile int a;
float checkdistance_A0_A1() {
digitalWrite(A0, LOW);
delayMicroseconds(2);
digitalWrite(A0, HIGH);
delayMicroseconds(10);
digitalWrite(A0, LOW);
float distance = pulseIn(A1, HIGH) / 58.00;
delay(10);
return distance;
}
void setup(){
Serial.begin(9600);
a = 0;
Serial.println("mengukur jarak menggunakan ultrasonic");
Serial.println("===============================");
pinMode(A0, OUTPUT);
pinMode(A1, INPUT);
}
void loop(){
a = checkdistance_A0_A1();
Serial.print("jarak =");
Serial.println(a);
delay(500);
}
4. Sensor Suhu dan Kelembapan(DHT11)

download library: https://github.com/markruys/arduino-DHT
#include "DHT.h"
DHT dht;
void setup()
{
Serial.begin(9600);
Serial.println();
Serial.println("Status\tHumidity (%)\tTemperature (C)");
dht.setup(A0); // data pin A0
}
void loop()
{
delay(dht.getMinimumSamplingPeriod());
float humidity = dht.getHumidity();
float temperature = dht.getTemperature();
Serial.print(dht.getStatusString());
Serial.print("\t");
Serial.print(humidity, 1);
Serial.print("\t\t");
Serial.print(temperature, 1);
}
5. Sensor Sentuh

volatile boolean data_;
volatile boolean a;
void setup()
{
Serial.begin(9600);
data_ = 0;
a = 0;
pinMode(A0, INPUT);
}
void loop()
{
if (data_ != digitalRead(A0)) {
data_ = digitalRead(A0);
a = !a;
Serial.print("sensor:");
Serial.println(a);
delay(100);
}
}
6. Sensor Gerak(PIR)


//Sensor PIR, output ---|____ HIGH-LOW seting Delay_Time minimal
//setelah mendeteksi gerakan output HIGH selama 1,8S
//setelah 1,8S akan menjadi LOW selama 6S sebelum mendeteksi gerakan baru
volatile boolean dataPIR;
int temp;
int temp1;
void setup()
{
Serial.begin(9600);
pinMode(A0, INPUT);
dataPIR=0;
}
void loop(){
dataPIR = digitalRead(A0);
//mendeteksi ada gerakan
if (dataPIR==1){
if (temp1==1){
Serial.println("PIR mendeteksi ada gerakan:");
//tuliskan program dibawah ini, ketika mendeteksi gerakan:
}
delay(100);temp1 = temp1 + 1;
if (temp1%10==0) {
Serial.print("HIGH:");
Serial.println(temp1);}
}
//lama waktu LOW, sebelum bisa mendeteksi gerakan baru
if (temp<=70) { //counter menghitung 7 detik
delay(100);temp = temp + 1;
if (temp%10==0) {
Serial.print("LOW:");
Serial.println(temp);}
if (temp==70){Serial.println("PIR siap merespon gerakan baru:");}
}
if (dataPIR==0){temp1=0;} //reset counter
if (dataPIR==1){temp=0;} //reset counter jika ada gerakan
}
