浔之漫智控技术-西门子PLC代理商
西门子PLC模块 , 变频器 , 触摸屏 , 交换机
6ES7231-7PC22-0XA0诚信经营

6ES7231-7PC22-0XA0诚信经营

1 引言
  现场总线控制系统(FCS)用数字信号取代模拟信号,以提高系统的可靠性、jingque度和抗干扰能力,并延长信息传输的距离。它既是一个开放的通信网络,有时一种全分布的控制系统,是一种新型的网络集成自动化系统,它以现场总线为纽带,把挂接在总线上相关的网络节点组成自动化系统,实现基本控制、补偿计算、参数修改、报警、显示、综合自动化等多项功能。
  FCS用“工作站-现场总线智能仪表”的二层机构完成了集散控制系统(DCS)“操作站-控制站-现场仪表”的三层结构模式,降低了成本,提高了可靠性,且在统一的下可实现真正的开放式互连系统结构,是一种正在发展的很有前途的计算机控制系统。
  目前具代表性的现场总线是PROFIBUS(Process Fieldbus)。PROFIBUS是由SIEMENS公司推出的一种开放式现场总线标准,1989年成为德国标准DIN19245,1996年成为欧洲标准EN50170,1999年12月被接受为IEC61158的一部分。用于工厂自动化系统三级网络中的底层,即车间级监控和现场设备层数据通信与控制;使用于分散的、具有通讯接口的现场受控设备对底层设备有较高的数据集成和远程诊断、故障报警及数字化要求的系统。
  PROFIBUS遵循ISO/OSI模型,其通信模型由三层构成:物理层、数据链路层和应用层。PROFIBUS由三部分组成,PROFIBUS-FMS(Fieldbus Message Specification,现场总线报文规范)、PROFIBUS-DP(Decentralized Periphery,分散型外围设备)、PROFIBUS-PA(Process Automation,过程自动化)。其中PROFIBUS-DP已广泛适用于水电站自动化领域。
2 PROFIBUS-DP的特性及系统组成
2.1 PROFIBUS-DP的特性
  PROFIBUS-DP使用物理层,数据链接层和用户接口,用于现场层的高速数据传送。主站周期地读取从站地输入信息并周期地向从站发送输出信息。总线循环时间必须要比主站程序循环时间短。此外,PROFIBUS-DP还提供智能化现场设备所需的非周期性通信以进行组态、诊断和报警处理及复杂设备在运行中参数的确定。
PROFIBUS-DP基本功能和特性如下:
(1) 远程离高速通信
  支持9.6Kbps到12Mbps的传输速率; 12Mbps时大传输距离为100m,1.5Mbps时为200m,另外还可以用中继器延长;
(2) 分布式结构
各主站间令牌传递,主站与从站为主-从传送;每段可有32个站,用连接线可扩展到126个站;
(3) 易于安装,开放式的通讯网络;
(4) 可靠性高,具备自诊断功能。
  PROFIBUS-DP主站分为一类主站和二类主站。一类主站完成总线通信控制与管理,完成周期性数据访问,包括PLC、PC或可做一类主站的控制器。二类主站完成非周期性数据访问,如数据读写、系统配置、故障诊断等,包括操作员工作站(如PC机加图形监控软件)、编程器、HMI等。PROFIBUS-DP从站主要进行输入、输出信号采集和发送,包括PLC或其他控制器、分散式I/O、智能现场设备等。

2.2 系统组成
  为便于叙述和理解,现组成一个双主站单从站的PROFIBUS-DP网络,如图1所示。具体配置如下:

图1 PROFIBUS-DP网络
(1) 硬件:带Siemens CP5611卡的PC机两台,一台配置为一类主站,另一台配置为二类主站;从站为Siemens S7-200 系列PLC的CPU224一块,带Siemens EM277DP通讯模块;三个网络连接器;连接线为双绞线。
(2) 软件:用于软件编程的STEP7-MICROWIN3.2和用于实现PROFIBUS-DP协议网络配置的SIMATIC NET6.0。
3 PROFIBUS-DP主站和从站的组态
3.1 一类主站的组态
  在PC1(一类主站)使用SIMATIC net 6.0软件来组态整个PROFIBUS-DP网络。具体步骤如下:
(1) 使用SIMATIC程序组中的Configuration Console设定PROFIBUS的模式为Configured Mode,插槽号随意,如图2所示:

