0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

KPA EtherCAT主站軟件如何做移植測試

廣州虹科電子科技有限公司 ? 來源:工業(yè)通訊 ? 作者:虹科工業(yè)控制 ? 2022-05-18 15:54 ? 次閱讀

虹科KPA EtherCAT主站是一款協(xié)議棧產(chǎn)品,能夠使用戶快速利用EtherCAT技術(shù)的所有好處,例如實時操作、極短的循環(huán)時間、以及最低成本的最高性能。該協(xié)議棧的先進(jìn)架構(gòu)專注于可移植到不同的操作系統(tǒng),可適配到各種硬件平臺、并且可通過基礎(chǔ)(Class B)、標(biāo)準(zhǔn)(Class A)和超值包進(jìn)行縮放。本篇文章將介紹虹科KPA EtherCAT主站軟件如何基于Xilinx ZYNQ UltraScale+做移植測試。

# Description

開發(fā)環(huán)境

# 硬件開發(fā)板:Xilinx HW-Z1-ZCU102 revision1.1

# EtherCAT主站軟件開發(fā)包:

MDK_xilinx-2018.3_freertos_a53_trial_v2.4.48714.0-release.zip

HW_SAMPLE_xilinx-2018.3_freertos_a53_trial_v2.4.48714.0-release.zip

備注:由于前期軟件開發(fā)包是基于revision1.0的硬件以及vivado2018.3移植測試的,導(dǎo)致該軟件包在vivado2018.3和新版本硬件移植測試出現(xiàn)問題,具體問題是制作完boot.bin后,上電沒法啟動運(yùn)行;查了一下xilinx官網(wǎng),說是新版本硬件需要使用vivado2019.1及其以上版本,后來在vivado 2019.1重新創(chuàng)建IPcore硬件工程,工程文件是zcu102_freeRTOS,重新生成bit文件(zcu102_freertosproject_1project_1.sdkdesign_1_wrapper_hw_platform_0)和fsbl.elf文件(zcu102_freertosproject_1project_1.sdkfsblRelease)覆蓋軟件包原路徑(\externalsoot)的bit文件和fsbl.elf,問題解決;

Step1 軟件安裝

1. 安裝KPA studio軟件,Studio_v1.12.417.0_x86.zip;2. 安裝基于windows的主站插件,MRT_WIN32_TRIAL_v1.6.44171.0.msi;3. 安裝cmake環(huán)境,可到cmake官網(wǎng)下載exe安裝,安裝后查詢到cmake版本如下:

9188caea-d2ab-11ec-bce3-dac502259ad0.png

參考《KPA Studio簡易操作手冊.pdf》使用EtherCAT配置軟件,導(dǎo)出網(wǎng)絡(luò)配置文件/ENI文件,可命名為master.xml或者其他名字,需與mkpa_config.h中命名保持一致,導(dǎo)出的ENI文件,格式一定要選擇null-terminated格式。

91a3c2aa-d2ab-11ec-bce3-dac502259ad0.png

Step2 軟件編譯

MDK_xilinx-2018.3_freertos_a53_trial_v2.4.48714.0-release.zip解壓到mdk_a53文件夾下

91fdc584-d2ab-11ec-bce3-dac502259ad0.png

進(jìn)入mdk_a53samples路徑下修改對應(yīng)樣例程序,此處每個不同的樣例程序包含不同的API,具有不同的功能,此處以24_DriveRotationCiA402為例,這是一個簡單運(yùn)行單軸伺服的樣例程序,為了適配邁信伺服驅(qū)動器,需保持C文件中的描述和ENI文件描述一致,修改后保存

92285d12-d2ab-11ec-bce3-dac502259ad0.png

9251be00-d2ab-11ec-bce3-dac502259ad0.png

進(jìn)入mdk_a53下,打開build.bat,修改編譯器路徑,路徑是xilinx SDK安裝路徑

92749dda-d2ab-11ec-bce3-dac502259ad0.png

運(yùn)行cmd,進(jìn)入該路徑下,運(yùn)行build.bat,編譯所有樣例代碼,包括編譯24樣例,在uildsamples路徑下生成24_DriveRotationCiA402.elf文件

928ec6ec-d2ab-11ec-bce3-dac502259ad0.png

Step3 創(chuàng)建和運(yùn)行boot.bin

進(jìn)入mdk_a53externalsoot路徑,根據(jù)readme文件以及24_DriveRotationCiA402.bif文件;

拷貝zcu102_freeRTOS內(nèi)vivado工程生成的design_1_wrapper.bit()文件到該路徑下,覆蓋原來bit文件;

zcu102_freertosproject_1project_1.sdkfsblRelease下的fsbl.elf拷貝到該路徑下,覆蓋原來fsbl.elf文件;

拷貝uildsamples路徑下生成的24_DriveRotationCiA402.elf到該路徑下;

拷貝生成的ENI文件(master.xml)文件到該路徑下

打開Xilinx XSCT tool進(jìn)入到externalsoot路徑下,生成boot.bin

92c2b1dc-d2ab-11ec-bce3-dac502259ad0.png

