fgc536
DCS、PLC
级别: 论坛先锋
精华主题: 0
发帖数量: 559 个
工控威望: 1103 点
下载积分: 1429 分
在线时间: 36(小时)
注册时间: 2007-01-12
最后登录: 2017-12-23
查看fgc536的 主题 / 回贴
楼主  发表于: 2008-05-28 08:35
PLC与变频器通讯的编程及调试例解
1)运行控制命令的发送
变频器的操作指令代码及数据内容如表4:
在PLC程序中,变频器等待时间使用变频器参数设定为20ms,故格式A1中等待时间字节减少一个,由于本程序不使用 CR和LF,最后一个字节也不用,故本PLC程序例中发送数据为9个字节。
格式A1中各字节含义如下:
第一字节为通讯请求信号ENQ,对应程序为  MOV  H05  D200 ;
第二、第三字节为变频器00号站,对应程序为  MOV  H30  D201  MOV  H30  D202 ;
第四、第五字节为指令代码HFA,对应程序为  MOV  H46  D203  MOV  H41  D204 ;
第六、第七字节为指令代码为:正转运行H02,对应程序为  MOV  H30  D205  MOV  H32  D206 ;
第八、第九字节为总和校验代码,对应程序为  MOV  H34  D207  MOV  H39  D208 ;
当按下X0时,通讯数据被发送到变频器,变频器将正转运行;
如要进行变频器停止及反转运行程序编程,可在上面的范例程序中修改指令代码中数据内容即可实现,例如:范例中的程序修改为  MOV  H30  D205    MOV  H34  D206  可实现反转运行;修改为 MOV  H30  D205    MOV  H30  D206  实现停止(图九);
说明:M8161=1,8位处理模式,X0为变频器正转运行控制,使用变频器通讯协议的格式A1如图十:
2)总和校验码的自动计算实例
在本例中,数据处理为8位即M8161=1,Pr。123=9999,即等待时间用PLC程序设定;将H05-H30-H31-H45-H31-H31-H30-H37-H41-H44分别用传送指令传到D300开始的连续10个PLC的内存单元中,其总和校验码可用CCD指令自动计算出来,通过PLC程序再将总和校验码转换成2个ASCII码,并送到PLC的对应内存单元D310,D311中,计算总和校验码PLC程序如
本例的变频器等待时间由变频器设定,故上述格式中的等待时间字节无。
3)变频器运行频率的改变实例
在本例中,数据处理为8位即M8161=1,Pr。123=9999,即等待时间用PLC程序设定;通过触摸屏将变频器的运行频率直接写到PLC内存D1000中(或使用传送指令将频率数据自动写入),ASCI指令将变频器的运行频率转换成4位ASCII码,依次存放到PLC的内存单元D305~D308中,总和校验码存放在D309、D310;总和校验计算请参照上一例的自动计算方式进行。

不附例子了  抱歉!
要赢别人,先赢自己!
fgc536
DCS、PLC
级别: 论坛先锋
精华主题: 0
发帖数量: 559 个
工控威望: 1103 点
下载积分: 1429 分
在线时间: 36(小时)
注册时间: 2007-01-12
最后登录: 2017-12-23
查看fgc536的 主题 / 回贴
1楼  发表于: 2008-05-28 08:38
最近在学习通讯
发现一个问题:就是校验码的计算方法太多了,不知道用什么校验方法来计算。
狂晕366天
要赢别人,先赢自己!