当前位置:文档之家› FBD功能块图编程

FBD功能块图编程

控制策略组态——功能块图法全解

5知识库 5-0变量与常数 知识库共使用三类变量和两类常数。 三类变量为:整型变量,实型变量和布尔(逻辑)型变量。 两类常数为:整型常数和实型常数。 5-0-1整型变量 整型变量由四位16进制数组成。其中第一(最高)位=8用于表示整型变量;第二、三、四位为整型变量的序号。 整型变量本身的取值范围:0~4095。 整型变量所描述数据的取值范围:0~65535(无符号数据)或-32768~32767(有符号数据)。 5-0-2整型常数 整型常数由六位16进制数组成。其中第一(最高)位和第二位=90用于表示整型常数;第三、四、五、六位为整型常数值。 整型常数的取值范围:0~65535(无符号数据)或-32768~32767(有符号数据)。5-0-3实型变量 实型变量由四位16进制数组成。其中第一(最高)位=A用于表示实型变量;第二、三、四位为实型变量的序号。 实型变量本身的取值范围:0~4095。 实型变量所描述数据的取值范围:IEEE浮点格式。 5-0-4实型常数 实型常数由十位16进制数组成。其中第一(最高)位和第二位=B0用于表示实型常数;第三至十位为实型常数值。 实型常数的取值范围:IEEE浮点格式。 5-0-5布尔(逻辑)型变量 布尔(逻辑)型变量由六位16进制数组成。其中第一(最高)位和第二位=C0用于表示布尔(逻辑)型变量;第三位用于表示布尔量在整型变量中所处位置(0~F);第四、五、六位为整型变量的序号。 布尔(逻辑)型变量的取值范围:假(=0)、真(=1)。 5-0-6布尔(逻辑)型常数 布尔(逻辑)型常数由二位16进制数组成。其中第一(最高)位和第二位=D1表示“真”,D0表示“假”。

基本功能块的使用

基本逻辑功能块的使用 1)、算术运算符 ADD(加)、SUB(减)、MUL(乘)、DIV(除) 2)、位串运算符 AND(与)、OR(或)、NOT(非) 3)、选择运算符 SEL(选择)、MAX(二取大)、MIN(二取小)、LIMIT(限幅)、MUX(多选一) 4)、比较运算符 GT(大于)、L T(小于)、LE(小于等于)、GE(大于等于)、EQ(等于)、NE(不等于) 5)、数据类型转换运算符 BOOL_TO_INT、BYTE_TO_BOOL、REAL_TO_INT、 LREAL_TO_REAL 6)、延时器(Timer)功能(软时间继电器功能) TP(脉冲) TON(延时闭合) TOF(延时断开) 6.1TP讲解 TP(IN,PT,Q,ET):IN和Q都是BOOL类型的,PT,ET都是TIME 类型的。 如果IN是FALSE,Q是FALSE,ET是0. 如果IN是TRUE并且ET小于等于PT,Q是TRUE。否则,Q是FALSE 。

该功能块能产生一个单脉冲信号,常用于将一开关量信号转换成一个高电平脉冲信号,脉冲信号宽度时间最长为设置的PT时间(如果开关量在此时间内从1变为0,则脉冲宽度与开关量从1变为0的时间相同,这里修正了软件自带帮助说明中的时序图错误)。 6.2TON(延时闭合) TON(IN,PT,Q,ET):IN,Q是BOOL类型,PT,ET是TIME类型。如果IN是FALSE,Q是FALSE,ET为0.当IN变成TRUE时,ET以毫秒记数直到ET等于PT.然后保持常熟。当IN是TRUE并且ET 等于PT时,Q是TRUE。否则Q为FALSE. 该功能块常用于电机的延时启动,数字开并的防抖处理(即用作数字开关量的滤波功能)。 延时时间为PT引脚输入值。IN脚引入的开关信号如果为1(TRUE),最少要经过PT时间的确认,才能输出1(TRUE)。强调的是输出为1(TRUE)时的效果。 7)、触发器(Trigger) R_TRIG上升沿触发器仅产生一个扫描周期的1(TRUE)信号,如果输入引脚CLK引入的信号发生了从0到1的变化。 F_TRIG下降沿触发器仅产生一个扫描周期的1(TRUE)信号,如果输入引脚CLK引入的信号发生了从0到1的变化。 功能块经常应用于判断信号或条件是否发生了变化、作一次记录,某种数据值进行一次有效的传送后保持不变。 8)、双稳态功能块(置位与复位功能块)

梯形图功能块的建立和使用

