回复:编程逻辑建模测试题

火麒麟

西门子1847工业学习平台

  • 帖子

    571
  • 精华

    18
  • 被关注

    20

论坛等级:侠圣

注册时间:2006-09-21

普通 普通 如何晋级?

发布于 2011-09-19 20:30:11

7楼

quote:以下是引用哈利波特大在2011-09-19 19:24:49的发言:
前提是:司机都遵守红绿灯规则?
传感器上下=AB=00,01,10,11 0=无车
对应灯上下=XY=11,10,01,00 0=绿灯
对AB取反即可
纪录AB的次数 上下=M,N
上有车被检测时,N++,下有车被检测M++, N==M时,灯XY=00,N<M时,灯XY=10,N>M时,灯XY=01(没有XY=11,不可能都亮红灯),
举例:如先上有车进则N++,M=0,N=1,N>M,XY=01则上亮绿,下亮红,此车从上进入到下被检测,M++,M=N,则,XY=00,都亮绿灯,如果在第一车进去后还没到达B点,M=0,N=1,由于上灯绿,再有1车进入,则N++,N=2。第一车到达,M++,此时M=1,N=2,N>M,灯XY=01,上灯绿,下灯红,第2车到达B点被检测,M++,M=2,此时M=N,灯XY=00,同时绿灯。
程序如下:

L 0
T #M
T #N
------------------------
AN I0.0
JC end1
L #N
L 1
+I
T #N
end1:nop 0
-----------------------
AN I0.1
JC end2
L #M
L 1
+I
T #N
end2:nop 0
---------------------
L #M
L #N
==I //00
JNB NXT1
S Q0
R Q1
S Q2
R Q3
JU END
NXT1:L #M
L #N
>I
JNB NXT2
R Q0
S Q1
S Q2
R Q3
NXT2: L #M
L #N
<I
JNB END
S Q0
R Q1
R Q2
S Q3
END:NOP 0

一定要设2个计数值么,M,N?我觉得一个就可以了
业精于勤,行成于思
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54618条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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