SSS公司的codesys的使用介绍.ppt

上传人:爱问知识人 文档编号:5020915 上传时间:2020-01-29 格式:PPT 页数:74 大小:1.60MB
返回 下载 相关 举报
SSS公司的codesys的使用介绍.ppt_第1页
第1页 / 共74页
SSS公司的codesys的使用介绍.ppt_第2页
第2页 / 共74页
SSS公司的codesys的使用介绍.ppt_第3页
第3页 / 共74页
SSS公司的codesys的使用介绍.ppt_第4页
第4页 / 共74页
SSS公司的codesys的使用介绍.ppt_第5页
第5页 / 共74页
点击查看更多>>
资源描述

《SSS公司的codesys的使用介绍.ppt》由会员分享,可在线阅读,更多相关《SSS公司的codesys的使用介绍.ppt(74页珍藏版)》请在三一文库上搜索。

1、1,第一讲 WAGO-I/O-PRO 32 概述,WAGO-I/O-PRO 32是基于 WAGO - I/O - SYSTEM 750 系列可编程现场总线控制器(PFC)的编程开发与可视化图形监控工具软件。,WAGO-I/O-PRO 32符合IEC 61131-3国际标准,提供标准的开发环境与基于该标准的6种程序设计语言: 梯形图程序设计语言(LD) 语句表程序设计语言(IL) 顺序功能流程图程序设计语言(SFC) 功能块图程序设计语言(FBD) 结构化文本程序设计语言(ST) 连续功能图程序设计语言(CFC),2,WAGO-I/O-PRO 32 功能:,第一讲 WAGO-I/O-PRO 32

2、 概述,丰富的程序功能指令 WAGO-I/O-PRO 32提供了位逻辑运算、整数与浮点数运算、定时器与计数器功能、比较与赋值功能、移位与循环功能、数据类型转换功能、 PID功能等大量丰富的程序功能指令。 此外, 用户还可以根据特定需要编写自己的功能块、子程序。 离线程序仿真 用户应用程序可在计算机中进行仿真执行,无须将其下载到PFC中,方便用户对程序的测试与修改并节省了开发时间。 在线监视 在程序离线仿真或联机运行的过程中, 用户可以在WAGO-I/O-PRO 32中以文本或图形的方式监视程序运行状态及数据变化情况。 诊断与调试 在程序离线仿真或联机运行的过程中,用户可以通过在程序中设置断点、

3、逐步执行程序、手动为变量赋值等方式对程序进行诊断与调试。 多任务管理 WAGO-I/O-PRO 32 提供了多任务管理功能,复杂的应用系统可以划分为多个任务,任务的执行取决其优先级与执行条件,降低了系统的响应时间。,3,编程工具组件:,第一讲 WAGO-I/O-PRO 32 概述,用户手册 订货号:759-122/000-002 通讯电缆 订货号:750-920 软件光盘及授权 订货号:759-332/000-002,系统要求:,计算机:Intel Pentium或更高 操作系统:MS-Windows 9X/NT 4.0 内存:16MB RAM ( Windows 9X ) 64MB RAM

4、(Windows NT 4.0) 至少10MB本机硬盘空间 鼠标 2倍速以上光驱 RS232串行口,通讯电缆,RS232,4,第二讲 WAGO-I/O-PRO 32 中的POU,WAGO-I/O-PRO 32以项目(Project)的方式管理用户的应用程序,一个项目包含如下组件: POU(程序组织单元)、数据类型、程序资源、函数库与可视化元素。,POU包括功能(Function)、功能块(Function Block)、程序(Program)三种类型。 每一个POU包含两部分:变量声明部分与程序指令部分。程序指令部分可选用六种语言(IL、LD、SFC、FBD、ST、CFC)中的任意一种或多种编

5、写。 IEC标准功能块包含在“standard.lib”库文件中,每一个新建项目均自动加载standard.lib。 某一POU可在另一POU中被调用,程序中不允许递推。,变量声明部分,程序指令部分,5,1、功能(Function),第二讲 WAGO-I/O-PRO 32 中的POU,Function作为一类POU,包含一部分程序,这部分程序可以在主程序中被多次调用, Function在被调用时返回一个数据。 Function在基于脚本的程序设计语言(如ST)中可以作为表达式中的一个操作数;在基于图形的程序设计语言(如FBD)中以图形的方式调用。 在声明一个Function后,需要指定该Fun

