Paso 6: Programación:-
Herramienta con alarma automática de medición de distancia #By Sourabh Kumar @ www.androroot.com
#include
LiquidCrystal lcd (12, 11, 5, 4, 3, 2); PIN diclaration para LCD
int pingPin = 7; PIN diclaration de Trig de ultrasonidos
int inPin = 8; PIN diclaration para sensor de eco de ultrasonidos
const int zumbador = 9; PIN diclaration de zumbador y led
larga duración, pulgadas, cm;
int indec, cmdec;
int inchconv = 147;
int cmconv = 59;
Cadena s1, s2;
void setup()
{
LCD.Begin (8, 2); LCD tipo cambiarlo según el suyo lcd
pinMode (pingPin, salida);
pinMode (inPin, entrada);
pinMode (zumbador, salida);
}
void loop()
{
digitalWrite (pingPin, LOW);
delayMicroseconds(2);
digitalWrite (pingPin, HIGH);
delayMicroseconds(10);
digitalWrite (pingPin, LOW);
duración = pulseIn (inPin, HIGH);
pulgadas = microsecondsToInches(duration);
INDEC = (duración - pulgadas * inchconv) * 10 / inchconv;
cm = microsecondsToCentimeters(duration);
cmdec = (duración - 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);
Si (cm < = 15) //If algún obstáculo viene en esta gama (mina = 15cm) zumbador comienza. Cambiarlo según su propósito.
{
digitalWrite (zumbador, HIGH);
Delay(100);
digitalWrite (zumbador, LOW);
Delay(10);
lcd.setCursor(0,0);
LCD.Print ("Andro Ro");
lcd.setCursor(0,1);
LCD.Print("OT-Alarm");
Delay(800);
}
}
microsecondsToInches(long microseconds) largo
{
volver microsegundos / inchconv;
}
microsecondsToCentimeters(long microseconds) largo
{
volver microsegundos / cmconv;
}
Descargar .ino archivo desde aquí: http://www.androroot.com/2016/06/distance-measuri...