创意智能垃圾分类机器人(颜色传感器)_第1页
创意智能垃圾分类机器人(颜色传感器)_第2页
创意智能垃圾分类机器人(颜色传感器)_第3页
创意智能垃圾分类机器人(颜色传感器)_第4页
创意智能垃圾分类机器人(颜色传感器)_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

智能垃圾分类机器人———颜色传感器测试1.工作原理4.颜色传感器测试3.准备工作(库函数导入)2.硬件连接颜色传感器测试一、TCS3200颜色传感器颜色传感器利用三原色感应原理(1)当知道构成各种颜色的三原色的值,就能够知道所测试物体的颜色;(2)当选定一个颜色滤波器时,它只允许某种特定的原色通过,阻止其它原色的通过。举例说明:例如当选择红色滤波器时,入射光中只有红色可以通过,蓝色和绿色都被阻止,这样就可以得到红色光的光强;同理,选择其它的滤波器,就可以得到蓝色光和绿色光的光强。通过这三个光强值,就可以分析出反射到颜色传感器上的光的颜色。通常所看到的物体颜色,实际上是物体表面吸收了照射到它上面的白光(日光)中的一部分有色成分,而反射出的另一部分有色光在人眼中的反应。白色是由各种频率的可见光混合在一起构成的,也就是说白光中包含着各种颜色的色光(如红R、黄Y、绿G、青V、蓝B、紫P)。根据德国物理学家赫姆霍兹(Helinholtz)的三原色理论可知,各种颜色是由不同比例的三原色(红、绿、蓝)混合而成的。1、什么是三颜色感应原理?序号引脚定义引脚说明1GND接地2LED白光LED灯引脚3S0比例因子选择输入脚4S1比例因子选择输入脚5VCC5伏电源6OUT输出端7S2输出频率选择输入脚8S3输出频率选择输入脚2、TCS3200颜色传感器引脚说明颜色传感器红蓝绿滤波器选通对应表比例因子设置对应表颜色传感器3、TCS3200颜色传感器滤波器及比例因子对应表二、

颜色传感器硬件连接颜色传感器模块安装完成图颜色传感器模块安装示意图二、

颜色传感器硬件连接---以常规赛为例颜色传感器模块与控制板连线图序号arduinoUNO引脚颜色传感器模块引脚10S021S132OUT43S254S36GNDGND7VCCVCCarduinoUNO控制板与颜色传感器连线表注意:只需接一组VCC和GND即可,另一组可以不接。LED可以不接。

程序下载到机器人后,启动机器人。方法一:用一张白色的A4纸放在颜色传感器前端,当颜色传感器识别到后,拿走该A4纸;方法二:用手遮挡在颜色传感器前端,当颜色传感器识别到手后,拿开手。颜色传感器白平衡校正---使用前从理论上讲,白色是由等量的红色、绿色和蓝色混合构成,但在实际应用中,白色中的三原色并不完全相等,并且对TCS3200的光传感器来说,它对红、绿、蓝这三种基本色的敏感性并不相同,从而导致TCS3200的RGB输出并不相等,因此在测试前必须对颜色传感器进行白平衡校正,通过白平衡校正得到RGB比例因子,使得TCS2300对所检测的“白色”中的三原色相等。白平衡校正原因:白平衡校正方法:导入库:把右图中的5个库函数文件夹复制到对应arduino目录下的libraries目录下。三、

颜色传感器测试准备工作颜色传感器测试程序#include"ColSensor.h"ColSensormysensor(0,1,3,4,2,10);//颜色传感器在板上所对应的引脚口voidCounter(){mysensor.g_count++;//计算1s内的脉冲数,因为对于TCS3200颜色传感器来说,其对颜色的识别其实就是通过计算1S内传感器输出的脉冲数的比较、计算}voidsetup(){Serial.begin(9600);//设置波特率为9600mysensor.Mode();//初始化颜色传感器的引脚口

attachInterrupt(0,Counter,RISING);//(外部中断函数)0;对应的0号引脚;counter:中断时要执行的函数;RISING:表示电平由低电平变为高电平时触发;

mysensor.Test();//test()函数为库里的一个函数,其作用是计算出RGB的比例因子}四、

颜色传感器测试方法及步骤在颜色传感器测试过程中,机器人arduino板的下载线要一直与电脑相连。颜色传感器测试程序voidloop(){mysensor.Get();//获取颜色传感器所识别的RGB的三个参数

Serial.print("R");//在串口上输出字符“R”Serial.println(mysensor.g_array[0]);//输出颜色传感器感应到的色块对应的红色的值

Serial.print("B");//在串口上输出字符“B”Serial.println(mysensor.g_array[1]);//输出颜色传感器感应到的色块对应的蓝色的值

Serial.print("G");//在串口上输出字符“G”Serial.println(mysensor.g_array[2]);//输出颜色传感器感应到的色块对应的绿色的值

Serial.println("END");//R、G、B三个数值输出完成后,输出END表示结束一组数据的输出

delay(1000);//延时1秒}单独设计一个测试颜色传感器的程序,将该程序复制到arduino工作区间;程序上传到arduino板后,打开串口监视器,如右图。1、测试步骤一:2、测试步骤二----白平衡校正(1)将1张A4白纸(如没有白纸,可尝试用手掌代替)放到机器人颜色传感器前面,如左图。白平衡颜色传感器R、G、B值示意图颜色传感器白平衡调整示意图(2)从arduino串口监视器获得R(红)、G(绿)、B(蓝)值,其中3种颜色的值相近,且数值都在255附近,如右图。(1)在颜色传感器前放置一个色块,以蓝色色块为例:3、测试步骤三:(2)通过串口监视器,显示数值如右图说明:如果传感器正常工作,将来发现蓝色数值明显大于其他两个值(红、绿)当传感器前是绿色色块时:

4、测试步骤四:重复步骤三当传感器前是红色色块时:绿色对应的G数值比红色、蓝色两种颜色的值大红色对应的G数值比绿色、蓝色两种颜色的值大如果三种色块在测试时,对应色块的颜色值明显大于其他两种颜色值的话,说明颜色传感器能正常工作了。5、颜色传感器测试结果如果采用以上方法对颜色传感器测试没有成功,那么可从以下几方面来查找原因:第一步:检查硬件连接,即检查颜色传感器与机器人接口板和控制板

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论