回复:模拟量的实例

Zaxife

  • 帖子

    2450
  • 精华

    31
  • 被关注

    78

论坛等级:至圣

注册时间:2008-07-24

普通 普通 如何晋级?

发布于 2011-07-15 02:50:19

10楼

原理很简单。
比如模拟量输入是4000-32000转换为0-100的话,就要把4000到32000等分为100份,每一份就是(32000-4000)/(100-0)=280,那么输入每增加280,输出就增1。比如输入4280输出就是1,输入4420输出就是1.5,输入32000输出就是100。

所以就推出公式(AI-AImin)/[(AINmax-AINmin)/(AOmax-AOmin)]+AOmin,输入值-输入下限得到输入偏移量,输入偏移量再除每份转换的比例值,就得到了转换后的输出值了。优化一下就是6楼的标准公式了。

LD SM0.0
LPS
MOVD +100, AC0
AENO
-D 0, AC0
AENO
DTR AC0, AC0
LRD
ITD AIW0, AC1
AENO
-D 4000, AC1
AENO
DTR AC1, AC1
LRD
MOVD +32000, AC2
AENO
-D +4000, AC2
AENO
DTR AC2, AC2
LPP
*R AC0, AC1
AENO
/R AC2, AC1
AENO
+R 0.0, AC1
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200

共有33257条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。