
EtherCAT主站SOEM专栏
本专栏主要介绍EtherCAT的相关概念,同时介绍基于SOEM开发主站的相关知识。
雪花飞龙
2014年入学哈尔滨工业大学,2018年毕业,专业机械设计制造及自动化,研究方向机械设计;2018年9月入学哈尔滨工业大学(深圳),专业机械电子工程,研究方向协作机器人。
展开
-
EtherCAT主站SOEM源码解析----分布时钟DC
EtherCAT主站SOEM源码解析----分布时钟DC 分布时钟(DC,Dsitributed Clock)可以使所有EtherCAT设备使用相同的系统时间,从而控制各设备任务的同步执行。 1、DC从站 支持分布式时钟的从站称为DC从站,同步原理如下所示: 其中, Tref: 参考时间,网络转载 2020-11-16 22:27:09 · 3648 阅读 · 2 评论 -
EtherCAT总线通信Freerun、SM、DC三种同步模式分析
EtherCAT总线三种同步模式分析 一、 分布式时钟作用 使所有EtherCAT设备使用相同的系统时间,从而控制各设备任务的同步执行。 二、 名词解析 1、 现场总线高速数据传递:即主站周期的向从站发送输出信息并周期地读取从站的输入信息 2、 Output Valid:输出有效,指的是主站输出有效,表示的是从站将数据帧中对应数据从同步管理器通道上下载下来的一个过程。 3、 Input Latch:输入锁存,锁存信号(LATCH0/1)用于给外部信号打上时间戳(time stamp) (在DC模式下转载 2020-11-16 19:14:15 · 6248 阅读 · 0 评论 -
EtherCAT通信主站----PDO过程数据映射
EtherCAT通信主站----PDO过程数据映射FMMU与Sync Manager配置PDO过程数据映射PDO映射PDO分配PDO 映射的步骤EtherCAT其中COE在数据链路层采用EtherCAT协议,在运用层采用CanOpen协议,其和兴是对象字典,对PDO和SDO相关知识,可以参考CanOpen通信----PDO与SDO,本文将只PDO的映射相关知识。FMMU与Sync Manager配置为了使SDO与PDO数据能在EtherCAT数据链路层上得到正确解析,需要对FMMU与Sync Mana原创 2020-09-07 22:38:33 · 21693 阅读 · 5 评论 -
EtherCAT主站SOEM函数详解---- ecx_statecheck
EtherCAT主站SOEM函数详解---- ecx_statecheckecx_statecheck头文件ecx_statecheck源码介绍状态检测函数,该函数内部调用了状态读取函数,状态读写可以看另一篇博客EtherCAT主站SOEM函数详解---- ecx_readstate、ecx_writestate,本章涉及到相关知识只做简单介绍。ecx_statecheck头文件ecx_statecheck函数在ethercatmain.h文件中,器函数头和介绍如下/** Check actual原创 2020-09-06 11:15:11 · 2073 阅读 · 0 评论 -
EtherCAT主站SOEM函数详解---- ecx_readstate、ecx_writestate
EtherCAT主站SOEM函数详解----状态读取函数ecx_readstateecx_writestate在控制驱动器等从站中,经常需要只知道从站的状态,在SOEM开发的主站中,如何读取从站的工作状态是非常重要的,本文将重点讲解SOEM中读取从站工作状态的函数。ecx_readstate该函数在ethercatmain.h文件中,用于读取从站的状态/** Read all slave states in ec_slave. * @param[in] context = context stru原创 2020-09-04 17:18:50 · 2814 阅读 · 0 评论 -
EtherCAT主站SOEM函数详解----SDO读写函数
EtherCAT主站SOEM函数详解----读写报文ethercatcoe.h头文件SDO读写函数SDO读取函数SDO写函数获取SOEM主站或了解文件分布,可以读取我以前写的博客SOEM主站软件包及函数头文件介绍,本篇ethercatcoe文件相关的函数,COE的全称是CanOpen over EtherCAT, 采用CanOpen的相关协议开发了EtherCAT的运用层,核心是对象字典,想了解PDO相关知识,可以读CanOpen通信----PDO与SDO。ethercatcoe.h头文件为了比较全面原创 2020-09-03 11:18:13 · 7986 阅读 · 0 评论 -
开源Ethercat主站 SOEM和IgH的比较
简介EtherCAT的主站开发是基于EtherCAT机器人控制系统的开发中非常重要的环节。目前常见开源的主站代码为的RT-LAB开发的SOEM (Simple OpenSource EtherCAT Master)和EtherLab的the IgH EtherCAT® Master。使用起来SOEM的简单一些,而the IgH EtherCAT® Master更复杂一些,但对EtherCAT的实现更为完整。异同具体比较如下表:主站 SOME(Simple OpenSource EtherC...转载 2020-08-28 16:41:10 · 2834 阅读 · 0 评论 -
EtherCAT通信DS402协议----PDO映射
EtherCAT通信DS402协议----PDO映射PDO 映射PDO 分配PDO 映射的步骤EtherCAT 从站的过程数据由同步管理器通道对象组成,每个同步管理器通道对象描述了 EtherCAT 过程数据的一致性区域,并且包含多个过程数据对象。具备应用控制功能的EtherCAT 从站应该支持 PDO 映射和 SM-PDO-Assign 对象的读取。关于PDO的介绍可以参照我写的CanOpen通信----PDO与SDOPDO 映射PDO 映射涉及对象字典到 PDOs 的应用对象(实时过程数据)映射关原创 2020-06-08 10:12:04 · 8269 阅读 · 1 评论 -
CanOpen通信----PDO与SDO
CanOpen通信----PDO与SDO原创 2020-06-07 21:51:25 · 27325 阅读 · 5 评论 -
EtherCAT通讯DS402协议----控制模式
EtherCAT通讯DS402协议----控制模式控制模式查看和设定查看控制器支持的控制模式:6502h设置控制器的模式:6060h查看当前控制模式:6061h控制模式详解轮廓位置模式Profiled Position驱动器控制电机有多种模式,如轮廓位置模式、同步位置模式、同步速度模式等,不同的控制模式具有不同的特性,如何选择这些控制模式实现最优的性能是机器人开发中的一个重要课题。控制模式查看和设定当我们一款控制器时,可以通过6502h查看控制器支持的控制模式,然后通过6060h设置需要的控制模式,最原创 2020-06-07 16:26:32 · 15394 阅读 · 2 评论 -
关节伺服控制模式----轮廓位置模式Profile Position
关节伺服控制模式----轮廓位置模式Profile Position轮廓位置模式简介运动到一个点:set-point目标点变更无缓存目标点变更:single set-point有缓存目标点变更:set of set-point关节伺服控制,轮廓位置模式是最常用的模式,用于从一个点运动到另一个点(point to point),其也是控制模式中比较复杂的模式。该模式包含了两个部分,轨迹规划器和控制器,规划器一般采用梯形规划,控制器采用PI或PID控制器。轮廓位置模式简介轮廓位置模式,实际输入的是目标位置原创 2020-06-07 16:25:22 · 8007 阅读 · 2 评论 -
EtherCAT通讯DS402协议----Controlword和Statusword
EtherCAT通讯DS402协议----Controlword和Statusword控制字和状态字作用控制字:controlword控制字和状态字作用主站通过控制字(controlword)对驱动器控制,通过读取驱动器的状态字(statusword)获取驱动器的状态。驱动器的8种状态转换参照EtherCAT状态机详解控制字:controlword...原创 2020-06-07 10:18:09 · 18315 阅读 · 2 评论 -
EtherCAT基于SOEM建立主站程序
simple_test.c解读基于SOEM创建主站步骤主要函数介绍ecx_init函数ecx_config_init函数ecx_config_map_group函数simple_test.c文件基于SOEM创建主站步骤主要函数介绍ecx_init函数功能:初始化SOEM,将socket绑定到ifnameecx_init函数定义在ethercatmain.h文件,其有两种参数形式,由于大部分函数都是这两种格式,所以后文将不做区分处理。int ec_init(const char * ifname)原创 2020-06-05 14:55:57 · 8464 阅读 · 6 评论 -
EtherCAT及SOEM主站技术术语
EtherCAT及SOEM主站名词解释EtherCAT常用名词EtherCAT常用名词SII: Slave Information Interface,从站信息接口ESI: EtherCAT Slave Interface,从站站信息ENI: EtherCAT Network Information,网络信息文件,XML格式,描述了从站的拓扑结构和初始化指令。...原创 2020-06-05 08:42:09 · 1756 阅读 · 0 评论 -
EtherCAT主站SOEM源码解析----同步管理器SM配置
本文介绍SOEM(Simple Open Source Master)如何配置从站的SM(SyncManager)寄存器。基于SOEM-1.3.1。 1、SM寄存器SM配置寄存器从0x800开始,每个通道使用8个字节,如下图所示: 其中,物理起始地址和控制寄存器使用从站EEPROM中的值,长度根据PDO中映射的数据长度计算。2、寄存器初始化初始化过程中,SOEM会通过SII接口读取从站EEPROM中SM信息(分类信息类型为41),并赋给相应的结构体,具体代码在/soem/Etherc转载 2020-06-04 22:03:20 · 4044 阅读 · 0 评论 -
EtherCAT主站SOEM源码解析----EEPROM访问
SOEM(Simple Open EtherCAT Master)是一个开源的EtherCAT主站。本文介绍其中读取从站EEPROM信息的步骤。1、ESC EEPROM访问控制寄存器从站控制芯片ESC EEPROM控制寄存器如下: 2、读EEPROM步骤 读的一般步骤为: (1) 读取EEPROM控制/状态寄存器0x0502:0x0503的内容,确认EEPROM没有处于Busy状态 (2) 向0x0502:0x0503写入读控制命令,写入的值为0x0100,向0x0504:0x050转载 2020-06-04 21:47:04 · 1929 阅读 · 0 评论 -
EtherCAT主站SOEM源码解析----ecx_siiPDO()
1、从站EEPROM的PDO信息从站EEPROM存储的PDO信息如下如所示: TxPDO的类型名为50(0x0032),RxPDO的类型名为51(0x0033). 每个PDO占用的EEPROM字节数为8+8*er(er位Entry个数)。2、读取PDOx信息SOEM中函数ecx_siiPDO()读取EEPROM中PDO信息并: (1) 统计每个SM所对应的bit length (2) 返回bit length的总和。int ecx_siiPDO(ecx_contextt *contex转载 2020-06-04 21:30:36 · 1366 阅读 · 0 评论 -
EtherCAT主站SOEM源码解析----Raw Socket
SOEM使用Raw Socket收发EtherCAT帧,通过系统调用bind、send和recv实现EtherCAT通信。1、创建Socket初始化函数ec_init(ifname)最终会调用/oshw/linux/nicdrv.c下的以下这个函数完成绑定网卡和创建1个Raw Socket。int ecx_setupnic(ecx_portt *port, const char *ifname, int secondary)Line179:/* we use RAW packet socket,转载 2020-06-04 20:27:42 · 1564 阅读 · 0 评论 -
EtherCAT主站SOEM源码解析----IOmap
SOEM通过函数ec_config_map(&IOmap)完成逻辑地址和物理地址的映射,应用程序需要定义一个数组IOmap,例如: char IOmap[4096]; 完成映射后,应用程序就可以通过读写数组IOmap[]来完成与从站的数据交换。1、映射关系SOEM首先将所有从站的输出映射到IOmap[]的开始位置,然后是输入,如下图所示: 2、具体实现函数ec_config_map(&IOmap)最终会调用/soem/EthercatConfig.c中的以下函数转载 2020-06-04 20:17:45 · 2260 阅读 · 0 评论 -
EtherCAT数据帧及SOEM报文数据结构介绍
EtherCAT数据帧及SOEM报文数据结构介绍EtherCAT数据帧结构介绍总报文子报文EtherCAT数据帧结构介绍总报文参照电子科技大学,蒲婉玲的学位论文“EtherCAT 主站与从站设计与实现”,Ether CAT 通信帧结构采用标准以外网帧结构,是通过对传统协议进行修改形成,在标准协议里插入专用帧类型的 Ether CAT 数据帧,也就是说,标准协议的数据内容就是 Ether CAT 的数据帧。专用帧类型用 0x88A4 进行标记。也因为如此,Ether CAT 通信可被标准的以太网通信完全原创 2020-06-04 19:50:26 · 5927 阅读 · 1 评论 -
EtherCAT状态机详解
EtherCAT状态机详解canopen over ethercat参考模型网络状态机 EtherCAT State Machinecanopen over ethercat参考模型从下图中可以看出,运行模型可以分为如下几层1 商家软件运用层2 基于CANopen DS402运用层3 数据链路层4 物理连接层网络状态机 EtherCAT State Machine网络状态机如下图所示对应功能介绍:...原创 2020-06-04 16:33:59 · 9224 阅读 · 0 评论 -
SOEM主站软件包及函数头文件介绍
SOEM主站软件包介绍下载软件包地址主要函数介绍下载软件包地址在github上直接下载代码包下载地址:https://github.com/OpenEtherCATsociety/SOEM或者在开源社区获取:地址:https://openethercatsociety.github.io/下载解压后,有如下文件主要函数介绍引用sucre的介绍,主要函数功能如下...原创 2020-06-03 17:11:51 · 2002 阅读 · 2 评论