電液伺服系統控制器設計研究
若液壓油彈性模量βe = 7 ×108 Pa, 慣性負載質量mt = 2175 ×104 kg, 則液壓缸- 負載環節的固有頻率為:

由于該環節的粘性阻尼系數和涉及到的伺服閥流量- 壓力系數都較小, 取ξh = 012。則可得到液壓缸- 負載環節的傳遞函數為:

令控制系統采樣周期為011 s, 可得伺服閥的脈沖傳遞函數為:

3 基于DSP Builder的電液伺服系統PID控制器設計
3.1 控制系統結構設計
伺服控制器設計可以從與硬件完全無關的系統級開始, 首先利用Matlab強大的系統設計、分析能力和DSP Builder提供的模塊完成控制系統的結構設計。本文控制器采用位置式PID控制器, 在Simulink搭建如圖2所示的模型。

圖2 控制系統頂層Simulink模型
圖2中, 頂層模型中PID Controllor為PID控制子系統, Input為控制輸入端, Feedback 為反饋輸入端,Function1與Function2 分別為伺服閥及液壓缸- 負載的離散數學模型。值得注意的是PID 子系統中的Mask Type 必須設置為SubSystem AlteraBlockSet, 否則, 只能進行Simulink 仿真, 不能進行SingnalCom2p iler分析。PID控制子系統為實現PID算法部分, 其結構框圖如圖3所示。

圖3 PID子系統結構框圖
控制輸入端及反饋輸入端均采用了16 位精度。由于DSP Builder中尚不支持浮點數運算, 為了實現比例、積分、微分系數的精確可調, 在這里PID系數采用了位數轉換的方法, 先將PID系數取成整型, 先放大數據值到24位, 而在并行加法器運算單元后用IOBus中的總線轉換器單元對累加后的數據進行位數轉換為16位, 可表示1 /256 = 01003 9整數倍的浮點數, 實現FPGA中的浮點數運算。
3.2 控制系統仿真
在本例中采用PD控制, 取比例系數為1715, 微分系數為4, 相應地設置Kp = 1715 ×256 = 4 480,Kd = 4 ×256 = 1 024, 得系統的閉環階躍響應及正弦響應如圖4、5所示。

3.3 控制器的FPGA實現
雙擊ServoSystem 模型中的SingnalComp iler模塊,按照提示選擇器件、綜合及優化工具, 這里選擇EP2C8型 FPGA, 綜合工具選為QuartusⅡ, 優化方式選擇Balanced, 綜合考慮運算速度和耗費資源, 編譯生成 ServoSystem1qpf。在QuartusⅡ中打開ServoSys2tem1qpf, 可以看到SingnalCompiler 為自動生成的 VHDL語言源代碼。在QuartusⅡ中完成編譯適配過程,生成的pof文件及sof文件可直接用于FPGA的編程配置。配置好的控制器, Input 端接計算機給定值, Feed2back端接位移反饋A /D芯片, Output端接D /A輸出。
4 結論
筆者以FPGA的系統級設計工具DSP Builder設計帶鋼卷取電液伺服系統控制器為例, 介紹了現代DSP技術在電液伺服系統中的應用。該方法可以解決復雜控制算法在電液伺服系統實際應用中, 分立元件的局限性, 軟件實現的實時性、可靠性等方面的矛盾。由于有了像 DSP Builder這樣的系統級設計工具,設計是從與硬件完全無關的Matlab系統級仿真開始,因此便于傳統控制領域的工程師迅速地將算法級的構思應用于控制系統設計中, 從而可以將有限的精力專注于系統級算法的設計, 而避免陷入重復繁瑣的電路設計中去。可以預見, 隨著控制理論及電子技術的發展, 該方法在未來的電液伺服控制系統設計中將會得到廣泛應用。
pid控制相關文章:pid控制原理
pid控制器相關文章:pid控制器原理
評論