將boot.bin文件拷貝到SD卡中,設(shè)置開發(fā)板SD卡啟動,上電運(yùn)行

92e91746-d2ab-11ec-bce3-dac502259ad0.png

Step4 性能測試

一般情況下EtherCAT主站性能測試會關(guān)注主站通訊周期,circle time是否穩(wěn)定,抖動多少,因此可以設(shè)置在不同的circle time,比如2ms,1ms,500us,250us,125us等條件下測試抖動,可以采用第三方的抓包工具+wireshark進(jìn)行報文分析,不同主站周期,需要修改代碼以及ENI文件的circle time,此處以1ms主站周期,郵箱任務(wù)周期是5ms(主站周期的5倍)

9311af3a-d2ab-11ec-bce3-dac502259ad0.png

932e435c-d2ab-11ec-bce3-dac502259ad0.png

抓包方式,主站和從站直接接入第三方的抓包工具,連接方式如下示意圖,可以先運(yùn)行主站,待主從通訊穩(wěn)定后,再進(jìn)行數(shù)據(jù)抓包,這樣抓出來的數(shù)據(jù)包就是pdo數(shù)據(jù)/過程數(shù)據(jù),也可以主站啟動前,開始抓包,這樣就可以把整個啟動過程的數(shù)據(jù)抓取出來,但是過濾時,op前的報文數(shù)據(jù)就不是我們需要分析的數(shù)據(jù)了。

935d5e62-d2ab-11ec-bce3-dac502259ad0.png

9382b572-d2ab-11ec-bce3-dac502259ad0.png

對Wireshark數(shù)據(jù)包進(jìn)行針對性分析,設(shè)置時間顯示格式如下:

9401d5a0-d2ab-11ec-bce3-dac502259ad0.png

使用ecat.ado == 0x130命令,過濾出從站在第幾條報文處進(jìn)入op狀態(tài)的,這里是33900,意味著33900前的報文不能用于分析circle time,因為pdo數(shù)據(jù)/周期性數(shù)據(jù)只在從站進(jìn)入op后才被發(fā)送

9440e394-d2ab-11ec-bce3-dac502259ad0.png

分析周期性報文,注意到每個周期性報文包含三個子報文(邏輯尋址)以及一個DC相關(guān)的ARMW命令

94587a2c-d2ab-11ec-bce3-dac502259ad0.png

過濾出周期性報文,使用該指令ecat.sub1.cmd == LRD && ecat.sub1.cnt == 0,過濾出子報文1為LRD且計算器值為0(表示從主站發(fā)出,未經(jīng)過從站)的周期性報文,選擇三角進(jìn)行報文排序,可以是從小到大,或者從大到小

最小周期是999.496us

949bd984-d2ab-11ec-bce3-dac502259ad0.png

最大周期1000.536us

94cbd206-d2ab-11ec-bce3-dac502259ad0.png

結(jié)論:可以看出1ms主站周期下,基于zcu102開發(fā)板,測試出來的主站周期的抖動是ns級別,實際在500us和250us,125us條件下,抖動都是在ns級別。

原文標(biāo)題:虹科干貨 | 虹科KPA EtherCAT主站軟件在Xilinx ZYNQ UltraScale+上移植測試

文章出處:【微信公眾號:廣州虹科電子科技有限公司】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Xilinx
    +關(guān)注

    關(guān)注

    71

    文章

    2158

    瀏覽量

    120874
  • ethercat
    +關(guān)注

    關(guān)注

    18

    文章

    637

    瀏覽量

    38558
  • 移植測試
    +關(guān)注

    關(guān)注

    0

    文章

    2

    瀏覽量

    1697

原文標(biāo)題:虹科干貨 | 虹科KPA EtherCAT主站軟件在Xilinx ZYNQ UltraScale+上移植測試

