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

基于Windows 套接字的Ethercat 主站協議棧設計與實現

2021-10-26 07:19:46
機電產品開發與創新 2021年5期

柳 青

(北京電子科技職業學院, 北京 100176)

0 引言

Ethercat 作為一種開放式高速實時以太網廣泛應用于運動控制、自動化等領域。在當前Ethercat 主站的研究中為了追求實時性能和高精度時鐘同步, 對系統的軟件或硬件都提出了特殊要求。 蔣杰等通過改造Linux 內核在X86 平臺上實現了Ethercat 主站[1],孫躍祥等在Xilinx Zynq-7000 處理器構建了嵌入式Ethercat 主站[2]。

然而在物料傳輸、 工件檢測等對實時性要求不高的系統中,如果采用上述方案則存在系統復雜,成本高,開發周期長等問題。 因此提出了這一種在Windows 平臺上采用網絡套接字來實現Ethercat 主站協議棧的方法。 該方法基于Ethercat 規范中Ethercat UDP/IP 報文格式,將Ethercat 報文嵌入udp 數據包的方式,不需要專用硬件或者特殊網卡驅動,協議棧配置靈活,可移植性好。

1 整體架構設計

Ethercat 主站的主要功能是對從站的配置、 數據交換、為應用程序提供編程接口,因此該將協議棧設計為三個線程模塊和一個數據模塊。 三個工作線程分別負責應用程序接口、Ethercat 報文生成、解析與收發、配置服務通信。 每個線程都可以訪問數據模塊中的數據,線程之間通過數據模塊交互信息,協議棧架構見圖1。

圖1 Ethercat 主站協議棧框架

數據模塊包含了每個從站的信息,包括:基本信息,如從站位置、生產廠商、版本號等;配置信息,主站對從站初始化時,需要對其SM 和FMMU 進 行 配置,否則在從站狀態轉換時會出錯,另外在使用PDO 通信時,也必須對從站1C12、1C13 等對象進行配置[3],以映射報文中的數據到從站的字典對象中。 從站結構體代碼如下所示:

2 Ethercat 報文解析

Ethercat 協議使用標準的IEEE 802.3 以太網幀傳輸數據,作為一種開放式實時以太網協議,支持UDP/IP 傳輸協議[3],在這種模式下,將Ethercat 報文作為UDP 的數據,Ethercat 從站控制器就可以識別并處理數據包。 為了能夠區分Ethercat 報文和其他報文, 協議規定了Ethercat 使用的UDP 端口為0x88A4,Ethercat UDP/IP 報文格式如下:

報文頭規定了該報文的指令類型、 數據地址以及數據長度,數據部分是報文攜帶的數據信息,對于讀報文,從站控制器將從站數據復制到該區域,對于寫報文,從站控制器將該區域的數據復制到從站對應的內存中。 從站控制器會根據每次報文的執行結果更新該字段, 主站通過檢查該字段來判斷報文指令是否執行成功。Ethercat 報文生成函數如下:

3 配置與服務線程

Ethercat 主站在初始化階段需要掃描網絡,并對各個從節點進行配置[5],另外應用程序對界面服務數據的讀寫需要SDO 通信, 這些任務都需要通過幾個階段來完成,會消耗比較多的時間, 為了避免執行這些任務導致應用程序阻塞,將這些任務在一個單獨的線程中執行,應用程序可以很快得到返回。

該線程不斷查詢數據模塊中的控制字, 輪詢應用程序請求類型,收到請求則會調用相應的處理函數,在處理函數中,不斷改變處理狀態,以使應用層可以掌握處理進度及結果。 處理完成后,將請求字段復位,以便接受下一次請求。 配置流程如下:

(1)采用FBWR 指令掃描總線網絡,讀取設備ID 等。

(2)配置SM 寄存器。

(3)計算FMMU,并配置FMMU 寄存器。

(4)配置SDO、PDO。

(5)狀態轉換。

4 通信實驗

