基于单片机测速系统设计说明_第1页
基于单片机测速系统设计说明_第2页
基于单片机测速系统设计说明_第3页
基于单片机测速系统设计说明_第4页
基于单片机测速系统设计说明_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于单片机自行车测速系统设计12 / 14摘要:随着科技的迅速发展,单片机的应用也越来越广泛,并带动传统控制检测技术不断更新。现在的车速表大多是电子式的,用LED数码管或LCD即时显示,显示更加直观。电子式车速表采用接触车速传感器代替软轴传动,可使车速表的安装位置不受距离限制,进一步有效地克服了机械式车速表中的诸多不足。本次设计给出了以AT89C2051为核心,利用单片机的运算和控制功能,并采用系统化LED显示模块实时显示所测速度的设计方案,以与串口数据存储电路和系统软件。该方案由于使用了数码管显示模块和E2PROM,以与高效快速算法,因而可在节约系统资源和简化程序设计的基础上保证测量精度和系

2、统实时性。其号预处理电路包含信号放大、波形变换和波形整形:信号预处理电路中的放大器用于对待测信号进行放大,以降低对待测信号的幅度要求;波形变换和波形整形电路则用来将放大的信号转换成可与单片机接口的TTL 信号。通过单片机的设置可使INT0 引脚能够对部定时器T0 的工作进行控制,这样能精确地测出加到INT0 引脚的正脉冲宽度(即测出脉冲信号的期) 。速度显示部分采用数码显示, 所得的数据采用I2C总线, 并通过E2PROM来存储, 因而节省了所需单片机的口线和外围器件, 同时也简化了显示部分的软件编程。本方案实现了电动车速度即时显示,并可通过控制两个按键显示速度或里程,同时加入了超速语音报警功

3、能,使之更加人性化。 关键词:单片机;霍尔传感器;数码显示;语音报警;DC/DC变换器The bicycleSpeed system design based on single-chipTonghai chen(School of Information Engineering, Hebei University of Technology, Tianjin 300401,China)Abstract: With the rapid development of technology, more and more widespread application of microcomputer

4、, and promote the traditional control detection technology constantly updated. Electronic speedometer flexible shaft using the contact speed sensor instead of driving, speed tables can be installed without distance limitations, and further to effectively overcome the mechanical disadvantages of spee

5、d in the table. The AT89C2051 is designed to give the core of computing and the use of microcomputer control, and adopting a systematic LED display module shows the measured real-time speed design, and the serial data storage circuits and system software. The program due to the use of the digital di

6、splay module and E2PROM, and efficient fast algorithm, thus saving resources and simplifying programming system based on the system to ensure accuracy and real-time. Signal pre-processing circuit which includes signal amplification, wave conversion and waveform shaping: signal pre-processing circuit

7、 in the amplifier for the amplified signal could be to reduce the requirements on signal amplitude; wave transformation and wave-shaping circuitry is used to enlarge the signal converted into TTL signals with the microcontroller interface. The INT0 pin is added to the pulse width (ie measured pulse

8、signal period). Speed display part of a digital display, the data collected using I2C bus, and through E2PROM to store, thus saving the need microcontroller port lines and peripheral devices, but also simplifies the display part of the software programming.The program achieved the speed of real-time

9、 electric vehicle revealed two buttons can be displayed by controlling the speed or mileage, while adding a speed voice alarm function, make it more humane.Key words: microcomputer; Hall sensor; digital display;voice alarm; DC / DC convert1 前言1.1 研究背景在全球倡导绿色环保的大趋势下,我国加大了对车辆排放和噪声的管理,由于电动自行车具有无污染、低噪声和

10、轻便快捷等优点,是一种绿色环保的交通工具。随着我国城市规模的迅速扩大与农村道路的日益改善,长期依靠脚踏自行车的人们将会把目标转向电动自行车,对电动自行车需求也会越来越大。人们对环境的关注以与相关技术的更新,有力地促进了电动自行车的发展。1.2 研究意义传统的机械式车速表是由旋转磁场作用于转动盘,使转动盘连同车速表指针发生同向的偏转。当电磁转矩与弹簧产生的阻力矩平衡时,指针偏转停留在某一角度上。指针偏转角与车速成正比,因而可用其表示车速。机械式车速表的缺陷是明显的。由于表盘指针偏转程度正比于软轴的转动时产生的磁力,当转速较低的时候,磁力较小,随转速变化波动较大。因此,低速时车速表指针摆动剧烈、测

