浙大中控DCS图形化编程素材
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
变量查找
根据所查找目标数据源的分类(当前段、当
前工程)进行变量、位号以及模块的查询。
系统资源
位号 系统变量 单回路控制模块 串级回路控制模块 冷热启动及下载组态标 志
模入量位号成员
开入量位号成员
名称 VAL 类型 BOOL 说明 测量值
MAN
MVAL
BOOL
BOOL
手自动切换开关 OFF:自动;ON:手动
算术运算-MOVE
算术运算-MOVE
这个模块相当于赋值的功能。例如,我们将位 号TI101的报警高限设定为0.9,则图形化编程如下:
比较运算--GT
比较运算--GE
• 例如,当压力PT101(0~10KPa)超过80%时要求打 开电磁阀KO101。 • 参考程序如下:
转换运算—SFLOAT_TO_FLOAT
执行次序
FBD编辑器-组态元素
选择 连接线 取反 最近选择的功能块 功能块选择 注释文本 调试文本 跳转按钮
FBD编辑器-IEC模块库
算术运算模块 比较运算模块 转换运算模块 计数器模块 逻辑模块 数学模块 选择模块 定时器模块 触发器模块
FBD编辑器-辅助模块库
控制模块 通讯辅助模块 累积模块 输入处理 系统模块 文本代码模块 辅助计算 电量转换 信号选择模块 浮点处理模块
FBD编辑器-自定义模块库
自定义模块库收集了 当前工程所编辑的所 有模块。
FBD编辑器-附加库
附加库主要包括一些特殊模块、锅炉模块、造气模块、DEH模块、 智能通讯卡模块供用户使用。
符 号 位
三 位 小 整 数 数 点
12 位 小 数
数据类型编辑器
SControl 内置数据类型编辑器,用户可以用数据类型
编辑器生成自己的数据类型,并可以在任何编辑变量 类型的地方使用。 系统内已预定义了部分数据类型,这些数据类型只读, 用户无法修改删除。
问题?
• 模拟量输入信号数据类型? • structAI • 模拟量输入信号的PV成员数据类型? SFLOAT • 开关量输入信号数据类型? • structDI • 开关量输入信号的VAL成员数据类型? • BOOL
站的所有程序。 每个工程唯一对应一个控制站,工程必须指定 其对应的控制站地址。
段落
工程包含一个或多个段落(Section)。 SControl通过任务管理来管理多个段落文件,
在工程文件中保存配置信息 。 段落是通常意义上的一个文档,是组成工程 的基本单位。 新建段落时必须指定段落的编辑类型和程序 类型。
选择模块--MAX
选择模块--MAX
• 例:某装置有3个温度测点,分别为TI101 (0~600℃)、TI102(0~600℃)、TI103 (0~600℃),要求将最高的温度信号作为连锁程 序的判断条件。当温度超过其量程的90%时打开电 磁阀KO101。
TON定时器模块
TON定时器模块
定时器的基准为控制周 期,定时时间必须设置 为运行周期的整数倍。
1. 2.
3.
编程基本步骤
基本步骤
1. 建立图形化组态工程并与系统组态软件建立关 联; 2. 根据控制方案的特点及需要选择合适的编辑器 在建好的工程中新建段落,在段落中编写程序, 编写的过程中进行保存; 3. 程序编写完毕后,通过编译检查程序语法错误, 修改程序至程序编译无误; 4. 将程序下载到主控卡,联机调试程序,使程序 运行时符合控制方案的要求;
FBD概述
功能块指包含内部状态的程序块 功能块分为基本功能块和自定义功能块 FFB都可用EN输入和ENO输出进行配置 FFB由带有输入和输出的图形框来描述
EN和ENO(使能)
EN是功能块的缺省的第0号输入。 ENO是功能块缺省的第0号输出。 可以隐藏EN和ENO引脚。 如果当调用功能块时EN值等于ON时,则由FFB 定义的算法才被执行。 ENO = EN
手动输入信号值
FLAG
BOOL
质量码
系统变量
单回路控制模块
串级回路控制模块
串级回路控制模块
冷热启动及下载组态标志
• BOOL g_bHotStartup 热启动标志,热启动时为ON,需要编程清0; • BOOL g_bColdStartup 冷启动标志,冷启动时为ON,需要编程清0; • g_bDownUsrPrgFlag 下载用户程序标志,下载了用户程序之后为ON, 需要编程清0; • g_bDownCfgFlag 下载组态标志,下载了组态(包括硬件组态、用 户程序组态)后为ON,需要编程清0。
提问
• 需要在流程图上显示累积量,在哪里定义?
三、功能块图(FBD)语言
培训什么? • 主要内容:
1. 功能块图(FBD)概述 2. 功能块图的程序结构和执行次序 3. FBD的编程元素 模块库介绍 常用模块介绍 4. 控制策略的FBD实现 5. FBD编程注意事项
FBD概述
FBD是一种图形化的编程语言 FBD用功能和功能块来构建控制策略 FBD直观、易于维护 IEC61131-3标准定义了FBD编程语言要素
工程文件
FBD文件 LAD文件 SFC文件 二进制代码文件 临时文件 临时文件 模块导出文件
文件保存路径
一个组态的相关文件 必须保存在正确的文件夹 下,否则在组态中进行联 编时会出错。 段落文件须保存在工程文 件夹下; 工程文件与工程文件夹须 保存在组态文件夹下的 “Control”文件夹下; “Control”文件夹须保存 在组态文件夹下。
数学函数--ABS
数学函数--ABS
• 例:要求当流量FT101(0~6000M3/h)超过或低于 某个设定值的30%时产生报警(变量BJT=ON),该 设定值为半浮点变量FF(0~6000M3/h)。
选择模块--SEL
选择模块--SEL
• 例:当操作员将开关(一字节变量KT)打至OFF时, 选择测点一(位号TI101)作为控制回路的输入信 号;当操作员将开关(一字节变量KT)打至ON时, 选择测点二(位号TI102)作为控制回路的输入信 号。
定时器--TP
定时器--TP
• 该模块用于产生持续时间一定的脉冲。
定时器的基准为控制周期,定时时间必须设置为运行周期 的整数倍。
• 例:请利用TP模块制作一个自复位按钮,要求当 按下按钮KT101后(即为ON)延时5秒种后将KT101 复位(即为OFF)。
变量分类
• 变量按结构分为:
1. 基本变量:基本数据类型(如BOOL、 SFLOAT、INT等)构成的变量称为基本变量。 2. 复合变量:复合数据类型(如结构体、数 组等)所对应的变量为复合变量。
变量分类
• 变量按作用范围分为:
1. 组态中定义的变量; 2. 全局变量(“工程”菜单下“变量编辑器” 中定义); 3. 私有变量(“对象”菜单下“变量定义”中 定义); 4. 输入变量与输出变量(“对象”菜单下“变 量定义”中定义);
• 例1:求温度TI101(量程0~600℃)和 TI102(量程0~600℃)的平均值,并将 运算结果存放至自定义变量TT中。
算数运算--DIV
算数运算--DIV
• 除法运算时应注意其运算结果应在半浮点 数据类型的表示范围内。
例:要求计算流量FI101(0~500M3/h)和FI102 (0~600M3/h)的比值。 首先,新建浮点型变量BIZHI。 其次,图形化编程如下:
例:某连锁控制程序,要求当温度TI105(0~1000℃) 超过600℃时打开电磁阀KO102。
TOFF定时器模块
TOFF定时器模块
• 注意,当延时时间到达之后输出 为OFF状态。 • 定时器的基准为控制周期,定 时时间必须设置为运行周期的整 数倍。 例:要求当电机KT101跳闸时(由ON变为OFF),延时5 秒种后点亮报警指示灯TT。
注:DEH模块、智能通讯卡模块只供ECS-100X系统使用。
下面我们介绍几个较常用的模块,其他模块的使 用可以参考相应的帮助文档。
算术运算-ADD
1. 在使用这个模块的时候,要注意模块的输入、输出 变量的数据类型。 2. 该模块可以有多个输入参数,我们可以用鼠标拖动 模块下方的黑点来增加或减少输入变量 。 3. 可以通过点击“显示EN/ENO”隐藏EN/ENO引脚。 4. 可以通过点击“帮助”按钮来查看该模块的使用说 明。
• 可以对每个段落设置密码进行保护
只有当编辑界面打开后,才可以进行设置密码和删除密码的操作。
练习
请大家花5分钟的时间: 1、熟悉软件界面 2、新建一个工程 3、使用不同的编辑器建立几个段落 4、改变段落的执行周期 5、调整段落的执行次序
数据类型
图形化软件提供的变量数据类型
半浮点——2字节
区段
区段指在同一段落中有数据信号相连的元素的总和。 一个段落可以包含一个或多个区段(SFC段落只有一个
区段)。 区段只是一个表示段落中元素间关系的概念,新建区 段不会生成任何新文件。
工程、段落和区段的关系
工程
段落
区段
组态文件说明
软件(产生文件) 文件扩展名 文件说明
.PRJ
.FBD .LAD SControl软件 .SFC .BIN .C .H .EXP .EXT
软件操作界面
菜单 栏
工程栏 编辑区
工具栏
信息栏
状态栏
编译出错提示
编译成功提示
菜单项简介
帮助
二、图形化编程基础
培训什么? • 主要内容:
1. 2. 3. 4. 5. 6. 7. 工程、段落、区段 编程基本步骤 程序运行原理及执行次序 工程管理 数据类型 变量 系统资源
工程、段落、区段
工程
SControl用一个工程(Project)描述一个控制
程序运行原理及执行次序 • 图形化自定义程序下载到控制站后,每隔 一个运行周期运行一次。
控制站执行程序时,先判断段落的执行次序 , 对于段落中的执行次序,先判断区段的执行次 序,然后再判断区段中各个编程元素的执行次序。
新建工程
工程与组态关联
段落新建及保存
程序类型和段类型
• 按编辑类型可将段落分类为 FBD段落 LD段落 SFC段落 ST语言段落
2006年度产品和技术培训
图形化编程
主讲人:孙志明
一、图形化软件概述
图形化组态的作用?
编写自定义控制方案,如精馏、联锁反应、燃烧等
四种编程ቤተ መጻሕፍቲ ባይዱ言
梯形图( LD ) 顺控图(SFC) 功能块图( FBD ) ST语言
启动方式
1. 推荐方式:通过单击组态软件的算法,弹出自定义控制算法设置对话框, 点击图形编程中的“编辑”,启动图形化编程软件;
转换运算—SFLOAT_TO_FLOAT
• 例:求温度TI101(0~600℃)和TI102(0~800℃) 的平均值,并将计算结果存放到自定义变量TT (0~700℃)中。
逻辑运算--AND
逻辑运算--AND
• 例:要求当三个开关KI101、KI102和KI103都打开 时(为ON)启动电机KT101,否则关闭KT101。
变量声明
变量作用范围
SCControl中可以使用的变量有四类: 组态中定义的变量 作用范围:整个组态,包括图形化工程和SCX语言 程序、操作组态 全局变量 作用范围:整个图形化工程,包括各个段落 私有变量 作用范围:只在该段落起作用 输入变量与输出变量 作用范围:只在自定义段落起作用
• 按程序类型分可将段落分类为: 程序段落 模块段落
任务管理
SControl 以系统组态软件中设置的控制周期为
1Ts,即:如果在系统组态软件的组态过程中设 置了控制周期为0.1s,则1Ts = 0.1s. 用户还可通过操作“移到队首”、“上移”、 “下移”、“移到队尾”等操作设置同一运行周 期各程序运行的优先级,即排在队列靠前的同一 运行周期程序比排在队列靠后的程序优先执行。 不同运行周期的程序之间的优先级无法比较。
FBD程序结构
FBD段落:即一幅FBD图 FBD区段:有链路相连的元素的组合 区段起始模块:那些输入只连接变量的模块 区段启动模块:位置最上的起始模块 一个FBD段落可以包含一个或多个FBD区段
FBD执行次序
区段的执行从启动模块开始。 区段内的执行次序由区段内的数据流决定。 段落中区段间的执行次序由区段的启动模块的 位置决定。执行次序由上到下。