b9902131 發表於 2016-4-12 15:39:25

用PID控制馬達位置的問題

本帖最後由 b9902131 於 2016-4-12 15:44 編輯

想設計成馬達pwm跟error成正比,error=0的時候 pwm也等於0

1.有人說用馬達轉子轉一圈的速度來當作sample time,可是如果我速度會隨著越靠近目標而變成0,那轉子rpm也越來越小,所以sample time也要隨時間一值改變嗎?

2.微分項是不是不用每一次算PID時都/sample time? 是想說因為微分項是根據上一步的error來預測之後的error,如果/sample time會變很大,失去原本用意,但是積分項還是要*sample time。

超新手 發表於 2016-4-12 19:56:43

奇怪?
你是要做速度控制還是位置(角度)控制?

b9902131 發表於 2016-4-12 20:07:57

位置控制,我看大家都是用速度控制位置,就是說一開始誤差最大的時候速度最快,到終點的時候速度為0
不然通常位置控制是怎麼做?

超新手 發表於 2016-4-12 20:26:38

本帖最後由 超新手 於 2016-4-12 20:56 編輯

位置控制?馬達不是不應該讓它轉超過一圈嗎?
那不就沒有 rpm 這種東西了,不是嗎?

不管速度或位置
我只用過固定週期去控制
通常是考慮 pwm 週期和 mcu 能力
用變動週期? 這個學問比較高深
我就沒試過了

b9902131 發表於 2016-4-12 21:29:31

沒啊 可以轉很多圈 只要給定一個setpoint就好 他就會一值轉

cc1357 發表於 2022-3-12 22:13:13


谢谢大大分享
頁: [1]
查看完整版本: 用PID控制馬達位置的問題