找回密码
 马上注册

QQ登录

只需一步,快速开始

查看: 7797|回复: 10

关于颜色传感器

[复制链接]
发表于 2011-2-25 09:57:02 | 显示全部楼层 |阅读模式
我想问个问题,关于这个颜色传感器,有没有什么程序能让传感器同时显示多种颜色,因为我做了一个2进制代码,用3种颜色组成8个数字,然后我通过另一个颜色传感器来检测颜色,达到从一个NXT将数字发送到另一个NXT的目的。
如下:    1代表亮,0代表灭

              红色    绿色    蓝色
0              0         0         0
1              0         0         1
2              0         1         0
3              0         1         1
4              1         0         0
5              1         0         1
6              1         1         0
7              1         1         1

因为我用的是labview编程序,请问这样可行么?
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
发表于 2011-2-25 11:50:16 | 显示全部楼层
呵呵..这是不可行的喔!
因为颜色传感器的工作原理是,关其他灯开红灯,检测返回值;关其他灯开蓝灯检测返回值;关其他灯开绿灯检测返回值;最后将3个值进行计算,得出检测的是什么颜色.
而如果你直接开了所有灯,那另一个颜色传感器检测到的3个值肯定都是100%左右.即使你开了1个灯,也都会检测到100%左右,因为光亮是很强的.

所以颜色传感器是没有办法检测灯的颜色的,只能检测非发光体的颜色
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2011-2-26 20:19:07 | 显示全部楼层
394069341 发表于 2011-2-25 11:50
呵呵..这是不可行的喔!
因为颜色传感器的工作原理是,关其他灯开红灯,检测返回值;关其他灯开蓝灯检测返回值 ...

不一定的。NXC的程序里可以设置颜色传感器亮什么灯,或是不亮灯来检查颜色的。
印象里NXT-G好象也有类似的控制功能。
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2011-2-26 20:19:43 | 显示全部楼层
我当时做PID巡线时,就是指定开红灯,然后读回传感器的原始值的。
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2011-2-26 20:24:52 | 显示全部楼层
本帖最后由 grant7788 于 2011-2-26 20:25 编辑

NXC中相关的函数:
  1. SetSensorColorRed
  2. SetSensorColorGreen
  3. SetSensorColorBlue
  4. SetSensorColorFull
  5. SetSensorColorNone

  6. COLORSENSOR
复制代码
我实际测试过,可以用不同的函数,让颜色传感器在测量时发不同颜色的光。
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2011-2-26 20:28:29 | 显示全部楼层
本帖最后由 grant7788 于 2011-2-26 20:29 编辑

不过你说的是8种颜色... 这个貌似标准的函数做不到,
如果NXC的话可以试一下SetSensor()这个函数,看看结构里传的值变化一下会有什么反应。
LabVIEW下没试过,不清楚。

  1. #define  _SENSOR_CFG(_type, _mode)   (((_type)<<8)+(_mode))
  2. #define  SENSOR_TOUCH   _SENSOR_CFG(SENSOR_TYPE_TOUCH, SENSOR_MODE_BOOL)
  3. #define  SENSOR_LIGHT   _SENSOR_CFG(SENSOR_TYPE_LIGHT, SENSOR_MODE_PERCENT)
  4. #define  SENSOR_ROTATION   _SENSOR_CFG(SENSOR_TYPE_ROTATION, SENSOR_MODE_ROTATION)
  5. #define  SENSOR_CELSIUS   _SENSOR_CFG(SENSOR_TYPE_TEMPERATURE, SENSOR_MODE_CELSIUS)
  6. #define  SENSOR_FAHRENHEIT   _SENSOR_CFG(SENSOR_TYPE_TEMPERATURE, SENSOR_MODE_FAHRENHEIT)
  7. #define  SENSOR_PULSE   _SENSOR_CFG(SENSOR_TYPE_TOUCH, SENSOR_MODE_PULSE)
  8. #define  SENSOR_EDGE   _SENSOR_CFG(SENSOR_TYPE_TOUCH, SENSOR_MODE_EDGE)
  9. #define  SENSOR_NXTLIGHT   _SENSOR_CFG(SENSOR_TYPE_LIGHT_ACTIVE, SENSOR_MODE_PERCENT)
  10. #define  SENSOR_SOUND   _SENSOR_CFG(SENSOR_TYPE_SOUND_DB, SENSOR_MODE_PERCENT)
  11. #define  SENSOR_LOWSPEED_9V   _SENSOR_CFG(SENSOR_TYPE_LOWSPEED_9V, SENSOR_MODE_RAW)
  12. #define  SENSOR_LOWSPEED   _SENSOR_CFG(SENSOR_TYPE_LOWSPEED, SENSOR_MODE_RAW)
  13. #define  SENSOR_COLORFULL   _SENSOR_CFG(SENSOR_TYPE_COLORFULL, SENSOR_MODE_RAW)
  14. #define  SENSOR_COLORRED   _SENSOR_CFG(SENSOR_TYPE_COLORRED, SENSOR_MODE_PERCENT)
  15. #define  SENSOR_COLORGREEN   _SENSOR_CFG(SENSOR_TYPE_COLORGREEN, SENSOR_MODE_PERCENT)
  16. #define  SENSOR_COLORBLUE   _SENSOR_CFG(SENSOR_TYPE_COLORBLUE, SENSOR_MODE_PERCENT)
  17. #define  SENSOR_COLORNONE   _SENSOR_CFG(SENSOR_TYPE_COLORNONE, SENSOR_MODE_PERCENT)
复制代码



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

使用道具 举报

发表于 2011-2-28 21:55:57 | 显示全部楼层
回复 grant7788 的帖子

请问 读光强的函数是什么?我怎么找不到
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2011-3-1 09:39:44 | 显示全部楼层
sayidgong 发表于 2011-2-28 21:55
回复 grant7788 的帖子

请问 读光强的函数是什么?我怎么找不到

设成红光传感器,直接读回原始数据。
  1. #define COLORSENSOR SENSOR_3
  2. SetSensorColorRed(S3);
  3. setpoint = COLORSENSOR;
复制代码



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

使用道具 举报

发表于 2011-3-1 17:49:57 | 显示全部楼层
回复 grant7788 的帖子

请问你的那些函数是如何查找的?
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2011-3-1 18:29:02 | 显示全部楼层
有帮助文档的,点bricxcc工具栏上的“?”图标
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2011-3-1 22:36:46 | 显示全部楼层
sayidgong 发表于 2011-3-1 17:49
回复 grant7788 的帖子

请问你的那些函数是如何查找的?

你楼下的回复了。另外BricX那个网站上可以下载一个单独的chm文件,包含了所有这些说明。
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-22 16:28 , Processed in 0.549722 second(s), 19 queries .

Powered by Discuz! X3.5

Copyright © 2001-2020, Tencent Cloud.

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