測量實戰(zhàn):從伯德圖到伺服參數(shù)整定)
1. 項目概述為什么要費勁測一臺直流電機的頻率響應(yīng)做電機控制這些年我一直覺得一個有意思的事情是很多工程師調(diào)試伺服系統(tǒng)、PID參數(shù)時全靠“感覺”和“試錯”。先給個積分增益跑一下看抖不抖再給個比例增益聽一下有沒有嗡嗡聲。說實話這種方法并不是不行但它的天花板很低——尤其是當你面對一臺新型號電機、一套不熟悉的機械負載或者一個要求很高的運動控制項目時這種“玄學(xué)調(diào)參”會浪費大量時間甚至把系統(tǒng)調(diào)到震蕩邊緣還不自知。測量直流電機的頻率響應(yīng)本質(zhì)上就是在做一件事把這個“玄學(xué)”變成“科學(xué)”。它就像給電機做一次體檢把電機從“電壓輸入”到“轉(zhuǎn)速輸出”這一整條路徑的動態(tài)特性用一條清晰的曲線畫出來。這條曲線我們通常叫它伯德圖Bode Plot它告訴我們這臺電機在什么頻率下響應(yīng)靈敏在什么頻率下開始衰減在什么頻率下會出現(xiàn)諧振峰值以及它的相位滯后有多大。為什么這些信息值錢因為閉環(huán)控制器的設(shè)計本質(zhì)上就是在跟這些“頻率特性”打交道。你知道了電機的帶寬就知道你的速度環(huán)增益最多能推到多少而不引發(fā)振蕩你知道了機械諧振點的位置就知道該在濾波器里加陷波器還是低通你看懂了相位裕度就知道系統(tǒng)的穩(wěn)定余量到底夠不夠。這篇博文適合誰說實話它不是寫給純做理論的人看的。如果你正在做運動控制、機器人、自動化設(shè)備、無人機云臺、電動工具或者任何用到直流電機閉環(huán)控制的項目而且你已經(jīng)對PID、編碼器、PWM這些概念有一定基礎(chǔ)那么這篇內(nèi)容對你最有用。當然如果你想深入了解電機特性或者純粹好奇工程師怎么給電機“做體檢”這篇文章也足夠通俗你可以跟著步驟把實驗復(fù)現(xiàn)出來。我在這里要提醒一句這個測量方法不只是針對“直流有刷電機”它同樣適用于無刷直流電機BLDC、永磁同步電機PMSM的機械頻率特性辨識只是驅(qū)動方式稍有不同。文章里的核心思路是通用的。2. 整體思路拆解掃頻vs逐點正弦我的選型理由2.1 頻率響應(yīng)測量的兩種主流方案測量系統(tǒng)頻率響應(yīng)業(yè)界最常用的方法大概分兩類掃頻正弦Swept Sine / Chirp和步進正弦Stepped Sine。這兩種我都實測過都有自己的優(yōu)缺點這里說下我的感受。掃頻正弦的思路很簡單從一個低頻比如0.1Hz開始連續(xù)或分段地把正弦信號的頻率逐漸升高到目標上限比如100Hz甚至更高同時記錄系統(tǒng)的輸入和輸出最后通過FFT或相關(guān)分析法得到每個頻率點的幅值增益和相位差。步進正弦則更“笨”一點不連續(xù)掃頻而是設(shè)定一系列離散的頻率點比如0.1、0.2、0.5、1、2、5、10、20、50、100Hz在每個頻率點單獨發(fā)一段固定頻率的正弦波等系統(tǒng)穩(wěn)定后記錄穩(wěn)態(tài)輸出算完這個點的幅值相位再跳到下一個頻率點。我做這個項目時兩臺電機一臺用了掃頻一臺用了步進正弦對比下來發(fā)現(xiàn)維度掃頻正弦步進正弦測量速度快幾十秒完成全頻段慢每個頻點都要等待穩(wěn)定可能要幾分鐘頻譜泄露風險高需要加窗處理低穩(wěn)態(tài)正弦信號本身就很干凈非線性敏感度較高瞬態(tài)響應(yīng)會混入結(jié)果較低可以只取穩(wěn)態(tài)部分平均對摩擦/死區(qū)的魯棒性較弱低速段容易失真較強每個點都可以做補償硬件實現(xiàn)難度低一個對數(shù)掃頻信號即可低但要控制頻率切換時序數(shù)據(jù)后處理復(fù)雜需要FFT加窗簡單逐點算RMS和相位如果你只求快、求方便而且電機負載不復(fù)雜掃頻完全夠用。但如果電機帶載后存在明顯非線性比如齒輪箱齒隙、皮帶打滑、摩擦負載建議老老實實用步進正弦。這個項目里最終我主要采用步進正弦因為實測數(shù)據(jù)更干凈擬合出的模型參數(shù)也更可信。2.2 為什么選擇電流環(huán)內(nèi)環(huán)機械外環(huán)的測量拓撲這里有一個關(guān)鍵設(shè)計決策值得展開講講。直流電機的“完整”傳遞函數(shù)既包括電氣部分電樞回路也包括機械部分轉(zhuǎn)動慣量、阻尼。理論上你確實可以直接從“電壓輸入”到“轉(zhuǎn)速輸出”建一個完整模型。但實際測量時我強烈建議你把電流環(huán)先閉環(huán)起來然后測量“電流給定→轉(zhuǎn)速輸出”的頻響。為什么兩個原因。第一電機的電氣時間常數(shù)通常遠小于機械時間常數(shù)。直接測電壓到轉(zhuǎn)速得到的伯德圖會在某個轉(zhuǎn)折頻率處混合著電氣和機械兩個極點你很難把它們區(qū)分開。但如果先把電流環(huán)閉環(huán)帶寬通常做到1kHz以上電流環(huán)的動態(tài)相對機械響應(yīng)來說快得多于是整個測量主通道就簡化成了“電流→力矩→轉(zhuǎn)速”的機械路徑物理意義更單純。第二電流環(huán)閉環(huán)后會顯著降低電樞電阻、反電動勢等因素對測量結(jié)果的影響。這意味著你測出來的頻率響應(yīng)曲線更接近“純機械特性”這對后續(xù)機械參數(shù)辨識、負載識別都更有利。實際接線也很簡單你用一臺帶電流環(huán)的驅(qū)動器把速度環(huán)斷開直接給電流環(huán)一個電流指令信號然后高速采集編碼器轉(zhuǎn)速作為系統(tǒng)的輸出。整套系統(tǒng)的“輸入”就是電流指令安培“輸出”就是電機轉(zhuǎn)速rad/s。2.3 激勵信號幅值的選擇邏輯選幅值這件事看起來好像沒什么技術(shù)含量其實坑很多。如果激勵幅值太大電機會跑飛、電流會超限甚至撞上機械限位如果幅值太小摩擦和死區(qū)會吃掉有效信號輸出的轉(zhuǎn)速波形會嚴重扭曲測出來的增益比實際偏小。我可以分享一個實際選擇的經(jīng)驗公式先用一個很小的正弦電流比如額定電流的2%頻率放在中頻段比如10Hz觀察電機的轉(zhuǎn)速波動幅度。如果轉(zhuǎn)速波動峰值小于額定轉(zhuǎn)速的2%說明激勵太弱需要放大如果超過額定轉(zhuǎn)速的10%就要小心非線性帶來的諧波污染。對于多數(shù)小型直流電機額定電流1~3A我從額定電流的5%開始試基本都能找到合適的區(qū)間。另外一個實用技巧是低速運行階段把電流幅值適當加大一些因為摩擦在低速段占的比重很大你需要用更大的力矩來“沖破”靜摩擦的束縛才能在輸出里看到有效的運動。3. 核心細節(jié)解析與實操要點3.1 硬件鏈路的搭建編碼器分辨率決定了你的測量上限測頻響本質(zhì)上是一個高保真“錄音”過程輸入一個已知信號記錄輸出響應(yīng)。這套系統(tǒng)里最關(guān)鍵的兩個硬件是信號生成端和轉(zhuǎn)速測量端。信號生成端我用的是一塊帶16位DAC的實時控制板配合一個簡單的C程序生成正弦掃頻序列。很多人會問直接用函數(shù)信號發(fā)生器行不行完全可以但要注意信號發(fā)生器輸出的是電壓信號而你的驅(qū)動器電流環(huán)輸入通常也是電壓接口比如0-10V對應(yīng)0-額定電流所以要做一下標定——知道幾伏對應(yīng)幾安培。不做這一步后面擬合模型時電流到力矩的換算就會出現(xiàn)系統(tǒng)性偏差。轉(zhuǎn)速測量端我強烈建議用增量式編碼器 高速計數(shù)器/定時器捕獲而不是用測速發(fā)電機的模擬電壓。測速發(fā)電機的輸出電壓紋波大、響應(yīng)慢而且模擬采樣的噪聲會直接污染你的頻響曲線。編碼器的分辨率直接決定了你的測量精度上限——比如每轉(zhuǎn)1000線的編碼器配合4倍頻后是4000計數(shù)/轉(zhuǎn)在轉(zhuǎn)速100rpm約1.67rps下每秒能產(chǎn)生約6670個脈沖。如果你的采樣頻率是1kHz那么每個采樣周期內(nèi)大約能捕獲6-7個脈沖夠用了。但如果轉(zhuǎn)速低到10rpm每周期只有不到1個脈沖測出來的轉(zhuǎn)速數(shù)據(jù)會鋸齒狀嚴重頻響的數(shù)據(jù)質(zhì)量就完蛋了。我在這個項目里用的是一臺2000線編碼器4倍頻后8000計數(shù)/轉(zhuǎn)配合5kHz的采樣頻率在最低測試頻率0.1Hz、轉(zhuǎn)速波動幅度可控的前提下數(shù)據(jù)質(zhì)量還是能保證的。3.2 采樣率與抗混疊噪聲控制的配合關(guān)于采樣率我遇到過不少新手翻車的情況采樣率設(shè)低了高頻段頻率響應(yīng)完全錯亂采樣率設(shè)高了數(shù)據(jù)文件大得離譜后處理時電腦卡頓。我的經(jīng)驗是采樣率至少設(shè)為最高激勵頻率的50~100倍。比如你最高測100Hz采樣率至少要5kHz~10kHz。這樣既不會出現(xiàn)混疊又能對高頻段的轉(zhuǎn)速信號做足夠精細的重建。這里還有一個細節(jié)很多控制板上的ADC或編碼器捕獲自帶一個簡單的低通濾波這個濾波的截止頻率如果低于你的最高激勵頻率就會在高頻段引入額外相位滯后。實測中我發(fā)生過這種問題后來學(xué)乖了所有濾波一律關(guān)掉或者把截止頻率設(shè)到采樣率的五分之一以上寧可讓數(shù)據(jù)里帶一點高頻噪聲也不要把有效的頻響信息給濾沒了。3.3 數(shù)據(jù)采集時的時間戳同步問題開始的時候我沒有太在意時間同步覺得只要同時采就行。但這個項目里因為輸入信號是控制板DAC發(fā)的輸出信號是編碼器捕捉的兩者分屬不同的硬件模塊如果不在同一個時間基準下記錄那么每個頻率點的相位都會偏一個隨機量——這會導(dǎo)致最后畫的伯德圖相位曲線像被狗啃過一樣完全沒法看。解決辦法有兩個第一用同一個定時器中斷去觸發(fā)ADC采樣和編碼器寄存器讀取然后在同一個中斷服務(wù)程序里把這兩個數(shù)據(jù)打上同一個全局時間戳。這是最干凈的方法。我用的控制板正好支持這種操作實測相位曲線平滑得多了。第二如果沒有這種硬實時能力那就只能用互相關(guān)的方法來離線對齊輸入輸出。方法是在信號的前面加一段已知的參考標記比如一個短脈沖在數(shù)據(jù)分析時先找出這個標記然后按照已知的采樣率把輸入輸出對齊。這個方法稍微麻煩一點但確實有效。3.4 電機安全工作區(qū)確認這是整個實驗里最不能跳過的一步。電機的頻率響應(yīng)測量意味著你要故意給電機一個波動的指令讓它在一個寬頻范圍內(nèi)來回轉(zhuǎn)動。如果你不控制好安全工作區(qū)輕則數(shù)據(jù)作廢重則燒驅(qū)動、毀電機。我的安全檢查清單電流限制驅(qū)動器的電流限幅設(shè)為額定電流的120%留一點緩沖但不至于失控。尤其做低頻段測試時電機可能要持續(xù)輸出大力矩長時間運行容易過熱。速度限制在控制器里加一個轉(zhuǎn)速軟限位萬一出現(xiàn)意外比如機械諧振放大立即把電流指令置零。我見過一次諧振引起的嘯叫聲音聽起來像金屬被撕裂如果不是限位及時電機軸估計要廢。機械行程如果你測試的對象是帶減速器的機構(gòu)不要讓電機連著機構(gòu)跑太遠。最好把負載脫開只測電機本體的空載頻響這樣既安全又純粹。4. 實操過程與核心環(huán)節(jié)實現(xiàn)4.1 測試平臺的搭建與初始標定我這次實驗用了一臺額定電壓24V、額定電流2.1A、額定轉(zhuǎn)速3000rpm的直流有刷電機配一個2000線增量編碼器驅(qū)動器工作在電流環(huán)模式。整個測試平臺的接線如下控制板DAC輸出 → 驅(qū)動器電流指令輸入0~10V對應(yīng)-2.1A~2.1A編碼器A/B相 → 控制板正交解碼接口驅(qū)動器故障輸出 → 控制板數(shù)字輸入急停用硬件連線完成后第一件事不是測頻響而是做靜態(tài)標定。給電流指令一個已知的直流值比如1A看電機是否以穩(wěn)定的力矩趨勢運行再用測速儀驗證編碼器讀數(shù)是否正確。這個步驟看似浪費幾分鐘實際能幫你排除大量低級錯誤。標定的核心項目標定項目方法作用電流指令標定用萬用表測量驅(qū)動器電流監(jiān)視輸出對照指令電壓確認“幾伏對應(yīng)幾安”編碼器方向檢測手動正向轉(zhuǎn)動電機觀察計數(shù)方向防止閉環(huán)后正反饋轉(zhuǎn)速換算系數(shù)已知轉(zhuǎn)速下核對編碼器計數(shù)確認rpm到計數(shù)/s的換算因子4.2 步進正弦測試的執(zhí)行流程標定完成后我寫了一個簡單的Python腳本通過串口控制板切換工作模式。核心流程是這樣的第1步設(shè)定頻率點序列。我用的頻率點是[0.1, 0.2, 0.5, 1, 2, 3, 5, 8, 10, 15, 20, 30, 50, 80, 100] Hz。注意低頻段取了更多點因為機械系統(tǒng)的幅頻特性在低頻過渡帶變化劇烈需要更細的分辨率來捕捉轉(zhuǎn)折點。第2步逐個頻率點執(zhí)行測試。對每個頻率f先估算需要多少個周期才能讓系統(tǒng)進入穩(wěn)態(tài)。經(jīng)驗公式穩(wěn)態(tài)時間 2 / (2πf × 阻尼比)對于典型的直流電機系統(tǒng)阻尼比大約在0.2~0.5之間所以低頻時要等很長時間。0.1Hz時需要等約20~30秒才穩(wěn)定高頻段就快得多。為了平衡時間和精度我再取穩(wěn)態(tài)后的5~10個周期做數(shù)據(jù)記錄。第3步轉(zhuǎn)速數(shù)據(jù)處理。對記錄的轉(zhuǎn)速波形計算每個周期內(nèi)的峰值、零點和平均值然后把所有周期做平均消除隨機噪聲和諧波影響。這種做法本質(zhì)上是“時域同步平均”效果非常好。4.3 從時域數(shù)據(jù)到頻響曲線計算增益與相位這一步是整個項目中最核心的計算環(huán)節(jié)。對于每一個測試頻率f我們拿到了輸入電流信號I(t) A·sin(2πft) 和輸出轉(zhuǎn)速信號ω(t) B·sin(2πft φ)。通過以下方法提取B和φ增益 20·log10(B/A)單位是dB如果以轉(zhuǎn)速/電流為單位則變?yōu)閐B·(rpm/A)相位差φ單位是度實際操作中我是用Python的scipy.signal做的。具體來說用正弦擬合sine curve fitting比簡單FFT更精確import numpy as np from scipy.optimize import curve_fit def sine_func(t, amplitude, phase, offset): return amplitude * np.sin(2 * np.pi * freq * t phase) offset # 對每個頻率點做擬合 for freq in freq_list: # t 是時間向量omega 是轉(zhuǎn)速數(shù)據(jù) p0 [np.std(omega) * np.sqrt(2), 0.0, np.mean(omega)] popt, _ curve_fit(sine_func, t, omega, p0p0) amp_out popt[0] phase_out popt[1] # gain 20*log10(amp_out / amp_in)這里有一個重要的細節(jié)曲線擬合時一定要把直流偏移量offset也擬合出來。很多教程里默認信號均值為零但電機轉(zhuǎn)速因為摩擦的存在往往帶有一個非零的平均轉(zhuǎn)速如果不擬合offset振幅和相位都會出現(xiàn)偏差。4.4 我實測的一組數(shù)據(jù)和模型擬合結(jié)果整個頻段測完后我得到了一組典型的直流電機機械頻響數(shù)據(jù)。以1Hz為參考增益設(shè)為0dB部分實測數(shù)據(jù)如下頻率(Hz)實測增益(dB)實測相位(deg)模型增益(dB)模型相位(deg)0.1-0.2-3-0.1-20.5-1.1-15-1.2-141.00.0-250.0-262.0-1.5-48-1.6-475.0-8.0-75-8.3-7710.0-13.5-88-13.2-8720.0-18.0-92-17.5-9150.0-23.0-95-23.6-95這個數(shù)據(jù)形態(tài)非常典型低頻段增益基本平坦0dB在轉(zhuǎn)折頻率附近開始以約-20dB/decade的斜率下降相位從0度逐步向-90度逼近。這說明系統(tǒng)可以用一個一階慣性模型來近似轉(zhuǎn)子模型G(s) K / (τs 1)其中K是直流增益單位rpm/Aτ是機械時間常數(shù)。從數(shù)據(jù)里看到轉(zhuǎn)折頻率大約在0.8Hz左右對應(yīng)時間常數(shù)τ 1/(2π×0.8) ≈ 0.2s。直流增益K可以直接從低頻段的輸出轉(zhuǎn)速除以輸入電流得到比如在0.1Hz時輸入0.15A電流轉(zhuǎn)速穩(wěn)定在約500rpm則K ≈ 3333 rpm/A。把這兩個參數(shù)代回一階模型得到圖中的紅色曲線和實測數(shù)據(jù)對得非常好。這說明這臺電機本身沒有明顯的機械諧振——很多實際系統(tǒng)會在這里出現(xiàn)一個諧振峰如果有你就得把模型升級為二階系統(tǒng)并額外引入一個諧振頻率和阻尼比。4.5 如果測出諧振峰該怎么處理雖然我這次測試的電機沒出現(xiàn)明顯的諧振峰但干這一行總會遇到。電機裝上負載后聯(lián)軸器的彈性、皮帶的柔性、負載本身的轉(zhuǎn)動慣量都會引入諧振。我處理過一臺帶著同步帶的直流電機在25Hz處出現(xiàn)了一個6dB的諧振峰相位從-90度直接跳到-170度當時的閉環(huán)PID只要增益稍微調(diào)高一點就嘯叫。對于這種情況測出來的頻響曲線會很像一個“二階彈性能系統(tǒng)一階慣性系統(tǒng)”的組合。擬合模型時要加入一個諧振項G(s) K / ((τs1) · (s2/ωn2 2ζs/ωn 1))通過最小二乘法擬合諧振頻率ωn和諧振阻尼比ζ然后你就可以在控制器里加一個陷波濾波器Notch Filter專門在諧振頻率處把增益壓下去再穩(wěn)定地提高環(huán)路的整體增益。這在伺服驅(qū)動器的參數(shù)自整定功能里是非常常規(guī)的操作。5. 實操過程中踩過的坑問題排查與解決實錄5.1 轉(zhuǎn)速波形嚴重削頂激勵幅值過大的信號第一次做步進正弦測試時我在低頻段0.1Hz~0.5Hz發(fā)現(xiàn)轉(zhuǎn)速波形看起來像方波正弦的頂部和底部被“削平”了。這不是電機問題而是電流指令太猛轉(zhuǎn)速超出了正常運行范圍被驅(qū)動器限速或者電機反電動勢限制輸出被“限幅”了。解決方式很直接立即減小低頻段的電流激勵幅值。我用了一個可變的激勵安排低頻段幅值為額定電流的3%中頻段5%高頻段8%。這個安排的邏輯是低頻段電機的響應(yīng)增益高小信號就能產(chǎn)生足夠的轉(zhuǎn)速波動高頻段電機響應(yīng)衰減大需要更大的信號才不至于讓輸出幅度掉到噪聲里。5.2 相位曲線在某一點突然跳變180度方向反了測試過程中我還碰到過一個詭異的現(xiàn)象當頻率超過某個點后相位曲線突然從-170度跳到-350度看起來像是不連續(xù)的。后來分析才發(fā)現(xiàn)這根本不是什么物理現(xiàn)象——是因為在該頻率點輸出的轉(zhuǎn)速信號幅度太小有效信號和噪聲混在一起正弦擬合的相位結(jié)果不穩(wěn)定跳到了錯位。排查方法是看這個頻率點附近的相干性Coherence指標。相干性低于0.9的數(shù)據(jù)點基本上不可信。我處理的方式是在數(shù)據(jù)處理流程中加一道過濾凡是擬合殘差過大R20.95的頻率點自動標記為無效并提高激勵幅值重新補測一次。5.3 摩擦非線性導(dǎo)致低頻段增益偏差大低頻測量還有個老大難問題摩擦。0.1Hz時電機的速度很慢接近零速時摩擦從動摩擦過渡到靜摩擦表現(xiàn)為一個“粘滯”區(qū)。這會使得輸出轉(zhuǎn)速不再是平滑的正弦波而是帶有明顯的“平頂”和“死區(qū)”。這種情況下強行用正弦擬合會得到偏小的增益和偏大的相位滯后。解決辦法有幾個使用更大的電流幅值讓電磁力矩遠大于摩擦力矩壓縮非線性的相對影響。在測試前先做摩擦辨識補償把已知的庫侖摩擦力矩前饋補進去相當于在輸入端把摩擦抵消掉。只記錄穩(wěn)態(tài)部分的數(shù)據(jù)并且把所有數(shù)據(jù)段做周期平均盡量減少隨機干擾。我在這個項目里采用了第一種第三種組合效果足夠好了。5.4 高頻段數(shù)據(jù)被噪聲淹沒時的解決方案當頻率升到50Hz以上時電機的機械響應(yīng)已經(jīng)衰減得很厲害了轉(zhuǎn)速波動幅度可能只有1~2rpm而編碼器量化噪聲和機械震動噪聲在這個量級上是不可忽略的。這時候數(shù)據(jù)信噪比急劇下降幅頻曲線開始亂跳。我的應(yīng)對方案是增大正弦波的數(shù)據(jù)記錄長度而不是一味地增大激勵幅值。每一個高頻頻率點記錄100個周期再做同步平均這相當于把周期性的信號在時域里疊加100次而隨機噪聲按根號10010倍減弱。信噪比提高了20dB數(shù)據(jù)一下就清晰了。這個方法非常實用在強噪聲環(huán)境下做辨識時幾乎是必選項。5.5 常見問題速查表現(xiàn)象可能原因處理方法低頻段轉(zhuǎn)速波形削頂激勵幅值過大轉(zhuǎn)速超限降低低頻段電流幅值高頻段幅頻曲線亂跳信噪比不足增加記錄周期數(shù)并做同步平均相位曲線不連續(xù)信號過弱導(dǎo)致擬合相位翻轉(zhuǎn)提高該頻點幅值重測或標記無效相位曲線整體偏大輸入輸出時間戳不同步使用同一中斷里采集或離線對齊截止頻率處增益異常凸起存在機械諧振用二階諧振模型擬合考慮加陷波器1Hz以下增益明顯低于預(yù)測摩擦/死區(qū)非線性提高激勵幅值或加摩擦前饋補償6. 進一步擴展如何利用頻響結(jié)果優(yōu)化閉環(huán)控制6.1 根據(jù)頻響數(shù)據(jù)設(shè)計速度環(huán)增益測頻響并不是為了畫一張好看的圖而是為了給控制設(shè)計提供依據(jù)。以我實測的那臺電機為例它的頻響在0.8Hz處有一個轉(zhuǎn)折相位在10Hz附近已接近-90度。如果給速度環(huán)加一個PI控制器理論推導(dǎo)和經(jīng)驗都表明穿越頻率每接近其相位滯后-135度的頻率點系統(tǒng)就越接近不穩(wěn)定邊界。按照這個數(shù)據(jù)我很快算出了速度環(huán)帶寬的安全上限大約在10~15HzPI增益可以據(jù)此設(shè)定。再去跑實際閉環(huán)測試時一上來就落在了一個比較穩(wěn)的起點上后續(xù)只需要微調(diào)幾個參數(shù)就夠了。6.2 與離線仿真模型的交互驗證拿到實測頻響之后我還在MATLAB/Simulink里搭了一個仿真模型把真實測到的K和τ填進去對比了開環(huán)階躍響應(yīng)。實測和仿真基本吻合說明這個模型已經(jīng)足夠用于后續(xù)的控制器設(shè)計仿真。之后再改控制算法時就可以先在電腦上驗證少燒一堆硬件。6.3 從頻響辨識到參數(shù)自整定很多商用伺服驅(qū)動器里的“自動整定”功能底層邏輯就是這套東西給系統(tǒng)一個激勵信號測出頻率響應(yīng)自動辨識出模型參數(shù)再根據(jù)模型計算出最優(yōu)PID增益。你自己動手實現(xiàn)了這套測量流程之后就相當于掌握了一個簡易的“參數(shù)自整定儀”。以后遇到新電機或者新機構(gòu)只要跑一遍這個流程就能快速掌握它的“性格”再也不用憑感覺盲調(diào)了。最后再分享一個小的實操體會測頻響這件事第一次做可能會因為各種細節(jié)問題折騰一兩天但一旦把流程跑通后續(xù)再做任何電機項目的速度都很快。這套方法值得你花時間在實驗室里沉淀成自己的標準工具。