步骤1 案例详情
小飞机有装饰吗?那当然了。不同的颜色代表了不同的环境氛围。如果无人机组队编一支灯光舞队就更好了!
步骤2 本节拟解决的问题
1.什么是RGB灯,如何控制变色
2.如何远程控制灯光变化
步骤3 教学准备
七彩彩灯*1
TT扩展件*1
热熔胶*1
红外线接收器
红外线发射器
3D打印件*1
代码
/*!
* MindPlus
* telloesp32
*
*/
#include <RMTT_Libs.h>
#include <DFRobot_NeoPixel.h>
// 创建对象
RMTT_RGB tt_rgb;
DFRobot_NeoPixel neoPixel_13;
DFRobot_NeoPixel neoPixel_4;
RMTT_Protocol protocol;
// 主程序开始
void setup() {
tt_rgb.Init();
Serial1.begin(1000000, 23, 18, SERIAL_8N1);
led_effect_init();
tt_rgb.SetRGB(0,255,0);
delay(1000);
neoPixel_13.begin(13, 7);
neoPixel_4.begin(4, 7);
neoPixel_13.setBrightness(255);
neoPixel_4.setBrightness(255);
neoPixel_4.showRainbow(0, 7, 1, 360);
neoPixel_13.showRainbow(0, 7, 1, 360);
delay(4000);
protocol.startUntilControl();
led_effect_blink(255, 0, 0, 0, 255, 0, 5.1);
}
void loop() {
protocol.sendTelloCtrlMsg((char *)String(String("up ")+int(50)).c_str());
tt_rgb.SetRGB(255,255,0);
protocol.sendTelloCtrlMsg((char *)String(String("right ")+int(50)).c_str());
tt_rgb.SetRGB(255,255,0);
protocol.sendTelloCtrlMsg((char *)String(String("down ")+int(50)).c_str());
tt_rgb.SetRGB(255,255,0);
protocol.sendTelloCtrlMsg((char *)String(String("left ")+int(50)).c_str());
tt_rgb.SetRGB(255,255,0);
protocol.sendTelloCtrlMsg((char *)String(String("up ")+int(50)).c_str());
}
步骤4 具体操作
操作步骤
1.TT扩展件连接灯带与红外线接收器
2.将以上整体放入打印件内,用热熔胶固定
3.为扩展件写入程序(红外线接收器接收红外线信号,使用随机算法生成RGB灯的三个颜色分亮度信号)
4.程序升级(灯带的点亮的模式,呼吸灯模式等)
步骤5 知识点总结
Arduino编程
1. Arduino开发环境的搭建
2.认识数据类型(数值型,字符型,布尔型)
3.认识基本程序结构(顺序结构,分支结构,循环结构)
4.认识数组(数组定义,如何定义,如何使用,结合TT扩展件的屏幕学习)
5.函数(函数定义,函数使用,函数编写)
6.对TT扩展模块编程
(1)控制机顶LED
(2)Tof传感器结合TT点阵屏打造一款炫酷的测距仪
(3)火焰传感器结合TT无人机打造一部移动火警报警器
(4)手势传感器结合灯带制作一款手势灯
传感器类别
红外遥感、微型舵机、全彩灯带、手势识别传感器、颜色传感器、红外定位探头、火焰传感器、Tof(飞行距离测量)、二哈视图(人脸、物体、颜色、标签、物体分类)、
评论