999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于STM32的EtherCAT從站的設(shè)計(jì)與實(shí)現(xiàn)

2016-08-04 06:51:54左振領(lǐng)何方李霄

左振領(lǐng),何方,李霄

(1.中國(guó)科學(xué)院大學(xué),北京 100049;2.中國(guó)科學(xué)院 沈陽(yáng)計(jì)算技術(shù)研究所,沈陽(yáng) 110168;3.沈陽(yáng)高精數(shù)控技術(shù)有限公司,沈陽(yáng) 110168)

?

基于STM32的EtherCAT從站的設(shè)計(jì)與實(shí)現(xiàn)

左振領(lǐng)1,2,何方2,3,李霄3

(1.中國(guó)科學(xué)院大學(xué),北京100049;2.中國(guó)科學(xué)院 沈陽(yáng)計(jì)算技術(shù)研究所,沈陽(yáng)110168;3.沈陽(yáng)高精數(shù)控技術(shù)有限公司,沈陽(yáng)110168)

摘要:介紹了EtherCAT的工作原理,設(shè)計(jì)了一種基于STM32和ET1100的EtherCAT從站。采用模塊化和層次化的開發(fā)方式能夠有效的改善設(shè)備的開發(fā)質(zhì)量、加快開發(fā)速度,為開發(fā)EtherCAT設(shè)備提供了一種便捷的途徑。文章分析了系統(tǒng)軟硬件設(shè)計(jì)方案,并通過(guò)實(shí)驗(yàn)對(duì)設(shè)備I/O功能、實(shí)時(shí)性能以及數(shù)據(jù)精確度進(jìn)行了測(cè)試,實(shí)驗(yàn)表明設(shè)備性能良好。目前該從站已在“藍(lán)天數(shù)控”系統(tǒng)中得到初步應(yīng)用。

關(guān)鍵詞:EtherCAT從站;ET1100;STM32

0引言

工業(yè)領(lǐng)域自動(dòng)化程度的不斷發(fā)展對(duì)現(xiàn)場(chǎng)總線的數(shù)據(jù)傳輸能力、實(shí)時(shí)性等都提出了更高的要求。以太網(wǎng)以其數(shù)據(jù)傳送能力強(qiáng),技術(shù)成熟度高,開發(fā)成本低等優(yōu)點(diǎn),受到工業(yè)控制現(xiàn)場(chǎng)總線領(lǐng)域的廣泛關(guān)注。將以太網(wǎng)應(yīng)用于工業(yè)自動(dòng)化領(lǐng)域成為工業(yè)控制現(xiàn)場(chǎng)總線技術(shù)的一個(gè)重要發(fā)展方向[1]。在此背景下,各大企業(yè)和科研機(jī)構(gòu)提出了多種基于以太網(wǎng)技術(shù)的現(xiàn)場(chǎng)總線設(shè)計(jì)方案,開發(fā)了各自的行業(yè)標(biāo)準(zhǔn)。在眾多設(shè)計(jì)方案中,EtherCAT工業(yè)以太網(wǎng)以其拓?fù)浣Y(jié)構(gòu)靈活,系統(tǒng)配置簡(jiǎn)單,開發(fā)成本低,性能卓越受到了越來(lái)越多的關(guān)注。

本文提出了一種使用德國(guó)BECKHOFF公司提供的從站控制專用芯片ET1100和STM32開發(fā)EtherCAT從站的實(shí)現(xiàn)方案。文章從系統(tǒng)軟硬件設(shè)計(jì)方案、設(shè)備測(cè)試等方面對(duì)該方案進(jìn)行了闡述。實(shí)驗(yàn)結(jié)果表明從站性能良好。

1EtherCAT簡(jiǎn)介

