İçindekiler:

DIY ADIM/DIR LAZER GALVO KONTROL CİHAZI: 5 Adım (Resimlerle)
DIY ADIM/DIR LAZER GALVO KONTROL CİHAZI: 5 Adım (Resimlerle)

Video: DIY ADIM/DIR LAZER GALVO KONTROL CİHAZI: 5 Adım (Resimlerle)

Video: DIY ADIM/DIR LAZER GALVO KONTROL CİHAZI: 5 Adım (Resimlerle)
Video: SAHA İstanbul Malzeme ve Malzeme Şekillendirme Komitesi 14.05.2020 Canlı Yayını 2024, Kasım
Anonim
DIY ADIM/DIR LAZER GALVO KONTROL CİHAZI
DIY ADIM/DIR LAZER GALVO KONTROL CİHAZI

Selam, Bu Eğitilebilir Kitapta, size ILDA standart galvo lazer tarayıcılar için kendi adım/yön arayüzünüzü nasıl oluşturabileceğinizi göstermek istiyorum.

Bildiğiniz gibi ben de "DIY-SLS-3D-Printer" ve "JRLS 1000 DIY SLS-3D-PRINTER"ın mucidiyim ve bu makineleri yaparken bu yazıcıların nasıl performans göstereceğini düşünmeye başladım, kartezyen hareket sistemi yerine Galvo Tarayıcı kullanacağım. Ancak bu günlerde bir galvo tarayıcı için bir kontrolör programlama bilgim yoktu. Bu yüzden kartezyen hareketi olan mevcut bir bellenimi kullandım.

Ancak bugün ve bazı araştırmalardan sonra, yazarın bir DIY Laser Galvo şovu oluşturmak için bir arduino kullandığı bir talimat buldum. Aradığım şeyin tam olarak bu olduğunu düşündüm, bu yüzden onun talimatındaki gibi parçaları sipariş ettim ve bazı deneyler yaptım. Biraz araştırmadan sonra Arduino'nun adım/yön arayüzü kadar iyi performans göstermediğini öğrendim, bu yüzden STM32 mikrodenetleyici için yeniden karıştırdım.

Lütfen bu denetleyicinin sadece bir prototip olduğunu, ancak birçok proje için kullanılabileceğini unutmayın. Örneğin, bir DIY SLS 3D yazıcıda veya bir lazer gravür makinesinde.

Galvo denetleyicisinin özellikleri şunlardır:

  • 5V adım/yön sinyallerinden ILDA standardına dönüştürme
  • 120kHz giriş frekansı (Adım / Yön sinyalleri)
  • 12bit Çıkış çözünürlüğü (açı başına 0,006°)
  • kutupsal koordinatlardan doğrusal koordinatlara dönüştürme
  • bir adım ve yön sinyali oluşturacak herhangi bir hareket kontrolörü ile uyumlu
  • merkez hizalama pimi (homing rutini)

lazer galvo denetleyicisinin videosu: (çok yakında)

Eğitilebilirliğimi beğendiyseniz, lütfen Remix Yarışmasında bana oy verin

Adım 1: Galvo Denetleyici için İhtiyacınız Olan Parçalar

Galvo denetleyicisi için Elektronik Parçalar:

Miktar Açıklama Bağlantı Fiyat
1x ILDA 20Kpps galvo galvanometre seti aliexpress 56, 51€
1x 6mm 650nm Lazerdiyot aliexpress 1, 16€
biraz teller - -
1x ST-Link V2 aliexpress 1, 92

Devre için Elektronik Parçalar:

Galvo kontrolör için gerekli tüm parçalar burada. Tüm parçaları mümkün olduğunca ucuza tedarik etmeye çalıştım.

Miktar Açıklama Devre üzerindeki isim Bağlantı Fiyat
1x STM32 "Mavi Hap" mikrodenetleyici "MAVİ HAP" aliexpress 1, 88€
1x MCP4822 12 bit çift kanallı DAC MCP4822 aliexpress 3, 00€
2 kere TL082 çift OpAmp IC1, IC2 aliexpress 0, 97€
6x 1k Direnç R1-R6 aliexpress 0, 57€
4x 10k trim potansiyometresi R7-R10 aliexpress 1, 03€
biraz PIN başlığı - aliexpress 0, 46€

