发表于:2006-01-10 16:47:00
楼主
选用中达电通ES系列PLC,用通讯方式来改变松下VF0C系列变频器的设定频率,PLC端使用485口,无协议方式来模拟VF0C变频器的通讯协议。
VF0C系列变频器留有485通讯口,并提供内部通讯协议如下:
写:% [局号] #WD [功能号] [起始地址] [结束地址] [数据] [BCC] \CR
读:% [局号] #RD [功能号] [起始地址] [结束地址] [BCC] \CR
如果写正确,返回:%01$WD BCC\CR
如果读正确,返回:%01$RD [数据] BCC\CR
在松下VF0C系列变频器中,局号默认为01,通讯格式为9600、N、8、1,通讯方式是ASCII方式,数据为十六进制,存储模式为8位模式。设定频率的地址是DT237,而读设定频率的地址为DT133,而且在DT237和DT133的数据都是以0.01Hz为单位的。下面以写频率为例,来做详细说明。
假设要写入的频率是43.5Hz,那么需要写入的数值应为10FE(4350),变频器的存储模式为8位模式,应从低位开始写入,那么应该先写FE后写10。校验码是把从起始码到数据码所有的字节进行异或所得。
XOR:%01#WDD0023700237FE10=52(HEX)
那么得出以下所有通讯格式码:
%01#WDD0023700237FE1052\CR
通讯方式是ASCII方式,数据是十六进制格式,那么做以下转换,得出格式码:
把这些格式码按正确的次序发出,就可以把数据43.5HZ写入到变频器设定频率DT237中。
在PLC中,无协议通讯也是从低位开始发送数据的,可选用8位模式和16位模式传送,不同就在于发送数据寄存器中的8位数据还是16位数据,在这里以16位模式做说明。梯形图如下:
把格式码数据253031235744443030323337303032333745463130520D按照从低位到高位的顺序依次存入到D0~D11中去,占用12个连续的数据寄存器,就是说有24个字节的数据。
设定通讯参数9600,N,8,1,ASCII方式,16位模式。