# 小车跟随系统 **Repository Path**: hellowangjiawei/car-following-system ## Basic Information - **Project Name**: 小车跟随系统 - **Description**: 22年电赛C题小车跟随系统,主车采用STM32RCT6和openmv,从车采用MSP432P401R和8路灰度 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 10 - **Forks**: 1 - **Created**: 2023-07-25 - **Last Updated**: 2025-07-07 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 小车跟随系统 #### 介绍 22年电赛C题小车跟随系统,主车采用STM32RCT6和openmv,从车采用MSP432P401R和8路灰度 #### 软件架构 - 主车采用STM32配合Openmv,Openmv模拟红外,反馈给STM32,再利用**权值法**进行换算得到偏差,利用循迹PD + 速度PI控制,这里并没有采用线性回归算法进行循迹,因为考虑到交叉路口不好判断(如果采用线性回归算法的话,可在交叉处关闭循迹,开环选择内外圈),当识别到交叉路口时,返回岔路标志位,此时给小车主动赋一个很大的差速,实现转弯,当识别到停车点时,返回停车标志位(停车点还用于对圈数的记录) - 从车采用MSP432配合8路灰度,基本算法于主车一致,但是在岔路口的处理有所区别,由于灰度模块对岔路口不好进行判断,因此在选择走内圈的时候,我是将小车的循迹中值向左偏移,这样小车就会选择内圈方向了。 - 两车通信采用zigbee,只需提供发车标志位,而控制两车间距则是采用串口超声波模块,当**直线距离**小于20cm时,后车主动减速,注意这里是直线距离,而当两车分别在内外环超车的时候,应该屏蔽超声波(如果是使用openmv的Apriltag定位也要考虑这个问题) ### 代码可能存在一些小bug,需要结合自身硬件以及现场环境做相应调整,欢迎大家相互指正学习,整理不易,记得Star哦 :stuck_out_tongue_winking_eye: