Introduction: ITTT Project Daniel Seton

Een hoogte sensor die aan en uit gaat als je op een pressure

sensor drukt. De hoogte wordt gemeten en er gaan lampjes branden op verschillende hoogtes. Als je te dichtbij de sensor komt gaat de buzzer af.

Step 1: Het Materiaal

1 - Arduino Yun

1 - HC-SRO4 Ultrasonic sensor

1 - Buzzer

1 - Breadboard

1 - Pressure sensor

1 - 1k ohm Resistor

2 - Groene LED lampjes

2 - Gele LED lampjes

2 - Rode LED lampjes

6 - 330 ohm Resistors

Heel veel kabels

Step 2: Het Begin

Maak eerst de 5 volt en ground pin vast aan de breadboard. De

5 volt pin maak je vast aan het onderste kanaal en de ground pin aan de bovenste.

Step 3: De LED Lampen

Maak nu de LEDjes vast

aan het breadboard. Het is best simple maar het moet wel goed gebeuren. De manier op hoe ik het deed was dat ik de lange poot van de ledjes vast maakte aan arduino met een kabeltje en de korte poot met een 330 ohm resistor aan het ground kanaal op het breadboard. De eerste groene LED aan de rechter kant zit vast aan pin 13. Dit telt af tot pin 8 waar de laatste rode LED in zit. De rede waarom ik een kabel gebruik voor een van de groene LED lampjes inplaats van een resistor is omdat ik niet genoeg resistors had.

Step 4: De Hoogte Sensor

Nu maken we de hoogte sensor vast. Maak de ground pin op de

sensor vast aan het ground kanaal op het breadboard. De echo pin wordt vast gemaakt aan pin 6 op Arduino. De trig pin wordt vast gemaakt aan pin 7 en de VCC pin wordt vast gemaakt aan het 5 volt kanaal op het breadboard.

Step 5: De Buzzer

De buzzer is ook makkelijk vast te maken. De lange poot maak

je vast aan pin 3 op Arduino en de korte maak je vast aan het ground kanaal.

Tip

Je kan een resistor gebruiken om de korte pin vast te maken. Het is niet nodig, maar het dempt het volume van de buzzer.

Step 6: De Pressure Sensor

De pressure sensor is wat lastig vast te maken. Helemaal als

je een klein breadboard hebt. Een pin maak je vast aan het 5 volt kanaal. De andere pin maak je vast aan het ground kanaal doormiddel van een 1k ohm resistor en aan de analoge 0 pin op Arduino

Step 7: De Code

#define trigPin 7
#define echoPin 6
#define led 13
#define led2 12
#define led3 11
#define led4 10
#define led5 9
#define led6 8
#define buzzer 3
int sound = 250;
void setup() {
  Serial.begin (9600);
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
  pinMode(led, OUTPUT);
  pinMode(led2, OUTPUT);
  pinMode(led3, OUTPUT);
  pinMode(led4, OUTPUT);
  pinMode(led5, OUTPUT);
  pinMode(led6, OUTPUT);
  pinMode(buzzer, OUTPUT);
  pinMode(A0, INPUT);
}
void loop() {
  int sensorValue = analogRead(A0);
  long duration, distance;
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);
  duration = pulseIn(echoPin, HIGH);
  distance = (duration / 2) / 29.1;
  if (sensorValue >= 20) {
    if (distance <= 30) {
      digitalWrite(led, HIGH);
      sound = 0;
    }
    else {
      digitalWrite(led, LOW);
    }
    if (distance < 25) {
      digitalWrite(led2, HIGH);
      sound = 0;
    }
    else {
      digitalWrite(led2, LOW);
    }
    if (distance < 20) {
      digitalWrite(led3, HIGH);
      sound = 0;
    }
    else {
      digitalWrite(led3, LOW);
    }
    if (distance < 15) {
      digitalWrite(led4, HIGH);
      sound = 0;
    }
    else {
      digitalWrite(led4, LOW);
    }
    if (distance < 10) {
      digitalWrite(led5, HIGH);
      sound = 290;
    }
    else {
      digitalWrite(led5, LOW);
    }
    if (distance < 5) {
      digitalWrite(led6, HIGH);
      sound = 300;
    }
    else {
      digitalWrite(led6, LOW);
    }
    if (distance > 30 || distance <= 0) {
      Serial.println("Out of range");
      noTone(buzzer);
    }
    else {
      Serial.print(distance);
      Serial.println(" cm");
      tone(buzzer, sound);
    }
    delay(500);
  }
  else {
    digitalWrite(led, LOW);
    digitalWrite(led2, LOW);
    digitalWrite(led3, LOW);
    digitalWrite(led4, LOW);
    digitalWrite(led5, LOW);
    digitalWrite(led6, LOW);
    noTone(buzzer);
  }
}