Lab material for RSLogix5000 HuaZhang Electric Custom Training
Lab3- 1 -
Lab 3. RSLogix5000 软件编程实例
实验主题:
创建项目(具体步骤参见实验一和实验二)
z 创建 RSLogix5000 工程
z 配置模块
z 建立任务
z 建立程序和例程
z 建立 TAG
指令应用
z 位指令 — XIC、XIO、OTE、OTL、OTU、ONS 等
z 计时器和计数器 — TON、TOF、CTU、CTD、RES 等
z 输入输出指令-MSG 等
z 比较指令 — CMP、LIM、EQU、LES、GRT 等
z 数据传送指令 — MOV、MVM、COP 等
z 函数计算指令 — CPT、ADD、SUB、MUL、DIV、CLR 等(注意溢出
等问题)
z 程序控制指令 — JMP、JSR、RET 等
z PID 指令—— 张力控制(手动自动调节、KP、KI 的设定、跟踪)
Tag 名的定义及程序设计方法: 怎样优化程序,提高程序的可读性
z Tag 命名的规范和标准
z 程序命名的规范
z 压缩程序,同一功能用统一程序
z 减少跳转
如何编写大规模、复杂的程序
z 做好编程准备工作,了解程序的需求性
z 理清思路,做好功能分块
z 从单个设备开始,从最基本的逻辑开始
z 保证单动正确,然后加上连锁
z 安全第一,模拟运行
如何保证安全
z MCC 测试位置运行
z 软件 I/O 强制
z 停止第一
z 必须有手动功能
Lab material for RSLogix5000 HuaZhang Electric Custom Training
Lab3- 2 -
程序的修改
z 尽量避免下载程序,大规模在线修改技巧
RSLogix5000 指令应用实例:
一、位指令
XIC(检查是否闭合)和 XIO(检查是否断开)是输入指令,OTE(输出激
励)、OTL(输出锁存)和 OTU(输出解锁)是输出指令。位指令要求操作数的
数据类型都必须是 BOOL。
应用程序如下图所示(编程方法参见实验二):
当控制器处于运行或者远程运行状态时,可以在标记数据库的 Monitor(监
视)页面中或者通过右键菜单改变某一个中间变量(非 I/O 点,指由用户自己定
义的标签)的值。
点击这里置位或复
位 Limit_switch_1
Lab material for RSLogix5000 HuaZhang Electric Custom Training
Lab3- 3 -
当输入条件发生变化时,测试输出结果如下所示:
①
如果 Limit_switch_1=1 并且 Limit_switch_2=0,则 Light_1 灯亮;如果
Limit_switch_3=1,则 Light_2 灯亮,并且锁存该状态,即使下一轮程序扫描到
Limit_switch_3=0,Light_2 灯依然点亮,如测试结果②中的梯级 1的输出状态所
示。
②
如果Limit_switch_1=1 并且Limit_switch_2=1,则回路中的常闭触点被打开,
Light_1=0,灯灭。
③
如果 Limit_switch_4=1,则 Light_2 灯的输出锁存被解除,灯灭。
注意:程序的一行梯级中,可以只有输出指令,但不能只有输入指令,否则
将产生逻辑错误。
Lab material for RSLogix5000 HuaZhang Electric Custom Training
Lab3- 4 -
二、计时器和计数器指令
TON(延时导通计时器)、CTU(加计数器)、RES(复位指令)等指令都是
输出指令。
计时器指令要求操作数的数据类型必须是计时器结构体 TIMER,该结构体
中包含的元素如下表:
元素 数据类型 说明
.EN BOOL 使能位-标识计时器指令被使能
.TT BOOL 计时位-标识计时操作正在进行
.DN BOOL 完成位-标识计时操作已完成
.PRE DINT 预置值-用户预设的计时要求值
.ACC DINT 累加值-标识指令被使能后经过的时间
RSLogix5000 中计时器的时间基为 1ms,例如,如果用户需要一个 2s 的计
时器,应当将预置值设置为 2000。
计数器指令要求操作数的数据类型必须是计数器结构体 COUNTER,该结构
体中包含的元素如下表:
元素 数据类型 说明
.CU BOOL 加计数使能位-标识加计数器指令被使能
.OV BOOL 溢出位-标识计数值超过上限值 2147483647
.DN BOOL 完成位-标识计数值已等于或大于预设值
.PRE DINT 预置值-用户预设的计数要求值
.ACC DINT 累加值-标识指令被使能已经计过的次数
TON 和 CTU 指令的应用程序如下所示:
Lab material for RSLogix5000 HuaZhang Electric Custom Training
Lab3- 5 -
当输入条件发生变化时,测试输出结果如下所示:
①
如果 Limit_switch_1=1,计时器 Timer_1 开始计时,Timer_1.TT 位被置 1,
Light_1 灯亮。
Lab material for RSLogix5000 HuaZhang Electric Custom Training
Lab3- 6 -
②
当计时器计时完成,Timer_1.DN 位被置 1,Light_2 灯亮,计数器 Counter_1
计数一次。
③
当计数器计数达到 5 次后,计数工作完成,Counter_1.DN 位被置 1,Light_3
Lab material for RSLogix5000 HuaZhang Electric Custom Training
Lab3- 7 -
灯亮。
④
如果 Limit_switch_2=1,计数器 Counter_1 被复位。
三、比较指令
CMP(比较表达式指令)、EQU(等于指令)、GRT(大于指令)、LES(小
于指令)、LIM(极限比较指令)等指令都是输入指令。
比较指令的应用程序如下图所示:
Lab material for RSLogix5000 HuaZhang Electric Custom Training
Lab3- 8 -
测试输出结果如下所示:
①
②
对于极限比较指令 LIM,如果 Low Limit < High Limit,则当测试值等于或
在 Low Limit 和 High Limit 之间时,Light_4 灯亮;如果 Low Limit > High Limit,
则当测试值等于或在 Low Limit 和 High Limit 之外时,Light_5 灯亮。
四、计算指令
ADD(加法指令)、SUB(减法指令)、MUL(乘法指令)、DIV(除法指令)、
CPT(表达式计算指令)等指令是输出指令。
计算指令的应用程序及测试结果如下图所示:
Lab material for RSLogix5000 HuaZhang Electric Custom Training
Lab3- 9 -
在使用计算指令的时候,要特别注意溢出问题,如测试程序的梯级 2 的输出
结果所示,Value3×1000 所得的结果超出了 RSLogix5000 中整形数据的数值范
围(最大值为 2147483647),因此发生了溢出,得到了不正确的计算结果。
计算指令支持混合数据类型变量的使用,但是这样会损失精度,也可能发生
取整误差,而且指令执行时间长。最优的数据类型是 DINT 或 REAL。
Lab material for RSLogix5000 HuaZhang Electric Custom Training
Lab3- 10 -
五、数据传送指令
MOV(传动指令)、COP(文件复制指令)等指令是输出指令。
MOV、COP 等指令支持混合数据类型变量的使用,但是这样会损失精度,
也可能发生取整误差,而且指令执行时间长。最优的数据类型是 DINT 或 REAL。
数据传送指令的应用程序如下图所示:
当输入条件发生变化时,测试输出结果如下所示:
①
Lab material for RSLogix5000 HuaZhang Electric Custom Training
Lab3- 11 -
如果 Limit_switch_1=1,则 Timer_1 结构体被复制到 Array_1 数组中,覆盖
的目标地址为 Array_1 的前三个元素。
②
如果 Limit_switch_2=1,则 Timer_1 结构体的元素 0、元素 1 和元素 2 分别
被复制到 Value0、Value1 和 Value2 中。
Lab material for RSLogix5000 HuaZhang Electric Custom Training
Lab3- 12 -
RSLogix5000 的软件编程实例:
简单的题目,经典的道理
题目 1:编写程序产生一个方波
用于重复性控制条件
题目 2:编写程序产生一个脉宽可变的方波
用于可变可调的比例控制
题目 3:无需手动控制,0~3 号灯循环点亮,每个灯亮 1S
题目 4:0~4 号灯循环亮,每个灯亮 1S,循环 5 次结束。规定地址
start:循环开始;stop:循环停止;OUT0~4 表示灯
如果有开关量输出模块输出到实际输出地址中,观察模块的状态灯。
适用于周期性工作的设备,如果某些排渣阀
题目 5:写出传动程序中的爬行运行切换的程序。
考察指令的灵活运用,是否实现功能,程序是否简单易读
题目 6:编写一阀门控制,完成自动循环动作,(有多个逻辑,手动控制,液位
连锁,电机连锁,计时连锁,可选)。考察学员如何编写程序实现多个条件的逻
辑控制。
Tag 自己定义,要求简单易懂。程序逻辑明了
例:除砂器冲洗程序:
通过现场控制面板“本控/DCS”按钮控制中浓除砂器,当打到 DCS 时,起
动按以下程序:
1、 检查顶部排渣阀门是否关闭,如果关闭,请到下一步;
2、 打开底部排渣阀;
3、 打开冲洗水阀;
4、 延时 15 秒;
5、 关闭底部排渣阀;
6、 延时 45 秒;
7、 关闭冲洗水阀;
8、 检查底部排渣阀是否关闭,如果关闭,请到下一步;
9、 打开顶部排渣阀;
10、 600 秒后;
Lab material for RSLogix5000 HuaZhang Electric Custom Training
Lab3- 13 -
11、 关闭顶部排渣阀;
回到步骤 1
编写程序应掌握一个原则,就是直接输出地址只能出现一次。即使逻辑正确
也要避免同一直接输出地址出现多次。
题目 7:编写 MCC 电动机启动程序。
地址:IN0:ready
IN1:fault
IN2:running
OUT0:start_command
本题有简单----复杂的编辑方法,由简单到复杂体现到编程人员的考虑问题的
全面性
考察:程序的完整性,安全性(延时自动停止),全面的故障分类。
题目 8:有 A,B 两台电机,现在客户要求:A 停止时 B 要停止;B 停止时 A 要
停止。
地址:IN0:A 电机 ready 信号
IN1:A 电机 running 信号
IN2:A 电机 fault 信号
IN3:B 电机 ready 信号
IN4:B 电机 running 信号
IN5:B 电机 fault 信号
OUT0:A 电机输出
OUT1:B 电机输出
可行性分析!
题目 9:有一油泵站,有两台电动机 A,B 互为备用,只有一组启动/停止按钮,
要求和油压信号连锁,实现手动和自动启停,两台要循环启动,增加使用寿命。
地址:IN0:A 电机 ready 信号
IN1:A 电机 running 信号
IN2:A 电机 fault 信号
IN3:B 电机 ready 信号
IN4:B 电机 running 信号
IN5:B 电机 fault 信号
IN6:油压连锁信号,1=自动启动,0=自动停止
OUT0:A 电机输出,OUT1:B 电机输出
题目 10:编写一浓度 PID 控制指令。
完成 PID 调节---手自动切换----正反向调节-----输出限幅
考察:有没有手动/自动切换,切换有没有做到无扰动,有没有考虑连锁等
Lab material for RSLogix5000 HuaZhang Electric Custom Training
Lab3- 14 -
题目 11:编写流量的累积值
考察:时间基准的应用,学会正确应用中间值,清零是否合理,有无防止溢出。
题目 12:有 0~9 号电机,由外部信号控制组启动和停止,按顺序间隔 5S 启动。
编写程序
考察:对比较大的程序的编写,启动/停止是否为脉冲,运行状态信号是否
作为连锁条件,是否考虑到长时间启动不成功自动停止,外部连锁信号是否滤波
等
例:底浆粗选工段
本工段设备包括:2#碎后池、2#碎后池搅拌器 M20、粗筛供浆泵 M21、一段
粗筛 M53、浮选筛浆机 M24、稳位箱、排渣分离机 M25、二段粗筛 M26, 浮选筛进
料池搅拌器 M22, 浮选筛浆机供浆泵 M23。
DCS 总开机程序:
1、 联锁投入,总起动;
2、 设定二段粗筛良浆出口阀门 FV3204 0%开度,排渣阀 50%开度;
3、 设定浮选筛浆机良浆出口阀门 FV3205 0%开度,轻渣排渣阀 FV3203
100%开度;
4、 设定一段粗筛良浆出口阀门 FV3202 0%开度,排渣阀 FV3201 50%开度;
5、 HC3201 阀开,HC3205a 阀开;
6、 起动排渣分离机电机 M3207;
7、 延时 5秒,起动二段粗筛电机 M3208;
8、 延时 5秒,二段粗筛排渣阀回复动流量自动控制位置上,二段粗筛良浆出
口阀在 15 秒内打到预设的 25%的开度,然后打动流量自动控制位置上。
9、 延时 5秒,起动浮选筛浆机电机 M3205;
10、 延时 5秒,起动一段粗筛电机 M3201;
11、 浮选筛进料池液位等于或大于 30%;
12、 浮选筛进料池搅拌器起动;
延时 5秒,起动浮选筛浆机供浆泵电机 M3204;
13、 浮选筛浆机良浆出口阀门 15 秒内打到预设的 25%的开度上,然后打到流
量自动控制位置上,浮选筛浆机排渣阀回复到流量自动控制位置上;
14、 延时 3秒,起动 2#碎后池搅拌器电机 M3110;
15、 延时 5秒,起动一段粗筛供浆泵电机 M3111;
延时 5秒,一段粗筛排渣阀回复动流量自动控制位置上,一段粗筛良浆出口阀在
15 秒内打到预设的 25%的开度,然后打动流量自动控制位置上。
联锁:
Lab material for RSLogix5000 HuaZhang Electric Custom Training
Lab3- 15 -
1、 如果一段粗筛供浆泵电机 M3111 停止,一段粗筛良浆阀将马上关闭,且一
段粗筛主电机只能运行 2min;
2、 如果一段粗筛主电机M3201停止,一段粗筛供浆泵电机M3111将不能起动;
3、 如果二段粗筛电机 M3208 或浮选筛浆机电机 M3205 停止,浮选筛供浆泵电
机 M3204 将停止;
4、 如果浮选筛浆机供浆泵电机 M3204 停止,浮选筛浆机电机 M3205 及二段粗
筛电机 M3208 只能运行 2min;
5、 如果以下任何电机停止超过 15 秒,所有其后的电机也将停止:
a:分级筛供浆泵电机 M3211;
b:一段粗筛供浆泵电机 M3111;
6、 如果以下任何电机停止超过 15 秒,所有其后的电机也将停止:
a:浮选筛供浆泵电机 M3204;
b:一段粗筛供浆泵电机 M3111。
Lab material for RSLogix5000 HuaZhang Electric Custom Training
Lab3- 16 -
Note:
本文档为【实验3_RSLogix5000软件编程实例v1.0】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。