Erdem
Paylaşımcı üye
- Katılım
- 14 Ocak 2013
- Mesajlar
- 713
- Puanları
- 106
Arkadaşlar, L293D motor sürücüsü kullanan yukarıdaki devreyi kurdum.
Burada +6V girişine harici sınırlamasız 500mA'lik güç kaynağında 6V seçerek bağlıyorum. Sizin de bilebileceğiniz üzere sınırlamasız ("unregulated") güç kaynakları yük altında değilken normal gerilimin yaklaşık %41 kadar fazlasını veriyor.
Güç kaynağının toprağı ile Arduino hattından gelen toprağı birbirine bağlıyorum. Her motora paralel olarak 0.1uF'lik bir sığaç lehimlenmiş.
Motorların ucunda birer teker var ama vites kutusu ("redüktör") yok.
Yazılımın kaynak kodu şu şekilde :
C++:
#include <Arduino.h>
unsigned int ilkMotorArti = 8;
unsigned int ilkMotorEksi = 7;
unsigned int ilkMotorAcKapat = 9;
unsigned int ikinciMotorArti = 5;
unsigned int ikinciMotorEksi = 4;
unsigned int ikinciMotorAcKapat = 3;
void setup()
{
pinMode(ilkMotorArti, OUTPUT);
pinMode(ikinciMotorArti, OUTPUT);
pinMode(ilkMotorAcKapat, OUTPUT);
pinMode(ikinciMotorArti, OUTPUT);
pinMode(ikinciMotorEksi, OUTPUT);
pinMode(ikinciMotorAcKapat, OUTPUT);
// Tüm motorları kapat
digitalWrite(ilkMotorArti, LOW);
digitalWrite(ilkMotorEksi, LOW);
digitalWrite(ikinciMotorArti, LOW);
digitalWrite(ikinciMotorEksi, LOW);
}
void hizKontrolu()
{
digitalWrite(ilkMotorArti, HIGH);
digitalWrite(ilkMotorEksi, LOW);
digitalWrite(ikinciMotorArti, HIGH);
digitalWrite(ikinciMotorEksi, LOW);
for (int i = 0; i < 10; ++i)
{
for (int i = 200; i < 255; ++i)
{
analogWrite(ilkMotorAcKapat, i);
analogWrite(ikinciMotorAcKapat, i);
delay(20);
}
}
// Tüm motorları kapat
digitalWrite(ilkMotorArti, LOW);
digitalWrite(ilkMotorEksi, LOW);
digitalWrite(ikinciMotorArti, LOW);
digitalWrite(ikinciMotorEksi, LOW);
}
void loop()
{
hizKontrolu();
delay(1000);
}
Sorun şu ki yazılımı yüklediğimde motorlar kendiliğinden hareket almıyor.
İlk hareketi alması için elle yardım etmek gerekiyor. Bir kere hareket alınca dönmeye devam ediyor.
Her ne kadar torku arttıran vites kutusu olmasa da, tekerleklerin boşta, havada olduğunu düşünürsek ilk hareket alması gerekmez mi?
Kullanılan motorlar basit 6V DC motorlar.