
AT89C51 ile Koşu Bandı Projesi
24.09.2008 tarihinde yayımlanan 02.05.2017 tarihinde güncellenen AT89C51 ile Koşu Bandı Projesi ile 2717 yazısı var. Yazar; gevv
Projeyi Hazırlayan : Mehmet ŞENTÜRK – Emeği geçen kişilere Teşekkürler
Devrenin Çalışması:
Projemizin adı koşu bandıdır ve adından da anlaşılacağı üzere motor kontrolü gerektirmektedir.Ben bu projeyi tasarlarken DC motor kullanmayı uygun gördüm. Çünkü DC motorlar kullanım ve besleme kolaylığı açısından ön plana çıkmaktadırlar.
DC motoru sürmek için tümleşik bir devre olan L293D entegresini kullandım.bu entegrenin içerisinde transistorlerden oluşan kuvvetlendiriciler bulunmaktadır.Entegre ile ilgili ayrıntılı bilgi pdf de mevcuttur.
Devrenin çalışmasına gelirsek;bu uygulamada PWM yöntemiyle DC motorun hız kontrolünün yapılması amaçlanmaktadır.PWM işaretini elde edebilmek için Zamanlayıcı\Sayıcı 0 kullanılmıştır ve zamanlayıcı ,1 ms de bir taşacak şekilde ayarlanmıştır.
Zamanlayıcının 20 defa taşması (20ms),PWM işaretinin bir periyoduna karşılık gelmektedir.devre şemasında görülen “Hız arttır” ve “Hız azalt” butonları ile 20 mslik darbe işareti içerisindeki lojik “1” ve lojik “0” süreleri değiştirilerek, motora uygulanan ortalama gerilimin değiştirilmesiyle motorun hız kontrolü sağlanmaktadır.
Kaynak keil ve proteus isis dosyaları: AT89C51 ile Koşu Bandı Projesi
Dosya indirme LINK listesi (TXT formatında) link-3054.zip şifre-pass: 320volt.com
Program
#include <89c51rd2.H> #define MOTOR P3 #define hiz_arttir P1_1 #define hiz_azalt P1_3 void main (void) { unsigned int periyot=1000; // PWM darbesinin 20'de 1'i unsigned int hiz; int i; // darbe süresini ayarlamak için // P3=0x00; P1=0xFF; // butonlar giriş için ayarlandi TMOD=0x01; // T0 16 bit (mod1) zamanlayıcı TL0=-periyot%256; // pals'in düşük değeri TH0=-periyot/256; // pals'in yüksek değeri while(1) { TR0=1; // T0'ın saymaya başlaması while(TF0) // Z/S'nin taşma bayrağını kontrol et { TR0=0; // Timeri durdur TF0=0; // Taşma bayrağını temizle i++; if(i0) // hiz değişkenin sınırlandırılması hiz=hiz-1; } } }
Selam arkadaşlar ,üzerindeki verileri okuyabileceğim bi koşu bandına ihtiyacım var ancak ürün bulamadım bildiginiz marka varsa mail atabilirmsiniz rica etsem.
ersnblgn@gmail.com
Ersin Bilgin