伺服控制系統大部分都采用傳統的硬件結構,控制算法比較固定,而且也無法實現不同工況下的高性能控制算法,難以滿足現代工業的需求。現階段迫切需要研制一種智能型、具有高可靠性、控制性能更加優秀的電液伺服系統。基于DSP與STM32的智能型伺服控制器具有軟硬件結合程度更加緊密、系統的智能化程度更高、可實現多種控制策略的優勢。本系統從實際的需求出發,結合精確數字PID控制算法和Fuzzy控制算法自身的優勢,組合成Fuzzy-PID控制算法,根據偏差的大小范圍選擇合適的控制算法進行調節。
本設計將兩款工控芯片—TI公司的浮點型DSP TMS320F28335和ST公司的ARM7升級版STM32F103RET6引入智能電液伺服系統,設計了基于DSP與STM32的智能型伺服控制器,使電液控制技術進一步朝向數字化、集成化、智能化、輕量化、高精度、高可靠性、節能降耗的方向持續發展。
1 硬件設計
1.1 硬件總體結構
本系統硬件主要由STM32F103RET6和TMS320F28335兩部分組成。STM32F103RET6主要控制外圍電路,包括輸入信號調理模塊、輸出信號調理模塊、A/D和D/A轉換模塊、硬件自檢測電路模塊、觸摸屏控制模塊、故障報警模塊;DSP芯片TMS320F28335主要完成算法的計算與以太網通信,包括外擴SRAM模塊、DM9000A以太網通信模塊、EEPROM存儲模塊。兩者通過SPI進行數據通信,包括各種參數、控制輸出量等。顯示模塊采用5.7寸電阻式觸摸屏,用于顯示各部分的工作狀態及運行情況,完成控制器各種參數的在線設定等人機交互。其硬件結構如圖1所示。
1.2 I/U變換電路
由于指令輸入信號和反饋信號都是4~20 mA直流信號,所以需要將其轉換成STM32F103RET6的A/D轉換器可接受的0~3 V直流電壓信號。圖2為I/U變換電路。
電阻R25輸入一個“-2.5 V”參考電壓,由“虛斷”可知,經過R25和R26電阻分壓后,在“1”點的電壓為:
所以U1=-0.1 V。由“虛短”可知,“2”點的電壓U2=U1=-0.1 V,所以當4~20 mA電流信號輸入后,“3”點的電壓U3=I×(R14+R16)-0.1,即U3=0.025×I-0.1。當I=4 mA時,U3=0 V;當I=20 mA時,U3=0.4 V,這樣就完成了4~20 mA到0~0.4 V的電流/電壓轉換。后級運放為同相比例運算放大器,放大倍數:
所以輸出電壓公式為UO=7.5×U3。當輸入為4 mA時,UO=0 V;當輸入為20 mA時,UO=7.5×0.4=3 V.經過兩級運放,完成了從4~20 mA電流信號向0~3 V電壓信號的轉換。
1.3 U/I變換電路
STM32F103RET6的D/A轉換輸出為0~3 V的直流電壓信號,要想驅動伺服閥,必須通過U/I變換,轉變成4~20 mA直流電流信號,如圖3所示。
由圖3可知,I0≈I3由“虛斷”和“虛短”可知:
其中,0≤V1≤3V,由于電阻阻值有誤差,為了保證電路能從0~3 V轉換為4~20 mA,特意將電阻R44設置為200 Ω的滑動變阻器,用以彌補電阻阻值誤差帶來的影響。
2 軟件設計
2.1 STM32主程序設計
待系統上電初始化完成后,首先執行故障自診斷程序,當STM32F103RET6(以下簡稱STM32)無故障且外圍硬件電路無故障時,啟動STM32內部A/D轉換器,對指令信號(或本地給定信號)與反饋信號進行采樣和模數轉換,并將采集的數據通過SPI通信傳給DSP進行運算。DSP再將計算結果通過SPI傳給STM32,STM32經過內部的D/A變換輸出模擬量來控制電液伺服閥,并可以通過觸摸屏查詢各種參數、輸出控制量的曲線圖,判斷計算偏差的大小。若偏差為0,則退出程序;反之,則繼續執行以上過程,直至偏差為0.系統工作的流程如圖4所示。
控制器的軟件設計采用模塊化編程方案,軟件由STM32部分和DSP部分組成,STM32部分包括了系統初始化子程序、A/D轉換子程序、D/A轉換子程序、系統自檢報警子程序、SPI通信子程序。DSP部分包括控制算法子程序、以太網通信子程序、EEPROM存儲子程序、SPI數據通信子程序、系統初始化設置子程序。
2.2 DSP主程序設計
DSP部分的主程序主要的功能是:與STM32進行SPI通信,將STM32采集的數據通過控制算法計算出控制輸出量和以太網通信。在主函數中,首先禁用DSP內部看門狗,初始化DSP時鐘;其次,初始化DSP各個內部模塊,然后禁用全局中斷,初始化中斷向量表,根據需求對中斷進行配置;待所有初始化完成后再打開全局中斷,最后程序進入無限循環等待SPI和以太網中斷。主程序流程圖如圖5所示。
3 系統測試
本系統設計了參數在線設定、故障自檢測等功能,在系統整體的測試過程中,液晶顯示出故障的部分。經過各項測試,測試結果表明該控制器運行可靠,具備良好的穩態性能和動態品質,能夠獲得精密且實時的控制效果。表1為伺服控制器瞬時測試結果。
其測試條件為:本地控制工作模式下,輸入信號均為4~20 mA,且伺服閥為正作用,位置反饋為正作用。根據伺服閥電流的變化趨勢來確認控制算法是否正確,在整個測試過程中,當指令信號小于反饋信號時。伺服閥電流呈現減小變化的趨勢;當指令信號大于反饋信號時,伺服閥電流呈現增大變化的趨勢。根據變化趨勢得出控制算法符合實際的調節規律。本伺服控制器的線性擬合度可達到0.078%,能完全滿足線性擬合度優于0.1%的要求,完全達到了預期設定的目標。
結語
本課題根據電液伺服控制系統的性能要求,研制了一款采用32位浮點DSP芯片TMS320F28335和Cortex-M3為內核的ARM芯片STM32F103RE T6為控制核心的智能伺服控制器,并且通過系統測試證明了本控制器的穩定性、可靠性及實用性。
-
dsp
+關注
關注
552文章
7962瀏覽量
348273 -
芯片
+關注
關注
453文章
50406瀏覽量
421843 -
控制器
+關注
關注
112文章
16203瀏覽量
177415
發布評論請先 登錄
相關推薦
評論