|
image-20240422155931318
声明:本文中分享LBC库内容,及项目案例;均来自西门子官方工业学习平台网站,请遵守西门子使用许可;本样例仅供学习测试使用,请谨慎用于实际生产中,若有此引发的任何风险,将由使用者自行负责;
1.1 通用描述
SMART 的基本控制库(LBC)提供了基本的控制模块,根据西门子编程风格指南和PLC Open 为标准化概念编程。
1.2 硬件及软件需求
本应用软硬件的需求为了使得本应用案例成功运行,必须满足以下硬件和软件需求。
硬件
S7-200 SMART
CPU 控制器:• SIMATIC S7-200 SMART 产品家族软件• STEP 7-Micro/WIN SMART
在工业自动化领域,经常需要对各种参数进行测量和检测。不同的传感器和设备通 常具有不同的量程范围。量程转换可以将不同量程范围的数据进行转换和适配,能 够准确的基于转换后的数据做出相应的控制和调整。该库可以用于处理工程量和模拟量的转换。
在s7-200 smart 编程软件安装完成后,系统自带模拟量转化库S_ITR、S_RTR、S_RTI三个功能块,可以完成基本的模拟量与工程量的转换,本文中分享的“升级库”是此基础上添加了高报、低报、高高报、低低报报警输出、故障复位功能,同时对输入信号输出信号进行上下限限制处理,增加错误状态输出等功能;基本做到了一个功能块解决常用的模拟量处理程序;
该升级后量程转换库包含3个功能块:
SC_ITR:实现缩放模拟量输入的值转换为工程量的值。SC_RTR:实现浮点数到浮点数的转换。SC_RTI:实现缩放有意义的单位值(温度,高度,压力.....),将其转换为硬件模拟 输出值。
打开“STEP7-Micro/WIN SMART” 软件,在左侧导航器中,右键“库”,选择“打开库文件夹”选项
image-20240419143316448
将下载后的库文件“ProcessScaling.smartlib”,复制到库文件夹中;
image-20240422140038585
在“STEP7-Micro/WIN SMART” 软件,左侧导航器中,右键“库”,选择“刷新库”即可看到库添加成功;
image-20240422140256026
模拟量输入整数值转换为工程量浮点数值
通常应用于将模拟量输入整数值(4~20ma,0-10V等)转化为实际工程量值如:温度、压力、流量等实际值;
image-20240422142901523
模拟量输入浮点数值转换为工程量浮点数值
由于模拟量输入通常整数值,浮点数转换为浮点数通常应用于对浮点数数据进行缩放例如工程量单位转换、数字放大或缩小等操作;
image-20240422143138128
模拟量输入浮点值转换为模拟量输出整数值
通常应用于将过程值转化为数字量整数值,控制模拟量模块输出(4-20ma,0-10V等),例如变频器频率给定、阀门开度给定等;
image-20240422144245072
引脚输入参数说明
参数 | 类型 | 数据类型 | 描述 | EN | BOOL | 程序块使能,使用 SM0.0 | Input | IN | INT / REAL | 需要缩放的输入值 | ISH | IN | INT / REAL | 输入值的范围上限 | ISL | IN | INT / REAL | 输入值的范围下限 | OSH | IN | REAL / INT | 输出值的范围上限 | OSL | IN | REAL / INT | 输出值的范围下限 | LimitAH | IN | REAL / INT | 输出值的报警上限 | LimitWH | IN | REAL / INT | 输出值的警告上限(LimitAH>LimitWH) | LimitWL | IN | REAL / INT | 输出值的警告下限 | LimitAL | IN | REAL / INT | 输出值的报警下限(LimitAL<LimitWL) | ack | IN | BOOL | 报警确认 | stauts | INOUT | BYTE | 错误代码 | static | INOUT | BYTE | 过程变量 |
引脚输出参数说明
参数 | 类型 | 数据类型 | 描述 | Output | OUT | REAL / INT | 缩放后的输出值 | AH | OUT | BOOL | 到达报警上限 | WH | OUT | BOOL | 到达警告上限 | WL | OUT | BOOL | 到达警告下限 | AL | OUT | BOOL | 到达报警下限 | error | OUT | BOOL | 报错 |
错误代码说明
报错状态值 | 描述 | Bit 0 | 为 1 时表示,输入值小于输入范围下限(input<ISL) | Bit 1 | 为 1 时表示,输入值大于输入范围上限(input>ISH) | Bit 2 | 为 1 时表示,输入范围下限大于输入范围上限(ISL>ISH) | Bit 3 | 为 1 时表示,输出范围下限大于等于输出范围上限(OSL≥OSH) | Bit 4 | 为 1 时表示,输出值的警告下限大于输出值的警告上(LimitWL>limitWH) | Bit 5 | 为 1 时表示,输出值的报警下限大于输出值的报警上限(LimitAL>LimitAH) | Bit 6 | 备用 | Bit 7 | 备用 |
该升级后的功能块可以替代原基础模拟量处理,集成了高低限报警,报警复位等功能;可以满足常规的模拟量处理需求;但是在小编看来,该库中有几点可以优化:
报警输出没有做“消斗”处理,实际应用中可能会有“误报”
即没有对信号进行延时处理,这对于有干扰的场合例如液位控制、压力控制过程中容易产生“误报”,需要谨慎使用;有兴趣的朋友可以讨论如何实现“消斗”,评论区留言;
触发报警,使用SET置位,对于需要自复位的场景不适用
小编建议是取消报警SET操作,直接做对比输出引脚,报警功能集中到程序报警块中集中处理;
转换后的值通常需要在画面中显示,基于 Smart Line 示例画面集成了该库中所有功能。
显示转换后的输出实时值指示是否已超过报警或警告的上限值 报警:红色 警告:橙色指示是否已超过报警或警告的下限值报警确认按钮设定输入及输出范围值设定报警及警告限值仿真外部输入用
如果您觉得文章对您有帮助,欢迎评论、点赞、收藏,加关注!您的支持将是小编最大动力
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?注册哦
x
|