EtherCAT以標(biāo)準(zhǔn)的以太網(wǎng)技術(shù)為基礎(chǔ),在每個(gè)標(biāo)準(zhǔn)的以太網(wǎng)報(bào)文中嵌入一個(gè)或多個(gè)EtherCAT子報(bào)文,根據(jù)從站的設(shè)置,每個(gè)子報(bào)文可以尋址一個(gè)或多個(gè)從站,從而實(shí)現(xiàn)了在一個(gè)通信周期內(nèi)的多從站訪問(wèn)。EtherCAT網(wǎng)絡(luò)由主站和從站組成,采用主從模式介質(zhì)訪問(wèn)控制(MAC),主站發(fā)送以太網(wǎng)幀遍歷各個(gè)從站,從站采用”O(jiān)n The Fly“技術(shù),在報(bào)文傳輸不停止的情況下分析尋址到本站EtherCAT子報(bào)文,并根據(jù)報(bào)文中的命令讀取或插入數(shù)據(jù)。”O(jiān)n The Fly“技術(shù)由硬件來(lái)實(shí)現(xiàn),這就極大的縮短了從站的傳輸延遲,提高了網(wǎng)絡(luò)的實(shí)時(shí)性。遍歷完所有從站之后,經(jīng)過(guò)處理的數(shù)據(jù)幀從最后一個(gè)從站返回主站,主站根據(jù)返回的數(shù)據(jù)幀進(jìn)行校驗(yàn)處理,從而完成一次通信。

EtherCAT從站在物理層可以使用100BASE-TX雙絞線、100BASE-FX光纖和LVDS布線,并能夠利用交換機(jī)、轉(zhuǎn)換器實(shí)現(xiàn)多種布線模式的組合。EtherCAT網(wǎng)絡(luò)可以實(shí)現(xiàn)幾乎所有的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),如線形、樹形、菊花鏈型。每個(gè)EtherCAT網(wǎng)段最多可以支持65535個(gè)從站節(jié)點(diǎn)[2-4]。

高效的通信效率、靈活的拓?fù)浣Y(jié)構(gòu)、龐大的從站節(jié)點(diǎn)支持使得EtherCAT成為工業(yè)控制以太網(wǎng)的最佳解決方案之一。

2EtherCAT從站硬件設(shè)計(jì)

EtherCAT從站同時(shí)實(shí)現(xiàn)通信和控制應(yīng)用兩部分功能。本文選用ET1100專用從站芯片實(shí)現(xiàn)從站協(xié)議中的物理層和數(shù)據(jù)鏈路層通信,選用STM32F103ZET6解析通信信息,實(shí)現(xiàn)設(shè)備控制,如圖1所示。

2.1從站硬件設(shè)計(jì)

ET1100是德國(guó)BECKHOFF自動(dòng)化有限公司設(shè)計(jì)的EtherCAT從站控制專用芯片。ET1100包含4個(gè)物理通信端口,端口可以使用EBUS或MII模式通信,內(nèi)部含有8個(gè)FMMU(現(xiàn)場(chǎng)總線內(nèi)存管理單元)、8個(gè)SM(存儲(chǔ)同步管理單元)、8KB的DPRAM(雙端口RAM),ET1100支持64位分布式時(shí)鐘及看門狗。其中8KB的DPRAM可用于和應(yīng)用層CPU交換數(shù)據(jù)。

ET1100支持三種PDI(過(guò)程數(shù)據(jù)接口):32位數(shù)字量IO、串行接口SPI、8/16位異步/同步微處理器接口MCI。其中SPI和MCI用于連接外部CPU,組成復(fù)雜從站設(shè)備。本文采用16位異步微處理器接口[5]。

STM32F103ZET6是意法半導(dǎo)體(ST)公司出品,基于Cortex-M3核心的32位微控制器,芯片集成定時(shí)器,CAN,ADC,SPI,I2C,USB,UART等多種功能。有512KB片內(nèi)FLASH和64KB片內(nèi)RAM,支持可兼容SRAM,NOR和NAND Flash 接口的16位總線FSMC[6]。

本文中硬件設(shè)計(jì)采用模塊化的設(shè)計(jì)思想,設(shè)計(jì)實(shí)現(xiàn)了以STM32為中心的微處理器模塊和以ET1100為中心的ET1100模塊,兩個(gè)模塊之間基于FSMC和MCI接口進(jìn)行通信[7-8],ET1100和STM32的接口電路如圖1所示。

