Stap 5: Arduino Code
Programma (broncode)
#include < Liquidcrystal.h >
initialiseren van de bibliotheek met de nummers van de pennen van de interface
LiquidCrystal lcd (12, 11, 5, 4, 3, 2);
#define echoPin 7 / / Echo Pin
#define trigPin 8 / / Trigger Pin
#define estafette 10 / / LED aan boord
#define glas 9 / / fles detectie
#define solenoïde 13 / / solenoïde detectie
byte armsUp [8] = {}
0b00100,
0b01010,
0b00100,
0b10101,
0b01110,
0b00100,
0b00100,
0b01010
};
int maximumRange = 200; Grensdetectiewijdte van nodig
int minimumRange = 0; Minimale afstand nodig
lange duur, afstand; Zolang zij worden gebruikt voor het berekenen van de afstand
VOID Setup {}
lcd.createChar (4, armsUp);
LCD.begin (16, 2);
LCD.write(4);
LCD.Print ("productielijn automatisering door Saad Zeeshan Waqas Saeed Adeel");
voor (int positionCounter = 15 positionCounter < 84; positionCounter ++) {}
Scroll één positie links:
lcd.scrollDisplayLeft();
wachten een beetje:
delay(400);
}
delay(1000);
LCD.Clear();
delay(2000);
pinMode (trigPin, OUTPUT);
pinMode (solenoïde, OUTPUT);
pinMode (glas, INPUT);
pinMode (echoPin, INPUT);
pinMode (Relais, uitvoer); Gebruik maken van LED indicator (indien nodig)
}
void loop
{
digitalWrite (trigPin, laag);
delayMicroseconds(2);
digitalWrite (trigPin, hoge);
delayMicroseconds(10);
digitalWrite (trigPin, laag);
duur = pulseIn (echoPin, hoge);
Berekenen van de afstand (in cm) op basis van de snelheid van het geluid.
afstand = duur/58.2;
int Detect_glass = digitalRead(Glass);
if(Detect_glass == High) //no glas
{
digitalWrite (Relais, hoge); transportband
lcd.setCursor (0, 0);
LCD.Print ("transportband Start");
digitalWrite (solenoïde, laag);
if(relay==High)
delay(40); int een = a ++;
}
if(Detect_glass == low)
{
lcd.setCursor (0, 0);
LCD.Print ("transportband Stop");
digitalWrite (Relais, laag); transportband uit
delay(1000);
digitalWrite (solenoïde, hoge); magneetklep op
sonar waarde voor niveau detector
Als (afstand < = 9)
{
digitalWrite (solenoïde, laag); water uit
delay(1000);
digitalWrite (Relais, hoge); transportband op
delay(3000);
}
}
delay(50);
}