图2 Configuration Console
(2) 用PC Station Wizard进行一系列简单的设置后新建一个工程
设置CP5611的参数:网络类型设为PROFIBUS,站地址为1(也可为其他值,但不能重复,其他站点地址的设定与此类同);加上PROFIBUS-DP总线(DP master system(1)),并把CP5611设为DP-Master(即一类主站)。导入EM277的GSD文件,在视窗右侧的从站设备栏里面就可以找到EM277模块了。将EM277图标拖到DP总线上,站地址为设置2,V存储器偏移量本例设置为4000,然后根据需要设定EM277的发送和接收缓冲区大小。后将配置结果下载到模块。结果如图3所示:

图3 一类主站的组态
  至此,本PROFIBUS-DP网络结构一类主站与从站的主从关系已经确立了。下面接着配置二类主站。

3.2 二类主站的组态
(1) 同样还是在PC1上,在图3的界面中点击图标 (Configure Network),弹出如图4的界面。添加一个SIMATIC PC Station(此时这个PC Station还没有挂到DP网上),并双击它,弹出如图5的窗口(此窗口与图3类同)。手动添加OPC Server和CP5611,槽位随意。将CP5611站点地址设为3,从属于之前添加的DP网,并设定为DP Master Class 2(即二类主站),将配置结果下载到模块。再次点击 ,可看到PC Station挂到DP网上了。

图4 Configure Network

图5 二类主站的组态
(2) 现在操作对象转到PC2上。同样运行Configuration Console,设置也与PC1相同。打开PC Station Wizard新建一个工程。将CP5611设为DP Master Class 2,站地址设为3,同样要从属于DP master system(1)。将配置结果下载到模块。
3.3 从站的组态
  为了将EM277作为一个DP从站使用,必须设定与主站组态中的地址相匹配的DP端口地址(之前设定的地址为2)。从站地址是使用EM277模块上的旋转开关设定的。在变动旋转开关之后,用户必须重新启动CPU电源。
  EM277输出和输入数据缓冲区驻留在S7-200CPU变量存储器(V存储器)内,输入缓冲区紧紧跟随输出缓冲器。缓冲区的大小是由DP主站组态设定的(之前设定为8 Bytes Out/8 Bytes In)。组态后,EM277可接收从主站来的输出数据,并将输入数据返回给主站。主从站缓冲区的关系如图6:

图6 主从站的缓冲区
若EM277 PROFIBUS-DP从站模块为I/O链中的个智能模块,则它的状态信息从CPU224中的SMB200到SMB249获得;若EM277为第二个智能模块,其状态从SMB250到SMB299获得。只有DP主站才可以组态运行了DP 方式下的EM277 DP模块,用户不能通过改写有关SMB存储单元来组态EM277 DP模块的缓冲区大小或位置。
由表1中专用存储器字节的说明,不难写出CPU224的DP通信程序,见表2。


4 通过OPC读写PLC数据
OPC(OLE for Process Control)是过程控制业中的新兴标准,它的出现为基于bbbbbbs的应用程序和现场过程控制应用建立了桥梁。可以通过Siemens提供的OPC Server程序读写PLC中的数据。
(1) 一类主站PC1读写PLC
  在PC1上打开SIMATIC程序组中的OPC Scout,新建一个组名。打开新建组的“OPC-Navigator”,在DP目录下的Slave002就是从站CPU224,M00_I和M00_Q即对应从站的输入和输出缓冲区。将M00_I和M00_Q目录下的变量按需求添加(如图7),确认后OPC就开始运行了。如果变量的“Quality”显示“good”,表示OPC Server程序已经通过PROFIBUS-DP总线协议和PLC建立了连接运行关系。此时不仅可以读取PLC中的数据,还可以向PLC写数据。
(2) 二类主站PC2的数据访问
  在PC2上同样打开OPC Scout,新建组名。在该组名的“OPC-Navigator”下添加二类主站相应的输入和输出缓冲区,确认。PC2就可以访问网络中的数据了,各数据的变化同PC1中的是同步的。
  要注意的是:当PC1的OPC Scout关闭的时候,PC2的OPC Scout对DP网络的数据访问也中断了。这证明了CPU224仅仅从属于一类主站PC1,而二类主站PC2不能控制它(仅能进行数据访问)。

