vb和西门子s7-200 plc的通讯 监控

来源:百度知道 编辑:UC知道 时间:2024/06/21 19:10:14
做毕业设计!要通过vb做上位机监控!对plc控制!好像西门子的通讯协议不公开 还要下东西时把?
想请问高手关于通讯方面vb和plc部分的程序 以及实现方法!!
带详细说明的外加50分!!!
上面几位的 看的我头晕眼花的!!貌似很复杂呀!!有没有简单的
这样编写行不行
mscomm1.output=sedate
sedata
redat$=mscomm1.input
如果可以的话 什么意思呀!!!

1、可以写入、读出寄存器的数值(字节、字、双字);

2、可以进行元件(V、M、S、Q、I)的置、复位操作;

3、可以读取元件(V、M、S、Q、I)的ON/OFF状态。

4、可以控制PLC的运行、停止。

公布现在网上流行的PPI协议,此协议虽然有些错误,但是思路没问题。

西门子S7-200 PLC之间或者PLC与PC之间通信有很多种方式:自由口,PPI方式,MPI方式,Profibus方式。使用自由口方式进行编程时,在上位机和PLC中都要编写数据通信程序。使用PPI协议进行通信时,PLC可以不用编程,而且可读写所有数据区,快捷方便。但是西门子公司没有公布PPI协议的格式。用户如果想使用PPI协议监控,必须购买其监控产品或第三方厂家的组态软件。这样给用户自主开发带来一定困难,特别是自行开发的现场设备就不能通过PPI协议接入PLC。其它通讯方式编程也存在编程复杂,需要购买软件和授权等局限性(1)。通过数据监视、分析的方法,我们找出了PPI协议的关键报文格式,可用于上位机、现场设备与S7-200 CPU之间通讯。
分析方法
西门子的Step 7 Micro/Win32 是用于S7-200系列PLC的开发工具,它使用PC机上的COM口通过一条PC/PPI编程电缆连到PLC的编程口上。这说明,PC实际上是可以通过串口同S7-200 CPU通讯。只是我们不知道通讯协议而已。通过截获PC机串口上的收发数据,对照Step 7软件发出的指令,我们就有可能分析出有关指令的报文和通讯方式;然后,直接通过串口向PLC发送报文,以验证这些指令报文是否正确。本着这一思想,我们采用以下步骤获得这些报文。
首先制作一个串口的分支器,COM1的RX、TX分别接到COM2的TX、RX,即交叉接线,使得COM1发的数据COM2能收到。PC/PPI编程电缆接在COM1上,这样,Step7 Micro/Win32发给PLC的报文就可以在COM2上接收了。我们按S7-200系统手册设置好两个串口,参数要一样,均为9600,8,偶校验,1位停止位。然后设置好Step7软件,使之能与S7-200 CPU正常通讯。从Step7软件中发出一个明确指令,COM2上的