圖1 STM32和ET1100硬件接口電路圖

設(shè)計(jì)中從站使用FSMC的BANK1的區(qū)域3來(lái)控制ET1100,在該設(shè)計(jì)中ET1100的有效地址空間為0x68000000~0x68003000。最終設(shè)計(jì)的實(shí)物圖如圖2所示。

圖2 EtherCAT從站實(shí)物圖

3從站軟件設(shè)計(jì)

EtherCAT從站的軟件設(shè)計(jì)主要包括ET1100軟件設(shè)計(jì)和微處理器軟件設(shè)計(jì)。ET1100軟件設(shè)計(jì)就是把與硬件相符的XML配置文件燒寫到EEPROM中。微處理器的軟件設(shè)計(jì)主要通過(guò)操作ESC芯片實(shí)現(xiàn)應(yīng)用層協(xié)議,主要包括軟硬件初始化,通信狀態(tài)機(jī)處理、過(guò)程數(shù)據(jù)處理等。

3.1從站軟件總體設(shè)計(jì)和工作流程

從站軟件設(shè)計(jì)主要圍繞微處理器軟件設(shè)計(jì)展開。為了使軟件設(shè)計(jì)更為清晰,從站軟件設(shè)計(jì)采用層次化設(shè)計(jì)方案:上層軟件通過(guò)底層提供的接口調(diào)用獲取底層服務(wù),并通過(guò)接口向更上層軟件提供服務(wù),軟件層次如圖3所示[9-10]。

圖3 軟件層次結(jié)構(gòu)

(1)驅(qū)動(dòng)程序提供對(duì)相關(guān)硬件的控制,為上層提供硬件操作服務(wù)。其中FSMC驅(qū)動(dòng)控制ET1100芯片雙端口存儲(chǔ)區(qū)的讀寫,STM32通過(guò)該驅(qū)動(dòng)實(shí)現(xiàn)與ET1100的通信。

(2)EtherCAT協(xié)議棧通過(guò)調(diào)用驅(qū)動(dòng)程序接口獲得服務(wù)。主要包括三部分:EtherCAT狀態(tài)機(jī)、郵箱數(shù)據(jù)通信和過(guò)程數(shù)據(jù)通信。

(3)應(yīng)用程序通過(guò)調(diào)用EtherCAT協(xié)議棧提供的服務(wù)完成特定功能。如IO控制,周期數(shù)據(jù)處理。

從站軟件工作流程如圖4所示。

圖4 從站軟件工作流程

從站中微處理器模塊和ET1100模塊之間通過(guò)中斷的方式進(jìn)行通信。當(dāng)ET1100模塊接收到主站發(fā)送過(guò)來(lái)的數(shù)據(jù)時(shí),ET1100模塊向微處理器模塊發(fā)送中斷,處理模塊從ET1100中獲取數(shù)據(jù),并完成控制任務(wù)。當(dāng)從站有數(shù)據(jù)要發(fā)送時(shí),處理器模塊會(huì)將數(shù)據(jù)寫入到ET1100中的DPRAM,當(dāng)主站讀取數(shù)據(jù)后就向處理器模塊發(fā)送中斷。

3.2從站軟件主要流程設(shè)計(jì)

3.2.1從站初始化

從站的初始化是由主站和從站共同完成。在初始化過(guò)程中,當(dāng)主站檢測(cè)到從站后,主站從ET1100的EEPROM中讀取配置信息,并根據(jù)配置信息發(fā)送初始化命令。從站根據(jù)主站發(fā)送的命令進(jìn)行初始化。

在從站端,從站初始化主要包括硬件初始化和EtherCAT初始化兩個(gè)方面。從站初始化過(guò)程如圖5所示。

圖5 從站初始化流程

在應(yīng)用程序初始化階段會(huì)重新打開在硬件初始化中被屏蔽的中斷。

3.2.2事件處理

