Elektronik / Mikrodenetleyici Projeleri/

AT89C51RD2 ve L293D DC Motor İle Kapı Kontrolü

Sponsorlu Bağlantılar

Hazırlayan: Ergin YILMAZ

Devre Hakkında
Devrenin temel amacı evin kapısını kontrol etmektir. Bu DC motor ve iki tane limit anahtarı ile sağlanan mekanik aksam tarafından sağlanmıştır. Devrede aç ve kapa içim kullanılan iki buton mevcuttur. Motorun sürücü entegresinin uçlarına gönderilen 1 ve 0 bilgisine gire motor sağa veya sola dönmektedir.

Anahtarlar AT89C51RD2 port çıkışlarına seri bağlanmıştır. Böylece anahtar kapı tarafından kapatıldığı anda 1 bilgisi gönderen port kesilir. Diğer butona basıldığında ise bu sefer diğer porttan 1 bilgisi gönderilir ve motor diğer tarafa döner ve bu sefer o porta bağlı olan anahtar açılır.

Projenin isis ares ve kod dosyaları

Devrenin Resimleri

L293D Motor Sürücü Entegresi

Neden ? L293D. Denetim Kartlarının yüksek voltaj ve akım gereksinimi elemanları (motor,röle) kontrol etmesi için Kullanılır Motorun ihtiyaç duyduğu akım denetim kartının verebileceğinden fazla olduğundan. voltajı ve akımı arttırmak için sürücü devreleri kullanılmalıdır aksi taktirde denetim kartının yanmasına sebep olabilir

Özellikleri
– Sağ ve sol tarafın bağımsız çalışması
– 1 Adet L293D 2 motoru çift yönlü kontrol edebilir

Devrenin Kurulması
ilk olarak 4-5-12-13 nolu bacaklar birleştirilip toprak olarak kullanılmalıdır Motorlar 3-6 ve 11-14 nolu bacaklara bağlanır.

1-9-16 nolu bacaklara +5 volt verilir (BASIC Stamp`den sağlanabilir) 2 ve 7 nolu bacaklar 1. motoru 10 ve 15 nolu bacaklar 2. motoru çalıştırır

8 nolu bacaktan. motora uygulanacak voltaj verilir (36 volt`dan fazla olmamalıdır)

Devre Şeması

PCB

Örnek:

BASIC Stamp`in 7. pini L293D`nin giriş-1` ine 8. pini L293D`nin giriş -2` sine ayrıca sürülecek olan motorun uçlarıda L293D`nin çıkış-1` ine ve çıkış-2` sine bağlanmış olsun

output 7 L293D`nin giriş-1` ine bağlanacak olan pin çıkış olarak tanımlanır
output 8 L293D`nin giriş-2` ine bağlanacak olan pin çıkış olarak tanımlanır

basla:
high 7
low 8 `motor bir yöne döner
pause 1000 `1 saniye program durur ama motor dönmeye devam eder

low 7
high 8 `motor diğer yöne döner
pause 2000 `2 saniye program durur ama motor dönmeye devam eder

low 7
low 8 `motor durur
pause 3000 `3 saniye program durur ve motor hareketsiz bekler
goto basla `program başa döner

L293D Pin bağlantı açılımı

Çıkış Portları ile Motor Sürücüsü Bağlantı Şeması

Devrenin Programı

#include <89c51rd2.H>

/* Uygulama Adı : Maket Ev Uygulaması (DC Motor İle Kapı Kontrolü )*/
void gecikme(void);
void git(int, int, unsigned int); 

/*Uç Tanımlama*/
#define ASAGI 		P3=1 
#define YUKARI 		P3=2
#define DUR 		P3=0
#define BUTONLAR 	P1

void main(void)
{ 
  unsigned int OnKonum = 1;  // önceki konum
  unsigned int HedefKat = 1; // gidilecek kat 
  unsigned int i = 0;
   
  TMOD = 0x01; 	//Timer 0, mod-- 16bit

  while(1) 
  {
    i = BUTONLAR & 0x1F; //Hangi butona basıldı?	
    switch(i)
    {
      case 0x1F-1: HedefKat = 1; //Zemin kat seçildi
                   break;
      case 0x1F-2: HedefKat = 2; //1.kat seçildi
   		      break;
    }	

    if(HedefKat > OnKonum) //Seçilen kat mevcut kattan yukarı mı?
    {
      git(HedefKat - OnKonum,1,OnKonum); // Yukarı hareket
    }
		
    if(HedefKat < OnKonum) // Seçilen kat mevcut kattan aşağı mı?
    {
      git(OnKonum - HedefKat,0,OnKonum); // Aşağı hareket
    }
    OnKonum = HedefKat;    // Yeni mevcut kat	whi
  }
}

void git(int sayi, int yon, unsigned int OnKonum) 
{ // 0 aşağı , 1 yukarı
  int i;
  if(yon)
  { 
    YUKARI; //Motor yukarı yönde hareket ediyor
    for(i=1; i<=sayi; i++)
    {
      gecikme();
	                          
    }
  }
  else
  {
    ASAGI;       // Motor aşağı yönde hareket ediyor
    for(i=1; i<=sayi; i++)
    {
      gecikme();

                                  
    }
  }
  DUR;      // Hedef kata gelindiğinde motor durur.
}

void gecikme(void) 
{	//1sn gecikme
  unsigned int i = 0;
  for(i=1; i<=20; i++) 
  {
    TH0 = 0x3C;	// ilk değer
    TL0 = 0xB0;	
    TF0=0;
    TR0 = 1; 	// sayıcıyı başlat
    while(!TF0)
      ;
    TR0=0;
  }
}


dosyalar: AT89C51RD2 ve L293D DC Motor İle Kapı Kontrolü

Dosya indirme LINK listesi (HTML formatında) link-1385.zip şifre-pass: 320volt.com

  • ismail özalp

    24VDC , 90 watt encoderli motor hız ve pozisyon kontrolü için profesyonel teklif verebilirmisiniz ?

  • hasan ali

    arkadaşlar dc motorunun hex dosyasını atarmısınız

  • hakan

    bu uygulamada kullanılan motor nedir 220ac midir ? bir kosu bandı motorunu falan kontrol edebilir mi