查看: 650|回复: 1
收起左侧

[H3U] PLC运行原理经典案例分析

Likedust 2019-7-22 20:38:23 | 显示全部楼层 |阅读模式
邀请回答

马上注册,享受更多特权

您需要 登录 才可以下载或查看,没有帐号?立即注册   

x
已知,M100为HMI屏幕上按键,若M100按位时间为t ms,扫描周期为A ms,t/A能整除,原来寄存器中的初始值为0,求D100、D110、D120、D130中的数据为多少,梯形图如图1所示。
梯形图.png
图1 梯形图
     本题包括了位器件的四种触发方式,常开触点,常闭触点,上升沿触发,下降沿触发。另外,本问题的求解需要充分了解PLC的数据范围, 周期性执行方式,扫描周期等概念。PLC数据位有16位和32位两类,对于16位无符号类型的数据,数据范围为0~2^16-1,有符号型的,数据范围为-2^15~2^15-1,;对于32位无符号类型的数据,数据范围为 0~2^32-1,对于32位有符号类型的数据,数据范围为 -2^31~2^31-1。PLC的程序执行方式为从上至下依次执行,当执行到程序最后一行时,返回程序第一行,再次自上而下执行,依次循环;扫描周期指程序循环一次所用的时间。
    针对于本问题,作如下分析:
     1.对于D100,自加指令在M100闭合的时候执行,闭合的时间为t ms,扫描周期为A ms,自加指令执行的次数为t/A;INC为16位自加指令,数据范围为-32768~32767,当自加到边界值32767时,再执行数据变为-32768,如此循环。DINC为32位自加指令。
n为D100数据溢出的次数。
推理:
        t/A∈[0 32767],D100= t/An=0
        当t/A=32768,D100= -32768=t/A-2^16,n=1
        当D100从-32768增加到32767时,t/A从32768增加至32768+2^16-1,n=1;
        当t/A=32768+2^16时,D100= -32768= t/A-2×2^16,n=2;
        当t/A=32768+2^16+2^16,D100= -32768= t/A-3×2^16,n=3;
        故可得出以下公式:
公式1.png
     其中,DINT表示32位取整函数,其中n∈[0 232-1]。取整的方式为向前取整,及通过舍去小数部分的方式取整。则D100中的数据为:
公式2.png
     2.对于D110,自加指令在M100断开的时候执行,由于M100断开的时间未知,故不能求出D110中的数据;

     3.对于D120,自加指令只在上升沿触发,M100按下瞬间存在上升沿,故只执行一次,D120=1;

     4.对于D130,自加指令只在下降沿沿触发,M100松开瞬间存在下降沿,故只执行一次,D130=1。


「真诚赞赏,手留余香」




上一篇:H3U与伺服走脉冲控制,内部24v接线方式介绍
下一篇:相对定位绝对定位知识点介绍
回复 邀请回答送花

使用道具 举报

Julius_wen 2019-10-5 15:46:26 来自手机 | 显示全部楼层
第一问的答案依然是不对的,但是很接近了。小型PLC数据正向溢出并不是到负的最小值,负向溢出也不是到正的最大值,,这个和C语言不一样
「真诚赞赏,手留余香」
回复 送花

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册   

本版积分规则

有技术问题,就上汇川技术社区

INOVANCE汇川技术 公众号

汇川控制技术 公众号

全国服务热线:8:30-17:30

400-777-1260

苏州地址:江苏省苏州市吴中区越溪友翔路16号

深圳地址:深圳市宝安区留仙二路6号鸿荣源鸿威工业区E栋

Copyright © 2003-2100 汇川技术 Powered by Discuz! X3.4 ( 苏ICP备12002088号 )
快速回复 返回列表 返回顶部