西门子模块6ES331-7NF10-0AB0
西门子PLC WinCC 与S7-200 SMART CPU 的 OPC 通信
WinCC 中没有与S7-200 SMART CPU 通信的驱动,所以 WinCC 与 S7-200 SMART CPU 之间通过以太网的通信,只能通过 OPC 的方式实现。S7-200 SMART CPU 作为 OPC 的 Sever 端,只需设置 IP 地址即可。
上位机作为 OPC 的 Client 端,通过 SIMATIC NET 软件建立 PC Station 来与 S7-200 SMART 通信。
建立好 PC Station 后,WinCC中的实现步骤如下:
1. 建立所有WinCC中要用到的变量
首先在 OPC Scout中建立好所有 WinCC 中要用到的变量,步骤见OPC Scout 测试。
2. 添加新的驱动
打开 WinCC 软件新建一个项目,用鼠标右键点击“变量管理",快捷菜单中选择“打开"。
在打开的“WinCC Configuration Studio "窗口中,鼠标右键“变量管理",在快捷菜单中选择“添加新的驱动程序",添加“OPC"驱动。如图1.所示。
图1. 添加一个新的驱动"OPC"
3. 在 WinCC 中搜索及添加 OPC Scout 中定义的变量
首先用鼠标右键“OPC Groups" ,在快捷菜单中点击“系统参数"。在弹出“OPC 条目管理器"窗口中,选择“OPC.SimaticNET.1",然后点击“浏览服务器"按钮。
在弹出的“过滤标准"窗口中选择“下一步" 进行搜索。如图2.所示。
图2.选择服务器浏览
4. 建立新连接并添加所需变量
在变量列表中选择所需要的变量,点“添加条目"按钮添加所需变量,此时会自动要求你建立一个新连接,并将变量添加到这个连接中,如图3.所示。
如果需要添加多个变量,按上述步骤重复添加即可。
图3.添加变量并建立连接
成功添加完变量后,WinCC 中变量管理中将显示已经添加的 OPC 连接和变量,如图4.所示。
图4.从OPC Scout中成功添加变量
5. WINCC 创建画面并监控变量
WINCC 中新建画面,并添加“输入/输出 域",并为其选择 OPC 变量,如图5.所示。
图5.创建 WINCC 画面
激活 WINCC ,即可测试 WINCC 与 S7-200 SMART OPC 通讯
西门子卡件6ES7314-1AG14-0AB0
2.3 配置Excel文件
(A) 如果办公室PC上未安装诸如TIA Portal、SIMATIC Net、WinCC flexible之类的SIMATIC软件,则需要从已安装上述软件的PC上拷贝OPCProxy.dll和opccomn_ps.dll到办公室PC的%SystemRoot%\Windows\System32目录下;还需要从已安装上述软件的PC上拷贝SOPCDAAuto.dll到办公室PC的%SystemRoot%\Program Files\Common File\Siemens\OPC目录下;并在DOS命令行中以Regsvr32.exe注册上述三个文件。
注意:如果办公室PC为64位操作系统,需要使用系统目录(%SystemRoot%\Windows\Syswow64)下的Regsvr32.exe注册上述三个文件。
(B) 使用Excel 2010打开附件中的OPC_Client_V1_2.xls,在“开发工具"下选择Visual Basic,打开VBA的编程界面,选择“工具"-“引用",检查OPC DA组件已被引用,如图5所示。 图5
(C) 根据需要在工作簿和VBA中修改相应的变量名称和代码。
注意:工作簿中Tags(Items)列中的变量KP700_COMF:WinCC Panel RT<@>Tag_xx中KP700_COMF为章节2.2步骤B中定义的Prefix,而Tag_xx为步骤D中创建的变量。
2.4 调试项目
(A) 将WinCC项目下载到KP700后,在安装了SIMATIC Net的PC上可以使用OPC Scout测试OPC通信,测试试图中ID列下显示的即为OPC变量的Item,如图6所示。 图6
(B) 在Excel工作簿中启用宏的安全选项,单击Start Client,可以读取OPC Server的状态和变量的实时数值,如图7所示。 图7
3 通过SOAP访问Comfort Panel的实时数据
3.1 项目结构
Comfort Panel作为WEB Server,Excel通过SOAP 访问实时数据,项目结构如图8所示。
1. PLC的硬件结构
可编程控制器主要由中央处理单元(CPU)、存储器(RAM、ROM)、输入输出单元(I/O)、电源和编程器等几组成。PLC硬件结构如图1所示:
图1 PLC硬件结构
2. 中央控制处理单元(CPU)
可编程控制器中常用的CPU主要采用通用微处理器、单片机和双极型位片式微处理器三种类型。
通用微处理器有8080、8086、80286、80386等;单片机有8031、8096等;位片式微处理器的AM2900、AM2903等。FX2可编程控制器使用的微处理器是16位的8096单片机。
3. 存储器
可编程控制器配有两种存储器:系统存储器和用户存储器。
系统存储器:存放系统管理程序。
用户存储器:存放用户编制的控制程序。
4. 输入接口电路
PLC通过输入单元可实现将不同输入电路的电平进行转换,转换成PLC所需的标准电平供PLC进行处理。
接到PLC输入接口的输入器件是:各种开关、按钮、传感器等。各种PLC的输入电路大都相同,PLC输入电路中有光耦合器隔离,并设有RC滤波器,用以消除输入触点的抖动和外部噪声干扰。PLC输入电路通常有三种类型:直流(12∽24)V输入、交流(100∽120)V输入与交流(200∽240)V输入和交直流(12∽24)V输入
图2 直流输入模块
图3 交、直流输入模块
图4 交流输入模块
5. 输出接口电路
PLC的输出有三种形式,即继电器输出、晶体管输出、晶闸管输出。如图所示:
图5 场效应晶体管输出方式(直流输出)
图6 可控硅输出方式(交流输出)
图7 继电器输出方式(交直流输出)
输出端子有两种接法:
一种是输出各自独立,无公共点:各输出端子各自形成独立回路。
一种为每4∽8个输出点构成一组,共有一个公共点:在输出共用一个公共端子时,必须用同一电压类型和同一电压等级,但不同的公共点组可使用不同电压类型和等级的负载,且各输出公共点之间是相互隔离的。
输入输出端子处理的过程如下:
6. 电源
PLC的供电电源一般是市电,也有用直流24V电源供电的。
7. 编程器
利用编程器可将用户程序输入PLC的存储器,还可以用编程器检查程序、修改程序;利用编程器还可以监视PLC的工作状态。编程器一般分简易型 和智能型。
8. PLC的软件结构
在可编程控制器中,PLC的软件分为两大部分:
1. 系统监控程序:用于控制可编程控制器本身的运行。主要由管理程序、用户指令解释程序和标准程序模块,系统调用。
2. 用户程序:它是由可编程控制器的使用者编制的,用于控制被控装置的运行
1.步进指令(STL/RET)
步进指令是专为顺序控制而设计的指令。在工业控制领域许多的控制过程都可用顺序控制的方式来实现,使用步进指令实现顺序控制既方便实现又便于阅读修改。
FX2N中有两条步进指令:STL(步进触点指令)和RET(步进返回指令)。
STL和RET指令只有与状态器S配合才能具有步进功能。如STLS200表示状态常开触点,称为STL触点,它在梯形图中的符号为,它没有常闭触点。我们用每个状态器S记录一个工步,例STLS200有效(为ON),则进入S200表示的一步(类似于本步的总开关),开始执行本阶段该做的工作,并判断进入下一步的条件是否满足。一旦结束本步信号为ON,则关断S200进入下一步,如S201步。RET指令是用来复位STL指令的。执行RET后将重回母线,退出步进状态。
2.状态转移图
一个顺序控制过程可分为若干个阶段,也称为步或状态,每个状态都有不同的动作。当相邻两状态之间的转换条件得到满足时,就将实现转换,即由上一个状态转换到下一个状态执行。我们常用状态转移图(功能表图)描述这种顺序控制过程。如图1所示,用状态器S记录每个状态,X为转换条件。如当X1为ON时,则系统由S20状态转为S21状态。
图1状态转移图与步进指令
状态转移图中的每一步包含三个内容:本步驱动的内容,转移条件及指令的转换目标。如图1中S20步驱动Y0,当X1有效为ON时,则系统由S20状态转为S21状态,X1即为转换条件,转换的目标为S21步。
3.步进指令的使用说明
1)STL触点是与左侧母线相连的常开触点,某STL触点接通,则对应的状态为活动步;
2)与STL触点相连的触点应用LD或LDI指令,只有执行完RET后才返回左侧母线;
3)STL触点可直接驱动或通过别的触点驱动Y、M、S、T等元件的线圈;
4)由于plc只执行活动步对应的电路块,所以使用STL指令时允许双线圈输出(顺控程序在不同的步可多次驱动同一线圈);
5)STL触点驱动的电路块中不能使用MC和MCR指令,但可以用CJ指令;
6)在中断程序和子程序内,不能使用STL指令。