图7 OPC-Navigator
5 PROFIBUS-DP在水电站中的应用
  目前,PROFIBIS-DP总线技术在水电站小型自动化系统中应用较多,如水电站弧门监控系统和机组辅助设备控制系统就大量用到了PROFIBUS-DP网络。这是因为PROFIBUS-DP实时性受到系统规模影响,系统规模越大实时性越差,所以PROFIBUS-DP总线技术适合于小型自动化系统。
  不过,PROFIBUS-DP在信号的传输精度、可靠性和抗干扰性有不俗的表现,其系统成本低、安装简单、维护调试方便且易于扩展。而且,各类传感器和智能设备等都有支持DP网络的标准通信口,硬件资源丰富;DP网络本身灵活多变的主从结构,适应多种控制系统;各类组态软件也都可以和OPC Server建立数据交换,减少了监控系统的开发周期;通过专用的通信协议转换器或工控机,基于PROFIBUS-DP总线的控制系统可以挂靠到工业以太网上,成为综合控制系统的一部分。因此,虽然现在工业以太网的技术有大普及之势,但DP网较高的性价比还是被越来越多的用户所认可。
6 结束语
  总的来说,作为之一的PROFIBUS-DP总线技术开放性强、,在水电行业的应用将越来越广泛

引言

随着可编程控制器(PLC)技术的迅速发展,PLC在我国各个工业控制领域中得到了越来越广泛的应用。而西门子公司生产的S7-200系列小型PLC,以其功能强人,使用稳定且而在中国市场上占有很重要的地位,其内部集成的通信接口为用户提供了强大的通信功能,根据不同的协议通过接口使得PLC可与不同的设备进行通信并组成网络,实现数据传送及控制等功能。S7-200系列PLC支持自由口协议,它为用户在使用时,提供了很多方便之处。本文主要研究的是在VB6.0环境下S7- 200PLC与PC机自由口通信的实现,并结合安全阀检测控制系统的开发实例加以说明。

1.系统硬件组成



图1蝶阀监测系统原理示意图


系统主要由工控机、PLC、打印机和电气控制柜等组成,如图1所示。为了提高控制系统的可靠性与灵活性,系统采用PLC可编程逻辑控制器。PLC选型为SIEMENS公司的S7-200系列PLC,中央处理单元为西门子公司推出的PLC采用S7-200系列CPU226,该CPU在本机体中集成了2个RS-485通讯口,其,满足本系统的所有要求。

使用485总线的一端连接PLC的通讯口PORT1,另一端通过RS-485/232电平转换器连接至PC机的RS-232串口,实现PC机向PLC发送命令帧、并接收PLC响应帧。

系统共有6个台位,共有12个传感器,其开关量控制点数有限所以需要扩展模块EM221和EM231。

2.控制的内容和要求

系统采用集散控制,工控机为上位机主要负责监控和管理功能:如数据的处理、与PLC通讯、误差修正等。PLC为下位机也是控制的核心,通过RS485接口与工控机相连。把发送信息输入到上位机,上位机向PLC发送发放的数据和指令。PLC接受上位机的信息并响应,实时控制电磁阀的打开合关闭,实时采集监测压力,并把每一路状态的相关数据反馈到上位机,由管理程序生成数据库,可对数据进行统计、报表、打印等。

本控制系统设计任务需要实现以下目标:
(1)可以监控蝶阀腔体内压力的变化,可以人工设定并自动控腔内压力值。
(2)可以通过自动方式和手动方式控制该系统。
(3)现场显示界面显示的内容主要包括:当压力值、当前的检测状态、实时故障报警和历史故障报警等。
(4)通讯采用RS-485总线通讯方式,使PLC与远程PC机联系,实现通过PC机控制电磁阀的开关,来压力大小目的。PC机同时与其他系统发生联系,进而使工厂整个生产过程构成了一个有机的整体。

3 PC机与PLC通信基础

3.1PLC自由口通信命令

所谓自由口通信模式即Freeport模式,它是建立在RS一485硬件基础上的一种通讯方式,它允许用户自己定义一些简单、基本的通讯协议设置,如数据长度、奇偶校验等等,通讯功能完全由用户程序控制[1]。自由口模式使用的相关的命令为XMT和RCV命令[2],分别用于发送和接收数据。这两个命令都对应各自的一个数据缓冲区,该缓冲区可以由用户在编程中决定,如VB100,即为从VBl00 起始的一块数据存储区。其中,XMT的缓冲区格式如图2


图2 RCV 的缓冲区格式为


但应当注意的是,自由口协议必须在PLC处于RUN 模式下才有效,如果处于STOP 模式下PLC会自动的回到PPI模式(前提是使用PPI模式) 。

3.2 Mscomm 控件

为了实现PC 机与下位机PLC 之间的通信,bbbbbbs 提供了Mscomm 控件以供用户使用。它封装了关于通信的相关内容,我们只需在Ⅷ平台中,设置其相关属性,并且对其的事什进行相应的编程即可使用。关于Mscomm 控件的一些重要属性见表1。

