無刷有感電機PID調(diào)試心得
一、換相脈寬采集的方法
通常來講,換相脈寬的采集精度越高越好,但也受MCU內(nèi)部資料的限制,如果有多余的16位的定時器,那就不用猶豫了,云臺無刷電機直接用它來作換相脈寬的計數(shù)吧,精度可高達1us,要是沒有這個16位的定時器那就只能用8位的定時器然后再在定時器中斷里面自己人為累計計數(shù)值咯。
二、PID的運算時間如何定?
1、換相6次后運行一次PID
對于無刷電機而言,由于不同電機結(jié)構(gòu)之間的微小差異以及霍爾裝配上的誤差等問題,通常不要每采集一個脈寬值就進行PID運算,這樣容易引起電機抖動,好的做法是:采集一個完整的運行周期(也就是6個換相期),然后把這6個換相周期累加取平均值,從而得出當前的轉(zhuǎn)速值。一旦得到一次新的轉(zhuǎn)速值,東莞動力電機,就可以進行一次PID運算。
2、限定一個最長的強制運算PID的時間
當在一段時間內(nèi)(主要在低轉(zhuǎn)速),航模電機,MCU一直沒有獲得新的轉(zhuǎn)速值,那么這時候就需要強行進行PID運算,以重新獲得新的功率值,以下為強行運算PID的參考時間:40MS-150MS之間
三、如何消除電機的靜態(tài)抖動?
1、當采集到的脈寬值與設(shè)定的脈寬值相差很小EKA1(不是零哦),不需要進行PID運算,也就是程序直接返回,不進行算法運算。
2、當采集到的脈寬值與設(shè)定的脈寬值相差不大EKA2(EKA1 < EKA2)時,不進行PID運算,而是進行功率值的加1或減1處理,這是個微調(diào)功率的方法。
3、當采集到的脈寬值與設(shè)定的脈寬值相差比較大EKA3(EKA2 < EKA3)時,這時候大但的調(diào)用你的PID算法吧。