EtherCAT協(xié)議使用事件機(jī)制實(shí)現(xiàn)主站對(duì)從站的操作。ET1100中設(shè)有專門的事件請(qǐng)求寄存器(0x0220~0x0223)和事件屏蔽寄存器(0x0204~0x0207)來(lái)支持事件機(jī)制。當(dāng)中斷發(fā)生時(shí),中斷處理程序會(huì)讀取事件請(qǐng)求寄存器,判斷事件類型,并做出相應(yīng)的處理,其基本處理流程如圖6所示。

圖6 事件處理流程

3.2.3狀態(tài)轉(zhuǎn)換

在EtherCAT協(xié)議中,主站和從站應(yīng)用程序在初始化和運(yùn)行時(shí)的狀態(tài)關(guān)系由EhterCAT狀態(tài)機(jī)負(fù)責(zé)協(xié)調(diào)。EtherCAT設(shè)備支持五種狀態(tài),其中初始化、預(yù)運(yùn)行、安全運(yùn)行、運(yùn)行為必備狀態(tài),引導(dǎo)狀態(tài)為可選狀態(tài),各狀態(tài)的轉(zhuǎn)換關(guān)系如圖7所示。

圖7 EtherCAT狀態(tài)轉(zhuǎn)換關(guān)系

所有的狀態(tài)轉(zhuǎn)換都是由主站發(fā)起,主站向從站發(fā)送狀態(tài)控制命令,從站響應(yīng)此命令。從站的狀態(tài)轉(zhuǎn)換只能按照箭頭的順序展開,不可越級(jí)轉(zhuǎn)換。如果請(qǐng)求的狀態(tài)轉(zhuǎn)換失敗,從站將給出錯(cuò)誤標(biāo)識(shí)。

在程序中,從站獲得主站發(fā)出的狀態(tài)轉(zhuǎn)換事件后,會(huì)根據(jù)當(dāng)前狀態(tài)和請(qǐng)求狀態(tài)計(jì)算狀態(tài)轉(zhuǎn)換參數(shù),并根據(jù)所得參數(shù)調(diào)用響相應(yīng)的狀態(tài)轉(zhuǎn)換函數(shù)或錯(cuò)誤處理函數(shù)。

4從站測(cè)試及分析

本實(shí)驗(yàn)使用德國(guó)倍福公司開發(fā)的TwinCAT軟件和沈陽(yáng)高精AM3358主站搭建測(cè)試平臺(tái)[11],并通過(guò)抓包工具對(duì)從站進(jìn)行功能測(cè)試和性能測(cè)試[12]。

4.1I/O開關(guān)量測(cè)試

在TwinCAT軟件中寫入開關(guān)量1(高電平),觀察到開發(fā)板中的LED燈被點(diǎn)亮。對(duì)從站平臺(tái)連續(xù)按下按起按鍵,在TwinCAT中觀察到電平突變,如圖8所示。由此可知,主從站之間IO通信正常。

圖8 TwinCAT中電平突變圖

4.2從站性能測(cè)試

向從站連續(xù)發(fā)送數(shù)據(jù)幀,并用Wireshark對(duì)抓包進(jìn)行處理,抓包部分結(jié)果如圖9所示。

圖9 抓包部分結(jié)果圖

通過(guò)對(duì)抓取數(shù)據(jù)的分析,對(duì)從站數(shù)量、平均周期、環(huán)運(yùn)行時(shí)間三項(xiàng)數(shù)據(jù)進(jìn)行了匯總,實(shí)驗(yàn)數(shù)據(jù)如表1所示。

表1 從站性能測(cè)試實(shí)驗(yàn)數(shù)據(jù) 單位:ns

由以上實(shí)驗(yàn)數(shù)據(jù)可知:在從站個(gè)數(shù)不同的網(wǎng)絡(luò)下周期值穩(wěn)定在1ms左右,這是由主站來(lái)控制的;每增加一個(gè)從站節(jié)點(diǎn),環(huán)運(yùn)行時(shí)間增加1μs左右,即報(bào)文經(jīng)過(guò)每個(gè)節(jié)點(diǎn)的時(shí)延約為500ns,可見從站的實(shí)時(shí)性良好。

4.3精度測(cè)試

