Encoderden hız ölçümü?

Endorfin35+

Kayıtsız Üye
Katılım
1 Mayıs 2020
Mesajlar
4,449
Tek yönlü çalışan bir sistem için bir nevi kendi servo sürücümü yapmayı planlıyorum.

Motoru pwm ile süreceğim. Ayrıca motora bağlı bir encoder ile pozisyon takibi yapacağım.bu kadarını daha önce yapmıştım. Benim için yeni olan konu motorun yüke bağlı olarak değişecek hızını sabit tutmak istiyorum. Hızı duty ile kontrol altına almayı hedefliyorum. Motorun dönüşüne göre alınan yolu bildiğime göre Hızı hesaplamak için süre tutmalıyım.Acaba encoderden gelen her puls için mi hesaplama yapmalıyım yoksa puls sayısı 1 tur dönüşe ulaşımcamı hesap yapmalıyım..
 
Başka bir yöntem daha varmış. Sabit zaman (örnekleme) aralığındaki pals sayısı... Bu daha mantıklı sanki...
 
stm kullanacaksanız timerlarda encoder modu olabiliyor timer değeri encoder döndükçe otomatik olarak güncelleniyor sonra 1 ms de bir kaç pals yakalandıgına bakıp hız hesaplanabiliyor
 
Son düzenleme:
Akşam aklımda olan çözümü yazayım.
Basit bir yol pek aklıma gelmedi
 
İki pals arasında geçebilecek zamanın minimum ve maksimum değeri nedir?
 
Aslında iki pals arasını mikrosaniye hassasiyetinde ölçebilirsiniz. Çok gerekirse yüksek çözünürlüklü timer ile daha altına da inmek mümkün. Öneğin 0-3000 RPM dönüş hızı olsa, saniyede 50 tur olur. Bir turda 300 pals gelse maksimum saniyede 15000 pals demek olur ve en hızlı durumda iki pals arası yaklaşık 67 mikrosaniye olur..

Bir kesme ile sadece önceki pals zamanı ile farkını alıp bir yere yazabilirsiniz. Son n tane süreyi round bobin şeklinde birdiziye yazmanızı tavsiye ederim. Hız verisi gerekince de başka bir fonksiyonla bu diziden ortalama ua da ağırlıklı ortalama metodlarıyla daha yumuşatılmış bir hız hesabı yapabilirsiniz.

Son pals zamanını bir değişkende saklıyor olacağınız için hız hesaplama fonksiyonunda durmuş olma durumunu (absolute 0) da tespit edebilirsiniz.

Daha yüksek hassasiyet gerekirse bir alternatif de kesmede her n inci palsi dikkate almak olabilir.
 
Merhaba. Öncelikle tek yönlü de olsa motorunu tek transistörlü olarak sürme tavsiyem. Mümkünse hazır sürücü devre kullan. Yük e bağlı değişimlerde ister istemez bazen de yapman gerekecek. Bu konuda hazır sürücü çok işe yarıyor. Encoder le hız ölçerken örnekleme zamanın mümkün oldukça kısa olsun yöntem fark etmez. Uzun tutarsan salınım çok olur. Tabiiki PID yada sadece PI olmalı. Yıllar önce klima motoru benzeri manyetik kavramalı bir motorla bahsettiğine benzer bir sistem ile uğraşmıştım. Yaşadığım zorluklar anlattığım konulardaydı. Kolay gelsin. Umarım güzel bir iş çıkarırsın.
 
Merhaba. Öncelikle tek yönlü de olsa motorunu tek transistörlü olarak sürme tavsiyem. Mümkünse hazır sürücü devre kullan. Yük e bağlı değişimlerde ister istemez bazen de yapman gerekecek. Bu konuda hazır sürücü çok işe yarıyor. Encoder le hız ölçerken örnekleme zamanın mümkün oldukça kısa olsun yöntem fark etmez. Uzun tutarsan salınım çok olur. Tabiiki PID yada sadece PI olmalı. Yıllar önce klima motoru benzeri manyetik kavramalı bir motorla bahsettiğine benzer bir sistem ile uğraşmıştım. Yaşadığım zorluklar anlattığım konulardaydı. Kolay gelsin. Umarım güzel bir iş çıkarırsın.

Yorumlar için teşekkürler. Devereyi tasarladım. Pcb yi bekliyorum. Redüktörlü bir sistem var. Belkide hız değişimine müdahale etmem bile gerekli olmayacak tam emin değilim. Sistemi çalıştırınca nabıza göre şerbet metodu kullanacağın.
 

Forum istatistikleri

Konular
7,299
Mesajlar
123,402
Üyeler
2,949
Son üye
dündenbiri

Son kaynaklar

Son profil mesajları

Freemont2.0 herbokolog Freemont2.0 wrote on herbokolog's profile.
nick iniz yakıyor
:D
Freemont2.0 posta Freemont2.0 wrote on posta's profile.
Merhabalar :)
az bilgili çok meraklı
Prooffy semih_s Prooffy wrote on semih_s's profile.
Merhaba, sizden DSO2C10 hakkında bilgi rica ettim. Yanıtlarsanız sevinirim...
Unal taydin Unal wrote on taydin's profile.
Timur Bey, Arduino kontrollü bir akü şarj cihazı yapmaya çalışıyorum. Aklımdaki fikri basit bir çizim olarak konu açmıştım. Özellikle sizin fikirlerinizi çok önemsiyorum.
Back
Top