Adım 2: Denetleyicinin Teorisi

resim
resim

Burada, denetleyicinin genel olarak nasıl çalıştığını açıklayacağım. Ayrıca dik açının hesaplanması gibi bazı detayları da göstereceğim.

1. HAREKET KONTROL CİHAZI

Hareket kontrolörü, adım ve yön sinyallerini oluşturacağınız kısımdır. Adım/yön kontrolü genellikle 3D Yazıcılar, Lazerler veya CNC Frezeler gibi step motor uygulamalarında kullanılır.

Adım ve yön sinyallerine ek olarak, STM32 ve Motioncontroller'ı uyumlu hale getirmek için bir merkez hizalama pimine ihtiyaç vardır. Çünkü galvolar mutlak kontrollüdür ve herhangi bir limit anahtarına ihtiyaç yoktur.

2. STM32-Mikrodenetleyici

STM32 mikro denetleyici, bu denetleyicinin kalbidir. Bu mikrodenetleyicinin yapması gereken birkaç görev vardır. Bu görevler şunlardır:

Görev 1: Sinyalleri ölçün

resim
resim

İlk görev, giriş sinyallerini ölçmektir. Bu durumda adım ve yön sinyalleri olacaktır. Hareket kontrolörünün giriş frekansı ile sınırlandırılmasını istemediğim için devreyi 120kHz için tasarladım (test edildi). Veri kaybetmeden bu giriş frekansını elde etmek için, adım/yön arayüzünü yönetmek için STM32 üzerinde iki donanım zamanlayıcı TIM2 ve TIM3 kullanıyorum. Adım ve yön sinyallerine ek olarak llignment sinyali de vardır. Bu hizalama, STM32'deki harici bir kesme tarafından kontrol edilir.

Görev 2: Sinyalleri hesaplayın

Şimdi denetleyicinin sinyalleri DAC için doğru değere hesaplaması gerekiyor. Galvo doğrusal olmayan bir kutupsal koordinat sistemi oluşturacağından, adım ve gerçek hareket eden lazer arasında doğrusal bir bağımlılık oluşturmak için küçük bir hesaplama gereklidir. Burada size hesaplamanın bir taslağını göstereceğim:

resim
resim

Şimdi hesaplama için formülü bulmamız gerekiyor. 12bit DAC kullandığım için 0 - 4096 adımda -5 - +5V arası voltaj verebiliyorum. Aldığım galvo -5 - +5V'de toplam 25° tarama açısına sahip. Yani phi açım -12, 5° - +12, 5° aralığında. Sonunda d mesafesini düşünmem gerekiyor. Ben şahsen 100x100mm'lik bir tarama alanı istiyorum, bu yüzden d'm 50mm olacak. Yüksek h, phi ve d'nin sonucu olacaktır. h 225, 5 mm'dir. d mesafesini phi açısına göre getirmek için küçük bir formül kullandım, bu tanjantları kullanacak ve açıyı radyandan "DAC değerlerine" dönüştürecek.

resim
resim

Son olarak, yalnızca 2048'lik bir sapma eklemem gerekiyor, çünkü tarama alanım merkez hizalaması ve tüm hesaplamalar yapıldı.

Görev 3: Değerleri DAC'ye gönderin:

Kullandığım STM32'nin DAC'de yapısı olmadığı için harici bir DAC kullandım. DAC ve STM32 arasındaki iletişim SPI üzerinden gerçekleştirilir.

3. DAC

Devre için deltaflo ile aynı 12bit DAC "MCP4822" kullanıyorum. DAC 0-4, 2V unipolar olduğundan ve ILDA standardı için -+5V bipolara ihtiyacınız olduğundan, bazı OpAmp'lerle küçük bir devre oluşturmanız gerekir. TL082 OpAmp kullanıyorum. Bu amplifikatör devresini iki kez kurmalısınız çünkü iki galvoyu kontrol etmeniz gerekiyor. İki OpAmp, besleme gerilimi olarak -15 ve +15V'a bağlanır.

resim
resim

4. GALVO

