Merhaba arkadaşlar düşük bütçeyle yapabileceğiniz eğlenceli bir projeyi anlatacağım.Hayatımızda gördüğümüz park sensörü nün küçük bir kopyası .Öncelikle size Arduinonun ne işe yaradığını anlatacağım . Arduino kütüphaneleri ile kolaylıkla programlama yapabiliriz.Sensorlardan gelen sinyalleri kullanarak, çevresiyle etkileşim içerisinde olan robotlar ve sistemler tasarlayabiliriz.Arduino ‘nun farklı ihtiyaçlara çözüm üretebilmek için tasarlanmış çeşitli kartları ve modülleri mevcuttur. Bu kart ve modülleri kullanarak projelerinizi geliştirebiliriz.
Evet arkadaşlar malzemelerimiz tamamlandıysa şimdi bağlantı şemasına bakabiliriz.
Bu şekilde bağlantılarımız hazır ise şimdi kodlara geçebiliriz.
//park sensör yapımı.
const int trigger_pin = 12; //12. pini trigger pin olarak tanımladık.
const int echo_pin = 13; //13. pini echo pin olarak tanımladık.
const int aled = 2; //2. pini aled olarak tanımladık.
const int bled = 3; //3. pini bled olarak tanımladık.
const int cled = 4; //4. pini cled olarak tanımladık.
const int dled = 5; //5. pini dled olarak tanımladık.
const int buzzer = 6; //6. pini buzzer olarak tanımladık.
int sure ; //sure adlı bir değişken tanımladık.
int mesafe ; //mesafe adlı bir değişken tanımladık.
void setup() {
pinMode(aled , OUTPUT); //aled'i çıkış olarak tanımladık.
pinMode(bled , OUTPUT); //bled'i çıkış olarak tanımladık.
pinMode(cled , OUTPUT); //cled'i çıkış olarak tanımladık.
pinMode(dled , OUTPUT); //dled'i çıkış olarak tanımladık.
pinMode(buzzer , OUTPUT); //buzzer'i çıkış olarak tanımladık.
pinMode(trigger_pin , OUTPUT); //trigger pin'i çıkış olarak tanımladık.
pinMode(echo_pin , INPUT); //echo pin'i giriş olarak tanımladık.
}
void loop()
{
digitalWrite(trigger_pin , HIGH); //trigger pin'e enerji verdik.
delayMicroseconds(1000); //mesafeyi ölçmesini sağladık.
digitalWrite(trigger_pin , LOW); //trigger pinin enerjisini kestik.
sure = pulseIn(echo_pin , HIGH); //sure değişkenin echo pin'in değiştirmesini sağladık.
mesafe = (sure / 2) / 29.1;
if (mesafe <= 10) //mesafemiz 10 cm den kısa ise bunları yapar.
{
digitalWrite(aled , HIGH); //aled'e enerji verdik.
digitalWrite(bled , HIGH); //bled'e enerji verdik.
digitalWrite(cled , HIGH); //cled'e enerji verdik.
digitalWrite(dled , HIGH); //dled'e enerji verdik.
digitalWrite(buzzer , HIGH); //buzzer'e enerji verdik.
delay(250); //0,25 saniyede bir tekrarlanmasını sağladık.
digitalWrite(buzzer , LOW); //buzzer'in enerjisini kestik.
}
else if (mesafe <= 25) //mesafemiz 25 cm den kısa ise bunları yapar.
{
digitalWrite(aled , LOW); //aled'in enerjisini kestik.
digitalWrite(bled , HIGH); //bled'e enerji verdik.
digitalWrite(cled , HIGH); //cled'e enerji verdik.
digitalWrite(dled , HIGH); //dled'e enerji verdik.
digitalWrite(buzzer , HIGH); //buzzer'e enerji verdik.
delay(500); //0,50 saniyede bir tekrarlanmasını sağladık
digitalWrite(buzzer , LOW); //buzzer'in enerjisini kestik.
}
else if ( mesafe <= 50) //mesafemiz 50 cm den kısa ise bunları yapar.
{
digitalWrite(aled , LOW); //aled'in enerjisini kestik.
digitalWrite(bled , LOW); //bled'in enerjisini kestik.
digitalWrite(cled , HIGH); //cled'e enerji verdik.
digitalWrite(dled , HIGH); //dled'e enerji verdik.
digitalWrite(buzzer , HIGH); //buzzer'e enerji verdik.
delay(750); //0,75 saniyede bir tekrarlanmasını sağladık
digitalWrite(buzzer , LOW); //buzzer'in enerjisini kestik.
}
else //alan boş ise bunu yapar
{
digitalWrite(aled , LOW); //aled'in enerjisini kestik.
digitalWrite(bled , LOW); //bled'in enerjisini kestik.
digitalWrite(cled , LOW); //cled'in enerjisini kestik.
digitalWrite(dled , HIGH); //dled'e enerji verdik.
}
}
Projenin çalışan videosu :
ARDUİNO PROGRAMINI İNDİREBİLECEĞİNİZ YER :
https://www.arduino.cc/en/Main/Software
ŞEMA YAPACAĞIMIZ PROGRAMI İNDİREBİLECEĞİNİZ YER :
http://fritzing.org/download/
06.02.2018