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平臺上的應用。

主站蜘蛛池模板: 国产美女91视频| 亚洲综合18p| 亚洲 成人国产| 激情午夜婷婷| 亚洲国产午夜精华无码福利| 国产成人精品午夜视频'| 四虎永久在线精品国产免费| 强乱中文字幕在线播放不卡| 99在线小视频| 午夜电影在线观看国产1区| 麻豆国产在线观看一区二区| 中文字幕欧美日韩高清| 成人精品视频一区二区在线| 在线亚洲小视频| 亚洲成人免费看| 91免费观看视频| 91小视频在线播放| 无码中字出轨中文人妻中文中| 国产第四页| 成人免费视频一区二区三区| 最新无码专区超级碰碰碰| 日本成人精品视频| 久久国语对白| 久久九九热视频| 久久一本日韩精品中文字幕屁孩| 亚国产欧美在线人成| 国产地址二永久伊甸园| 亚洲国产综合精品一区| 91口爆吞精国产对白第三集| 免费观看欧美性一级| 五月丁香在线视频| 美女免费精品高清毛片在线视| 国产91在线|中文| 全午夜免费一级毛片| a级毛片网| 波多野结衣一区二区三区四区| 91亚洲影院| 女人18毛片久久| 毛片免费试看| 国产精品女熟高潮视频| 在线观看国产精品第一区免费| 99久久亚洲精品影院| 2021国产v亚洲v天堂无码| 无码精品国产dvd在线观看9久 | 午夜视频免费一区二区在线看| 91在线国内在线播放老师| 国产一级做美女做受视频| 婷婷亚洲视频| 成人免费午夜视频| 国产国模一区二区三区四区| 国产精品夜夜嗨视频免费视频| 中文字幕66页| 91精品国产91久无码网站| 婷婷六月色| 午夜无码一区二区三区| 国产精品人成在线播放| 国产精品99久久久久久董美香 | 精品91视频| 人妻无码中文字幕一区二区三区| 欧美精品aⅴ在线视频| 白浆视频在线观看| 久操中文在线| 伊人久久大香线蕉综合影视| 国产精品观看视频免费完整版| 精品三级在线| 国产系列在线| 国产精品一区二区国产主播| 亚洲va在线观看| 欧美成人看片一区二区三区| 久久人体视频| 亚洲无码视频一区二区三区| 国产成人精品男人的天堂| 国产精品丝袜在线| 欧美性色综合网| 人妻无码中文字幕第一区| 国产欧美视频综合二区| 欧美成人午夜影院| 成人看片欧美一区二区| 欧美在线视频不卡| 美女无遮挡拍拍拍免费视频| 国产成年无码AⅤ片在线| 97在线观看视频免费|