当前位置: 首页 > 新闻中心
返回
列表

用PLC实现485自由协议通讯

发表时间: 2024-01-23 作者: 新闻中心

  PLC是种专门为在工业环境下应用而设计的数字运算操作电子系统。它采用一种可编程的存储器,在其内部存储执行逻辑运算、顺序控制、定时、计数和算术运算等操作的指令,通过数字式或模拟式的输入输出来控制很多类型的机械设备或生产的全部过程。485总线在日常中也大范围的应用于多主机/驱动器工业环境。其典型应用与RS-422相似,包括:过程自动化(化工、酿造、造纸)、工厂自动化(汽车制造、金属加工)、HVAC、安防、电机控制、运动控制。

  搭建测试环境:电脑上安装好PLC配套的编程环境。PLC肯定要选择支持485自有通讯的型号,本次使用的是汇川的H3U系列,使用的编程软件为autoshop。

  下位设备选择使用485自由协议的步进电机控制器,这里使用的是谱思PMC005B3多轴控制器,同时准备好电源,连接线:演示使用的所用硬件如下表所示:

  PLC的自由通讯口是COM1,所以最终选择COM1进行设置。根据下位设备使用的协议做出合理的选择就好。注意站号需要修改,不能冲突。设置完成之后,确定保存。这里的起始符与结束符都是十进制的ASCII码,意思是在传输的字符串头尾分别加上起始符与结束符。比如PMC005的通讯协议中规定,换行符(10进制ASCII码为13)是一条指令的结束标志,可以在这里勾选结束符13,就不用在手动在每条指令中添加。

  使用的是内置功能块RS发送自由指令,采用的是用直接将16进制的ASCII码赋值给PLC内部的寄存器的方式。这里发送的指令是/8&\r,根据通讯协议是查询8号站点的固件版本与时间。

  接下来是编译、下载、联机、运行在登录设备下载程序前,请确认PLC模块已经与电脑正常连接。假如没有,请检查您的连线、供电。使用以太网连接时,请确保PLC的IP与电脑IP在同一网段。在开始运行前,请先调整机构,保您的设备可以有效的进行测试,以防出现不必要的损失和意外。之后能开始运行程序。

  将程序下载到PLC当中,运行后打开监控。如果提示编译错误,请检查程序编写。

  进入监控界面,打开写入根据程序逻辑,这里只要将M1置1就会自动赋值并且将指令发送,返回的指令可以监控D100以及之后的寄存器,转化为字符串就能够正常的看到返回信息。这里为了方便我们外挂了一个485转换器到电脑上,用串口调试助手能够正常的看到返回的数据。

  已经读取到了内部时间和版本号,这样说明通讯就成功了。在这个基础上我们不妨对程序稍加改动,发一个复杂的组合指令。

  使用同样的方式我们将所有轴的细分设置为16,工作电流设置为50%,待机电流设置为40%,加速度因子100,最大速度32000PPS,并且同时让四轴运行正转32000步。

  同样的使用串口调试助手监控到了控制器的返回报文,此时四个电机已经同时运转了,这样一来一个简单的485通讯控制电机转动的小程序就完成了!

  检查指令的编写,指定的站点号、指令格式、指令内容等是不是正确,是否末尾添加换行符。特别的,PMC005的协议中严格区分大小,指令中的逗号也是英文(半角)符号,请注意。