监控组态软件的功能和使用_第1页
监控组态软件的功能和使用_第2页
监控组态软件的功能和使用_第3页
监控组态软件的功能和使用_第4页
监控组态软件的功能和使用_第5页
已阅读5页,还剩138页未读 继续免费阅读

VIP免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

.,第7章监控组态软件的功能和使用,7.1监控组态软件的概述7.2WinCC的功能介绍,.,7.1监控组态软件概述,监控组态软件概述现代计算机监控系统的功能越来越强:基本的数据采集和控制功能故障诊断、数据分析、报表的形成和打印,与管理层交换数据.为操作人员提供灵活方便的人机界面。,.,计算机监控系统的组态软件技术:图形界面技术面向对象编程技术(Object服务器OrientedProgram,OOP)组件技术(ComponentObjectModel,COM),.,1组态及组态软件的概念“组态”:configuration含义是使用软件工具对计算机及软件的各种资源进行配置,达到使计算机或软件按照预先设置,自动执行待定任务,满足使用者要求的目的。也就是通过对软件采用非编程的操作方式,进行参数填写、图形连接和文件生成等,使得软件乃至整个系统具有某种指定的功能。,.,2组态二次开发监控组态软件开发商事先开发好一套具有一定通用性的软件开发平台,生产若干种规格的硬件模块(如I/O模块、通信模块、控制模块),然后,再根据用户的要求在软件平台上进行二次开发以及硬件模块的连接。这种软件的二次开发工作就称为“组态”,相应的软件开发平台就称为“监控组态软件”,简称“组态软件”。组态可以分为离线组态和在线组态两种。“组态”一词既可以用做名词也可以用做动词。,.,3HMI/SCADA软件组态软件:更确切称呼是人机界面HMI(HumanMachineInterface)/监控与数据采集SCADA(SupervisoryControlAndDataAcquisition)软件。实现HMI或MMI(ManMachineInterface)和控制功能;实时数据库、实时控制、SCADA、通信及联网、开放数据接口、对I/O设备的广泛支持。,.,4组态软件的特点突出特点是实时多任务。(1)提供开发环境和运行环境;(2)采用客户/服务器模式;(3)软件采用组件方式构成;(4)采用DDE、OLE、COM/DCOM、ActiveX技术;(5)提供ODBC、OPC、API接口;(6)支持分布式应用;(7)支持多种系统结构,如单用户、多用户(网络),甚至多层网络结构;(8)支持Internet应用,.,5组态软件主要解决的问题(1)如何与采集、控制设备间进行数据交换;(2)使来自设备的数据与计算机图形画面上的各元素关联起来;(3)处理数据报警及系统报警;(4)存储历史数据并支持历史数据的查询;(5)各类报表的生成和打印输出;(6)为使用者提供灵活、多变的组态工具,可以适应不同应用领域的需求;(7)最终生成的应用系统运行稳定可靠;(8)具有与第三方程序的接口,方便数据共享。,.,6组态软件的系统构成必备的典型组件包括:(1)应用程序管理器提供应用程序的搜索、备份、解压缩、建立新应用等功能的专用管理工具。(2)图形界面开发程序是自动化工程设计工程师为实施其控制方案,在图形编辑工具的支持下进行图形系统生成工作所依赖的开发环境。,.,(3)图形界面运行程序在系统运行环境下,图形目标应用系统被图形界面运行程序装入计算机内存并投入实时运行。(4)实时数据库系统组态程序建立实时数据库的组态工具,可以定义实时数据库的结构、数据来源、数据连接、数据类型及相关的各种参数。提高系统的实时性,增强处理能力。,.,(5)实时数据库系统运行程序在系统运行环境下,目标实时数据库及其应用系统被实时数据库系统运行程序装入计算机内存并执行预定的各种数据计算、数据处理任务。历史数据的查询、检索、报警的管理都是在实时数据库系统运行程序中完成的。,.,(6)I/O驱动程序是组态软件中必不可少的组成部分,用于和I/O设备通讯,互相交换数据,DDE和OPCClient是两个通用的标准I/O驱动程序,用来和支持DDE标准和OPC标准的I/O设备通讯。多数组态软件的DDE驱动程序被整合在实时数据库系统或图形系统中,而OPCClient则多数单独存在。,.,扩展可选组件包括(1)通用数据库接口(ODBC接口)组态程序通用数据库接口组件用来完成组态软件的实时数据库与通用数据库的互联,实现双向数据交换,通用数据库既可以读取实时数据,也可以读取历史数据;实时数据库也可以从通用数据库实时地读入数据。,.,(2)通用数据库接口(ODBC接口)运行程序已组态的通用数据库连接被装入计算机内存,按照预先指定的采样周期,对规定时间区段按照组态的数据库结构建立起通用数据库和实时数据库间的数据连接。,.,(3)策略(控制方案)编辑组态程序策略编辑/生成组件是以PC为中心实现低成本监控的核心软件,具有很强的逻辑、算术运算能力和丰富的控制算法。(4)策略运行程序组态的策略目标系统被装入计算机内存并执行预定的各种数据计算、数据处理任务,同时完成与实时数据库的数据交换。,.,(5)实用通讯程序组件实用通讯程序极大地增强了组态软件的功能,可以实现与第三方程序的数据交换,是组态软件价值的主要表现之一。通讯实用程序具有以下功能:可以实现操作站的双机冗余热备用;实现数据的远程访问和传送;通讯实用程序可以使用以太网、RS485、RS232、PSTN等多种通讯介质或网络实现其功能。,.,7组态软件的设计思想组态软件普遍使用“面向对象”(ObjectOriented,OO)的编程和设计方法。组成:图形界面系统实时数据库系统第三方程序接口组件控制功能组件。,.,(1)图形界面系统构成现场各过程的图形的画面被划分成三类简单的对象:线、填充图形和文本。静态属性在系统投入运行后保持不变,与原来组态时一致。而动态属性则与表达式的值有关,表达式可以是来自I/O设备的变量,也可以是由变量和运算符组成的数学表达式。这种对象的动态属性随表达式的值的变化而实时改变,这种组态过程通常叫做动画链接。,.,在图形界面上还具备报警通知和确认、报表组态及打印、历史数据查询与显示等功能。各种报警、报表、趋势都是动画链接的对象,其数据源都可以通过组态来指定。(2)控制功能组件以基于PC的策略编辑/生成组件(也称之为软逻辑或软PLC)为代表,是组态软件的重要组成部分。,.,(3)实时数据库实时数据库可以存储每个工艺点的多年数据,用户既可以浏览工厂当前的生产情况,又可以过去的生产情况。(4)通信及第三方程序接口组件开放系统的标志,是组态软件与第三方程序交互及实现远程数据访问的重要手段之一。它的主要作用:(1)用于双机冗余系统中,主机与从机间的通信。(2)用于构建分布式HMI/SCADA应用时多机间的通信。(3)在基于Internet或Browser/Server(B/S)应用中实现通信功能。,.,7.2WinCC的功能介绍,一、WinCC系统综述二、WinCC的SCADA基本功能及其应用,.,一WinCC系统综述(一)什么是WinCC?是在MicrosoftWindowsNT和Windows2000环境下的一种高效HMI系统;用于实现过程的可视化,并为操作员开发图形用户界面。是“WindowsControlCenter”(视窗自动化中心)的缩写。,.,通信,.,操作员使用WinCC对过程监视操作员使用WinCC对过程进行控制。一旦出现临界过程状态,WinCC自动发出报警信号。在使用WinCC进行工作时,既可以打印过程值,也可以对过程值进行电子归档。,.,(二)WinCC的系统结构WinCC具有模块化的结构基本组件组态软件(CS)运行软件(RT)WinCC选项WinCC附加软件,.,.,1组态软件(1)图形系统图形编辑器。(2)报警系统报警记录。(3)归档系统变量记录编辑器。(4)报表系统报表编辑器。(5)用户管理器。(6)通讯提供WinCC与SIMATIC各系列可编程控制器的连接。,.,2运行软件用户通过运行软件对过程进行操作和监控,主要执行下列任务:(1)读出已经保存在CS数据库中的数据;(2)显示屏幕中的画面;(3)与自动化系统通讯;(4)对当前的运行系统数据进行归档;(5)对过程进行控制。,.,二、WinCC的SCADA基本功能,(一)用户接口和操作(二)图形系统(三)报警记录(四)归档系统(五)报表系统,.,(一)用户接口和操作1可组态的用户接口配置标准、用户化的WinCC操作界面,保证生产过程的安全可靠,使操作员能够优化生产过程,其硬件配置主要包括键盘、鼠标和触摸屏等。画面总览表现为结构树的形式,并由画面树管理器(PictureTreeManager)管理。,.,2访问授权和用户管理可以禁止访问每一个生产过程、记录或WinCC的操作,以防止没有授权的存取,包括修改设定值、选择图形画面或从过程控制中调用组态软件。WinCC含有多达1000个不同的访问级别,可建立分级的访问保护,也可为个别用户提供唯一的用户访问权限。3语言切换每一个项目在组态时都可以指定10种运行(runtime)语言。,.,(二)图形系统在组态工作中,图形系统用于创建并显示过程的画面,.,1图形系统的任务(1)显示静态画面和操作者可控制的画面元素,例如文本、图形或按钮等;(2)更新动态画面元素,例如根据过程值的变化修改棒图长度;(3)对操作员输入作出反应,例如单击按钮、或输入域中的文本输入等;2图形系统组件构成(1)图形编辑器是图形系统的组态组件,是用于创建画面的编辑器。(2)图形运行软件是图形系统的运行组件,显示运行系统中的画面上的图片,并管理所有的输入和输出。,.,3模块库模块库有助于用户高效创建用户画面,在组态期间采用拖放方式将模块库中的对象插入过程画面。(1)模块库含有大量的已预编译的对象,这些对象根据相关主题(例如阀、电机、电缆、显示仪器等)进行排序。(2)用户自己创建的对象也可保存在项目库中,需要时可再次调出。,.,.,(三)报警记录1报警记录的任务报警记录编辑器负责消息的采集和归档,包括过程、预加工、表达式、确认及归档等消息的采集功能。报警系统给操作员提供关于操作状态和过程故障状态的信息,使操作员能了解早期阶段的临界状态。,.,2报警记录的组件构成(1)报警记录组态系统组件为报警记录编辑器,用来定义显示何种报警、报警的内容、报警的时间。(2)报警记录运行系统组件主要负责过程值的监控、控制报警输出、管理报警确认。,.,.,3报警的消息块(1)系统块(2)过程值块(3)用户文本块4报警的基本状态(1)已激活(2)已清除(3)已确认,.,5组消息在组态期间,一定数目的报警均可概括在一组报警中。6消息类型和等级将消息划分为16个类别,每个消息类别下还可以定义16种消息类型。7报警的归档短期归档和长期归档,.,(四)归档系统1归档系统的任务过程值归档的目的是采集、处理和归档工业现场的过程数据,所获得的过程数据可用于获取与设备的操作状态有关的管理和技术标准。归档系统除了用于过程值的处理外,还用于对报警进行归档。,.,2归档系统的组件(1)变量记录是归档系统的组态组件,用于确定对哪些过程值进行归档以及何时归档。图形编辑器提供在线趋势控件和在线表格控件,在画面中显示过程值当前的发展进程,其中在线趋势控件提供图形显示,而在线表格控件提供表格显示。(2)变量记录运行系统是归档系统的运行系统组件,负责把运行系统中必须进行归档的过程值写入过程值归档,以及从过程值归档中读出已归档的过程值。,.,.,3归档的设置可用事件来启动和停止过程值归档。非周期、连续周期和可选择周期等。过程值归档:在组态过程值归档时,选择要归档的过程变量和存储位置;压缩归档:在组态压缩归档时,选择计算的方法和压缩的周期。,.,(五)报表系统1报表系统的任务报表包括项目文档报表和运行系统数据报表:项目文档报表输出WinCC项目的组态数据,运行系统数据报表在运行期间输出过程数据。报表有下列基本类型:(1)报警消息顺序报表(2)报警归档报表(3)变量记录运行报表,.,2报表系统的组件(1)报表编辑器是报表系统的组态组件,包括页面布局编辑器和行布局编辑器。(2)报表运行系统是报表系统的运行系统组件3打印作业WinCC中的打印作业用于项目文档和运行系统文档的输出。在布局中对输出外观和数据源进行组态;在打印作业中对输出介质、打印数量、打印开始时间以及其他输出参数进行组态。,.,(六)通讯1通讯方式WinCC与其它应用程序(例如MicrosoftExcel或SIMATICProTool)的通讯借助于OPC来实现,由WinCC提供集成的OPC服务器来完成,其它OPC服务器的数据也可通过OPC客户机由WinCC来接收。WinCC与自动化系统之间的通讯可以通过各自的过程总线(例如以太网或PROFIBUS)来实现,也可以由专门通讯驱动程序“通道”与SIMATICS5/S7/505等系列的PLC相连接。,.,.,2WinCC通讯的结构及原理WinCC使用变量管理器来处理项目产生的数据以及存储在项目数据库中的数据,其过程并不能为用户所见。WinCC的所有应用程序必须以WinCC变量的形式从变量管理器中请求数据,这些应用程序包括图形运行系统、报警记录运行系统和变量记录运行系统等。,.,变量管理器管理运行时的WinCC变量,通过集成在WinCC项目中的通讯驱动程序从过程中取出请求的变量值。通讯驱动程序利用其通道单元构成WinCC与过程处理之间的接口,在大多数情况下其硬件连接是利用通讯处理器来完成的。WinCC通讯驱动程序使用通讯处理器向PLC发送请求消息,然后,通讯处理器将相应请求的回答发回WinCC。,.,3通道单元、逻辑链接、过程变量WinCC与自动化系统之间的通讯通过逻辑链接来实现,这些逻辑连接以分层方式排列成多个等级,每个的等级都反映在WinCC资源管理器的分层结构上。通讯驱动程序位于最高等级,也称作通道;通道的通讯拥有一个或多个协议,协议用于确定所用的通道单元(例如“MPI”),该通道单元和协议一起用来访问某个特定类型的自动化系统。,.,.,4运行系统中的通讯过程,.,复习题1.监控组态软件有哪些特点?主要解决哪些主要问题?2.监控组态软件由哪些部分构成?3.监控组态软件WinCC的性能特点是什么?4.说明监控组态软件WinCC的系统结构。5.熟悉监控组态软件WinCC的使用方法何操作步骤。6.说明监控组态软件WinCC的和STEP7软件的关系。7.WinCC的SCADA基本功能有哪些?,.,3.1WinCCExplorer项目3.2变量管理3.3建立一个画面3.4设置起始画面及运行界面3.5运行项目3.6使用内部变量仿真器,三、开始项目,.,3.1WinCCExplorer项目,WinCCExplorer以项目的形式管理着控制系统所有必要的数据。单击“开始所有程序SIMATICWinCCWinCCV6.0ASIA”启动WinCCExplorer浏览器,也称为WinCC项目管理器。,.,新建一个单用户项目:,.,WinCC项目是以项目的形式进行管理的,左侧部分为浏览条,包括了一个WinCC项目的各个组成部件,右侧为左侧选择部件的详细内容。,WinCCExplorer管理器的状态栏中显示当前的外部变量点数以及授权点数。,.,3.1.2WinCC项目类型,WinCC项目分为三种类型:单用户项目,多用户项目和客户机项目。,.,单用户项目示意图,.,多用户项目示意图,.,客户机项目示意图,.,3.1.3项目属性,“项目属性”对话框,可以看到它包含三个选项卡:“常规”选项卡可以显示和修改当前项目的一些常规数据,如类型,创建者,创建日期,修改者,修改日期,版本,指南和注释等;“更新周期”选项卡用来选择更新周期,系统还提供了五个用户周期,可自行定义;“热键”选项卡可为WinCC用户登录和退出以及硬拷贝等定义热键(快捷键)。,.,3.2变量管理,WinCC中变量的数据类型包括以下几类。,二进制变量数据类型对应于位,可取为数值FALSE或“0”以及TRUE或“1”。“有符号8位数”数据类型具有1个字节长,且有符号(正号或负号)。“有符号8位数”数据类型也可作为“字符型”或“有符号字节”来引用。“无符号8位数”数据类型为1个字节长,且无符号。“无符号8位数”数据类型也可作为“字节”或“无符号字节”来引用。“有符号16位数”数据类型具有2个字节长,且有符号(正号或负号)。“有符号16位数”数据类型也可作为“短整型”或“有符号字”来引用。,.,“无符号16位数”数据类型为2个字节长,且无符号。“无符号16位数”数据类型也可作为“字”或“无符号字”来引用。“有符号32位数”数据类型具有4个字节长,且有符号(正号或负号)。“有符号32位数”数据类型也可作为“长整型”或“有符号双字”来引用。“无符号32位数”数据类型为4个字节长,且无符号。“无符号32位数”数据类型也可作为“双字”或“无符号双字”来引用。“浮点数32位IEEE754”数据类型具有4个字节长,且具有符号(正号或负号)。“浮点数32位IEEE754”数据类型也可作为“浮点数”来引用。,.,“浮点数64位IEEE754”数据类型具有8个字节长,且具有符号(正号或负号)。“浮点数64位IEEE754”数据类型也可作为“双精度型”来引用。使用“文本变量8位字符集”数据类型,在该变量中必须显示的每个字符将为一个字节长。例如,使用8位字符集,可显示ASCII字符集。使用“文本变量16位字符集”数据类型,在该变量中必须显示的每个字符将为两个字节长。例如,需要有该类型的变量来显示Unicode字符集。,.,3.2.1外部变量,对于外部变量,变量管理器需要建立WinCC与自动化系统(AS)的连接,即确定通讯驱动程序。通讯由称作通道的专门的驱动程序来控制。WinCC有针对西门子自动化系统SIMATICS5/S7/505的专用通道以及与制造商无关的通道,如PROFIBUS-DP和OPC等。,.,.,计算机上的通讯卡有工业以太网卡和PROFIBUS网卡,插槽有ISA插槽、PCI插槽和PCMCIA槽,通讯卡有Hardnet和Softnet两种类型。Hardnet卡有自己的微处理器,可减轻CPU的负荷,可同时使用两种以上的通讯协议,Softnet卡没有自己的微处理器,同一时间只能使用一种通讯协议。,.,以MPI通讯方式为例介绍外部变量的建立,.,.,3.2.2内部变量,.,“内部变量”目录中系统已自带一些定义好的以“”字符开头的变量,称为系统变量。不能删除或重新命名系统变量。,系统定义的内部变量含义,.,3.3建立一个画面,下面插入一个画面,在画面上显示内部变量NewTag的值,.,.,3.4运行项目,单击WinCC项目管理器工具栏的激活项目图标,WinCC将按照“计算机属性”对话框中所选择的设置来运行项目,.,3.5画面对象的属性,可以看到:对象属性对话框包括“属性”和“事件”两个选项卡。,.,“属性”选项卡中包括对象的几何尺寸、颜色、样式、填充等外观特性,定义对象是如何出现在画面上。可以修改对象的“属性”中的相关值来改变对象的外观,如修改圆的背景颜色为红色,线颜色为绿色。,.,“事件”选项卡包括对象的鼠标、键盘等操作设置及对象属性引发的动作设置等,如图3-13所示。可以为各种“事件”添加相应的动作和动态效果。,.,输入输出换算:I/O域1+100=I/O域2,intback;back=GetTagWord(Tag6);back=back+100;return(back);,.,单击一下按钮就加1/减1,floattemp;temp=GetTagFloat(Tag6);temp=temp+1;SetTagFloat(Tag6,temp);,.,类型I/O,.,4.标识符,3条规则:(1)标识符必须只能由字母、数字或下划线3种符号构成,即标识符中只能出现:字母、阿拉伯数字、下划线。(2)标识符必须只能以字母或下划线作为开头。(3)c语言不允许用户作为自定义对象的标识符:如if、do、for、int等。合法:N,Sum、_total非法:Im、12h、wang(x),.,4.1.数据类型,1.常量常量是在程序执行过程中值不能发生改变的数据,如1、2、-1、3.52.变量变量是在程序执行过程中值可以发生改变的数据。想要定义一个变量,用户需要做如下2件事情:(1)给出变量名称(符合标识符规则)sumaverage(2)给出变量的数据类型,.,变量数据类型:(1)整型变量a基本整型以int表示16位-3276832767b短整型short(int)16位-3276832767c长整型long(int)32位-21474836482147483647又分为有符号、无符号(signed)intunsignedint065535例:inta,b;inta;longe,f;unsignedshortc,d;,.,(2)实型变量实型变量分为单精度(float型)、双精度(double型)和长双精度(longdouble型)三类。例:floatx,y;doublez;longdoublet;(3)BOOL变量,.,4.2.运算符,1算术运算符(+-*/%)2关系运算符(=(a+b)关系运算符a=by)语句1z=x;elseelse语句2z=y;(3)if(表达式1)例如:if(number500)语句1cost=0.15;elseif(表达式2)elseif(number300)语句2cost=0.10;elseelse语句3cost=0.75;,.,求三个数中的最大数。floata,b,c,max;a=5.6;b=9.9;c=4.7;if(ab)if(bc)max=c;elsemax=b;elseif(ac)max=c;elsemax=a;,.,2.switch语句(多分支结构)形式:switch(表达式)case常量表达式1:语句1;break;case常量表达式2:语句2;break;default:语句3,.,例:要求按照考试等级打印出百分制分数段switch(grade)case1:printf(“85100”);break;case2:printf(“7084”);break;case3:printf(“6069”);break;case4:printf(“60”);break;default:printf(“error”);,.,3.循环控制语句1.while语句实现当型循环结构例:求从1加到100的和。inti,sum=0;i=1;while(i=100)sum=sum+i;i+;,.,2.dowhile语句inti,sum=0;i=1;dosum=sum+i;i+;while(i=100)/如果a大于等于100,b=(a-a%100)/100;/则把a的最高位赋给bSetTagByte(“LEDC100”,b);/再把b的内容赋给LEDC100b=a%100;/a取余后,结果再赋给b,.,2、C语言数码显示的实现方法(续)Elseb=a;/如果a小于100,则直接把a赋给bif(b=10)/如果b大于等于10,c=(b-b%10)/10;/则把b的最高位赋给cSetTagByte(LEDC10,c);/把c的内容赋给LEDC10c=b%10;/b取余后,结果再赋给cSetTagByte(LEDC1,c);/把c的内容赋给LEDC1else如果b小于10SetTagByte(“LEDC1”,b);/把b的内容直接赋给LEDC1,.,起重机模拟控制应用实例,.,例2起重机模拟控制应用实例一、小车控制系统1、元素组成:线、圆、轮、按钮、指示灯2、上升按钮控制BOOLflag;/布尔变量flag定义flag=GetTagBit(“raise_down_stop”);/函数获取布尔值赋给flagif(flag)/如果flag为真SetTagBit(“raise_down_stop”,FALSE);则把状态flase赋给信号raise_down_stop,保证始终为假。SetTagBit(“raise”,TRUE);把状态true赋给raise。,.,3、下降按钮控制BOOLflag;flag=GetTagBit(raise_down_stop);if(flag)SetTagBit(raise_down_stop,FALSE);SetTagBit(“down,TRUE);4、升降运行指示灯控制,.,5、吊车升降模拟控制在吊钩对象属性中选择几何位置YC语言动态控制吊钩对象的位置Y与线对象的高度。BOOLflag;/布尔变量BOOLraiseflag,downflag;/布尔变量shortintheight,top;/宽度和高度定义为整型raiseflag=GetTagBit(“raise”);/获取raise状态赋给raiseflag变量downflag=GetTagBit(down);/获取down状态赋给downflag变量top=GetPropWord(“NewPdl5.PDL”,“组18”,“Top”);/获得高度值/height=GetPropWord(“NewPdl5.PDL”,“组17”,“Height”);/获得宽度值if(raiseflag)/如果符合,则控制top值依次减4,.,if(!(raiseflag)二、大车控制系统1、元素组成:矩形、圆、轮、按钮、指示灯,.,2、大车左右模拟控制在大车对象属性中选择几何位置XC语言动态控制大车、小车吊钩、挂轮、线等对象的位置X。BOOLleftflag,rightflag;/布尔型变量BYTEloop;/字节型变量shortintleftD,leftS,leftR,leftG;/整型变量loop=GetTagByte(“TanCrt”);/获得TanCrt内容赋给loopleftflag=GetTagBit(“left”);/获理布尔值赋给leftflagrightflag=GetTagBit(right);/获理布尔值赋给rightflagleftD=GetLeft(“NewPdl5.PDL”,“组26”);/用getleft函数获得值赋给leftDleftS=GetLeft(NewPdl5.PDL,组17);/获得值赋给leftSleftR=GetLeft(NewPdl5.PDL,Control1);/获得值赋给leftRleftG=GetLeft(NewPdl5.PDL,组18);/获得值赋给leftGif(leftflag)/以下各值都减4操作leftS=leftS-4;leftR=leftR-4;leftG=leftG-4;if(loop=1)/如果loop值大于等于1,则loop=loop-1;/loop值执行减1操作elseloop=5;/否则,把loop值赋值为5elseif(!(leftflag)/把loop值赋值为0SetTagByte(“TanCrt”,loop);/把loop值用settagbyte函数赋给TanCrtSetLeft(NewPdl5.PDL,Control1,leftR);/把leftR值赋给Control1SetLeft(NewPdl5.PDL,组17,leftS);/把leftS值赋给组17SetLeft(NewPdl5.PDL,组18,leftG);/把leftG值赋给组18returnleftD;,.,例子:变量的读写1、C语言模式#includeapdefap.hvoidOnClick(char*lpszPictureName,char*lpszObjectName,char*lpszPropertyName)/鼠标点击BOOLa,b;/布尔变量a=GetTagBit(“NewTag_4”);/获得布尔值,给ab=GetTagBit(“NewTag_7”);/获得布尔值,给bif(a=1)SetTagBit(“NewTag_4”,0);/如果a为1,把0赋给newtag4elseSetTagBit(NewTag_4,1);/如果a为0,把1赋给newtag4if(b=1)SetTagBit(NewTag_7,0);/如果b为1,把0赋给newtag7elseSetTagBit(NewTag_7,1);/如果b为0,把1赋给newtag7,.,例子汽车动态运行控制1、C语言模式在汽车对象属性的几何位置中输入C语言实现小汽车动态运行,执行周期选用画面周期。#include“apdefap.h“/如果当前的程序中要使用其他项目函数或标准函数,则必须结合apdefap.h文件,这通过预处理程序命令#include“apdefap.h”来完成,该命令必须插在程序标题之前。long_main(char*lpszPictureName,char*lpszObjectName,char*lpszPropertyName)/c程序调用API定义的格式(图形名,对象名,属性名的类型定义都为字符指针型)BOOLa;/布尔型变量shortmove;/整型变量a=GetTagBit(“NewTag_7”);/通过gettagbit函数获得NewTag_7布尔型值赋给amove=GetTagWord(“NewTag_8”);/通过gettagword函数获得NewTag_8整型值赋给movewhile(a=1)/如果a为0执行下面的循环,如果a为1不执行。move=move-1;/每循环一次move的值减1if(move590|move590或move590|move590|move590|move=230)move=590;/SetLeft(NewPdl0.PDL,Control1,move);returnmove;,.,7.5Profibus应用案例,7.5.1三条四级皮带运输机控制系统1、控制要求、每条四级皮带运输机控制系统,分别用四台电动机带动;、启动时先起动最末一级皮带机,经过5秒延时,再依次起动其它皮带机。停止时应先停止最前一条皮带机,待料运送完毕后再依次停止其它皮带机。、当某条皮带机发生故障或有重物时,该皮带机及其前面的皮带机立即停止并报警,而该皮带机以后的皮带机间隔5秒延时相继停止。,.,2、网络控制要求、每条皮带运输机均由CPU314C-2DPPLC进行控制,采取一主二从DP控制模式;、每条皮带运输机由上位机控制运行,分手动和自动,其运行状态除本地显示外必须经由主站传递给WINCC监控系统;、上位机监控用WINCC软件开发。,.,7.5.2系统分析与设计1、各站输入输出分配2、主从接口分配,Slave1接口设置Slave2接口设置,.,3、从站在主站中的映射区分配4、硬件组态:方案一、各站选用8点输入、8点输出模块,集成DP通信功能CPU;如CPU314C-2DP方案二、各站选用8点输入、8点输出模块,独立DP通信功能模块;如CPU314C和DP342-5WINCC通过MPI适配卡与PLC主站建立通信通道;主站与从站间通过PROFIBUS-DP建立连接。5、PLC编程,.,6、WINCC设计启动按钮Click事件函数#includeapdefap.hvoidOnLButtonDown(相关参数)SetTagBit(“N_SY02_start”,TRUE);/置运行标志SetTagBit(“N_SY02_M4_motor”,TRUE);/启动4号电机SetTagWord(“m4count”,0);/时间计数初值清零,.,停止按钮Click事件函数#includeapdefap.hvoidOnLButtonDown(相关参数)SetTagBit(“N_SY02_start”,FALSE);/清运行标志SetTagBit(N_SY02_M1_motor,FALSE);/停止1号电机SetTagWord(“m4count”,0);/时间计数初值清零,.,1号电机故障Click事件函数#includeapdefap.hvoidOnLButtonDown(相关参数)if(GetProcess(SY02.Pdl,复选框1)SetTagBit(N_SY02_A_trouble,FALSE);elseSetTagBit(“N_SY02_A_trouble”,TRUE);/置故障标志SetTagBit(“N_SY02_start”,FALSE);/清运行标志SetTagBit(“N_SY02_M1_motor”,FALSE);/停止1号电机SetTagWord(m4count,0);/时间计数初值清零,.,2号电机故障Click事件函数#includeapdefap.hvoidOnLButtonDown(相关参数)if(GetProcess(SY02.Pdl,复选框2)SetTagBit(N_SY02_B_trouble,FALSE);elseSetTagBit(“N_SY02_B_trouble”,TRUE);/置故障标志SetTagBit(“N_SY02_start”,FALSE);/清运行标志SetTagBit(“N_SY02_M1_motor”,FALSE);/停止1号电机SetTagBit(N_SY02_M2_motor,FALSE);/停止2号电机SetTagWord(“m4count”,20);/时间计数置初值,.,3号电机故障Click事件函数#includeapdefap.hvoidOnLButtonDown(相关参数)if(GetProcess(SY02.Pdl,复选框3)SetTagBit(N_SY02_C_trouble,FALSE);elseSetTagBit(“N_SY02_C_trouble”,TRUE);/置故障标志SetTagBit(“N_SY02_start”,FALSE);/清运行标志SetTagBit(“N_SY02_M1_motor”,FALSE);/停止1号电机SetTagBit(“N_SY02_M2_moto

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论