标题: 求助:PLC做主站的MODBUS通信
admin
高级会员
Rank: 4



UID 41
精华 0
积分 2036
帖子 682
阅读权限 50
注册 2007-11-11
状态 离线
发表于 2008-3-9 14:56  资料  短消息  加为好友 

求助:PLC做主站的MODBUS通信

大家好,我打算采用MUDBUS协议来实现PLC与DSP的通信,由于一些原因我必须把PLC作为主站,在STEP 7 MicroWIN V4.0 SP4中我调用了MUDBUS RTU主站指令库。我想请教大家的是,当PLC要读DSP的寄存器中的值时,DSP回传数据帧后,这些数据会保存在PLC的寄存器中,那么如果是调用MUDBUS RTU主站指令库,PLC是不是自动的完成对数据帧的解包,也就是直接将要读取的数据放在指定的寄存器中?      我要做的通信过程是这样的:
DSP传给PLC一些故障的信息和数据,PLC把这些数据放到指定的寄存器中,这些指定的寄存器与触摸屏的一些寄存器一一对应,然后在屏上显示   由于我使用了MODBUS协议,我想用定义好的功能码03和06以及16
这个保持寄存器我想能不能把DSP中的寄存器做个映射,比如DSP的地址0x0001对应的是MODBUS地址的40001,那么我要读0x0001的值,我访问40001就可以了    因此我定的协议是这样的:
PLC发的数据格式依次为 站地址、功能码、要读从站的首地址(即40001,而不是0x0001)、数据个数、校验码
而DSP给我回传的数据格式依次是:站地址、数据个数、数据、校验码   我的想法是这样的 :我们先固定好什么样的故障信息放入指定的寄存器 我要读故障信息 直接读这些地址就可以了 把这些信息读回我PLC的寄存器 由于已经做了规定 我自然知道这些数据是什么样的故障 那么PLC这方就不用做判断了
我再把这些数据传到与触摸屏对应的寄存器中 ,供触摸屏读取来显示   整个通信过程就是这样的了 ,因为从来没做过,网上也找不到类似的资料,大家帮忙看看能不能实现啊?

顶部
[广告]
 


Google

当前时区 GMT+8, 现在时间是 2008-7-5 21:45

By Discuz! 5.5.0 © 2007-2008
Processed in 0.095888 second(s), 6 queries , Gzip enabled

清除 Cookies - 联系我们 - Autooo! Inc. - Archiver - 繁体中文