伺服電機遠程控制,基于CANopen的伺服控制模式的實現(xiàn)
針對伺服電機遠程控制接線復雜、控制單一、可靠性不高等問題, 提出利用CANopen通信協(xié)議、驅(qū)動子協(xié)議實現(xiàn)伺服電機控制的新方法。分析CANopen協(xié)議的對象字典和報文格式,詳細介紹了CANopen伺服控制狀態(tài)機各步驟的轉(zhuǎn)換以及實現(xiàn)CANopen協(xié)議下PP、PV、HM 3鐘伺服控制模式的報文設置。利用CAN卡和伺服驅(qū)動設備以及伺服驅(qū)動設備以及PC機構(gòu)建了實驗平臺, 在上位機界面通過報文設置成功實現(xiàn)了基于CANopen協(xié)議的伺服電機的PP、PV、HM的三種模式的控制。實臉結(jié)果表明利用協(xié)議的報文設置控制電機簡單易操作,通訊數(shù)據(jù)快速、可靠, 用戶通過上位機可以很好的實現(xiàn)對伺服電機的監(jiān)控。
整個控制系統(tǒng)由PC機、CANopen上位機、USBCAN適配器、伺服驅(qū)動設備構(gòu)成。CANopen通訊部分由DS301協(xié)議實現(xiàn),伺服控制部分由DSP402協(xié)議實現(xiàn)伺服驅(qū)動設備作為的從節(jié)點, 具有CANopen通訊功能, 負責電機的電流、轉(zhuǎn)速、位置等控制對象, 它通過通信接口與總線相連, 將信息傳送給計算機的上位機界面;上位機界面則根據(jù)從站的反饋信息通過USBCAN適配器對伺服驅(qū)動設備實現(xiàn)控制。
伺服控制模式:CANopen驅(qū)動及運動控制設備子協(xié)議DSP402對特性的描述要求非常準確,它不僅定義了驅(qū)動器的運行模式, 還定義了用于控制驅(qū)動器的狀態(tài)機。驅(qū)動器狀態(tài)機通過對象字典中的控制字6040來控制,并通過狀態(tài)字6041來讀取驅(qū)動器的狀態(tài)。
系統(tǒng)軟硬件實現(xiàn)
1)系統(tǒng)硬件搭建:本設計采用USBCAN和伺服驅(qū)動設備和PC機來搭建硬件平臺。伺服驅(qū)動控制芯片采用的是DSP的芯片。系統(tǒng)硬件搭建按以下步驟進行。首先在TI的開發(fā)環(huán)境中配置好的相關參數(shù), 并建立DS301工程項目, 完成CANopen協(xié)議通信程序的調(diào)試運行。項目調(diào)試成功之后下載到驅(qū)動器中, 在上位機界面中設置報文,測試SDO、PDO、NMT等通訊對象。測試結(jié)果正確則系統(tǒng)硬件搭建完成。
2)系統(tǒng)軟件設計:整個伺服控制的軟件設計在CCS中建立, 主要包括永磁同步電機的閉環(huán)控制程序和CANopen協(xié)議找的實現(xiàn)兩大部分。初始化部分程序主要完成DSP系統(tǒng)的初始化以及CANopen通訊的初始化。
初始化主要完成的工作如下:
初始化相關變量, 使能全局中斷, 進人伺服電機編碼器霍爾傳感器反饋UVW三路信號來判斷電機初始電角度位置。
初始化通訊的主要完成的工作如下:
設置從站節(jié)點地址和CAN通信波特率, 初始化各通對象, 完成各路的預定義映射, 最后進入通信處理程序。
3)伺服控制報文設置:CANopen報文結(jié)構(gòu)由11位的COB-ID以及最多8字節(jié)的數(shù)據(jù)域構(gòu)成。在上位機界面中通過NMT報文設置控制從站進入預作狀態(tài)或者運行狀態(tài), 再通過SDO報文設置伺服控制的各個參數(shù)( 速度、位置等)以及狀態(tài)機的各個狀態(tài)可以使電機按照不同控制模式運轉(zhuǎn)起來, 最后通過將電機的當前參數(shù)映射到PDO中, 讀取PDO報文的值得到電機當前值, 將其與設置值對比得到控制結(jié)果的正確性??刂茍笪娜坑蒘DO實現(xiàn)。
系統(tǒng)控制模式驗證
本系統(tǒng)的上位機界面由USBCAN的上位機界面及電機的監(jiān)控界面兩部分構(gòu)成, 其中USBCAN的上位機界面作為CANopen報文數(shù)據(jù)監(jiān)控界面,電機的監(jiān)控界面用VB2008開發(fā)。在上位機界面中通信波特率選用1Mbps伺服電機Node-ID設置為1,心跳周期為1s,TPDO發(fā)送周期為100ms,同時設置好電機電流環(huán)、位置環(huán)、速度環(huán)的參數(shù),將設置的報文依次輸入上位機界面的SDO控制,電機啟動并運行到報文中的設定值,電機手動遙控器顯示值與設定值一致, 同時上位機界面中報文顯示值也與設定值一致, 成功實現(xiàn)了伺服控制的控制在上位機界面中設置好報文值, 電機啟動。電機先加速運行, 達到設定的目標速度值后開始勻速運行, 直至達到設定的目標位置值就不再變化。上位機過程數(shù)據(jù)與電機監(jiān)控曲線變化一致。如果需要改變電機的位置值, 在上位機界面中依次輸人新的控制報文, 電機會根據(jù)設定值正轉(zhuǎn)或者反轉(zhuǎn), 繼續(xù)運行到新的位置。
PV模式電機首先加速到設定的目標速度值, 然后按照設疋值勾速運打。如果需要改變運行的速度, 同樣可在上位機界面中輸人新的速度值,加速時的變化如上所述。減速控制時, 電機減速直至速度為則停止。上位機數(shù)據(jù)變化與電機監(jiān)控曲線變化一致速度控制曲線
HM模式電機先加速到設定速度,然后尋找原點位置,找到原點后,電機回零,減速直至這時分別在上位機界面以及電機的手動遙控器伺服電機中査看電機的當前位置值, 都可以看到電機的當前設為說明電機回零操作完成。
以上實踐證明:系統(tǒng)運行可靠, 數(shù)據(jù)準確易分析,機先加速運行, 達到設定的目標速度值后開始勻速實時性好, 協(xié)議棧程序易植入。該方法可以擴展適用于多電機控制系統(tǒng), 而且的CANopen通信協(xié)議棧適用于所有設備, 工程應用非常廣泛。華科星免費提供伺服電機選型與技術支持!