Curvo Studio

Servo motor PID konum kontrolü: enkoder geri beslemesi, P, I ve D terimleri ve ayar

Servo motor, bir motorun bir konum sensörü ve komut verilen ile ölçülen konumu karşılaştırıp farkı gidermek için motoru süren bir denetleyiciyle birleşimidir. En yaygın denetleyici PID'dir: oransal terim anlık hataya tepki verir, integral terim kalıcı hatayı giderir, türev terim ise hareketi sönümleyerek aşımı sınırlar.

Kapalı çevrim kontrol ne demektir?

Step motor gibi açık çevrimli bir sistemde denetleyici bir komut gönderir ve onun yerine getirildiğini varsayar. Kapalı çevrimli bir sistemde ise denetleyici sonucu ölçer ve düzeltir.

Bir servo çevriminin dört parçası vardır:

  • Komut (ayar noktası): milin olmasını istediğiniz konum ya da hız.
  • Sensör: gerçek mil konumunu ölçen bir enkoder, resolver veya potansiyometre.
  • Denetleyici: hatayı hesaplar, e = ayar noktası − ölçülen konum, ve bir kontrol çıkışı üretir.
  • Sürücü ve motor: denetleyici çıkışını akıma, akımı da torka çevirirler.

Bir yük mili her bozduğunda hata sıfırdan farklı olur, denetleyici karşı iter ve konum geri döner. Bedeli, kötü ayarlanmış bir çevrimin salınım yapabilmesi ya da kararsız olabilmesidir; açık çevrimli sistemler bunu yapamaz.

Enkoder geri beslemesi ve çözünürlük

Artımlı (incremental) bir enkoder mil döndükçe darbe üretir; yönün bilinmesi için dörtlü (quadrature) bir kanal çifti kullanır. Mutlak (absolute) bir enkoder, güç verildikten sonra bile gerçek açıyı bildirir. Çözünürlük devir başına sayım olarak, çoğu zaman bit sayısı olarak verilir: n bitlik bir enkoder devir başına 2^n sayıma sahiptir.

17 bitlik bir enkoderin devir başına 131 072 sayımı vardır; dolayısıyla bir sayım 360° / 131 072 ≈ 0,0027°'dir. Çevrim, sensörünün çözebildiğinden daha iyi konumlayamaz; kaba çözünürlük ayrıca türev terimini gürültülü yapar, çünkü hız konum farklarından hesaplanır.

P, I ve D terimleri

PID denetleyici çıkışı

u = Kp × e + Ki × ∫e dt + Kd × de/dt

olur. Her terimin ayrı bir rolü vardır.

  • Oransal (Kp): çıkış, anlık hatayla orantılıdır. Daha yüksek Kp yanıtı hızlandırır ve sistemi bozuculara karşı daha sert yapar, ancak çok yüksek bir değer aşıma ve salınıma yol açar. Yalnızca P ile, sabit bir yük torku etki ettiğinde genellikle kalıcı rejim hatası kalır.
  • İntegral (Ki): hatayı zamana göre biriktirir; bu yüzden küçük bir kalan hata bile sonunda çıkışı onu yok edecek kadar iter. Kalıcı rejim hatasını giderir, ancak faz gecikmesi ekler ve bu aşımı artırır; eyleyici doyduğunda da şişebilir (windup), bu yüzden integral normalde sınırlandırılır.
  • Türev (Kd): hatanın değişim hızına tepki verir. Bir sönümleyici gibi davranır, aşımı ve çınlamayı azaltır, ancak sensör gürültüsünü ve niceleme hatasını yükseltir; bu nedenle genellikle filtrelenir.

Her bir kazancı tek başına artırmanın kabaca etkileri: Kp yükselme süresini kısaltır ve aşımı artırır; Ki kalıcı rejim hatasını giderir ve aşımı artırır; Kd aşımı ve yerleşme süresini azaltır, ancak gürültü ekleyebilir.

