使用S7200MODBUS指令实现通讯方法及例程_第1页
使用S7200MODBUS指令实现通讯方法及例程_第2页
使用S7200MODBUS指令实现通讯方法及例程_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、使用S7-200MODBUS指令实现通讯方法及例程MODBUS主站程序:MODBUS从站程序:在从站中的“MBUS_INIT”指令的最下面一个参数“HoldStart”项设置为“&VB1000”,是因为从站和主站通信的数据放在了以VB1000开始的存储区内,其实这个地址不是固定的,但是必须是要通信数据的首地址;当主站要访问从站的前两个字节数据时,在主站“MBUS_MSG”指令的“Addr”参数项数据是40001而不是41001,说明Addr对应从站Holdstart的相对地址而不是从站的绝对地址;还有就是当主站要访问从站的第50、51字节时,“Addr”参数项数据是40026而不是40050。

2、因为Addr的最小单元是字,从40001开始是第0个字,也就是40001对应PLC发送的数据中从站寄存器地址段数据是0000而不是0001,40002发送的从站寄存器地址是0002,而不是0001了,一次往后推,就可以得到40050对应发送的地址段数据是0098,也就是对应从站中的VB1098和VB1099.其实S7-200MODBUS指令很好用,也很简单,就在主站和从站各自加上个“头”就可以了,但是很多时候回出现问题就是因为没有很好的去把握主站和从站的数据怎么对应,以至于找不准我们要的数据反而怀疑是协议没有设置好,或通信有问题等。建议:MODBUS不是并不是西门子200的专用协议,PPI才是

3、。所以如果只是200和200之间通信的话首选PPI,因为PPI的可靠性更强,编程更简单,只需主站编写读写指令(用向导时又省去了编程的麻烦直接调用向导子程序就行)从站不用编写任何的程序;PPI的另一个优势是通信速率快最高是187.5Kbps,而MODBUS最快是115.2Kbps。我曾做的项目时一主十从,主站没有其他任何程序就只有通信,从站也一样,但是主站控制某一从站输出时要有23秒的延时,有的更长,但PPI即使是整套程序编完也感觉不出延时。不过MODBUS的一个优点是每次传输的数据多,最多是120个字240个字节,这个数据量是相当大了,另一个优点是可以和更多的现场仪表实现通信,因为现场仪表中更多的是支持MODBUS协议的,很少支持PPI。虽然PPIU次读写的最大数据是16字节,但是PPI指令向导中可以组态24个读写指令,如果对某个从站一次读写不完还可以再读写一次,只要读写指令不超过24个,其实这个数据量也是不小的。不过在我做的项目中由于从站比较多,每个从站通信的数据量都不少,所以24条肯定是不够用,但是MODBUS的速率又慢,以太网的成本又高,那该怎么办呢?最后我们还是选择了PPI,只不过把从站需要计算转换的数据放到主站来处理,这样从站就相当于一个采集模块了,直接把原始数据上传到主站,这下24条指令就够了。这样做的一个优点就是把所有分散的数据集中到主站

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论