运动控制卡/运动控制器的ZCAN总线ZMIO310扩展模块使用

本节课程主要分为八个部分给大家讲解ZCAN扩展模块的使用,分别是:

一、ZMIO310系列扩展模块介绍

二、ZMIO310-CAN通讯模块的接线

三、ZMIO310-CAN通讯模块介绍及拨码开关设置

四、ZMIO310子模块接线参考

五、ZMIO310-CAN扩展模块功能验证

六、ZMIO310-CAN扩展模块模拟量量程修改

七、ZMIO扩展模块常见问题分析

八、ZMIO扩展模块相关指令说明

ZMC408CE硬件介绍

ZMC408CE是正运动推出的一款多轴高性能EtherCAT总线运动控制器,具有EtherCAT、EtherNET、RS232、CAN和U盘等通讯接口,ZMC系列运动控制器可应用于各种需要脱机或联机运行的场合。

在这里插入图片描述

ZMC408CE支持8轴运动控制,最多可扩展至32轴,支持直线插补、任意圆弧插补、空间圆弧、螺旋插补、电子凸轮、电子齿轮、同步跟随等功能。

ZMC408CE支持PLC、Basic、HMI组态三种编程方式。PC上位机API编程支持C#、C++、LabVIEW、Matlab、Qt、Linux、VB.Net、Python等接口。

在这里插入图片描述

ZMC408CE支持8轴运动控制,可采用脉冲轴(带编码器反馈)或EtherCAT总线轴,通用IO包含24路输入口和16路输出口,部分IO为高速IO,模拟量AD/DA各两路,EtherCAT最快125us的刷新周期。

ZMC408CE支持8个通道的硬件比较输出、硬件定时器、运动中精准输出,还支持8通道PWM输出,对应的输出口为OUT0-7,支持8个通道同时触发硬件比较输出。

01 ZMIO310系列扩展模块

ZMIO310系列扩展模块是立式总线扩展模块,可支持EtherCAT和CAN两种总线方式扩展数字量IO、模拟量AD和DA。

当控制器本体的IO、AD和DA等资源不够时,可以通过耦合器模块(ECAT、CAN通讯模块)搭配其他扩展子模块进行扩展;子模块包含数字量输入口DI、数字量输出口DO、模拟量输入口AD、模拟量输出口DA模块。

ZMIO310-CAN通讯模块最多可扩展16个子模块(支持混合扩展),其中可扩展的DI、DO、AD和DA子模块最大数量分别为6个、6个、3个、3个;实际数量还要根据各模块功耗进行限定。例如:扩展6个DO、6个DI和3个AD后就只能再扩展1个DA。

耦合器和子模块分类如下:

在这里插入图片描述

今天主要介绍ZMIO310-CAN搭配子模块的使用,与控制器连接的系统框图如下:

在这里插入图片描述

02 ZMIO310-CAN通讯模块的接线

在这里插入图片描述

1、CAN总线上连接了多个ZMIO310-CAN通讯模块时,将全部CAN模块的CANL和CANH端分别接到一起(CANL接CANL、CANH接CANH)。

2、在CAN总线最两端接口各并接一个120欧的终端电阻,匹配电路阻抗,保证通讯稳定性。即控制器端需要在CANL和CANH之间并联接入一个120欧电阻,还有最后一个ZMIO310-CAN通讯模块的拨码开关第八位拨为ON(表示在最后ZMIO310-CAN通讯模块的CANL与CANH端口之间并联接入一个120欧姆的电阻)。

3、通讯线推荐使用双绞屏蔽线,屏蔽层需可靠接地。

在这里插入图片描述

4、要保证控制器的主电源的公共端和ZMIO310-CAN通讯模块的电源的公共端接到一起(俗称“共零”),以防止CAN芯片烧坏;

5、此扩展模块采用双电源供电,即耦合器模块(ZMIO310-CAN通讯模块)采用一个电源,扩展子模块采用另一个电源(在电源功率足够的情况下,子模块可使用同一个电源供电,但不可与耦合器模块使用同一个电源)。

6、布线还要注意强电和弱电布线要拉开距离,建议20cm以上。

