西门子代理商 西门子PLC案例详|西门子200SMATR 如何减少流量累计误差
一、流程描述
1. 一个200SMART模拟量输入模块采集流量瞬时值,通过模拟量转换指令转换为工程量;
2. 初始化相关变量地址并启用定时器中断;
3. 中断程序内实现流量累计计算;
4. 累积到一定值后,复位清空所有数据,重新开始累计。
二、硬件设备
1. 西门子PLC :S7-200SMART CPUSR30 6ES7 288-1SR30-0AA1;
2. 模拟量输入模块:EMAE04(4AI)6ES7 288-1AE04-0AA0。
三、软件
西门子200SMART plc编程软件:STEP7-MicroWIN SMART V2.7版。
四、地址分配
V区地址 | 注释 | 其它地址 | 注释 |
VD0 | 工程瞬时值 | M0.0 | 工程量转换允许信号 |
VD4 | 流量/每分钟 | M0.1 | 复位信号 |
VD8 | 流量整数部分 | AIW16 | 模拟量通道 |
VD12 | 流量小数部分 | ||
VD100 | 整数和 | ||
VD104 | 小数和 | ||
VD108 | 累积和 |
五、程序思路及编写
1. 因有的十进制小数转化为二进制存储时会无限循环,而200SMART只能存储23位单精度浮点数的小数位,当前一个累积值比较大,而现时流量瞬时值较小时,两者相加会因舍弃小数值造成误差,累积次数越多,误差越大。为减小误差,可采用将采集的瞬时值分解成整数和小数两部分,整数部分相加,小数部分相加,两者的和再相加即为累积值,这样可极大的减小累积误差。
2. 首先调用模拟量转换指令将采集到的模拟量通道值转换为实际工程值,假设工程值的上下限分别为0.0、50.0,如图1所示:
图1
3. 接下来调用初始化指令,目的是每200MS采集一次瞬时流量值,因此需要建立定时中断,还需清空所有存储数据的变量地址,如图2所示:
图2
4. 在定时中断程序中做数据的处理,先将瞬时流量分解为整数和小数,然后整数与前一次的整数累计和相加,小数和前一次的小数累积和相加,再将两者的和相加即为当前流量的累积值,需注意整数即整数和也需转化为浮点数,以便于和小数和相加,如图3所示:
图3
5. 为不使累积值超出变量地址的存储范围,过一段时间后需将存储数据的地址清零,再从头开始累计,具体时间可根据现场实际要求而定,如图4所示:
图4
总结
该程序采用将浮点数分离为整数和小数两部分,各自求和后再分别相加,得出当前流量累积值,大大减小了累积误差,适用于要求精度不是很高的场合。
浔之漫智控技术有限公司在经营活动中精益求精,具备如下业务优势:
SIEMENS可编程控制器
1、SIMATIC S7系列PLC:S7-200、S7-1200、S7-300、S7-400、ET-200
2、 逻辑控制模块LOGO!230RC、230RCO、230RCL、24RC、24RCL等
3、SITOP直流电源24V DC1.3A、2.5A、3A、5A、10A、20A、40A可并联.
4、HMI 触摸屏TD200 TD400CK-TP OP177 TP177,MP277 MP377,
德国制造 现货
全新原装 参数
质量保证 保修
价格优势 特价
我公司大量现货供应,价格优势,品质保证,德国原装进口
- PLC案例讲解|西门子S7-1200编写动态秤称重 西门子代理商 2024-01-07
- 西门子PLC开关电源怎么选型号? 2024-01-07
- STEP 7中的编程语言有几种?西门子代理商 2024-01-07
- 西门子PLC编程软件OB10的编程步骤 西门子代理商 2024-01-07
- PLC通讯故障怎么诊断和处理?西门子代理商 2024-01-07
- PLC如何使用MODBUS功能?西门子代理商 2024-01-07
- 西门子PLCS7-300中的局部变量都代表什么意思,具体怎么应用? 2024-01-07
- 西门子PLC与触摸屏通讯连接干扰问题怎么解决? 2024-01-07
- 西门子PLC如何把DB快做成源文件? 2024-01-07
- 西门子PLC编程软件有哪些?西门子PLC编程软件怎么下载? 2024-01-07
- 西门子PLC变量的分类与使用范围西门子代理商 2024-01-07
- 西门子PLC监控定时器复位指令的用法说明 2024-01-07
- 西门子PLC输入输出电源接法 2024-01-07
- 西门子PLC的命名规则是怎样的?西门子PLC型号的含义 2024-01-07
- 西门子PLC模拟量模块干扰问题的解决方法 2024-01-07
联系方式
- 地址:上海松江 上海市松江区石湖荡镇塔汇路755弄29号1幢一层A区213室
- 邮编:201600
- 联系电话:未提供
- 经理:吴悦
- 手机:19514718569
- QQ:2810544350
- Email:2810544350@qq.com