11、量与显示精度不高。对于发动机后置的车辆,要将车速表指针的偏转动力由变速箱经软轴等传至驾驶室,软轴必然布置的较长,如何将这种长长的转动软轴从结构上布置妥当,肯定是一件十分困难的事情。现在的车速表大多是电子式的,用LED数码管或LCD显示,使速度显示更加直观。采用接触车速传感器代替软轴传动,可使车速表的安装位置不受距离限制,有效地克服了机械式车速表中的诸多不足。电子式车速表更加智能,车速表的功能也更加人性化,如加上了里程累计、超速提醒等功能。2 总体设计方案速度里程表由信号预处理电路、AT89C2051单片机、数码管显示电路、串口数据存储电路和系统软件组成。其号预处理电路包含信号放大、波形变换和波

12、形整形。信号预处理电路中的放大器用于对待测信号进行放大,以降低对待测信号的幅度要求;波形变换和波形整形电路则用来将放大的信号转换成可与单片机接口的TTL 信号;通过单片机的设置可使INT0 引脚能够对部定时器T0 的工作进行控制,这样能精确地测出加到INT0 引脚的正脉冲宽度(即测出脉冲信号的周期);速度显示部分采用数码显示模块, 所得的数据采用I2C总线, 并通E2PROM来存储, 因而节省了所需单片机的口线和外围器件, 同时也简化了显示部分的软件编程。系统软件包括单片机和液晶模块的初始化模块、液晶模块的写数据/ 命令子模块、周期测量模块、速度里程计算模块、数据存储模块、速度和里程显示数据转

13、BCD 码模块、显示数据消多余零模块、数据显示模块以与实时中断服务模块等。该设计能实时地将所测的速度显示出来, 同时也能够累计显示总里程数。该速度表能将传感器输入到单片机的脉冲信号的宽度(传感器将车速转变成相应宽度的脉冲信号) 实时地测量出来,然后通过单片机计算出速度和里程, 再将所得的数据存储到串口数据存储器, 并由动态数码显示模块实时显示出所测速度。本设计用两个按键来控制显示速度或里程。考虑到信号的衰减、干扰等影响,在信号送入单片机前应对其进行放大整形, 然后再输入到单片机进行测速。单片机利用定时器T0 的控制功能测出输入信号的周期后, 再利用单片机的算术运算功能将周期转换成速度, 同时每

14、秒钟进行一次里程累计,从而计算出总里程。最后将得出的速度、里程值存储在E2PROM中, 并根据两个按键的选择情况来显示速度或里程。为了方便计算要显示数据值的段码, 可再将其转换成压缩的BCD 码, 然后通过查表将要显示的数据值中每一位的压缩BCD 码转换成8 段码送到显示缓冲区, 最后经串口送至液晶显示模块以显示所测的速度或里程。设计时, 应综合考虑测速精度和系统反应时间。为了保证系统的实时性, 系统的速度转换模块和显示数据转BCD 码模块都采用快速算法。另外, 还应尽量保证其它子模块在编程时的通用性和高效性。本设计的速度和里程值采用2位显示。系统方框图如图2-1所示。图2-1 系统方框图3

15、系统硬件设计3.1 变换电路设计由于电动车电瓶的电源电压大多是24V,36V,48V等,所以把电瓶电源24V转换为单片机所需要的电压5V,本系统采用的是MC34063制作的降压变换电源。MC34063引脚图与原理框图如图3-1所示:图3-1 MC34063引脚图与原理框图MC34063是一单片双极型线性集成电路,专用于直流-直流变换器控制部分.片包含有温度补偿带隙基准源、一个占空比周期控制振荡器、驱动器和大电流输出开关,能输出1.5A的开关电流.它能使用最少的外接元件构成开关式升压变换器、降压式变换器和电源反向器。特点:能在3.0-40V的输入电压下工作;短路电流限制;低静态电流;输出开关电流

16、可达1.5A(无外接三极管);输出电压可调工作振荡频率从100HZ到100KHZ。MC34063是一种开关型高效DC/DC变换集成电路。它的部含有具有温度补偿的基准电压源、比较器、具有限电流电路的占空比可控的振荡器、驱动器和大电流输出开关管。图3-2 降压变换电源用MC34063制作的降压变换电源,其特点是VI=24V,Io=500mA时,线性调整率为12mV±0.12;负载调整率为3mV±0.03;纹波电压为120mV。如果加一级滤波器(如图3-2中所示)输出纹波降为40mV;变换效率为82;短路限制电流为1.1A。3.2 信号处理电路设计系统的信号预处理电路由二级电路构

