基于单片机的汽车防误踩油门安全系统
2014-02-08厉进步李明娟刘伟波
厉进步, 李明娟, 刘伟波, 高 斌, 訾 阳
(滨州学院 a. 飞行学院; b. 物理与电子科学系, 山东 滨州 256603)
0 引 言
汽车是当今社会中最主要的交通工具之一,随着人民生活水平的提高,有车一族越来越多,相应的交通事故也随之增多。其中,由于慌乱、疲劳驾驶等原因本该踩刹车而误踩油门引起交通事故的占很大一部分比例[1-4]。在紧急情况下,由于驾驶员大脑因紧张慌乱,特别是新手驾驶员更易忙中出错,误踩了油门,导致车辆不但不会停止,反而会加速冲向前方,从而造成更加严重的事故。如何更好地避免此类事故的发生,国内外一些相关人员和机构在此方面作了大量的研究,设计了较多的防误踩的装置,如油门制动联动器、油门制动装置等,但这些设计和研究仍存在一定的问题和缺陷,比如有些设计是纯机械式的,系统的稳定性难以得到保证[5-7]。针对上述不足,本设计在前人研究的基础上对油门防误踩装置作了进一步的改进,以更有效地减少或避免因油门误踩而引起的交通事故,最大限度地保证驾驶员和车辆的交通安全。
1 系统组成及基本工作原理
1.1 系统组成
汽车防误踩油门安全系统包括:STM32单片机、电源模块、稳压电路、电子油门踏板装置、语音模块、超声波测距模块、mpu6050(陀螺仪+加速度)模块、车灯转向模块和车体部分。
1.2 基本工作原理
汽车防误踩油门安全系统以STM32F107单片机作为主控制器:① 汽车行驶中当出现紧急状况时,司机容易误将电子油门踏板装置当成刹车踩,在这种情况下,系统会综合电子油门踏板移动的加速度和超声波测得前方物体的距离采取紧急处理措施和进行语音报警提示;② 高速行车时,当自身车体与前方物体的靠近加速度过大时,语音模块会提醒司机减速行驶;③ 夜间转弯时,系统会根据mpu6050(陀螺仪+加速度)传感器的状态来控制前照灯是否转向,从而减少司机盲区。
2 系统软硬件设计
2.1 系统硬件设计
2.1.1电子油门踏板
电子油门踏板是指电子节流阀控制加速踏板机构(Electric Throttle Control Accelerator Pedal Mechanism,ETC-APM)[8],它的功能是响应驾驶员对发动机动力的需求,提供一个电压信号给动力总成控制模块(ECU)。
2.1.2单片机(STM32F107)
STM32的标准外设包括10个定时器、2个12 b 1-Msample/s AD(模数转换器)(快速交替模式下2M sample/s)、2个12 b DA(数模转换器)、2个I2C接口、5个USART接口和3个SPI端口和高质量数字音频接口IIS。STM32F107拥有全速USB(OTG)接口,两路CAN2.0B接口以及以太网10/100 MAC模块,其强大的外设资源完全能够完成本系统的设计[9-11]。
2.1.3姿态传感器(mpu6050)
姿态传感器(mpu6050)具有功耗低、控制简单、体积小的优点,不仅有利于降低系统功耗还能节省车体空间。
2.1.4超声波测距传感器(KS103)
超声波测距传感器(KS103)探测范围为1~800 cm,探测频率可达500 Hz。本传感器使用 I2C/串口接口与主机通信,采用独特的可调滤波降噪技术,电源电压受干扰或噪音较大时,仍可正常工作。
2.1.5语音模块(BMP5008)
语音模块采用BMP5008系列新型多段语音录放板,外加SPI接口的NOR FLASH的全新设计思路。用户可自由定义6个I/O口的触发功能为单段触发放音还是62段(8421 并行编码)地址选段放音。
2.2 系统软件设计
2.2.1软件控制基本策略
当踩下踏板的加速度大于设定值时[12-13],语音模块会自动报警,同时单片机会综合超声波测得前方障碍物的距离来控制车速;当踩下踏板的加速度小于设定值时汽车正常加速行驶。超声波测得与前方物体的距离较近时,语音模块会提醒司机注意行车安全。
汽车转弯时,单片机读取mpu6050数据并进行卡尔曼滤波,进而控制车灯转向,以减小夜间视野盲区。
以图1所示时序图1 Byte必须保证是8 b长度。数据传送时,先传送最高位(MSB),每一个被传送的字节后面都必须跟随一b应答位(即一帧共有9 b)。如果一段时间内没有收到从机的应答信号,则自动认为从机已正确接收到数据。KS103在发送完探测指令后,需要等待一段时间方可以获取正确的16 b I2C数据。而对我们来说,只知道最大探测时间,但并不确知实际每次的探测时间。KS103采用了探测结束智能识别技术,探测过程中SCL将一直保持为低电平,用户可以通过查询SCL线是否变为高电平while(!SCL)语句来等待,SCL线变为高则表明探测完毕, 可以开始通过 I2C总线接收到 KS103探测到的16 b数据。
图1 IIC数据传送格式
2.2.2系统程序及结构
#include "stm32f10x.h"
#include "stm32_eval.h"
#include "stm32f10x_adc.h"
#include "stm32f10x_dma.h"
#include "iic.h"
#include "stm32f10x_tim.h"
#include "stm32f10x_gpio.h"
#include "stm32f10x_it.h"
#include "chaoshengbo.h"
#include "USART.h"
#include
#define pwm1 TIM1->CCR1
#define pwm3 TIM1->CCR3
#define pwm4 TIM1->CCR4
int main(void)
{
unsigned char i;
u8 count,ave1=0,ave2=0,b=1;
uint16_t data;
system_init();
while(1)
{GPIO_ResetBits(GPIOB,GPIO_Pin_12); GPIO_SetBits(GPIOB,GPIO_Pin_13);
GPIOB->IDR=GPIOB->IDR&0x000F;
data=GPIOB->IDR;
if((data&1<<0)&&(b==1))
{GPIO_ResetBits(GPIOE,GPIO_Pin_8);
pwm1=1650;
pwm3=1650;
for(i=0;i<200;i++)
{
pwm1=pwm1-2;
pwm3=pwm3-2;
Delay(40);
}
b++; GPIO_SetBits(GPIOE,GPIO_Pin_8);
}
if((data&1<<1)&&(b==2))
{
pwm1=1250;
pwm3=1250;
for(i=0;i<255;i++)
{
pwm1=pwm1+2;
pwm3=pwm3+2;
Delay(40);
}
b++;
}
if((data&1<<2)&&(b==3))
{GPIO_ResetBits(GPIOE,
GPIO_Pin_9);
pwm1=1760;
pwm3=1760;
for(i=0;i<125;i++)
{
pwm1=pwm1-2;
pwm3=pwm3-1;
Delay(40);
}
b++;
GPIO_SetBits(GPIOE,
GPIO_Pin_9);
}
if(result1<40)
{GPIO_ResetBits(GPIOD,GPIO_Pin_6);
}
}
}
系统结构图如图2所示。
3 结 语
本设计是提高汽车驾驶员行车安全系数的系统。测距传感器测量车体到障碍物的距离,并把接收到的回波信号传送给单片机。单片机接收到回波信号会自动判断当前车距是否在安全距离内,当距离较近时语音模块会自动报警。电子油门踏板内的位置传感器检测踏板踩下的深度,并把传感器的数值送给单片机,如果单片机检测到微小时间内踏板移动位置较大[14-16],它会综合超声波所得的信号自动调整行车速度,紧急情况下会自动停车,最大限度地保护人和车的安全。
[1] 高小平.政府管理与服务方式创新[M].北京:国家行政学院出版社,2011.
[2] 刘先江.政府管理社会化改革研究[M].长沙:湖南师范大学出版社,2009.
[3] 王 剑.论目前中国交通安全及其对策[J]. 兰州工业高等专科学校学报,2007,14(1):59-63.
WANG Jian. Discussion on communication safety and it’s cuntermeasures of our country[J].Journal of Lanzhou Polytechnic College, 2007,14(1):59-63.
[4] 骆美富,郭海涛,陈红岩.一种新型的汽车防误踩油门踏板系统的设计[J].科技通报,2013,29(3):188-191.
LUO Mei-fu,GUO Hai-tao,CHEN Hong-yan.Design of a new system to prevent from mistaking accelerator for brake[J].Bulletin of Science and Technology, 2013,29(3):188-191.
[5] 梅哲文,李晓佳,王明环,等.汽车油门防误踩紧急刹车装置[J].机械设计与制造,2010(10):201-202.
MEI Zhe-wen,LI Xiao-jia,WAGN Ming-huan,etal.Automobile anti-false stepping accelerator and emergency brake device[J].Machinery Design & Manufacture, 2010(10):201-202.
[6] 吴立人,杨肖宝.油门、制动操纵器[P].中国,CN03210615.7.2004.12.
[7] 陈加荣.机动车油门刹车一体化装置[P]. 中国,CN03100321.4.2005.1.
[8] 贺展开,龚晓艳. 汽车传感器的检测[M].北京:机械工业出版社,2011.
[9] 李志明,檀 永,徐石明. STM32嵌入式系统开发实战指南[M].北京:机械工业出版社, 2013.
[10] 赵化启,闫广明,孙小君.零基础学单片机[M].北京:机械工业出版社,2010.
[11] 潘新民.微型计算机控制技术[M].北京:电子工业出版社. 2012.
[12] 阎 石.数字电子技术基础[M].北京:北京高等教育出社.2006.
[13] 何希才,薛永毅.传感器及其应用实例[M].北京:机械工业出版社.2009.1:85-86.
[14] 沈志强.防止误踩油门的紧急刹车装置[P].中国,CN03203504.7.2003-02-15.
[15] 张 劲.基于单片机控制的误踩汽车油门的自动制动系统[J].科协论坛(下半月),2009(11):83.
ZHANG Jin. An automatic braking system of false Stepping accelerator based on automotive microcontroller [J].Science & Technology Association Forum, 2009(11):83.
[16] 张 钦, 金 圭.汽车误踩油门纠错装置的设计[J].汽车电器,2008(8):4-6.
ZHANG Qin,JIN Gui.Design a device to prevent stepping on accelerator pedal by mistake[J].Auto Electric Parts, 2008(8):4-6.