Öncelikle bu program otorpark projelerine bir altyapı ilham kaynağı olması açısından yapılmış bir projedir ve geliştirilmek üzere eklenmiştir. Programımız gayet basit, yapmak istediğimiz olay şu.
Program: Bir otoparkda 20 araç kapasitesi bulunmaktadır. 20 araç otoparka giriş yaptığında dolu lambası yanacak, 20 araç olana kadar ise boş lambası yanacaktır. Gerekli program kodlarını oluşturunuz.
Program Kodları:
int sayac = 0; //tanımlamalar
const int giris=A0;
const int cikis=A1;
const int dolu=10;
const int yervar=11;
void setup()
{
pinMode(dolu, OUTPUT); //atamalar
pinMode(yervar, OUTPUT);
Serial.begin(9600);
}
void loop()
{
if (analogRead(giris) < 300 ) //giris yapıldı mı ?
{
sayac ++; //yapıldıysa sayacı 1 arttır
if (analogRead(giris) < 300 ) //bu bölüm tamamen chattring
{ // olayını önlemek içindir
while(1)
{
analogRead(giris);
if(analogRead(giris) > 300)
break;
}
}
}
else if (analogRead(cikis) < 300 ) //otoparktan çıkış yapıldı mı ?
{
sayac –;
if (analogRead(cikis) < 300 ) //bu bölüm tamamen chattring
{ // olayını önlemek içindir
while(1)
{
analogRead(cikis);
if(analogRead(cikis) > 300)
break;
}
}
}
else
digitalWrite(dolu, LOW);
digitalWrite(yervar, HIGH);
if (sayac >= 20 )
{
digitalWrite(dolu, HIGH);
digitalWrite(yervar, LOW);
Serial.print(“sayac = “);
Serial.println(sayac);
delay(100);
}
else
{
digitalWrite(dolu, LOW);
digitalWrite(yervar, HIGH);
Serial.print(“sayac = “);
Serial.println(sayac);
delay(100);
}
}
Elektronik devre şemasında iki adet mz80 mesafe sensörü ve iki adet led kullanılmıştır. Kolay gelsin