17、成,第一级是由开关三极管组成的零偏置放大器,采用开关三极管可以保证放大器具有良好的高频响应。当输入信号为零或负电压时,三极管截止,电路输出高电平;而当输入信号为正电压时,三极管导通,此时输出电压随着输入电压的上升而下降,这使得速度里程表既可以测量任意方波信号的频率,也可以测量正弦波信号的频率。由于放大器的放大功能降低了对待测信号的幅度要求,因此,系统能对任意大于0.5V的正弦波和脉冲信号进行测量。预处理电路的第二级采用带施密特触发器的反相器DM74LS14把放大器生成的单相脉冲转换成与COMS电平相兼容方波信号,同时将输出信号加到单片机的P3.4口上。利用施密特触发器状态转换过程中的正反馈作用

18、,可以把边沿变化缓慢的周期性信号变换为边沿很陡的矩形脉冲信号。输入的信号只要幅度大于VT+,即可在施密特触发器的输出端得到同等频率的矩形脉冲信号。图3-3 信号预处理电路图3.3 存储器电路设计 AT24C02是美国ATMEL公司的低功耗CMOS串行EEPROM,它是含256×8位存储空间,具有工作电压宽(2.55.5V)、擦写次数多(大于10000次)、写入速度快(小于10ms)等特点。AT24C02的1、2、3脚是三条地址线,用于确定芯片的硬件地址。在AT89C2051试验开发板上它们都接地,第8脚和第4脚分别为正、负电源。第5脚SDA为串行数据输入/输出,数据通过这条双向I2C

19、总线串行传送,在AT89C2051试验开发板上和单片机的P3.5连接。第6脚SCL为串行时钟输入线,在AT89C2051试验开发板上和单片机的P3.6连接。SDA和SCL都需要和正电源间各接一个5.1K的电阻上拉。第7脚需要接地。AT24C02中带有片地址寄存器。每写入或读出一个数据字节后,该地址寄存器自动加1,以实现对下一个存储单元的读写。所有字节均以单一操作方式读取。为降低总的写入时间,一次操作可写入多达8个字节的数据。AT24C02是CMOS2048位串行E2PROM,在部的组织成256×8位。AT24C02的特点是具有允许在简单的二线总线上工作的串行接口和软件协议。在本设计中

20、用芯片AT24C02的SDA端与单片机的P3.7口相连,SCL端与单片机的P3.5口相连。因为在这个I2C总线上只有一个器件,所以把AT24C02的地址设为000,即把A0、A2、A3都接地。单片机计算出来的里程数据通过SDA、SCL向AT24C02输送数据。单片机首先向AT24C02发送写信号,当确认后从单片机部的数据储存单元提取数据然后向AT24C02的部地址传送数据。当显示里程时,单片机首先向AT24C02发送读信号,然后确认后,单片机从AT24C02部的地址向单片机的读出单元字节读出数据,供显示所用。与单片机的接口如图3-4所示。 图3-4 AT24CO2与单片机的接口电路 

21、3.4 显示电路设计本设计显示模块用74HC164驱动数码管显示,74HC164是高速硅门CMOS器件,与低功耗肖特基型器件引脚兼容。74HC164是 8 位边沿触发式移位寄存器,串行输入数据,然后并行输出。数据通过两个输入端(DSA 或 DSB)之一串行输入;任一输入端可以用作高电平使能端,控制另一输入端的数据输入。两个输入端或者连接在一起,或者把不用的输入端接高电平,一定不要悬空。图3-5 速度显示电路3.5 掉电保护电路设计为了用户方便、节省电能,本设计加入了系统自动开启与关断功能。当电动车由静止开始移动时,系统自动开启。当电动车的速度小于0.1KM/H(261.5型)时,系统认为电动车

22、已停止,经过10S的延时系统关断电源,单片机进入掉电状态。如果在l0秒测量电路没有脉冲输出则系统自动判定自行车已停止移动,此时单片机将POWERC端置高电平,将大部分芯片的电源切断,只给单片机和测量电路继续供电,而后单片机进入掉电状态,此时单片机最小电流可到50uA,这样整个系统的耗电可保持在uA级,用电池供电可正常保持近一年。单片机允许在电压低至2V甚至更加小一些的电压供电时。仍然可以保证其最基本的运行(对外部输入输出功能将会失效或者停止)。电池在主电源失去时,对单片机的继续运行提供能源,此时的电池能源是非常宝贵的,往往都是以“uA”级进行计算。而且还有一个不能避免的结果,就是随着保护时间的

