《ABB_ 800xA出料阀门控制程序》由会员分享,可在线阅读,更多相关《ABB_ 800xA出料阀门控制程序(15页珍藏版)》请在金锄头文库上搜索。
1、System 800xA trainingExerciseExercise 3.5 出料阀门控制程序3.5.1 练习描述在ST语言编辑器中调用功能块实例,编写出料阀控制程序。本练习中,我们将使用和进料阀门相同的功能块ValveUni ,并和进料阀控制程序一样,声明全局变量和局部变量。3.5.2 练习步骤3.5.2.1 创建出料阀V2控制程序F 打开Sxx_ReactorApp Application中的Tank Program。F 创建一个新的代码块“Outlet_Valves”,并选择编程语言为ST结构化文本。1. 鼠标右键点击编辑器底部的代码块标签,选中“Insert”上下文菜单,插入一个
2、新的代码块,命名为“Outlet_Valves”,并选择编程语言为ST结构化文本。F 和进料阀控制程序一样,声明一些全局变量用于连接阀门的控制指令,以及阀门的开关状态反馈信号。检查无误后,保存并关闭Sxx_ReactorApp 编辑器。1. 在Application编辑器的变量声明中,我们除了可以手动输入全局变量之外,还可以使用类似于MS Excel中的查找/替换、单元格,整行和整列选择等功能。下图所示为在Sxx_ReactorApp 编辑器中,选中变量名称中包含V1和V3的6行后,通过鼠标右键菜单复制。2. 将光标放到变量表的最后,单击鼠标右键选择“Paste”粘贴。3. 高亮选中新粘贴的单
3、元格,选择“Edit - Replace”菜单命令。4. 在“Replace”对话框中,用“V2”替换所有“V1”。OK5. 再用“V6”替换所有“V5”。6. 检查全局变量列表如下图所示:F 连接变量到相应的I/O模件通道。1. 变量 gV2_Ord 和 gV6_Ord 连接到Profibus总线上的第1个DO801模件,V2阀的开指令接第4通道,V6阀的开指令接第2通道。2. 复制,粘贴或直接输入对应的I/O Description 文本描述3. 检查DO801模件通道的变量连接如下图所示: 4. 阀门的位置反馈信号全部接在Profibus总线上的DI801模件上,其变量连接如下图所示:
4、F 在Tank Program的“Outlet_Valves”代码块中插入一个 ValveUni 功能块实例,并命名为Sxx_V2。1. 在ST语言中插入功能块之前,需先声明该功能块的一个实例。打开Tank Program,选择声明区的Function Blocks标签页,在名称栏输入功能块实例名为“Sxx_V2”,功能块类型为“ValveUni”。2. 这时可以看见,“Sxx_V2”已经添加到了Control Builder M 的 Tank program 下面了。F 在 Tank Program中声明局部变量。1. 使用查找/替换工具。按下图所示证明局部变量。F 连接全局变量和局部变量到
5、功能块Sxx_V2 的参数。1. 将光标放到代码区的空白位置,直接输入或按Ctrl +J键选择Sxx_V2 ,输入左括弧“(”。2. 弹出功能块参数列表3. 连接参数到变量。按Ctrl +J键后在文本框中输入V2,之间跳到以V2开头的变量位置。4. 如下图所示连接6个参数到变量。5. 保存并关闭参数列表窗口后,功能块程序如下图所示: 3.5.2.2 创建出料阀V6控制程序F 复制 Sxx_V2,粘贴到代码块并重命名为Sxx_V6 ,并用V6替换所有变量中的V2。声明新的局部变量用于Sxx_V6 。1. 使用查找/替换局部变量如下图所示:2. 和Sxx_V2一样,声明新的功能块实例 Sxx_V6 。3. 保存。4. 在代码区高亮选中 Sxx_V2 功能块,复制。5. 将光标放到代码区的最后,粘贴。6. 修改粘贴的文本以调用 Sxx_V6 功能块,并使用查找/替换菜单命令,修改所有变量名为V6的变量。NOTE! 通过Replace按钮一次替换一个变量,不要用Replace all 按钮以免替换前面V2功能块的变量。7. 替换后的程序代码如下:8. V2和V6控制程序如下图所示:9. 加载应用程序并在线。3.5.2.3 功能检查F 通过交互式窗口操作出料阀V2和V6,观察液位的变化。 15