6、ction所返回的数值的数据类型。 Function的名字为该Function的输出变量结果。 Function不具有内部条件,当用相同的参数多次调用某一Function时,该Function总是返回相同的数据。,变量声明部分: FUNCTION Fct: INT VAR_INPUT PAR1:INT; PAR2:INT; PAR3:INT; END_VAR 程序指令部分: LD PAR1 MUL PAR2 DIV PAR3 ST Fct,INT: function返回的 数据类型 Fct: Function名 声明输入变量 Fct=(PAR1*PAR2/PAR3),6,功能的调用,第二讲 W

7、AGO-I/O-PRO 32 中的POU,在IL中调用: LD 7 FCT 2,4 ST Result,在FBD中调用:,在ST中调用: Result:=Fct(7,2,4);,7,2、功能块(Function Block),第二讲 WAGO-I/O-PRO 32 中的POU,功能块作为一个POU,包含一部分程序,这部分程序可以在主程序中被多次调用, 功能块在被调用时输出一个或多个数据。与Function不同,功能块没有返回值。 功能块以调用其实例(Instance)的方式执行。功能块的实例需在POU的变量声明部分进行声明。实例可以声明为局部实例或全局实例。 功能块的实例可以在程序或其他功能块

8、的变量声明部分声明,不允许在函数的变量声明部分声明。 功能块实例的输入输出变量可以在POU中设置,内部变量在调用时对于用户是不可见的。 功能块的所有变量的数据在被调用后保留直至下一次调用;以同样的参数多次调用功能块,功能块不一定会输出相同的数据。,变量声明部分: FUNCTION_BLOCK FUB VAR_INPUT PAR1:INT; PAR2:INT; END_VAR VAR_OUTPUT MULERG:INT; VERGL:BOOL; END_VAR 程序指令部分: LD PAR1 MUL PAR2 ST MULERG LD PAR1 EQ PAR2 ST VERGL,声明输入变量 声

9、明输出变量 MULERG=PAR1*PAR2 PAR1=PAR2 VERGL=TRUE PAR1PAR2 VERGL=FALSE,8,功能块的调用,第二讲 WAGO-I/O-PRO 32 中的POU,程序声明部分: PROGRAM AWL VAR QUAD:BOOL; INSTANZ:FUB; (*声明功能块的实例*) ERG:INT:=0; (*声明变量并赋初值*) END_VAR,在IL中调用: CAL INSTANZ(PAR1:=5,PAR2:=5) LD INSTANZ.VERGL ST QUAD LD INSTANZ.MULERG ST ERG,在ST中调用: INSTANZ(PAR

10、1:=5,PAR2:=5); QUAD:= INSTANZ.VERGL; ERG:=INSTANZ.MULERG;,在FBD中调用:,9,3、程序(Program)与 PLC_PRG,第二讲 WAGO-I/O-PRO 32 中的POU,程序作为一个POU,在执行过程中输出一系列数据。在一个项目中,程序属于全局元素。 程序可以被调用,但不能在功能中调用程序。与功能块不同,程序的调用不通过实例。 程序中所有变量的数据在被调用执行后保留直至下一次执行。与功能块不同,调用功能块只是改变该功能块一个实例中的变量的数据。,PLC_PRG是项目中系统预定义的一个特殊的程序。 PLC_PRG每一循环周期被系统

11、调用执行一次,相当于一个单任务程序的主程序。 PLC_PRG 在用户建立一个新项目时由系统自动加载。 当用户在项目中进行了多任务管理的相关设置后,系统可以不需要PLC_PRG 。否则,用户不要删除PLC_PRG或改变其程序名。,变量声明部分: PROGRAM PRGExample VAR_OUTPUT PAR:INT; END_VAR 程序指令部分: LD PAR ADD 1 ST PAR,10,程序的调用,第二讲 WAGO-I/O-PRO 32 中的POU,在IL中调用: CAL PRGExample LD PRGExample.PAR ST ERG,在ST中调用: PRGEample; E

12、RG:= PRGEample.PAR;,在FBD中调用:,ERG,PAR,11,第三讲 WAGO-I/O-PRO 32 数据类型,布尔型 BOOL: 真( TRUE )与 假( FALSE ),占用1位(Bit)地址空间 整型,12,实型,第三讲 WAGO-I/O-PRO 32 数据类型,字符串型 STRING: 字符型数据的宽度在变量声明时指定,若没有指定,系统默认宽度为80个字符。每个字符占一个字节(8 Bit)的地址空间。 举例:str:STRING(35)=This is a String;,又称浮点型。 REAL: 占32Bit地址空间,13,日期 / 时间,第三讲 WAGO-I/O