关于Mscomm控件的事件,只有一种,即OnComm事件,通信中只要有错误或事件发生时,就会产生OnComm事件,而CommEvent 属性传回不同的错误或事件:


表1 Mscomm控件属性


对应的数码值,据此可对事件进行处理。在本文的通信过程中,主要用到的是ComEvReceive值。当接收缓冲区有数据时产生该值,然后对bbbbb值进行相应的处理。

4.VB6.0平台PC机与PLC的通信

Microsoft公司生产的Visual Basic6.0是bbbbbbs 环境下的一种可视化编程语言开发系统,它以强大的图形设计能力,简易的编程语言和容易学习使用等优点在工程中得到了广泛的应用,我们正是使用它进行了与PLC 通讯的开发。

PLC I/O分配表见表2,只列出了4个台位的。,结合工程的实际,我们编制了相应的PLC 通信程序。由于篇幅有限,只列出部分程序。但在编程中需要注意的是,程序中与通讯有关的除了进行相关寄存器的设置之外,还应该对接受的命令进行判断,己选择运行相关的程序。另外,由于PLC 中的通讯口是RS—485通讯口,其为半双上通讯口,所以XMT 和RCV 命令不能同时运行。


表2 I/O分配表


PLC的中断程序

LDB= SMB86, 16#20
LPS
MOVB 10, SMB34
ATCH INT1, 10
AB= ‘K‘, VB301
AB= ‘C‘, VB302
AB= ‘0‘, VB303
S Q0.0, 1
LRD
AB= ‘G‘, VB301
AB= ‘C‘, VB302
AB= ‘0‘, VB303
R Q0.0, 1
LRD
AB= ‘K‘, VB301
AB= ‘P‘, VB302
AB= ‘0‘, VB303
S Q0.1, 1
LRD
AB= ‘G‘, VB301
AB= ‘P‘, VB302
AB= ‘0‘, VB303
R Q0.1, 1
LPP
NOT
RCV VB300, 0

5 VB通信程序设计

VisualBasic 开发包括界面的设计和程序的开发两部分。

5.1 人机界面设计

人机界面使用户与计算机之间的中介,是软件产品的窗口。人机界面首先考虑的是如何能更好的满足用户的使用要求和操作习惯。人机界面的设计要考虑界面功能的全面和操作的简便。常用的功能要尽量安排在主界面中,如果有多个功能模块,可以将先对独立的模块用单独的界面表示,并与主界面双向连接。如图3

本系统界面包括状态的监控、身份登陆、参数设定、报表查询、打印、报警和事件显示。



图3 人机界面


安全阀气密性检测控制系统 ,VB通讯界面设计时, Mscomm 控件的重要属性设置为:
bbbbbMode 属性:comlnputModeBinary,按二进制方式读取数据,因为从PLC 返回的数据中包括ASCII码值超过128 的字节。
Settings 属性:9600,n,8,1,选择9600bps波特率,不进行奇偶校验,8 位数据位,1位停止位,其设置要与PLC的设置一样,才能正常通信。
RThreshold 属性:1,当接收到1个字符时,引发OnComm事件的ComEvReceive 常数。

5.2 通信程序设计

VB通信中接收事件的程序清单如下
If MSComm1.CommEvent = comEvReceive Then
S1 = MSComm1.bbbbb
If (S1 = Chr(&H1B)) And (Len(SCOMS) > 5) Then
SCOMS = ""
Else
If S1 <> Chr(&HD) Then
SCOMS = SCOMS & S1
Else
Call MYSAVE(SCOMS)
End If
End If
End If
VB通信中分配变量
SCOMS = Trim(SCOMS) ‘接收到20个字段
SCOMS = Right(SCOMS, 20)
vh5 = Trim(Mid(SCOMS, 8, 4)) ‘压力值的存放(字符串)
yld1 = CCLng(vh5)
vh6 = Trim(Mid(SCOMS, 12, 1)) ‘自动信号
zdd1 = vh6
vh7 = Trim(Mid(SCOMS, 13, 1)) ‘充气信号
cqd1 = CCLng(vh7)
vh8 = Trim(Mid(SCOMS, 14, 1)) ‘排气信号

结束语

在实际中采用自由口通信模式,运用VB6.0作为开发工具,方便的实现了S7—200PLC与上位PC 机间的通信,实现了对蝶阀气密检测的控制。经现场调试及运行表明,这是一种非常有效、可靠的通信方法,这种通信方法也可以应用于其它相关的通信场合,具有一定的普遍意义。



展开全文
优质商家推荐 拨打电话