03

ZMIO310-CAN通讯模块介绍及拨码开关设置

在这里插入图片描述

8个拨码开关的含义如下

1、拨码1-4:4位拨码开关用于ZMIO310-CAN扩展模块IO口等起始地址的映射,4位二进制位组合值对应值范围0-15;组合值=(拨码4)×8+(拨码3)×4+(拨码2)×2+(拨码1)。

在这里插入图片描述

控制器根据ZMIO310-CAN通讯模块的拨码地址来设定对应扩展模块的IO起始地址及AD与DA的起始地址。模拟量AD起始IO映射编号从8开始,按8的倍数递增。模拟量DA起始IO映射编号从4开始,按4的倍数递增。

不同拨码ID对应模拟量AD/DA编号分配情况如下表。

在这里插入图片描述

2、拨码5-6:CAN通讯速度,组合值对应值范围0-3,可选四种不同的速度,一般CAN通讯速度默认即可,干扰严重可以降低CAN的通讯速度,同时需要通过控制器端通过CANIO_ADDRESS指令来修改控制器端(主端)的CAN通讯速度与ZMIO310-CAN通讯模块一致才可以正常通讯。

速度组合值=(拨码6)×2+(拨码5)×1,组合值范围 0-3。
对应的通讯速度如下表所示。

在这里插入图片描述

3、拨码7:特殊功能预留。
4、拨码8:120欧电阻,拨ON表示CANL和CANH间并联接入一个120欧电阻,连接了多个ZMIO310-CAN通讯模块时只需要把最后一个ZMIO310-CAN通讯模块的第8位拨为ON即可。
#注意:

拨码开关要注意设置,可能出厂的时候拨码开关全部处于ON的状态。

拨码开关必须在上电之前拨好,上电后重新拨码无效,需再次上电才生效,还有ZMIO310-CAN通讯模块连接扩展子模块,也不支持热插拔。

拨码开关的设置

1、CAN地址拨码,要求整个控制系统的IO编号不得重复,控制器端本地IO地址的范围可以通过RTSys软件点击【控制器】→【控制器状态】→【Zcan节点】查看相关信息。

在这里插入图片描述

上图是ZMC432控制器的本地数字量IO与模拟量IO的分布情况,针对扩展数字量IO的ZMIO310-CAN扩展模块。我们需要要求ZMIO310-CAN扩展模块的IO起始地址要大于输入口编号的最大值29,同时大于输出口编号的最大值17,查数字量IO组合值对照表得ZMIO310-CAN通讯模块的地址拨码的组合值要大于等于1。
2、CAN通讯速度:一般使用默认速度即可,都拨到OFF。
3、特殊功能预留,一般拨到OFF。
4、最后一个ZMIO310-CAN通讯模块第8位要拨到ON。

04 ZMIO310子模块接线参考

一、ZMIO310-16DI数字量输入子模块接线参考

1、输入端口NPN型接线参考
在这里插入图片描述
2、输入端口PNP型接线参考
在这里插入图片描述
二、ZMIO310-16DO/DOP数字量输出子模块接线参考

1、输出端口NPN型接线参考
在这里插入图片描述
2、输出端口PNP型接线参考
在这里插入图片描述

三、ZMIO310-4AD模拟量输入子模块接线参考

1、电压输入端口接线示意图
在这里插入图片描述
2、电流输入端口接线示意图
在这里插入图片描述
四、ZMIO310-4DA模拟量输出子模块接线参考

1、电压输出端口接线示意图
在这里插入图片描述
2、电流输出端口接线示意图
在这里插入图片描述

05 ZMIO310-CAN扩展模块功能验证

1、断电重启后,观察ZMIO310-CAN通讯模块的ERR灯是否熄灭,扩展模块如果和主端控制器正常通讯上的话,ZMIO310-CAN通讯模块的灯应该是POW[亮]、RUN[亮]、ERR[灭]。
在这里插入图片描述

2、通过RTSys软件点击【控制器】→【控制器状态】→【Zcan节点】可查看到ZMIO310-CAN扩展模块的IO起始编号等信息。