Ayar sezgisi ve sayısal bir tablo

Yaygın bir elle ayar yöntemi şöyledir:

1. Ki ve Kd'yi sıfıra ayarlayın. Eksen hızlı tepki verip aşım yapmaya ya da salınmaya başlayana kadar Kp'yi artırın, sonra bu değerin yaklaşık yarısına geri çekin. 2. Aşım kabul edilebilir olana ve basamak yanıtı iyi sönümlenene kadar Kd ekleyin. 3. Kalan kalıcı rejim hatasını gidermek için küçük bir Ki ekleyin ve yanıtı çınlatmadan bunu yaptığı anda durun. 4. Gerçek yük, gerçek bir basamak ve gerçek bir bozucuyla deneyin; yük değiştiğinde de yeterli payla kararlı kaldığını kontrol edin.

Kp'yi bir yay, Kd'yi bir sönümleyici, Ki'yi ise hata ortadan kalkana kadar dönmeye devam eden yavaş bir el olarak düşünün. Saf bir P çevriminde sabit hızdaki izleme hatası, hızın kazanca bölümüdür. Kv = 50 1/s konum kazancına sahip ve 600 dev/dak'yı (saniyede 10 devir, yani 3600°/s) izleyen bir çevrim komutun 3600 / 50 = 72° gerisinde kalır. Bu çok fazladır; yüksek performanslı sürücülerin yüksek kazançlar ve hız ileri beslemesi (feedforward) kullanmasının nedeni budur.

Endüstriyel sürücüler genellikle üç çevrimi iç içe kurar: dış bir konum çevrimi (P), orta bir hız çevrimi (PI) ve torku doğrudan belirleyen iç bir akım çevrimi (PI). İç çevrimler hızlı, dıştakiler daha yavaştır; bu da her birini ayarlamayı kolaylaştırır.

Hobi servosu ve endüstriyel servo

Hobi (RC) servosu, tek bir kutuda küçük bir DC motor, bir dişli kutusu, bir potansiyometre ve bir kontrol kartıdır. Komut, her 20 ms'de bir gelen bir darbedir; genişliği, tipik olarak 1 ile 2 ms arasında ve orta konumda 1,5 ms olmak üzere, çoğunlukla yaklaşık 180° olan sınırlı bir aralıkta hedef açıyı belirler. Geri beslemeyi potansiyometre sağlar ve kart basit, genellikle oransal bir kontrol yasası uygular. Ucuzdur, çözünürlüğü kaba ve torku sınırlıdır.

Endüstriyel servo, ayrı bir motordur; genellikle enkoderli bir PMSM ya da BLDC türüdür ve akım, hız ve konum çevrimleri olan bir servo sürücüyle birlikte gelir. Adım-yön darbeleri, analog gerilim veya bir saha veriyolu ile sürülür. Yüksek tepe tork (kısa ivmelenmeler için çoğu zaman anma torkunun üç katı), hızlı yanıt ve sürücüde ayar araçları sunar. Maliyeti daha yüksektir ve ayar gerekir.

Simülatör servo motoru nasıl modeller?

Curvo Studio'nun servo motor simülatörü bir PID denetleyici ya da basamak yanıtı grafiği içermez. Enkoderli, ayarlanmış bir servo ekseninin kalıcı rejim davranışını modeller ve çevrim sertliğinin etkisini göstermek için tek bir konum çevrimi kazancı olan Kv'yi kullanır.

Sürücünün, akımı torkla orantılı yapan bir akım çevrimine sahip olduğu varsayılır. Motor, komut verilen hızı besleme geriliminin belirlediği hız tavanına kadar izler. Yük, sürücü anma torkunun üç katı olarak alınan tepe değerine ulaşana kadar akımı torkla orantılı artırır. Bunun ötesinde eksen komutu tutamaz ve simülatör sessizce yavaşlamak yerine tork sınırını bildirir.

