回复:欢迎拍砖。再论沿指令,实例还原真相

yanxiao

版主

  • 帖子

    12173
  • 精华

    47
  • 被关注

    188

论坛等级:至圣

注册时间:2003-06-06

钻石 钻石 如何晋级?

发布于 2018-01-31 07:20:16

41楼

展开查看
以下是引用Zane在2018-01-30 23:46:20的发言 >38楼

 有兴趣的话请先测试一下我的这个程序


 


 

条件单次执行子程序,且子程序中有沿指令,请给出答案。


再请问,YANXIAO版主的示例五,循环体内的累加计算是在第几个循环被执行的?


1、关于单次,是我们认为的单次,PLC则不这么认为。PLC一运行起来,不知道什么时候才是尽头,几年之后第二次没来,也不会认为这就是单次了。


2、关于循环体内是那个循环时捉到了沿,把STL程序作了修,把更新计数器时的现场保留下来,进行分析:


TITLE=五、实例5A:沿指令在主程序的循环中,记录循环体内沿发生的时刻

// 

// 1、使用SMB34定时产生50ms中断,对M0.0取反,模拟一个10Hz的信号源

// 

// 2、在主程序,每周期扫一次,取M0.0上升沿对VD0加1

// 

// 3、在主程序,做一个循环,在循环内同样对M0.0的上升沿,对VD4加1

// 

Network 1 

LD     SM0.1                       // 第一扫描周期

FILL   0, VW0, 12                  // 清0,6个DW

MOVB   50, SMB34                   // 定时中断,50ms

ATCH   INT0, 10                    // 启用中断

ENI                                // 开中

// 每周期扫一次

LD     M0.0                        // 10Hz信号

EU                                 // 上升沿

INCD   VD0                         // 在上升沿增1

// 做一个For 循环

LD     SM0.0

FOR    AC3, 1, 4

LD     M0.0

EU                                 // 循环体内,对M0.0取沿

INCD   VD4

MOVW   AC3, VW100                  // 把循环值记下来

S      M1.0, 1                     // 做一个更新标记

// 插入5ms延时,让M0.0有机会在循环体内变化

LD     SM0.0

BITIM  AC1                         // 记录时间点

LBL    10

LD     SM0.0

CITIM  AC1, AC0                    // AC0就是延时的时间

LDD>=  5, AC0                      // 不到5ms?

JMP    10

// For循环结束

NEXT

// 看看是什么时候捉到的沿,分析

LDW=   1, VW100

A      M1.0

INCD   VD8                         // 沿在第一循环出现

LDW=   2, VW100

A      M1.0

INCD   VD12                        // 沿在第二循环出现

LDW=   3, VW100

A      M1.0

INCD   VD16                        // 沿在第三循环出现

LDW=   4, VW100

A      M1.0

INCD   VD20                        // 沿在第四循环出现

// 复位更新标记

LD     SM0.0

R      M1.0, 1                     // 复位更新标志

MOVD   VD8, AC2

+D     VD12, AC2

+D     VD16, AC2

+D     VD20, AC2

MOVD   AC2, VD24                   // 把各计数加起来,应等于VD4


观察下来,VD8、VD12、VD16、VD20均有计数,概率基本相等。VW100在1-4之间不断变化。

VD8-VD20的总和==VD4==VD0


评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200 SMART

共有9022条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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