13、-PRO 32 数据类型,14,日期 / 时间,第三讲 WAGO-I/O-PRO 32 数据类型,15,数组,第三讲 WAGO-I/O-PRO 32 数据类型,WAGO-I/O-PRO 32支持1维、2维、3维数组,数组声明语法如下: :ARRAY,OF; 举例: arr1:ARRAY15OF INT:=1,2,3,4,5; arr2:ARRAY12,34OF INT:=1,3(7); (* 1,7,7,7 *) arr3:ARRAY12,23,24OF INT:=2(0),4(4),2,3; (* 0,0,4,4,4,4,2,3 *) 数组元素的引用: index1,index2,index

14、3 举例: Arr21,3,16,第四讲 WAGO-I/O-PRO 32 变量声明与硬件寻址,1、变量的声明,语法:AT:=; 内的部分为可选项 “Identifier” :变量名 “Address”:变量的地址(I、Q、M) “Type” :变量数据类型 “Initialization” :变量的初始值 注意: 变量名不允许包含空格与特殊字符,不能与关键字相同;变量名不区分大小写,允许包含至多一个下划线;变量名最大为32个字符。 在声明过程中可以为变量赋初值,如果省略,系统默认初始值为“0”。 使用“AT”关键字可以将变量连接到硬件地址。连接到硬件地址的变量只能是POU的局部变量或全局变量,

15、而不允许是POU的输入,输出变量。,17,2、POU变量声明,WAGO-I/O-PRO 32的POU包括声明部分, POU程序中使用的变量与常量需要在该部分进行声明(全局变量除外),包括: 输入变量 (Input Variable) 输出变量 (Output Variable) 输入/输出变量 ( Input/ Output Variable ) 局部变量 (Local Variable ) 保持变量 (Retain Variable ),第四讲 WAGO-I/O-PRO 32 变量声明与硬件寻址,18,2、POU变量声明,第四讲 WAGO-I/O-PRO 32 变量声明与硬件寻址,输入变量:

16、在关键字“VAR_INPUT”与“END_VAR”之间声明,声明的变量作为POU的输入变量。调用POU时可以为输入变量赋值。 举例: VAR_INPUT in1:INT; END_VAR,输出变量:在关键字“VAR_ OUTPUT”与“END_VAR”之间声明,声明的变量作为POU的输出变量。POU被调用时输出一个或多个数据。 举例: VAR_OUTPUT out1:INT; END_VAR,19,2、POU变量声明,第四讲 WAGO-I/O-PRO 32 变量声明与硬件寻址,输入/输出变量:在关键字“VAR_IN_OUT”与“END_VAR”之间声明,声明的变量作为POU的输入/输出变量。变

17、量的输入值不能为常量。 举例: VAR_IN_OUT inout1:INT; END_VAR,局部变量:在关键字“VAR”与“END_VAR”之间声明,声明的变量作为POU的局部变量。外部程序不能操作POU的局部变量。 举例: VAR loc1:INT; END_VAR,20,2、POU变量声明,第四讲 WAGO-I/O-PRO 32 变量声明与硬件寻址,保持变量:在关键字“VAR_RETAIN”与“END_VAR”之间声明。系统保存变量的数据,如果系统断电,数据也不会丢失。当系统上电,程序运行时,系统根据被保存的数据的状态运行程序。 举例: VAR_RETAIN rem1:INT; END_

18、VAR,3、全局变量声明,声明方式与在POU中声明相同,请详见“第八讲 WAGO-I/O-PRO 32 程序资源”的“全局变量” 部分。,21,4、POU常量声明,第四讲 WAGO-I/O-PRO 32 变量声明与硬件寻址,在POU声明部分的关键字“VAR_CONSTANT”与“END_VAR”之间声明。 语法::=; “Identifier” :常量名 “Type” :常量类型 “Initialization” :常量的值 举例: VAR_CONSTANT con1:INT:=12; END_VAR,22,5、全局常量声明,第四讲 WAGO-I/O-PRO 32 变量声明与硬件寻址,声明方式

