S7-200编程出现问题,求助 点击:597 | 回复:1



evals

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:5帖 | 0回
  • 年度积分:0
  • 历史总积分:15
  • 注册:2004年1月11日
发表于:2004-01-11 20:39:00
楼主
用S7-200编程,其中一个产生锯齿波的子程序,从-5v到5v,间隔0.1v,每增加0.1v从aiw4采集信号,并存起来。我用一个指针来指向存储的空间,并用一个值vw54来作为计数用(从-50到50)。现在问题是每次运行时,子程序中vw54就停在了8,不再向下增加,PLC被stop后,重新运行,这时vw54就停在16。而把产生锯齿波的几行networks放到main中就可以实现。请问这是为什么? 附程序: main: NETWORK 1 LD SM0.1 S Q1.0, 1 NETWORK 2 LD I1.2 TON T40, +50 NETWORK 3 LD T40 S V0.0, 1 NETWORK 4 LD V0.0 CALL sawtooth sawtooth: NETWORK 1 //VW54存放计数值,将VB60的地址赋给AC2 // //NETWORK COMMENTS // LD SM0.1 MOVW -50, VW54 MOVD &VB60, AC2 NETWORK 2 //输出到AQW0,并存到AC2对应的地址 // LDW<= VW54, +50 MOVW VW54, VW50 AENO *I +640, VW50 AENO MOVW VW50, AQW0 NETWORK 3 //读AIW值到AC2对应的地址 // LDW<= VW54, +50 MOVW AIW4, *AC2 AENO INCD AC2 AENO INCD AC2 AENO INCW VW54 NETWORK 4 // LDW= VW54, +51 LPS R Q1.0, 1 MOVW -50, VW54 AENO MOVD &VB60, AC2 LRD R T40, 1 LPP R V0.0, 1



芳季

  • [版主]
  • 精华:5帖
  • 求助:5帖
  • 帖子:86帖 | 5336回
  • 年度积分:0
  • 历史总积分:20165
  • 注册:2003年1月31日
发表于:2004-01-11 20:39:00
1楼
我看过了你的程序。但是不知道你想干什么。所以不太清楚你的程序什么是错什么是对。比如主程序 TON T40,+50;子程序 LD SM0.1

热门招聘
相关主题

官方公众号

智造工程师