基于 MC9S12XS128 与线性 CCD 的智能小车图像识别系统电路设计

2017-08-18 75 0

本文研究的智能小车系统选用了 TSL1401CL 线性 CCD 图像采集模块,该模块采用串行通信方式与主控 CPU 连接,不仅电路简单、性能稳定,而且采集速率快。通过实验测试,本文设计的智能车能根据采集到的图像分析前方路径及障碍而实现智能驾驶,具有实用价值。

一、系统设计思想

经过调研与分析,采用了 MC9S12XS128 单片机、TSL1401CL 线性 CCD 图像采集模块、稳压芯片以及液晶 OLED 等外围器件设计与开发这套智能小车系统。MC9S12XS128 高速单片机为 Freescale 公司新推出的 16 位高性能高速单片机,其接口丰富、功耗低、信息处理能力强大,能对小车前方路径及障碍进行及时分析,处理迅速、性能稳定。为了提高路面图像采集的速度与质量,选用 TSL1401CL 线性 CCD 图像传感器:它具有功耗小、性能稳定、灵敏度高、响应速度快等优点,其工作过程是先将路况光学信号转换为模拟电流,模拟电流放大后再进行 A/D 转换变成数字信号,最后通过串口送至主控 CPU。智能小车的 CPU 根据 CCD 采集到的信息进行分析和处理,从而实现系统的自动控制与障碍处理、路径探测。在软件设计中采用了 PID(比例、积分、微分)算法,其运算参数可以根据过程的动态特性及时整定;通过 PID 算法、模糊 PID 算法来实现智能车的转向、控速等精确自动控制,另外还有较好的避障功能,实现了全智能的安全控制。

二、系统硬件设计

本项目采用模块化设计与开发,主要有 CCD 采集模块、电源模块、电机驱动模块、车速控制模块和转向控制模块,系统总体设计框图如图 1 所示。

基于 MC9S12XS128 与线性 CCD 的智能小车图像识别系统电路设计

图 1 系统总体设计框图

1. CCD 采集模块

该模块采用 TSL1401CL 线性 CCD 图像传感器,其内部由一个 128×1 的光电二极管阵列、相关的电荷放大器电路和一个内部的像素数据保持功能组成,它提供了同时集成起始和停止时间的所有像素。对于 TSL1401CL 线性传感器的驱动与使用,本项目利用 MC9S12XS128 的 PA0 和 PA1 引脚对其 CLK 和 SI 两个引脚按特定的时序发出方波信号,TSL1401CL 的 AO 引脚就会依次输出 128 个像素点的模拟信号给 MC9S12XS128,其电路如图 2 所示。

基于 MC9S12XS128 与线性 CCD 的智能小车图像识别系统电路设计

图 2 CCD 采集电路

通过测试发现,该传感器的输出信号和环境光线密切相关:白天 AO 输出值比晚上高很多,顺光与背光条件下相差也很大,白炽光和日光灯光线条件下差异很大。同一镜头或信号放大倍数,必然无法适应各种环境,经常会出现信号过弱或饱和,对环境的适应性很弱;对此可通过软件使用动态曝光时间,或通过单片机动态改变运放的放大倍数。

2. 电源模块

系统由不同的模块组成,每个模块工作的电压不同,设计时还要考虑各模块所需的功率;另外还需设计电池检测系统,以便直观了解电池的情况。智能车需要的电源要求包括 5 V、7.2 V 等:对于 5 V 供电设计选择了 LM2940-5,对比 7805,LM2940 的优点是低压差稳压,其稳压差小于 500 mV,这样保证电池在低电压的情况下仍能使单片机和传感器正常工作;同时 LM2940 的输出电流可以达到 1 A,足够供应放大电路和键盘显示电路的工作。LM2940 模块电路如图 3 所示。

基于 MC9S12XS128 与线性 CCD 的智能小车图像识别系统电路设计

图 3 电源模块电路

3. 电机驱动模块

驱动电路为智能车驱动电机提供控制和驱动,这部分电路的设计要求以能够通过大电流为主要指标。驱动电路的基本原理是 H 桥驱动原理,目前流行的 H 桥驱动电路有 H 桥集成电路(如 MC33886)、集成半桥电路(如 BTS7970)以及 MOS 管搭建的 H 桥等电路。对于本系统的设计,选择了性能较好的 BTS7970 作为电机驱动模块的主芯片,其工作电路如图 4 所示。

基于 MC9S12XS128 与线性 CCD 的智能小车图像识别系统电路设计

图 4 电机驱动电路

4. 速度控制模块

智能车的车速主要采用增量式 PID 控制和位置式 PID 控制,将模糊控制与 PID 控制相结合,使智能车能够在赛道上平稳快速地行驶。智能小车速度控制系统以 XS128 单片机为核心,由单片机给电机一个给定速度即理论速度,建立模糊 PID 控制器,利用模糊 PID 控制器来控制电机的转速,即控制智能小车的实际速度;再利用光电编码器来测量智能小车的实际车速,并将实际车速反馈给模糊 PID 控制器,形成闭环负反馈回路。

转向控制模块中,智能车的舵机 SD-5 采用位置式 PD 控制:因为舵机的控制精度高、不同的 PWM 占空比对应舵机的不同转角,所以采用开环控制;当小车位于直道时将舵机摆正,当小车位于弯道时,弯道的曲率越大则舵机的转角摆角越大,利用图像的加权平均偏差与图像中心之差作为控制量。

三、系统软件设计

系统软件采用 C 语言编写,通过 CodeWarrior IDE 编译。软件设计的思想是驱动线性 CCD 光学器件采集单线图像信息,通过处理采集到的图像来判断小车所处的位置和确定小车行进时前进方向上的路线情况,然后将处理后的信息转化成变化的 PWM 量发送到舵机和电机以及编码器处理模块,从而达到对小车行走方向及车速的控制,系统流程如图 5 所示。

基于 MC9S12XS128 与线性 CCD 的智能小车图像识别系统电路设计

图 5 系统流程

本项目智能小车系统的设计与开发选用了 MC9S12XS128 高速单片机为控制核心,通过 A/D 转换方法获取 TSL1401CL 线性 CCD 采集信息以及角度测量信息,运用模糊 PID 算法实现对车模直行、转向以及速度控制的方案。其中 MC9S12XS128 为整个系统信息处理和控制命令的核心,线性 CCD 传感器用来识别小车的运行路径,采集的信息在单片机上进行实时比较,通过 PID 控制算法来控制小车速度、转向,从而实现小车的智能自动驾驶。

传统的方案多采用红外光电传感器,此类方案不仅噪声较大,而且与主控 CPU 的连接电路复杂、传输速率慢;本方案的优点是电路简单、系统性能稳定,经测试,本智能小车能在复杂的路况下实现智能自动驾驶。

相关文章

压敏电阻的参数、特性与应用
基于 STC12C 与 SIM300 的智能家电防盗系统电路设计
基于 nRF24L01 与 DHT11 的无线温湿度测试系统电路设计
电冰箱电子温控器的原理与半自动除霜电路
基于 586-Engine 的无人机飞行控制器电路设计
三极管开关电路的改进接法:加速电容、图腾柱与驱动电路

发布评论