找回密码
 马上注册

QQ登录

只需一步,快速开始

查看: 6398|回复: 7

请问如何让乐高机器人通过光感来往有光的地方移动.

  [复制链接]
发表于 2011-1-27 12:57:45 | 显示全部楼层 |阅读模式
大概要用什么样的命令才能使乐高机器人往有光的地方行走呢(light following)...
情况是:比如在一个黑暗的房间,打开手电筒,机器人会感应到光并且向手电筒方向行驶过来.
也就是顺应着光源的方向走...如果写这个程序的话,应该用什么命令好..SetSensorLight..?
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
发表于 2011-1-27 13:39:17 | 显示全部楼层
SetSensorLight这个函数只是初始化传感器的。你的要求,我木有太高效的方法,提种办法你参考下,
首先原地采集光强,存到个二维数组里,同时记录光强和方位,然后做光强的冒泡,找出光强最大点的方位,最后朝那方向走。
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

 楼主| 发表于 2011-1-27 14:06:22 | 显示全部楼层
回复 糖伯虎 的帖子

唔,其实没前辈你想的那么复杂,其实就是想知道一个关于如何向光行走的命令罢了,数据不用精确的.
举个例子,打开光,机器人移动,关闭光,机器人停止..类似这样,給一些如何写命令的提示..

main task()
{
SetSensorLight(S1)

while (S1>30)

OnFwd (OUT_AB,80)

差不多类似这样的...
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2011-1-27 17:30:47 | 显示全部楼层
多看看书,很简单的东西,按照你说的要求,我写了段
  1. task main()
  2. {
  3. SetSensorLight(S1);
  4. while(1)
  5. {
  6. if(SENSOR_1>30) OnFwd(OUT_AB, 80);
  7. else Off(OUT_AB);
  8. }
  9. }
复制代码

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

使用道具 举报

 楼主| 发表于 2011-1-27 20:14:03 | 显示全部楼层
回复 糖伯虎 的帖子

前辈..那啥..我写的只是我自己的想法,SetSensotLight那个只是我想的罢了,
如果用在感应光后往光那个方向走的话,这个命令肯定不行的.

假设机器人在原地打转,忽然給它一束光,加入是上面那个命令的话.
只是让机器人从转圈变为直线行走罢了=w=.....


至于感应到光后往光的方向走,是不行的..
我写那个,是想让前辈像写那样的命令帮我写个开头,用什么样的命令 ...

=口=前辈!哦捏噶一系嘛斯!
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2011-1-27 20:52:55 | 显示全部楼层
不要总指望别人帮你把所有的事都做好,我能告诉你的只能是思路,人人让我帮写程序,我哪来那么多时间。
别人写好的,永远是别人的东西,你什么都学不到,你应该试着看书,自己解决问题。
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2011-1-27 20:55:30 | 显示全部楼层
如果你想要朝光方向走,就复杂了,没走一段时间就要扫描一下环境,或者装2个或者多个传感器,相互比较,朝光值最大的方向走。
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2011-1-28 22:54:42 | 显示全部楼层
回复 龙龙不会fxt 的帖子

这个想法不错 9797上的说明书上有(好像是搭建指南吧)很简单的。。。。。
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-22 17:37 , Processed in 0.088990 second(s), 18 queries .

Powered by Discuz! X3.5

Copyright © 2001-2020, Tencent Cloud.

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