回复:求变量在20个扫描周期内的平均值

天枰

  • 帖子

    315
  • 精华

    10
  • 被关注

    15

论坛等级:侠士

注册时间:2007-08-09

普通 普通 如何晋级?

发布于 2007-11-01 13:59:19

0楼

//初始化部分,放入启动程式中
//MW0 存放下标
//MW2..MW40存放20次采样数据
//MW42平均值
L PIW 0
T MW 42 //第一次采样值当做平均值
//填充采样初值
L 20
_000: T LW 0 //局部变量
L 16
*I
L P#M 2.0
+D
LAR1
L PIW 0
T MW [AR1,P#0.0]
L LW 0
LOOP _000
//设定下一采样值存放位置
L 1
T MW 0 //设定初始下标为1


//以下为采样并计算平均值程式,放到定时中断中,中断时间为采样周期

L MW 0 //下标
L 1
>=I
JC _001
T MW 0
_001: TAK
L 20
<=I
JC _002
T MW 0
_002: NOP 0

//MW22 存放平均值
L MW 0
L 2
*I
L 8
*I
L P#M 2.0
+D
LAR1
LAR2
L MW 42
ITD
L 20
*I
L MW [AR1,P#0.0]
ITD
-D
L PIW 0 //本次采样值
T MW [AR2,P#0.0]
ITD
+D
L 20
/D
T MW 42
//修改下标
L MW 0
L 1
+I
L 20
<=I
JC _003
L 1
T MW 0
_003: NOP 0
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54706条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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