登录
首页
PLC论坛
三菱Mitsubishi
回帖
发帖
正文
主题:【话题】编程看结果(20120727)
点击:999 回复:11
楼主
编辑
引用
管理
yanshibo
程序如下:
LD M8013
CML 14
H55 K2Y000
LD M8013
MOV 12
H55 K2YOOO
END
各位老师,此程序运行会有何结果?
最后修改:
2012/7/30 9:11:15
12-07-25 08:17
1楼
编辑
引用
管理
cvlsam
H55转换为2进制就是 0101 0101 K2Y0代表由Y0~Y7这8个位组成的字节。
CML 反向传送,因此,0101 0101反向后就是1010 1010 此时K2Y0:
Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7
0 1 0 1 0 1 0 1
同理: 直接将H55 MOV到K2Y0,那么就是将0101 0101送入K2Y0
由于程序的扫描执行步骤是由上往下,自左往右,因此这段程序的最终运行结果就是Y0~Y7的状态始终是0101 0101,原因在于:
M8013为ON 首先将10101010送入K2Y0
然后将H55送入K2Y0。
因为当出现双线圈时,以最后状态为准,因此K2Y0的值始终为H55.
Regards
12-07-25 09:22
2楼
编辑
引用
管理
yanshibo
运行起来不会是这样的,我感觉应该考虑扫描时长与M8013脉冲的时序关系,不信你上机试试。
12-07-25 09:30
3楼
编辑
引用
管理
PLC-hmi
找个plc试试看
12-07-25 10:26
4楼
编辑
引用
管理
cvlsam
引用
yanshibo
在 2012/7/25 9:30:51 发言
【内容省略】
M8013的扫描与扫描周期无关,即使PLC处于STOP状态,也不会影响M8013脉冲的通闭。
Regards
12-07-25 10:51
5楼
编辑
引用
管理
yanshibo
假设M8013位于OFF,程序扫描指针正好扫描到第二个LD M8013 ,是不是应该显示第一个输出结果。
12-07-25 11:03
6楼
编辑
引用
管理
ZCMY
用PLC试验了一下,的确第一条指令偶尔会执行的;
所以这种程序就乱了;
最后修改:
2012/7/25 15:10:44
12-07-25 15:03
7楼
编辑
引用
管理
qlin
是说M8013有可能在一个扫描周期内通断么,这个倒没有注意过,通常可避免类似的编程。
12-07-25 21:16
8楼
编辑
引用
管理
ZCMY
试验过,第一条指令偶尔会执行,没有规律性,所以执行的结果根本不能知道;
程序中应当避免使用这种双线圈输出;
12-07-26 15:49
9楼
编辑
引用
管理
wml0060
事实胜于雄辩,找个PLC试试就知道了。
12-07-28 08:24
上一页
下一页
工控新闻
华北工控BIS-6670L:支持政务终端集成,助力实现更高效便捷办事!
共建生态,米尔将出席2025安路科技FPGA技术沙龙
全球首个人形机器人运动会开幕
海尔系斥资超12亿元巩固控制权 新时达背靠“大树”谋扭亏
2025年中国机械工程学会机械传动分会年会在长春举办
华北工控EMB-3513主板:可选NXP I.MX93/91处理器,支持边缘AI网关集成应用
科陆电子:上半年实现净利1.9亿元 同比增长579.14%
2025年7月份规模以上工业增加值增长5.7%
更多新闻资讯