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

基于STM32的EtherCAT轉UDP通信轉換系統設計與實現

2023-08-18 05:01:27殷偉
中國新通信 2023年12期

摘要:工業以太網總線技術EtherCAT是一種基于以太網的高性能、低成本的實時通信技術,它可以實現分布式控制系統的高速、低延遲、同步和確定性的通信。EtherCAT在工業自動化領域有著廣泛的應用,如機器人、數控機床、汽車制造等。然而,EtherCAT與工控機端的通信網絡一般采用TCP/IP協議,由于其非實時性通信方式,不能直接與EtherCAT從站交換數據,需先進行通信協議轉換。通信轉換需要借用硬件介質來實現。為了實現EtherCAT與工控機端的TCP/IP協議的互通,本文設計了一種基于STM32單片機的通信轉換系統,該系統利用FPGA開發的高速、低延遲、同步和確定性的TCP/IP通信模塊,實現了EtherCAT與TCP/IP協議的轉換。本文介紹了系統的硬件結構和軟件設計,驗證了系統的通信性能和效率。

關鍵詞:STM32F103;EtherCAT;FPGA;UDP;通信轉換

以太網控制自動化技術EtherCAT在工業自動化領域應用廣泛。在工業以太網總線技術EtherCAT中,從站之間的通信采用分布式時鐘同步機制,保證了通信的高速、低延遲、同步和確定性。然而,EtherCAT與工控機端的通信網絡一般采用TCP/IP協議,由于其需要建立連接和確認數據的傳輸,無法與EtherCAT直接進行數據交互,導致了通信的非實時性,因此,需借用硬件介質進行通信協議轉換。伺服電機、步進電機和輸入/輸出口的控制過程非常復雜,任何一個控制環節出錯都會造成控制系統運行不穩。

在實際產品開發中,考慮成本因素無法直接在控制系統中運行實時分析軟件,而是要將相應數據實時地傳輸到PC機上,通過PC機上的數據采集、分析軟件中查找、定位問題根源。為了實現EtherCAT與工控機端的TCP/IP協議的互通,本文提出了一種基于UDP協議的通信轉換方案,利用UDP協議的無連接和高帶寬特點,提高通信的效率和速度,同時利用FPGA開發的高性能TCP/IP通信模塊,保證通信的實時性和可靠性。

一、系統硬件設計

系統的控制部分包括STM32F103、FPGA。STM32F103程序負責控制LAN9252和FPGA的通信,以及配置88E1111 PHY芯片的寄存器。FPGA程序負責實現可變靜態存儲控制器通信模塊、UDP通信模塊和88E1111 PHY芯片配置模塊。可變靜態存儲控制器通信模塊用于與STM32F103進行數據交換,UDP通信模塊用于封裝和解析UDP數據包,88E1111 PHY芯片配置模塊用于設置PHY芯片的工作模式和速率。整體硬件架構如圖1所示。

LAN9252和STM32F103的接口電路如圖2所示。

FPGA選用EP4CE10,是一種低成本、高性能的可編程邏輯器件,可以實現復雜的通信協議和算法。FPGA與STM32F103通過可變靜態存儲控制器總線進行數據交換。

88E1111支持10/100/1000Mbps的自適應速率,具有低功耗、高集成度、高穩定性的特點。88E1111與FPGA通過GMII總線進行數據傳輸,88E1111與工控機端的網卡通過RJ45接口進行數據通信。STM32F103、FPGA與88E1111連接圖如圖3所示。

電源采用5 V供電,需要轉換成3.3V、2.5V及1.2V。

二、系統軟件設計

(一) STM32F103單片機程序

STM32F103是系統的控制核心,用于系統初始化,FPGA、LAN9252模塊之間的通信。

為了實現從站微控制單元的EtherCAT通信功能,本文使用SSC工具生成協議棧代碼,配置協議棧、物理層之間的接口,如可變靜態存儲控制器并行總線配置和輸入/輸出中斷入口配置。協議棧包含EtherCAT從站通訊模塊輸出信號,需將模塊的中斷處理函數與STM32F103引腳綁定,引腳中斷功能關鍵代碼如下。

# define? ? INIT _ESC_INT? ? ?EXTIO _ Configtiration ( )

# define? ? Ecatlsr? ? ? ? ? EXTIO _ IRQHandler ;

SYNCO? ?對應中斷功能配置及映射

#define? ? INIT_SYNC0_TEXTI3 _ Configoation ( ) ;

#define? ? Syllc0Isr? ? ? ? EXTI3_IRQHandler;

SYNC1? ? 對應中斷功能配置及映射

#define? ?INIT_SYNC1 _INT? ? EXTI1_ Configuration ( );

