![[具身智能-796]:直流電機的信號死區(qū)?并圖示](http://pic.xiahunao.cn/yaotu/[具身智能-796]:直流電機的信號死區(qū)?并圖示)
直流電機信號死區(qū)控制死區(qū)概念控制器輸出PWM 控制指令已經(jīng)不為 0但電機實際轉(zhuǎn)速 / 輸出轉(zhuǎn)矩仍然為 0的輸入?yún)^(qū)間屬于非線性環(huán)節(jié)。 ?區(qū)分信號死區(qū)控制死區(qū)指令?轉(zhuǎn)速非線性摩擦、壓降造成毫秒?百毫秒級H 橋死區(qū)時間 (dead?time)MOS 管防直通保護微秒級硬件延時二者完全不同。示意圖形文本 ASCII 圖可直接復(fù)制到筆記圖 1指令 PWM ? 實際轉(zhuǎn)速關(guān)系曲線橫軸控制器 PWM 輸出指令?255 ~ 255 縱軸電機實際轉(zhuǎn)速plaintext轉(zhuǎn)速 ↑ | ↗ | ↗ | ↗ -----|----┌─┘ 正向死區(qū)0 ~ D | │ |────┘ 死區(qū)區(qū)間[-D? , D]指令在這個范圍內(nèi)電機不動 │ └─┐ ↘ ↘ ↘ → PWM指令 -D? 0 D?\(D_\)正向啟動閾值PWM 大于 \(D_\) 電機才開始正轉(zhuǎn)\(-D_-\)反向啟動閾值PWM 小于 \(-D_-\) 電機才開始反轉(zhuǎn)\(\boldsymbol{-D_- \sim D_}\)信號死區(qū)此區(qū)間內(nèi) PWM≠0但轉(zhuǎn)速 0工程上\(|D_| \neq |D_-|\)正負死區(qū)往往不對稱。圖 2時間域現(xiàn)象階躍小指令落在死區(qū)plaintext指令(PWM) ^ | ____ |____| | ------------------ t 實際轉(zhuǎn)速 ^ | | |_________________ t 【指令已經(jīng)輸出但電機完全不動】圖 3PID 閉環(huán)下死區(qū)引發(fā)極限環(huán)振蕩低速來回抖plaintext位置 ^ ╭─╮ ╭─╮ | │ │ │ │ |────┘ └────┘ └────→ t 反復(fù)小幅來回震蕩無法收斂到目標原理存在位置誤差PID 輸出小指令落入死區(qū)電機不動誤差持續(xù)存在PID 積分不斷累加積分累積到突破死區(qū)閾值電機突然轉(zhuǎn)動直接沖過目標位置反向誤差產(chǎn)生又重復(fù)上述過程形成來回抖動。死區(qū)產(chǎn)生根源機械靜摩擦主導(dǎo)齒輪箱、軸承靜摩擦力必須克服靜摩擦才能啟動轉(zhuǎn)動后動摩擦變小維持轉(zhuǎn)動的 PWM 可以比啟動 PWM 更低。電氣壓降H 橋 MOS 導(dǎo)通電阻、電機電刷、繞組內(nèi)阻小 PWM 時有效電壓被損耗吃掉。齒輪回差換向時齒輪需要走完間隙輸出軸無運動等效換向死區(qū)。重要現(xiàn)象啟動閾值 維持閾值例PWM140 才轉(zhuǎn)起來轉(zhuǎn)起來之后 PWM60 就可以維持低速轉(zhuǎn)動。死區(qū)帶來工程問題開環(huán)低速段 PWM?轉(zhuǎn)速嚴重非線性小指令無響應(yīng)。閉環(huán)定位目標點附近極限環(huán)振蕩、來回抖動。換向滯后指令已經(jīng)換向輸出軸短暫無動作。啟動卡頓要么不動一動就沖出去。常用補償思路閾值抬升補償輸出落在死區(qū)內(nèi)直接把輸出抬到啟動閾值。c運行//示例PWM范圍?255~255 #define D_PLUS 140 #define D_MINUS -120 int pwm pid_out; if(pwm0 pwmD_PLUS) pwm D_PLUS; if(pwm0 pwmD_MINUS) pwm D_MINUS;缺點負載變化、溫度變化閾值會漂移。積分抗飽和必做輸出落在死區(qū)區(qū)間時關(guān)閉積分器防止積分無限累積。前饋查表補償實測得到 PWM?轉(zhuǎn)速非線性表對小信號做映射修正。速度斜坡規(guī)劃啟動時 PWM 平滑爬升避免直接給到死區(qū)內(nèi)部。硬件層面緩解使用低 Rdson 驅(qū)動芯片AM2857、TB6612避免 L298N 大壓降。不要過低供電電壓電壓越高死區(qū)占比相對越小。改善機械潤滑減小靜摩擦死區(qū)只能補償不能完全消除。指標制約關(guān)系減速比越大齒輪級數(shù)越多靜摩擦越大 →死區(qū)越大追求低速高精度必須做死區(qū)補償?shù)a償值設(shè)置過大會引入額外抖動物理層面不能同時實現(xiàn) “極小死區(qū) 大減速比大轉(zhuǎn)矩”需要取舍。