在这里插入图片描述

3、ZMIO310-CAN扩展模块IO口监控。

RTSys软件点击【工具】→【输入口/输出口】→【IO选择】,即可监控对应IO口的IO信息。

在这里插入图片描述

4、ZMIO310-CAN扩展模块模拟量的监控。

RTSys软件点击【工具】→【AD/DA】,即可监控对应的模拟量输入输出口的相关信息。

ZMIO310的模拟量输入输出子模块是16位的,所以扩展模块的最大刻度值要手动选择65535,模拟量输入口悬空是会显示一定的数值,这是芯片固有特性,通常无需特别关注。若对此较为敏感,可考虑接入模拟量的地以观察效果。

在这里插入图片描述

06 ZMIO310-CAN扩展模块模拟量量程修改

ZMIO310-CAN通讯模块可以读写模拟量的量程,具体指令如下:

写:CANIO_INFO(canid,17, moduleid)=量程类型编号

读:?CANIO_INFO(canid,17, moduleid)

参数说明:

canid:扩展模块的拨码ID(既拨码1-4的组合值)。

moduleid:从耦合器后面接的第一个扩展子模块算起,子模块地址按接入耦合器的顺序,从0依次编号。

ZMIO310的模拟量输入输出有以下模式可以选择,量程类型如下:
在这里插入图片描述

通过RTSys软件在线命令下发即可设置,同时通过RTSys软件的在线命令也可以查询当前子模块的模拟量量程信息。

在这里插入图片描述

07 ZMIO扩展模块常见问题分析

1、CAN扩展模块的POW[亮]、RUN[亮]、ERR[亮]和控制器通讯不上,RTSys软件在【控制器】→【控制器状态】→【Zcan节点】界面也看不到扩展模块的信息。

A.参考第二节的接线内容,排查接线是否正常,通过万用表排查导线是否良好会不会有接触不良的情况,导线是否使用双绞屏蔽线,屏蔽层可靠接地,扩展板是否使用双电源供电。

B.控制器端是否接120欧电阻,最后面一个扩展模块拨码开关8是否拨到ON。

C.拨码开关是否设置正确,没有和本体及其他扩展模块有IO地址的冲突。

D.是否存在干扰源,把控制器和扩展模块的所有IO端子及轴接口等其他接线端子排都拔下来,其他无关的设备先断电,然后断电重启看看是否可以通讯上。

E.控制器的CAN是否是主端模式(CANIO_ADDRESS的bit5有被置1,例如:CANIO_ADDRESS=32),CAN通讯的波特率和扩展模块是否一致。

在这里插入图片描述

F.考虑硬件是否烧坏,替换控制器及扩展模块测试查看。

2、扩展模块有一些IO响应正常,有一些IO响应异常。

通过RTSys软件点击【控制器】→【控制器状态】→【Zcan节点】可查看到各个ZCAN扩展模块的IO编号范围是否有冲突。存在IO冲突的话可通过前四位拨码开关重新设置拨码值,重新上电重启。

3、扩展模块的模拟量输出值读取不到。

A.检查DA模块的电源正极(E+24V)和电源负极(EGND)有连接,给子模块供电。接线参考四章节的ZMIO310-4DA模拟量输出子模块接线图。

B.可以通过RTSys软件在线命令栏发送"?CANIO_INFO"读取当前模拟量子模块的模式或量程是否满足测试需求,如不满足可通过CANIO_INFO指令修改模拟量子模块的模式或量程。

08 ZMIO扩展模块相关指令说明

1、CANIO_ADDRESS – CAN通讯设置

在这里插入图片描述

2、CANIO_INFO – CAN扩展板信息

在这里插入图片描述

3、CANIO_ENABLE – CAN使能

在这里插入图片描述

4、教学视频

运动控制卡/控制器的ZCAN总线ZMIO310扩展模块使用

本次,正运动技术运动控制卡/运动控制器的ZCAN总线ZMIO310扩展模块的使用,就分享到这里。

更多精彩内容请关注“正运动小助手”公众号,需要相关开发环境与例程代码,请咨询正运动技术销售工程师。