23、延长,电池的电量也会用完的。所以,保护电路有一个最长保护时间的参数,使用中不能超过,否则,保护就会失效。当电池经过保护时间的使用之后,就需要补充电能,便于下一次保护时能够“酒足饭饱”地投入保护工作。所以,又有一个如何给电池充电的问题。归纳一下:就是电池在主电源正常供电时,需要由主电源对其进行充电;当主电源失去一时,又由电池放电以保持单片机系统的运行。图3-6就是一个标准的掉电保护电路。(VCC = 5V)。图3-6 掉电保护电路当主电源正常时,单片机由VCC(5V)电源供电,此时VCC(5V) 电源通过 D1和R1 ,对保护用电池进行充电,以保证电池电量的充足。适当选择 R1 的大小,可以保证

24、充电电流和充电时间都比较合理。例如:需要对 3V6 * 60mAH 的电池充电,充电时间选择在 8 小时左右,我们就选择充电电流为 8 mA,R1 (6V - 0.6)/ 8(0.6 是串连二极管的导通压降)。与电池并联的稳压二极管是防止电池过充电用的。放电路径是:电池通过 R1+R2 ,对单片机供电端口进行供电,供电电流通过 R1+R2 之后,会有压降,到达单片机的 VCC端口时,电压就会比 3V6 低,一般会在 2V2.5 V左右,不要企图在这个时候提高单片机的供电电压,这样反而会适得其反,令单片机仍然工作于正常供电状态。对各单片机生产公司的各种单片机,这个低供电电压会有某些差别,调整电阻

25、 R2,在保证单片机能够保持运行的情况下,耗用电流越小越好。4 系统仿真与分析4.1 仿真结果图 4-1图 4-2由于信号处理电路已把脉冲信号转化为方波信号输入到单片机中,且信号频率和方波周期是对应关系,因此当改变信号频率时输入方波信号周期也随着发生变化,显示的速度值也不一样。图4-1,图4-2分别表示对应脉冲频率值为6.7Hz ,10.62Hz时的速度。经验证,若继续改变脉冲信号频率值则显示速度继续发生变化,脉冲信号频率越高,对应的速度值也越大,这与现实生活中的相符合。5 系统软件设计5.1 系统软件流程图图5-1 系统主程序流程图总流程图如图5-1所示。系统软件包括单片机初始化模块、周期测

26、量模块、速度里程计算模块、数据存储模块、速度和里程显示等。5.2 速度处理子程序当电动车的行使速度达到或超过测速器的预设速度时,测速器往外发出一个12V的恒定直流电压,WTV040语音芯片在检测到这个电压后,点亮报警指示灯进行提示并触发语音进行报警。由于测速器送出的电压是恒定的,只要超速,就一直有电压输出,并且要求持续的提供语音报警,直到电动车速度低于预设的速度为止。速度处理子程序如图5-2所示图5-2 速度处理子程序流程图速度处理子程序速度、里程以与报警模块处理程序如下所示:;*开里程指示;*diss:setb p1.1        clr p1.0

27、                          call quans         call play         ret  quans: mov 45h,#00            mov 44h,#00      

28、      mov 43h,#00            mov 42h,#00            mov 41h,#00h            mov 40h,56h            mov 3fh,55h        &#

29、160;   mov3eh,54h         ;被除数赋初值            mov 4ah,#00h            mov 49h,#00h            mov 48h,2fh            mov47h,2eh 

30、60;         ;除数赋初值          jmp divst          ret   *   速度处理 ;*   disv:  setbp1.0           关里程显示            clr &

31、#160; p1.1        开速度显示       callkmph              调速度转换子程序         mov a,#0ffh         cjne a,36h,dsp1;与设置速度比较,超速报警        

32、 setbp3.1               ;报警指示灯亮         jmp exit   dsp11:   clrp3.1             关报警指示灯            callplay      

33、60;        调显示子程序   exit:    ret5.3 显示子程序  显示子程序 play:       mov r1,#3ah               mov r2,#0fehplay_loop:  mov a,r2           

34、   mov p2,a               mov a,r1               anl a,#0fh               mov dptr,#tab              

35、; movc a,a+dptr               mov p0,a               calldelay_1ms          显示1ms                inc r1    

36、60;           mov a,r2                jnb p2.2,play_out                rl a                mov r2,a                jmp play_loop  play_out:  movp2,#0ffh       

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论