S7 200 整数转换为双整数的问题 点击:5753 | 回复:6



ruandejin

    
  • 精华:0帖
  • 求助:12帖
  • 帖子:12帖 | 44回
  • 年度积分:0
  • 历史总积分:407
  • 注册:2011年4月25日
发表于:2012-11-07 12:45:02
楼主

有个问题 一直在困扰我 S7 200的模拟量输入/输出模块 为什么要将输出值进行整数变双整数处理

这样做的目的是什么 我想了一下 是不是只是进行符号位扩展 一般而言 在模拟量处理完成后 要将

双整数再转为整数 用于在显示屏上显示!




lgj3388

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 236回
  • 年度积分:0
  • 历史总积分:925
  • 注册:2003年8月13日
发表于:2012-11-07 14:58:53
1楼

方便计算,保证精度。

例如两个模拟量相乘的结果会超过整数的取值范围,整数寄存器是放不下的。

gsja

  • 精华:0帖
  • 求助:1帖
  • 帖子:5帖 | 175回
  • 年度积分:0
  • 历史总积分:730
  • 注册:2008年8月22日
发表于:2012-11-18 22:33:00
2楼

引用 lgj3388 的回复内容:方便计算,保证精度。例如两个模拟量相乘的结果会超过整数的取值范围,整数寄存器是放不下的。




同意

 

#天涯

  • 精华:0帖
  • 求助:3帖
  • 帖子:100帖 | 2953回
  • 年度积分:0
  • 历史总积分:8816
  • 注册:2005年3月02日
发表于:2012-11-19 14:45:02
3楼

方便计算,保证精度。

glenxu

  • 精华:0帖
  • 求助:2帖
  • 帖子:28帖 | 592回
  • 年度积分:0
  • 历史总积分:1862
  • 注册:2004年1月13日
发表于:2013-03-02 19:59:16
4楼

反对!

是因为要转换为实型,而转化为实型只有双整型转换为实型的指令,没有更好的办法。这是S7-200的短板。

S7-300有FC105和其它命令,所以有点区别。

chinacupor

  • 精华:2帖
  • 求助:13帖
  • 帖子:25帖 | 845回
  • 年度积分:0
  • 历史总积分:2751
  • 注册:2013年2月16日
发表于:2013-03-03 00:03:37
5楼
引用 glenxu 的回复内容: 反对!是因为要转换为实型,而转化为实型只有双整型转换为实型的指令,没有更好的办法。这是S7-200的短板。S7-300有FC105和其它命令,所以有点区别。


支持你!要转实数,就非得转双整数。

 

我做了3个工具:

1、AIW(AQW)--->显示值,中间输出一个归一值,最后再输出一个显示值。

2、显示值---->归一值

3、归一值---->输出值AQW。

有了这三个偷懒工具,效率高多了。。。

ntplc2017

  • 精华:0帖
  • 求助:0帖
  • 帖子:38帖 | 375回
  • 年度积分:0
  • 历史总积分:685
  • 注册:2018年5月11日
发表于:2018-08-13 11:14:47
6楼

模拟量的原始值, AIW和AQW 都属于整数, 所以首先要使用整数进行运算,  在运算过程中, 有符号整数值的范围是-32768~ 32767  如果将一个整数32000直接做乘法计算  X 5  那么得到的值是16万,超出了整数所能显示的范围, 所以一般可以把计算做转换之后进行计算,  最好是转成浮点数后再计算, 显示在屏上显示那种,基本都可以的。


热门招聘
相关主题

官方公众号

智造工程师