Ana Sayfa Arduino Arduino Matlab Simulink Gerçek Zamanlı Dc Motor Pwm Kontrolü

Arduino Matlab Simulink Gerçek Zamanlı Dc Motor Pwm Kontrolü

13 min read
1
0
7,507

 

Herkese merhabalar. Bu uygulamada Arduino Mega ve MATLAB & Simulink üzerine bir proje hazırlanmıştır. İlk olarak MATLAB & Simulink’de Arduino kullanmak için gerekli kütüphaneyi yüklemeniz gerekmektedir. Ekleyeceğimiz videodaki adımları uygulayarak bu işlemi gerçekleştirebilirsiniz.

Bu projede donanım olarak Arduino Mega 2560’ı kullanacağız. Yazılım olarak ise MATLAB R2015a sürümünü kullanacağız. Bir adet motor sürücü L293N, 12V güç kaynağı, bir adet potansiyometre, dc motor, yeteri kadar jumper kullanarak bu uygulamayı siz de kolaylıkla yapabilirsiniz.

Arduino Mega2560

ATmega2560 mikrodenetleyici içeren bir Arduino kartıdır. Arduino Mega 2560 ‘ta 54 tane dijital giriş / çıkış pini vardır. Bunlardan 15 tanesi PWM çıkışı olarak kullanılabilir. Ayrıca 16 adet analog girişi, 4 UART (donanım seri port), bir adet 16 MHz kristal osilatörü, USB bağlantısı, power jakı (2.1mm), ICSP başlığı ve reset butonu bulunmaktadır. Arduino Mega 2560 bir mikrodenetleyiciyi desteklemek için gerekli bileşenlerin hepsini içerir. Arduino Mega 2560 bir bilgisayara bağlanarak, bir adaptör ile ya da pil ile çalıştırılabilir.
Aşağıdaki resimde Arduino Mega 2560 pinleri gösterilmektedir.

 

Arduino Mega 2560 Teknik Özellikleri

Mikrodenetleyici : ATmega2560, Çalışma gerilimi : +5 V DC , Tavsiye edilen besleme gerilimi : 7 – 12 DC, Besleme gerilimi limitleri : 6 – 20 V, Dijital giriş / çıkış pinleri : 54 tane (15 tanesi PWM çıkışını destekler), Analog giriş pinleri : 16 tane, Giriş / çıkış pini başına düşen DC akım : 40 mA, 3,3 V pini için akım : 50 mA, Flash hafıza : 256 KB (8 KB bootloader için kullanılır), SRAM : 8 KB EEPROM : 4 KB, Saat frekansı : 16 MHz

Güç

Arduino Mega 2560 bir USB kablosu ile bilgisayar bağlanarak çalıştırılabilir ya da harici bir güç kaynağından beslenebilir. Harici güç kaynağı bir AC-DC adaptör ya da bir pil / batarya olabilir. Adaptörün 2.1 mm jaklı ucunun merkezi pozitif olmalıdır ve Arduino Mega 2560 ‘ın power girişine takılmalıdır. Pil veya bataryanın uçları ise power konnektörünün GND ve Vin pinlerine bağlanmalıdır.

Arduino Mega 2560 6 V – 20 V aralığında bir harici güç kaynağı ile beslenebilir. Ancak 7 V altında bir besleme yapıldığında 5V pini 5 V tan daha düşük çıkış verebilir ve kart kararsız çalışabilir. 12 V üzerinde bir voltaj beslemesi yapılması durumunda ise regülatör fazla ısınabilir ve karta zarar verebilir. Bu nedenle tavsiye edilen besleme gerilimi 7 V – 12 V aralığındadır.

VIN : Arduino Mega 2560 kartına harici bir güç kaynağı bağlandığında kullanılan voltaj girişidir.

5V : Bu pin Arduino kartındaki regülatörden 5 V çıkış sağlar. Kart DC power jakından (2 numaralı kısım)

7-12V adaptör ile, USB jakından (1 numaralı kısım) 5 V ile ya da VIN pininden 7-12 V ile beslenebilir.

5V ve 3.3V pininden voltaj beslemesi regülatörü bertaraf eder ve karta zarar verir.

3.3V : Arduino kart üzerindeki regülatörden sağlanan 3,3V çıkışıdır. Maksimum 50 mA dir.

GND : Toprak pinidir.

IOREF : Arduino kartlar üzerindeki bu pin, mikrodenetleyicinin çalıştığı voltaj referansını sağlar. Uygun yapılandırılmış bir shield IOREF pin voltajını okuyabilir ve uygun güç kaynaklarını seçebilir ya da 3.3 V ve 5 V ile çalışmak için çıkışlarında gerilim dönüştürücülerini etkinleştirebilir.

Giriş ve Çıkışlar

Arduino Mega 2560 ‘ta bulunan 54 tane dijital giriş / çıkış pininin tamamı, pinMode(), digitalWrite() ve digitalRead() fonksiyonları ile giriş ya da çıkış olarak kullanılabilir. Bu pinler 5 V ile çalışır. Her pin maksimum 40 mA çekebilir ya da sağlayabilir ve 20-50 KOhm dahili pull – up dirençleri vardır. Ayrıca bazı pinlerin özel fonksiyonları vardır:

