水管流量精确计算

2015-06-30 9:13:47 人评论 次浏览 分类:永宏应用案例

【控制要求】水管直径以 mm为单位,水的流速以 dm/s(1分米/秒)为单位,水流量以 cm3/s(1毫升/秒)为单位。水管横截面积=πr2=π(d/2)2,水流量 =水管横截面积 ×流速。要求水流量的计算结果精确到小数后的第 2位。
【元件说明】
PLC 元件 控制说明
X0 启动计算
D0 水管直径(单位: mm,假设 10mm)
D10 水管流速(单位: dm/s,假设为 25dm/s)
R3004 水管横截面积运算结果(单位: mm2)
R3006 水管流量运算结果(单位: mm3/s)
R3008 水管流量运算结果(浮点型)(单位: mm3/s)
R3010 水管流量运算结果(浮点型)(单位: cm3/s)
【控制程序】【程序说明

  1. 涉及到小数点的精确运算时,一般需用浮点数运算指令,但用浮点数运算指令需要转换 ,比较繁琐。本例先用整型四则运算指令放大运算数据,再将运算结果转换成浮点数,就可实现小数点的精确运算,如此一来便只需一个转换指令,让运算过程简单而准确。
  2. dm、cm、mm都有用到,所以必须统一单位,保证符合结果需要,程序中先将所有单位统一成 mm,最后将单位变成需要的 cm3
  3. 计算水管横截面积时需要用到 π,π≈3.14,在程序中没有将 dm/s(分米/秒)扩大 100倍,变成 mm单位,而却把 π扩大了 100倍,变为 314,这样做的目的可以使运算精确到小数后的 2位。
  4. mm3/s 除以 1000变成 cm3/s,1cm3=1ml,1 升=1000毫升=1000cm3=1dm3
  5. D0为 10mm,水流速 D10为 25dm/s,则水管水流量运算结果为 196250 mm3/s,转换成浮点数再除以 1000,得到 196.25 cm3,精确到小数点后 2位。