《基于单片机的行车测速系统毕业论文.doc》由会员分享,可在线阅读,更多相关《基于单片机的行车测速系统毕业论文.doc(18页珍藏版)》请在三一办公上搜索。
1、基于单片机的行车测速系统XX(XXXX,XXXX)摘 要 本设计采用AT89S52单片机作为控制芯片,利用霍尔传感器采集被测信号,将被测信号通过单片机计算在LCD上进行显示,另外通过矩阵键盘设置计算参数,并使用存储芯片储存重要数据和参数,构成了基于单片机的行车测速系统。该测速系统除了可以测量车辆行驶速度,还可以记录车辆行驶里程,而且具有价格便宜、使用方便、可靠性高等特点,并能够有效提高对测速传感器输出信号测量的准确性和稳定性,在日常生活运用中具有独特的优势。关键词 AT89S52; 测速系统; 霍尔传感器1 绪论如今随着半导体技术的不断发展,微控制单元MCU(MicroControllerUn
2、it)以其集成度高、功能强、速度快、可靠性好等特点被电子系统开发人员广泛的运用到控制系统、智能仪表、机电一体化产品、智能接口、智能民用产品等领域。单片机的突出特点是体积小,抗干扰性好,功耗小,可靠性好,有较强的模拟接口,代码保密性好,所以得到了官方的应用1。采用单片机作为主芯片可以有效的解决对采样信号的处理问题,并能够降低开发成本,提升开发的效率和开发的质量。现代汽车上一般都装有发动机控制、自动驾驶、ABS、TRC、自动锁车门、主动式悬架、导向系统、电子仪表等装置2,这些装置都需要汽车车速信号。速度是一个很重要的物理量,获取准确的速度能够保证车辆行驶的安全性,而基于单片机技术的测速系统具有价格
3、便宜、使用方便、可靠性高等特点,能有效提高对测速传感器输出信号测量的准确性和稳定性。因此本文提出了一种基于单片机的行车测速系统,有效速度范围为10300 km/h,完全符合JJG 527-2007的标准测速仪的速度范围为20180 km/h和MPE为1%的要求。因此,其可用于机动车的测速,为机动车的安全驾驶提供安全保障和技术支持。2 方案的设计与论证2.1 测速系统主要组成器件的选择与论证2.1.1 微控制器的选择方案一:采用80C52单片机实现。80C52内置8位中央处理单元、256字节内部数据存储器RAM、8k片内程序存储器(ROM)、32个双向输入/输出(I/O)口、3个16位定时/计数
4、器和5个两级中断结构,一个全双工串行通信口,片内时钟振荡电路3。此外,80C52还可工作于低功耗模式,可通过两种软件选择空闲模式和掉电模式。在空闲模式下冻结CPU而RAM定时器、串行口和中断系统维持其功能4。掉电模式下,保存RAM数据,时钟振荡停止,同时停止芯片内其它功能。方案二:采用AT89S52单片机实现。AT89S52具有以下标准功能:8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路5。另外,AT89S52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式
5、下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护模式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止6。由于80C52不支持在线系统编程,而AT89S52支持,80C52具有一个数据指针DPTR,而AT89S52具有两个数据指针DPTR0和DPTR1,且AT89S52含有一个看门狗定时器,具有断电标志POF,因此本设计选择AT89S52。2.1.2 测速传感器的选择方案一:光电式脉冲发生器。主要由光源、光敏器件和遮光盘组成。车轮旋转带动遮光盘旋转,当遮光盘没有遮住光源时,光源的光射到光敏器件上,光敏器件中有电流流过,于是在输出端产
6、生电压输出。其脉冲频率与车速成正比,经过单片机处理后,即可得出车辆的速度。这种光脉冲发生装置,在转换速度较高的情况下,由于车辆运行中的振动引起的光脉冲干扰等问题不好解决,现在采用的不多。方案二:磁电式脉冲发生器。将导磁材料的齿轮固定在转轴上,对着齿轮端面固定一块磁钢,霍尔元件贴在磁钢的一个端面上,随着齿轮转动,元件的电压信号输出呈周期性变化。霍尔传感器输出频率与转速成正比,此信号经单片机处理后,即可得出车辆的速度。本设计的测速传感器要求稳定性好,灵敏度高和精度高,而且对汽车速度的测量还要要求传感器能够适应各种各样的环境,所以这里选择方案二,并采用HAL44E霍尔传感器。其原因还有三点:一是霍尔
7、传感器输出信号电压幅值不受转速的影响;二是频率响应高,其响应频率高达20kHz7,相当于车速为1000km/h时所检测的信号频率;三是抗电磁波干扰能力强。2.1.3 显示模块的选择方案一:数码管显示。 优点:亮度高,价格便宜,寿命长。缺点:显示简单,只能显示0-9的数字及简单的字符,数码管电路连接比较复杂。方案二:Nokia5110 LCD显示。 优点:可以显示字符、汉字,具有功耗低、与单片机之间的数据通信简单易操作等特点。缺点:亮度较低。综合本设计的功能需求及电路连接的繁简程度,本设计选择Nokia5110 LCD显示。2.2 系统的设计方案及结构框图2.2.1 测速系统的测速原理本设计是采
8、用AT89S52单片机作为主控制芯片,通过对转子旋转引起的周期脉冲信号的频率进行测量,将所得频率通过计算变换成实际的运行速度,并通过计算转子旋转总圈数得出行驶里程,然后通过串行存储芯片 24c02 芯片储存行驶数据并通过Nokia5110 LCD显示器显示车速和车辆行驶里程。测速系统的结构框图如图 2-1 所示。图2-1 系统结构框图2.2.2 测速系统设计概述通过对测速系统的理论研究和实际电路的设计,将霍尔传感器、单片机、存储器、按键、LCD 显示器有机的结合在一起从而构成了一个完整的测速系统。其关键技术主要在四个方面:初级信号采集模块的设计,核心处理计算模块的设计,目标信息的显示模块的设计
9、,关键数据的存储读写模块的设计。通过显示器直观的显示数据信息,使用者可以方便的了解到当前的车速和行驶里程。该系统实现了对行驶数据的采集、计算、存储和显示等基本功能。3 系统硬件电路设计测速系统的硬件电路大致分为五个模块:由单片机最小系统构成的核心计算模块,霍尔传感器作为主要器件的数据采集模块,由24c02串行存储芯片等核心器件构成的存储模块,由Nokia5110 LCD构成的显示模块和电源模块。系统总电路图见附录1。3.1 单片机计算处理模块电路设计单片机加上适当的外围器件和应用程序,构成的应用系统称为最小系统8。 (1)时钟电路单片机内部具有一个高增益反相放大器,用于构成振荡器,通常在引脚X
10、TALl和XTAL2跨接石英晶体和两个补偿电容构成自激振荡器9。可以根据情况选择6MHz、12MHz或24MHz等频率的石英晶体,补偿电容通常选择30pF左右的瓷片电容,时钟电路如图3-1所示。图3-1 时钟电路(2)复位电路单片机最小系统通常采用上电自动复位和手动按键复位两种方式实现系统的复位操作10。上电复位要求接通电源后,自动实现复位操作。手动复位要求在电源接通的条件下,在单片机运行期间,用按钮开关操作使单片机复位,其结构如图3-2所示。上电自动复位通过电容C1充电来实现11,手动按键复位是通过按键将电阻R1与VCC接通来实现。 图3-2 复位电路3.2 数据采集模块电路设计本设计中霍尔
11、传感器与磁场的作用关系如图3-3所示。磁场由磁钢提供,所以霍尔传感器和磁钢需要配对使用。在非磁材料的圆盘边上粘贴一块磁钢,霍尔传感器固定在圆盘外缘附近,通过单片机测量产生脉冲的频率就可以得出圆盘的转速。(注:没有磁钢时输出高电平,有磁钢时输出低电平。)数据采集模块主要是由特定磁极对数的永久磁铁、霍尔元件、旋转机构及输入/输出插件等组成。其工作原理是当传感器的旋转机构在外驱动作用下旋转时,会带动永久磁铁旋转,穿过霍尔元件的磁场将产生周期性变化,引起霍尔元件输出电压变化,所得的电压信号即为车速传感器的输出信号。霍尔结构的速度传感器主要电气技术参数包括:输出信号高电压、低电压、占空比、周期、上升时间
12、、下降时间、周期脉冲数等。 图3-3 霍尔传感器使用示意图 图3-4 检测脉冲产生模块检测脉冲产生模块如图3-4所示,将电机的转动轴上装上小磁钢,每当小磁钢经过霍尔传感器时,就会引起传感器输出电压发生变化。本设计选用HAL44E霍尔传感器,具有低噪声输出,灵敏度高,快速上电,温度稳定性好,寿命长,高可靠性等优点12,非常适合用在线性目标移动和旋转目标移动的位置检测系统中。图3-5 霍尔传感器电路图以上是霍尔传感器的原理部分,而整个测速器就是用到单片机与一个电磁感应器来计算行进中车轮所转动的圈数,输入车轮的外径,计算单位时间内车轮所转圈数即得车速。车轮圆周长的计算公式如式(3-1)所示,车速的计
13、算公式如式(3-2)所示,车辆行驶里程计算公式如式(3-3)所示,霍尔传感器电路图如图3-5所示。C=2R (3-1)V=n*C/t (3-2)L=N*C (3-3) 其中C为车轮的圆周长,R为车轮的外径,V为车辆行驶速度,t为单位时间,n为单位时间内车轮转动的圈数,L为车辆行驶里程,N为车轮转动的总圈数。 3.3 数据存储读写模块电路设计在系统中很多重要的数据都需要进行必要的存储以便使用者查询和记录,对于单片机输出来的数字信息需要一个存储方便、容量合适的数字存储芯片进行存储和读写,为了可以与单片机有更加方便快捷的通信连接,我们采用串行存储芯片24c02来存储测速过程中的重要数据。图3-6 串
14、行存储芯片 24c02引脚分配图24c02采用I2C总线协议进行数据通信,I2C总线通信时必须有起始信号和停止信号,而且时钟信号为高电平的时候,数据线必须保持稳定的状态13。主器件通过发送起始信号启动发送过程,然后发送它所要寻址的从器件地址,从器件会监视总线并当其地址与发送的从地址相同时便返回一个应答信号,单片机在根据读写引脚 R/W的状态进行读或写的操作14。I2C总线在每传输完一个字节数据后,接收设备就会返回一个应答信号,接收器在第九个时钟周期时将SDA线拉低,表示已经接收一个数据,最后就是在时钟线上始终保持高电平的情况下,数据线电平从低跳到高作为I2C的停止信号,一个完整的数据传输存储过
15、程就完成了。A0,A1,A2为器件地址线,WP为写保护引脚,SCL,SDA为二线串行接口,符合I2C总线协议。串行存储芯片 24c02 引脚分配如图3-6所示。3.4 显示模块电路设计显示模块采用Nokia5110 LCD液晶显示器与单片机的P0口相接,数据通过液晶显示器的5个引脚输入到显示器,连接电路图如图3-7所示。图3-7 Nokia5110 LCD显示模块3.5 按键模块电路设计本设计通过矩阵键盘设置车轮半径、单位时间等计算参数,以适应不同车辆的应用,按键模块电路如图3-8所示。图3-8 按键模块电路3.6 电源模块电路设计电源供电由9 V电池和板内稳压电源组成。电路板内采用三端稳压集
16、成电路块LM7805为板内元器件供电,LM7805三端稳压器具有内部过流、热过载和输出晶体安全区保护功能,可将9V的输入电压转换为+5 V电压,最大输出电流0.5 A15,保证板内AT89S52、霍尔元件等器件可靠地工作,电源模块电路如图3-9所示。图3-9 电源模块电路图4 系统软件设计在单片机软件编程时,应运用模块化编程思想,按照先粗后细的方法把整个系统的软件划分成多个功能独立、大小适当的模块。本设计软件可分为霍尔元件测速子程序、LCD显示子程序部分。软件功能是运用C语言进行代码的编写,用串口下载工具下载编译调试成功的程序,在主程序中,先初始化计数器T1和计数器T0,对外部脉冲进行计数,设
17、计一个标志位为Flag,判断Flag的值,当Flag=1时,将脉冲的数值由十六进制转换成十进制,将转换后的值进行数学运算,然后存入到存储器中去,并通过LCD显示出来。系统程序见附录2。4.1 系统主程序流程图系统主程序流程图,如图4-1所示。图4-1 主程序流程图4.2 各子程序单元流程图及软件设计4.2.1 测速模块软件设计本系统使用T0、T1来测量车轮转速,T0工作在定时模式,T1工作在计数模式,在一定时间内测量出脉冲数就可以计算出车轮的转速,程序流程图如图4-2所示。图4-2 测速模块程序流程图4.2.2 显示模块软件设计显示模块程序流程图,如图4-3所示。图4-3 显示模块程序流程图5
18、 实验及误差分析将成功研制的测速系统实验装置与德国考休斯.达特朗公司生产的L-400型非接触式测速仪进行比对试验,实测结果如表5-1所示。表5-1 比对试验数据序号测速仪实验装置绝对误差相对误差Km/hKm/hKm/h%118.918.94700.04700.2487230.830.7670-0.0330-0.1071338.638.2900-0.3100-0.8031455.555.55950.05950.1072560.160.51230.41230.6860675.575.94010.44010.5829785.685.4502-0.1498-0.1750898.598.90010.40
19、010.40629105.8106.10810.30810.291210114.2114.64910.44910.3933平均值/0.16230.1630测速系统误差分析如表5-2所示。表5-2 误差分析序号机动车行驶速度绝对误差相对误差Km/hKm/h%1100.00180.018260-0.0610-0.10031000.17000.17042000.68000.34053001.50000.500通过以上分析,该测速实验装置测量机动车行驶速度(10300km/h)的测速误差均在1的数量级内,完全符合JJG 527-2007的标准测速仪的速度范围为20180 km/h和MPE为1%的要求。
20、6 结论本系统采用霍尔感应原理采集转速信号,把霍尔元件输出的电压信号输入到单片机进行处理、计算,得出实际的速度值和行驶里程,辅之以液晶显示器显示行驶数据。该系统能够很好的完成转速采集、速度计算、数据存储和设置,能够直观的显示出车辆的行驶速度和行驶里程,操作简单方便,性能稳定,成本低廉。对于该系统的设计,目前已经搭好了硬件电路进行了一定程度的实验验证,实验的调试运行证明,该套测速系统能够达到设计预想的功能要求,运行良好。另外,为拓宽本测速系统的应用范围,经改装也可应用于电动车、自行车的测速以及行驶里程的计量并由液晶显示器显示。通过将霍尔传感器安装在靠近车轮不超过10mm远的车架上,增加安装在车轮
21、上的磁钢数,利用矩阵键盘更改车轮半径、单位测量时间等参数,提高测量精度,可以达到1km/h80km/h的车速测量范围。本测速系统的稳定性好,抗外界干扰能力强,如抗错误的干扰信号等,因此不易因环境的因素而产生误差。由于霍尔测速传感器在防护措施有效的情况下,可以不受电子、电气环境影响,能防油、防潮,并且能在温度较高的环境中工作,而且测量结果精确稳定,输出信号可靠,因此该测速系统可以适用于复杂的工作环境。参考文献1 王震,占江山. 电力电子技术领域的现状和展望J. 计算机与数字工程研究所, 2008,(08):16-202 徐伟. 基于单片机设计的高速公路测速仪J. 常熟理工学院学报, 2007,(
22、10):56-57 3 刘玉玲. 单片机设计与开发M. 北京:科学出版社,2008:89-944 TEXAS INSTMUENTS. High-Speed DSP Systems Design Referenee Guide,2005:11-75 5 陆应华. 电子系统设计教程M. 北京:国防工业出版社,2009:150-153 6 徐海黎,孙冬梅. 一种基于单片机的测速系统J. 南通工学院学报,2000,(03):115-116 7 李强,雷宏江. 基于HT45R24单片机的智能测速仪的设计与实现J. 实验室研究与探索, 2011,(06):68-698 李劲松,朱景亮. 单片机的智能测速仪
23、的设计与实现J. 仪表技术,2010,(01):36-379 张世欣,肖沙里,徐东镪. 一种新型的高速公路测速仪设计J. 光电子技术,2007,(02):94-95 10 Cucchiara, R. Grana, C. Piccardi, M. Prati, A. Staticstic and knowledge-based moving object detection in traffic scenes. Proceedings of IEEE Intelligent Transportation System, 2000:27-32 11 Shen L.P Mohri K, Abuduk
24、elimu A.L. Machano enecephalogram based on amorphous wire micro SI acceleration sensorA.Proceedings of IEEE Transactions on MagneticsC, 2001:84-85 12 谭逢富,侯再红,季永华,张守川. 基于PIC单片机的测速系统设计J. 微计算机信息, 2008,(17):102-103 13 李鑫,陈梅,陈薇. 自确认测速度仪的设计J. 微计算机信息,2009,(10):24-25 14 Daniel J. Dailey, F. W. Cathey, and S
25、uree Pumrin. An Algorithm to EstimateMean Traffic Speed Using Uncalibrated Cameras. IEEE Transactions onlntelligent Transportation Systems, 2000:98-107 15 王香婷,苏晓龙. 基于PC机和单片机的光传感器实验系统设计与实现J. 实验室研究与探索,2007,(04):18-19 Vehicle Velocity Measurement System Based on Single-chip Microcomputer XXXX(XXXXXX)Ab
26、stract This design uses AT89S52 microcontroller as the control chip, by acquiring the Hall sensor signal being measured, the measured signal for display on the LCD through the calculation of the single-chip microcomputer, also through the matrix keyboard setting calculation parameters, and the use o
27、f memory chip to store important data and parameters, finished the design of hardware circuit design and software algorithm basic. The measurement system is cheap, easy to use, high reliability, and can effectively improve the speed sensor output signal measurement accuracy and stability, has unique
28、 advantages in daily life.Keywords AT89S52 ; Speed measurement system ; the Hall sensor附录1 整体电路图附录2 系统程序#include #include #define uint unsigned int#define uchar unsigned charsbit RS=P26; /寄存器选择位,将RS位定义为P2.0引脚 sbit RW=P25; /读写选择位,将RW位定义为P2.1引脚sbit E=P27; /使能信号位,将E位定义为P2.2引脚uint i,M1;/uchar buf10;ucha
29、r bai1,shi1,ge1;uchar dis1=Speed test.;uchar dis2=A_S: r/m;void delay1ms(uchar ms) uchar i,j; for(i=0;ims;i+) for(j=0;j110;j+);uchar lcd_busy() bit result; RS=0; RW=1; E=1; _nop_(); _nop_(); _nop_(); _nop_(); result = (bit)(P0&0x80); E=0; return result;void lcd_wcmd(uchar cmd) while(lcd_busy(); RS=0
30、; RW=0; E=0; _nop_(); _nop_(); P0=cmd; _nop_(); _nop_(); _nop_(); _nop_(); E=1; _nop_(); _nop_(); _nop_(); _nop_(); E=0; void lcd_pos(uchar pos) lcd_wcmd(pos|0x80);void lcd_wdat(uchar dat) while(lcd_busy(); RS=1; RW=0; E=0; P0=dat; _nop_(); _nop_(); _nop_(); _nop_(); E=1; _nop_(); _nop_(); _nop_();
31、_nop_(); E=0; void LcdInit() delay1ms(15); lcd_wcmd(0x38); delay1ms(5); lcd_wcmd(0x38); delay1ms(5); lcd_wcmd(0x38); delay1ms(5); lcd_wcmd(0x0c); delay1ms(5); lcd_wcmd(0x06); delay1ms(5); lcd_wcmd(0x01); delay1ms(5); void T1_Init() TMOD |= 0x10; IE = 0x8f; IP=0x08; TH1 = (65535-50000)/256; TL1 = (65
32、535-50000)%6; ET1 = 1; TR1 = 1;void INT_Init() TCON = 0x01;void my_INT0(void) interrupt 0 M1+;void timer1() interrupt 3 TH1 = (65535-50000)/256; TL1 = (65535-50000)%6; i=i+1; if(i=20) i=0; bai1=(M1/100)+48; shi1=(M10/10)+48; ge1=(M10)+48; M1=0; void main() EA=1; IT0=1;/外部中断开启标志 EX0=1; TR0=1; ET0=1;/定时器中断开启标志 TMOD=0X01;/定时器 控制方式 TH0=(65536-50000)/256; TL0=(65536-50000)%256; while(1) LcdInit()void counter(void) interrupt 0 EX0=0; /关外部中断0 mm+;/计数加1 EX0=1; void time1(void) interrupt 1 TH0=(65536-50000)/256; TL0=(65536-50000)%256; n+;