#define? ? Sync1lsr? ? EXTl1_ IRQHandler;

為確保引腳快速準確地響應通信模塊信號,需要在配置函數中激活引腳的中斷功能,并將其映射到外部中斷0,設置中斷優先級為最高。再配置可變靜態存儲控制器并行總線,選擇異步多路PS隨機存取存儲器/NOR作為輸出通信方式。生成新XML文件之后,需在協議棧代碼里,修改數據定義、讀取模塊,使其與XML生成的數據量一致。在協議棧的數據定義頭文件里,修改結構體數據量大小及初始值。生成的協議棧的代碼

如下。

typedef struct OBJ_STRUCT_PACKED_ START {

UINT16? ?ul6SulbIndexo;/ * * < \ brief Sublndex 0* /

UINT32? ?aEntries [ 32 ];? / * * < \ brief Entry? buffer * /

} OBJ_STRUCT_PACKED _END

TOBJ1601;

typedef struct OBJ_STRUCT _PACKED _ START {

UINT16? ?ul6SubIndex0; / * * < \ brief SubIndex 0* /

UINT32? ?aEntries [4]; / * * < \ brief Entry buffer * /

} OBJ_STRUCT_PACKED_END

TOBJ 1A00;

在中斷入口函數中修改數據操作,確保數據格式與XML文件保持一致,以免EtherCAT網絡通信不能實現初始化。

(二) FPGA程序開發

FPGA主要功能模塊包含:可變靜態存儲控制器通信、UDP收接、UDP發送、PHY配置、以太網MAC,FPGA功能模塊如圖4所示。

可變靜態存儲控制器通信模塊可以讀寫單片機的數據,也可以發送和接收UDP數據。讀寫單片機的數據時,需要進行數據類型轉換和緩存;發送和接收UDP數據時,需要解析UDP協議和添加協議頭尾。可變靜態存儲控制器通信模塊使用隨機存取存儲器作為緩存器,單片機接收到一定量的數據后,UDP發送模塊開始發送數據。88E1111是PHY芯片,通過FPGA實現標識具體的網絡節點。基于ALTERA芯片,可以使用QuartusII提供的TSE IP核。TSE IP核包含數據接收、數據發送、配置和RGMII四個接口,配置接口用于設置88E1111的寄存器和連接方式。UDP協議是一種簡單的面向消息的傳輸層協議,不保證消息的可靠傳遞,也不維護消息的狀態,其優點是簡單、快速、靈活,適用于實時性要求高的應用場景,如流媒體、語音、視頻等。UDP協議使用16位端口號來區分不同的應用程序,并提供校驗和來驗證數據的完整性,并且還包含一個偽首部,用于計算校驗和實時檢查IP地址是否正確。

三、系統調試

系統調試裝置如圖6所示。

調試的基本步驟如下:

1.應用程序離線調試

在開發環境中使用模擬器或仿真器對STM32F103程序和FPGA程序進行編譯、下載和運行,檢查是否有語法錯誤或邏輯錯誤。使用斷點、單步執行、變量監視等功能觀察程序運行狀態和數據流向,驗證程序功能是否符合設計要求。

2.控制系統硬件檢查

在目標平臺上連接STM32F103單片機、LAN9252芯片、FPGA芯片和88E1111 PHY芯片等硬件設備,檢查電源電壓、信號線連接、接口匹配等是否正常。使用示波器或邏輯分析儀等工具觀察各個總線或接口上的信號波形是否正確。

3.應用程序在線調試

在目標平臺上使用JTAG或SWD等接口對STM32F103單片機進行在線調試,使用USB Blaster或JTAG等接口對FPGA芯片進行在線調試,使用網線或無線網卡與工控機端進行通信。使用調試工具或打印日志等方式檢查程序運行情況和通信效果,排除可能存在的錯誤或異常。

4.現場調試

在實際應用場景中對系統進行測試,模擬各種正常或異常的輸入輸出條件,觀察系統的響應和輸出結果,評估系統的性能和穩定性,優化系統的參數和配置,解決可能出現的問題或故障。

在完成系統調試后,對調試過程中發現和解決的問題進行總結和歸納,記錄調試過程中使用的工具和方法,撰寫調試報告和文檔,為后續的維護和改進提供參考。

四、結束語

綜上所述,設置EtherCAT從站的通信周期為1ms,輸入/輸出分別為64字節、16字節,在數據中添加遞增序列號,通過一段時間的測試觀察序列號的變化,EtherCAT從站與UDP通信沒有丟包或通信中斷現象,具有較高的通信可靠性。

作者單位:殷偉 浙江寧廣有視網絡工程有限公司

