[1]课程引入和知识原理讲解(Think)
随着网络购物的快速发展,快递爆仓,自动化无人机快递系统利用无人机替代人工投送快递,旨在实现快递投送的自动化、无人化、信息化,提升快递的投递效率和服务质量,以便缓解快递需求与快递服务能力之间的矛盾。
我们可以设想在无人机身上设计一个快递箱子,通过颜色识别传感器识别取件码(特定的颜色识别码作为密码),然后控制舵机旋转,投放快递。
[2]项目描述和实施步骤(Doing)
(1)器材清单
(TCS34725颜色传感器+180度微型舵机+RobomasterTT无人机)
①TCS34725全彩颜色识别传感器
TCS34725是一款低成本,高性价比的RGB全彩颜色识别传感器,传感器通过光学感应来识别物体的表面颜色。支持红、绿、蓝(RGB)三基色,支持明光感应,可以输出对应的具体数值,帮助您还原颜色本真。
为了提高精度,防止周边环境干扰,我们特意在传感器底部添加了一块红外遮光片,最大程度减小了入射光的红外频谱成份,让颜色管理更加准确。板载自带四个高亮LED,可以让传感器在低环境光的情况下依然能够正常使用,实现“补光”的功能。
模块采用I2C通信,拥有PH2.0和XH2.54(面包板)两种接口,用户可以根据自己的需求来选择接口,更加便利。
②180度微型舵机
由DFRobot 出品的DF9GMS 180°微型舵机,该舵机采用高强度ABS透明外壳配以内部高精度尼龙齿轮组,加上精准的控制电路、高档轻量化空心杯电机使该微型舵机的重量只有9克,而输出力矩达到了惊人的1.6kg*cm。
(2)任务流程
首先读取颜色传感器的数据,根据颜色的密码(取件码)控制舵机的转动,然后解锁,
投放快递,
(3)步骤图片
RMTT开源控制器读取Color Sensor-TCS34725的数据:
TCS34725是一款低成本,高性价比的RGB全彩颜色识别传感器,传感器通过光学感应来识别物体的表面颜色。支持红、绿、蓝(RGB)三基色,支持明光感应,可以输出对应的具体数值,帮助您还原颜色本真。 为了提高精度,防止周边环境干扰,我们特意在传感器底部添加了一块红外遮光片,最大程度减小了入射光的红外频谱成份,让颜色管理更加准确。
板载自带四个高亮LED,可以让传感器在低环境光的情况下依然能够正常使用,实现“补光”的功能。模块采用I2C通信,拥有PH2.0和XH2.54(面包板)两种接口,用户可以根据自己的需求来选择接口,更加便利。
RMTT开源控制器读取Color Sensor-TCS34725 颜色传感器的电路图:
下面我们通过mind+编写程序,在串口打印读取的颜色数据:
① 我们先看一下红色的数据:当颜色传感器靠近红色卡片距离1cm的时候,
R的数据为70±5,G的数据为5±2,B的数据为7±2,
② 我们先看一下绿色的数据:当颜色传感器靠近绿色卡片距离1cm的时候,
R的数据为10±5,G的数据为35±5,B的数据为10±2,
③我们先看一下蓝色的数据:当颜色传感器靠近蓝色卡片距离1cm的时候,
R的数据为1,G的数据为12,B的数据为60±5,
我们可以利用这些RGB的数据来控制RMTT无人机的灯光颜色,
当颜色传感器看见红色的时候,会亮起红灯,看见蓝色的时候会亮起蓝灯,
看见绿色的时候,会亮起绿灯。
通过观察数据,我们发现,
(1)如果传感器看到的颜色为R,输出的数据中一定是R>G并且R>B,
这样我们直接点亮红灯即可。
(2)如果传感器看到的颜色为G,输出的数据中一定是G>R并且G>B,
这样我们直接点亮绿灯即可。
(3)如果传感器看到的颜色为B,输出的数据中一定是B>R并且B>G,
这样我们直接点亮蓝灯即可。
下面我们编程进行测试:
1拿起红色的卡片对准颜色传感器,发现RMTT亮起了红灯,
2拿起绿色的卡片对准颜色传感器,发现RMTT亮起了绿灯,
3拿起蓝色的卡片对准颜色传感器,发现RMTT亮起了蓝灯。
实际测试的时候,由于环境因素的干扰,这种逻辑运算的结果在没有给卡片的时候,发现RMTT的灯光也会显示一种颜色。
如何来解决这个问题呢?
刚才我们把红绿蓝的卡片对准颜色传感器,获取了RGB的数据,
1 当看见R红色的时候,R的最小数据是60,
2当看见G绿色的时候,G的最小数据是30,
3当看见B蓝色的时候,B的最小数据是50,否则,表示没有看见对应的颜色:
这时我们可以换一种编程的算法:
1如果R>60,显示红色,否则RGB快闪,
2如果G>30,显示绿色,否则RGB快闪,
3如果B>50,显示蓝色,否则RGB快闪。
RMTT空中机器人颜色识别传感器读取颜色卡(取件码)的测试视频:
现在再次进行测试发现,没有给出颜色卡片的时候,灯光显示红绿快闪,
给出对应颜色卡片的时候,就会显示对应的卡片颜色。
刚才我们实现了用颜色传感器控制RMTT灯光的色彩,现在我们再次增加一个舵机,通过颜色密码来控制舵机的开启与关闭,
为RMTT空中快递机器人的实现做准备:
现在我们来设定一个条件,当给出红色的密码时,就控制舵机旋转到180度,
释放空中快递,否则,舵机旋转到30度,保持快递不动。
(4)完整的代码
机械结构和电控结构完成以后,我们需要编写程序,控制TT快递机器人的工作状态,
当快递机器人飞行到目的地的时候,需要使用颜色密码(取件码)来控制无人机释放快递箱。
>
第六节空中快递机器人飞行测试视频
[3]项目拓展
我们也可以使用mind+的实时模式,编程控制无人机根据挑战卡的ID进行飞行,当飞行到指定的ID地点时,无人机会降低到距离地面50CM的高度并悬停,当颜色传感器识别到指定的颜色密码后,就会释放快递。
以下是RobomasterTT空中快递机器人(实时模式下)
自动沿挑战卡飞行的程序:
RobomasterTT空中快递机器人自动飞行的视频地址为:
[4]学生能力基础(5-6年级)
评论