当前位置:首页 > 单片机 > 单片机
[导读]1 引言我国自2006年起举办的全国大学生“飞思卡尔杯”智能汽车竞赛融科学性、趣味性和观赏性为一体,是一项以迅猛发展、前 景广阔的汽车电子为背景,涵盖了自动控制、模式识别、传感技术、电子、电气、计算

1 引言

我国自2006年起举办的全国大学生“飞思卡尔杯”智能汽车竞赛融科学性、趣味性和观赏性为一体,是一项以迅猛发展、前 景广阔的汽车电子为背景,涵盖了自动控制、模式识别、传感技术、电子、电气、计算机、机械与汽车等多个学科专业的科技创新比赛。参赛队伍在车模平台基础 上,制作一个能够自主识别路线的智能车,在专门设计的赛道上自动识别道路行驶 [1]。

本文所述的智能车就是根据比赛规则要求设计并 制作而成的,该智能车控制系统采用飞思卡尔半导体公司生产的16位MC9S12DG128单片机作为数字控制器,由安装在车前部的黑白CMOS摄像头负责 采集赛道信息,并将采集到的信号经二值化处理后传入单片机,单片机对信号进行判断处理后,由PWM发生模块发出PWM波对转向舵机进行控制,完成智能车的 转向。另外,智能车后轮上装旋转编码器,用来采集车轮速度的脉冲信号,单片机使用PID控制算法处理后的控制量去改变电机驱动模块的PWM波占空比,从而 控制智能车的行驶速度。

2 控制方案设计和硬件电路组成

设计有效的智能车控制系统必须首先掌握控制对象的特性。根据对智能车特点的分析,可以认为智能车转向控制系统的传递函数近似为一阶积分加纯滞后,速度控制对象的传递函数近似为一阶惯性加纯滞后的结论。 转向控制系统主要是要求响应速度快,对稳态控制精度要求不高。而且控制对象只有积分和滞后环节,没有常见的惯性环节。根据以上特点,转向控制采用PD控制器。

对速度进行检测和控制的意义在于尽可能使智能车按照道路条件允许的最高速度行驶。

在 弯道应将车速限制为不脱轨的最高速度,在直道应当适当进行急加速以缩短单圈运行时间,提高比赛成绩。同时,对速度信号进行积分求和可以得到赛道长度信息, 为道路识别与记忆模块提供数据。智能车速度控制系统的精度不需要太高,关键是如何快速响应赛道的路况变化。因此速度控制采用PID控制器。针对不同的道路 状况迅速准确地改变车速,实现稳定过弯。 智能车的硬件电路主要由视频处理模块、方向控制模块和车速控制模块组成。各模块与单片机之间的关系如图1所示。

3 模块功能

(1)视频处理模块。视频处理模块由CMOS摄像头、二值化电路和同步分离电路构成。

(2)转向控制模块。转向控制模块主要由舵机完成。舵机的转动会转化为车模转向拉杆的横向移动,从而带动车模前轮的转动,控制智能车的行驶方向。舵机的转向控制采用PD控制,根据赛道中央黑线的位置,单片机向舵机输出相应占空比的PWM信号。

(3) 车速控制模块。车速控制模块主要由直流电机、驱动电路和旋转编码器构成。根据CMOS摄像头所检测的路径信息判断智能车当前所处的赛道状况,并根据旋转编 码器所检测的实际车速形成对智能车行驶速度的闭环控制,合理地调整数字PID控制算法的Kp、Ki、Kd三个参数,达到车速响应迅速并消除静态误差的目的。

4 电路设计

(1)电源模块设计。电源模块要为单片机、传感器、舵机和驱动电机供电。因此需要提供多种电源满足各个模块 的要求。电池在完全充满之后空载电压只有8v左右,并随着电池的消耗,电压逐渐降低。电机启动及反接制动时电流很大,也有可能将电池电压拉得比较低。为了 避免电源电压不稳定,影响摄像头视频处理电路和单片机工作不正常,在本设计方案中使用了DC-DC变换芯片MC34063以及低差压稳压器LM2940。 MC34063输出稳定的8伏电压提供给CMOS摄像头,LM2940为16位MC9S12DG128单片机、视频放大及二值化电路提供稳定的5伏电源, 保证了系统在各种情况下的稳定运行。电源模块原理图如图2所示。

