西门子PLC一级代理商,专业代理西门子PLC(S7-200、S7-300等)、变频器、触摸屏

2024-12-04 08:00 120.237.217.245 1次
发布企业
广东湘恒智能科技有限公司商铺
认证
资质核验:
已通过营业执照认证
入驻顺企:
1
主体名称:
广东湘恒智能科技有限公司
组织机构代码:
441304000246495
报价
请来电询价
PLC触摸屏代理商
西门子代理商
伺服电机驱动电缆
西门子一级代理商
变频器直流调速器
西门子一级总代理商
关键词
西门子一级总代理商,西门子总代理商,西门子变频器一级代理商,西门子PLC触摸屏代理商,西门子伺服电机电缆代理商
所在地
惠州大亚湾澳头石化大道中480号太东天地花园2栋二单元9层01号房
联系电话
13922889745
手机
18475208684
经理
向小姐  请说明来自顺企网,优惠更多
请卖家联系我
18475208684

产品详细介绍

西门子 TIA Portal 如何比较两个浮点数相等

概述:

由于浮点数的定义规则,导致浮点数不能通过二进制表示,在浮点数计算过程中,会出现两个值一样的浮点数进行比较相等计算时结果并不相等的情况。下面先设计一个实例说明该问题,并给出解决问题的方法。

第1步:

添加 PLC 设备。

选择西门子 CPU 1214C DC/DC/DC。

设置 IP 地址:192.168.0.1。

子网掩码:255.255.255.0


图1添加 PLC 设备

第2步:

1. 添加全局数据块。命名为:GdbData。


图 2 浮点数全局数据块

在以上全局数据块中添加浮点数类型变量,tagA、tagB、tagC 和 tagSum,分别设置起始值 0.02、0.03、0.05 和0.0。

2. 在主程序 Main 中添加接口变量。

图3 主程序 Main 的接口变量

3. 编写程序,进行浮点数加法计算并将结果进行相等比较。


图4 编写程序

可以看到浮点数 tagA + tagB = 0.05,和 tagC = 0.05作相等比较,比较结果并不相等。

4. 在监控表中监视变量值。


图5 变量监视 - 浮点数


图6 变量监视 - 十六进制

可以看到监视到变量 tagSum 和 tagC 的浮点数值均为 0.05,值相等,而十六进制数值却为 16#3D4C CCCC 和16#3D4CCCCD,值不相等。在以上程序中浮点数相等的比较过程中实际上比较的是十六进制数,得到的结果并不相等。

第3步:

鉴于以上原因,在进行两个浮点数相等比较计算时,可以先计算两个数的差值,判断该差值是否在一个很小的数值范围以内,比如在±1.0E-6 以内,则认为这 两个浮点数相等。


图 7 比较两个浮点数相等

第4步:

功能封装。

定义一个 FC,命名为:RealEqual,对以上功能进行封装,在以后浮点数相等判断时方便直接调用。


图 8 功能封装

封装后的调用结果。


图 9 功能调用


关于广东湘恒智能科技有限公司商铺首页 | 更多产品 | 联系方式 | 黄页介绍
成立日期2022年11月17日
主营产品西门子PLC,西门子模块,西门子触摸屏,西门子变频器,西门子伺服电机驱动,电缆,西门子全系列
公司简介广东湘恒智能科技有限公司主要从事工业自动化产品的集成,销售与维修。致力于为您提供在机械、化工、水泥、电力、环保等领域的电气及自动化技术的完整解决方案,包括自动化产品及系统、工程项目执行及管理、主要过程控制领域技术支持,以及专业的售后服务、培训等。公司本着“以人矢志创新、追求卓越”的工作方针,致力于工业自动化控制领域的产品开发、工程配套和系统集成、销售,拥有丰富的自动为本、科技先导、化产品的应用和实 ...
公司新闻
顺企网 | 公司 | 黄页 | 产品 | 采购 | 资讯 | 免费注册 轻松建站
免责声明:本站信息由广东湘恒智能科技有限公司自行发布,交易请核实资质,谨防诈骗,如有侵权请联系我们   法律声明  联系顺企网
© 11467.com 顺企网 版权所有
ICP备案: 粤B2-20160116 / 粤ICP备12079258号 / 粤公网安备 44030702000007号 / 互联网药品信息许可证:(粤)—经营性—2023—0112