İçindekiler:

Step Motor Test Fikstürü: 3 Adım
Step Motor Test Fikstürü: 3 Adım

Video: Step Motor Test Fikstürü: 3 Adım

Video: Step Motor Test Fikstürü: 3 Adım
Video: How to test Servo motor with 3 channel Cheap Servo Tester 2024, Kasım
Anonim
Image
Image
Kablolama
Kablolama

Step motorları kullanma deneyimim çok azdı veya hiç yoktu, bu nedenle 'Antika' Otomatik Düzeltme Analog Saatini tasarlamadan, yazdırmadan, monte etmeden ve programlamadan önce (https://www.instructables.com/id/Antique-Auto-Correcting-Analog-Clock/) bir step motor kullanarak, yazılımı çok daha basit bir test fikstürü kullanarak tasarlamaya ve test etmeye karar verdim. Benim gibi, step motorlarla çok az deneyiminiz varsa veya hiç deneyiminiz yoksa, umarım bu kısa Instructable kaynak kodlu yardımcı olacaktır.

Test fikstürü aşağıdaki bileşenleri gerektirir:

  • Bir prototipleme tahtası.
  • Dişi başlıklara sahip bir Adafruit Feather ESP32.
  • ULN2003 tabanlı bir step denetleyici kartı.
  • 28BYJ-48 5vdc step motor.
  • Bazı erkek-dişi atlama telleri.
  • Adafruit 3.7vdc lityum pil.
  • 3D baskılı gösterge ibresi.

Kullandığım step kontrolör, step motor ve jumper kabloları internet üzerinden kit olarak satın aldığım 5'li paket içerisinde mevcuttur ("TIMESETL 5adet DC 5V Step Motor 28BYJ-48 + 5adet ULN2003 Sürücü Kartı + 40 Adet Erkek Dişi Jumper Kablosu" araması yapınız. ").

Pil isteğe bağlıdır. Pil çıkışlarının 3.7vdc olduğuna dikkat edin, ancak step denetleyici kartı ve step 5vdc'dir. Test armatürü, daha düşük voltajda bile yalnızca pil gücüyle çalışacaktır.

Yazılımı ESP32'ye indirmek için gerekli adımları gösteren bir video ekledim, ESP32'yi step motor kontrol cihazına bağlayın ve step motor ile pili takın.

Adım 1: Kablolama

Kablolama
Kablolama
Kablolama
Kablolama

Test fikstürünü bağlamak için kit içerisinde bulunan erkek/dişi jumper kabloları kullandım. Altı kablo gereklidir ve aşağıdaki gibi takılır:

  1. ESP32 pin 14 (erkek) - step tahtası pin IN4 (dişi).
  2. ESP32 pin 32'den (erkek) step tahtası pin IN3'e (dişi).
  3. ESP32 pin 15 (erkek) - step tahtası pin IN2 (dişi).
  4. ESP32 pin 33 (erkek) - step tahtası pin IN1 (dişi).
  5. ESP32 pini "GND" (erkek) ile step tahtası pini "-" (dişi) arasında.
  6. USB işlemi için ESP32 pin "USB" (erkek) VEYA pil çalışması için "BAT" (erkek), step tahtası pin "+" (dişi) için.

Kablolar yerleştirilip iki kez kontrol edildikten sonra, step motor kablosunu step motor kontrol kartı konnektörüne takın. Konektör anahtarlıdır ve yalnızca tek yöne sığacaktır.

Son olarak, pil kullanıyorsanız, ESP32 pil konektörüne takın.

Adım 2: Gösterge

Gösterge
Gösterge

Step motordaki bir gösterge için, bir gösterge eli "Hand.stl" tasarladım ve 3D yazdırdım. Gösterge ibresini 0,15 mm katman yüksekliğinde, desteksiz %20 dolguda yazdırdım, ardından step motor miline bastırdım.

Alternatif olarak, indikatör olarak bant, karton veya başka bir malzeme kullanılabilir.

Adım 3: Yazılım

Yazılım
Yazılım

Step test yazılımını Arduino 1.8.5 ortamında yazdım. Henüz yapmadıysanız, Arduino ortamını ve gerekli USB sürücülerini bilgisayarınıza indirin ve kurun. Ayrıca Adafruit ESP32 ile ilgili diğer yazılımlar için Adafruit web sitesini ziyaret edin. Bu bağlantıyı çok yararlı buldum: Adafruit ESP32 ve Arduino Ortamı.

Bilgisayarınız ile ESP32 arasına bir USB kablosu bağlı ve Arduino ortamına yüklenen "Stepper.ino" ile "Stepper.ino" dosyasını ESP32'ye indirin.

İndirildikten sonra, stepper saniyede bir kez 6 derece adım atmalıdır.

Bu test yazılımını iki nedenden dolayı yazdım; birincisi, bir step motorun nasıl sürüleceğini öğrenmek ve ikincisi, step motorun dönüşü başına 4096 adımı, saat için 60 bir saniyelik 6 derecelik "tiklere" dönüştürmek.

"Step(nDirection)" işlevi, step motoru çalıştırır. Bu işlev, nDirection işlev bağımsız değişkeninin işaretine göre bir artırılan veya azaltılan (işlev her çağrıldığında) yerel (statik) bir tamsayı değişkeni "nPhase" tutar. Bu değişken, kasa anahtarı ile birlikte kullanıldığında, her adım için üreticinin spesifikasyonlarına uygun olarak motor fazlarını çalıştıran 0 ila 7 aralığında sınırlıdır.

"Update()" işlevi, 360 derecelik dönüş başına 60 işaretin eşit aralıklarla yerleştirilmesi için her bir işaret için ne zaman ve kaç adım atılacağını belirler. Bu fonksiyon, step motoru her bir tik için 68 veya 69 adım olarak ayarlar. Örneğin, işlev tik başına yalnızca 68 adım kullanmışsa, (68 adım * 60 tik) = 4080 adım, 360 derecelik dönüşü tamamlamak için yeterli adım olmaz (adımın 360 derecelik dönüş için 4096 adım gerektirdiğini unutmayın). Ve eğer fonksiyon tik başına 69 adım kullansaydı, (69 adım * 60 tik) = 4140 çok fazla adım olurdu. Yazdığım basit algoritma, 360 derecelik dönüş boyunca 68 ve 69 adım kenelerini eşit olarak dağıtır ve hangi dönüş yönünün istenen ikinci sayıma (saatte kullanılır) en hızlı olduğunu belirleyebilir.

'Antik' Otomatik Düzeltme Analog Saat yazılımını bu şekilde tasarladım ve test ettim.

Herhangi bir öneriniz ve / veya sorunuz varsa, lütfen yorum yapmaktan çekinmeyin, cevaplamak için elimden geleni yapacağım.

Önerilen: