虹科技术 | 虹科EtherCAT增量编码器输入模块数据采集实操测试
1. 背景介绍
编码器是将信号或数据进行编制、转换为可用以通讯、传输和存储的信号形式的设备。编码器把角位移或直线位移转换成电信号,前者称为码盘,后者称为码尺。按照读出方式编码器可以分为接触式和非接触式两种;按照工作原理编码器可分为增量式和绝对式两类。增量式编码器是将位移转换成周期性的电信号,再把这个电信号转变成计数脉冲,用脉冲的个数表示位移的大小。绝对式编码器的每一个位置对应一个确定的数字码,因此它的示值只与测量的起始和终止位置有关,而与测量的中间过程无关。
在实际应用中,EtherCAT编码器可以将设备的原始信号转换成EtherCAT通信信号,使得控制系统能够利用EtherCAT协议在提供纳秒级精确的同步、灵活的拓扑等方面的优势,进而能够以较低的成本实现精确可靠的控制。
2. 设备介绍
虹科HK-MK5-5002 编码器模块是一个用于 RS422 差分形式输出的增量编码器采集模块。带有32 位正交解码计数器,以及零脉冲、锁存信号的锁存器可读取锁存位置,并把计数与锁存结果通过总线通信传递给控制器,从而实现分布式的编码器采集。

该模块采用4 倍频对所有输入信号的边沿进行采样和计算,可以进一步提高分辨率和采集精度。
虹科HK- MK5-5002的输入通道与输出通道,EtherCAT通信接口以及电源接口,都拥有对应的LED指示灯,用于快速观察和诊断信号与指令状态。

3. 测试过程
3.1 硬件连接
本文主要进行MK5 5002 T000编码器模块读取编码器数据的测试,以KPA Studio软件作为ECAT端的虚拟主站,转动编码器时,在KPA上在线检测MK5 5002编码器模块采集到的数据。
在进行通信测试前,首先要对MK5 5002 T000编码器模块进行硬件连接,如图为完成连接后的硬件部分:

编码器A/B/Z差分信号分别接入HK-MK5-5002模块通道1对应的端子;
编码器电源线分别接入HK-MK5-5002模块的5V和0V对应的端子;
HK-MK5-5002供电电源输入为通信系统供电或现场设备端供电,并带有电气隔离,其坚固的金属外壳能够提供出色的电磁屏蔽和散热性能,IP30防护等级,确保在苛刻的工业生产环境中也能稳定使用,十分安全可靠。
3.2 EtherCAT诊断工具配置
在本次测试中需要用到调试和诊断EtherCAT网络的工具软件,本次我们使用的KPA Studio,主要有以下用途:
(1)连接由 KPA 的主站协议栈开发出来的 EtherCAT 主站,进行 EtherCAT 的网络配置和诊断。
(2)与 KPA 的 EtherCAT 主站软件(MRT)配合,调试各类 EtherCAT 从站,如伺服,IO 等
配置步骤如下:
1)KPA Studio 以及 MRT_WIN32 安装完成后,先双击 Master(Win32)打开 MRT,打开后台任务有 MRT 的运行图标。

2)双击“studio”打开KPA Studio软件,点击“Run without license”,进入操作界面。

3)KPA Studio软件打开后的界面如下:

- 菜单栏:可打开帮助文档,设置软件基本选项,打开数据记录,帧记录等工具;
- 工具栏:新建工程,连接主站,删除主站,拓扑显示等工具;
- EtherCAT 网络拓扑窗口:用于配置 EtherCAT 网络,如从站排序,从站个数等;
- 主从站配置/操作窗口:配置主从站的各类参数,操作主从站,如切换状态机,修改过程数据和邮箱数据等;
- 从站 ESI 文件窗口:显示从站 ESI 文件信息,可导入从站 ESI 文件;
- 诊断窗口:显示各类状态信息及诊断信息。
4)导入从站ESI文件
在扫描从站之前,请先把该从站的 ESI 文件导入到 Studio 软件中,以便Studio 扫描到从站后,可自动匹配相应的 ESI 文件。
在 ESI 文件窗口,右键——Open slaves library folder。

打开路径后,把你的从站 ESI 文件复制到该路径下。
回到 ESI 文件窗口,右键——Reload slaves library,完成导入。

