基于DeviceNet協(xié)議的伺服系統(tǒng)設(shè)計
引言
DeviceNet作為基于現(xiàn)場總線技術(shù)的工業(yè)標(biāo)準(zhǔn)開放網(wǎng)絡(luò),為簡單的底層工業(yè)裝置和高層如計算機、PLC等設(shè)備之間提供連接。 DeviceNet應(yīng)用國際標(biāo)準(zhǔn)的控制局域網(wǎng)(CAN)協(xié)議,具有公開的技術(shù)規(guī)范和價廉的通信部件,使得其具有比其他現(xiàn)場總線低得多的開發(fā)費用。設(shè)備網(wǎng)采用總線供電方式,提供本質(zhì)安全技術(shù),廣泛適用于各種高可靠性應(yīng)用場合。
本文主要研究基于DeviceNet的伺服系統(tǒng)的軟硬件設(shè)計。通過CAN總線、單片機和高性能電機控制器ADMC401進行數(shù)據(jù)傳輸與控制,使伺服電機的性能更加穩(wěn)定,能更好更靈活地地應(yīng)用于數(shù)控系統(tǒng)中。
CAN總線和DeviceNet協(xié)議的實現(xiàn)
CAN總線協(xié)議及特點
控制器局域網(wǎng)CAN為串行通信協(xié)議,能有效地支持具有很高安全等級的分布實時控制。CAN的應(yīng)用范圍很廣,從高速的網(wǎng)絡(luò)到低價位的多路配線都可以使用CAN。在汽車電子行業(yè)中,使用CAN連接發(fā)動機控制單元、傳感器、防滑系統(tǒng)等,其傳輸速度可達1Mbps。同時,可以將CAN安裝在卡車本體的電子控制系統(tǒng)里,諸如車燈組、電氣車窗等,用以代替接線配線裝置。由于采用了許多新技術(shù)及獨特的設(shè)計,CAN總線與一般的通信總線相比,它的數(shù)據(jù)通信具有突出的可靠性、實時性和靈活性。其特點概括如下[1]:
l CAN為多主方式工作,網(wǎng)絡(luò)上任一節(jié)點可在任意時刻主動地向網(wǎng)絡(luò)上其他節(jié)點發(fā)送信息,而不分主從;
l 在報文標(biāo)識符上,CAN上的節(jié)點分成不同的優(yōu)先級,可滿足不同的實時要求,優(yōu)先級高的數(shù)據(jù)最快可在134us內(nèi)得到傳輸;
l CAN采用非破壞總線仲裁技術(shù)。當(dāng)多個節(jié)點同時向總線發(fā)出信息出現(xiàn)沖突時,優(yōu)先級較低的節(jié)點主動退出發(fā)送,而最高優(yōu)先級的節(jié)點可不受影響地繼續(xù)傳輸數(shù)據(jù),從而大大節(jié)省了總線沖突仲裁時間。尤其在網(wǎng)絡(luò)負(fù)載很重的情況下,不會出現(xiàn)網(wǎng)絡(luò)癱瘓情況(以太網(wǎng)則可能)。
DeviceNet協(xié)議及特點
DeviceNet是在1994年由美國的Allen Bredly公司開發(fā)的是基于CAN的一種現(xiàn)場總線,實現(xiàn)低成本高性能的工業(yè)設(shè)備的網(wǎng)絡(luò)互連。DeviceNet協(xié)議特別為工廠自動控制而定制,它在美國和亞洲扮演了非常重要的角色。在歐洲,越來越多的系統(tǒng)方案使用DeviceNet來實現(xiàn)。
DeviceNet規(guī)范在2002年12月被國家標(biāo)準(zhǔn)化管理委員會批準(zhǔn)為中國的國家標(biāo)準(zhǔn),于2003年4月開始實施。DeviceNet協(xié)議適用于最低層的現(xiàn)場總線,例如:過程傳感器、執(zhí)行器、閥組、電動機起動器、條形碼讀取器、變頻驅(qū)動器、面板顯示器、操作員接口和其他控制單元的網(wǎng)絡(luò)??赏ㄟ^ DeviceNet連接的設(shè)備包括從簡單的擋光板到復(fù)雜的真空泵各種半導(dǎo)體產(chǎn)品。DeviceNet也是一種串行通信鏈接,可以減少昂貴的硬接線。 DeviceNet所提供的直接互連性不僅改善了設(shè)備間的通信,而且同時提供了相當(dāng)重要的設(shè)備級診斷功能,這是通過硬接線I/O接口很難實現(xiàn)的。 DeviceNet具有多種特點[2]:
l DeviceNet基于CAN技術(shù)用于PLC與現(xiàn)場設(shè)備之間的通信網(wǎng)絡(luò)。它可連接開關(guān)、變頻調(diào)速設(shè)備、固態(tài)過載保護裝置、條形碼閱讀器、I/O和人機界面等,傳輸速率為125~500kbps;
l DeviceNet使用的通信模式是:消息產(chǎn)生者(Producer)和消息使用者(Consumer)。傳統(tǒng)的通信在消息傳送上采用的技術(shù)式指定數(shù)據(jù)源和目標(biāo)地址。DeviceNet使用的模型更為有效,它可使控制數(shù)據(jù)同時到達控制的每一個單元,可以更有效地利用網(wǎng)絡(luò)的頻帶寬度。消息產(chǎn)生者一次發(fā)送的數(shù)據(jù)可被多個消息使用者使用,從而更有效的傳送數(shù)據(jù);
l DeviceNet使用的通信協(xié)議為11位標(biāo)識符,即所有的I/O消息都有自己的11位標(biāo)識符ID,標(biāo)識符ID分成四個消息組,各有不同用途ID中同時提供了多重優(yōu)先權(quán)。工作時,總線上的設(shè)備監(jiān)聽網(wǎng)絡(luò)上消息,當(dāng)設(shè)備辨識出正確的標(biāo)識符后,將接受該消息;
l DeviceNet上的每一個設(shè)備可以隨時連接或斷開,而不會影響其他設(shè)備的正常運行。真正的開放性使系統(tǒng)擴充和改型非常方便。
控制系統(tǒng)的構(gòu)成
為了實現(xiàn)伺服系統(tǒng)的快速實時控制,系統(tǒng)在設(shè)計上采用了單片機+DSP雙CPU結(jié)構(gòu)。在設(shè)計時將系統(tǒng)控制任務(wù)進行了劃分:DSP完成實時性要求高的伺服控制任務(wù),FLASH結(jié)構(gòu)的8位單片機89C51完成實時性要求比較低的管理任務(wù),單片機和DSP之間的通訊采用并行數(shù)據(jù)方式,由FPGA實現(xiàn)。同時 FPGA還要完成外部I/O信號管理、位置脈沖指令信號處理及計數(shù)、故障信號處理等功能。伺服控制系統(tǒng)的結(jié)構(gòu)如圖1所示。由圖1可以看出,系統(tǒng)主要有以下幾部分:伺服控制中心ADMC401;外設(shè)接口FPGA+單片機89C51;主電路以及開關(guān)電源電路[3]。下面分別說明。
DeviceNet通信接口部分
本文所設(shè)計的DeviceNet接口電路中,采用AT89C51ED2作為節(jié)點的微處理器,在CAN總線通信接口中,CAN通信控制器采用SJA1000,CAN總線驅(qū)動器采用82C250。
圖2為DeviceNet接口電路原理圖。從圖2中可以看出,電路主要由4部分構(gòu)成:微控制器89C51、獨立CAN通信控制器SJA1000、 CAN總線收發(fā)器82C250和高速光電耦合器6N137。微處理器89C51負(fù)責(zé)SJA1000的初始化,通過控制SJA1000實現(xiàn)數(shù)據(jù)的接收和發(fā)送等通信任務(wù)。
為了增強CAN總線節(jié)點的抗干擾能力,SJA1000的TX0和RXO并不是直接與82C250的TXD和RXD相連,而是通過高速光耦 6N137后與82C250相連,這樣就很好的實現(xiàn)了總線上各CAN節(jié)點間的電氣隔離,從而保護了系統(tǒng)電路以及總線的信號傳輸。從整體性能來說,系統(tǒng)設(shè)計具有很好的通用性和實用性。
微控制器AT89C51ED2用來實現(xiàn)通訊的應(yīng)用層協(xié)議。它具有豐富的內(nèi)存資源,4個8位I/O端口、3個16位定時/計數(shù)器、256字節(jié)暫存 RAM、9個中斷源、4個優(yōu)先級,此外還有2K EEPROM空間,系統(tǒng)不需要擴展外部程序存儲器便可滿足DeviceNet協(xié)議程序的容量要求。并且能夠在&TImes;2模式(6個時鐘/機器周期)下工作運行,本文中的設(shè)計即是在&TImes;2模式下。單片機通過訪問SJA1000的寄存器來實現(xiàn)和上位機的通信。CAN控制器SJA1000的接收寄存器和發(fā)送寄存器用于暫時存放接收和發(fā)送的數(shù)據(jù)。單片機發(fā)送數(shù)據(jù)則通過設(shè)置SJA1000的命令寄存器發(fā)送命令位,接收數(shù)據(jù)是通過中斷方式實現(xiàn),SJA1000的INT引腳與AT89C51ED2的INT1引腳相連,使單片機能夠?qū)崟r響應(yīng)CAN的中斷請求。采樣周期2ms由 AT89C51ED2的定時器中斷產(chǎn)生。