找回密码
 马上注册

QQ登录

只需一步,快速开始

查看: 9764|回复: 18

关于集中跳出循环的方法。

[复制链接]
发表于 2014-4-8 16:45:22 | 显示全部楼层 |阅读模式
悬赏5乐币已解决
平时大家在使用循环模块的时候除了用传感器跳出循环。还有什么好的方法呢?我是新人见过高手用变量。但是始终不明白变量的使用意义。请高手赐教。

最佳答案

查看完整内容

嗯 一真一假也行,逻辑里头有“与”、“或”、“和”、“非真”等好几种选项,看你怎么设定了
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
发表于 2014-4-8 16:45:23 | 显示全部楼层
qtlang1128 发表于 2014-4-11 09:14
你的跳出循环,是都为真,或者都为假的时候都可以跳出么?

嗯  一真一假也行,逻辑里头有“与”、“或”、“和”、“非真”等好几种选项,看你怎么设定了
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2014-4-8 18:57:26 | 显示全部楼层
我也是!求大神赐教!
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2014-4-9 11:37:55 | 显示全部楼层
用变量其实不一定是高手,使用变量只是一种方式而已。或许是因为习惯使用传感器跳出循环罢了,啥时需要用上变量由具体要做的事情来决定,比如陀螺仪小子Gyroboy中需要识别知道机器人所处的状态(平衡前还是平衡中),因此程序中使用变量st记录状态,规定st=1时表示平衡前。st=2表示处于平衡中;因此使用变量的一种好处就是通过变量的不同取值的改变从而告诉机器人目前应该所做的动作,可参考我的伪代码:http://bbs.cmnxt.com/forum.php?m ... 1&fromuid=16108
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2014-4-9 11:43:52 | 显示全部楼层
楼主说的应该是逻辑跳出循环吧,其实这东西跟用传感器跳出循环有点类似,逻辑跳出循环一般用于两个传感器同时探测,同时满足一定情况条件的时候跳出循环。 未命名.JPG

例如上图的这个小循环里头,设定一号和三号触碰都被按下的时候跳出循环

评分

参与人数 1乐币 +5 收起 理由
qtlang1128 + 5

查看全部评分

如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2014-4-10 13:04:35 | 显示全部楼层
随便定个变量当信号旗,比如这个变量为1的时候不跳,为0的时候就跳出循环
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

 楼主| 发表于 2014-4-11 09:14:54 | 显示全部楼层
随风逐梦 发表于 2014-4-9 11:43
楼主说的应该是逻辑跳出循环吧,其实这东西跟用传感器跳出循环有点类似,逻辑跳出循环一般用于两个传感器同 ...

你的跳出循环,是都为真,或者都为假的时候都可以跳出么?
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

 楼主| 发表于 2014-4-11 09:15:21 | 显示全部楼层
WALL·E 发表于 2014-4-10 13:04
随便定个变量当信号旗,比如这个变量为1的时候不跳,为0的时候就跳出循环

能给个实际的例子么?
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

 楼主| 发表于 2014-4-11 09:16:21 | 显示全部楼层
ntwuhui 发表于 2014-4-9 11:37
用变量其实不一定是高手,使用变量只是一种方式而已。或许是因为习惯使用传感器跳出循环罢了,啥时需要用上 ...

用代码来解决问题,小弟我还有差距。不过还是谢谢老师的指导。
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2014-4-11 09:37:39 | 显示全部楼层
qtlang1128 发表于 2014-4-11 09:15
能给个实际的例子么?


比如要求智能车前进,要求发现障碍距离30厘米以内就报警,报警用循环,同时要求碰到障碍停下来,关闭报警。


这就是靠变量控制的跳出循环。


当然如果是这个任务要求的话,还有更简单的编法。

QQ截图20140411093359.png
QQ截图20140411093359.png

评分

参与人数 1乐币 +5 收起 理由
qtlang1128 + 5

查看全部评分

如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2014-4-11 11:57:13 | 显示全部楼层
嗯,不错,这个例子挺好;变量最后用逻辑控制跳出,基本都这样,我也是这么想的
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

 楼主| 发表于 2014-4-12 13:46:01 | 显示全部楼层
WALL·E 发表于 2014-4-11 09:37
比如要求智能车前进,要求发现障碍距离30厘米以内就报警,报警用循环,同时要求碰到障碍停下来,关闭报 ...

你的CB电机停止模块后的变量flag,的意思是在说读取前一个模块。还是前面3个模块?
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2014-4-12 13:51:12 | 显示全部楼层
qtlang1128 发表于 2014-4-12 13:46
你的CB电机停止模块后的变量flag,的意思是在说读取前一个模块。还是前面3个模块?

没看懂你想问什么,CB电机停止之后,flag变量就设置为0,上边的循环条件是flag变量值为1循环,为0跳出
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

 楼主| 发表于 2014-4-13 08:52:40 | 显示全部楼层

这里变量的作用是什么?

这里变量的作用是什么?
这里变量的作用是什么?

这里变量的作用是什么?

这里变量的作用是什么?
这里变量的作用是什么?
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

 楼主| 发表于 2014-4-13 08:55:45 | 显示全部楼层
WALL·E 发表于 2014-4-12 13:51
没看懂你想问什么,CB电机停止之后,flag变量就设置为0,上边的循环条件是flag变量值为1循环,为0跳出

QQ截图20140413084742.png 这个是读取逻辑变量, QQ截图20140413084728.png 这个是写入逻辑。他们2个在这个任务程序中有联系么?如果有为什么你给我解释的是i个o以个为为1?
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 马上注册

本版积分规则

手机版|中文乐高 ( 桂ICP备13001575号-7 )

GMT+8, 2025-6-25 14:18 , Processed in 1.275690 second(s), 22 queries .

Powered by Discuz! X3.5

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表