此时,在从站ESI库中,找到如图所示的HK-KB的从站ESI文件,则说明导入成功

3.3 信号采集测试
1)首先,连接本地主站 ,即 Master (WIN32 ),点击图中的connect,成功连接后,选择设备网卡Usb 3.0 to Gigabit Ethernet Adapt,该网卡用于发送 EtherCAT 报文,如下图。

2)使用HK-MK5-5002通道1采集编码器数值,插入网线,连接主站,并给HK-MK5-5002模块上电。在拓扑窗口上,右键 Master1——Scan configuration 扫描已接线好的从站。

3)如果接线正常,且从站已上线,可扫描到从站,如下图,已扫到HK-MK5 5002 EtherCAT从站

4)主站扫出从站模块HK-MK5-5002,鼠标点选Master 1,然后在主从站操作口点选State,如图所示进入OP状态。

5)在KPA软件中,鼠标点选Process Image,然后转动编码器,可以观察到PDO(6000:08-Counter value)的值随着编码器的转动而变化(下图分别是编码器正转和反转时的数据采集效果)。


若编码器转动方向与计数方向相反,可通过设置对象字典0x8000.3(Enable direction inversion)为1,使能反向计数功能。如需通过CoE设置参数,需要先将从站状态机切换至Pre-OP,设置完毕后,需要通过对象字典F003.01(Save Current Paremeters),赋值0x1234,保存当前参数,掉电不丢失,最后将从站状态机OP状态。
4 总结
HK-MK5-5002 编码器模块是一个用于RS422 差分形式输出的增量编码器采集模块,带有32 位正交解码计数器,以及零脉冲、锁存信号的锁存器可读取锁存位置,并把计数与锁存结果通过总线通信传递给控制器,从而实现分布式的编码器采集。该模块采用4 倍频对所有输入信号的边沿进行采样和计算,可以进一步提高分辨率和采集精度。
相关文章:
虹科技术 | 虹科EtherCAT增量编码器输入模块数据采集实操测试
1. 背景介绍 编码器是将信号或数据进行编制、转换为可用以通讯、传输和存储的信号形式的设备。编码器把角位移或直线位移转换成电信号,前者称为码盘,后者称为码尺。按照读出方式编码器可以分为接触式和非接触式两种;按照工作原理编码器可分为…...
2023.05.21 学习周报
文章目录 摘要文献阅读1.题目2.背景3.现存问题和解决方法4.方法4.1 Variational mode decomposition (VMD)4.2 Bidirectional LSTM 5.实验5.1 数据标准化5.2 评价指标5.3 实验过程及结果 6.结论和展望 优劣解距离法有限元1.求解一个简单的传热问题2.有限元如何实现 总结 摘要 …...
资深程序员深度体验ChatGPT一周发现竟然....
周一打卡上班,老板凑到我跟前:“小李啊,这周有个新需求交给你做一下,给我们的API管理平台新增一个智能Mock的功能...”。我条件反射般的差点脱口而出:“这个需求做不了..”。不过在千钧一发之间,我想起了最…...
带你深入了解Android Handler的用法
Android中,Handler是一类用于异步消息传递和线程之间通信的基础框架。一个Handler是一个线程的处理器,可以接收消息,并调度运行它们。使用Handler,应用程序可以将处理器与一个线程关联,以将来的时间运行任务。而使用Ha…...
生于零售的亚马逊云科技,如何加速中国跨境电商企业出海?
导读:跨境电商进入精耕细作的新阶段。 作为中国企业出海的重要领域之一,近几年跨境电商行业处在快速发展中。商务部数据显示,2022年中国跨境电商出口达1.55万亿,同比增长11.7%。2023年1-2月,跨境电商进出口总额同比增长…...
兄弟组件传值$on无法接收值
方法一 前提是必须引入EventBus,而且该方法一刷新数据就没了 1.组件A里,点击事件里面使用$emit传入数据 2.组件A里,mounted里面使用$on接收数据,并把数据赋给EventBus EventBus.$on(detail,(data) > { EventBus.senddata d…...
Spring事务及事务传播机制
一.事务的含义:多个操作封装在一起,要么同时执行成功,一旦有一个操作执行失败,那么全部执行失败。这里给大家举个例子:比如A给B转账50元,而B没有收到这50元,此时A转账B这个操作也需要进行回滚,恢复到A给B没…...
npm i 常见问题
需要注意的是,如果你在使用 NPM 安装包的过程中遇到了任何问题,可以尝试使用 --verbose 参数打印更详细的错误信息,以便更好地诊断问题。例如: npm install --verbose 1、vue老项目缺少编译环境安装依赖报错的问题 待下载的项目…...
Prometheus+Grafana监控系统
一、简介 1、Prometheus简介 官网:https://prometheus.io 项目代码:https://github.com/prometheus Prometheus(普罗米修斯)是一个最初在SoundCloud上构建的监控系统。自2012年成为社区开源项目,拥有非常活跃的开发人员…...
基于脉冲神经网络的物体检测
访问【WRITE-BUG数字空间】_[内附完整源码和文档] 研究的意义在于探索脉冲神经网络在目标检测上的应用,目前主流的脉冲神经网络训练算法有直接BP训练、STDP无监督训练和训练好的ANN的转化,虽然训练算法众多,但是SNN仍然没有一套成熟的训练算…...
Rust每日一练(Leetday0010) 子串下标、两数相除、串联子串
目录 28. 找出字符串中第一个匹配项的下标 Find-the-index-of-the-first-occurrence-in-a-string 🌟🌟 29. 两数相除 Divide Two Integers 🌟🌟 30. 串联所有单词的子串 Substring-with-concatenation-of-all-words &#x…...
As ccess 数据库与表的操作
1. Access 数据库设计的一般步骤 . 2. 基本概念:Access 数据库、表、记录、字段 . 3. 使用表设计器创建表 (1)字段名命名规则 不能空格开头、不能用.!()[]、最长 64 个字符 (2)字段类型:文本、数字、日期/时…...
自动化的测试工具
1, 自动化功能测试工具:QTP、selenium 2, 自动化性能测试功能:LoadRunner、jmeter 3, 自动化接口测试工具:Charles、soapUI、LoadRunner、jmeter、postman、 测试工具 4, 测试管理工…...
Host头攻击
转载与:https://blog.csdn.net/weixin_47723270/article/details/129472716 01 HOST头部攻击漏洞知识 Host首部字段是HTTP/1.1新增的,旨在告诉服务器,客户端请求的主机名和端口号,主要用来实现虚拟主机技术。 运用虚拟主机技术&a…...
Android 12.0默认开启无障碍服务权限和打开默认apk无障碍服务
1.概述 在12.0的系统rom定制化开发中,在第三方app开发中,需要开启无障碍服务功能,就不需要在代码中开启无障碍服务了, 为了简便就需要在系统中开启无障碍服务,来实现开启无障碍服务功能 2. 默认开启无障碍服务权限和打开默认apk无障碍服务核心代码 frameworks/base/core…...
怎么成为优秀的软件工程师,而不是优秀的码农?
作为软件行业的从业者,每个人都希望最终成为优秀的软件工程师,而不仅仅是码农。一个码农只关注于编写代码和解决问题,而一个软件工程师则涉及到更广泛的职责和技能。 以下是一些要点,可以帮助你脱颖而出,成为一个优秀…...
安装ElasticSearch之前的准备工作jdk的安装
一.windows 下载jdk的软件 (1).进入jdk1.8官网 (2).根据电脑是32位还是64位按需下载 (3).点击下载之后就会跳转到Oracle账号登录界面 没有 Oracle账号的注册一下就可以了 下载好的jdk如下: 双击下一步下一步安装jdk 默认安装就可以了 配置环境变量 (1).电脑左下方设置选项 (2).…...
复杂数据集,召回、精度等突破方法记录【以电科院过检识别模型为参考】
目录 一、数据分析与数据集构建 二、所有相关的脚本 三、模型效果 一、数据分析与数据集构建 由于电科院数据集有17w-18w张,标签错误的非常多,且漏标非常多,但是所有有效时间只有半个月左右,显卡是M60,训练速度特别…...
那些你不得不会的提高工作效率的软件神器
那些你不得不会的提高工作效率的软件神器 文本编辑器 vscode 跨平台,插件丰富。 code-server vscode服务器版本,可以在浏览器中开发调试代码,尤其适用于windows端开发linux服务器程序。 vim linux/unix/mac终端最强大的文本编辑器。 note…...
【VMware】Ubunt 20.04时间设置
文章目录 设置本地时间 UTC8设置24小时制同步网络时间参考 Talk is cheap, show me the code. 设置本地时间 UTC8 查看当前时区状态 rootnode1:~/k8s# timedatectlLocal time: Sun 2023-05-21 15:24:02 CSTUniversal time: Sun 2023-05-21 07:24:02 UTCRTC time: Sun 2023-05-2…...
eNSP-Cloud(实现本地电脑与eNSP内设备之间通信)
说明: 想象一下,你正在用eNSP搭建一个虚拟的网络世界,里面有虚拟的路由器、交换机、电脑(PC)等等。这些设备都在你的电脑里面“运行”,它们之间可以互相通信,就像一个封闭的小王国。 但是&#…...
阿里云ACP云计算备考笔记 (5)——弹性伸缩
目录 第一章 概述 第二章 弹性伸缩简介 1、弹性伸缩 2、垂直伸缩 3、优势 4、应用场景 ① 无规律的业务量波动 ② 有规律的业务量波动 ③ 无明显业务量波动 ④ 混合型业务 ⑤ 消息通知 ⑥ 生命周期挂钩 ⑦ 自定义方式 ⑧ 滚的升级 5、使用限制 第三章 主要定义 …...
对WWDC 2025 Keynote 内容的预测
借助我们以往对苹果公司发展路径的深入研究经验,以及大语言模型的分析能力,我们系统梳理了多年来苹果 WWDC 主题演讲的规律。在 WWDC 2025 即将揭幕之际,我们让 ChatGPT 对今年的 Keynote 内容进行了一个初步预测,聊作存档。等到明…...
12.找到字符串中所有字母异位词
🧠 题目解析 题目描述: 给定两个字符串 s 和 p,找出 s 中所有 p 的字母异位词的起始索引。 返回的答案以数组形式表示。 字母异位词定义: 若两个字符串包含的字符种类和出现次数完全相同,顺序无所谓,则互为…...
(转)什么是DockerCompose?它有什么作用?
一、什么是DockerCompose? DockerCompose可以基于Compose文件帮我们快速的部署分布式应用,而无需手动一个个创建和运行容器。 Compose文件是一个文本文件,通过指令定义集群中的每个容器如何运行。 DockerCompose就是把DockerFile转换成指令去运行。 …...
RNN避坑指南:从数学推导到LSTM/GRU工业级部署实战流程
本文较长,建议点赞收藏,以免遗失。更多AI大模型应用开发学习视频及资料,尽在聚客AI学院。 本文全面剖析RNN核心原理,深入讲解梯度消失/爆炸问题,并通过LSTM/GRU结构实现解决方案,提供时间序列预测和文本生成…...
Java多线程实现之Thread类深度解析
Java多线程实现之Thread类深度解析 一、多线程基础概念1.1 什么是线程1.2 多线程的优势1.3 Java多线程模型 二、Thread类的基本结构与构造函数2.1 Thread类的继承关系2.2 构造函数 三、创建和启动线程3.1 继承Thread类创建线程3.2 实现Runnable接口创建线程 四、Thread类的核心…...
保姆级教程:在无网络无显卡的Windows电脑的vscode本地部署deepseek
文章目录 1 前言2 部署流程2.1 准备工作2.2 Ollama2.2.1 使用有网络的电脑下载Ollama2.2.2 安装Ollama(有网络的电脑)2.2.3 安装Ollama(无网络的电脑)2.2.4 安装验证2.2.5 修改大模型安装位置2.2.6 下载Deepseek模型 2.3 将deepse…...
Go 并发编程基础:通道(Channel)的使用
在 Go 中,Channel 是 Goroutine 之间通信的核心机制。它提供了一个线程安全的通信方式,用于在多个 Goroutine 之间传递数据,从而实现高效的并发编程。 本章将介绍 Channel 的基本概念、用法、缓冲、关闭机制以及 select 的使用。 一、Channel…...
抽象类和接口(全)
一、抽象类 1.概念:如果⼀个类中没有包含⾜够的信息来描绘⼀个具体的对象,这样的类就是抽象类。 像是没有实际⼯作的⽅法,我们可以把它设计成⼀个抽象⽅法,包含抽象⽅法的类我们称为抽象类。 2.语法 在Java中,⼀个类如果被 abs…...
