基于单片机智能超声波避障红外寻迹小车控制系统设计
一、系统整体设计方案
本系统以 STC89C52RC 单片机为控制核心,融合超声波避障与红外寻迹技术,聚焦智能小车自主行驶需求,适用于教学演示、室内巡检等场景,可实现按预设轨迹行驶、自动检测并避开前方障碍物、行驶状态实时反馈功能,兼顾灵活性与稳定性。系统遵循 “功能协同、响应及时” 原则,划分为五大核心模块:红外寻迹模块、超声波避障模块、单片机控制模块、电机驱动模块及状态指示模块。
红外寻迹模块负责识别地面轨迹(如黑色引导线),将轨迹信号传输至单片机;超声波避障模块实时检测小车前方障碍物距离,为避障决策提供数据;单片机控制模块作为 “核心中枢”,解析寻迹与避障信号,规划行驶路径,输出电机控制指令;电机驱动模块接收指令,控制小车前进、后退、转向及速度调节;状态指示模块通过 LED 灯与蜂鸣器,提示小车当前行驶模式(寻迹 / 避障)及障碍物预警状态,方便观察系统运行情况。
二、系统硬件设计
系统硬件围绕 51 单片机搭建,元器件选型以高灵敏度、低功耗为核心,确保小车行驶精准与响应迅速。红外寻迹模块采用 3 个 TCRT5000 红外反射传感器,呈 “一字型” 安装于小车底部(中间 1 个用于识别轨迹中心,两侧各 1 个用于检测轨迹偏移)。该传感器通过发射红外光并接收反射光判断地面颜色,遇到黑色轨迹时反射光弱,输出高电平;遇到白色地面时反射光强,输出低电平,信号直接接入单片机 IO 口,无需额外模数转换,检测距离 2-10mm,满足轨迹识别需求。
超声波避障模块选用 HC-SR04 超声波传感器,安装于小车车头正前方,由发射端、接收端及控制电路组成。模块工作电压 5V,通过 Trig(触发)、Echo(回响)引脚与单片机 IO 口连接,单片机发送 10μs 以上高电平触发信号后,模块发射 8 个 40kHz 超声波,遇到障碍物后反射回波被接收,Echo 引脚输出高电平,高电平持续时间与障碍物距离成正比,单片机通过计算高电平时间,结合公式 “距离 =(高电平时间 × 声速)/2” 得出障碍物距离,测量范围 2-400cm,精度 ±3mm,能及时检测前方障碍。
电机驱动模块采用 L298N 双 H 桥电机驱动芯片,连接 2 个 12V 直流减速电机(分别控制小车左右轮),芯片通过 ENA、ENB 使能引脚及 IN1-IN4 控制引脚与单片机连接。单片机通过调节 ENA、ENB 引脚的 PWM(脉冲宽度调制)信号占空比控制电机转速(占空比越大转速越高),通过控制 IN1-IN4 引脚电平组合实现电机正转(小车前进)、反转(小车后退)及单侧停转(小车转向),例如左电机停转、右电机正转实现小车左转。状态指示模块采用 2 个 LED 灯(绿、红)与 1 个无源蜂鸣器,绿灯亮表示寻迹模式,红灯闪烁表示检测到障碍物,蜂鸣器在障碍物距离小于 30cm 时发出警报声,提醒即将避障。系统电源采用 12V 锂电池,经 LM1117-5V 稳压芯片为单片机、传感器供电,保障各模块电压稳定。



三、系统软件设计
系统软件基于 Keil C51 开发环境编写,采用模块化编程思想,主要包含主程序、红外寻迹子程序、超声波避障子程序、电机控制子程序及状态指示子程序,各模块协同工作,确保小车行驶流畅,避障响应时间小于 500ms。
主程序负责系统初始化与流程调度,初始化阶段完成单片机 IO 口、定时器、PWM 模块的参数配置,设置定时器 0 定时 100ms 用于传感器数据采样,定时器 1 定时 200ms 用于 PWM 信号生成(控制电机转速),同时初始化行驶模式(默认寻迹模式)、电机转速(默认 50% 占空比)及避障距离阈值(30cm,小于该值触发避障)。初始化完成后,主程序进入循环状态,优先调用超声波避障子程序检测障碍物,若未检测到障碍则调用红外寻迹子程序获取轨迹信号,根据信号调用电机控制子程序调节行驶方向;若检测到障碍则切换至避障模式,完成避障后恢复寻迹模式,同时调用状态指示子程序更新指示灯与蜂鸣器状态。
红外寻迹子程序按采样周期读取 3 个 TCRT5000 传感器信号,根据信号组合判断轨迹状态:中间传感器高电平、两侧低电平表示轨迹正常,控制小车直线行驶;左侧传感器高电平、中间及右侧低电平表示轨迹偏左,控制左电机减速、右电机加速,实现小车右转回正;右侧传感器高电平、中间及左侧低电平表示轨迹偏右,控制右电机减速、左电机加速,实现小车左转回正。超声波避障子程序通过控制 HC-SR04 发射触发信号,读取 Echo 引脚高电平时间并计算障碍物距离,若距离小于 30cm,立即控制小车停止前进,随后检测左右侧障碍物距离(可通过增加左右侧超声波传感器实现),优先向障碍物较远一侧转向,转向完成后继续前进,直至避开障碍。
电机控制子程序根据主程序指令,输出对应的 PWM 信号与 IO 口电平:直线行驶时,ENA、ENB 占空比均设为 50%,IN1、IN3 高电平,IN2、IN4 低电平;左转时,ENA 占空比降至 20%,ENB 保持 50%,IN1 高、IN2 低,IN3 高、IN4 低;避障时,先输出后退信号(IN1、IN3 低,IN2、IN4 高)1 秒,再转向行驶。状态指示子程序根据行驶模式与避障状态控制 LED 灯与蜂鸣器:寻迹模式绿灯亮、红灯灭;避障模式红灯闪烁,蜂鸣器间断发声(响 0.5 秒、停 0.5 秒);障碍避开后恢复寻迹模式指示。
系统总结
本基于单片机的智能超声波避障红外寻迹小车控制系统,通过 TCRT5000 传感器实现精准轨迹识别,HC-SR04 传感器实时检测障碍物,L298N 驱动模块控制小车行驶,51 单片机统筹协调寻迹与避障功能,状态指示模块提升运行可观测性,形成完整的智能行驶方案。系统硬件搭建简单、成本低,软件逻辑清晰、易调试,能稳定实现按轨迹行驶与自动避障,适用于高校自动化专业教学实践与智能小车设计竞赛。后续可拓展蓝牙模块,支持手机 APP 远程控制与模式切换,增加灰度传感器实现多轨迹识别,进一步提升小车智能化水平与适用场景范围,在教育与 hobby 领域具有较高的实用价值。
文章底部可以获取博主的联系方式,获取源码、查看详细的视频演示,或者了解其他版本的信息。
所有项目都经过了严格的测试和完善。对于本系统,我们提供全方位的支持,包括修改时间和标题,以及完整的安装、部署、运行和调试服务,确保系统能在你的电脑上顺利运行。
更多推荐
所有评论(0)