#include <NewPing.h>
int lichtPin= 14;
int pirPin = 15;
#define TRIGGER_PIN 16 // Arduino pin tied to trigger pin on the ultrasonic sensor.
#define ECHO_PIN 17 // Arduino pin tied to echo pin on the ultrasonic sensor.
#define MAX_DISTANCE 400 // Maximum distance we want to ping for (in centimeters). Maximum sensor distance is rated at 400-500cm.
#define TRIGGER_PIN2 18 // Arduino pin tied to trigger pin on the ultrasonic sensor.
#define ECHO_PIN2 19 // Arduino pin tied to echo pin on the ultrasonic sensor.
#define MAX_DISTANCE2 400 // Maximum distance we want to ping for (in centimeters). Maximum sensor distance is rated at 400-500cm.
int fadePin1 = 2;
int fadePin2 = 3;
int fadePin3 = 4;
int fadePin4 = 5;
int fadePin5 = 6;
int fadePin6 = 7;
int fadePin7 = 8;
int fadePin8 = 9;
int fadePin9 = 10;
int fadePin10 = 11;
int fadePin11 = 12;
int fadePin12 = 13;
int LedPin01 = 44;
int LedPin02 = 42;
int LedPin03 = 40;
int LedPin04 = 38;
int LedPin05 = 36;
int LedPin06 = 34;
int LedPin07 = 32;
int LedPin08 = 30;
int LedPin09 = 45;
int LedPin10 = 43;
int LedPin11 = 41;
int LedPin12 = 39;
int LedPin13 = 37;
int LedPin14 = 35;
int LedPin15 = 33;
int LedPin16 = 31;
NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE);
NewPing sonar2(TRIGGER_PIN2, ECHO_PIN2, MAX_DISTANCE2);
void setup()
{
pinMode(lichtPin, INPUT);
pinMode(pirPin, INPUT);
pinMode(fadePin1, OUTPUT);
pinMode(fadePin2, OUTPUT);
pinMode(fadePin3, OUTPUT);
pinMode(fadePin4, OUTPUT);
pinMode(fadePin5, OUTPUT);
pinMode(fadePin6, OUTPUT);
pinMode(fadePin7, OUTPUT);
pinMode(fadePin8, OUTPUT);
pinMode(fadePin9, OUTPUT);
pinMode(fadePin10, OUTPUT);
pinMode(fadePin11, OUTPUT);
pinMode(fadePin12, OUTPUT);
pinMode(LedPin01, OUTPUT);
pinMode(LedPin02, OUTPUT);
pinMode(LedPin03, OUTPUT);
pinMode(LedPin04, OUTPUT);
pinMode(LedPin05, OUTPUT);
pinMode(LedPin06, OUTPUT);
pinMode(LedPin07, OUTPUT);
pinMode(LedPin08, OUTPUT);
pinMode(LedPin09, OUTPUT);
pinMode(LedPin10, OUTPUT);
pinMode(LedPin11, OUTPUT);
pinMode(LedPin12, OUTPUT);
pinMode(LedPin13, OUTPUT);
pinMode(LedPin14, OUTPUT);
pinMode(LedPin15, OUTPUT);
pinMode(LedPin16, OUTPUT);
analogWrite(fadePin1, 20);
analogWrite(fadePin2, 40);
analogWrite(fadePin3, 60);
analogWrite(fadePin4, 80);
analogWrite(fadePin5, 100);
analogWrite(fadePin6, 120);
analogWrite(fadePin7, 140);
analogWrite(fadePin8, 160);
analogWrite(fadePin9, 180);
analogWrite(fadePin10, 200);
analogWrite(fadePin11, 220);
analogWrite(fadePin12, 240);
}
void loop()
{
if (digitalRead(lichtPin) == HIGH)
{
if (digitalRead(pirPin) == HIGH)
{
digitalWrite(LedPin01, HIGH);
}
else
{
digitalWrite(LedPin01, LOW);
}
delay(100);
unsigned int uS = sonar.ping();
int distanceCMs = (uS / US_ROUNDTRIP_CM);
if (distanceCMs < 80)
{
digitalWrite(LedPin01, HIGH);
delay (300);
digitalWrite(LedPin02, HIGH);
delay (300);
digitalWrite(LedPin03, HIGH);
delay (300);
digitalWrite(LedPin04, HIGH);
delay (300);
digitalWrite(LedPin05, HIGH);
delay (300);
digitalWrite(LedPin06, HIGH);
delay (300);
digitalWrite(LedPin07, HIGH);
delay (300);
digitalWrite(LedPin08, HIGH);
delay (300);
digitalWrite(LedPin09, HIGH);
delay (300);
digitalWrite(LedPin10, HIGH);
delay (300);
digitalWrite(LedPin11, HIGH);
delay (300);
digitalWrite(LedPin12, HIGH);
delay (300);
digitalWrite(LedPin13, HIGH);
delay (300);
digitalWrite(LedPin14, HIGH);
delay (300);
digitalWrite(LedPin15, HIGH);
delay (300);
digitalWrite(LedPin16, HIGH);
delay (8000);
digitalWrite(LedPin01, LOW);
delay (300);
digitalWrite(LedPin02, LOW);
delay (300);
digitalWrite(LedPin03, LOW);
delay (300);
digitalWrite(LedPin04, LOW);
delay (300);
digitalWrite(LedPin05, LOW);
delay (300);
digitalWrite(LedPin06, LOW);
delay (300);
digitalWrite(LedPin07, LOW);
delay (300);
digitalWrite(LedPin08, LOW);
delay (300);
digitalWrite(LedPin09, LOW);
delay (300);
digitalWrite(LedPin10, LOW);
delay (300);
digitalWrite(LedPin11, LOW);
delay (300);
digitalWrite(LedPin12, LOW);
delay (300);
digitalWrite(LedPin13, LOW);
delay (300);
digitalWrite(LedPin14, LOW);
delay (300);
digitalWrite(LedPin15, LOW);
delay (300);
digitalWrite(LedPin16, LOW);
}
delay(100);
unsigned int uS2 = sonar2.ping();
int distanceCMs2 = (uS2 / US_ROUNDTRIP_CM);
if (distanceCMs2 < 80)
{
digitalWrite(LedPin16, HIGH);
delay (300);
digitalWrite(LedPin15, HIGH);
delay (300);
digitalWrite(LedPin14, HIGH);
delay (300);
digitalWrite(LedPin13, HIGH);
delay (300);
digitalWrite(LedPin12, HIGH);
delay (300);
digitalWrite(LedPin11, HIGH);
delay (300);
digitalWrite(LedPin10, HIGH);
delay (300);
digitalWrite(LedPin09, HIGH);
delay (300);
digitalWrite(LedPin08, HIGH);
delay (300);
digitalWrite(LedPin07, HIGH);
delay (300);
digitalWrite(LedPin06, HIGH);
delay (300);
digitalWrite(LedPin05, HIGH);
delay (300);
digitalWrite(LedPin04, HIGH);
delay (300);
digitalWrite(LedPin03, HIGH);
delay (300);
digitalWrite(LedPin02, HIGH);
delay (300);
digitalWrite(LedPin01, HIGH);
delay (8000);
digitalWrite(LedPin16, LOW);
delay (300);
digitalWrite(LedPin15, LOW);
delay (300);
digitalWrite(LedPin14, LOW);
delay (300);
digitalWrite(LedPin13, LOW);
delay (300);
digitalWrite(LedPin12, LOW);
delay (300);
digitalWrite(LedPin11, LOW);
delay (300);
digitalWrite(LedPin10, LOW);
delay (300);
digitalWrite(LedPin09, LOW);
delay (300);
digitalWrite(LedPin08, LOW);
delay (300);
digitalWrite(LedPin07, LOW);
delay (300);
digitalWrite(LedPin06, LOW);
delay (300);
digitalWrite(LedPin05, LOW);
delay (300);
digitalWrite(LedPin04, LOW);
delay (300);
digitalWrite(LedPin03, LOW);
delay (300);
digitalWrite(LedPin02, LOW);
delay (300);
digitalWrite(LedPin01, LOW);
}
}
}