Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende Überarbeitung | Letzte ÜberarbeitungBeide Seiten der Revision | ||
bausaetze:hc-sr04 [2016/05/19 07:57] – Externe Bearbeitung 127.0.0.1 | bausaetze:hc-sr04 [2016/11/16 12:32] – Hannes Jochriem | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== HC-SR04 Ultraschall-Abstandssensor ====== | + | [[bausaetze: |
- | + | ||
- | ===== Verwendung ===== | + | |
- | + | ||
- | Die Verwendung des Sensors ist sehr einfach, er besitzt lediglich vier Pins: | + | |
- | + | ||
- | * VCC | + | |
- | * GND | + | |
- | * Trig | + | |
- | * Echo | + | |
- | + | ||
- | Sobald der Trigger-Pin auf 0 gezogen wird, startet die Platine mit der automatischen Abstandsmessung und gibt am **Echo**-Ausgang ein PWM-Signal aus. Die Pulsbreite kann in den Abstand umgerechnet werden. | + | |
- | + | ||
- | Das Modul wird wie folgt mit dem Gscheiduino (Arduino/ | + | |
- | + | ||
- | {{:bausaetze: | + | |
- | + | ||
- | Die Einbindung in die Arduino-Programmieroberfläche ist sehr einfach und geschieht mit folgendem Mustercode: | + | |
- | + | ||
- | <code c> | + | |
- | /* | + | |
- | * HC-SR04 Sample Code | + | |
- | * http:// | + | |
- | */ | + | |
- | + | ||
- | #define TRIG 13 | + | |
- | #define ECHO 12 | + | |
- | + | ||
- | void setup() { | + | |
- | Serial.begin (9600); | + | |
- | pinMode(TRIG, | + | |
- | pinMode(ECHO, | + | |
- | } | + | |
- | + | ||
- | void loop() { | + | |
- | long pulsewidth, distance; | + | |
- | + | ||
- | // Messung antriggern: | + | |
- | digitalWrite(TRIG, | + | |
- | delayMicroseconds(10); | + | |
- | digitalWrite(TRIG, | + | |
- | + | ||
- | // Pulsweite messen: | + | |
- | pulsewidth = pulseIn(ECHO, | + | |
- | + | ||
- | // Umrechnen in cm: | + | |
- | distance = (pulsewidth/ | + | |
- | + | ||
- | // Ausgeben an die serielle Schnittstelle, | + | |
- | if(distance < 400) | + | |
- | { | + | |
- | Serial.print(distance); | + | |
- | Serial.println(" | + | |
- | // kurze Pause | + | |
- | delay(500); | + | |
- | } | + | |
- | } | + | |
- | </code> | + |