菜鸟同学提问:
*近碰到个项目,要求与变频器进行通讯,实现读写变频器的频率。
拿到变频器厂家的点表,可是我却弄不明白,地址怎么写,还有到达50000的。由于是**次做,现在有点无从下手,PLC那边基本没什么问题,主要就是变频器的数据地址,搞不清楚怎么解。求大神帮助。
地址如下:
信号名称 信号方向 信号类型 接口类型 数据地址 备注
运行状态 TEF->BAS BOOL 通讯点 C417H(50199) Bit11=1,运行
变频器故障 TEF->BAS BOOL 通讯点 C417H (50199) Bit3=1,报警
电动机频率 TEF->BAS WORD 通讯点 3F01H(16129) 转换指数-1(0.1)
启动控制 BAS->TEF BOOL 通讯点 C34FH (50000) Bit15=0 Bit6=1
频率设定 BAS->TEF WORD 通讯点 C359H (50010) 4000H=100%
用MBUS_MSG中 Addr 怎么填如上的地址呢?有参考资料么?
那个的备注中4000H=100%是什么意思,是要发送4000H给那个地址,输出100%是么?
谢谢大家
传不了附件,资料上传到网盘了:http://pan.baidu.com/s/1gUlln
这是我自己写的通讯程序,应该是不对的,劳烦大侠们指正:http://pan.baidu.com/s/1krZDq
我想知道碰到这种通信情况,处理的方法。万分感谢
沙发君:
首先你要确定,变频器支持哪些功能码,这样才能确定ADRESS接口怎么填写,比如
03,06,16对应4XXXX保持寄存器
04对应3XXXX输入寄存器
02对应1XXXX输入
01,05,15对应0XXXX输出
比如
运行状态 TEF->BAS BOOL 通讯点 C417H(50199) Bit11=1,运行
变频器故障 TEF->BAS BOOL 通讯点 C417H (50199) Bit3=1,报警
这些是读位,我接触过的通讯地址是用02功能码读的,所以,在ADRESS接口填入150200,
如果是03功能码,那就填450200,
这里地址要加1在count接口填入个数1
其它的就以此类推,关键是看你用什么功能码去处理,就对应那个存存区地址
还有就是要注意的是地址要加1
菜鸟:
多谢指导,到时候试试通信。