本文由正运动技术原创,欢迎大家转载,共同学习,一起提高中国智能制造水平。文章版权归正运动技术所有,如有转载请注明文章来源。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/807697.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

新手怎么正确地做抖音小店?入门级教程来了,建议认真阅读!

大家好,我是电商糖果 新手做抖音小店,不懂小店的运营,总是容易走弯路,踩坑。 糖果这里就给大家带来,新手正确的入门级运营教程。 近期刚开店的朋友,建议认真阅读! 第一步:基础后台…

探索艺术的新领域——3D线上艺术馆如何改变艺术作品的传播方式

在数字化时代的浪潮下,3D线上艺术馆成为艺术家们展示和传播自己作品的新平台。不仅突破了地域和物理空间的限制,还提供了全新的互动体验。 一、无界限的展示空间:艺术家的新展示平台 3D线上艺术馆通过数字化技术,为艺术家提供了一…

Java List基础篇

目录 前言一、常用List1.1 List1.1.1 特点1.1.2 常用API 1.2 ArrayList1.2.1 特点1.2.2 使用 1.3 LinkedList1.3.1 特点1.3.2 使用 1.4 CopyOnWriteArrayList1.4.1 特点1.4.2 使用 1.5 Arrays.asList()1.5.1 特点1.5.2 使用 二、对比总结 前言 一、常用List 1.1 List List是…

JUC常用辅助类

一、CountDownLatch 1.原理 它内部维护了一个计数器,该计数器初始化时设定一个数值,表示需要等待的线程数量。每个线程执行完特定任务后会调用CountDownLatch的countDown()方法,该方法会将计数器减一。同时,另外一个或多个线程可…

Acrel-1000DP光伏监控系统 的应用 安科瑞 许敏

摘 要:分布式光伏发电特指在用户场地附近建设,运行方式多为自发自用,余电上网,部分项目采用全额上网模式。分布式光伏全额上网的优点是可以充分利用分布式光伏发电系统的发电量,提高分布式光伏发电系统的利用率。发展分…

题目 2348: 信息学奥赛一本通T1436-数列分段II【二分答案】

信息学奥赛一本通T1436-数列分段II - C语言网 (dotcpp.com) #include<iostream> #include<algorithm> #include<cstring> using namespace std; #define int long long const int N1e5100; const int inf1e9; int n,m; int a[N]; bool check(int mid) {int s…

ELK、ELKF企业级日志分析系统介绍

前言 随着企业级应用系统日益复杂&#xff0c;随之产生的海量日志数据。传统的日志管理和分析手段&#xff0c;难以做到高效检索、实时监控以及深度挖掘潜在价值。在此背景下&#xff0c;ELK日志分析系统应运而生。"Elastic" 是指 Elastic 公司所提供的一系列与搜索…

总体标准差、样本标准差、标准误(标准误差)

下面是样例&#xff1a; 参考文章如何做好SCI论文中的标准误差图 - 知乎 (zhihu.com)

第十四篇【传奇开心果系列】Python自动化办公库技术点案例示例:深度解读Python自动化处理图像

传奇开心果博文系列 系列博文目录Python自动化办公库技术点案例示例系列 博文目录前言一、Python自动化图像处理的优点介绍二、Python常用图像处理库和功能介绍三、强大且易于上手示例代码四、丰富的算法资源示例代码五、批量处理图片示例代码六、支持多种图像格式示例代码七、…

【LeetCode】单调栈类题目详解

所有题目均来自于LeetCode&#xff0c;刷题代码使用的Python3版本 单调栈 通常针对一维数组的问题&#xff0c;如果需要寻找一个元素右边或者左边第一个比自己大或者小的元素的位置&#xff0c;就可以使用单调栈&#xff0c;时间复杂度为O(n) 单调栈的本质是空间换时间&#…

Linux内核中常用的C语言技巧

Linux内核采用的是GCC编译器&#xff0c;GCC编译器除了支持ANSI C&#xff0c;还支持GNU C。在Linux内核中&#xff0c;许多地方都使用了GNU C语言的扩展特性&#xff0c;如typeof、__attribute__、__aligned、__builtin_等&#xff0c;这些都是GNU C语言的特性。 typeof 下面…