主站以特定時(shí)間間隔向從站連續(xù)發(fā)送200個(gè)數(shù)據(jù)包,從站接收完數(shù)據(jù)包后通過(guò)串口打印接收到的數(shù)據(jù),據(jù)此判斷從站所收到的包的個(gè)數(shù)。實(shí)驗(yàn)結(jié)果如表2所示。

表2 從站精度測(cè)試實(shí)驗(yàn)數(shù)據(jù)

由以上實(shí)驗(yàn)數(shù)據(jù)可知,當(dāng)時(shí)間間隔為50μs時(shí),丟包十分嚴(yán)重,隨著主站發(fā)送數(shù)據(jù)的周期時(shí)間的增大,丟包率逐漸下降,當(dāng)時(shí)間間隔為200μs時(shí),丟包率為0,據(jù)此可知該從站在大于200μs周期時(shí),數(shù)據(jù)精度正常。

5結(jié)束語(yǔ)

本文詳述了EtherCAT從站的軟硬件設(shè)計(jì)實(shí)現(xiàn)方案,搭建了實(shí)驗(yàn)平臺(tái),為EtherCAT從站設(shè)備的開發(fā)提供了參考。本文采用的模塊化硬件設(shè)計(jì)方案和層次化軟件設(shè)計(jì)方案,加快了從站開發(fā)速度,基于STM32構(gòu)造微處理器模塊降低了開發(fā)成本和難度,便于調(diào)試,提高了開發(fā)效率。

[參考文獻(xiàn)]

[1] 樊留群.實(shí)時(shí)以太網(wǎng)及運(yùn)動(dòng)控制總線技術(shù)[M].上海:同濟(jì)大學(xué)出版社,2009.

[2] Florian Pose.IgH EtherCAT Master 1.5.2 Documentation[EB/OL],2013,http://www.etherlab.org.

[3] EtherCAT Technology Group.ETG_Brochure_cn[EB/OL].[2012-11].http://www.ethercat.org.

[4] EtherCAT Technical Introduction and Overview[R].EtherCAT Technology Group,2007.

[5] Beckhoff Automation GmbH. EtherCAT Slave Controller datasheet V1.4[EB/OL].2008,http://www.beckhoff.com.cn.

[6] ST,Inc.STM32 Reference Manual[EB/OL].2009,http://www.st.com/.

[7] Martin Rostan,Joseph E.Stubbs.EtherCAT enabled Advanced Control Architecture[R].EtherCAT Technology Group.

[8] 鄒靖波,熊皚.EtherCAT從站硬件設(shè)計(jì)方法[J].微型機(jī)與應(yīng)用,2015,34(7):27-29.

[9] 郇極,劉艷強(qiáng).工業(yè)以太網(wǎng)現(xiàn)場(chǎng)總線EtherCAT 驅(qū)動(dòng)程序設(shè)計(jì)及應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2010.

[10] 單春榮,劉艷強(qiáng),郇極.工業(yè)以太網(wǎng)現(xiàn)場(chǎng)總線EtherCAT及其驅(qū)動(dòng)程序設(shè)計(jì)[J].制造業(yè)自動(dòng)化,2007,29(11):79-82.

[11] Beckhoff Automation GmbH.EtherCAT系統(tǒng)搭建和測(cè)試指導(dǎo)[EB/OL].2010,http://beckhoff.com.cn.

[12]李備備,欒勇.基于AM3358處理器的嵌入式實(shí)時(shí)EtherCAT主站的構(gòu)建[J].組合機(jī)床與自動(dòng)化加工技術(shù),2015(5):1-5.

(編輯李秀敏)

文章編號(hào):1001-2265(2016)07-0001-03

DOI:10.13462/j.cnki.mmtamt.2016.07.001

收稿日期:2015-08-14;修回日期:2015-11-02

*基金項(xiàng)目:“高檔數(shù)控機(jī)床與基礎(chǔ)制造裝備”國(guó)家科技重大專項(xiàng)基于二次開發(fā)平臺(tái)的專用數(shù)控系統(tǒng)開發(fā)與應(yīng)用(2013ZX04007-011)

作者簡(jiǎn)介:左振領(lǐng)(1989—),男,山東聊城人,中國(guó)科學(xué)院沈陽(yáng)計(jì)算技術(shù)研究所碩士研究生,研究方向?yàn)橛?jì)算機(jī)系統(tǒng)結(jié)構(gòu),(E-mail)zuozhenling1@163.com。

中圖分類號(hào):TH122;TG506

文獻(xiàn)標(biāo)識(shí)碼:A

Design and Implementation of EtherCAT Slave Based on STM32

ZUO Zhen-ling1,2,HE Fang2,3,LI Xiao3

(1.Chinese Academy of Sciences,Beijing 100049,China;2.Shenyang Institute of Computing Technology,Chinese Academy of Sciences,Shenyang 110168,China)

Abstract:This paper introduces the working principle of EtherCAT,and designs the EtherCAT Slave based on STM32 and ET1100. It applies modular design and hierarchical design,and effectively imporves the quality and speed of device development,and a method to develop device is provided.This paper first analyzes the system hardware and software design, then tests the I/O function,real-time performace and data accuracy of the equipment by experiments.The device works well. At present,the slave has been initially applied in the“Blue Sky”numerical control system.

Key words:EtherCAT slave;ET1100;STM32

主站蜘蛛池模板: 亚洲乱伦视频| 制服丝袜 91视频| 9啪在线视频| 日韩无码黄色| 免费不卡视频| 国产成人免费视频精品一区二区| 孕妇高潮太爽了在线观看免费| 国产成人精品一区二区免费看京| 青青青国产视频| 无码精油按摩潮喷在线播放| 亚洲高清无码久久久| 国产黑丝视频在线观看| 国产99视频精品免费视频7| 国产精品无码作爱| 国产欧美在线观看精品一区污| a在线亚洲男人的天堂试看| 久久人体视频| 精品无码人妻一区二区| a级毛片免费网站| 园内精品自拍视频在线播放| 中文字幕首页系列人妻| 91在线免费公开视频| 亚洲人在线| 茄子视频毛片免费观看| 九九九精品成人免费视频7| 亚洲国产精品无码久久一线| 色呦呦手机在线精品| 国产成人一二三| 国产成人区在线观看视频| 精品人妻一区二区三区蜜桃AⅤ | 亚洲一区毛片| 欧洲日本亚洲中文字幕| 97青草最新免费精品视频| 日韩在线2020专区| 被公侵犯人妻少妇一区二区三区| 国产99欧美精品久久精品久久| 99精品影院| 最新亚洲人成无码网站欣赏网| 亚洲一区二区三区国产精品 | 天天视频在线91频| 少妇精品久久久一区二区三区| 久久成人国产精品免费软件| 亚洲清纯自偷自拍另类专区| 欧日韩在线不卡视频| 亚洲无卡视频| 亚洲水蜜桃久久综合网站 | 国产尤物视频网址导航| 伊人精品视频免费在线| 欧美日韩成人在线观看| 亚洲日韩精品欧美中文字幕| 91久久偷偷做嫩草影院精品| 久热99这里只有精品视频6| 国产精品亚洲一区二区三区z | 国产欧美日韩va| 亚洲浓毛av| 国产免费高清无需播放器| 三上悠亚精品二区在线观看| 美女毛片在线| 蜜臀av性久久久久蜜臀aⅴ麻豆 | 亚洲色成人www在线观看| 亚洲视频欧美不卡| 四虎成人精品| 欧美中文字幕无线码视频| 久久久久88色偷偷| 成人国产三级在线播放| 美女免费精品高清毛片在线视| 欧美一级爱操视频| 成人福利一区二区视频在线| 亚洲欧美日韩天堂| 国产一级精品毛片基地| 亚洲三级成人| 国产丝袜丝视频在线观看| 亚洲国产清纯| 97视频精品全国免费观看| 亚洲色图另类| 婷婷色中文网| 国产三区二区| 制服丝袜国产精品| 亚洲成人精品| 欧洲极品无码一区二区三区| 狼友视频国产精品首页| 国产精品yjizz视频网一二区|