有关PLC与变频器的通讯协议的介绍以及程序(矩形科技V80) 点击:3089 | 回复:3



矩形科技

    
  • 精华:1帖
  • 求助:0帖
  • 帖子:22帖 | 276回
  • 年度积分:0
  • 历史总积分:1221
  • 注册:2008年1月18日
发表于:2009-01-14 22:07:00
楼主

看到坛子里有不少有关PLC与变频器通讯的例子,我也把我们V80的PLC通讯的相关资料整理了一下:

由于论坛上看不到图片,所以梯形图代码都看不到,可以访问一下链接:http://www.plcstar.com/plcstar/learn/204.html(www.plcstar.com   应用案例下的“V80在变频通讯中的应用 ”)本文介绍了目前市面上数种变频器的通讯协议,以及用V80实现控制的梯形图代码。如果需要V80与各种变频器的通讯程序(包括易能、艾默生,英威腾,台达,安邦信,创杰、AB等等,好多家协议是一致,包括MODUS类和非MODBUS类),可加QQ 515541428,或者EMAIL:plcstar@126.com 索取

V80在变频通讯中的应用


-------------------------------------------------------------------------------
一、 前言

变频器的应用非常广泛,在很多应用场合需要频繁修改运行频率、停止或启动变频器,手工调节面版方式已经不能满足使用需要。

用模拟信号控制变频器运行频率,数字信号控制变频器启动或停止,这种方式需要另外购置模拟信号模块,控制多台变频器时,成本会增加很多。在控制距离比较远的情况下,模拟信号会受到距离的影响,衰减很大。

用V80系列PLC通讯控制变频器运行频率、数字信号控制变频器启动或停止,这样不仅能控

制单台也能控制多台变频器,而且能很好的控制成本。V80支持MODBUS RTU通讯协议和自由通讯协议,它可以支持RS232和RS485,V80的COM1口为RS232通讯接口,COM2口为RS485通讯接口。

V80系列PLC单元所提供的MODBUS 主站功能,进行参数设置及动作控制。通过该功能可完成主站单元对多台MODBUS从站单元联机,进行数据交换,也可直接与其它支持标准MODBUS的设备连接。

M_BUS指令,上节点:M_BUS读写命令, 0 => READ, 1 => WRITE。

中节点:读写M_BUS单元的设备编号(1-254),

0 (或255)=> 广播方式,#256~#9999无效。

下节点:M_BUS菜单参数设定区,6个寄存器地址

地址偏移1:高位错误信息;

地址偏移2:主站类型;

地址偏移3:主站寻地址;

地址偏移4:从站类型;

地址偏移5:从站寻地址;

地址偏移6:读或写的数据数量;

自由通讯指令有发送指令XMT和接收指令RCV。

XMT发送指令必须先设置特殊继电器09933为ON,此时,V80通讯口2是在自由通讯模式下,ModBus主从功能被禁止。

上节点:发送区首地址,每个数据占十六位,低八位为待发数据,高八位参见说明书。

中节点:发送长度。

下节点:错误指示,非0即表示有错误产生。

RCV自由通讯接收指令可以设置字符超时时间,开始字符,接收字符,最大字符数。详见说明书。





二、V80系列提供MODBUS通讯协议

1、 写单个线圈(功能码05H)

设备地址+功能码(05)+线圈地址(XXXX)+ OFF线圈0000(ON线圈FF00)+ CRC 16

写第1个线圈为ON报文:01 05 0000 FF00 8C3A

01H设备地址

05H功能码

0000H线圈地址为输出第1 个

FF00置为ON

8C3A为CRC 16校验

写第1个线圈为OFF报文:01 05 0000 0000 CDCA

2、 写单个寄存器(功能码06H)

设备地址+功能码(06)+寄存器地址(XXXX)+ 数据 + CRC 16

写数据5到第1个寄存器报文:01 06 0000 0005 49 C9

01H设备地址

06H功能码

0000H寄存器地址为第1 个,40001

0005H写入数据00005H

49C9为CRC 16校验

3、 写多个线圈(功能码0FH)

设备地址 + 功能码(0F)+ 线圈地址 + 线圈长度 + 线圈数据 + CRC 16

连续写16个线圈为ON报文:01 0F 0000 0010 02 FFFF E390

01H设备地址

0FH功能码

0000H线圈地址

0010H控制线劝长度为16个

FFFF表示bit0-bit15全为ON(0表示OFF,1表示ON)

E390为CRC 16校验

连续写16个线圈不同时为ON的报文:01 0F 0000 0010 02 0F00 E7D0

01 0F 0000 0010 02 F000 A620

01 0F 0000 0010 02 0100 E3B0

01 0F 0000 0010 02 0200 E340

01 0F 0000 0010 02 0300 E2D0

01 0F 0000 0010 02 00F0 E264

连续写32个线圈为ON报文:01 0F 0000 0020 04 FFFF FFFF C51C

4、 写多个寄存器(功能码10H)

设备地址 + 功能码(10)+ 寄存器地址 +寄存器长度 + 数据个数 + 数据 + CRC 16

连续写1个寄存器(40001)报文:01 10 0000 0001 02 0005 6653

把0005写到40001寄存器

01设备地址

10功能码

0000寄存器地址为40001

0001写寄存的个数为1

02写的数据为它后面的两个00和05。

0005数据为5

6653为CRC 16校验

连续写2个寄存器(40001、40002)

报文:01 10 0000 0002 04 0007 0009 8268

把0007写到寄存器40001,0009写到寄存器40002

连续写2个寄存器(40001、40002、 40003)

报文:01 10 0000 0003 06 0007 0009 0005 4341

把0007写到40001,0009写到40002,0005写到40003

5、读线圈状态(功能码01H)

设备地址 + 功能码(01)+ 线圈地址 + 线圈长度 + CRC 16校验

读20个线圈:01 01 0000 0014 3C05(读从第1个线圈到20个线圈)

01设备地址

01功能码

0000线圈首地址

0014读长度20个线圈




yhb850427

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 3回
  • 年度积分:0
  • 历史总积分:12
  • 注册:2009年7月02日
发表于:2010-09-08 21:34:29
1楼

是抄说明书的吗!

 

矩形科技

  • 精华:1帖
  • 求助:0帖
  • 帖子:22帖 | 276回
  • 年度积分:0
  • 历史总积分:1221
  • 注册:2008年1月18日
发表于:2012-03-07 15:49:05
2楼

不是抄说明书,是抄一篇文章的,不过我们有现成的与各家变频器通讯的PLC程序,欢迎索取。下图是部分变频器的通讯

zhangzhitao

  • 精华:0帖
  • 求助:0帖
  • 帖子:3帖 | 331回
  • 年度积分:4
  • 历史总积分:290
  • 注册:2017年11月09日
发表于:2019-04-18 09:18:13
3楼


回复内容:

对: 矩形科技 不是抄说明书,是抄一篇文章的,不过我们有现成的与各家变... 内容的回复!

-------------------------

能发一份给我学习下吗?邮箱958756904@qq.com.多谢


热门招聘
相关主题

官方公众号

智造工程师