Paso 5: Código de Arduino
Programa (código fuente)
#include < Liquidcrystal.h >
inicializar la biblioteca con los números de los pines de interfaz
LiquidCrystal lcd (12, 11, 5, 4, 3, 2);
#define echoPin 7 / / Echo Pin
#define trigPin 8 / / pasador del gatillo
#define relé 10 / LED a bordo
#define cristal 9 / / detección de la botella
#define solenoide 13 / / detección de solenoide
armsUp Byte [8] = {}
0b00100,
0b01010,
0b00100,
0b10101,
0b01110,
0b00100,
0b00100,
0b01010
};
int maximumRange = 200; Rango máximo necesitada
int minimumRange = 0; Rango mínimo necesitada
larga duración, distancia; Duración permite calcular la distancia
void setup() {}
lcd.createChar (4, armsUp);
LCD.Begin (16, 2);
LCD.Write(4);
LCD.Print ("automatización de línea de producción por Saad Zeeshan Waqas Saeed Adeel");
para (int positionCounter = 15; positionCounter < 84; positionCounter ++) {}
izquierda de una posición de desplazamiento:
lcd.scrollDisplayLeft();
espera un poco:
Delay(400);
}
Delay(1000);
LCD.Clear();
Delay(2000);
pinMode (trigPin, salida);
pinMode (solenoide, salida);
pinMode (vidrio, entrada);
pinMode (echoPin, entrada);
pinMode (salida de relé,); Utilizar indicador LED (si procede)
}
void loop()
{
digitalWrite (trigPin, LOW);
delayMicroseconds(2);
digitalWrite (trigPin, HIGH);
delayMicroseconds(10);
digitalWrite (trigPin, LOW);
duración = pulseIn (echoPin, HIGH);
Calcular la distancia (en cm) basada en la velocidad del sonido.
distancia = duración/58.2;
int Detect_glass = digitalRead(Glass);
if(Detect_glass == High) //no vidrio
{
digitalWrite (relé, HIGH); transportador de
lcd.setCursor (0, 0);
LCD.Print "(inicio del transportador del);
digitalWrite (solenoide, LOW);
if(Relay==High)
Delay(40); int a = a ++;
}
if(Detect_glass == Low)
{
lcd.setCursor (0, 0);
LCD.Print "(parada del transportador del);
digitalWrite (relé, LOW); transportador de
Delay(1000);
digitalWrite (solenoide, HIGH); solenoide en
valor de la sonda para detector de nivel
Si (distancia < = 9)
{
digitalWrite (solenoide, LOW); agua
Delay(1000);
digitalWrite (relé, HIGH); transportador en
Delay(3000);
}
}
Delay(50);
}