• <blockquote id="fficu"><optgroup id="fficu"></optgroup></blockquote>

    <table id="fficu"></table>

    <sup id="fficu"></sup>
    <output id="fficu"></output>
    1. 20240703
      關(guān)注中國自動(dòng)化產(chǎn)業(yè)發(fā)展的先行者!
      工業(yè)智能邊緣計算2024年會(huì )
      2024
      2024中國自動(dòng)化產(chǎn)業(yè)年會(huì )
      2023年工業(yè)安全大會(huì )
      OICT公益講堂
      當前位置:首頁(yè) >> 資訊 >> 行業(yè)資訊

      資訊頻道

      基于EtherCAT的多軸運動(dòng)控制器研究
      • 作者:劉艷強
      • 點(diǎn)擊數:3862     發(fā)布時(shí)間:2008-08-21 18:54:00
      • 分享到:
        摘 要:EtherCAT是一種新型的實(shí)時(shí)工業(yè)以太網(wǎng)現場(chǎng)總線(xiàn)。本文研究了EtherCAT技術(shù)的原理、技術(shù)特點(diǎn)、性能以及EtherCAT主站和從站的實(shí)現方法。并在此基礎上實(shí)現了一種基于EtherCAT的多軸運動(dòng)控制器,用于數控設備和工業(yè)機器人的控制。   關(guān)鍵詞:實(shí)時(shí)工業(yè)以太網(wǎng) EtherCAT 伺服控制器
      關(guān)鍵詞:

        基于工業(yè)以太網(wǎng)的運動(dòng)控制器在工業(yè)機器人、數控機床和機電一體化加工和測試設備中獲得了廣泛應用。由于以太網(wǎng)通信速度快、數據量大等特點(diǎn)使運動(dòng)控制性能得到了極大的提升。EtherCAT(Ethernet for Control Automation Technology)技術(shù)(也稱(chēng)為以太網(wǎng)現場(chǎng)總線(xiàn))是德國B(niǎo)ECKHOFF公司提出的實(shí)時(shí)工業(yè)以太網(wǎng)技術(shù),它基于標準的以太網(wǎng)技術(shù),具備靈活的網(wǎng)絡(luò )拓撲結構,系統配置簡(jiǎn)單,具有高速、高有效數據率等特點(diǎn),其有效數據率可達90%以上,全雙工特性完全得以利用。本文設計和實(shí)現了基于EtherCAT的伺服控制器從站,每個(gè)從站可以最多控制8個(gè)伺服軸。

        1 EtherCAT技術(shù)介紹

        1.1 EtherCAT系統組成和工作原理

        EtherCAT采用主從式結構,主站PC機采用標準的100Base-TX以太網(wǎng)卡,從站采用專(zhuān)用芯片。系統控制周期由主站發(fā)起,主站發(fā)出下行電報,電報的最大有效數據長(cháng)度為1498字節。數據幀遍歷所有從站設備,每個(gè)設備在數據幀經(jīng)過(guò)時(shí)分析尋址到本機的報文,根據報文頭中的命令讀入數據或寫(xiě)入數據到報文中指定位置,并且從站硬件把該報文的工作計數器(WKC)加1,表示該數據被處理。整個(gè)過(guò)程會(huì )產(chǎn)生大約10ns的時(shí)間延遲[1]。數據幀在訪(fǎng)問(wèn)位于整個(gè)系統邏輯位置的最后一個(gè)從站后,該從站把經(jīng)過(guò)處理的數據幀做為上行電報直接發(fā)送給主站。主站收到此上行電報后,處理返回數據,一次通信結束。系統結構原理圖如圖1所示:

        EtherCAT支持幾乎所有的拓撲類(lèi)型,包括線(xiàn)型、樹(shù)型、星型等,其在物理層可使用100BASE-TX雙絞線(xiàn)、100BASE-FX光纖或者 LVDS(Low Voltage Differential Signaling, 即低壓差分信號傳輸),還可以通過(guò)交換機或介質(zhì)轉換器實(shí)現不同以太網(wǎng)布線(xiàn)的結合??焖僖蕴W(wǎng)的物理層(100Base-TX)允許兩個(gè)設備之間的最大電纜長(cháng)度為100米,而LVDS的物理層只能保障10米的傳輸間距,適合于近距離站點(diǎn)的連接。整個(gè)網(wǎng)絡(luò )最多可以連接65535個(gè)設備。

        

       

        借助于從站中的EtherCAT專(zhuān)用芯片和主站中讀取網(wǎng)卡數據的DMA技術(shù),整個(gè)協(xié)議處理過(guò)程都在硬件中進(jìn)行。EtherCAT系統可以在30μs內刷新1000個(gè)I/O點(diǎn),它可以在300μs內交換一幀多達1486個(gè)字節的協(xié)議數據,這幾乎相當于12000個(gè)數字量輸入或輸出??刂?00個(gè)輸入輸出數據均為8字節的伺服軸只需要100μs[2]。EtherCAT的高性能使它還可以處理分布式驅動(dòng)器的電流(轉矩)控制。

        1.2 EtherCAT數據幀結構

        EtherCAT以標準以太網(wǎng)技術(shù)為基礎,在MAC(媒體訪(fǎng)問(wèn)層)增加了一個(gè)確定性調度的軟件層,該軟件層實(shí)現了通信周期內的數據幀的傳輸。EtherCAT采用標準的IEEE802.3以太網(wǎng)幀,幀結構如圖2,各部分含義見(jiàn)表1:

        

       

        表1 幀結構含義
       


       

        表2 子報文結構含義
       



      EtherCAT沒(méi)有重新定義新的以太網(wǎng)幀結構,而是在標準以太網(wǎng)幀結構中使用了一個(gè)特殊的以太網(wǎng)幀類(lèi)型0x88A4,采用這種方式可以使控制數據 直接寫(xiě)入以太網(wǎng)幀內,并且可以與遵守其它協(xié)議的以太網(wǎng)幀在同一網(wǎng)絡(luò )中并行。一個(gè)EtherCAT幀中可以包含若干個(gè)EtherCAT子報文,報文結構如圖3,各部分含義見(jiàn)表2,每個(gè)報文都服務(wù)于一塊邏輯過(guò)程映像區的特定內存區域,由FMMU(Fieldbus Memory Management Unit,負責邏輯地址與物理地址的映射)寄存器和SM(Sync Manager,負責對ESC和微處理器內存的讀寫(xiě))寄存器定義,該區域最大可達4GB字節。EtherCAT報文由一個(gè)16位的WKC(Working Count)結束,其數據區最大長(cháng)度可達1486個(gè)字節。在報文頭中由8位命令區數據決定主站對從站的尋址方式,由于數據鏈獨立于物理順序,因此可以對EtherCAT從站進(jìn)行任意的編址。

        EtherCAT于2005年2月正式成為IEC規范-IEC/PAS 62407。除此之外,EtherCAT技術(shù)也將集成到國際現場(chǎng)總線(xiàn)標準的下一代標準IEC61158和IEC61800-7(電子功率可調速驅動(dòng)系統框架與接口)之中。國際標準組織(ISO)已將EtherCAT納入ISO15745標準。EtherCAT技術(shù)引起了自動(dòng)化技術(shù)領(lǐng)域的廣泛關(guān)注,并于2003年成立了EtherCAT技術(shù)組織,簡(jiǎn)稱(chēng)ETG。到目前為止,ETG組織成員已超過(guò)500個(gè)。

        2 EtherCAT技術(shù)的實(shí)現

        2.1 EtherCAT主站的實(shí)現

        EtherCAT技術(shù)在主站方面只需在一塊標準的NIC網(wǎng)卡,主站功能完全由軟件實(shí)現。EtherCAT可以用一個(gè)以太網(wǎng)幀發(fā)送1486字節的有效數據,所以在通常情況下,每個(gè)通信周期只需要一個(gè)或兩個(gè)幀就能完成所有結點(diǎn)的全部通信。EtherCAT主站程序應該包含以下幾個(gè)方面:

        (1) 讀取XML配置文件,根據配置文件信息構造主站與從站設備;

        (2) 管理EtherCAT從站,發(fā)送配置文件中定義的初始化幀,初始化從站,為通信做準備;

        (3) 使用郵箱操作實(shí)現非周期性數據傳輸,配置系統參數,處理通信過(guò)程中某些偶然性事件;

        (4) 實(shí)現過(guò)程數據通信,完成主站與從站之間的實(shí)時(shí)數據交換,達到主站控制從站運行,并處理從站實(shí)時(shí)狀態(tài)的功能。

        主站代碼結構圖如圖4:

        

       

        應用程序開(kāi)發(fā)環(huán)境是VC++6.0,通信周期由多媒體定時(shí)器控制,其控制精度可達到1ms,可根據控制需要設定通信周期,實(shí)現控制要求。

        2.2 EtherCAT從站的實(shí)現

        可以利用BECKHOFF公司開(kāi)發(fā)的從站控制器ESC(EtherCAT Slave Controller)根據實(shí)際需要設計從站設備。從站硬件示意圖如圖5。

        從站控制器與主站交換兩種形式的數據,一種是周期性數據,一種是非周期性數據,周期性數據傳輸可以采用緩沖區方式,任何一方在任何時(shí)間都可以訪(fǎng)問(wèn)此方式定義的內存,得到最新數據;非周期性數據傳輸采用握手方式(郵箱方式)實(shí)現,一方寫(xiě)入數據到定義的內存,只有完成定義內存的最后一個(gè)字節的寫(xiě)入,另一方才能開(kāi)始從定義內存中讀出數據,而且只有在讀出定義內存的最后一個(gè)字節數據后,才能重新寫(xiě)入數據。

        

       

        3EtherCAT伺服控制器原理

        3.1系統概述

        本文設計和實(shí)現了基于EtherCAT的多軸運動(dòng)控制器,如圖6a所示,一個(gè)EtherCAT主站通過(guò)EtherCAT協(xié)議可以連接若干從站運動(dòng)控制器單元,一個(gè)運動(dòng)控制器單元由從站控制底板、通信卡和1~8塊運動(dòng)控制卡組成,每個(gè)運動(dòng)控制卡控制一個(gè)伺服軸。從站運動(dòng)控制單元實(shí)物如圖6b所示。

        

       

        

       

        從站控制底板采用Atmega128芯片作為處理器,通信卡使用BECKHOFF公司提供的ESC20控制器,運動(dòng)控制卡為一種多功能的位置控制卡,可以完成位置控制和速度控制

        3.2 數據通信

        本系統在應用層自定義了數據模塊結構,模塊數據分為兩種,一種是指令數據模塊,由主站寫(xiě)給從站,控制伺服運動(dòng),一種是狀態(tài)數據模塊,主站從從站讀取,表示伺服軸狀態(tài)反饋。一個(gè)運動(dòng)控制卡使用一個(gè)指令數據模塊和一個(gè)狀態(tài)數據模塊,每個(gè)EtherCAT子報文由從站上的所有運動(dòng)控制卡的數據模塊組成,如圖7所示。

        

       

        每個(gè)數據模塊包含10個(gè)字節,指令數據模塊分別定義為數據模塊頭、控制字和指令數據區,狀態(tài)數據模塊分別定義為數據模塊頭、狀態(tài)字和狀態(tài)數據區。

        數據模塊頭使用2個(gè)字節,包括4位的運動(dòng)控制卡地址和3位工作方式。從站上的每個(gè)運動(dòng)控制卡分配不同的地址,從站根據數據模塊頭中的地址信息尋址相應的運動(dòng)控制卡,并根據工作方式控制運動(dòng)控制卡的工作。從站運動(dòng)控制卡可以工作在位置控制、速度控制、回參考點(diǎn)以及讀編碼器計數值等方式下。握手位用于工作方式切換時(shí)主站和從站之間的握手。

        指令數據模塊中,指令控制字使用2個(gè)字節,包括伺服使能控制、復位控制等伺服控制信息;指令數據使用6個(gè)字節,對應不同控制方式下的指令值,如位置指令數據、速度指令數據等。狀態(tài)數據模塊中,狀態(tài)字使用2個(gè)字節,包括伺服使能狀態(tài)及報警信息等反饋信息;狀態(tài)數據使用6個(gè)字節,對應于不同控制方式下的反饋值,例如位置控制下的實(shí)際位置值和當前跟隨誤差,速度控制方式下的實(shí)際速度值,I/O方式下的輸入值等。

        主站和從站之間進(jìn)行周期性的通信來(lái)完成伺服控制,其通信時(shí)序如圖8所示。數據幀傳輸完成后,從站在T1時(shí)刻前從通信控制卡讀取指令數據,并經(jīng)過(guò)運算后輸出到運動(dòng)控制卡;在T2時(shí)刻之前讀取運動(dòng)控制卡實(shí)際狀態(tài),并寫(xiě)入通信控制卡,等待下個(gè)數據幀讀取。

        

       

        3.3 運動(dòng)控制器固件程序設計

        運動(dòng)控制器固件程序實(shí)現EtherCAT協(xié)議的通信和設備卡的控制。系統運行分為兩個(gè)階段:

        初始化階段:建立主從站通信,包括主站分配ESC從站通信地址,初始化ESC相關(guān)寄存器,配置通信參數,為通信做準備,從站單片機從EEPROM讀入從站配置數據,配置伺服軸數、設置各伺服軸的狀態(tài)(是否參加通信)、通信周期等,從站在初始化階段還要配置通信類(lèi)型、初始狀態(tài)的工作方式及各通信參數變量等。

        周期運行階段:上位機PC按照協(xié)議及控制要求把控制字和指令數據發(fā)送到各個(gè)從站,從站單片機讀出數據并譯碼處理,同時(shí)采集各伺服軸的狀態(tài)反饋信息并填寫(xiě)狀態(tài)數據包。PC機收到返回的數據幀,讀取狀態(tài)數據報文中的信息并做相應的處理。程序流程圖如圖9所示。

        當從站單片機完成初始配置工作后,開(kāi)始進(jìn)入工作循環(huán),等侍EtherCAT數據幀的到來(lái),當數據幀到達ESC20控制器時(shí),ESC20接收數據幀,向控制芯片發(fā)出中斷,Atmega128單片機響應中斷讀出指令數據,處理后發(fā)送給動(dòng)動(dòng)控制卡,并檢測是否有狀態(tài)請求事件發(fā)生。如果狀態(tài)請求模塊數據到來(lái),程序讀取當前伺服狀態(tài)數據,寫(xiě)入狀態(tài)模塊數據結構,返回給主站,一次通信結束。

        

       

        4 結論

        本文設計了一種基于實(shí)時(shí)工業(yè)以太網(wǎng)協(xié)議EtherCAT的多軸運動(dòng)控制器。每個(gè)運動(dòng)控制器單元可以最多控制8個(gè)伺服軸,每個(gè)伺服軸可以進(jìn)行位置、速度、回參考點(diǎn)等控制。通過(guò)這種多軸運動(dòng)控制器可以在數控設備和工業(yè)機器人控制系統中利用EtherCAT技術(shù),提高控制性能。

        參考文獻:

        [1] 德國倍福公司.實(shí)時(shí)以太網(wǎng):I/O層超高速以太網(wǎng).工業(yè)以太網(wǎng)與現場(chǎng)總線(xiàn)

        [2] EtherCAT技術(shù)組.EtherCAT-以太網(wǎng)現場(chǎng)總線(xiàn)

        [3] 杜品圣.工業(yè)以太網(wǎng)技術(shù)的介紹和比較.儀器儀表標準化與計量.2005,5:16-19

        [4] 張?chǎng)?,李寶?工業(yè)以太網(wǎng)關(guān)鍵性技術(shù)研究.中國水運.2007.1第519821216卷

        [5] 陳曦,劉俊峰,付少波.工業(yè)以太網(wǎng)傳輸延時(shí)特性分析.計算機與信息技術(shù)

        作者介紹:?jiǎn)未簶s(1982—),女,漢族,山東省龍口市,北京航空航天大學(xué)機械工程及自動(dòng)化學(xué)院碩士研究生,研究方向為數字伺服和現場(chǎng)總線(xiàn)技術(shù)。

      熱點(diǎn)新聞

      推薦產(chǎn)品

      x
      • 在線(xiàn)反饋
      1.我有以下需求:



      2.詳細的需求:
      姓名:
      單位:
      電話(huà):
      郵件:
      欧美精品欧美人与动人物牲交_日韩乱码人妻无码中文_国产私拍大尺度在线视频_亚洲男人综合久久综合天

    2. <blockquote id="fficu"><optgroup id="fficu"></optgroup></blockquote>

      <table id="fficu"></table>

      <sup id="fficu"></sup>
      <output id="fficu"></output>