梯形图功能块的建立和使用 制作时间:2017.11 硬件设备:无 软件:CX-Programmer、CX-Simulator(离线模拟功能) 案例简介:①建立梯形图功能块实现程序的模块化编写; ②使用AT指定将变量映射到固定地址中。 1.系统概述,硬件搭建和接线 本案例使用离线模拟来测试编写的程序不需要实际硬件连接。 (1)模拟PLC机型 CJ2M-CPU33。 (2)功能块实现目的 将输入的两个变量值在输入使能位的控制下进行除法运算后进行输出。 2. 操作步骤 (1)硬件设置: (2)软件操作: ①在CX-Programmer中建立CJ2M-CPU33的工程,然后添加功能块 a.【功能块】分类右击——【插入功能块】——梯形图。 图2-1

b.在【通用】选项卡中,命名功能块名称为“Test1”。 图2-2 c.在【保护】选项卡中可以对功能块设置“禁止写入”或者“禁止写入和显示”。 图2-3 ②添加功能块所需要的变量 a.依次添加如图2-4所示的三个输入变量,过程如下图2-5、2-6所示。 图2-4

图2-5 图2-6 b.建立内部变量,并进行AT指定,将其映射到D0地址。 图2-7 图2-8

c.建立输出变量如下图2-9所示。 图2-9 ③编写功能块程序 编写功能块程序如下图2-10所示。 图2-10 ④在主程序中调用编写的功能块 a.新建接点作为功能块的使能接点,在使用如图2-11所示图标调用功能块。 图2-11

b.输入功能块实例名称(每次调用功能块都需要设置一个实例名,并且不可以功能块定义名重复)。 图2-12 c.选择图2-13所示图标,给功能块输入、输出变量赋值。 图2-13 赋值完成后,功能块梯形图程序如图2-14所示。 图2-14

功能块和功能的区别

功能: Function , 简称 FC 功能块: Function Block , 简称 FB FB和FC根本的区别是:FB支持静态变量,而FC只支持临时变量。 静态变量:是调用FB返回时,仍然要为FB保留此变量区,因此不会改变这一区域的数据值。临时变量却没有这样的特*。 所以在FC中如果在对临时数据变量处写入确定的数据前,就去读时就可能产生不可预见的结果,而对于静态变量却不会,因为它会保留你上次写入的结果。 另外,楼下的某位大侠的回答也很详细,你可以看看—— “ 我简单的说说FB和FC的区别,FB是具有存储功能的,FC没有存储功能,这是一般的理解;FB需要背景数据块,而FC是没有的;参数的传递方式不同,FB的输入输出对应着背景数据块地址,而FC的输入输出是没有实际地址对应的,只有的程序调用时,才会和实际的地址产生对应关系。FB参数传递的是数据,FC参数传递的是数据的地址。

FB(功能块)的处理方式是围绕着数据块处理数据,他的入口参数和出口参数都是数据块里的数据,以及STAT的数据都是数据块里,入口参数和出口参数、STAT可以认为是静态数据,这些数据不会因为函数消失而逝去,他会一直保存在数据块里。FB里的变量与他的背景数据块是一一对应的,而他的对应并不是一层不变的。更确切的说,FB 里的变量在调用时将根据AR2的值当作偏移量与背景数据块是一一对应。如果一个FB功能块里没有入口参数、出口参数及STAT数据,他将不需要背景数据块,这时的FB和没有入口出口参数的FC就没有什么区别了,就只能使用临时变量和全局变量了。 用很多人认为,FB的背景数据块必须由FB生成、FB里的第一个变量对应着背景数据块的第一个变量,还有就是由FB生成的数据块只能作为FB的背景数据块使用。其实这些理解是错误的,FB的背景数据块不一定是通过FB生成的,可以像生成共享数据块一样生成FB的背景数据块,换句话说,普通的数据块也可以作为FB的背景数据块,不过这种做法是有一定前提的,就是这个数据块的字节数必须大于等于FB所需的字节数,如果小于FB所需的字节数时,FB访问到超出背景数据块的变量时就会找不到变量的地址,肯定会出错了。FB里的第一个变量对应可以对应数据块字节数减去FB所需背景数据块字节数里的任意位置的

功能块 ( FB ) 教材

目录 第一章功能块(FB)编程概述 (1) 1.1功能块(FB)简介 (1) 1.2功能块(FB)使用特点 (1) 1.3功能块(FB)使用环境 (2) 1.3.1 支持FB功能的PLC类型 (2) 1.3.2.支持FB功能的软件 (2) 1.3.3 CX-Programmer6.0功能块特点 (2) 第二章梯形图功能块 (3) 2.1梯形图功能块编程基础 (3) 2.1.1梯形图功能块结构介绍 (3) 2.1.2 梯形图功能块编辑区介绍 (4) 2.2创建功能块 (4) 2.2.1 新建梯形图FB (5) 2.2.2 设置功能块变量 (6) 2.2.3 编写FB内梯形图 (7) 2.3使用功能块 (8) 2.3.1 调用梯形图功能块 (8) 2.3.2 梯形图FB的嵌套 (9) 2.3.3 保存梯形图FB (11) 2.3.4 调试梯形图FB (12) 2.4FB内存分配注意事项 (13) 第三章高级语言(ST语言)功能块 (15) 3.1ST语言功能块编程基础 (15) 3.1.1 高级语言编程概念 (15) 3.1.2 ST语言编程特点 (16)

