• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于LAN9252芯片的EtherCAT從站的實(shí)現(xiàn)

      2021-03-19 09:27:56陶春榮崔恒榮游新望
      雷達(dá)與對(duì)抗 2021年1期
      關(guān)鍵詞:配置文件中斷以太網(wǎng)

      陶春榮,崔恒榮,游新望

      (中國(guó)船舶集團(tuán)有限公司第八研究院,南京 211153)

      0 引 言

      EtherCAT總線由德國(guó)Beckhoff公司提出,是目前速度最快的工業(yè)以太網(wǎng)系統(tǒng),其組網(wǎng)結(jié)構(gòu)簡(jiǎn)單,兼容標(biāo)準(zhǔn)以太網(wǎng),通信周期可達(dá)微秒級(jí)。該總線具有卓越的通訊性能、高精度同步節(jié)點(diǎn)、靈活的布線方式以及任意的節(jié)點(diǎn)數(shù)量,可支持任何網(wǎng)絡(luò)拓?fù)漕愋汀K梢允褂脴?biāo)準(zhǔn)的以太網(wǎng)電纜傳輸。由于采用了保留的以太網(wǎng)幀類型0x88A4,因此該總線協(xié)議可以與其他以太網(wǎng)協(xié)議并行運(yùn)行。它不需要IP協(xié)議,但是可以被封裝在UDP/IP協(xié)議中。EtherCAT總線硬件設(shè)計(jì)上采用主從式結(jié)構(gòu),其協(xié)議的處理是由從站控制器ESC內(nèi)部硬件直接實(shí)現(xiàn)的。因此,它的數(shù)據(jù)處理速度取決于硬件的處理能力。

      1 EtherCAT從站控制器簡(jiǎn)介

      在EtherCAT的一個(gè)網(wǎng)段網(wǎng)絡(luò)中,除主站外接入網(wǎng)絡(luò)的節(jié)點(diǎn)稱為從站。從站子系統(tǒng)通過(guò)從站控制器(ESC,Ether CAT Slave Controller)接入EtherCAT網(wǎng)絡(luò)。目前主要有3種接入方式:

      (1) 使用授權(quán)的核心將ESC 的硬件電路以“軟核”的模式集成到FPGA 中,使得FPGA 具備ESC 這個(gè)通信模塊。目前,Xilinx公司和Altera公司都有相應(yīng)的EtherCAT授權(quán)的核心可供選用。

      (2) 使用專用的ESC芯片。該芯片專門用于EtherCAT通信,設(shè)計(jì)時(shí)采用“ESC+μC”結(jié)構(gòu),即以一個(gè)ESC芯片作為EtherCAT通信的從站控制器,而從站的系統(tǒng)以微控制器μC來(lái)管理并通過(guò)過(guò)程數(shù)據(jù)接口(PDI,Process Data Interface)讀取寫入ESC。典型的ESC芯片代表是Beckhoff公司的ET1100 /ET1200芯片,以及Microchip公司的LAN9252芯片等。

      (3) 使用具備EtherCAT通信功能的微處理器。該方式省去ESC芯片的使用,大大降低設(shè)計(jì)工作量。目前,具有EtherCAT通信功能的微處理器有瑞薩公司的R-IN32M3-EC、Infineon公司的XMC4800以及德州儀器的AM3359/AM4379 /AM5728等芯片。

      由于本文的模塊設(shè)計(jì)為EtherCAT從站通信模塊,適合采用ESC從站專用芯片作為通信站點(diǎn)控制器,因此采用的是LAN9252和STM32F732芯片的EtherCAT從站的實(shí)現(xiàn)方法。

      1.1 LAN9252芯片介紹

      Microchip公司LAN9252 作為EtherCAT從站控制器,其內(nèi)部集成了兩個(gè)PHY 芯片,可以配置為全雙工100 Mbps 銅纜(100BASE-TX)或者100 Mbps 光纖(100BASE-FX)傳輸方式。LAN9252帶有4 KB的DPRAM、3 個(gè)現(xiàn)場(chǎng)總線存儲(chǔ)器管理單元FMMU及4 個(gè)SM 通道管理器。此外,它的內(nèi)部集成以太網(wǎng)PHY 芯片,并支持HP Auto-MDIX 功能。它帶有3個(gè)以太網(wǎng)端口,可以實(shí)現(xiàn)線性連接、星形連接以及樹形連接等多種拓?fù)浣Y(jié)構(gòu)。從站啟動(dòng)時(shí)需要從外部引腳和EEPROM讀入配置信息。

      1.2 STM32F732芯片介紹

      STM32F732芯片是意法半導(dǎo)體公司開發(fā)的32位微處理器,采用的是ARM公司的Cortex-M7高性能內(nèi)核。Cortex-M7是目前性能最強(qiáng)的控制器內(nèi)核,具有六級(jí)順序超標(biāo)量流水線、單雙精度浮點(diǎn)運(yùn)算單元、指令和數(shù)據(jù)緩存以及分支預(yù)測(cè)和TCM等特性,相比之前M4內(nèi)核其性能得到極大提升。STM32F732主頻高達(dá)216 MHz,具備內(nèi)存保護(hù)單元,支持DSP指令,在執(zhí)行內(nèi)部FLASH代碼時(shí)能達(dá)到1082 Core Mark /462DMIPS性能表現(xiàn)。該內(nèi)核集成了一級(jí)緩沖(4 KB指令緩存+4 KB數(shù)據(jù)緩存),讓外部存儲(chǔ)器的使用性能變得卓越。同時(shí),它具有多通道DMA、multi-AHB總線矩陣、Chrom-Art加速器、AXI總線等強(qiáng)大的硬件支持,極大地優(yōu)化了內(nèi)部數(shù)據(jù)連接,無(wú)需CPU干預(yù)即可完成大量數(shù)據(jù)搬遷。STM32F732有1024 KB內(nèi)部FLASH,320 KB存儲(chǔ),集成AES、DES、HASH、HMAC加密硬件電路,支持多種外部存儲(chǔ)、多達(dá)18 通道定時(shí)器及以太網(wǎng)連接TFT控制器。

      2 硬件設(shè)計(jì)

      本方案采用STM32F732芯片作為從站微處理器、LAN9252作為EtherCAT從站控制器,為此可以將整個(gè)從站系統(tǒng)分為STM模塊(微處理器部分)和ESC模塊(控制器部分)兩大模塊。STM模塊的功能是實(shí)現(xiàn)應(yīng)用層協(xié)議,ESC模塊的功能是實(shí)現(xiàn)EtherCAT數(shù)據(jù)鏈路層的功能。系統(tǒng)原理框圖如圖1所示。

      圖1 系統(tǒng)原理框圖

      2.1 ESC模塊硬件設(shè)計(jì)

      LAN9252內(nèi)部集成有上電復(fù)位電路,在芯片復(fù)位后會(huì)根據(jù)其硬件配置引腳的電平狀態(tài)將器件配置成相應(yīng)的功能。LAN9252主要的硬件配置管腳定義如表1所示。

      表1 硬件配置管腳定義

      當(dāng)完成硬件配置后,LAN9252通過(guò)讀取外接EEPROM中的從站配置信息完成LAN9252從站的建立。當(dāng)LAN9252自動(dòng)配置完成后,微處理器便可以通過(guò)配置好的PDI(Process Data Interface,即過(guò)程數(shù)據(jù)接口)接口與LAN9252進(jìn)行數(shù)據(jù)交互。LAN9252支持兩種類型的PDI接口,SPI串行模式或者M(jìn)CI并行模式。串行接口適用于數(shù)據(jù)傳輸量比較小的應(yīng)用,并行接口適用于傳輸數(shù)據(jù)量較大的復(fù)雜設(shè)備。為了實(shí)現(xiàn)高速率的數(shù)據(jù)傳輸,本系統(tǒng)中采用外部總線,通過(guò)變址尋址的方案和LAN9252進(jìn)行通信。LAN9252支持兩種并行通信方式,一種是總線復(fù)用模式,一種是變址尋址模式。本方案中采用16位變址尋址模式對(duì)LAN9252進(jìn)行尋址。

      本方案采用查詢方式和中斷相結(jié)合的數(shù)據(jù)讀取方式,所以ESC的IRQ引腳要連接至STM模塊的外部中斷引腳。由于LAN9252通過(guò)SYNC0和SYNC1引腳為從站提供精確的同步脈沖以實(shí)現(xiàn)從站同步,因此也需要將SYNC0和SYNC1引腳連接至STM模塊的外部中斷引腳。LAN9252的接口連接圖如圖2所示。

      圖2 LAN9252接口連接圖

      2.2 STM模塊硬件設(shè)計(jì)

      STM模塊是EtherCAT從站的控制核心。該模塊的作用是通過(guò)FSMC接口接收來(lái)自ESC模塊的控制信息,同時(shí)接收來(lái)自系統(tǒng)設(shè)備層的數(shù)據(jù)信息,將數(shù)據(jù)信息通過(guò)FSMC總線傳遞給ESC模塊,從而實(shí)現(xiàn)相關(guān)數(shù)據(jù)在EtherCAT總線上的接收和傳輸。

      STM32F732芯片的FSMC接口支持多種外部存儲(chǔ)區(qū)擴(kuò)展。該接口內(nèi)部集成了對(duì)這些存儲(chǔ)區(qū)的控制器,可以將系統(tǒng)AHB總線轉(zhuǎn)化成與外部存儲(chǔ)區(qū)復(fù)合的總線接口形式。FSMC在STM32F732芯片內(nèi)部占用大小為1 GB的內(nèi)存尋址空間。這部分內(nèi)存尋址空間分為4個(gè)大小為256 MB的Bank,其中Bank0又分為4個(gè)Region,每個(gè)Region占64 MB。Bank1和Bank2又都被分成2個(gè)Section,分別是屬性存儲(chǔ)空間和通用存儲(chǔ)空間。Bank3分成3個(gè)Section,分別是屬性存儲(chǔ)空間、通用存儲(chǔ)空間和I/O存儲(chǔ)空間。每個(gè)Bank和Region都有獨(dú)立的片選控制信號(hào),也都能進(jìn)行獨(dú)立的配置。具體地址映射關(guān)系如圖3所示。

      圖3 FSMC地址映射關(guān)系圖

      由于本方案中采用16位變址尋址模式對(duì)LAN9252進(jìn)行尋址,因此FSMC模塊必須設(shè)置成16位數(shù)據(jù)寬度、PSRAM控制器模式,使用NE0作為L(zhǎng)AN9252的片選信號(hào)。

      ESC模塊有3個(gè)中斷信號(hào)需要接入STM模塊中,而對(duì)于STM32F732芯片來(lái)說(shuō)其所有通用管腳均可設(shè)置為中斷觸發(fā)模式并由EXTI(中斷/事件控制器)進(jìn)行檢測(cè)控制。EXTI 有3種觸發(fā)類型:上升沿觸發(fā)、下降沿觸發(fā)和任意沿觸發(fā)。根據(jù)ESC模塊的手冊(cè)本方案采用的是上升沿觸發(fā)。

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

      軟件主要由兩部分組成,一是EEPROM中的ESC模塊配置文件,二是STM模塊軟件。ESC模塊配置文件是從站物理層的基本配置信息,而STM模塊軟件完成的是從站應(yīng)用層的相關(guān)初始化、協(xié)議解析和數(shù)據(jù)處理等工作。

      3.1 ESC模塊配置文件

      ESC模塊配置文件主要是對(duì)LAN9252的PDI(Process Data Interface,即過(guò)程數(shù)據(jù)接口)接口、從站狀態(tài)機(jī)和狀態(tài)寄存器以及PDI看門狗寄存器等進(jìn)行相關(guān)配置。EEPROM數(shù)據(jù)格式如圖4所示。

      圖4 EEPROM配置數(shù)據(jù)信息

      ESC模塊配置文件采用ETG協(xié)會(huì)提供的SSC Tool配置工具生成。根據(jù)PDI硬件接口工作模式選擇對(duì)應(yīng)的配置項(xiàng)、設(shè)備版本等信息,配置完成后導(dǎo)入對(duì)象字典描述文件以及數(shù)據(jù)類型,然后點(diǎn)擊生成便可自動(dòng)生成EEPROM配置文件。

      3.2 STM模塊軟件設(shè)計(jì)

      STM模塊軟件主要完成的功能為內(nèi)核初始化、FSMC接口和EXIT接口初始化、EtherCAT協(xié)議棧及相關(guān)變量數(shù)據(jù)的初始化,最終進(jìn)入EtherCAT協(xié)議棧狀態(tài)機(jī)。流程如圖5所示。

      圖5 軟件流程圖

      STM模塊內(nèi)核初始化主要是對(duì)STM32F732芯片的時(shí)鐘進(jìn)行配置,使其工作在216 MHz頻率下,并配置好EtherCAT協(xié)議棧所需的定時(shí)器資源。FSMC接口和EXIT接口的初始化是根據(jù)STM模塊與LAN9252的硬件接口關(guān)系進(jìn)行相應(yīng)的配置工作。在本方案中STM模塊與LAN9252的通信接口采用FSMC接口,所以需要根據(jù)配置文件中定義好的PDI接口的特性對(duì)FSMC接口進(jìn)行配置。本方案中PDI接口采用16位變址尋址模式,因此FSMC接口需配置成16位PSRAM模式。本方案中PSRAM模式使用的是BANK0區(qū)域,所有此時(shí)以0x60000000為起始地址的64 KB空間將映射為L(zhǎng)AN9252的內(nèi)存空間。由于EtherCAT的狀態(tài)事件以及同步數(shù)據(jù)是通過(guò)中斷控制模式進(jìn)行讀寫的,所以需要針對(duì)LAN9252的3個(gè)中斷對(duì)STM模塊的EXIT接口進(jìn)行配置。本方案配置了EXTI1、EXTI2、EXTI3作為L(zhǎng)AN9252的中斷接口。至此,STM模塊的初始化功能已完成。

      EtherCAT協(xié)議棧主要實(shí)現(xiàn)EtherCAT狀態(tài)機(jī)的變換、數(shù)據(jù)的讀寫等功能。該協(xié)議棧由SSC Tool配置工具生成。但是,生成的協(xié)議棧不能直接在STM模塊上運(yùn)行,需要根據(jù)STM模塊的硬件設(shè)計(jì)進(jìn)行相應(yīng)的移植工作。首先需要對(duì)3個(gè)中斷處理函數(shù)EXTI0_IRQHandler、 EXTI1_IRQHandler、EXTI2_IRQHandler進(jìn)行修改。將這3個(gè)函數(shù)與EtherCAT協(xié)議棧中斷處理函數(shù)PDI_Isr()、Sync0_Isr()以及Sync1_Isr()相關(guān)聯(lián);其次將定時(shí)器中斷函數(shù)TIM2_IRQHandler()和ECAT_CheckTimer()函數(shù)相關(guān)聯(lián),以實(shí)現(xiàn)EtherCAT協(xié)議棧運(yùn)行時(shí)的定時(shí)要求;最后將FSMC接口的讀寫函數(shù)改寫到EtherCAT協(xié)議棧的4個(gè)讀寫函數(shù)HW_EscRead()、HW_EscReadIsr()、HW_EscWrite()、HW_EscWriteIsr()中便完成了EtherCAT協(xié)議棧在STM模塊上的移植工作。

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

      傳統(tǒng)的控制系統(tǒng)一般采用RS232、CAN等通訊方式進(jìn)行控制命令和數(shù)據(jù)的傳輸,控制命令和數(shù)據(jù)傳輸?shù)膶?shí)時(shí)性和同步性很難得到保證,無(wú)法做到實(shí)時(shí)高精度的控制。通過(guò)上述方法實(shí)現(xiàn)的基于LAN9252芯片的EtherCAT從站其優(yōu)異的通訊性能和同步特性保證了控制系統(tǒng)的精度和實(shí)時(shí)性。該EtherCAT從站已經(jīng)在某型產(chǎn)品的伺服驅(qū)動(dòng)平臺(tái)上使用,應(yīng)用穩(wěn)定可靠,效果良好,具有很好的實(shí)際應(yīng)用和推廣價(jià)值。

      猜你喜歡
      配置文件中斷以太網(wǎng)
      提示用戶配置文件錯(cuò)誤 這樣解決
      基于1500以太網(wǎng)養(yǎng)豬場(chǎng)的智能飼喂控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
      搭建簡(jiǎn)單的Kubernetes集群
      互不干涉混用Chromium Edge
      忘記ESXi主機(jī)root密碼怎么辦
      跟蹤導(dǎo)練(二)(5)
      千里移防,衛(wèi)勤保障不中斷
      解放軍健康(2017年5期)2017-08-01 06:27:44
      談實(shí)時(shí)以太網(wǎng)EtherCAT技術(shù)在變電站自動(dòng)化中的應(yīng)用
      電子制作(2017年24期)2017-02-02 07:14:44
      一種90W高功率以太網(wǎng)供電系統(tǒng)的設(shè)計(jì)
      淺談EPON與工業(yè)以太網(wǎng)在貴遵高速公路中的應(yīng)用
      漳平市| 密山市| 安福县| 荔浦县| 孝义市| 上饶市| 荣成市| 寿光市| 吉林市| 石楼县| 湟源县| 西平县| 宜宾市| 萨迦县| 信宜市| 彰化市| 榕江县| 安丘市| 宜川县| 天气| 怀宁县| 杂多县| 新野县| 阿拉善左旗| 炉霍县| 贵溪市| 邛崃市| 富源县| 依兰县| 平阴县| 深圳市| 芜湖县| 古蔺县| 奇台县| 琼结县| 新竹县| 华亭县| 岳普湖县| 灵寿县| 陇西县| 南召县|