參? 考? 文? 獻

[1]左振領,何方,李霄.基于STM32的EtherCAT從站的設計與實現.組合機床與自動化加工技術,2016(7):1-3.

[2]李益,王成杰,史世友,等.基于ZYNQ處理器的EtherCAT從站通信系統設計[J].控制與信息技術,2022(1):59-63.

[3]馬保全,姚旺君,劉云龍,等.基于FPGA的EtherCAT從站通信鏈路分析與驗證[J].電子技術應用,2017,43(8):95-99.

[4]Ricardo Moraes,Francisco Borges Carreiro,Paulo Bartolomeu.Enforcingthe timing behavior of real-time stations in legacy bus-based industrialEthernet networks.Computer Standards and Interfaces[J],2011,33(3):5-11.

[5]黨選舉,李帥帥,伍錫如,等.EtherCAT主站與主站通信協議的研究與實現[J].組合機床與自動化加工技術,2017(1):98-101.

[6]宋孫浩,鄭天江,張馳,等.輕量一體化機器人關節的SPI通信及EtherCAT通訊研究[J]. 制造業自動化,2019,41(8):41-46.

[7]康存鋒,杜斐斐,馬春敏,等.EtherCAT協議芯片與單片機通信系統的研究[J].現代制造工程,2011(7):113-117.

[8]趙世超,左金印,魏驍,等.基于FPGA的萬兆以太網UDP協議通信接口設計[J].電子技術應用,2022,48(10):113-117,122.

[9]李浩,趙晨希,關冰.基于超時重傳和多重校驗的UDP可靠通信設計[J].測控技術,2022,41(2):105-110.

[10]汪欽臣,方益民.基于Modbus UDP協議的STM32與PC實時通信的實現[J].儀表技術與傳感器,2020(7):67-70.

[11]柳青.基于Windows套接字的Ethercat主站協議棧設計與實現[J].機電產品開發與創新,2021,34(5):14-15,18.

主站蜘蛛池模板: 久久先锋资源| 国产国产人成免费视频77777| 国产全黄a一级毛片| 大学生久久香蕉国产线观看| 国外欧美一区另类中文字幕| 国产成人啪视频一区二区三区 | 国产人人干| 中文字幕久久亚洲一区| 波多野结衣久久高清免费| 美女无遮挡拍拍拍免费视频| 中文字幕调教一区二区视频| 青青草综合网| 日本午夜视频在线观看| 一级毛片免费观看久| 亚洲国产成人久久精品软件| 深爱婷婷激情网| 国产三级精品三级在线观看| 九九视频免费看| 亚洲综合中文字幕国产精品欧美| 黄色网页在线播放| 97成人在线视频| 精品久久久久久成人AV| 人妻丰满熟妇av五码区| 宅男噜噜噜66国产在线观看| 欧美日韩福利| 东京热高清无码精品| 日韩无码白| 国产免费羞羞视频| 97超爽成人免费视频在线播放| 亚洲 日韩 激情 无码 中出| 在线观看av永久| 日韩人妻精品一区| 久久综合色视频| 99精品热视频这里只有精品7| 欧美中文字幕在线视频 | 中文字幕 91| 亚洲69视频| 国产麻豆91网在线看| 亚洲swag精品自拍一区| 四虎AV麻豆| 国产视频只有无码精品| 精品一区二区久久久久网站| 亚洲va精品中文字幕| 亚洲毛片网站| 亚洲国产精品无码AV| 亚洲精品你懂的| 国产91精品久久| 久久久久88色偷偷| 中文字幕资源站| 麻豆精品久久久久久久99蜜桃| 亚洲视频免费播放| 国产永久无码观看在线| 国产欧美网站| 中文纯内无码H| 精品视频第一页| 色哟哟色院91精品网站| 新SSS无码手机在线观看| 狠狠色香婷婷久久亚洲精品| 日本高清免费一本在线观看| 国产精品免费露脸视频| 欧美一级片在线| 精品一区二区三区水蜜桃| 亚洲V日韩V无码一区二区| 成人精品亚洲| 欧美日韩第三页| 久久综合激情网| 亚洲欧美国产视频| 成人国产精品网站在线看 | 免费中文字幕在在线不卡 | 久久人人爽人人爽人人片aV东京热 | 国产成人精品18| 丝袜美女被出水视频一区| 亚洲视频无码| 久久99精品久久久久纯品| a级毛片网| 最新国产你懂的在线网址| 亚洲美女操| 青青操国产视频| 亚洲视频在线网| 爱爱影院18禁免费| 97色伦色在线综合视频| 亚洲男人的天堂在线|