浅谈可编程控制器扫描周期
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
希望与各位工控朋友们一起学习工控。 automationc@
‐‐源码分析师‐‐工作室‐‐ QQ:78419972 所以图 1.2 的程序要想满足控制要求,我们可以作如下修改。如图 1.4
希望与各位工控朋友们一起学习工控。 automationc@
‐‐源码分析师‐‐工作室‐‐ QQ:78419972
希望与各位工控朋友们一起学习工控。 automationc@
回答显然是不能的。为什么这样说呢? 根据 PLC 扫描周期的特性,如果把 21‐23 步放在 20 步后。当 T0 得电出的 n 周期里,T0 的常开触点得电,但是 X12 没有得电,故 M1 不得电。当 n+1 个周 期到来后,当物体运行到 X12 下方,X12 得电。所以当程序在 n+1 个扫描周期中, 并且程序运行到 15‐20 步时,由于检测到 X12 得电,故而导致 T0 线圈失电,所 以当运行到 21‐23 步时,T0 的常开复位,所以即使 X12 得电,M1 线圈也不是得 电。故物体不会在停止处停止,而是继续运行。 综上所述:图 1.3 的程序的运行结果为,物体从开始进入输送带后,正转到 右限位位置,然后再由右限位位置向左限位位置移动,到左限位位置停止并延时 5s 后,再向右限位位置移动,如此往复。并不会在停止位置停止。 浅谈一下分析程序时,根据 PLC 的扫描周期做程序逻辑的分析。 如图 1.3 不知道我说的对不对,一定会有人在用这种方法分析程序的,因为 我初学的时候也是这样。如果大家都没有发生这样的事情,当然最好,如果有发 生,希望对大家有所帮助。 我所讲到的分析程序的方法就是,忽略 PLC 的扫描周期。比如说图 1.2 所示 程序,有人可能会这样分析,当 I1.3 接通后 M1.0 线圈得电,但是因为 I1.3 得电 后,M1.1 线圈也同时得电了,故 M1.0 线圈失电,因为 M1.0 的线圈失电,所以 Q1.2 的线圈不得电。虽然我们说分析的结果是正确的,但是我们可以说,分析 的思想的错误的,这种小程序也许分析起来,没有什么大的影响,当逻辑比较复 杂的时候,就会出现问题。 我们来用图说明一下不规范的程序分析思想的走向。
1,按下控制供给按钮 X20 ,Y10 接通,放开 X20 即停止。 2,按下控制输送带按钮 X21, Y11 正转,放开 X21 继续运行。 3,物体首次运行到右限位 X11 后,停止 Y11,并立即运行 Y12 反转。 4,当物体运行到左限位 X10 后,停止 Y12。并且记时 5s. 5,5s 后运行正转 Y11,当停止传感器检测到位,立即停止物体。 6,再次按下 X21,循环往复。
图 1.2 中,在一个扫描周期内,I1.3 动作的情况下,M1.0,M1.1,Q1.2 都为 1。在 N+1 扫 描周期后,M1.0,M1.1,Q1.2 的状态情况:因为 N 个扫描周期的时候 M1.1=1,所谓“城门失 火,殃及池鱼”啊,M1.0 因为 M1.1=1 致使 M1.0=0,从而使 Q1.2=0.并循环往复此结果,只 到 I1.3 的有变化为止。
图 1.4 所示的程序中,我们只是把图 1.3 所示程序的 21‐23 步移动到 14‐15 步之间,得到图 1.4 所示程序。这样把程序插入到 18 步之前,按照 PLC 扫描周 期分析,在 n 扫描周期里,T0 延时时间到,T0 线圈得电,在 n+1 个扫描周期到 来后,因为 T0 线圈得电,当 PLC 扫描到程序 15 步时,PLC 判定 T0 得电,当物 体移动到 X12 下方后,先让 M1 得电,然后再通过 X12 使 T0 线圈失电。
注明:不得使用高级指令,记数指令,置位,复位指令。可用软元件为 X , Y , M, T
可用指令为基本指令。LD, LDI, AND, ANDI, LDP, OR, ORI, ORP,OUT 等
图 1.1
希望与各位工控朋友们一起学习工控。 automationc@
‐‐源码分析师‐‐工作室‐‐ QQ:78419972
浅谈 PLC 编程时,某一行指令的放置位置。 我记得我刚开始学习 PLC 程序的时候,对于 PLC 编程时某一行指令到底放在哪里合适, 从不深究,当时我以为几行指令放在一起编程,谁放在前面,谁放在后面那是无所谓的,反 正不管是上面,还是下面,它总是会执行的,结果也没有什么变化。 当我看完哈尔滨工业大学‐‐‐王立国‐‐‐老师的 PLC 课程后我才明白,程序中,一些指令的 放置对程序的影响有多么深远。很可能某些程序,在你执行完得不到正确结果的情况,你只 是稍微改变一下程序中各程序段的先后位置,就能神奇的让你的程序得到相应的结果。我们 说的是一个特例,并不是说你编个程序,然后得不到应有的结果,你就改变一下位置就能正 确得出(这种想法是不对的,呵呵)。我们用实例来说明此问题。
希望与各位工控朋友们一起学习工控。 automationc@
‐‐源码分析师‐‐工作室‐‐ QQ:78419972
我们来讨论一下,图 1.3 中,按控制要求 5 的要求,编写出的第 21‐23 步的 程序。程序为的是当 X10 左限到位,延时 5s,执行正转 Y11 操作后,当物体移 动到 X12 处时由 M1 停止 Y11 输送带正转。可是把 21‐23 步程序放在这里后是否 可以实现我们想要实现的功能呢?
浅谈扫描周期对用户程序的执行方式与扫描结果的判断:
?
图 1.2 很多工友都认为 PLC 在扫描程序的时候,如果第一行 M1.0 线圈得电,那么相应的第三 行的 M1.0 的常开触点将立即动作,其实不然。 根据 PLC 对扫描周期的定义,在一个扫描周期内,某行程序执行得出的结果,并不会立 即影响下面所有的程序。 并不是说,只要某线圈一得电,此后所有程序中的相关触点就立即动作,并在 PLC 扫描 到后根据已经动作的结果,去判断此行程序的执行结果,而是说,当 PLC 执行到某行后,发 现了此线圈的触点,并因为上面线圈的扫描结果,而得出应该把此线圈对应的触点闭合或断 开,顺序不可颠倒。 言外之意就是:某线圈的输出结果,只有在 PLC 扫描到相应程序的时候才被执行,而不 是立即动作。就好比驱动中继的线圈,触点并不是立即动作而是有一个延时一样,只不过时 间很短,不易察觉。PLC 扫描时同样如此。
希望与各位工控朋友们一起学习工控。 automationc@
‐‐源码分析师‐‐工作室‐‐ QQ:78419972
输送带移物设备‐‐‐‐‐‐‐‐‐工作流程如图 1.1
表 1.1 软元件列表
X
Y
X20
Hale Waihona Puke 供给指令Y10X21
输送带正转启动 Y11
X10
左限位
Y12
X11
右限位
X12
停止传感器
供给
T0
输送带正转
输送带反转
M1
T
延时返回
M 停止中继
根据输送带移物设备的控制要求,我写了下面一段小程序(此程序不如三菱 公司提供的精练,但是却可以用来对本讨论作依据,原程序反而不合适本次讨论)。
程序如下:
图 1.3
大家不如不要往下看,按照你平时的想法,去分析一下这段程序,看看是否 能实现上面所述的控制要求,然后再往下看。
综上所述:PLC 的扫描方式是遵循先上后下,先左后右,前步程序仅影响 后步,逐行扫描,前个扫描周期仅影响下个扫描周期的方式对程序进行扫描的, 逐行扫描时,未扫描到的程序,不对其进行处理。此理论的提出是在一个用户程 序扫描周期内。
希望此文字对大家有所帮助,也是小生的个人看法,如有错误,还请不悋 赐教。
‐‐源码分析师‐‐工作室‐‐ QQ:78419972
浅谈可编程控制器的扫描周期在编程时对 程序的影响
实例:输送带移物设备(课题实例来自三菱官方教学软件) 本次讨论,借此课题来讨论可编程控制器的扫描周期在编程时
对程序的影响。主要讨论的是,在编程时指令位置的放置对程序执行 结果是否有影响?下面我们所提到的扫描周期都是指用户程序的扫描周期。 课题详细的控制方式如下:
‐‐源码分析师‐‐工作室‐‐ QQ:78419972 所以图 1.2 的程序要想满足控制要求,我们可以作如下修改。如图 1.4
希望与各位工控朋友们一起学习工控。 automationc@
‐‐源码分析师‐‐工作室‐‐ QQ:78419972
希望与各位工控朋友们一起学习工控。 automationc@
回答显然是不能的。为什么这样说呢? 根据 PLC 扫描周期的特性,如果把 21‐23 步放在 20 步后。当 T0 得电出的 n 周期里,T0 的常开触点得电,但是 X12 没有得电,故 M1 不得电。当 n+1 个周 期到来后,当物体运行到 X12 下方,X12 得电。所以当程序在 n+1 个扫描周期中, 并且程序运行到 15‐20 步时,由于检测到 X12 得电,故而导致 T0 线圈失电,所 以当运行到 21‐23 步时,T0 的常开复位,所以即使 X12 得电,M1 线圈也不是得 电。故物体不会在停止处停止,而是继续运行。 综上所述:图 1.3 的程序的运行结果为,物体从开始进入输送带后,正转到 右限位位置,然后再由右限位位置向左限位位置移动,到左限位位置停止并延时 5s 后,再向右限位位置移动,如此往复。并不会在停止位置停止。 浅谈一下分析程序时,根据 PLC 的扫描周期做程序逻辑的分析。 如图 1.3 不知道我说的对不对,一定会有人在用这种方法分析程序的,因为 我初学的时候也是这样。如果大家都没有发生这样的事情,当然最好,如果有发 生,希望对大家有所帮助。 我所讲到的分析程序的方法就是,忽略 PLC 的扫描周期。比如说图 1.2 所示 程序,有人可能会这样分析,当 I1.3 接通后 M1.0 线圈得电,但是因为 I1.3 得电 后,M1.1 线圈也同时得电了,故 M1.0 线圈失电,因为 M1.0 的线圈失电,所以 Q1.2 的线圈不得电。虽然我们说分析的结果是正确的,但是我们可以说,分析 的思想的错误的,这种小程序也许分析起来,没有什么大的影响,当逻辑比较复 杂的时候,就会出现问题。 我们来用图说明一下不规范的程序分析思想的走向。
1,按下控制供给按钮 X20 ,Y10 接通,放开 X20 即停止。 2,按下控制输送带按钮 X21, Y11 正转,放开 X21 继续运行。 3,物体首次运行到右限位 X11 后,停止 Y11,并立即运行 Y12 反转。 4,当物体运行到左限位 X10 后,停止 Y12。并且记时 5s. 5,5s 后运行正转 Y11,当停止传感器检测到位,立即停止物体。 6,再次按下 X21,循环往复。
图 1.2 中,在一个扫描周期内,I1.3 动作的情况下,M1.0,M1.1,Q1.2 都为 1。在 N+1 扫 描周期后,M1.0,M1.1,Q1.2 的状态情况:因为 N 个扫描周期的时候 M1.1=1,所谓“城门失 火,殃及池鱼”啊,M1.0 因为 M1.1=1 致使 M1.0=0,从而使 Q1.2=0.并循环往复此结果,只 到 I1.3 的有变化为止。
图 1.4 所示的程序中,我们只是把图 1.3 所示程序的 21‐23 步移动到 14‐15 步之间,得到图 1.4 所示程序。这样把程序插入到 18 步之前,按照 PLC 扫描周 期分析,在 n 扫描周期里,T0 延时时间到,T0 线圈得电,在 n+1 个扫描周期到 来后,因为 T0 线圈得电,当 PLC 扫描到程序 15 步时,PLC 判定 T0 得电,当物 体移动到 X12 下方后,先让 M1 得电,然后再通过 X12 使 T0 线圈失电。
注明:不得使用高级指令,记数指令,置位,复位指令。可用软元件为 X , Y , M, T
可用指令为基本指令。LD, LDI, AND, ANDI, LDP, OR, ORI, ORP,OUT 等
图 1.1
希望与各位工控朋友们一起学习工控。 automationc@
‐‐源码分析师‐‐工作室‐‐ QQ:78419972
浅谈 PLC 编程时,某一行指令的放置位置。 我记得我刚开始学习 PLC 程序的时候,对于 PLC 编程时某一行指令到底放在哪里合适, 从不深究,当时我以为几行指令放在一起编程,谁放在前面,谁放在后面那是无所谓的,反 正不管是上面,还是下面,它总是会执行的,结果也没有什么变化。 当我看完哈尔滨工业大学‐‐‐王立国‐‐‐老师的 PLC 课程后我才明白,程序中,一些指令的 放置对程序的影响有多么深远。很可能某些程序,在你执行完得不到正确结果的情况,你只 是稍微改变一下程序中各程序段的先后位置,就能神奇的让你的程序得到相应的结果。我们 说的是一个特例,并不是说你编个程序,然后得不到应有的结果,你就改变一下位置就能正 确得出(这种想法是不对的,呵呵)。我们用实例来说明此问题。
希望与各位工控朋友们一起学习工控。 automationc@
‐‐源码分析师‐‐工作室‐‐ QQ:78419972
我们来讨论一下,图 1.3 中,按控制要求 5 的要求,编写出的第 21‐23 步的 程序。程序为的是当 X10 左限到位,延时 5s,执行正转 Y11 操作后,当物体移 动到 X12 处时由 M1 停止 Y11 输送带正转。可是把 21‐23 步程序放在这里后是否 可以实现我们想要实现的功能呢?
浅谈扫描周期对用户程序的执行方式与扫描结果的判断:
?
图 1.2 很多工友都认为 PLC 在扫描程序的时候,如果第一行 M1.0 线圈得电,那么相应的第三 行的 M1.0 的常开触点将立即动作,其实不然。 根据 PLC 对扫描周期的定义,在一个扫描周期内,某行程序执行得出的结果,并不会立 即影响下面所有的程序。 并不是说,只要某线圈一得电,此后所有程序中的相关触点就立即动作,并在 PLC 扫描 到后根据已经动作的结果,去判断此行程序的执行结果,而是说,当 PLC 执行到某行后,发 现了此线圈的触点,并因为上面线圈的扫描结果,而得出应该把此线圈对应的触点闭合或断 开,顺序不可颠倒。 言外之意就是:某线圈的输出结果,只有在 PLC 扫描到相应程序的时候才被执行,而不 是立即动作。就好比驱动中继的线圈,触点并不是立即动作而是有一个延时一样,只不过时 间很短,不易察觉。PLC 扫描时同样如此。
希望与各位工控朋友们一起学习工控。 automationc@
‐‐源码分析师‐‐工作室‐‐ QQ:78419972
输送带移物设备‐‐‐‐‐‐‐‐‐工作流程如图 1.1
表 1.1 软元件列表
X
Y
X20
Hale Waihona Puke 供给指令Y10X21
输送带正转启动 Y11
X10
左限位
Y12
X11
右限位
X12
停止传感器
供给
T0
输送带正转
输送带反转
M1
T
延时返回
M 停止中继
根据输送带移物设备的控制要求,我写了下面一段小程序(此程序不如三菱 公司提供的精练,但是却可以用来对本讨论作依据,原程序反而不合适本次讨论)。
程序如下:
图 1.3
大家不如不要往下看,按照你平时的想法,去分析一下这段程序,看看是否 能实现上面所述的控制要求,然后再往下看。
综上所述:PLC 的扫描方式是遵循先上后下,先左后右,前步程序仅影响 后步,逐行扫描,前个扫描周期仅影响下个扫描周期的方式对程序进行扫描的, 逐行扫描时,未扫描到的程序,不对其进行处理。此理论的提出是在一个用户程 序扫描周期内。
希望此文字对大家有所帮助,也是小生的个人看法,如有错误,还请不悋 赐教。
‐‐源码分析师‐‐工作室‐‐ QQ:78419972
浅谈可编程控制器的扫描周期在编程时对 程序的影响
实例:输送带移物设备(课题实例来自三菱官方教学软件) 本次讨论,借此课题来讨论可编程控制器的扫描周期在编程时
对程序的影响。主要讨论的是,在编程时指令位置的放置对程序执行 结果是否有影响?下面我们所提到的扫描周期都是指用户程序的扫描周期。 课题详细的控制方式如下: