黄静月,常博学,王日霞
(1.桂林电子科技大学,广西 桂林 541004;2.桂林航天工业学院,广西 桂林 541004)
随着人工智能时代的到来,机器人、云计算等新一代科技将取代大部分机械劳动,智能寻迹小车又称轮式移动机器人,是模拟无人搬运车的工作过程[1],能够按照预设轨迹自动移动,应用于无人驾驶动车、无人工厂及科学勘测等方面,已成为智能控制领域研究的热点。重点研究智能寻迹小车对轨迹的自主识别与实时校正,使小车沿着轨道稳定地运动,这就要求整个小车具有较好的稳定性能和较强的抗干扰能力,并在此基础进行升级,其研究结果在多个领域被加以推广和应用[2]。
本文所设计的智能寻迹小车是由单片机主控模块、二次电源模块、电机驱动模块及寻迹模块等组成的。本文详细介绍了基于单片机控制的智能寻迹小车的总体方案设计、控制过程、寻迹原理以及软硬件设计与实现。
系统由硬件部分和软件部分组成。系统硬件模块包括单片机主控系统、直流电机驱动电路、二次电源电路和寻迹电路。单片机主控系统作为小车的核心部件完成信息交换及智能控制,直流电机驱动电路控制电机运转,二次电源电路提供各模块所需电压,光电传感器作为路径识别传感器用来完成对白色底板上的黑色轨道的路面检测及寻迹。光电传感器检测道路信息传送至单片机微处理器,单片机微处理器根据道路信息驱动直流电机,控制小车稳定地寻线行驶[3]。系统软件采用C 语言进行编程。智能寻迹小车的整体架构图如图1 所示。
图1 智能寻迹小车的整体架构图
电源电路提供各个模块需要的稳定电压,本系统采用5 节电池组作为主电源,经过L7805CⅤ稳压块处理后输出5 Ⅴ电压,为单片机、驱动电路及寻迹电路等电路提供电压。L7805 三端稳压器的1 脚为输入端,2 脚为公共端(接地负极端),3 脚为输出端(输出ⅤDD+5 Ⅴ直流电压)。当输入电压大于8 Ⅴ时,输入到L7805 三端稳压器的1 脚和2 脚后,经稳压后,由2 脚和3 脚输出稳定不变的+5 Ⅴ直流电压。电源模块电路图如图2 所示。
图2 电源模块电路图
寻迹电路由TCRT5000 光电传感器和LM393 电压比较器2 部分组成,如图3 所示。红外光电传感器为检测信号工具,用黑色胶带贴在白色的地板上作为轨 以根据接收到的反射光强弱来判断道路。遇到黑线时光电接收管截止,输出高电平,将会大于比较器反向输入端电位,比较器输出高电平,单片机根据传送过来的信息会对小车实际状态作出相应调整;反之,当小车在白色跑道正常行驶时,装在车头底部的红外接收管接收白色跑道反射回来的信号,与比较器反向输入端电位进行比较,输出低电平,致使小车继续前行。
图3 寻迹电路图
智能寻迹小车以单片机为控制核心,寻迹电路模块的输出信号送至单片机,通过单片机进行输入/输出口检测信号,输出驱动信号(高低电平信号)至驱动电路驱动2 个电机控制其前进、停止、左右转向等行为,使其在弯、直道路上沿轨道稳定地自由行驶。单片机采用PWM 脉宽调速,实现小车在弯道上减速转弯。
本文采用的单片机型号是STC89C52RC,p0.6、p0.7 用于接收寻迹电路传送的信号,p0.0、p0.1 为驱动左轮电机PWM 控制信号接口,p0.2、p0.3 为驱动右轮电机PWM 控制信号接口。
驱动模块由驱动电路和直流电机组成。驱动电路由4 个三极管构成的H 桥驱动电路,单片机根据寻迹电路传送过来的PWM 信息驱动电路控制电机运转。由于单片机输出的PWM 信号功率太小,不能直接驱动H 桥电路工作,所以在H 桥电路两边加上一个三极管对PWM 信号放大,才能进入H 桥驱动电路,控制道,黑色和白色对光线的反射系数不同,光电传感器可电机稳定运转。驱动电路图如图4 所示。
图4 驱动电路图
驱动电路工作过程:本系统使用2 个直流电机驱动小车的左右轮,p0.0、p0.1、p0.2、p0.3 分别控制小车的左右电机,完成小车的前进、左转、右转及停止等动作[4]。驱动电路由4 个三极管Q3、Q4、Q5、Q6组成的H 桥电路和1 个电机构成,要使电机运转,必须导通对角线上的1 对三极管,因此Q3 和Q4、Q5和Q6 是互补对称三极管。主控电路单片机输出PWM1、PWM2 脉宽调速信号,经过Q1、Q2 三极管对信号进行放大。然后输入到H 桥电路进行处理,其中PWM1 和PWM2 是互补的PWM 信号,PWM1 和PWM2 周期相同,占空比相同,极性相反,使得对角线上的2 个三极管同时导通,同时关断。在PWM1 为高电平、PWM2 为低电平时,经过Q1 三极管对PWM1进行放大,使得Q3、Q5 都导通,Q4、Q6 都截止,电流从电源正极经过Q3,从左到右流过电机,然后经过Q5 流入电源负极,此时,直流电机正转。在PWM1为低电平、PWM2 为高电平时,Q1 三极管对PWM2进行放大,使得Q4、Q6 都导通,Q3、Q5 都截止,电流还是从左到右流过电机,经过Q4 和Q6 形成电流回路,此时,直流电机反转运动。
本系统通过C 语言编程实现系统功能,有利于单片机产品的重新选型和应用程序的移植,便于系统的后期维护和功能升级[5]。
系统流程分析:主程序关键作用在于导向及决策,首先初始化单片机主控系统,然后根据智能小车的状态确定系统所要执行的任务,在行驶过程中,单片机对传感器的信号实时判断,左边信号为低电平时控制左边电机转动,左指示灯亮;右边信号为低电平时控制右边电机转动,右指示灯亮。当小车在轨道上直线行驶时,左右电机匀速转动,左右指示灯亮;当小车在左弯道上,根据PWM 脉宽调速原理,左电机转动的速度小于右电机转动的速度;当小车在右弯道上,左电机转动的速度大于右电机转动的速度;到达终点时左右信号为高电平,电机停止转动,指示灯灭。
为验证系统的可行性,将智能寻迹小车置于S 形轨道上进行功能及性能测试。图5(a)、图5(b)、图5(c)分别是智能小车左转、右转及停止实物图。实验表明,通过左右两轮可以实现智能寻迹小车的前进、转弯及停止等寻迹功能,验证了智能寻迹小车的稳定性及可靠性。
图5 智能小车运动过程图
本系统采用模块化的设计原则,具有易扩充、易修改及相互独立等优点。智能寻迹小车以单片机为核心部件,光电传感器和电压比较器共同完成智能小车的寻迹功能,单片机处理数据后,传送给驱动电路,驱动直流电机转动,实现小车的智能控制。