19、与在POU中声明相同,请详见“第八讲 WAGO-I/O-PRO 32 程序资源”的“全局变量” 部分。,6、程序注释,在POU的声明部分与程序部分可以为程序添加注释文本 在POU的声明部分,IL与ST语言程序部分的每一行后添加程序注释,格式为(*注释文本*) 举例: VAR INSTANZ:FUB; (*声明FUB功能块的实例INSTANZ*) END_VAR 在FBD与LD语言程序部分中,通过使用“Insert” 下拉菜单中的“Comment”命令添加注释;在SFC语言程序部分中,通过“Step Attributes”添加注释。,23,7、PFC硬件寻址,第四讲 WAGO-I/O-PRO 3

20、2 变量声明与硬件寻址,说明 可编程总线适配器(PFC)的过程映像分为输入、输出量部分;在WAGO-I/O-PRO 32中,分别以“%I”与“%Q”表示。在WAGO-I/O-PRO 32中,I/O模块的地址排列遵循“模拟量地址在前,数字量地址在后”的规律,即无论PFC节点中的I/O模块的物理排列顺序如何,模拟量模块的地址在前,数字量模块的地址在后。 在WAGO-I/O-PRO 32中,地址的排列以“字”(16位)为单位。在“%I”地址区中,从%IW0开始,先为模拟量输入地址,后为数字量输入地址;在“%Q”地址区中,从%QW0开始,先为模拟量输出地址,后为数字量输出地址。在模拟量地址中,I/O地

21、址根据模拟量模块的物理安装顺序排列;在数字量地址中,I/O地址根据数字量模块的物理安装顺序排列。 此外,PFC的内部存储器以“%M”表示,内部存储器地址的排列以“字”(16位)为单位,从%MW0开始排列。 在POU中,可以使用硬件地址如“%IW0” ,“%QW1.0”编程也可以使用变量编程。若使用变量编程,需要在POU变量声明部分进行变量的声明。,24,7、PFC硬件寻址,第四讲 WAGO-I/O-PRO 32 变量声明与硬件寻址,在 WAGO-I/O-PRO 32 中,硬件地址由“%”、地址范围、地址长度与数字组成。,举例: %IX2.0: %IW215: %QB7: %MD48:,输入地址

22、第2字第0位 输入地址第215字 输出地址第7字节 内存地址第48双字,25,7、PFC硬件寻址,第四讲 WAGO-I/O-PRO 32 变量声明与硬件寻址,PFC地址分布:,注意: I/O模块的地址排列遵循“模拟量地址在前,数字量地址在后”的规律,即无论PFC节点中的I/O模块的物理排列顺序如何,模拟量模块的地址在前,数字量模块的地址在后。 位以字的宽度存储,访问某一位可以使用“%MX5.0” 的方式,即内存地址第5字第0位。,26,第五讲 WAGO-I/O-PRO 32 POU程序设计语言,1、语句表布尔助记符程序设计语言(IL),布尔助记符程序设计语言是用布尔助记符来描述程序的一种程序设

23、计语言。布尔助记符程序设计语言与计算机中的汇编语言非常相似,采用布尔助记符来表示操作功能。 IL语言程序由一系列指令构成,每一条指令包括一个操作符与一个或多个操作数。 在程序的每一行起始出可以设置标签(Label),在每行指令后可以添加注释文本(Comment)。,27,1、语句表布尔助记符程序设计语言(IL),第五讲 WAGO-I/O-PRO 32 POU程序设计语言,修饰符: C:用于JMP、CAL、RET语句,如果该指令前的表达式结果为“真”,则执行该指令。 N:用于JMP、CAL、RET语句,如果该指令前的表达式结果为“假”,则执行该指令。 N:在其他语句中用于操作数(布尔量)取反。