(2)直流电机驱动模块设计。直流电机驱动采用飞思卡尔公司的5A 集成H桥芯片MC33886。MC33886芯片内置了控制逻辑、电荷泵、门驱 动电路以及低导通电阻的MOSFET输出电路,适合用来控制感性直流负载(例如直流电机)。可以提供连续的5A电流,并且集成了过流保护、过热保护、欠压 保护。通过控制MC33886 的四根输入线可以方便地实现电机正转、能耗制动及反接制动。

图3为经过简化的H桥电路,当S1、S4 导通且S2、 S3 截止时,电流正向流过直流电机,智能车前进;当S2、S3 导通且S1、S4 截止时,电流反向流过直流电机,适当利用这个过程可以使车模处于反接 制动的状态,迅速降低车速;当S3、S4导通且S1、S2 截止时,没有电源加在直流电机上,直流电机电枢两端相当于短接在一起。由于电机轴在外力作用下 旋转时,电机可以产生电能,此时可以把直流电动机看作一个带了很重负载的发电机,电机上会产生一个阻碍输出轴运动的力,这个力的大小与负荷的大小成正比, 此时电机处于能耗制动状态。

本设计方案中采用两片MC33886并联,一方面减小导通电阻对直流电机特性的影响,另一方面减小MC33886内部的过流保护电路对电机启动及制动时的影响。直流电机驱动模块电路原理图如图4所示。

(3)传感器电路设计。智能车采用CMOS摄像头作为图像传感器,保证赛道信息采集准确有效。CMOS摄像头的输出信号是PAL制式的复合全电视 信号,每秒输出50帧(分为偶场和奇场)。当CMOS摄像头采集图像时,偶场和奇场不是同时采集的,因此,可以在每场信号都对路径进行识别。

(4) 无线数据传输模块设计。智能车加装了基于射频收发芯片nRF403的无线数据传输模块,并在此基础上实现了MODBUS 通信协议,在测试智能车参数及程 序调试的过程中很有帮助。在运行的过程中可以将智能车的各项参数实时地发送上来,分析智能车的运行状态可以更有针对性地对控制程序进行改进。在调试运动参 数的过程中,可以通过上位机软件改变如Kp、Ki、Kd 等参数,而不用重新烧写程序,迅速而方便。

5 软件设计

智能车控制 系统程序结构如图5所示,这是一个两层的分级控制系统。底层控制系统包括“转向控制系统”和“车速控制系统” ,上层主控程序通过改变底层控制系统的设定 值、控制参数和约束条件的方法,对整个控制系统进行调度。设计这种分层结构的控制系统是参照了集散控制系统DCS的结构特点,程序各部分功能明确、结构清 晰,便于调试和维护。为了调试方便,主控程序中添加了基于无线信道的MODBUS通讯协议,对智能车行驶参数的监视和调整提供了很大的便利。

软件所实现的功能有:

①初始化。

②数据采集及滤波处理。为了尽量减少引入的纯滞后时间,本文提出 了一种独特的具有创新性的视频信号采集方法,即用MC9S12DG128 单片机提供的SPI 口直接读取经过二值化处理的视频信号。大赛规则中指定了赛 道上黑色引导线的宽度为2.5 厘米,故摄像头中采集到的引导线宽度在正常情况下也应当落在一定范围内。可以用实验的方法测得引导线对应的像素宽度,然后 在滤波程序中对采集到的引导线线宽进行控制,如果超出正常范围即认为是无效数据。实验证明,这种方法可以有效地将干扰滤除。

③道路识 别。智能车分层控制系统的核心是赛道的识别。实际测试发现由于CMOS摄像头的可视范围比较小而且视野范围呈梯形,在快速运动中经常发生赛道部分甚至全部 脱离视野范围的情况,给赛道识别带来很大的困难,因此完整识别赛道模式几乎是不可能的。为了简化问题,本方案只识别赛道中的直线段,根据直线段的数量和长 度将赛道分割成不同的区域,在一个区域中对控制参数进行优化。

④电机控制。单片机通过接收旋转编码器检测智能车后轮转动所产生的脉冲数,采用位置式PID控制算法的递推形式对直流电机的转速进行快速准确地控制。

