快速入门-篇二十一:正运动技术运动控制器自定义通讯.docVIP

快速入门-篇二十一:正运动技术运动控制器自定义通讯.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
快速入门|篇二十一:正运动技术运动控制器自定义通讯 导语:?   视频教材:《正运动技术运动控制器自定义通讯》   上一节讲了运动控制器MODBUS通讯,今天我们来学习一下,运动控制器的自定义通讯。   控制器的串口和网口默认使用MODBUS协议通讯,若对端设备不支持MODBUS协议,可开启自定义通讯模式(无协议)通讯。   串口和网口均可开启自定义通讯。   串口和网口自定义通讯的开启方法不同,均使用指令开启自定义通讯,读写通道数据所用的读写指令是相同的。   串口使用SETCOM指令开启自定义通讯,网口使用OPEN #开启自定义通讯,选择正确的PORT通道开启通讯。   串口和网口自定义通讯读写指令:读取指令:GET #;发送指令:PRINT #和PUTCHAR #。   本文测试举例的产品是正运动技术的一款快速开发16轴的运动控制系统的ZMC316独立型脉冲运动控制器。   在正式学习之前,我们先来介绍ZMC316控制器。其支持多达24轴直线插补、任意圆弧插补、空间圆弧、螺旋插补、电子凸轮、电子齿轮、同步跟随、虚拟轴设置等;采用优化的网络通讯协议可以实现实时的运动控制。   ZMC316通过ZDevelop开发环境来调试,ZDevelop是一个很方便的编程、编译和调试环境。应用程序还可以使用VC,VB, VS, C++Builder, C#,等软件来开发。调试时可以ZDevelop软件同时连接到控制器,程序运行时需要动态库zmotion. dll。            ZMC316具有16个轴,可支持多达24个虚拟轴。ZMC316可以通过扩展模块来扩展轴。   ZMC316板上自带24+15个通用输入口,8+15个通用输出口(前15轴另带1个输入口,2个输出口),2个0-10V AD, 2个0-l0V DA。   ZMC316带1个RS232串口,1个RS485,1个RS422,1个以太网接口。   ZMC316带一个CAN总线接口,支持通过ZCAN协议来连接扩展模块。   ZMC316带一个U盘接口。   每轴输出脉冲频率可达8MHz。            ZMC316接线图   以下是本文的主要内容。    壹 串口自定义通讯(无协议)   1.开启方法   开启自定义串口通讯需要选择port编号,默认RS232为port0,RS485为port1,使用指令将port配置为自定义串口通讯模式。   SETCOM指令除了可以配置串口的通讯基本参数外,还可以选择参数配置通讯协议,开启自串口定义通讯模式将mode=0无协议模式,填写串口基本参数和开启的port编号。   语法:SETCOM (baudrate,databits,stopbits,parity,port[,mode] [,variable] [,timeout])            开启示例:   RS232(PORT0):SETCOM (38400,8,1,0,0,0,2,1000)   RS485(PORT1):SETCOM (38400,8,1,0,1,0,2,1000)   2.读写方法   网口或串口自定义通讯采用的指令相同。   自定义通道中读取字符:GET #   自定义通道中发送字符:PRINT #、PUTCHAR #   两个指令一次只能发送一个数据,若要发送多个数据,可采用数组。PRINT #与PUTCHAR #的区别是前者发送的数据为字符串,一次只能发送一个数据,发送的数组为ASCII码;后者均为ASCII码。    (1)GET #   语法1:GET #PORT, VARIABLE   语法2:GET #PORT, ARRAY[(startindex)] [,maxchares]   语法3:charesget = GET #PORT, VARIABLE   语法4:charesget = GET #PORT, ARRAY[(startindex)] [,maxchares]   port:通道号   variable:存放的变量名   startindex:存放数组的起始地址   maxchares:存放的最多数量   语法1、2没有读取到会阻塞,这个函数一般在多任务里面进行调用。   语法3、4会返回读取到的字节数。   串口和网口的TCP通讯四种语法均可使用,网口的UDP通讯时使用语法4, 采用数组来接收,数组长度不要比一次的UDP包长度小。   例一:读取字符   GET # 11,tempchar ‘从自定义网口通道11获取单个字符到tempchar   读取结果:   

文档评论(0)

汪汪队 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档