Ana Sayfa PIC|ULAK PIC|ULAK ile Araç Park Sensörü

PIC|ULAK ile Araç Park Sensörü

4 min read
0
0
895

Merhaba arkadaşlar,

Bu yazımızda, MekatronikLAB firmasının üretmiş olduğu  PIC mikrodenetleyiciler ile proje geliştirme kiti PIC|ULAK ile ultrasonik sensör ile araç park sensörü uygulamasını gerçekleştirdik.

Yazdığımız kodu CCS C programında derledikten sonra hex dosyasını oluşturuyoruz.PİCkit2 programı ile derlediğimiz hex dosyasını pic|ulak kartımıza yükledikten sonra uygulamamızı çalıştırabiliyoruz 🙂

Uygulamamızda ölçülen mesafe aralığını 4*20 lcd ekrana yazdırılmakta. Belirli mesafe aralıklarında devrede bulunan buzzer ile yakınlık arttıkça ses uyarıları ile bildirim alıyoruz. Kullanılan mesafe sensörünün nasıl çalıştığını ve mesafeyi hesaplarken ne gibi formüllerin kullanıdığına  aşağıda paylaşacağımız kod kısmından veya google dan kısa bi araştırma sonucunda ulaşabilirsiniz 🙂

iyi çalışmalar…

Malzemeler

  • pic|ulak
  • ultrasonic sensör
  • potansiyometre
  • 4*20 LCD ekran
  • buzzer
  • bağlantı kabloları

 

Bağlantı şeması

?????????????????????????????

CCS C kodları


#include <main.h>

#use delay (clock= 20M)

#include <LCD420.c> //4*20 lcd tanıtılıyor.

#define use_lcd_TRUE // lcd i B portuna bağlı.
#define trig pin_a0 // A0 pini trig olarak tanımlanıyor.
#define echo pin_a1 // A1 pini echo olarak tanımlanıyor.

float uzaklik, zaman;
void main()
{

lcd_init();
printf(lcd_putc,"\f PIC|ULAK ");
printf(lcd_putc,"\n ROBOTURKAA "); // LCD çalışmaya başladığında giriş ekranının durumu
printf(lcd_putc,"\n ARAC PARK SENSORU ");
printf(lcd_putc,"\n SINAN SOZUGUZEL ");
delay_ms(1500); // 1500 ms gecikme veriliyor.

setup_timer_1(T1_INTERNAL|T1_DIV_BY_8); //t1 kesmesi ayarları yapılıyor.

while(1)
{
output_high(trig);
delay_us(20);
output_low(trig);
while(!input(echo))
{}
set_timer1(0);
while(input(echo))
{}
zaman=get_timer1(); // timer1 kesmesi zaman değişkenine aktarılıyor.
uzaklik=zaman*0.0368; // gerekli hesaplamalar yapılıyor.
uzaklik= uzaklik/1.3; // gerekli hesaplamalar yapılıyor.

/* Mesafe Bildirimleri */
if(uzaklik<10)
{
output_high(pin_c2);
delay_ms(20);
output_low(pin_c2);
delay_ms(20);
}
if((uzaklik<15)&&(uzaklik>10))
{
output_high(pin_c2);
delay_ms(50);
output_low(pin_c2);
delay_ms(50);
}

if((uzaklik<20)&&(uzaklik>10))
{
output_high(pin_c2);
delay_ms(100);
output_low(pin_c2);
delay_ms(100);
}

/* hesaplanan mesafe lcd de gösteriliyor. */
lcd_gotoxy(1,1);
lcd_putc("\fMesafe:");
lcd_gotoxy(8,1);
printf(lcd_putc,"%.2fcm",uzaklik);
delay_ms(100);
}
}

Devrenin çalışma videosu

Buna Benzer Yazılar Göster !
Daha Fazlasını Yükle - Sinan Sözügüzel
Daha Fazla Göster -  PIC|ULAK

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Bak Bakalım ?

PIC|ULAK ile Gece Lambası

Merhaba arkadaşlar, Bu yazımızda, MekatronikLAB firmasının üretmiş olduğu  PIC mikrodenetl…