当前位置:首页 > 基于PLC多种液体自动化混合控制系统毕业设计
变量参数声明窗口和代码窗口中可以分别看到OB1的主体中的内容——变量和程序代码。
各模块的具体功能如下:
1、组织块(OB)。在CPU中,用户程序由启动程序、主程序和各种中断响应程序等不同的程序模块构成,这些模块在STEP7中的实现形式就是OB。OB是直接被操作系统调用的用户程序块,OB与不同的CPU类型是相关的,某一型号的CPU支持哪些OB是确定的。例如,OB35和OB40可在CPU315-2DP中使用,而OB36和OB41则不行。因此,用户只能编写目标CPU支持的OB。
OB1是对应于循环执行的主程序的程序块,它是STEP7程序的主干。其他大多数OB则对应于不同的中断处理程序(另外还有启动程序和背景程序等非中断类的OB)。与每一个OB紧密相连的是它对应的类型和优先级。OB的类型指出了它的功能,例如延时中断、硬件中断等;OB的优先级则用于表明一个OB是否可以被另外一个OB中断,优先级较低的OB总是可以被优先级较高的OB中断。在S7系列CPU中,背景循环OB90的优先级最低,其次就是OB1,它的优先级是1,因此OB1通常总是可以被其他OB中断。对于S7-300的CPU,各个OB的优先级都是固定的,用户无法更改。
2、功能(FC)和功能块(FB)。FC和FB都是由用户自己编写的程序模块,可以被其他程序块(OB、FC和FB)调用。与其他编程语言中的“函数”相似,FC/FB也带有参数,以名称的方式给出的参数称作形式参数(形参),在调用时给形式参数赋的具体值就是实际参数(实参),例如:将实参“I0.1”赋给形参“START”。
FC与FB的根本区别在于,FC不具备的存储区,而FB拥有自己的存储区——背景DB,在调用任何一个FB时,都必须指定一个背景DB。这一区别使得FC和FB在以下几个方面有所不同。
参数、变量的类型。分别打开[示例项目]中的[FC1]和[FB1],在变量声明区中,可以看到参数和变量类型。
FC和FB都具有输入(IN)、输出(OUT)、输入/输出(IN_OUT)三种参数类型。IN类型的参数用于块调用时的数据输入;OUT类型的参数用于输出结果;IN_OUT类型的参数则级可以作为数据的输入,又可以作为数据和输出。
FC和FB都具有临时(TEMP)变量。临时变量存储在系统的本地数据堆栈(Local Date Stack)中,当FC或者FB调用完毕后,这些变量空间就会释放,因此临时变量仅在FC或者FB调用期间有效。
FB有静态(STAT)变量类型,而FC没有。与临时变量不同,静态变量存储在FB的背景DB中,当FB调用完毕后,静态变量的数据仍然有效。
FC还有一个返回值变量(RET_VAL)用以返回调用的结果。使用OUT或者IN_OUT类型的参数可以输出多个变量,因此比RET_VAL具有更大的灵活性。
参数的赋值。由于FC没有数据区,因此在调用FC的时候必须给形参附实参;FB的情况则比较复杂。对于FB的大多数类型的参数,可以赋实参,也可以不赋。如果不给FB的形参赋值,则自动读取当前的背景DB中的参数值。但对FB的某些特殊数据类型的参数也要求必须给形参赋实参。
3、系统功能(SFC)和系统功能块(SFB)。SFC和SFB是预先编写好的可供用户程序调用的FC和FB,它们已经固化在S7的CPU中,因此称为“系统功能”和“系统功能块”。通常SFC和SFB提供一些系统级的功能调用,例如通讯功能等。需要注意的是,虽然SFB已经固化在CPU中,但是CPU中并不包含背景DB,因此SFB和FB一样,在调用之前需要由用户生成相关的背景DB。与OB一样,SFC和SFB也是与具体的CPU相关的,通过查阅相关CPU的技术手册可以找到该CPU支持的SFC和SFB的详细信息。
4、背景DB和共享DB。DB分为背景DB和共享DB两种类型。如前所述,背景DB是和FB相关联的,也必须指明一个与之对应的背景DB。
需要说明的是,背景DB与共享DB没有本质的区别,它们的数据都可以被任何一个OB、FC或FB读写。两者之间的主要区别在于使用的目的:背景DB的用途或者目的是为某一个FB提供数据,因此其数据格式必须与该FB的变量声明一致;共享DB的主要目的是为用户程序提供一个可保存的数据区,它的数据结构并依赖于特定的程序块。
打开[示例项目],在S7程序的[块]目录下单击所示。
按钮,查看块的详细信息,如图2-6
图2-6 在STEP7中查看背景DB和共享DB
FB可以有多个背景DB与之对应,这非常适合“过程相同,数据不同”的情况,像同样的工艺和不同的配方、同样的控制流程和不同的生产线等。过程工艺或者控制流程等写在FB中,而配方、生产线参数等放在不同的背景DB中,只要将FB调用与不同的背景DB组合,就可以方便的实现配方的切换或者对不同对象的控制。
假如FB要控制的对象或者要实现的配方数目非常多,那么就需要生成很多背景DB,这是非常繁琐的。STEP7还提供了一种多背景DB(Multiple InstancesDB)的方式,可以将多组不同的背景数据放在一个。
2.7 Wincc软件
2.7.1 Wincc软件概述
西门子公司的WinCC是Windows Control Center(视窗控制中心)的简称。它集成了SCADA、组态、脚本(Script)语言和OPC等先进技术,为用户提供了Windows操作系统(Windows 2000或XP)环境下使用各种通用软件的功能。WinCC继承了西门子公司的全集成自动化(TIA)产品的技术先进和无缝集成的特点。
WinCC运行于个人计算机环境,可以与多种自动化设备及控制软件集成,具有丰富的设置项目、可视窗口和菜单选项,使用方式灵活,功能齐全。用户在其友好的界面下进行组态、编程和数据管理,可形成所需的操作画面、监视画面、控制画面、报警画面、实时趋势曲线、历史趋势曲线和打印报表等。它为操作者提供了图文并茂、形象直观的
操作环境,不仅缩短了软件设计周期,而且提高了工作效率。WinCC的另一个特点在于其整体开放性,它可以方便地与各种软件和用户程序组合在一起,建立友好的人机界面,满足实际需要。用户也可将WinCC作为系统扩展的基础,通过开放式接口,开发其自身需要的应用系统。 2.7.2 Wincc的特点
WinCC具有以下性能特点:
1、创新软件技术的使用。WinCC是基于最新发展的软件技术。西门子公司与Microsoft公司的密切合作保证了用户获得不断创新的技术。
2、包括所有SCADA功能在内的客户机/服务器系统。即使最基本的WinCC系统仍能够提供生成复杂可视化任务的组件和函数,生成画面、脚本、报警、趋势和报表的编辑器由最基本的WinCC系统组件建立。
3、可灵活剪裁,由简单任务扩展到复杂任务。WinCC是一个模块化的自动化组件,既可以灵活地进行扩展,从简单的工程到复杂的多用户应用,又可以应用到工业和机械制造工艺的多服务器分布式系统中。
4、众多的选择和附加件扩展了基本功能。已开发的、应用范围广泛的、不同的WinCC选件和附加件,均基于开放式编程接口,覆盖了不同工业分支的需求。
5、使用Microsoft SQL Server 2000作为其组态数据和归档数据的存储数据库,可以使用ODBC,DAO,OLE-DB,WinCC OLE-DB和ADO方便地访问归档数据。
6、强大的标准接口(如OLE,ActiveX和OPC)。WinCC提供了OLE,DDE,ActiveX,OPC服务器和客户机等接口或控件,可以很方便地与其他应用程序交换数据。
7、使用方便的脚本语言。WinCC可编写ANSI-C和Visual Basic脚本程序。 8、开放API编程接口可以访问WinCC的模块。所有的WinCC模块都有一个开放的C编程接口(C-API)。这意味着可以在用户程序中集成WinCC的部分功能。
9、具有向导的简易(在线)组态。WinCC提供了大量的向导来简化组态工作。在调试阶段还可进行在线修改。
10、可选择语言的组态软件和在线语言切换。WinCC软件是基于多语言设计的。这意味着可以在英语、德语、法语以及其他众多的亚洲语言之间进行选择,也可以在系统运行时选择所需要的语言。
11、提供所有主要PLC系统的通讯通道。作为标准,WinCC支持所有连接SIMATIC S5/S7/505控制器的通讯通道,还包括PROFIBUS DP,DDE和OPC等非特定控制器的通讯通道。此外,更广泛的通讯通道可以由选件和附加件提供。
共分享92篇相关文档