24、用户使用“Insert”下拉菜单中的相关命令可以在指令中插入操作符、操作数、函数与功能块。 IL操作符:,28,1、语句表布尔助记符程序设计语言(IL),第五讲 WAGO-I/O-PRO 32 POU程序设计语言,29,1、语句表布尔助记符程序设计语言(IL),第五讲 WAGO-I/O-PRO 32 POU程序设计语言,举例: 操作符: LD ANDN JMPC LDN ST mark: LD ST,操作数: TRUE BOOL1 mark BOOL2 ERG BOOL2 ERG,注释: (*将“TRUE”存入缓存*) (*取“BOOL1”反,与“TRUE”做与运算*) (*如果结果为“Tru

25、e”,跳转到“mark”*) (*取“BOOL2”反 存入变量“ERG”中*) (*取“BOOL2” 存入变量“ERG”中*),30,2、梯形逻辑程序设计语言(LD),第五讲 WAGO-I/O-PRO 32 POU程序设计语言,梯形逻辑程序设计语言是用梯形图的图形符号来描述程序的一种程序设计语言。这种程序设计语言采用因果关系来描述事件发生的条件和结果。每个梯级网络是一个因果关系。在梯级网络中,描述事件发生的条件表示在左面,事件发生的结果表示在后面。 梯形图由一系列的梯级网络构成,每一个梯级网络包含触点、输出线圈、功能块等元素。,31,2、梯形逻辑程序设计语言(LD),第五讲 WAGO-I/O-

26、PRO 32 POU程序设计语言,串联结构:相当于位逻辑的“与”运算。 并联结构:相当于位逻辑的“或”运算。 输出线圈不允许串联结构,32,2、梯形逻辑程序设计语言(LD),第五讲 WAGO-I/O-PRO 32 POU程序设计语言,在梯形逻辑程序设计语言中允许以图形的方式使用系统运算符与POU,运算符与POU可以在梯级网络中间使用(如图1),也可以在梯级网络右侧以“使能”的方式使用(如图2)。,图1 注:在此种方式下,要求运算符或POU所连接的变量为布尔型。,图2 注:“EN”为该运算符或POU的使能端,如果前面运算结果为“1”,则使能端激活,程序执行;反之程序不执行。,33,2、梯形逻辑程

27、序设计语言(LD),第五讲 WAGO-I/O-PRO 32 POU程序设计语言,用户使用“Insert”下拉菜单中的相关命令可以在梯级网络中插入运算符、POU、触点、线圈和程序注释等,使用“Extras”下拉菜单中的相关命令可以设置常开/常闭触点,置位/复位线圈。 用户可以使用工具栏在梯级网络插入触点、线圈及串联/并联结构。,插入串联触点 插入并联触点 插入输出线圈 常开触点/常闭触点切换 插入置位线圈/复位线圈,34,3、功能块程序设计语言(FBD),第五讲 WAGO-I/O-PRO 32 POU程序设计语言,功能模块图程序设计语言是采用功能模块来表示模块所具有的功能,不同的功能模块有不同的

28、功能。它有若干个输入端和输出端,通过软连接的方式,分别连接到所需的其它端子,完成所需的运算或控制功能。 FBD包含一系列程序网络,每个网络以图形的方式表示逻辑或数学运算, POU的调用。,35,3、功能块程序设计语言(FBD),第五讲 WAGO-I/O-PRO 32 POU程序设计语言,使用FBD工具栏:,对当前运算符添加输入端 对当前运算符或POU的赋值输出端添加另一个赋值输出端,同一运算结果可以输出至两个变量 插入运算符 插入赋值指令(Assign),用于为运算符或POU的输入/输出变量或其他变量赋值。 插入跳转指令(Jump) 插入返回指令(Return) 插入功能调用 插入功能块或程序

29、调用 运算符或POU的输入/输出变量或其他变量(布尔型)取反 变量置位/复位,36,3、功能块程序设计语言(FBD),第五讲 WAGO-I/O-PRO 32 POU程序设计语言,用户使用“Insert”下拉菜单中的相关命令可以在梯级网络中插入运算符、POU、赋值指令、跳转指令、返回指令和程序注释等,使用“Extras”下拉菜单中的相关命令可以设置变量取反,变量置位/复位。,注意: 用户应用程序的开发可以在IL、LD、FBD3种程序设计语言之间相互切换。 操作方法:选中所需切换的POU,使用“Project”-“Object”-“Convert”命令,在“Convert Object”对话框中选

30、择所需切换的程序设计语言。,37,4、结构化语句程序设计语言(ST),第五讲 WAGO-I/O-PRO 32 POU程序设计语言,结构化文本程序设计语言是用结构化的描述语句来描述系统中各种变量之间的各种运算关系,完成所需的功能或操作的一种程序设计语言。 结构化语句描述程序设计语言是一种类似于高级语言的程序设计语言。在大中型的可编程序控制器系统中,常采用结构化语句描述程序设计语言来描述控制系统中各个变量的关系。 ST与IL同属于基于文本的程序设计语言,但是由于ST采用了类似于高级语言的程序结构,在开发较复杂的应用程序时更为简便快捷。,38,4、结构化语句程序设计语言(ST),第五讲 WAGO-I

31、/O-PRO 32 POU程序设计语言,赋值表达式运算符优先级:,括号 函数调用 指数运算 取负数 取反 乘除运算 求余数 加减运算 比较运算 等于 不等于 逻辑与 逻辑异或 逻辑或,() EXPT - NOT * , / MOD + , - , = = AND XOR OR,优先级 最高 最低,注意: 优先级相同的运算符运算顺序为“从左至右” 。,39,4、结构化语句程序设计语言(ST),第五讲 WAGO-I/O-PRO 32 POU程序设计语言,赋值语句: Var1=Var2*10; IF 语句: IF THEN ; ELSIF THEN ; : ELSIF THEN ; ELSE ; E

32、ND_IF,CASE 语句: CASE OF : ; : ; : ; : ; ELSE ; END_CASE,40,4、结构化语句程序设计语言(ST),第五讲 WAGO-I/O-PRO 32 POU程序设计语言,FOR 语句: FOR := TO BY DO ; END_FOR WHILE 语句: WHILE ; END_WHILE REPEAT 语句: REPEAT ; UNTIL END_REPEAT,RETURN 语句: RETURN; EXIT 语句: EXIT;,41,5、功能块图程序设计语言(SFC),第五讲 WAGO-I/O-PRO 32 POU程序设计语言,功能表图程序设计语言

33、是用功能表图来描述程序的一种程序设计语言。采用功能表图的描述,控制系统被分为若干个子系统,便于程序的分工设计和检查调试。 SFC采用较为灵活的程序结构,可节省程序设计时间和调试时间, SFC常用于系统的规模校大,程序关系较复杂的场合。,42,5、功能块图程序设计语言(SFC),第五讲 WAGO-I/O-PRO 32 POU程序设计语言,在SFC程序设计语言中,程序由一系列的步骤(Step)组成,程序进程的执行取决于Step之间的执行条件(Transition)。 Step由行为( Action )与标识( Flag )组成,其中Action是一段由IL、LD、FBD、ST或SFC编写的程序 ;

34、 Flag用于显示该Step是否被激活的一个系统内部变量。 Entry Action: 在Step被激活之前执行一次的程序。 Exit Action: 在Step结束之前执行一次的程序。 执行条件Transition是一个布尔量数据类型的变量、地址、常数或具有布尔量数据类型结果的表达式。,Step,Transition,Action,Flag,Entry Action,Exit Action,SFC程序,43,5、功能表图程序设计语言(SFC),第五讲 WAGO-I/O-PRO 32 POU程序设计语言,使用SFC工具栏:,在之前插入Step 在之后插入Step 在右边插入程序进程选择分支 在

35、左边插入程序进程选择分支 在右边插入程序进程并联分支 在左边插入程序进程并联分支 插入跳转指令 插入Transition与跳转指令,用户使用“Insert”下拉菜单中的相关命令可以在程序中插入Entry Action与Exit Action 用户使用“Extras”下拉菜单中“Zoom Action/ Transition”可以对程序中的Action或Transition进行编辑。,44,6、连续功能图程序设计语言(CFC),第五讲 WAGO-I/O-PRO 32 POU程序设计语言,CFC是基于图形的程序设计语言,与FBD类似, CFC采用功能模块来表示模块所具有的功能,不同的功能模块有不同

36、的功能。它有若干个输入端和输出端,通过软连接的方式,分别连接到所需的其它端子,完成所需的运算或控制功能。 在CFC程序设计语言中,所有的程序元素(包括输入、输出、POU、跳转指令、程序注释等)没有位置要求。放置程序元素后,用户用鼠标将各个元素连接起来,构成程序的执行进程。在连接后移动程序元素,连接线自适应程序元素的位置。,45,6、连续功能图程序设计语言(CFC),第五讲 WAGO-I/O-PRO 32 POU程序设计语言,使用CFC工具栏:,插入输入元素 插入输出元素 插入运算符或POU 插入跳转指令 插入标签(Label) 插入返回指令 插入程序注释 运算符或POU的输入/输出变量或其他变

37、量(布尔型)取反 变量置位/复位 为运算符或POU添加使能输入端(EN)与使能输出端(ENO),注意: 插入运算符或POU时,系统默认为“AND”运算符,用户可更改为所需的运算符或POU 。 当运算符或POU的EN端为“0”,则该运算符或POU的程序不执行,ENO端为“0”。 当运算符或POU的EN端为“1”,该运算符或POU的程序执行,执行无误,ENO端为“1”;执行有误,ENO端为“0”。,46,第六讲 WAGO-I/O-PRO 32 运算符,WAGO-I/O-PRO 32支持所有IEC标准的运算符,运算符无须在项目中声明。,注意: 当用户在LD或FBD中使用运算符时,系统默认插入“AND

38、”(加法运算符),用户可以根据需要输入所需的运算符。 使用运算符时需注意运算符应用的数据类型应该与变量的数据类型一致。,47,第七讲 WAGO-I/O-PRO 32 函数库,1、库管理,用户新建一个项目后,系统自动加载库“STANDARD.LIB”,用户可以通过使用“Insert”- “ Additional Library”加载其它库文件;使用“Edit”-“Delete”从当前项目中删除库文件。 库文件的默认路径为: WAGO-I/O-PRO 32LIB2,用户使用“Window”下拉菜单中的“Library Manager”命令可以打开“Library Manager” 窗口。 库文件由

39、一系列功能与功能块构成,可以在整个项目中调用。,48,2、STANDARD.LIB 库元素,第七讲 WAGO-I/O-PRO 32 函数库,注意: 同使用运算符一样,请注意库中函数或功能块对变量数据类型的要求。,49,2、UTIL.LIB 库元素,第七讲 WAGO-I/O-PRO 32 函数库,50,第八讲 WAGO-I/O-PRO 32 程序资源,WAGO-I/O-PRO 32程序资源包括如下几项: 全局变量 (Global Variables) PLC配置 (PLC Configuration ) 任务配置 (Task Configuration) 采样轨迹 (Sampling Trace

40、) 查看与配方管理器 (Watch and Receipt Manager),51,1、全局变量(Global Variables),第八讲 WAGO-I/O-PRO 32 程序资源,在POU变量声明部分所声明的变量或功能块实例只能在自身的程序中被访问,而在全局变量中声明的元素可以被项目中所有的POU访问。 变量的声明方式与在POU中声明相同 举例:,基本型: VAR_GLOBAL PAR1:INT; PAR2:INT; PAR3:INT; END_VAR,保持型: VAR_GLOBAL RETAIN PAR1:INT; PAR2:INT; PAR3:INT; END_VAR,RETAIN:系

41、统保存变量的数据,如果系统断电,数据也不会丢失。当系统上电,程序运行时,系统根据被保存的数据的状态运行程序。,常量: VAR_GLOBAL CONSTANT con1:INT:=12; END_VAR,52,变量配置(Variable Configuration),第八讲 WAGO-I/O-PRO 32 程序资源,在功能块的声明部分可以对变量的地址进行不完整的配置,不完整部分用“*”表示。如果在程序中调用了该功能块的实例,则可以在“Variable Configuration”中对于该实例的变量配置地址。 注意: 进行变量配置时保证“程序 . 实例 . 变量”的路径正确。 在功能块声明部分与变

42、量配置部分,变量的地址类型(输入/输出)与数据类型相符。 举例:,功能块声明部分: FUNCTION_BLOCK locio VAR loci AT %I*:BOOL; loco AT %Q*:BOOL; END_VAR,程序声明部分: PROGRAM PLC_PRG VAR Hugo:logio; END_VAR,变量配置部分: VAR_CONFIG PLC_PRG.Hugo.loci AT %IX0.0:BOOL; PLC_PRG.Hugo.loco AT %QX0.0:BOOL; END_VAR,53,2、PLC配置(PLC Configuration ),第八讲 WAGO-I/O-PR

43、O 32 程序资源,从下图所示“Coupler Selection”对话框的产品目录中选择所使用的PFC,当用户使用“Online”下拉菜单中的Login命令,系统将用户程序下载到所选的PFC中。,54,3、任务配置(Task Configuration),第八讲 WAGO-I/O-PRO 32 程序资源,在多任务系统中,任务管理用于控制系统的程序执行过程。在任务管理中一个任务的执行取决于其优先级与执行条件。 优先级(Priority):031,“0“最高,”31”最低。 执行条件(Requirement):分为周期执行与触发执行两种执行条件。 周期执行:任务每隔一段时间周期执行一次,需要用户

