Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define relay 5
- #define irSensor 4
- #define trigPin 3
- #define echoPin 2
- long duration;
- int Distance;
- int sensorState = 0;
- int moveFlag = 0;
- void setup() {
- Serial.begin(9600);
- pinMode(relay, OUTPUT);
- pinMode(trigPin, OUTPUT);
- pinMode(echoPin, INPUT);
- pinMode(irSensor, INPUT);
- digitalWrite(relay, 1);
- digitalWrite(trigPin, 0);
- moveFlag = 0;
- }
- void loop() {
- IR();
- US();
- if (moveFlag) {
- digitalWrite(relay, 0);
- if (Distance>20) {
- digitalWrite(relay, 1);
- }
- }
- }
- void US() {
- digitalWrite(trigPin, LOW);
- delayMicroseconds(2);
- digitalWrite(trigPin, HIGH);
- delayMicroseconds(10);
- digitalWrite(trigPin, LOW);
- duration = pulseIn(echoPin, HIGH);
- Distance = duration * 0.034 / 2;
- Serial.print("Distance: ");
- Serial.println(Distance);
- }
- void IR() {
- sensorState = digitalRead(irSensor);
- Serial.println(sensorState);
- if (!sensorState) {
- moveFlag = 1;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement