TMS302F28035 Enhanced Quadrature Encoder Pulse modülünü kuramadım.

Başlatan Logan, 26 Şubat 2014, 17:54:16

Logan

Merhaba arkadaşlar.

Piccolo C2000 serisi 38035'in encoder girişini kullanmaya çalışıyorum. 3 gündür örnek programların ve teknik dökümanın altını üstüne getirdim. Ancak bir yere varamadım. Yapı bir türlü kafamda oturmadı.

Motor kontrol kartının geri besleme kısmını ADC ile değil rotary ile yapmayı planlıyorum. Maximum 6000 devire çıkan 24V DC bir motorun ucuna Avago marka 1024'lük rotary encoder bağladım. Osilaskop ile A ve B sinyallerini inceledim gayet güzel, sorun yok. Teknik dökümanları ve örnek programları inceleyerek init kısmını hazırlayıp çalıştırdım. Yanlış anlamadıysam encoder değerini "Position Counter" değişkeni ile okuyoruz. Bu registeri sayıcıya bağlayıp 10mS'lik periyotlar ile okuyup sıfırlıyorum.

Maximum pozisyon sayıcı değerini, 6600 devri baz alarak hesaplayacak olursak;

6600/60=110 devir/saniye
1024*110=112640 değerini elde ederiz.

Ancak Debug penceresinde baktığım zaman çok farklı ve alakasız değerler geliyor. Yukarıda dediğim gibi belirli peryodlar ile sıfırlamama rağmen bazen QPOSCNT değerinin 112640'a çıktığını görüyorum.

Bu konu hakkında fikir sahibi olan ya da daha önce çalıştıran bir arkadaş yardımcı olabilir mi?

İyi çalışmalar.
İmza.

Logan

Konuyu çözdüm arkadaşlar. Uzun uğraşların ve incelediğim servo-BLDC kontrol programlarının sonunda hallettim.
İmza.