Evet arkadaşlar bu dersimizde Arduino ile motor süreceğiz. Motor sürmek için de motor sürücüsü L293B entegresini kullanacağız. Motor sürerken bu şekilde sürücü kullanmamızın sebebi, arduinomuzun tek başına gücünün buna yetmemesi. Mesela bir pinden arduino da sadece 40 mA kadar güç veriliyor. Ama bizim bu örnekte kullanacağımız bir motor nerden baksanız 300 mA kadar güç harcıyor. Bundan dolayı motor sürücülerini kullanarak motor sürmemiz gerekiyor. Ayrıca motor sürmek için transistörler de kullanılabilir.
Malzemeler;
-Arduino Uno
-L293B motor sürücü
-6V DC motor
-Breadboard
-Bağlantı Kabloları
-9V pil
-2 adet Buton
-Direnç
L293B entegresi ile birebir aynı görünümde olan bir de L293D entegresi var. Ama tabii ki kullanım farklılıkları var. Gelin öncelikle bunların farklarına bir bakalım.
L293B Özellikleri
-16 pinli ve 2 kanallı bir yapıya sahiptir.
-Tek başına iki adet motoru çift yönlü olarak kontrol edebilir.
-Motor başına (kanal başına) 1.2 Amper kullanır.
-Zorlanma akımı 2 amper dir.
-Çalışma Voltajı: 4,5 V-36 V DC
L293D Özellikleri
-16 pinli ve 2 kanallı bir yapıya sahiptir.
-Tek başına iki adet motoru çift yönlü olarak kontrol edebilir.
-Motor başına (kanal başına) 0,6 Amper kullanır.
-Zorlanma akımı 1.2 amper dir.
-Çalışma Voltajı: 4,5 V-36 V DC
İşinizi sağlama almak için bence kesinlikle L293B kullanın. Fiyat olarak aralarında çok aşırı bir fark yok zaten.
Gelelim şimdi örneğimize. Bu örnekte 2 adet butonla bir adet motoru süreceğiz. 1 nolu butona basınca motor ileri gidecek, 2 nolu butona basınca da motor geri gidecek. Bağlantıları vermeden önce L293B- L293D data sheetini paylaşayım sizler ile. İki entegrenin bağlantıları da aynı. Yani B yi söküp yerine D, D yi söküp yerine B takabilirsiniz. Bağlantılarınızı arduino üzerine buna göre yapmanız gerekiyor.
-E1 dediği kısım enable bacak. Bu kısmı arduino üzerindeki 5V luk kısma bağlıyoruz.
-2 ve 7 nolu kısımlar motoru ileri ve geri süreceğimiz kısımlar.
-3 ve 6 motorun bağlantılarının yapıldığı kısım
-4 ve 5 ise GND bağlantısının yapıldığı yer.
- 8 ise harici voltaj kısmımız.
Benim kullandığım motor 6V luk bir motor. Ama 9V luk bir pil bağladım. Bu bağlantının GND kısmı ise arduino daki GND hatta bağlanacak. Yani 8 bolu yere pilin + ucu arduino üzerindeki toprak hatta da – ucu bağlanacak. 6V luk motorları 9V ile sürebilirsiniz. Motorlar volt değerlerinin 2 katına kadar voltaj değeri ile sürülebilirler. Ama bu onların motor ömürlerin de azalmaya yıpranmaya yol açar. Bunun için 6V luk motorları 9V dan fazla bir değer ile sürmeye çalışmayın.
-16 nolu kısım ise entegremizin çalışması için gerekli olan voltajı verecek. Onu bir kanal kullansak da iki kanal kullansak da arduino üzerindeki 5V ile besliyoruz.
Yukarıda anlatımını yaptığım şekilde karşı tarafın bağlantılarını da yaparsanız 2 adet motoru sürebilirsiniz. Biz bu uygulamada bir adet motor süreceğiz.
Şimdi devremizi bu şekilde kuralım. Zaten daha önceki buton ile led yakmak dersinde butonların nasıl bağlandığını öğrenmiştik. Butonları bu dersteki gibi bağlayın. Daha sonra sürücü entegresi ve motor bağlantısını yapın ve kartınıza aşağıdaki kodları yükleyin. Bu şekilde 2 adet butonla motor sürebileceksiniz. Kafanıza takılanları çekinmeden sorabilirsiniz.
int buton1=9;
int buton2=12;
int tkr1=10;
int tkr2=11;
int durum=0;
void setup()
{
pinMode(buton1,INPUT);
pinMode(tkr1,OUTPUT);
pinMode(buton2,INPUT);
pinMode(tkr2,OUTPUT);
}
void loop() {
durum= digitalRead(buton1);
if(durum==HIGH)
{
digitalWrite(tkr1,HIGH);
}
else
{
digitalWrite(tkr1,LOW);
}
durum= digitalRead(buton2);
if(durum==HIGH)
{
digitalWrite(tkr2,HIGH);
}
else
{
digitalWrite(tkr2,LOW);
}
}
Kaydol:
Kayıt Yorumları
(
Atom
)
0 yorum:
Yorum Gönder