引言
当前在国际上有影响的现场总线标准很多,其中,Profibus-DP主要用于中央处理器与分散外围设备之间的高速数据通信,解决自动控制系统(如PLC、PC等)通过高速串行总线与分散的现场设备(I/O、驱动器、阀门等)之间的通信问题。本文采用Profibus-DP实现了西门子公司S7系列的PLC系统和和利时公司的CPU24x和CPU21x系列PLC的通讯互连。
图1 主-从通信系统配置
图2 在从站模式下CPU和CP数据交换原理示意图
系统设计
和利时的CPU24x和CPU21x一般作为主站设备,而西门子S7-300 PLC的CPU 315-2DP、CP342-5等既可做主站也可做从站。当它们做从站时,可设计为被动从站或主动从站。被动从站执行简单的DP协议功能,相当于简单从站;主动从站在总线中可以取得令牌,然后在确定的时间窗口中可以与从站通信,它除了支持简单的DP协议功能外,还支持一些其它的服务,如支持FDL服务、S7、PG等。另外,CP342-5和带CP5611卡的PC站还可实现二类DP主站、用于编程、诊断等功能。
因和利时公司的CPU24x和CPU21x的 PLC为主站设备,在系统中只能做主站,因此本设计把西门子的设备S7-300和S7-200 PLC作为从站,利用Profibus-DP的主-从通信原理实现他们的通信。系统配置如图1所示。
在图1中,和利时 PLC使用Profibus-DP通信模块FM208连接到Profibus-DP网络,FM208通信模块为DP主站模块,在DP网络中做DP主站。所有的西门子DP从站设备都可以作为FM208的从站连接到DP网络中,并通过使用DP通信协议实现相互间的直接数据通信。在此,西门子的S7-300、S7-200 PLC和变频器分别通过Profibus-DP通信模块CP 342-5、EM 277和CBP2做为和利时PLC的FM208的从站,并实现相互通信。
通信编程
用于DP主站的用户程序
用于DP主站的用户程序都已集成在Profibus-DP通信模块FM208中,用户只需完成以下几个方面的组态及设置即可完成主站的用户编程。
(1) DP网络组态,用WinNCS软件完成。
① 启动WinNCS软件,网络类型选取Profibus。然后在Profibus网络中插入主站,系统默认CPU24x为主站,指定其DP主站地址为2,总线网络的传输速率为1.5Mbps。
② 在FM208主站中插入DP从站CP342-5、EM277和CBP2,对应的DP网络地址为3、4、5。CP342-5的I/O数据选择16个字进16个字出,EM277的I/O数据模块选择8个字进8个字出,CBP2的数据类型选择PPO3。各从站的I/O数据在主站FM208中按顺序自动指定相应的地址。
③ 编译并保存文件,然后下载到通信处理器FM208中。
(2)FM208配置的从站I/O数据地址在CPU241中的地址分配。
根据用WinNCS配置的从站数及设定的I/O数据起始地址和长度,可以在PLC程序的数据块DB1中为其指定数据寻址地址。例如上述从站I/O起始地址都是从0开始,数据总长度各为28个字,在DB1中加入地址配置指令:
KC='UAT: 0 28 0 28 ;END'
在PLC用户程序中,直接根据上述设定的地址就可寻址从站的过程数据,不需要额外的通信编程。
用于DP从站S7-300的用户程序
S7-300 PLC通过CP342-5作为主站和利时PLC的从站,为确保数据通信的实现,需完成以下工作。
① 组态CP342-5做从站。
② 编写从站用户程序,并下载到S7 PLC。
③ 启动和调试DP从站和DP主站。
④ 通信异常诊断。
(1)CP功能
CP342-5用作DP从站可以被DP主站组态为智能从站或模块化主站,做从站时可以组态为被动从站或主动从站,但不允许在组态为从站的同时组态为主站。用作主动从站时除了提供从站服务功能外,还可以提供如FDL连接服务等其它的通信服务。CP342-5的主要功能有:
① 从主站接收用于配置和组态的参数,包括过程输出数据和传递到CPU的数据。
② 从CPU的DP数据域接收输入数据,为DP主站准备数据。
③ 给DP主站准备拾取和*估的诊断数据。
④ 给2类主站准备读取的I/O数据。
(2)数据交换原理