文章出處:【微信號:Hongketeam,微信公眾號:廣州虹科電子科技有限公司】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    基于全志T507-H的Igh EtherCAT案例分享

    驅(qū)動器B的IN網(wǎng)口。 為便于測試,我司提供的經(jīng)驗證的IgH EtherCAT程序為案例\"igh_ethercat\\\\images
    發(fā)表于 06-03 09:59

    基于EtherCAT通信控制器設(shè)計

    基于EtherCAT通信控制器設(shè)計
    發(fā)表于 09-20 16:05

    EtherCAT代碼和方案-含ZedBoard測試數(shù)據(jù)對比

    EtherCAT代碼和方案-含ZedBoard測試數(shù)據(jù)對比
    發(fā)表于 09-20 16:09

    基于賽靈思FPGA的EtherCAT運(yùn)動控制

    基于賽靈思的FPGA的EtherCAT總線控制 ,論壇有運(yùn)動控制這方面的技術(shù)嗎?目前我已實現(xiàn)帶32軸同步運(yùn)行,同步抖動±75ns,控制精度125us。感興趣的可以一起探討下
    發(fā)表于 07-23 12:00

    基于Sitara AM57x千兆位以太網(wǎng)EtherCAT接口解決方案

    ETG.1500 規(guī)范的 EtherCAT A 類或 B 類協(xié)議棧此參考設(shè)計在 TMDXIDK5728 板上經(jīng)過了測試,包括文檔、軟件
    發(fā)表于 12-26 14:40

    找開發(fā)EtherCat的設(shè)計人員

    設(shè)計要求:1、 帶EtherCat接口。2、 總從最多32個。3、 伺服從最多16個。4、 有一組伺服可以實現(xiàn)兩軸同步功能。5、有用
    發(fā)表于 08-19 15:30

    開源!ZYNQ IgH EtherCAT方案分享

    前 言:創(chuàng)龍科技已基于IMX8、ZYNQ、AM5728、AM5708、AM437x、AM335x、T3/A40i等平臺提供了開源EtherCATIgH案例。本文主要演示
    發(fā)表于 10-29 11:17

    【沁恒 CH32V208 開發(fā)板免費(fèi)試用】2.EtherCat移植前準(zhǔn)備(一)

    本次EtherCat移植是基于SOEM源碼進(jìn)行移植,收集并整理部分資料作為學(xué)習(xí)EtherCat
    發(fā)表于 04-17 10:29

    KPA EtherCAT站在Zynq平臺的移植測試

    實驗平臺包括三個組成部分:待測試EtherCAT系統(tǒng)、實時數(shù)據(jù)獲取單元和離線的實驗數(shù)據(jù)分析單元,如下圖所示。為構(gòu)建的嵌入式實時EtherCAT
    的頭像 發(fā)表于 07-30 09:45 ?3.9w次閱讀
    <b class='flag-5'>KPA</b> <b class='flag-5'>EtherCAT</b><b class='flag-5'>主</b>站在Zynq平臺的<b class='flag-5'>移植</b>與<b class='flag-5'>測試</b>

    EtherCAT 方案橫向?qū)Ρ?/a>

    方案類別 軟 系統(tǒng)型 硬件 方案描述 通過運(yùn)行于MCU上的
    的頭像 發(fā)表于 04-25 16:01 ?1735次閱讀

    虹科干貨 | 虹科KPA EtherCAT軟件在Xilinx ZYNQ UltraScale+上移植測試

    虹科KPAEtherCAT是一款協(xié)議棧產(chǎn)品,能夠使用戶快速利用EtherCAT技術(shù)的所有好處,例如實時操作、極短的循環(huán)時間、以及最低成本的最高性能。該協(xié)議棧的先進(jìn)架構(gòu)專注于可移植
    的頭像 發(fā)表于 05-20 09:46 ?1268次閱讀
    虹科干貨 | 虹科<b class='flag-5'>KPA</b> <b class='flag-5'>EtherCAT</b><b class='flag-5'>主</b><b class='flag-5'>站</b><b class='flag-5'>軟件</b>在Xilinx ZYNQ UltraScale+上<b class='flag-5'>移植</b><b class='flag-5'>測試</b>

    【虹科干貨】使用Profishark進(jìn)行EtherCAT性能測試

    01EtherCAT性能測試一般情況下EtherCAT
    的頭像 發(fā)表于 05-20 09:45 ?2644次閱讀
    【虹科干貨】使用Profishark進(jìn)行<b class='flag-5'>EtherCAT</b><b class='flag-5'>主</b><b class='flag-5'>站</b>性能<b class='flag-5'>測試</b>

    虹科干貨 | 虹科KPA EtherCAT軟件在Xilinx ZYNQ UltraScale+上移植測試

    虹科KPAEtherCAT是一款協(xié)議棧產(chǎn)品,能夠使用戶快速利用EtherCAT技術(shù)的所有好處,例如實時操作、極短的循環(huán)時間、以及最低成本的最高性能。該協(xié)議棧的先進(jìn)架構(gòu)專注于可移植
    的頭像 發(fā)表于 05-20 09:44 ?1127次閱讀
    虹科干貨 | 虹科<b class='flag-5'>KPA</b> <b class='flag-5'>EtherCAT</b><b class='flag-5'>主</b><b class='flag-5'>站</b><b class='flag-5'>軟件</b>在Xilinx ZYNQ UltraScale+上<b class='flag-5'>移植</b><b class='flag-5'>測試</b>

    EtherCAT方案之橫向比較

    眾所周知,EtherCAT是開源協(xié)議,使用者可以根據(jù)倍福提供的相關(guān)資料產(chǎn)品開發(fā),而目前主流的EtherCAT解決方案包括:軟
    的頭像 發(fā)表于 05-29 09:38 ?4083次閱讀
    <b class='flag-5'>EtherCAT</b><b class='flag-5'>主</b><b class='flag-5'>站</b>方案之橫向比較

    基于Zynq UltraScale+MPSoC高性能EtherCAT方案

    本文將介紹KPA EtherCAT 站在ZCU102平臺的移植測試
    的頭像 發(fā)表于 07-07 14:15 ?1502次閱讀
    基于Zynq UltraScale+MPSoC高性能<b class='flag-5'>EtherCAT</b><b class='flag-5'>主</b><b class='flag-5'>站</b>方案