閱讀 | 訂閱
閱讀 | 訂閱
控製係統

基於DeviceNet 協議的伺服係統設計

星之球激光 來源:電子技術應用2011-12-30 我要評論(0 )   

隨著電力電子技術、控製技術、網絡技術、計算機技術的發展,伺服係統也獲得了前所未有的發展機遇。伺服係統滲透在國民經濟中的各個(ge) 領域,如數控機床,激光加工,機器人...

隨著電力電子技術、控製技術、網絡技術、計算機技術的發展,伺服係統也獲得了前所未有的發展機遇。伺服係統滲透在國民經濟中的各個(ge) 領域,如數控機床,激光加工,機器人,大規模集成電路製造,辦公自動化設備以及軍(jun) 用武器隨動係統等等。伺服技術本身的發展趨勢是開放化、網絡化、智能化伺服係統。 

 

    DeviceNet作為(wei) 基於(yu) 現場總線技術的工業(ye) 標準開放網絡,為(wei) 簡單的底層工業(ye) 裝置和高層如計算機、PLC等設備之間提供連接。 DeviceNet應用國際標準的控製局域網(CAN)協議,具有公開的技術規範和價(jia) 廉的通信部件,使得其具有比其他現場總線低得多的開發費用。設備網采用總線供電方式,提供本質安全技術,廣泛適用於(yu) 各種高可靠性應用場合。 

    本文主要研究基於(yu) DeviceNet的伺服係統的軟硬件設計。通過CAN總線、單片機和高性能電機控製器ADMC401進行數據傳(chuan) 輸與(yu) 控製,使伺服電機的性能更加穩定,能更好更靈活地地應用於(yu) 數控係統中。 

    CAN總線和DeviceNet協議的實現 

    CAN總線協議及特點 

    控製器局域網CAN為(wei) 串行通信協議,能有效地支持具有很高安全等級的分布實時控製。CAN的應用範圍很廣,從(cong) 高速的網絡到低價(jia) 位的多路配線都可以使用CAN。在汽車電子行業(ye) 中,使用CAN連接發動機控製單元、傳(chuan) 感器、防滑係統等,其傳(chuan) 輸速度可達1Mbps。同時,可以將CAN安裝在卡車本體(ti) 的電子控製係統裏,諸如車燈組、電氣車窗等,用以代替接線配線裝置。由於(yu) 采用了許多新技術及獨特的設計,CAN總線與(yu) 一般的通信總線相比,它的數據通信具有突出的可靠性、實時性和靈活性。其特點概括如下[1]: 

    l CAN為(wei) 多主方式工作,網絡上任一節點可在任意時刻主動地向網絡上其他節點發送信息,而不分主從(cong) ; 

    l 在報文標識符上,CAN上的節點分成不同的優(you) 先級,可滿足不同的實時要求,優(you) 先級高的數據最快可在134us內(nei) 得到傳(chuan) 輸; 

    l CAN采用非破壞總線仲裁技術。當多個(ge) 節點同時向總線發出信息出現衝(chong) 突時,優(you) 先級較低的節點主動退出發送,而最高優(you) 先級的節點可不受影響地繼續傳(chuan) 輸數據,從(cong) 而大大節省了總線衝(chong) 突仲裁時間。尤其在網絡負載很重的情況下,不會(hui) 出現網絡癱瘓情況(以太網則可能)。 
    
    DeviceNet協議及特點 

    DeviceNet是在1994年由美國的Allen Bredly公司開發的是基於(yu) CAN的一種現場總線,實現低成本高性能的工業(ye) 設備的網絡互連。DeviceNet協議特別為(wei) 工廠自動控製而定製,它在美國和亞(ya) 洲扮演了非常重要的角色。在歐洲,越來越多的係統方案使用DeviceNet來實現。 

    DeviceNet規範在2002年12月被國家標準化管理委員會(hui) 批準為(wei) 中國的國家標準,於(yu) 2003年4月開始實施。DeviceNet協議適用於(yu) 最低層的現場總線,例如:過程傳(chuan) 感器、執行器、閥組、電動機起動器、條形碼讀取器、變頻驅動器、麵板顯示器、操作員接口和其他控製單元的網絡。可通過 DeviceNet連接的設備包括從(cong) 簡單的擋光板到複雜的真空泵各種半導體(ti) 產(chan) 品。DeviceNet也是一種串行通信鏈接,可以減少昂貴的硬接線。 DeviceNet所提供的直接互連性不僅(jin) 改善了設備間的通信,而且同時提供了相當重要的設備級診斷功能,這是通過硬接線I/O接口很難實現的。 DeviceNet具有多種特點[2]: 

    l DeviceNet基於(yu) CAN技術用於(yu) PLC與(yu) 現場設備之間的通信網絡。它可連接開關(guan) 、變頻調速設備、固態過載保護裝置、條形碼閱讀器、I/O和人機界麵等,傳(chuan) 輸速率為(wei) 125~500kbps; 

    l DeviceNet使用的通信模式是:消息產(chan) 生者(Producer)和消息使用者(Consumer)。傳(chuan) 統的通信在消息傳(chuan) 送上采用的技術式指定數據源和目標地址。DeviceNet使用的模型更為(wei) 有效,它可使控製數據同時到達控製的每一個(ge) 單元,可以更有效地利用網絡的頻帶寬度。消息產(chan) 生者一次發送的數據可被多個(ge) 消息使用者使用,從(cong) 而更有效的傳(chuan) 送數據; 

    l DeviceNet使用的通信協議為(wei) 11位標識符,即所有的I/O消息都有自己的11位標識符ID,標識符ID分成四個(ge) 消息組,各有不同用途ID中同時提供了多重優(you) 先權。工作時,總線上的設備監聽網絡上消息,當設備辨識出正確的標識符後,將接受該消息; 

    l DeviceNet上的每一個(ge) 設備可以隨時連接或斷開,而不會(hui) 影響其他設備的正常運行。真正的開放性使係統擴充和改型非常方便。 

    控製係統的構成 

    為(wei) 了實現伺服係統的快速實時控製,係統在設計上采用了單片機+DSP雙CPU結構。在設計時將係統控製任務進行了劃分:DSP完成實時性要求高的伺服控製任務,FLASH結構的8位單片機89C51完成實時性要求比較低的管理任務,單片機和DSP之間的通訊采用並行數據方式,由FPGA實現。同時 FPGA還要完成外部I/O信號管理、位置脈衝(chong) 指令信號處理及計數、故障信號處理等功能。伺服控製係統的結構如圖1所示。由圖1可以看出,係統主要有以下幾部分:伺服控製中心ADMC401;外設接口FPGA+單片機89C51;主電路以及開關(guan) 電源電路[3]。下麵分別說明。

    #p#分頁標題#e#

    DeviceNet通信接口部分 

    本文所設計的DeviceNet接口電路中,采用AT89C51ED2作為(wei) 節點的微處理器,在CAN總線通信接口中,CAN通信控製器采用SJA1000,CAN總線驅動器采用82C250。 

    圖2為(wei) DeviceNet接口電路原理圖。從(cong) 圖2中可以看出,電路主要由4部分構成:微控製器89C51、獨立CAN通信控製器SJA1000、 CAN總線收發器82C250和高速光電耦合器6N137。微處理器89C51負責SJA1000的初始化,通過控製SJA1000實現數據的接收和發送等通信任務。

    

    為(wei) 了增強CAN總線節點的抗幹擾能力,SJA1000的TX0和RXO並不是直接與(yu) 82C250的TXD和RXD相連,而是通過高速光耦 6N137後與(yu) 82C250相連,這樣就很好的實現了總線上各CAN節點間的電氣隔離,從(cong) 而保護了係統電路以及總線的信號傳(chuan) 輸。從(cong) 整體(ti) 性能來說,係統設計具有很好的通用性和實用性。 

    微控製器AT89C51ED2用來實現通訊的應用層協議。它具有豐(feng) 富的內(nei) 存資源,4個(ge) 8位I/O端口、3個(ge) 16位定時/計數器、256字節暫存 RAM、9個(ge) 中斷源、4個(ge) 優(you) 先級,此外還有2K EEPROM空間,係統不需要擴展外部程序存儲(chu) 器便可滿足DeviceNet協議程序的容量要求。並且能夠在×2模式(6個(ge) 時鍾/機器周期)下工作運行,本文中的設計即是在×2模式下。單片機通過訪問SJA1000的寄存器來實現和上位機的通信。CAN控製器SJA1000的接收寄存器和發送寄存器用於(yu) 暫時存放接收和發送的數據。單片機發送數據則通過設置SJA1000的命令寄存器發送命令位,接收數據是通過中斷方式實現,SJA1000的INT引腳與(yu) AT89C51ED2的INT1引腳相連,使單片機能夠實時響應CAN的中斷請求。采樣周期2ms由 AT89C51ED2的定時器中斷產(chan) 生。 

    電機控製部分 

    伺服電機控製電路部分采用高性能電機控製器ADMC401,它是美國模擬器件公司(ADI)推出DSP芯片中的高檔產(chan) 品。ADMC401是麵向電機控製的高性能數字信號處理器,它以ADSP-2171為(wei) 內(nei) 核,輔以完備的電機控製外設。其中包括8路12位A/D轉換係統、三相16位PWM產(chan) 生單元、兩(liang) 路輔助PWM輸出及用於(yu) 位置反饋的增量式碼盤接口。另外ADMC401還包括12路數字I/O口、事件捕獲單元及內(nei) 部定時器等設施,為(wei) 開發快速、高精度的電機控製係統提供了完善的硬件設施。 

    ADMC401內(nei) 部提供了2K×24位的內(nei) 部程序RAM、2K×24位的內(nei) 部程序ROM和1K×16位的內(nei) 部數據RAM;程序及數據RAM的內(nei) 容可由其串口從(cong) 外部ROM中以同步或異步方式調入。為(wei) 了滿足實際工程的需要,ADMC401還提供了外部存儲(chu) 器的擴展能力,用戶最多可以直接尋址片外 14K×24位的程序存儲(chu) 器和13K×16位的數據存儲(chu) 器[4]。ADMC401是整個(ge) 伺服係統的核心,具有高速的運算能力、較高的采樣精度,外設配置性能和功能較強,能勝任實時性要求高的伺服控製任務。本係統用它來實現矢量變換、電流環、速度環、位置環控製以及PWM信號發生、各種故障保護處理等。 

    係統軟件設計 

    上位機軟件設計 

    上位機主控計算機是整個(ge) 係統的核心,通過CAN接口卡與(yu) CAN總線相連,負責係統的管理、運動規劃以及通訊功能。其上位PC機軟件設計包括網絡管理,參數管理,狀態管理三個(ge) 部分。 

    l 網絡管理 設置CAN接口卡工作波特率和本機節點地址,同時初始化CAN控製器SJA1000,以及DeviceNet各個(ge) 對象類,並且檢查此網絡中是否設置重複的節點地址。因為(wei) PC機的CAN卡初始化要涉及CAN卡與(yu) PC機的聯係工作,所以要對CAN通訊適配卡的各個(ge) 寄存器進行配置,設置中斷向量、通信波特率和濾波接收碼以及中斷屏蔽字等參數,為(wei) 正常通訊做好準備工作。另外此部分還要完成掃描網絡中的節點,並與(yu) 從(cong) 機節點建立連接的功能。 DeviceNet是麵向連接的網絡,兩(liang) 個(ge) 節點之間首先建立連接然後才能夠通訊,本設計中隻采用僅(jin) 限組2的從(cong) 設備建立連接,其建立連接是通過“分配預定義(yi) 主/從(cong) 連接組”來完成的。 

    l 參數管理 完成伺服係統的各個(ge) 參數字或者控製字的讀取修改工作,這些參數包括伺服電機的內(nei) 部參數Kp、Ki、Kd等以及針對雷達係統的參數: 雷達扇掃中心角度、扇掃範圍、扇掃速度、手輪方式中的手輪與(yu) 天線的轉速比、運行模式選擇(第26號參數,其中0—手輪方式,1—勻速掃描方式,2—扇掃方式,4—接收停方式)。一般情況下,對各個(ge) 控製字參數的讀寫(xie) 操作類似於(yu) 對各個(ge) 參數的讀寫(xie) 操作。在本設計中為(wei) 了簡化軟件設計,我們(men) 可以對31號參數的讀寫(xie) 操作來完成對16個(ge) 控製字的讀寫(xie) 操作,實現過程如下:第31號參數為(wei) 控製字參數,是由16個(ge) 控製字按照STA-15至STA-0順序組合而成的一個(ge) 整型數,這樣對控製字參數的讀寫(xie) 操作的同時也就完成了對16個(ge) 控製字的讀寫(xie) 操作。 

    l 狀態管理 能夠反應伺服電機當前的運動狀態,如實際位置,速度指令,力矩反饋,速度反饋,指令偏差等。這樣給我們(men) 觀察伺服電機當前狀態提供了一個(ge) 直觀方便的平台。 

    下位機軟件設計 

    下位機通信部分的單片機完成I/O數據過程的自動控製作業(ye) ,包括輸入輸出數據的解包下發、打包上傳(chuan) ,以及故障事件記錄、報警等工作。通信卡采用定時中斷方式與(yu) CAN總線的控製卡節點頻繁地交換各自通信緩衝(chong) 區的數據,以確保係統I/O數據的實時性,同時縮短了整個(ge) 係統響應時間。圖3示出程序框圖。#p#分頁標題#e#

    

    下位機初始化完成後,則進入等待中斷狀態。下位機的通訊過程是通過單片機訪問CAN控製器寄存器來實現的,單片機對CAN控製器的寄存器訪問是作為(wei) 單片機的外部存儲(chu) 器訪問的,每個(ge) 寄存器的地址為(wei) SJA1000的首地址與(yu) SJA1000內(nei) 部相對地址之和。單片機采用中斷方式接收數據。CAN控製器 SJA1000接收到上位機的數據並且當接收緩衝(chong) 區有空餘(yu) 空間時,接收的數據被依次放在SJA1000的接收緩衝(chong) 區中,這是有硬件自動完成的。當調用清除命令清除接收寄存器中的數據後,FIFO接收緩衝(chong) 區會(hui) 把數據填充到已清空的接收寄存器中,同時回答一個(ge) 中斷信號。單片機把這個(ge) 中斷信號作為(wei) 單片機的外部接收中斷,單片機響應接收中斷後讀出CAN控製器中的接收緩衝(chong) 區數據並保存,再清空CAN控製器的接收寄存器。 

    在設計本係統軟件時, 開發工具使用Borland C++語言 。因Borland C++是一種可視化、麵向對象的C++程序設計語言快速開發工具,具有簡單直觀和功能強大的特點。在Borland C ++集成開發環境下,可以方便的編寫(xie) PC機的通訊程序。 

    以PC機A作為(wei) 主機,伺服驅動器和PC機B作為(wei) 網絡中的2個(ge) 節點,設置主機節點地址和通訊波特率後,對網絡進行掃描建立連接,可以正確掃描到兩(liang) 個(ge) 在線節點,如圖4是讀取伺服驅動器各個(ge) 參數值。

    

    結語 

    從(cong) CAN總線以及DeviceNet總線特點可以看出,它較傳(chuan) 統的串行通信,在硬件上可減少走線、易於(yu) 係統擴充或改型,在軟件上通信更加靈活、實時性更好、糾錯能力更強。這表明基於(yu) DeviceNet總線的運動控製係統有廣闊的應用前景。 

    本文所設計的運動控製係統將DeviceNet總線與(yu) 伺服電機驅動技術結合起來,實現了控製係統的全數字化。實際運行結果表明:本係統具有可靠性高、實時性好、易於(yu) 維護等特點,達到了設計所需的要求。 

    參考文獻 
    [1] 饒運濤.現場總線CAN原理與(yu) 應用技術.北京:北京航空航天大學出版社,2003 
    [2] DeviceNet網絡結構,廣州周立功單片機發展有限公司,www.zlgmcu.com 
    [3] 李葉鬆等.全數字交流永磁同步電機伺服係統設計.電力電子技術,2002,(6) 
    [4] ADI. Single-Chip ,DSP-Based High Performance Motor Controller ADMC401. Analog Devices ,1999.

轉載請注明出處。

免責聲明

① 凡本網未注明其他出處的作品,版權均屬於(yu) fun88网页下载,未經本網授權不得轉載、摘編或利用其它方式使用。獲本網授權使用作品的,應在授權範圍內(nei) 使 用,並注明"來源:fun88网页下载”。違反上述聲明者,本網將追究其相關(guan) 責任。
② 凡本網注明其他來源的作品及圖片,均轉載自其它媒體(ti) ,轉載目的在於(yu) 傳(chuan) 遞更多信息,並不代表本媒讚同其觀點和對其真實性負責,版權歸原作者所有,如有侵權請聯係我們(men) 刪除。
③ 任何單位或個(ge) 人認為(wei) 本網內(nei) 容可能涉嫌侵犯其合法權益,請及時向本網提出書(shu) 麵權利通知,並提供身份證明、權屬證明、具體(ti) 鏈接(URL)及詳細侵權情況證明。本網在收到上述法律文件後,將會(hui) 依法盡快移除相關(guan) 涉嫌侵權的內(nei) 容。

網友點評
0相關評論
精彩導讀