İzleme hatası, oransal çevrimin gecikmesidir, derece cinsinden 6 × dev/dak / Kv; eksen durduğunda kaybolur. Kalkış yanıtı, yükselme süresi çevrim kazancına ve yüke bağlı birinci dereceden bir yaklaşımdır. Enkoder çözünürlüğü bit olarak ayarlanır ve etikette devir başına sayım gösterilir. Modelde integral etki, türev etki, aşım ya da salınım yoktur; bu etkiler burada anlatılmıştır ancak simüle edilmez.

Servo motor simülatöründe deneyin

Servo motor simülatöründe şu deneyleri yapın.

  • Komut hızını ayarlayın ve rotor hızını ile İzleme hatasını okuyun. İzleme hatasını 6 × dev/dak / Kv ile karşılaştırın.
  • Konum çevrimi kazancını yükseltin ve izleme hatasının orantılı olarak küçüldüğünü izleyin.
  • Yönü tersine çevirmek için Komut hızına negatif işaret verin.
  • Mekanik yük kaydırıcısını (%350'ye kadar) artırın. Akım torku izlediği için Tork ve Faz akımı değerleri birlikte yükselir. Yükü anma torkunun %300'ünün üzerine çıkarın; simülatör tork sınırını bildirir.
  • Besleme gerilimini anma değerinin altına düşürün ve hız tavanının düştüğünü, torkun ise kullanılabilir kaldığını görün.
  • Enkoder çözünürlüğünü (8 ile 24 bit arası) değiştirin ve devir başına sayım ipucunu okuyun.

Simülatörde deneyin

Sık sorulan sorular

Servo motorda PID kontrolü nedir?
PID kontrolü, motor komutunu konum hatasından üç terimle hesaplar: hatayla orantılı, hatanın zamana göre integraliyle orantılı ve değişim hızıyla orantılı terimler. Birlikte, milin hedefe hızlı, az aşımla ve kalıcı hata olmadan ulaşmasını sağlarlar.
Servoda P terimi ne yapar?
Oransal terim sertliği belirler. Daha yüksek kazanç daha hızlı yanıt ve daha küçük hata verir, ancak aynı zamanda daha fazla aşım ve çok yüksekse salınım yaratır. Yalnızca P ile sabit bir yük genellikle kalıcı rejim hatası bırakır.
Neden integral terimi eklenir?
İntegral terimi kalan hatayı biriktirir ve hata ortadan kalkana kadar çıkışı artırır; bu yüzden sabit yüklerin ya da sürtünmenin yol açtığı kalıcı rejim hatasını giderir. Çok fazla integral etki aşıma ve şişmeye (windup) yol açar; bu nedenle küçük tutulur ve sınırlandırılır.
Türev terimi ne yapar?
Türev terimi hatanın ne kadar hızlı değiştiğine tepki verir ve sönümleme gibi davranır. Aşımı ve çınlamayı azaltır, ancak sensör gürültüsünü yükseltir; bu yüzden genellikle bir filtreyle birleştirilir ve ölçülü tutulur.
Step motor ile servo motor arasındaki fark nedir?
Step motor açık çevrimde çalışır ve adımları sayarak konumunu tutar, ancak aşırı yük altında fark etmeden adım kaybedebilir. Servo, konumu bir enkoderle ölçer ve hatayı sürekli düzeltir; daha yüksek maliyetle daha yüksek hız, tork payı ve konum kesinliği sağlar.
Hobi servoları endüstriyel servolardan nasıl ayrılır?
Hobi servosu, potansiyometre ve basit bir denetleyici içeren, 1 ile 2 ms'lik darbelerle komut verilen küçük, bütünleşik bir birimdir. Endüstriyel servo ise ayrı bir motor, yüksek çözünürlüklü bir enkoder ve iç içe akım, hız ve konum çevrimleri olan bir sürücü kullanır; daha yüksek tork ve doğruluk sağlar.