Son kısım oldukça basittir. İki OPamp'ın Çıkış voltajı, ILDA Galvo sürücülerine bağlanacaktır. İşte bu kadar, şimdi galvoları adım ve yön sinyalleriyle kontrol edebilmelisiniz.

Adım 3: Devre

Devre
Devre

Devre için bir prototip PCB kullandım.

Adım ve yön sinyallerini doğrudan STM32'ye bağlayabilirsiniz, çünkü dahili aşağı çekme dirençlerini etkinleştirdim. Ayrıca adım, yön ve merkez pinleri için 5V toleranslı pinler kullandım.

Devrenin tam şemasını aşağıdan indirebilirsiniz:

Adım 4: STM32'nin Programlanması

STM32, Attolic TrueStudio ve CubeMX ile programlanmıştır. TrueStudio'nun kullanımı ücretsizdir ve buradan indirebilirsiniz

TrueStudio, örneğin Arduino IDE gibi basit olmadığı için, STM32 mikrodenetleyicisine yüklemeniz gereken bir.hex dosyası oluşturdum.

Aşağıda, dosyayı STM32 "BluePill"'e nasıl yüklediğinizi açıklayacağım:

1. "STM32 ST-LINK Yardımcı Programını" indirin: Yazılımı buradan indirebilirsiniz

2. "STM32 ST-LINK Utility"yi kurun ve açın:

resim
resim

3. Şimdi ST-Link Yardımcı Programında Galvo.hex dosyasını açın:

resim
resim

Bundan sonra STM32 "BluePill"i ST-Link-V2'ye bağlamanız gerekir. Bağlandıktan sonra "Hedef Düğmesine Bağlan" üzerine tıklayın:

resim
resim

Son olarak "İndir" e tıklayın. Şimdi STM32'niz doğru şekilde yanıp sönmelidir.

resim
resim

Ayrıca, TrueStudio'daki Galvo_Controller'ın tüm kaynak dosyalarını ekledim.

Adım 5: Tüm Parçaları Mekanik Olarak Bağlayın ve Test Edin

Tüm Parçaları Mekanik Olarak Bağlayın ve Test Edin
Tüm Parçaları Mekanik Olarak Bağlayın ve Test Edin
Tüm Parçaları Mekanik Olarak Bağlayın ve Test Edin
Tüm Parçaları Mekanik Olarak Bağlayın ve Test Edin

Daha iyi bir görünüm için tüm elektronik parçaları 4mm alüminyum levha üzerine yerleştirdim:-)

Şimdi size muhtemelen devre üzerindeki potansiyometreleri nasıl ayarlamanız gerektiğini göstereceğim:

İlk başta ILDA standardı hakkında bazı arka plan bilgileri. ILDA standardı genellikle Lazer gösterileri için kullanılır ve 5V ve -5v sinyalden oluşur. Her iki sinyal de aynı genliğe sahiptir, ancak kutupları değişmiştir. Öyleyse yapmamız gereken, DAC'den gelen çıkış sinyalini 5V ve -5V'a kesmek.

Potansiyometreyi ayarlayın:

resim
resim

Burada gördüğünüz, 100kHz giriş adım frekansında ve sabit yön sinyali ile bu devrenin çıkış voltajıdır. Bu resimde her şey yolunda. Genlik 0 ila 5V ve 0 ila -5 arasındadır. Ayrıca voltajlar muhtemelen hizalanmıştır.

Şimdi size potansiyometreyi ayarlarken neyin yanlış olabileceğini göstereceğim:

resim
resim

Gördüğünüz gibi şimdi her iki voltaj da muhtemelen hizalı değil. Çözüm, OpAmp'tan ofset voltajını ayarlamaktır. Bunu "R8" ve "R10" potansiyometrelerini ayarlayarak yapabilirsiniz.

Başka bir örnek:

resim
resim

Şimdi görebileceğiniz gibi, voltajlar muhtemelen hizalanmıştır, ancak genlik 5V değil 2V'dir. Çözüm, OpAmp'tan kazanç direncini ayarlamaktır. Bunu "R7" ve "R9" potansiyometrelerini ayarlayarak yapabilirsiniz.

Önerilen: