




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
WAGO-I/O-PRO
CAA
是基于WAGO-I/O-SYSTEM
750
系列可编程现场总线控制器(PFC)的编程开发与可视化图形
工具
。WAGO-I/O-PRO
CAA符合IEC
61131-3国际标准,提供标准的开发环境与基于该标准的6种程序设计语言:梯形逻辑程序设计语言(LD)指令列表程序设计语言(IL)顺序功能图程序设计语言(SFC)功能块程序设计语言(FBD)结构化语句程序设计语言(ST)流程功能图程序设计语言(CFC)WAGO-I/O-PRO
CAA功能:丰富的程序功能指令WAGO-I/O-PRO
CAA
提供了位逻辑运算、整数与浮点数运算、定时器与计数器功能、比较与赋值功能、移位与循环功能、数据类型转换功能、
PID功能等大量丰富的程序功能指令。此外,用户还可以根据特定需要编写自己的功能块、子程序。离线程序仿真到PFC中,方便用户对程序的测试与修改并节省用户应用程序可在计算机中进行仿真执行,无须将其了开发时间。监视在程序离线仿真或联机运行的过程中,用户可以在WAGO-I/O-PROCAA中以文本或图形的方式监视程序运行状态及数据变化情况。与调试在程序离线仿真或联机运行的过程中,用户可以通过在程序中设置断点、逐步执行程序、手动为变量赋值的方式对程序进行
与调试。多任务管理WAGO-I/O-PROCAA提供了多任务管理功能,复杂的应用系统可以划分为多个任务,任务的执行取决其优先级与执行条件,降低了系统的响应时间。开发环境系统要求:CPU:In
Pentium或更高操作系统:MS-WINDOWS
95MS-WINDOWS
NT
4.0MS-WINDOWS
2000MS-WINDOWS
XP内存:
16MB
RAM
(
Windows
95)64MB
RAM
(WindowsNT)10MB本机硬盘空间鼠标2倍速以上光驱RS232串行口通讯电缆RS232IPC:758-870,266MHzPFC:
750-8XX运行环境:第一讲POU
的基本概念第二讲程序设计语言梯形图LD第三讲程序设计语言功能块FBD第四讲程序设计语言指令列表IL第五讲结构化文本ST第六讲IEC运算符POU
是程序组织单元(Program
Organization
Unit)的简称。变量部分程序指令部分POU由函数(Function)、功能块(Function
Block)、程序(Program)三种类型组成。POU由变量部分组成部分和程序代码每一个POU包含两部分:变量部分与程序指令部分。程序指令部分
由六种语言(IL、LD、SFC、FBD、ST、CFC)之一编写。程序(Program)是为了完成某项任务而编写的语句序列,是一组指令的集合。程序是唯一可执行的POU,是逻辑执行的主体。程序可以通过任务组态来激活,也可以通过其它程序来调程序可以被调用。程序中所有变量的数据在被调用执行后保留直至下一次执行。PLC_PRG
在用户建立一个新项目时由系统自动加载。PLC_PRG是项目中系统预定义的一个特殊的程序。PLC_PRG每一循环周期被系统调用执行一次,相当于一个单任务程序的主程序。当用户在项目中进行了多任务管理的相关设置后,系统可以不需要PLC_PRG
。否则,用户不要删除PLC_PRG或改变其程序名。变量
部分:PROGRAM
PRGExampleVAR_OUTPUTPAR:INT;END_VAR程序指令部分:LD
PARADD
1ST
PARPOU的类型-程序(Program)与PLC_PRG程序的调用在IL中调用:CAL
PRGExampleLD
PRGExample.PARST
ERG在ST中调用:PRGEXample;ERG:=
PRGEample.PAR;程序(Program)POU的类型-程序(Program)与PLC_PRG功能块(FunctionBlock)是预先编好的、实现某种运算的程序。功能块在执行时,输入量可以是一个或多个值,输出量可以是一个或多个执行结果。功能块以调用其实例(Instance)的方式执
行。功能块的实例需在POU的变量
部分进行
。实例可以
为局部实例或全局实例。功能块实例的输入输出变量可以在POU中设置,
变量在调用时对于用户是不可见的。变量
部分:FUNCTION_BLOCK
FUBVAR_INPUTPAR1:INT;PAR2:INT;END_VARVAR_OUTPUTMULERG:INT;VERGL:BOOL;END_VAR程序指令部分:输入变量输出变量MULERG=PAR1*PAR2LD
PAR1MUL
PAR2PAR1=PAR2STMULERGVERGL=TRUELDPAR1EQPAR2PAR1≠PAR2STVERGLVERGL=FALSEPOU的类型-功能块(Function
Block)功能块的实例*)变量并赋初值*)程序
部分:PROGRAM
PLC_PRGVARINSTANCE:FUB;
(*ERG:INT:=0;
(*QUAD:BOOL;END_VAR在IL中调用:CAL
INSTANCE(PAR1:=5,PAR2:=5)LD
INSTANCE.VERGLST
QUADLD
INSTANCE.MULERGST
ERG在ST中调用:INSTANCE(PAR1:=5,PAR2:=5);
QUAD:=INSTANCE.VERGL;ERG:=INSTANCE.MULERG;在程序中
名为INSTANCE的功能块FUB
的实例,乘积的结果保存在变量ERG中,比较的结果保存在变量QUAD中。功能块(Function
Block)POU的类型-功能块(Function
Block)函数(Function)也是预先编好的、实现某种运算的程序。函数在执行时,会针对一系列特定的输入,产生一个输出结果,这个输出结果被赋给函数本身,称为返回值。函数只能被其它POU
调用,函数本身不能单独执行。在
一个Function后,需要指定该Function所返回的数值的数据类型。Function的名字为该Function的输出变量结果。变量
部分:FUNCTION
Fct:
INTVAR_INPUTPAR1:INT;PAR2:INT;PAR3:INT;
END_VAR程序指令部分:LDPAR1MULPAR2Fct=(PAR1*PAR2/PAR3)DIVPAR3STFctINT:function返回的数据类型Fct:
Function输入变量POU的类型-函数(Function)result=(7*2/4)在IL中调用:LD
7FCT
2,4ST
Result在ST中调用:Result:=Fct(7,2,4);函数(Function)POU的类型-函数(Function)POU
的调用有两种方法:••被其它已经调用的POU来调用。通过任务配置来调用,这种方法仅限于程序调用。当程序中没有进行任务配置时,系统会自动调用主程序PLC_PRG。POU的组成程序。••POU
的调用有两种方法:程序可以调用函数、功能块和其它功能块可以调用函数和其它功能块。函数可以调用函数。POU的调用POU
的组成
。所有的POU
都包含一个
部分和一个代码部分。代码部分可以选用IEC
标准编程语言的一种或几种来编写。不同性质的POU,其标题名称也不相同。第一讲POU
的基本概念第二讲程序设计语言梯形图LD第三讲程序设计语言功能块FBD第四讲程序设计语言指令列表IL第五讲结构化文本ST第六讲IEC运算符LD
是梯形图(Ladder
Diagram)的简称。LD
是一种图形化的编程语言。用LD
可以方便地构造逻辑运算。LD
主要由触点、线圈、功能块和连接线等编程元件组成。是LD通过水平线和垂直线连接成平面网状图。一般称最左边的垂直线为“能量线”,其状态真(TRUE)。各编程元件以一定的规则互相连接,最终连接到这条能量线上,形成一个个“节”、“段”或“网络”,完成特定的逻辑运算。梯形图
LD介绍元素:标识:注释:常开触点—|
|—如果指定地址信号状态为“1”,则触点闭合,反之触点断开。常闭触点—|/|—如果指定地址信号状态为“1”,则触点断开,反之触点闭合。输出线圈—(
)—线圈前运算结果为“1”,输出状态为“1”,反之输出状态“0”。置位输出线圈—(S
)—线圈前运算结果为“1”,输出状态为“1”,反之信号状态不变。复位输出线圈—(
R
)—线圈前运算结果为“1”,输出状态为“0”,反之信号状态不变。串联结构:相当于位逻辑的“与”运算。并联结构:相当于位逻辑的“或”运算。输出线圈不允许串联结构梯形图
LD介绍当新
触点、线圈时,标记文本缺省值为“???”。点击文本输入可以所要的变量或常量。或者,可以使用输入助手(快捷键F2),直接从变量列表中选择输入。梯形图
LD-窍门1在梯形逻辑程序设计语言中允许以图形的方式使用系统运算符与功能块,运算符与功能块可以在梯级网络中间使用(如图1),也可以在梯级网络右侧以“使能”的方式使用(如图2)。图1注:在此种方式下,要求运算符或功能块所连接的变量为布尔型。图2注:“EN”为该运算符或功能块的使能端,如果前面运算结果为“1”,则使能端激活,程序执行;反之程序不执行。梯形图
LD-
功能块/运算符&使能功能块/运算符当新
触点、线圈时,标记文本缺省值为“???”。点击文本输入可以所要的变量或常量。或者,可以使用输入助手(快捷键F2),直接从变量列表中选择输入。梯形图
LD-窍门第一讲POU
的基本概念第二讲程序设计语言梯形图LD第三讲程序设计语言功能块FBD第四讲程序设计语言指令列表IL第五讲结构化文本ST第六讲IEC运算符功能模块图程序设计语言是采用功能模块来表示模块所具有的功能,
不同的功能模块有不同的功能。它有
若干个输入端和输出端,通过软连接
的方式,分别连接到所需的其它端口,完成所需的运算或控制功能。FBD包含一系列程序网络,每个网络以图形的方式表示逻辑或数算,POU的调用。功能块
FBD使用FBD:对当前运算符添加输入端
对当前运算符或添加输出端运算符赋值指令(Assign),用于为运算符或POU的输入/输出变量或其他变量赋值。跳转指令(Jump)返回指令(Return)运算符或POU的输入/输出变量或其他变量(布尔型)取反变量置位/复位功能块
FBD功能块
FBD-使用输入/输出命令对于某些运算符,输入/输出的数量是变化的,有时需要扩展运算符的输入。例如,ADD
可两个数相加,也可以是
的数相加。选中输入,
的新输入成为功能块的第一个输入。如果要一个位于末端位置的输入,能块本身。
的输入缺省值为文本“???”。点击选中文本,改变成所需要的常量必须选或变量。用户使用“Insert”下拉菜单中的相关命令可以在梯级网络中运算符、POU、赋值指令、跳转指令、返回指令和程序注释等,使用“Extras”下拉菜单中的相关命令可以设置变量取反,变量置位/复位。注意:用户应用程序的开发可以在IL、LD、FBD3种程序设计语言之间相互切换。操作方法:选中所需切换的
POU,使用“Project”-“Object”-“Convert”命令,在“ConvertObject” 框中选择所需切换的程序设计语言。功能块
FBD-编程语言切换功能块
FBD-示例本程序可以产生“1s断2s通”的脉冲信号。第一讲POU
的基本概念第二讲程序设计语言梯形图LD第三讲程序设计语言功能块FBD第四讲程序设计语言指令列表IL第五讲结构化文本ST第六讲IEC运算符IL语言是用布尔助记符来描述程序的一种程序设计语言。IL语言与计算机中的汇编语言非常相似,采用布尔助记符来表示操作功能。IL语言程序由一系列指令构成,每一条指令包括一个操作符与一个或多个操作数。在程序的每一行起始出可以设置(Label),在每行指令后可以添加注释文本(Comment)。下面是一个用IL
语言实现的简单运算程序。举例:操作a符:操作数:注释:LDTRUE(*将“TRUE”存入缓存*)ANDNBOOL1(*取“BOOL1”反,与“TRUE”做与运算*)JMPCmark(*如果结果为“True”,跳转到“mark”*)LDNBOOL2(*取“BOOL2”反STERG存入变量“ERG”中*)mark:LDBOOL2(*取“BOOL2”STERG存入变量“ERG”中*)修饰符:C:用于JMP、CAL、RET语句,如果该指令前的表达式结果为“真”,则执行该指令。N:用于JMP、CAL、RET语句,如果该指令前的表达式结果为“假”,则执行该指令。N:在其他语句中用于操作数(布尔量)取反。操作符、操作数、函数与功能用户使用“Insert”下拉菜单中的相关命令可以在指令中块。ANDN位逻辑“与”运算ORN位逻辑“或”运算XORN位逻辑“异或”运算ADD“加”运算SUB“减”运算MUL“乘”运算DIV“除”运算操作符可用修饰符:注释:LDN将操作数结果写入缓存STN将运算结果写入操作数S置位布尔操作数R复位布尔操作数操作符可用修饰符:注释:LT小于EQ等于NE不等于LE小于等于GT大于GE大于等于JMPC,N跳转到“Label”CALC,N调用程序或功能块RETC,N返回本程序可以产生“1s
断2s
通”的脉冲信号。第一讲POU
的基本概念第二讲程序设计语言梯形图LD第三讲程序设计语言功能块FBD第四讲程序设计语言指令列表IL第五讲结构化文本ST第六讲IEC运算符结构化语句程序设计语言是用结构化的描述语句来描述系统中各种变量之间的各种运算关系,完成所需的功能或操作的一种程序设计语言。结构化语句描述程序设计语言是一种类似于高级语言的程序设计语言。在大中型的可编程序控制器系统中,
常采用结构化语句描述程序设计语言
来描述控制系统中各个变量的关系。ST与IL同属于基于文本的程序设计语言,但是由于ST采用了类似于高级语言的程序结构,在开发较复杂的应用程序时更为简便快捷。赋值表达式运算符优先级:括号函数调用(…)最高指数运算取负数EXPT-取反NOT乘除运算*
,
/求余数MOD加减运算+
,
-比较运算<
,
>
,
<=
,
>=等于=不等于<>逻辑与AND逻辑异或XOR逻辑或OR最低优先级注意:优先级相同的运算符运算顺序为“从左至右”。赋值语句赋值语句(:=)用于将右边的数值赋值给左边的运算数(变量、地址)。例如:Var1
:=
Var2
*
10;变量Var2的十倍数值被赋值给变量Var1。在ST中调用功能块在ST中调用功能块,需要功能块的实例名,然后在圆括号中给参数赋值。通过下面的例子可以看到,调用定时器并给参数IN和PT赋值,然后将结果变量Q的值赋给变量A。同IL一样,结果变量由功能块名,点号和变量名表示。TON(IN
:=
TRUE,
PT
:=
t#300S);A:=CMD_TMR.Q在ST中调用功能块IF语句IF
语句用于检查某个执行条件,并根据具体条件执行相应的指令。IF
语句语法结构:IF
<Boolean_expression1>
THEN<IF_instructions>;{ELSIF
<Boolean_expression2>
THEN<ELSIF_instructions1>;:ELSIF
<Boolean_expressionn>
THEN<ELSIF_instructions
n-1>;ELSE<ELSE_instructions>;}END_IF例子:IF
temp<17THENELSEheating_on
:=
TRUE;heating_on
:=
FALSE;END_IF;CASE语句CASE语句可以根据同一个条件变量的数值变化而去执行多个不同的程序段。CASE
语句语法结构:CASE
<Var1>
OF<Value1>:
<instruction1>;<Value2>:
<instruction2>;<Value3,Value4>
:<instruction3>;…<Value
n>
:
<instruction
n>;ELSE
<ELSE
instruction>;END_CASE例子:CASE
INT1
OF1,5:BOOL1:=TRUE;BOOL3:=FALSE;2:BOOL2:=FALSE;BOOL3:=TRUE;ELSEBOOL1:=TRUE;BOOL2:=TRUE;BOOL3:=TRUE;END_CASE;FOR循环语句FOR
循环语句用于编写可重复执行的程序。FOR
语句语法结构:Var:
INT;FOR
<Var>
:=
<Init
_Value>
TO<End_Value>
{
BY
<Step_Size>
}
DO<instructions>;END_FOR例子:FORCounter:=1TO5
BY
1
DOVar1:=Var1*2;END_FOR;Erg:=Var1;(*Var1is
32*)WHILE循环语句WHILE循环语句的用法和FOR循环语句类似,只是WHILE循环语句的中断条件可以是任何的逻辑表达式。即只要满足给定的条件,循环就会一直被执行。WHILE语句语法结构:WHILE
<Boolean_expression><instructions>;END_WHILE例子:WHILE
counter<>0
DOVar1:=Var1*2;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 家具配送运输合同
- 车位买卖合同范本
- 按揭房子买卖合同
- 与劳务公司劳务派遣协议
- 美容护理服务协议及风险免责声明
- 承包挖掘机租赁合同书
- 房屋买卖合同欺诈赔偿
- 户外活动风险自负协议书
- 化妆品行业消费者行为分析与营销策略优化方案
- 供应链管理体系优化项目协议
- 高中校长在2025春季开学典礼上的讲话
- 2025年六年级数学下册春季开学第一课(人教版) 2024-2025学年 典型例题系列(2025版)六年级数学下册(人教版) 课件
- 1.2 男生女生 (课件)2024-2025学年七年级道德与法治下册(统编版2024)
- 2024年公安部直属事业单位招聘笔试真题
- 历史-辽宁省协作体2024-2025学年度高三上学期期末考试试题试题和答案
- 民政局2025年度离婚协议书官方模板4篇
- 2025年银行安保年度工作计划
- 临床药师进修汇报总结
- 2025年浙江嘉兴桐乡市水务集团限公司招聘10人高频重点提升(共500题)附带答案详解
- 2024-2025学年五年级数学上册名校真题 期末考试综合检测卷
- 2025年市青年企业家商会工作计划
评论
0/150
提交评论