İçindekiler:
- 1. Adım: StepDriver Kitaplığı
- Adım 2: Global Değişkenler
- Adım 3: Fonksiyonlar - Sürücü Pinlerini Ayarlama
- Adım 4: Fonksiyonlar - Sürücünün Temel Fonksiyonları
- Adım 5: Fonksiyonlar - Motor Adım Ayarı
- Adım 6: Fonksiyonlar - Motor Adım Modunu Ayarlama
- Adım 7: Fonksiyonlar - Limit Anahtarlarının Ayarlanması
- Adım 8: Fonksiyonlar - Limit Anahtarlarının Okunması
- Adım 9: Fonksiyonlar - Hareket Kurulumu
- Adım 10: Fonksiyonlar - Hareket Fonksiyonu
- Adım 11: Fonksiyonlar - Hareket Fonksiyonu - Değişkenler
- Adım 12: Fonksiyonlar - Hareket Fonksiyonu - Hızlanma
- Adım 13: Fonksiyonlar - Hareket Fonksiyonu - Sürekli Hız
- Adım 14: Fonksiyonlar - Hareket Fonksiyonu - Yavaşlama
- Adım 15: Fonksiyonlar - Hareket Fonksiyonu - Sürekli Hız
- Adım 16: İşlevler - Hareket Etme İşlevi - Dönüşleri Hareket Etme
- Adım 17: Hareket Tablosu - Konum Hızı
- Adım 18: Hareket Tablosu - Konum Vs. Konum
- Adım 19: Hareket Tablosu - Hız Vs. An
Video: Arduino: Step Motor için Hassas Lib: 19 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:20
Bugün sizlere limit anahtarlı tam adımlı motor sürücüsü, hızlanma ve mikro adımlı motor hareketi için bir kitaplık göstereceğim. Hem Arduino Uno hem de Arduino Mega üzerinde çalışan bu Lib, motorları sadece adım sayısına göre değil, milimetre bazında da hareket ettirmenizi sağlar. Ve aynı zamanda oldukça doğru.
Bu kitaplığın önemli bir özelliği, yalnızca X, Y değil, aynı zamanda örneğin bir bölüm anahtarı olan kendi CNC makinenizi oluşturmanıza izin vermesidir, çünkü bu hazır bir GRBL değildir, daha çok programlamadır. sizin için ideal makineyi yapmanızı sağlar.
Ancak aşağıdaki açıklama önemli bir detay! Bu video sadece programlamaya zaten alışmış olanlar içindir. Arduino programlamaya aşina değilseniz öncelikle kanalımdaki diğer tanıtım videolarını izlemelisiniz. Bunun nedeni, bu özel videoda ileri düzey bir konuyu tartışıyor olmam ve videoda kullanılan Lib'i daha ayrıntılı olarak açıklamam: Hızlanma ve Strok Sonu ile Step Motor.
1. Adım: StepDriver Kitaplığı
Bu kitaplık, piyasadaki en yaygın üç sürücü türünü kapsar: A4988, DRV8825 ve TB6600. Sürücülerin pinlerini yapılandırarak, sıfırlama ve Uyku moduna yerleştirmenin yanı sıra Enable pinine etki eden motor çıkışlarını etkinleştirip devre dışı bırakmalarına izin verir. Ayrıca sürücünün mikro adım pinlerinin girişlerini ayarlar ve anahtarları ve aktivasyon seviyelerini (yüksek veya düşük) sınırlar. Ayrıca mm/s² cinsinden sürekli ivme, mm/s cinsinden maksimum hız ve mm/s cinsinden minimum hız ile motor hareket koduna sahiptir.
Hızlanma ve Strok Sonu ile Step Motor videosunun 1. ve 2. kısımlarını izleyenler için, bu yeni kitaplığı bugün indirin, çünkü ilk dosyada kullanımını kolaylaştırmak için bazı değişiklikler yaptım.
Adım 2: Global Değişkenler
Global değişkenlerin her birinin tam olarak ne için olduğunu gösteriyorum.
Adım 3: Fonksiyonlar - Sürücü Pinlerini Ayarlama
Burada bazı yöntemleri anlatıyorum.
Pinout ayarını ve Arduino pinlerini çıktı olarak belirledim.
Adım 4: Fonksiyonlar - Sürücünün Temel Fonksiyonları
Bu bölümde, sürücünün konfigürasyonu ve temel fonksiyonları ile çalışıyoruz.
Adım 5: Fonksiyonlar - Motor Adım Ayarı
Kodun bu adımında, motorun yürütmesi gereken milimetre başına adım miktarını yapılandırıyoruz.
Adım 6: Fonksiyonlar - Motor Adım Modunu Ayarlama
Bu tablo, motor adım modu için ayarları gösterir. İşte bazı örnekler.
Adım 7: Fonksiyonlar - Limit Anahtarlarının Ayarlanması
Burada bütün ve boole değerlerini okumam gerekiyor. Maksimum ve minimum limit uç pinini ayarlarken aktif tuşun yukarı mı aşağı mı olduğunu ayarlamak gerekir.
Adım 8: Fonksiyonlar - Limit Anahtarlarının Okunması
Bu kısım Lib'de geçen hafta kullanıma sunduğum kısımdan farklı. Neden değiştirdim? Eh, bazılarının yerini almak için eRead'i oluşturdum. Burada, eRead LVL'yi, digitalRead'i (pin) okuyacak ve DOĞRU değerini döndürecektir. Bütün bunların yüksekte yapılması gerekiyor. Aktif anahtar ile aşağıdaki çalışma düşük seviyede olacaktır. Burada size "Gerçek" tablosunu göstermek için kullanacağım.
Kodun görüntüsüne, kaynak kodun bu bölümünde Artan'a doğru ilerlediğimi ve henüz kurs sonu tuşuna basmadığımı anlamama yardımcı olacak bir diyagram yerleştirdim.
Şimdi, bu görüntü işletim sistemi bool DRV8825'te, motorun hala büyüme yönünde hareket ettiğini gösteriyorum. Ancak, maksimum limit anahtarı etkinleştirildi. O halde mekanizma hareketi durdurmalıdır.
Son olarak, aynı hareketi gösteriyorum ama ters yönde.
Burada, kurs sonu anahtarını zaten etkinleştirmişsiniz.
Adım 9: Fonksiyonlar - Hareket Kurulumu
motionConfig yönteminin ana faydası, bir step motorun kontrolörünü karşılamak için saniyedeki milimetreyi (CNC makinelerinde kullanılan bir ölçüm) adımlara dönüştürmektir. Bu nedenle, bu bölümde, milimetreleri değil, adımları anlamak için değişkenleri somutlaştırıyorum.
Adım 10: Fonksiyonlar - Hareket Fonksiyonu
Bu adımda istenilen yönde bir adım hareket ettiren komutu mikrosaniye cinsinden bir periyotta ele alıyoruz. Ayrıca sürücünün yön pimini, gecikme süresini ve limit anahtarlarının yönünü de ayarlıyoruz.
Adım 11: Fonksiyonlar - Hareket Fonksiyonu - Değişkenler
Bu bölümde, diğerlerinin yanı sıra, maksimum ve minimum hız dönemlerini, yörünge mesafesini ve yörüngeyi kesmek için gerekli adımları içeren tüm değişkenleri yapılandırıyoruz.
Adım 12: Fonksiyonlar - Hareket Fonksiyonu - Hızlanma
Burada, Torricelli denklemi ile hesaplanan ivme verisine nasıl ulaştığımız hakkında bazı detaylar sunuyorum, çünkü bu, ivmenin çalışacağı uzayları hesaba katıyor, zamanı değil. Ancak burada tüm denklemin yalnızca bir kod satırından ibaret olduğunu anlamak önemlidir.
Yukarıdaki resimde bir trapez belirledik çünkü ilk devir sayısı çoğu step motor için kötü. Yavaşlamada da aynı şey oluyor. Bu nedenle, hızlanma ve yavaşlama arasındaki dönemde bir yamuk hayal ediyoruz.
Adım 13: Fonksiyonlar - Hareket Fonksiyonu - Sürekli Hız
Burada hızlanmada kullanılan adım sayısını tutuyoruz, sürekli hızda devam ediyoruz ve aşağıdaki resimde görülebilen maksimum hızda devam ediyoruz.
Adım 14: Fonksiyonlar - Hareket Fonksiyonu - Yavaşlama
Burada bu sefer negatif ivme değerine sahip başka bir denklemimiz var. Ayrıca aşağıdaki resimde Yavaşlama etiketli dikdörtgeni temsil eden bir kod satırında da görüntülenir.
Adım 15: Fonksiyonlar - Hareket Fonksiyonu - Sürekli Hız
Aşağıda görüldüğü gibi yörüngenin ikinci yarısında çalışmak için sürekli hıza dönüyoruz.
Adım 16: İşlevler - Hareket Etme İşlevi - Dönüşleri Hareket Etme
Bu kısımda motoru belirli sayıda dönüşte istenilen yönde hareket ettirerek dönüş sayısını milimetreye çeviriyoruz. Son olarak motoru istenilen yönde hareket ettiriyoruz.
Adım 17: Hareket Tablosu - Konum Hızı
Bu grafikte, Hızlanma bölümünde kullandığımız denklemden çıkarılan verilerim var. Değerleri alıp Arduino serisinde oynadım ve bundan Excel'e geçtim ve bu tablo ortaya çıktı. Bu tablo, adımın ilerlemesini gösterir.
Adım 18: Hareket Tablosu - Konum Vs. Konum
Burada, konumu adım adım ve hız olarak alıyoruz ve mikrosaniye cinsinden periyoda dönüştürüyoruz. Bu adımda periyodun hız ile ters orantılı olduğuna dikkat çekiyoruz.
Adım 19: Hareket Tablosu - Hız Vs. An
Son olarak, anın bir fonksiyonu olarak hıza sahibiz ve bu nedenle, zamanın bir fonksiyonu olarak hız olduğu için düz bir çizgimiz var.
Önerilen:
Step Motor Kontrollü Mikrodenetleyicisiz Step Motor!: 6 Adım
Mikrodenetleyicisiz Step Motor Kontrollü Step Motor!: Bu hızlı Eğitimde, bir step motor kullanarak basit bir step motor kontrolörü yapacağız. Bu proje, karmaşık devre veya mikro denetleyici gerektirmez. O halde lafı fazla uzatmadan başlayalım
Step Motor Kontrollü Mikrodenetleyicisiz Step Motor(V2): 9 Adım (Resimli)
Step Motor Kontrollü Mikrodenetleyicisiz Step Motor(V2): Önceki Derslerimden birinde, mikrodenetleyicisiz bir step motor kullanarak bir step motoru nasıl kontrol edeceğinizi gösterdim. Hızlı ve eğlenceli bir projeydi ancak bu Eğitilebilir Tabloda çözülecek iki problemle geldi. Yani, zeka
Step Motor Kontrollü Model Lokomotif - Döner Enkoder Olarak Step Motor: 11 Adım (Resimlerle)
Step Motor Kontrollü Model Lokomotif | Döner Kodlayıcı Olarak Adım Motoru: Önceki Talimatlardan birinde, bir step motorun döner kodlayıcı olarak nasıl kullanılacağını öğrendik. Bu projede, şimdi bir Arduino mikrodenetleyici kullanarak bir model lokomotifi kontrol etmek için step motorlu döner kodlayıcıyı kullanacağız. Yani, fu olmadan
Step Motor Kontrollü Step Motor - Döner Enkoder Olarak Step Motor: 11 Adım (Resimlerle)
Step Motor Kontrollü Step Motor | Döner Kodlayıcı Olarak Step Motor: Etrafta duran ve bir şeyler yapmak isteyen birkaç step motor var mı? Bu Eğitilebilir Tabloda, bir Arduino mikro denetleyici kullanarak başka bir step motorun konumunu kontrol etmek için döner kodlayıcı olarak bir step motor kullanalım. O halde lafı fazla uzatmadan geçelim
Üçüncü El++: Elektronik ve Diğer Hassas İşler için Çok Kullanımlı Yardım Eli.: 14 Adım (Resimlerle)
Üçüncü El++: Elektronik ve Diğer Hassas İşler için Çok Kullanımlı Yardım Eli.: Geçmişte zincir elektronik mağazalarında bulunan üçüncü elleri/yardımcı elleri kullandım ve kullanılabilirliklerinden dolayı hüsrana uğradım. Klipleri asla tam olarak istediğim yere getiremedim ya da kurulumu gerçekten olması gerekenden daha fazla zaman aldı