SIEMENS PLC与上位计算机的通讯程序设计*-PLC技术网(www.plcjs.com)-可编程控制器技术门户


SIEMENS PLC与上位计算机的通讯程序设计*

 (点击题目 可以在互 联 网中搜索该题 目的相关内容)
日期:2006-4-25 23:21:06     来源:本文摘自《PLC&FA》   作者: 点击:
点击【  大   中  小 】,可以选 择字 体的大小,以便 你阅读.

1  引言
近年来,随着微处理器、计算机和数字通信技术的迅猛发展,计算机控制已扩展到了几乎所有的工业领域。它不仅以其良好的性能满足了工业生产的广泛需要,而且将通信技术与信息处理技术融为一体,成为具有逻辑控制功能、过程控制功能、运动控制功能、数据处理功能、联网通信功能的多功能控制器。在PLC组成的控制系统中,一般由PLC作为下位机,完成数据采集、状态判别、输出控制等,上位机(微型计算机、工业控制机)完成采集数据信息的存储、分析处理、人机界面的交互以及打印输出,以实现对系统的实时监控。这种监控系统充分利用了微型机和PLC各自的特点,实现了优势互补。其中的技术关键是实现PLC与计算机的互联通信。

2  通信方式和通信协议
2.1通信方式

目前PLC和PC机的互联通信方式有以下几种:
(1) 通过PLC开发商提供的系统协议和网络适配器,构成特定公司产品的内部网络,其通信协议不公开。互联通信必须使用开发商提供的上位机组态软件,并采用支持相应协议的外设。这种方式其显示画面和功能往往难以满足用户的具体需要;
(2) 购买目前通用的上位机组态软件。这种方式除了要增加系统投资以外,其运用的灵活性也受到一定限制;
(3) 利用PLC厂商所提供的标准通信端口和由用户自定义的自由端口通信方式。这种方式不需要增加投资,具备较好的灵活性,特别适合小规模控制系统。
S7-200系列PLC的通信接口是与RS-485兼容的9针D型连接器,符合EN 50170。附表给出了通信口的引脚分配。

PC机的标准串口为RS-232,西门子公司提供的PC/PPI电缆带有RS232/RS485电平转换器,因此在不增加任何硬件的情况下,可以很方便地将PLC和PC机互联。
2.2通信协议
S7-200支持多种通信协议,主要有:
(1) 点对点接口协议(PPI)
PPI是主/从协议,网络上的S7-200 CPU均为从站,其他CPU、SIMATIC编程器或TD200为主站;
(2) 多点接口协议(MPI)
MPI是集成在西门子公司的可编程序控制器、操作员界面和编程器上的集成通信接口,用于建立小型的通信网络。最多可接32个节点,典型数据长度为64字节,最大距离100m;
(3) Profibus协议
Profibus协议用于分布式I/O设备(远程I/O)的高速通信。许多厂家生产类型众多的PROFIBUS设备,如简单的输入/输出模块、电机控制器和可编程序控制器;
(4) 用户定义协议(自由端口模式)
通过使用接收中断、发送中断、字符中断、发送指令(XMT)和接收指令(RCV),自由端口通信可以控制S7-200 CPU通信口。通过SMB30,允许在CPU处于RUN模式时通信口采用自由端口模式。CPU处于STOP模式时,停止自由端口通信,通信口强制转换为PPI协议模式。
自由端口模式为计算机与S7-200 CPU之间的通信提供了一种廉价与灵活的方法。计算机与PLC通信时,为了避免各方争用信道,一般采用主从方式,即计算机为主机,PLC为从机,只有主机才有权主动发送请求报文,从机收到后返回响应报文。

3  PLC端通信编程
PLC的通信编程首先是对串口初始化。对S7-200的初始化是通过对特殊标志位SMB30写入通信控制字,设置端口0通信的波特率,奇偶校验位、停止位和字符长度。SMB130用于端口1的设置。显然,这些设定必须与PC机设定相一致。S7-200系列有专用的发送指令XMT(Transmit),通过指定的通信端口(PORT),发送存储在数据缓冲区(TBL)中的信息。接收指令RCV(Receive)初始化或终止接收信息的服务,通过指定的通信端口(PORT),接收信息并存储在数据缓冲区(TBL)中。为提高通信可靠性可以采用异或校验(或求和校验)。
使用字符中断方式接收数据,以起始字符作为接收报文的开始,部分程序如下:
//主程序
LD     SM0.0    
MOVB  16#05, SMB30  
//19200bps,8位数据,无奇偶校验,1位停止位
ATCH  INT_0, 8 //出现接收字符中断时执行INT_0

本新闻共3页,当前在第11 2  3  

上一篇: 基于Java的网络应用程序结构分析
下一: CAN总线及其在UPS网络监控系统中的应用