帮忙调试程序!!!急

已锁定

黑马

  • 帖子

    13
  • 精华

    0
  • 被关注

    0

论坛等级:新手

注册时间:2004-08-24

普通 普通 如何晋级?

帮忙调试程序!!!急

462

6

2004-09-14 09:10:54

一个液位PID控制程序。S7200+EM235,模拟量输入为1~5V,对模拟量采样(10次)去掉最大最小,再取平均。
采样值在VD10,滤波输出VW20,PID控制,P:VD112、I:VD120、D:VD124。
帮忙看看有什么不妥的,帮我改一下。很着急



Main
LD SM0.1
CALL SBR_0

SBR_0
LD SM0.0
MOVR VD50, VD104
MOVR DW#0.1, VD112
MOVR DW#0.1, VD116
MOVR DW#0.3, VD120
MOVR DW#0.0, VD124
MOVB B#100, SMB34
ATCH INT_0, B#10
ENI


INT_0
LD SM0.0
MOVW AIW0, VW12

LDW>= VW12, W#+0
MOVW W#+0, VW10
NOT
MOVW DW#+65535, VW10

LD SM0.0
+D VD10, VD14
INCW VW0
AW>= VW0, W#+1
MOVW VW12, VW30 //最大值
MOVW VW12, VW40 //最小值

LDW> VW12, VW30
MOVW VW12, VW30 //存最大值

LDW< VW12, VW40
MOVW VW12, VW40 //存最小值

LDW>= VW0, W#+10
CRETI

LD SM0.0
MOVW VW30, VW12
-D VD10, VD14 //减最大值
MOVW VW40, VW12
-D VD10, VD14 //减最小值
SRD VD14, B#3 //求8次平均
MOVW VW16, VW20 //存平均值
MOVW W#+0, VW0 //采样次数清零
MOVD DW#+0, VD14

LD SM0.0
ITD VW20, AC0
DTR AC0, AC0
/R DW#32000.0, AC0
MOVR AC0, VD100

LD SM0.0
PID VB100, B#0

LD SM0.0
MOVR VD108, AC0
*R DW#32000.0, AC0
ROUND AC0, AC0
DTI AC0, AC0
MOVW AC0, AQW0
MOVR AC0, VD60
帮忙调试程序!!!急 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200

共有33274条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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