Bu örnekte, bir Arduino ve motor sürücüsü ile bir lineer aktüatörün hızını kontrol edeceğiz.
Not: Bu eğitim, temel elektronik ilkeler, Arduino donanımı ve yazılımı ile ilgili ön bilgileri varsayar. Arduino'yu ilk kez kullanıyorsanız, Google ve YouTube aramalarında bulabileceğiniz birçok harika başlangıç eğitiminden birinden temel bilgileri öğrenmenizi öneririz. Lütfen, özel uygulamalar için teknik destek sağlayacak kaynaklara sahip olmadığımızı ve bu genel kullanıma açık eğitimlerin dışında kod veya kablolama şemalarında hata ayıklamayacağımızı, düzenlemeyeceğimizi, sağlamayacağımızı unutmayın.
Bileşenler
- 12V Doğrusal Aktüatör
- 12V güç kaynağı
- Arduino
- Motor sürücüsü
- Potansiyometre (isteğe bağlı)
- Bağlantı ve sıkma aleti veya havya yapmak için elektrik telleri
Kablolama
Donanım ve yazılıma genel bakış
Doğrusal aktüatörlerdeki DC motorlar, yüksek bir akım (5A'ya kadar) gerektirir, eğer doğrusal aktüatörü doğrudan Arduino'ya bağlasaydık, bu yüksek akım çekimi, Arduino dijital pinlerini yalnızca 40mA olarak derecelendirildikleri için yok ederdi. Bu nedenle, Arduino kartından düşük akımlı bir PWM (darbe genişlik modülasyonu) sinyali alabilen ve doğrusal aktüatöre yüksek akımlı bir PWM sinyali gönderebilen bir motor sürücüsü kullanıyoruz.
Motor sürücüsü iki PWM dijital pinine bağlıdır (Arduino Uno'daki 10 ve 11 numaralı pinler). Bu pimlerden birini DÜŞÜK ve diğerini YÜKSEK (aşağıdaki kodda 18. ve 19. satıra bakın) ayarlayarak aktüatörü maksimum hızda uzatabiliriz. Aktüatörü durdurmak için her iki pimi de DÜŞÜK olarak ayarladık (aşağıdaki kodda satır 21 ve 22'ye bakın) ve hareket yönünü tersine çevirmek için YÜKSEK ve DÜŞÜK pimlerin sırasını tersine çevirebiliriz (aşağıdaki kodda 24 ve 25 satırlarına bakın). "Hız" değişkenini [0, 255] aralığında herhangi bir değere değiştirerek hızı da ayarlayabiliriz; aşağıdaki kodda 17. satıra bakın.
Kod
https://gist.github.com/Will-Firgelli/c0ef0871dc1946d75257e0c29dccae2a
Potansiyometre ile değişken hız kontrolü
Yukarıdaki örnekte, hızı kodun 17. satırında manuel olarak ayarladık. Bununla birlikte, aktüatörün hızını zaman içinde değiştirmek istediğimiz durumlarda ortaya çıkabilir. Bunu başarmanın en kolay yolu bir potansiyometre kullanmaktır. Bir potansiyometrevoltaj bölücü olarak hareket edebilen üç terminalli değişken direnç. Potansiyometrenin düğmesini döndürerek çıkış voltajı değişecektir ve bunu değişken bir hız ayarlamak için bir Arduino'daki analog pime bağlayabiliriz.
Kablolama
Donanım ve yazılıma genel bakış
Yukarıda belirtildiği gibi, potansiyometre, düğme döndürüldüğünde direnci değiştiren döner bir cihazdır. Potansiyometrenin iki dış pini 5V ve GND'ye ve orta pini Arduino analog pini A0'a bağlayarak bir voltaj bölücü oluşturulur. Düğme döndürüldüğünde, Arduino [0, 1023] arasında değişen analog okumaları okuyacaktır.
[512, 1023] aralığındaki değerler için aktüatörün uzatmasını ve [0, 511] değerleri için aktüatörün geri çekilmesini istiyoruz, bu, 22 ve 28. satırlarda basit bir if () / else ifadesiyle sağlanabilir. aşağıdaki kod. Daha sonra map () fonksiyonunu kullanarak (aşağıdaki kodda 23 ve 29. satırlar) bunu aktüatörün hem hızını hem de yönünü kontrol edecek bir PWM sinyaline dönüştürebiliriz.
Kod
https://gist.github.com/Will-Firgelli/d2cdf69edc829974885984b3fb8e4856