位置式PID控制算法的递推形式: Δu(k) =Kp[e(k) -e(k-1)] +Ki×e(k) +Kd[e(k) -2e(k-1) +e(k-2)],u(k) =u(k-1) +Δu(k) 式中:u(k)为k时刻控制器的输出; e(k)为k时刻的偏差;Kp、Ki、Kd分别为位置式PID控制算法的比例系数、积分常数和微分常数[7]。

⑤舵机控制。单片机通过CMOS摄像头检测到的路径信息,采用不完全微分PD控制算法控制舵机的转角,实现路径跟踪。

6 结语

本文介绍了一种智能车控制系统的设计与实现。图5为已制作完成的智能车实物照片。通过大量实验测试证明该智能 车能快速平稳地在制作的赛道上跟踪黑色引导线行驶,寻迹效果良好,速度控制响应快,动态性能良好,稳态误差较小,系统的稳定性和抗干扰能力强。在2008 举办的全国大学生“飞思卡尔杯”智能汽车竞赛中取得了华北赛区二等奖的好成绩, 充分证明了设计方案的有效性和稳定性。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

串口作为单片机开发的一个常用的外设,应用范围非常广。大部分时候,串口需要接收处理的数据长度是不定的。那么怎么才能判断一帧数据是否结束呢,今天就以STM32单片机为例,介绍几种接收不定长数据的方法。

关键字: 单片机 串口 STM32

单片机诞生于1971年,经历了SCM、MCU、SoC三大阶段。单片机由以前的1位、4位、8位、16位,发展到现在的32位甚至64位。当前国内MCU厂商已有上百家,对标进口芯片的情况非常严重,导致国内MCU产品将陷入同质化...

关键字: 单片机 MCU 市场

(微控制单元 MCU(Microcontroller Unit),又称单片机,是把中央处理器(CentralProcess Unit; CPU)的频率与规格做适当缩减,并将内存(memory)、计数器(Timer)、US...

关键字: 单片机 芯片 CPU

在疫情的影响下,出门后、用餐前使用酒精消毒已成了人们的日常,而酒精喷雾机也因此变得十分热销。为了避免交叉感染的风险,自动酒精喷雾器也就应运而生。不同于传统手动喷雾器不美观、手部接触不卫生的bug,此款自动感应酒精喷雾器使...

关键字: 芯岭技术 方案开发 解决方案 单片机

在实际的单片机控制系统中,有时候会使用数字逻辑芯片对单片机和受控元件进行隔离,以保护单片机,或者令单片机更好地对后级进行控制。

关键字: 单片机 数字逻辑芯片 受控元件

MH32F103AVET6使用高性能的32位内核,内置了多达2个高级定时器、10个通用定时器、2个基本定时器、3个12位的ADC、2个12位的DAC,还包含标准和先进的通信接口包括:3个SPI接口、2个I2S接口、2个I...

关键字: 单片机 MCU

最近由于换季,天气突然的转凉,大家也是直呼好冷。天冷了自然是要注意防寒保暖。一个能够当充电宝用的暖手宝会是你最好的陪伴。暖手宝是一种非常便捷易用的发热工具,并且体形小巧,可以随身携带并轻易握在手中,也可以放置在身上的其它...

关键字: 芯岭技术 方案开发 解决方案 单片机

XL32F003 系列微控制器采用高性能的 32 位 ARM®Cortex®- M0+ 内核,宽电压工作范围的MCU。嵌入高达64 Kbytes flash和8 Kbytes SRAM存储器,最高工作频率32 MHz。包...

关键字: 单片机 MCU

电动洗鼻器是一种全新的鼻腔清洁工具,一般是通过水压将生理盐水送进鼻腔,借助于生理盐水的杀菌作用及水流的冲击力,将鼻腔内已聚集的致病菌及污洉排出,从而使鼻腔恢复正常的生理环境,恢复鼻腔的自我排毒功能,达到保护鼻腔的目的。让...

关键字: 芯岭技术 方案开发 解决方案 单片机

大家好,我是小舒,今天我带来了一个开源项目。学习单片机的小伙伴,对J-link一定不会陌生。J-link可以使用JATA和SWD接口进行在线Debug和程序的烧录,曾经一段时间,某宝上J-Link铺天盖地,各种各样,价格...

关键字: 开源项目 J-link 单片机

单片机

21600 篇文章

关注

发布文章

编辑精选

技术子站

关闭