為了驗證協議棧的正確性, 采用德國倍福公司的Ethercat 從站模塊進EL2889、EL1889 進行通信測試,實驗實物見圖2。 采用Wireshark 軟件抓取通信數據包,抓取的數據包見圖3。

圖2 Ethercat 通信實驗平臺

圖3 Wireshark 抓包數據

在圖3 中,以第497 個數據包為例,主站計算的IP地址為192.168.0.100, 目 的IP 設置為192.168.0.255,目的端口號設置為0X88A4, 十進制表示為33980,該數據包為協議棧發出的APWR 指令,數據長度為2,WKC 為0。 第498 個數據包為從站返回的應答包, 可以看出數據部分發生變化,WKC 也變為1, 說明Ethercat 從站已經成功處理該數據包,協議棧可以和從站正常進行數據交互。

5 結論

闡述了基于Windows 套接字的Ethercat 主站協議棧設計方法,根據Ethercat UDP/IP 規范,將Ethercat 報文嵌入到udp 報文中, 避免了使用專門硬件或者開發特殊網卡驅動,實現了主站對從站的寄存器讀寫,并詳細設計了主站對從站的配置流程,最后通過Wireshark 軟件抓取通信數據包,實驗表明:協議棧能夠與從站進行數據交互,設計簡單、配置靈活,有利于Ethercat 協議在通用Windows平臺上的應用。

主站蜘蛛池模板: 亚洲女人在线| 色久综合在线| 2019年国产精品自拍不卡| Jizz国产色系免费| 日本成人精品视频| 中文字幕日韩久久综合影院| 精品少妇人妻无码久久| 青青久视频| 久久大香伊蕉在人线观看热2| 高清欧美性猛交XXXX黑人猛交| 国产精品jizz在线观看软件| 天堂在线视频精品| 国产91视频免费观看| 久久国产av麻豆| 日韩高清无码免费| 日本欧美中文字幕精品亚洲| 毛片a级毛片免费观看免下载| 香蕉久人久人青草青草| 成人一级黄色毛片| 欧美www在线观看| 国产亚洲精久久久久久无码AV| 91午夜福利在线观看精品| 国产青榴视频| 88国产经典欧美一区二区三区| 久久人与动人物A级毛片| 亚洲天堂精品在线| 综合色区亚洲熟妇在线| 国产免费高清无需播放器| 精品無碼一區在線觀看 | 国产福利小视频在线播放观看| 久久精品国产亚洲麻豆| 久久这里只有精品23| 亚洲动漫h| 精品一區二區久久久久久久網站| 亚洲人成人伊人成综合网无码| 精品1区2区3区| 青青草国产免费国产| 国产美女视频黄a视频全免费网站| 在线看国产精品| 人妻丰满熟妇啪啪| 免费无码又爽又刺激高| 久久精品电影| 在线中文字幕网| 日韩中文字幕亚洲无线码| 欧美精品二区| 国产在线91在线电影| 天天综合色天天综合网| 91小视频在线| 成人国产精品一级毛片天堂| 四虎影院国产| 国产精品嫩草影院av| 亚洲精品色AV无码看| 国产青青草视频| 中文字幕在线视频免费| 国产在线视频欧美亚综合| 欧美在线伊人| 高清无码手机在线观看| 日本高清免费不卡视频| 国产精品黄色片| 国产精品太粉嫩高中在线观看| 超碰91免费人妻| 毛片视频网址| 国产成人在线无码免费视频| 国产精品黄色片| 亚洲成人播放| 国产波多野结衣中文在线播放| 国产福利一区视频| 亚洲人成在线免费观看| 中文字幕在线日本| 高潮毛片无遮挡高清视频播放| 精品福利视频导航| 色噜噜在线观看| 五月天久久婷婷| 国产激情无码一区二区免费| 国产高清精品在线91| 制服丝袜国产精品| 成年午夜精品久久精品| 一级毛片不卡片免费观看| 亚洲美女一区| 久久a毛片| 国产激爽大片在线播放| 国产在线精彩视频二区|