3.2ST语言编程系统介绍 (17) 3.2.1 ST语言常用运算符 (18) 3.2.2 ST语言基本命令 (19) 3.2.3 ST语言编程规则 (23) 3.3创建ST语言FB (23) 3.4ST语言FB的使用 (25) 3.4.1 调用ST语言FB (25) 3.4.2 ST语言FB的嵌套 (26) 3.4.3 ST语言FB的保存和调试 (26) 第四章功能块——FB库 (27) 4.1FB库概述 (27) 4.1.1 FB库特点 (27) 4.1.2 FB库应用简介 (28) 4.2FB库内容介绍 (29) 4.2.1 FB库内容简介 (29) 4.2.2 FB库功能分类 (30) 4.3FB库功能块使用 (31) 4.3.1 创建FB库中的功能块 (31) 4.3.2 阅览FB库中的功能块程序 (32) 4.3.3 调用FB库中的功能块 (32) 第五章功能块应用示例 (33) 附录一:ST语言语法错误一览表 (38)

CFC功能块

MOT_REV FB6实现功能:用于控制双向运转电机 模式切换:从OS站对管角AUT_ON_O进行修改,可以切换运行模式,1 为自动,0为手动;可以由QMAN_AU验证。 在FW_OP_ENRV_OP_ENOFFOP_E允许情况下(1为允许,0为禁止),决定正转、反转以及停止分别由FORW_OMOT_OF和REV_O决定;正 转、反转或停止只能有一种成立,建议电气上也应实现互锁。 模块提供可监视电机运行停止时间,在管角MONITORS 1的情况下,由 TIME_Ob和TIME_OFl可知道当前电机运行、停止的时间 错误复位由管角RESET决定 START_OF决定CPU切换到运行时电机的状态;1为电机停止,0为保持 上一个运行状态

MEAS_MON FB65现功能:监控一个模拟量,含有上下限报警和警告 U 为监控的模拟量 U_AH U_AL 为报警的上下限值,U_WHU_W 为警告的上下限值;QH_ALM QL_ALM QH_WRNQL_WR 分别对应上下限报警或警告的给出 MOT_SPED FB6 基本解释见 MOT_REV( FB76 SP1_ON SP2_ON MOT_OF 决定电机快速运行、慢速运行和停止;三个 0— 0— 0— 0— 0— 16*80 0— 16#80— 16#80- 16#80 0— 0— 0— 0— 0— 3.0

只能一个有效 MOTOR FB6实现功能:用于控制电机,电机运行状态可选择监视 模式切换:从OS站对管角AUT_ON_O进行修改,可以切换运行模式,1 为自动,0为手动;可以由QMAN_AU验证 LOCK和LOCK_O决定电机立即运行或停止,优先级最高,其中LOCK让电机立即停止,在LOCK为0时,LOCK_O让电机立即运行 FB_OF为电机反馈状态 VALVE FB73 2 VALVE Singl e Drive A)u 0E1 88A? BO V LOCK QCONTROL EO SO VL OPEN QC^QCOJTIK BY BO VL^CLOSE QlffON ERR BO BO AUTO 00 QGR ERK DO BO SS POS QltAN AUT BO BO L…RESET QOPENING BO 80 CSF QOPENED BQ BO FB OPEN QCLOSING BO BY QC ET OPE QCLOSED BO BO FB CLOSE BY QC FB CLO BT QC QCONTR BO MONITOR BO LIO.P_SEL BO AUT L R THE M IJ N 0— ■3— 0— 0— 0— 」 — 16#80 i6#ao — 0— 0^— 0— 3.0 16^90— 开 口 ― B0 LOCK QMSS ST BO BO LOCK OH QMOM EKR EO BO AUTO QM QGR EER BO BO L RESET QRUN BO BO MSS QSTOP BO BO CSF ' QSTART EO BO FBjOM 「QC QSTART BY BY QC EB ON QMAN_A(JT BO BY QC_QSTART BO LIOP SEL BO AUT L BO MONITOR R TIME MON j 0— 16980- 16S30 0— Q— 0— 1 MOTOR motor Q— — 开 0B1