Serial: 0 (RX) ve 1 (TX); Serial 1: 19 (RX) ve 18 (TX); Serial 2: 17 (RX) ve 16 (TX); Serial 3: 15 (RX) ve 14 (TX) : Bu pinler TTL seri data almak (receive – RX) ve yaymak (transmit – TX) içindir. 0 ve 1 pinleri ayrıca ATmega16U2 USB-to-TTL Si çipinin ilgili pinlerine bağlıdır.

Harici kesmeler 2 (kesme 0), 3 (kesme 1), 18 (kesme 5), 19 (kesme 4), 20 (kesme 3) ve 21 (kesme 2) : Bu pinler bir kesmeyi tetiklemek için kullanılabilir.

PWM: 2 – 13 , 44 – 46 : Bu pinler analogWrite () fonksiyonu ile 8-bit PWM sinyali sağlar.

SPI: 50 (MISO), 51 (MOSI), 52 (SCK), 53 (SS) : Bu pinler SPI kütüphanesi ile SPI haberleşmeyi sağlar.

LED 13 : Digital pin 13 e bağlı bir leddir. Pinin değeri High olduğunda yanar, Low olduğunda söner.

 TWI : 20 SDA 21 SCL : Wire kütüphanesini kullanarak TWI haberleşmesini destekler. (Bu pinlerin yeri Arduino Duemilanove ve Diecimila kartlardaki ile aynı değildir.)

Arduino Mega 2560 ‘ın 16 tane analog girişinden her biri 10 bit çözünürlüğü destekler. Varsayılan ayarlarda topraktan 5 V a kadar ölçerler. Ancak, AREF pini ve analogReference() fonksiyonu kullanılarak üst limit ayarlanabilir.

AREF : Analog girişler için referans voltajıdır. analogReference() fonksiyonu ile kullanılır.

RESET : Mikrodenetleyiciyi resetlemek içindir. Genellikle shield üzerine reset butonu eklemek için kullanılır.

L298N H Bridge Çift Motor Sürücü

L298N H Bridge Çift Motor Sürücü Kartı genellikle motorların hız ve yönlerini kontrol etmek amacıyla kullanılan bir çift H köprülü motor sürücü kartıdır. Motor kontrolü dışında ışıklandırma projelerinde LED gruplarının parlaklarının ayarlanması amacıyla da kullanılır.

H-köprüleri düşük akımlar ile büyük akımların iletilmesini kontrol edebilmek amacıyla kullanılan devrelerdir.

 

L298N H Bridge Çift Motor Sürücü Kartı pin açıklamaları:

  • Out 1: Motor A çıkış 1
  • Out 2: Motor A çıkış 2
  • Out 3: Motor B çıkış 1
  • Out 4: Motor B çıkış 2
  • GND: Toprak
  • 5V: 5V Lojik giriş
  • EnA: Motor A için PWM sinyalini devreye alır
  • In1: Motor A çıkış 1 için giriş sinyali
  • In2: Input for Motor A çıkış 2 için giriş sinyali
  • In3: Input for Motor B çıkış 1 için giriş sinyali
  • In4: Input for Motor B çıkış 2 için giriş sinyali
  • EnB: Motor B için PWM sinyalini devreye alır

 

L298N H Bridge Çift Motor Sürücü Kartı – Genel Özellikler

  • Çift H-köprülü motor sürücü
  • L298N motor sürücü entegresi
  • 2 DC motor çift yönlü kontrol edilebilir
  • Dahili 5V voltaj regülatörü
  • 5V-35V sürüş voltajı
  • 2A maksimum akım

 

L298N H Bridge Çift Motor Sürücü Kartı – Teknik Özellikler

  • Çift H-Köprülü Sürüş Çipi: L298N
  • Lojik Voltaj: 5V
  • Sürüş Voltajı: 5V-35V
  • Lojik Akım: 0-36mA
  • Sürüş Akımı: 2A (MAX single bridge)
  • Maksimum Güç: 25W
  • Boyutlar: 43 x 43 x 26mm
  • Ağırlık: 26g

 

Devre ve Simulink Blok Şeması

Biz bu uygulamada bir adet dc motor pwm kontrolü yaparak motorumuzu sürdük siz iki adet dc motorda sürebilirsiniz aynı işlemleri diğer motor için de yapmanız gerekmektedir.

 

 

Matlab Simulink ve Uygulama Videoları;

 

Kaynakça

  1. http://www.robotiksistem.com/arduino_mega_2560_ozellikleri.html
  2. http://www.robotpark.com.tr/L298N-H-Bridge-Cift-Motor-Surucu-Karti

 

Başka bir yazıda görüşmek dileğiyle…

 

 

Buna Benzer Yazılar Göster !
Daha Fazlasını Yükle - Ekrem Keleş
Daha Fazla Göster -  Arduino

1 Yorum

  1. cagatay

    9 Ekim 2018 at 20:00

    Merhaba projenizi bitirme ödevi olarak aldım. Kullkandığınız dc motor kaç volt ve ayrıca potansıyo metre kaç k’lık ?İlginiz için şimdiden teşekkürler

    Reply

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Bak Bakalım ?

Matlab Simulink ile STM32F4 Servo Motor Kontrolü

Bu uygulamada STM32F4 ve MATLAB & Simulink kullanılarak Servo Motor kontrolü gerçekleş…