TwinCAT ENI 数据详解

news/2024/11/17 9:52:03/

 使用倍福TwinCAT工具可以生成ENI,先对ENI的cyclic frame数据进行解释说明

 需要提前了解EtherCAT报文格式,可参考下面文章

EtherCAT报文格式详解_ethercat listtype 1_EtherCat技术研究的博客-CSDN博客icon-default.png?t=N4N7https://blog.csdn.net/gufuguang/article/details/119876404

 可以看到ENI中的数据和TwinCAT软件上显示的数据一致

第一条cmd cmd=0,就是NOP 命令 len 4字节

下面解释

<InputOffs>16</InputOffs>

<OutputOffs>16</OutputOffs>

通过 ECAT报文格式我们知道,报文头有16字节,所以第一个命令在报文中的偏移位置是16

第二条命令

<InputOffs>32</InputOffs>

<OutputOffs>32</OutputOffs>

 第一条命令起始偏移16,第一条命令长度可根据ECAT CMD格式计算出来 = 10 + Data + 2

Data是4字节所以 第一条命令长度 = 10 + 4 +2 = 16

第二条命令起始地址就是 = 16 + 16 = 32 后面依次类推

 ProcessImage中的<BitOffs>752</BitOffs>也是实际数据的bit的偏移量

Inputs 对应cmd 10,可以看到命令偏移是84byte再加上10字节的cmd header = 94

94 x 8 =  752就是pdo数据的偏移bit位置


http://www.ppmy.cn/news/76448.html

相关文章

shell 数组遍历的3种方法

shell数组的基本知识请参阅我的上一篇博客shell 数组 首先创建一个数组 array( A B C D 1 2 3 4) 1.标准的for循环 for(( i0;i<${#array[]};i)) do #${#array[]}获取数组长度用于循环 echo ${array[i]}; done; 2.for … in 遍历&#xff08;不带数组下标&#xff09;&…

【环境安装】Linux环境中docker安装redis

一、找到一个合适的docker的redis的版本 可以去docker hub中去找一下 https://link.juejin.cn/?targethttps%3A%2F%2Fhub.docker.com%2F_%2Fredis%3Ftab%3Dtags 二、使用docker安装redis 我这里安装了具体的某个版本 docker pull redis // 下载最新版Redis镜像 (等同于 : d…

JavaWeb15 - 线程数据共享和安全 -ThreadLocal

1. 什么是 ThreadLocal ThreadLocal 的作用&#xff0c;可以实现在同一个线程数据共享, 从而解决多线程数据安全问题.ThreadLocal 可以给当前线程关联一个数据(普通变量、对象、数组)set 方法 [源码!]ThreadLocal 可以像 Map 一样存取数据&#xff0c;key 为当前线程, get 方法…

WIN提权补丁提权,at,sc,psexes提权

win提权分为web和本地提权 web提权就是getshell后&#xff0c;权限是网站权限&#xff0c;要进行提权 本地提权是本地用户进行提权 本地用户的权限大于网站权限&#xff0c;所以本地提权成功概率比web提权概率大 因为我们做渗透测试&#xff0c;一般都是从网站入侵。所以大…

码蹄杯语言基础:基本输入输出(C语言)

​ 码蹄集网站地址&#xff1a;https://www.matiji.net/exam/ojquestionlist ⭐MT1001程序设计入门 欢迎来到程序设计的世界&#xff0c;请编写一个简单程序&#xff0c;输出2行字符&#xff0c;第一行为“This is my first program!”&#xff0c;第二行为“Coding is fun!”…

敏捷项目管理阶段框架-适应、结束阶段实践

适应阶段实践 通过持续的反馈和适应以调整项目&#xff0c;交付价值 迭代评审会议、迭代回顾会议 展示评审、技术评审、速度、燃尽图 展示与评审 团队完成特定功能时&#xff0c;团队定期展示工作产品&#xff0c;展示后&#xff0c;PO接受或拒绝故事 迭代结束时展示频繁交付…

BSN专网正式进入欧洲市场,推动全球公有云分布式进程

原标题&#xff1a;《BSN专网产品正式进入欧洲市场&#xff0c;放眼全球》 日前&#xff0c;欧洲云计算解决方案提供商CloudSigma与BSN专网海外运营商香港红枣科技正式签订了合作协议&#xff0c;CloudSigma将把BSN专网&#xff08;BSN分布式云管平台&#xff09;引入其覆盖瑞…

t检验.医学统计实例详解

t检验是医学统计学中常用的一种假设检验方法&#xff0c;用于比较两个样本均值是否有显著差异。它可以帮助医学研究者确定一个治疗方法或药物是否显著地改善了患者的症状或生理指标。 在医学研究中&#xff0c;t检验常被用来&#xff1a; 比较两个独立样本的均值&#xff1a;…