Schritt 6: Programmieren:-
Distanzmessung Tool mit automatischer Alarm. #By Sourabh Kumar @ www.androroot.com
#include
LiquidCrystal LCD-Display (12, 11, 5, 4, 3, 2); PIN Diclaration für LCD
Int PingPin = 7; PIN Diclaration für Trig des Ultraschall-Sensors
Int InPin = 8; PIN Diclaration für ECHO des Ultraschall-Sensors
const Int Summer = 9; PIN Diclaration für Summer und led
lange Dauer, Zoll, cm;
Int Indec, Cmdec;
Int Inchconv = 147;
Int Cmconv = 59;
String s1, s2;
void setup()
{
LCD.Begin (8, 2); LCD-Typ ändern es entsprechend verkaufen lcd
PinMode (PingPin, Ausgang);
PinMode (InPin, Eingabe);
PinMode (Summer, OUTPUT);
}
void loop()
{
DigitalWrite (PingPin, LOW);
delayMicroseconds(2);
DigitalWrite (PingPin, HIGH);
delayMicroseconds(10);
DigitalWrite (PingPin, LOW);
Dauer = PulseIn (InPin, HIGH);
Zoll = microsecondsToInches(duration);
INDEC = (Dauer - Zoll * Inchconv) * 10 / Inchconv;
cm = microsecondsToCentimeters(duration);
Cmdec = (Dauer - cm * Cmconv) * 10 / Cmconv;
S1 = String(inches) + "." + String(indec) + "" + "";
S2 = String(cm) + "." + String(cmdec) + "cm" + "";
lcd.setCursor (0, 0);
LCD.Print(S1);
lcd.setCursor(0,1);
LCD.Print(S2);
Delay(600);
Wenn (cm < = 15) //If ein Hindernis in diesem Bereich kommt (Mine = 15cm) Summer beginnt. Ändern Sie es nach Ihrem Verwendungszweck.
{
DigitalWrite (Summer, HIGH);
Delay(100);
DigitalWrite (Summer, LOW);
Delay(10);
lcd.setCursor(0,0);
LCD.Print ("Andro Ro");
lcd.setCursor(0,1);
LCD.Print("OT-Alarm");
Delay(800);
}
}
lange microsecondsToInches(long microseconds)
{
Mikrosekunden zurück / Inchconv;
}
lange microsecondsToCentimeters(long microseconds)
{
Mikrosekunden zurück / Cmconv;
}
.Ino Datei hier herunterladen: http://www.androroot.com/2016/06/distance-measuri...