功能块说明

HPCS-3000分布控制器算法功能块说明文档 Version 1.0.11 上海华文自动化系统工程有限公司

前言 文档内容 本文是华文HPCS-3000系列产品文档的一部分,主要给出该系列中各种控制器所含功能块的详细设计资料。 对每种功能块,文档会说明以下内容: 说明部分说明内容 名称功能块的名称,和在功能块图中的标记名 结构功能块每个输入输出信号的含义和作用 描述说明功能和用途 实用例实际使用中的常见连接方式 特殊说明列出功能块使用中必须注意的问题

目录 1实数运算 (1) 1.1FADD二输入浮点加法 (1) 1.2FSUB二输入浮点减法 (2) 1.3FMUL二输入浮点乘法 (3) 1.4FDIV二输入浮点除法 (3) 1.5EXP指数运算 (4) 1.6LOG对数运算 (5) 1.7ABS取绝对值 (5) 1.8SQR取平方根 (6) 1.9RND随机函数 (6) 1.10SIN正弦函数 (7) 1.11COS余弦函数 (7) 1.12TAN正切函数 (8) 1.13ATN反正切函数 (8) 1.14PLOYNOM五次多项式 (9) 1.15SUM8八输入数学统计器 (10) 1.16CMP数值比较 (11) 2整数运算 (12) 2.1WADD整数加法 (12) 2.2WMUL整数乘法 (13) 2.3WDIV整数除法 (14) 2.4MOD取模运算 (14) 2.5WAND整数与运算 (15) 2.6WOR整数或运算 (16) 2.7WXOR整数异或运算 (16) 2.8WNOT整数求反运算 (17) 2.9WCMP整数比较 (17) 3布尔运算 (19) 3.1AND逻辑与 (19) 3.2OR逻辑或 (20) 3.3XOR逻辑异或 (20) 3.4NOT逻辑非 (21) 3.5EDGE边沿检测 (21) 3.6UEDG上升沿检测 (21) 3.7DEDG下降沿检测 (22) 3.8SET置1 (22) 3.9RESET置0(复位) (23) 3.10RS触发器 (23) 4类型转换 (25)

PKS-常用功能块简介

1.AB_DRIVE_IF(AB驱动) 2.AGA(美国气体协会标准块) 3.AUXILIARY(辅助功能块) 1)AUXCALC 2)AUXSUMMER(模拟量加法块,可分项增加比例系数) PV = CPV {((C [1] P[1]) + D [1] ) + ... ((C [i] P[i] )+ D [i] )} + DPV 3)CTUD 4)DEADTIME 5)ENHAUXCALC 6)ENHGENLIN 7)FLOWCOMP 8)GENLIN(FX分段函数块) 9)LEADLAG(超前滞后) 10)ROC 11)SIGNALSEL(模拟量选择块,最多6个输入) 12)TOTALIZER ?CM-Server Displays引用名称:sysDtlTOTALIZERA ?块的定义名:TOTALIZER 4.DATAACQ(模拟量数据处理) 功能:与模拟量卡件相联接,对输入的数据进行处理,包括量程的计算、报警的定义等。 输入: 1)P1 输出: 1)PV CM-Server Displays引用名称:sysDtlDACA 块的定义名:DACA 5.DEVCTL(设备控制块) ?CM-Server Displays引用名称:sysdtldevctla ?块的定义名:DEVCTLA 6.DNETIF(设备网络通信) 7.DSB(设备支持块) 8.EXCHANGE(数据交换) 9.FBUSIF(Fieldbus连接驱动) 10.FIELDBUS 11.HARTIO 12.HIWAY 13.HIWAYIF

14.IOCHANNEL 15.IOMODULE 16.JAGXTREME 17.LOGIC(逻辑计算) 1)AND 2)CHECKBAD 3)CHECKBOOL 4)CHGEXEC 5)CONTACTMON 6)DELAY 7)EQ 8)FTRIG 9)GE 10)GT(高值比较) 11)LE 12)LIMIT 13)LT(低值比较) 14)MAX 15)MAXPULSE 16)MIN 17)MINPULSE 18)MUX 19)MUXREAL 20)MVOTE 21)NAND 22)NE(偏差比较,常用于比较指令和反馈的偏差) 23)NOON 24)NOR 25)NOT 26)OFFDELAY 27)ONDELAY 28)OR 29)PULSE(脉冲输出块) 30)QOR 31)ROL 32)ROR 33)RS 34)RTRIG 35)SEL 36)SELREAL(实数选则块,当G输入为0时,OUT输出IN1,当G输入为1 时,OUT输出为IN2) 37)SHL 38)SHR 39)SR

相关主题
文本预览
相关文档 最新文档