Bu içerik 13 Ocak 2017 Tarihinde Raspberry Pi 3 Uyumlu Olacak Şekilde Güncellenmiştir. Güncellenen kısımları daha kolay şekilde görebilmeniz için farklı renkte (lacivert) yazdık. Güncelliğini yitiren kısımların ise üzerini çizdik. Keyifle oku, bol bol üret!

Merhaba arkadaşlar. Bu yazıda Raspberry Pi ve L293D motor sürücü entegre kullanarak DC motor sürmeyi öğreneceğiz. Gerekli malzemelerimiz:

L293D, 2 adet DC motor sürmede kullanılabilecek oldukça popüler bir entegredir. Pin bağlantıları aşağıdaki gibidir:

l293d

Bu entegrenin input 1 ve input 2 girişleri, motorun döneceği yönü; enable pini ise hangi çıkışların aktif olacağını kontrol ediyor. Biz bu örnekte sadece 1 adet motor kullanacağımız için, 1 numaralı pini, yani “Enable 1,2″yi bağlamamız yeterli olacaktır.

Devremizi aşağıdaki şemadaki gibi kuruyoruz:

Python kodumuzu aşağıdaki kısımdan alarak motor.py isimli dosyaya kaydediyoruz:

import RPi.GPIO as GPIO
from time import sleep
 
GPIO.setmode(GPIO.BOARD)
 
Motor1A = 16
Motor1B = 18
Motor1E = 22
 
GPIO.setup(Motor1A,GPIO.OUT)
GPIO.setup(Motor1B,GPIO.OUT)
GPIO.setup(Motor1E,GPIO.OUT)
 
print "Ileri hareket"
GPIO.output(Motor1A,GPIO.HIGH)
GPIO.output(Motor1B,GPIO.LOW)
GPIO.output(Motor1E,GPIO.HIGH)
 
sleep(2)
 
print "Geri hareket"
GPIO.output(Motor1A,GPIO.LOW)
GPIO.output(Motor1B,GPIO.HIGH)
GPIO.output(Motor1E,GPIO.HIGH)
 
sleep(2)
 
print "Motor durdu"
GPIO.output(Motor1E,GPIO.LOW)
 
GPIO.cleanup()

Yazdığımız kodu kaydettikten sonra

sudo python motor.py

komutunu vererek çalıştırıyoruz. Raspbian’ın güncel sürümünde Python komutlarından önce sudo yazmamıza gerek yoktur. Motorumuzu çalışacak ve terminal ekranından her adımda şu bilgileri göreceğiz:

screenshot_motor

3 Yorumlar

  1. Öncelikle yazınız için çok teşekkürler herkesin anlayabileceği düzeyde ve açıklıkta.Sizce 2 adet motoru farklı zamanlarda (örneğin birini birinden 2-3 dk geç çalıştırma), ve ayrı ayrı ayarlanabilir hızlarda çalıştırmak için nasıl bir yol izlemeliyiz. Bunu arduinoda yapabiliyorum ama başka işlerde ki işlem gücünden dolayı raspberry ile yapmam gerekli rpi3 kullanıyorum.Yardımcı olursanız çok sevinirim.İyi çalışmalar.

    • L293D Entegresi yapı gereği 2 adet DC motorun çalışmasına izin verir. Pinlerden 3-6 için birinci motor, 14-11 içinde ikinci motoru bağlayabilirsin. 4 adet motor kontrolü istiyorsan 2 adet kullanabilirsin. Motor sürmek için PWM pin çıkışına ihtiyacın olmadığından genel GPIO lardan istediğini bağlayabilirsin. RasPi ile ne kadar hobi anlamında motor kullanımı yapılsa da eğer endüstriyel uygulama için proje yapacaksan H-Bridge ile motor sürmen gerek tabi motor DC ise. L293D entegresi basit uygulamalar için işini görebilir.

CEVAP VER