这个项目是一个基于树莓派的智能小车,主要利用C语言进行编程。该项目通过树莓派GPIO接口控制小车的运动,以及与各种传感器的通信。此外,项目还使用了OpenCV库来处理图像,实现红绿灯识别等功能。
- 手动模式:在这种模式下,用户可以使用键盘控制小车的运动。'w'键使小车向前移动,'s'键使小车停止,'a'和'd'键分别使小车向左和向右移动。
- 超声波避障模式:在这种模式下,小车使用超声波传感器检测前方的障碍物。如果检测到障碍物,小车会自动停止,然后向左转45度,然后继续前进。
- 自动循迹模式:在这种模式下,小车根据地面上的线条自动导航。小车使用8路循迹传感器读取地面的线条,然后通过PID控制算法调整运动方向。
- 红绿灯识别模式:在这种模式下,小车使用OpenCV库处理摄像头捕获的图像,识别出红绿灯的颜色。当识别到红灯时,小车会停止;当识别到绿灯或者没有红绿灯时,小车会开始移动。
- OpenCV
- PID控制
- 超声波传感器
- 8路循迹传感器