自由口模式下S7-200PLC与上位机的通信
0 引言
把个人计算机连入PLC网络,不但有很强的数据处理和管理能力,而且能给用户提供非常美观而又易于操作的界面,实现对系统参数的监控、修改及显示各种实时控制图表。对于监控系统的设计,目前市场上有众多厂家提供的通信组态软件,但其应用于小型的控制系统时成本较高,使用方法复杂,所以现在仍然有许多用户还在自己用高级语言开发监控系统。微软公司推出的VisualBasic6.0,具有良好的图形用户界面,其Microsoft Communications Control (以下简称MSComm)通信控件,可以让我们轻松完成自由口通信的设计。本文结合西门子S7-200系列PLC,对此进行了一些初步介绍。
1 S7-200 PLC的自由口通信模式
西门子S7-200系列的PLC可以在四种通信模式下工作:PPI模式、MPI模式、PROFIBUS-DP模式和自由口通信模式。其中, PPI和MPI是西门子专门开发的通信协议。PPI协议用于点对点接口,是一个主/从协议。MPI协议适用于多点接口,可以是主/主协议或主/从协议。PROFIBUS-DP是西门子支持的现场总线网络。而大多数用户选用的是对用户完全开放的自由口通信模式。
自由口通信模式是由用户程序来控制CPU的串口通信。用户可以利用发送/接收中断、发送/接收指令来控制通信的操作,实现与打印机、条形码阅读器等设备的通信。S7-200 CPU上的通信口是标准是RS-485半双工串行通信口。此串行字符通信的格式包括:1个起始位、7或8个字符(数据字节)、1个奇偶校验位或没有校验位,1个停止位。波特率可以为1200、2400、4800、9600、19200、38400、57600或112500bit/s。凡是符合这些格式的串行通信设备,理论上都可以和S7-200 CPU通信。
自由口模式的通信程序中,需要多次使用发送指令XMT和接收指令RCV。在允许输入端有效时,发送指令通过指定端口将数据缓冲区发送到远程设备;接收指令通过指定端口从远程设备上读取数据存储于数据缓冲区。这两条指令可以分别发送和接收1~255个字符,实际应用时常常和相应的中断程序联系起来。[1]
2 上位机的通信编程
上位机通信程序是在VB6. 0环境下开发的,利用VB可以开发出良好的图形界面,并且其提供的MSComm通信控件使得VB在开发可视化监控系统方面有其独特的优势。
2. 1 MSComm控件
MSComm是微软提供的扩展控件,用于支持VB程序对串口的访问,该控件“隐藏”了大部分串口通信的底层运行过程和许多烦琐的处理过程,同时支持事件驱动通信的机制。在通信过程中,程序员应用该控件时只需设置、监视MSComm控件的属性和事件即可完成对串行口的初始化和数据输入输出工作,可以轻松完成通信的设计。它为应用程序提供了通过串行接口收发数据的简便方法,在VB、VC、Delphi等语言中均可使用。
相关文章
- 2022-12-05新型128导大脑磁刺激仪的研制
- 2024-02-06高频电刀主变换器工作原理及故障分析
- 2023-12-13太阳能半导体制冷装置设计与性能分析
- 2022-01-09嵌入式实时操作系统设计及应用
- 2022-08-30利用F-P干涉仪测量固体材料线膨胀系数
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。