20. 案例18:颜色识别控制天蓬智能车

20.1. 目的


  • 根据插入的颜色卡片切换到对应的彩虹灯环颜色并实现不同功能(前进、随机切换车头灯颜色、避障、巡线)。

20.2. 使用材料


../../_images/TPBot_tianpeng_case_01_01.png

20.3. 硬件连接

将彩虹灯环连接到天蓬智能车的端口1,颜色识别传感器连接到天蓬智能车的IIC端口。

../../_images/TPBot_tianpeng_case_18_03.png

20.4. 软件


微软makecode

20.5. 编程


  • 在MakeCode的代码抽屉中点击高级,查看更多代码选项。

../../_images/TPBot_tianpeng_case_01_02.png

  • 为了给天蓬智能车编程,我们需要添加一个扩展库。在代码抽屉底部找到扩展,并点击它。这时会弹出一个对话框,搜索tpbot,然后点击下载这个代码库。

../../_images/TPBot_tianpeng_case_01_03.png

  • 为了给颜色识别传感器和彩虹灯环编程,我们需要添加一个代码库。在代码抽屉底部找到“扩展”,并点击它。这时会弹出一个对话框。搜索PlanetX,然后点击下载这个代码库。

../../_images/TPBot_tianpeng_case_15_03.png

##示例程序

  • 当开机时设置显示图标,初始化连接在J1端口的彩虹灯环为8颗LED灯。

../../_images/TPBot_tianpeng_case_18_04.png

  • 无限循环中,当颜色识别传感器识别到白色,则设置彩虹灯环显示白色,设置天蓬智能车前进速度为30%。

../../_images/TPBot_tianpeng_case_18_05.png

  • 当颜色识别传感器识别到红色,则设置彩虹灯环显示红色,天蓬智能车停止行驶,设置天蓬智能车的车头灯的RGB值分别为0~255之间的随机数。

../../_images/TPBot_tianpeng_case_18_06.png

  • 当颜色识别传感器识别到黄色,则设置彩虹灯环显示黄色,并判断超声波传感器的返回值是否在3~20的区间内.如果返回值在3~20的范围内,则设置天蓬智能车以30%的速度向左转1秒,否则以30%的速度前进。

../../_images/TPBot_tianpeng_case_18_07.png

  • 当颜色识别传感器识别到绿色,则设置彩虹灯环显示绿色,并判断巡线传感器的状态,如果左侧检测到黑色,则设置左轮速度为0,右轮速度为40;如果右侧检测到黑色,则设置左轮速度为40,右轮速度为0,如果两侧都检测到黑色,则证明天蓬智能车没有偏离黑线,设置天蓬智能车以25%的速度前进。

../../_images/TPBot_tianpeng_case_18_08.png

  • 当颜色识别传感器识别到蓝色,则设置彩虹灯环显示蓝色,设置天篷智能车停止行驶。

../../_images/TPBot_tianpeng_case_18_09.png

完整程序:

../../_images/TPBot_tianpeng_case_18_10.png

程序

-- --- ## 结论 ---
  • 将颜色卡片插入颜色识别传感器下方位置,激活不同的功能

  • 插入白色卡片:彩虹灯环显示白色灯光,小车向前行驶

  • 插入红色卡片:彩虹灯环显示红色灯光,小车立即停车并随机切换车头灯颜色

  • 插入黄色卡片:彩虹灯环显示黄色灯光,小车进入避障模式

  • 插入绿色卡片:彩虹灯环显示绿色灯光,小车进入巡线模式

  • 插入蓝色卡片:关闭彩虹灯环,小车立即停车

20.6. 思考


20.7. 常见问题


Q:使用案例中的代码发现小车不能正常运行? A:电池电量不足,增大程序中的小车速度参数的数值,并测试。

20.8. 相关阅读