EtherCAT Slave Stack Code Tool(SSC)使用笔记 | 您所在的位置:网站首页 › 倍福软件有中文版的吗 › EtherCAT Slave Stack Code Tool(SSC)使用笔记 |
学习EtherCAT之 EtherCAT Slave Stack Code Tool(SSC5.12)使用笔记
文章目录
学习EtherCAT之 EtherCAT Slave Stack Code Tool(SSC5.12)使用笔记前言一、软件及安装二、新建1.新建工程
二、配置选项1.SlaveInformation2.Generic3.Hardware4.EtherCAT State Machine5.Synchronisation6.Application7.PorcessDate8.Mailbox
三.创建Excel表格1.生成excel表格2.添加对象3.生成源代码
四.总结
前言
学习EtherCAT有几个月了,准备做一个EtherCAT从站,摸爬滚打一路走来,遇到不少问题,这里仅作学习记录使用。 移植过的平台 AIR32F103, STM32F103,STM32F407。 从站芯片LAN9252。 EtherCAT Slave Stack Code Tool (SSC) V5.12(该软件自动生成EtherCAT从站核心代码。) SSC(Slave Stack Code Tool)从站协议栈代码工具,是EtherCAT协会为会员免费提供的,使用SSC,可以快速地构建EtherCAT从站代码,保证从站协议栈与最新的EtherCAT协议相匹配,同时还可以生成从站设备描述文件(ESI文件,后缀格式.xml),需要放在TwinCAT安装路径下的/Io/EtherCAT目录下,在使用TwinCAT对设备进行组态时需要使用。是EtherCAT从站设计过程中很重要的一个文件,关于从站设备传输多少数据,是否启用分布式时钟,PHY(LAN9252)与MCU之间如何通信等等重要数据都在这个描述文件中定义。这份XML如果全靠手工编辑,工作量非常大,并且极易出错,有了SSC后,构建XML将非常简单。 一、软件及安装Ethercat从站协议代码工具SSC_V5.12,不好找,大多地方需要币。此处分享下, 链接:https://pan.baidu.com/s/1A9h8i3KzdJBTfxdKe3HU7w?pwd=1234 提取码:1234 安装的话很简单,也就 Next → Install → Finish 即可,路径只能使用默认,无法修改。注:电脑提前安装好 NET4.0 ALTOVA XMLSpy 2013中文版–修改XML 链接:https://pan.baidu.com/s/1lw13oihQDf01SXNbEqmiGw?pwd=1234 提取码:1234 具体安装及使用请参考博文:ALTOVA XMLSpy 2013中文版下载教程及简单运用 二、新建 1.新建工程配置从站的一些设备信息,因为是测试代码可以直接使用默认的选项。实际产品要更加产品信息配置。注:各个厂商需要向EtherCAT协会申请全球唯一标志VendorID(免费的,这也是EtherCAT能迅速占领一定市场的原因)。 名字值描述VENDOR_ID0x000004D8使用LAN9252,就用微芯的ID–对应对象1018.01VENDOR_NAMEMicroChip微芯VENDOR_IMAGE……使用默认GROUP_NAMESSC_DeviceGROUP_IMAGE……使用默认DEVICE_IMAGE……使用默认PRODUCT_CODE0x00009252从站芯片使用了 LAN9252REVISION_NUMBER0x00030111默认SERIAL_NUMBER0x00000000默认DEVICE_PROFILE_TYPE0x00001389默认DEVICE_NAMESSC-Device默认DEVICE_HW_VERSIONn.a.默认DEVICE_SW_VERSION5.12默认
通用选项,全部使用默认即可。 硬件相关选项,注意项如下列表,其余未列出 名字值描述CONTROLLER_16BIT0如果从站代码是为16位微控制器生成的,则应该使用此设置CONTROLLER_32BIT1如果从站代码是为32位微控制器生成的,则应该使用此设置_PIC180这里为0不变。在生成的ecat_def.h中_PIC18需改为 _STM32_IO8并设为1_PIC240使用的是STM32,所以改为0EtherCAT状态机(ESM),使用默认选项 同步管理相关选项,注意项如下列表,其余未列出 名字值描述ECAT_TIMER_INT1我们提供一个1ms的定时器中断,用于Ethercat看门狗的喂狗,设置为 1应用层相关选项,注意项如下列表,其余未列出 名字值描述EL9800_APPLICATION0我们不用EL9800评估板,所以置 0APPLICATION_FILE#include “myapp.h”设为#include “myapp.h”,默认会是 SSC-Device.h项目新建保存以后,再次被打开后,Application项中的选项会变少。
PDO配置选项,注意项如下列表,其余未列出 名字值描述MAX_PD_WRITE_ADDRESS0x1FFF0x2FFF改为0x1FFFMAX_PD_READ_ADDRESS0x1FFF0x2FFF改为0x1FFF邮箱配置选项,注意项如下列表,其余未列出 名字值描述MAX_MBX_WRITE_ADDRESS0x1FFF0x2FFF改为0x1FFFMAX_MBX_READ_ADDRESS0x1FFF0x2FFF改为0x1FFF
参数设置完以后,通过 Tool → Application → Create New 弹出 Excel 表格,新生成的表格如下图 该表格是用来配置对象字典,通过SSC工具导入该表格将自动生成EtherCAT从站代码和XML设备描述文件(ESI)。 定义好的表格如下图所示。 表中仅添加了对象0x6000和0x7000。其中0x1600、0x1A00我们也可以不需要进行定义,最后软件会自动生成。0x1C12和0x1C13最好也是自动生成,如果自己定义的话,最后修改可能比较麻烦。0x1000, 0x1001, 0x1008, 0x1009, 0x100a, 0x1010, 0x1011, 0x1018, 0x10F0, 0x10F1, 0x10F3, 0x1c00, 0x1c32, 0x1c33这些对象字典是根据SSC中的配置自动生成的,不能在这个excel文件中定义。另外子索引是从1开始的,在生成代码的和xml文件的时候会自动添加子索引0,类型是UNSIGNED16。也可以理解为,默认是的子索引0是excel表中索引所在的那行。 3.生成源代码添加完对象以后,然后就是生成应用程序源代码了。步骤没错的话就是自动弹出如下图 初学不久,错误难免,望留言指出。 就这么点笔记,花了我两天时间。 |
CopyRight 2018-2019 实验室设备网 版权所有 |