如何使用Jellyfin+cpolar低成本部署私人影音平台并实现无公网IP远程访问

文章目录 1. 前言2. Jellyfin服务网站搭建2.1. Jellyfin下载和安装2.2. Jellyfin网页测试 3.本地网页发布3.1 cpolar的安装和注册3.2 Cpolar云端设置3.3 Cpolar本地设置 4.公网访问测试5. 结语 1. 前言 随着移动智能设备的普及&#xff0c;各种各样的使用需求也被开发出来&…

AI大模型之ChatGPT科普(深度好文)

目录 训练ChatGPT分几步&#xff1f; 如何炼成ChatGPT&#xff1f; 如何微调ChatGPT? 如何强化ChatGPT? 如何调教ChatGPT? AI思维链是什么&#xff1f; GPT背后的黑科技Transformer是什么&#xff1f; Transformer在计算机视觉上CV最佳作品&#xff1f; 数字时代&am…

【MySQL】游标和触发器

一、游标 1.1 什么是游标 1、使用背景 在我们使用update或者delete操作数据时&#xff0c;一般都会根据条件语句查询出很多条记录组成的数据集&#xff0c;然后一次性批量操作 假设我们想要对这个结果集中的数据 一行一行的进行操作&#xff0c;比如某个条件满足后&#xff…

Lora 串口透传开发 5

1 简介 串口转usb、转wifi等很多应用 2 设计原理 2.1 设计需求 1将LoRa终端定义成两种角色:Master和Slave 2一个模块发送任意字节长度&#xff08;小于128Byte&#xff09;数据&#xff0c;另一模块都可以接收到 3PC机上通过串口调试助手实现接收和发送 4终端在LCD屏幕上显…

智慧公厕升级为多功能城市智慧驿站,助力智慧城市发展

在现代城市的建设中&#xff0c;公共厕所作为基础必备的民生设施&#xff0c;一直是城市管理的重要组成部分。随着科技的不断发展&#xff0c;智慧公厕应运而生&#xff0c;成为了公共厕所信息化、数字化、智慧化的应用解决方案。而近年来&#xff0c;智慧公厕也进行了升级发展…

损失函数:BCE Loss(二元交叉熵损失函数)、Dice Loss(Dice相似系数损失函数)

损失函数&#xff1a;BCE Loss&#xff08;二元交叉熵损失函数&#xff09;、Dice Loss&#xff08;Dice相似系数损失函数&#xff09; 前言相关介绍BCE Loss&#xff08;二元交叉熵损失函数&#xff09;代码实例直接计算函数计算 Dice Loss&#xff08;Dice相似系数损失函数&a…

分布式 SpringCloudAlibaba、Feign与RabbitMQ实现MySQL到ES数据同步

文章目录 ⛄引言一、思路分析⛅实现方式⚡框架选择 二、实现数据同步⌚需求分析⏰搭建环境⚡核心源码 三、测试四、源码获取⛵小结 ⛄引言 本文参考黑马 分布式Elastic search Elasticsearch是一款非常强大的开源搜索引擎&#xff0c;具备非常多强大功能&#xff0c;可以帮助…

如何使用Android手机通过JuiceSSH远程访问本地Linux服务器

文章目录 1. Linux安装cpolar2. 创建公网SSH连接地址3. JuiceSSH公网远程连接4. 固定连接SSH公网地址5. SSH固定地址连接测试 处于内网的虚拟机如何被外网访问呢?如何手机就能访问虚拟机呢? cpolarJuiceSSH 实现手机端远程连接Linux虚拟机(内网穿透,手机端连接Linux虚拟机) …

Python上解决TypeError: not all arguments converted during string formatting错误

目录 背景尝试1: pymysql模块的escape_string方法尝试2: 修改pandas.read_excel引擎尝试3: 回退xlrd版本总结 背景 在Linux上部署的时候, 使用pandas模块读取Excel, 然后pymysql模块入库, 结果发生了错误 Traceback (most recent call last):File "/usr/local/lib64/pyth…