44、设置执行周期。 触发执行:一个BOOL型变量的上升沿触发任务执行,需要用户设置一个全局变量作为触发条件。,55,第八讲 WAGO-I/O-PRO 32 程序资源,“Taskattributes”对话框,用户使用“Insert”下拉菜单中的“Insert Task”命令或“Append Task”命令,系统显示“Taskattributes”对话框,如下图所示:,Name项: 输入任务名 Priority项: 指定任务优先级(031) Interval项: 指定任务执行周期 Single项: 指定任务执行触发变量 Select按钮: 选择触发变量,注意: 如果一个任务没有指定其执行条件,则该任务

45、的执行只取决于其优先级。 如果一个任务同时指定了执行周期与触发变量,则该任务的执行只取决于执行周期而忽略触发变量。,56,“Program Call”对话框,第八讲 WAGO-I/O-PRO 32 程序资源,用户选择所添加的任务后使用“Insert”下拉菜单中的“Insert Program Call”命令或“Append Program Call”命令,系统显示“Program Call”对话框,如下图所示:,在此对话框中,键入在该任务中所要调用程序的程序名或者通过点击“Select”按钮选择所要调用的程序,如果所调用的程序需要输入参数,可以在该对话框中指定。 举例:program2(inv

46、ar=:17),57,4、采样轨迹(Sampling Trace),第八讲 WAGO-I/O-PRO 32 程序资源,程序中变量的采样数据储存在的一段缓存中,在“Sampling Trace”中以曲线轨迹的形式显示缓存中的变量采样数据。 最多20个变量可以同时采样,每个变量最大采样数为500个,采样周期或采样条件可以人为设定。采样数据的曲线轨迹可以图形或文本的方式保存。,58,“Trace Configuration”对话框,第八讲 WAGO-I/O-PRO 32 程序资源,用户使用“Extras”下拉菜单中的“Trace Configuration”命令,系统如图所示对话框。,在该对话框中,

47、用户进行如下设置: 指定需要采样的程序变量(最多20个) 设定终止采样触发变量(数字量或模拟量) 设置终止采样触发条件(上升沿、下降沿) 设置数据记录周期(以毫秒计算) 设置数据记录曲线轨迹的显示方式(单次、连续、手动),59,曲线轨迹的显示与处理,第八讲 WAGO-I/O-PRO 32 程序资源,开始采样 读取采样数据 停止采样 时间轴方向拉伸曲线轨迹 时间轴方向压缩曲线轨迹,用户使用“Extras”下拉菜单中的相关命令对曲线轨迹进行相关处理。 Start Trace:开始采样 Read Trace:读取采样数据 Auto Read:连续自动读取数据 Stop Trace:停止采样 Stre

48、tch:时间轴方向拉伸曲线轨迹 Compress:时间轴方向压缩曲线轨迹 Save Trace:保存当前曲线轨迹(* . trc) Load Trace:读取* . trc文件 Trace in ASCII file:以文本形式保存采样数据,60,5、查看与配方管理器(Watch and Receipt Manager),第八讲 WAGO-I/O-PRO 32 程序资源,用户使用该项功能可以集中查看程序中的变量数据。此外,在“Watch and Receipt Manager”中用户还可以预先设置多个变量的数据值并同时传送到PFC中。 添加变量语法如下: . :=,用户使用“Insert”下拉

49、菜单中“New Watch List”命令可以添加多个配方列表。使用“Extras”下拉菜单中“Save Watch List”与“Load Watch List”命令可以保存或加载其它配方列表。 当 用户设置了变量的数据值后,在联机情况下使用“Extras”下拉菜单中的“Write Receipt”命令将概数据值传送到PFC中。,61,第九讲 WAGO-I/O-PRO 32 可视化元素,WAGO-I/O-PRO 32 提供了可视化功能,用户可以在计算机中以图形的方式查看程序执行过程中变量的变化情况并且通过图形的方式为变量赋值。 用户在离线状态下绘制一系列的图形元素,将图形元素的相关属性(颜色、文本、位移、旋转角度、触发等)与变量的数值相关联。在联机运行情况下,图形元素的相关属性根据变量数值的变化而变化。,使用绘图工具栏:,选择图形元素 绘制

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 研究报告 > 商业贸易


经营许可证编号:宁ICP备18001539号-1