设为首页收藏本站积分获取及使用技巧附件上传须知[求助-西门子PLC300/400]如果把浮点数转换成整数

追梦工控论坛|工控论坛-专业的Intouch论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

总共8197条微博

动态微博

查看: 19263|回复: 2

[求助-西门子PLC300/400]如果把浮点数转换成整数

[复制链接]

升级  20.5%

该用户从未签到

发表于 2014-6-12 20:37:33 | 显示全部楼层 |阅读模式

上传分享工控资料得追梦点,下载积分获取办法点击进入 ☆追梦点充值入口
发帖回帖赚金币兑换下载积分。上传附件须知点击进入

×

马上注册,结交更多工控达人,分享经验,让你轻松玩转追梦工控论坛。

已有帐号?  点击登录   或者        

支付宝扫一扫领红包
问题是这样的:半径(整数)存放在MW10中,圆周率是3.14159.用浮点数计算圆的周长,将结果转换成整数。存放在MW14中。
我的想法是先把整数转换成双整数,双整数再转换成实数,然后在用浮点数乘法指令相乘。可是结果如何把浮点数转换成整数,S7-300没有这个指令的。有什么方法可以实现。</p>
        问题补充:
双整数转换成整数是不是在结果中取双整数的低位两个字节的数据呢
让我们联手拒绝网络伸手党,下载积分获取办法&附件上传须知 ☆追梦点充值入口





+1
19265°C
2
  • feizi
  • gMTrLjUr
过: 他们

升级  34%

该用户从未签到

发表于 2014-6-12 21:16:10 | 显示全部楼层
怎么会没有呢!
ROUND :将浮点数转化为四舍五入的双整数
CEIL:将浮点数转化为大于等于它的最小双整数
FLOOR:将浮点数转化为小于等于它的最小双整数
TRUNC:将浮点数转化为舍去小数部分的双整数
然后在用双整数转化为整数啊,不过需要注意数据溢出。
对于你补充的问题:如果双整数的数据范围没有超过低字节的范围的话,你这样取可以。但是如果超过了,你取到的数就不是原来的数,因为数据溢出了。建议你不要这样操作,而要用DI_I的指令,因为这个指令在执行的时候会判断是否有溢出,然后你根据标志位是可以判断的,而你自己直接去低字的话,你不知道有没有溢出。
                                                                                                                                                                                                                                                              
                                                        

升级  33.5%

该用户从未签到

发表于 2014-6-12 21:34:12 | 显示全部楼层
l mw10
itd
dtr
sqr
l 3.14159
*r
rnd
t md14
                                                                                                                                                                                                                                                                                                                                   
                                                                                                                                                                                                            rnd四舍五入,
rnd-小于这个实数的最大整数,
rnd+大于这个实数的最小整,
trunc舍尾。

补充问题:是的,但是要注意你的双整数范围比整数的大,所以你的双整数如果超出整数范围则溢出了。
                                                                                                                                                                                                                                                                                                                                   
                                                                                                                                                                                                            1、如何把浮点数转换成整数
     使用ROUND指令将实数转换成双整数MD12,这样MW14中存储的就是你需要的整数了
2、双整数转换成整数是不是在结果中取双整数的低位两个字节的数据呢
     是的
*滑块验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

请珍惜自己的ID,严禁发布垃圾水贴,诸如adsf......顶......纯表情......多次重复回帖刷积分......轻则删帖警告,重则封禁!★请分享资料、经验或者赞助论坛,贡献一份力量★

关闭

最新活动上一条 /1 下一条

小黑屋|手机版|追梦工控论坛|工控论坛-专业的Intouch论坛 ( 皖ICP备10012005号 )|网站地图

GMT+8, 2025-5-12 10:03 , Processed in 0.204524 second(s), 20 queries , Gzip On, APCu On.

Powered by Dreamyiyi

© 2009-2025 工控论坛

快速回复 返回顶部 返回列表