【精编完整版】出租车计价器毕业论文.doc_第1页
【精编完整版】出租车计价器毕业论文.doc_第2页
【精编完整版】出租车计价器毕业论文.doc_第3页
【精编完整版】出租车计价器毕业论文.doc_第4页
【精编完整版】出租车计价器毕业论文.doc_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

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

文档简介

(此文档为word格式,下载后您可任意编辑修改!)大学单片机应用与仿真训练设计报告出租车计价器姓 名: 学 号: 3 姓 名: 学 号: 专业班级: 自动化09-7班 指导老师: 所在学院: 电气学院 2012年7月4 日摘要本设计基于AT89SC51单片机,采用霍尔传感器采集轮胎转数的信息,使用外部中断0将霍尔传感器采集的信息输入到单片机,实现对于出租车行驶里程的计算;对于中途等待以及红绿灯等待,使用定时器计时,并将时间转化为里程数以计费;输出设备采用数码管,本设计采用的是两个4位一体的共阴极数码管,输出里程数和费用;此外,本设计还设计了状态指示灯,用以指示计价器的工作状态和显示状态。出租车计价器是出租车行业计费系统的核心,是出租车行业发展的重要标志,性能良好的计价器对于乘客和出租车行业都是必需的。关键词:计价器、单片机、霍尔传感器目 录1 概述41.1 出租车计价器概述41.2 单片机的概述42 总体方案设计62.1 设计任务要求62.1.1 设计任务62.1.2 设计要求62.2 设计的主要功能62.3 方案的选取72.3.1 硬件设计方案72.3.2 软件设计方案73 硬件设计93.1 AT89S52单片机及最小系统93.2 测距单元113.3 按键单元和状态显示单元143.4 数码显示单元154 软件设计174.1 系统主程序174.2 数据处理子程序184.3 等待时间计时子程序194.4 键盘扫描子程序205 Proteus软件仿真216课程设计过程中遇到的问题227 课程设计体会23参考文献23附1、原程序代码24附2、系统原理图301 概述1.1 出租车计价器概述出租汽车已经成为我国城市公共交通的重要组成部分和现代化城市必备的基础设施,成为人们工作、生活中不可缺少的交通工具。出租汽车服务行业和出租汽车计价器紧密相关,因为出租汽车必须安装出租汽车计价器才能投入营运。出租汽车计价器是一种能根据乘客乘坐汽车行驶距离和等候时间的多少进行计价,并直接显示车费值的计量器具。计价器是出租汽车的经营者和乘坐出租汽车的消费者之间用于公平贸易结算的工具,因而计价器计价准确与否,直接关系到经营者和消费者的经济利益。依据国家有关法律、法规,出租汽车计价器是列入国家首批强制检定的工作计量器具之一,也是近年来国家质量技术监督部门强化管理的六类重点计量器具之一。出租车行业在我国是八十年代初兴起的一项新兴行业,随着我国国民经济的高速发展,出租汽车已成为城市公共交通的重要组成部分。多年来国内普遍使用的计价器只具备单一的计量功能。目前全世界的计价器中有90%为台湾所生产。现今我国生产计价器的企业有上百家,主要是集中在北京,上海,沈阳和广州等地。本次设计的目的在于通过的日常最常见的计价器的实际的设计来进一步理解和掌握单片机的功能特点,并通过实践应用,锻炼自己的动手能力、培养与人合作的团队意识。1.2 单片机的概述计算机系统已明显地朝巨型化、单片化、网络化三个方向发展。巨型化发展的目的在于不断提高计算机的运算速度和处理能力,以解决复杂系统计算和高速数据处理,比如系统仿真和模拟、实时运算和处理。单片化是把计算机系统尽可能集成在一块半导体芯片上,其目的在于计算机微型化和提高系统的可靠性,这种单片计算简称单片机。单片机的内部硬件结构和指令系统主要是针对自动控制应用而设计的所以单片机又称微控制器MCU(Micro Controller Unit)。用它可以很容易地将计算机嵌入到各种仪器和现场控制设备中,因此单片机又叫做嵌入式微控制器(Embedded MCU)。单片机自20世纪70年代问世以来,以其鲜明的特点得到迅猛发展,已广泛应用于家用电器、智能玩具、智能仪器仪表、工业控制、航空航天等领域,经过30多年的发展,性能不断提高,品种不断丰富,已经形成自动控制的一支中坚力量。据统计,我国的单片机年容量已达13亿片,且每年以大约16的速度增长,但相对于国际市场我国的占有率还不到1。这说明单片机应用在我国有着广阔的前景。对于从事自动控制的技术人员来讲,掌握单片机原理及其应用已经成为必不可少的学习任务。 2 总体方案设计本系统的硬件设计主要包括单片机AT89S51、数据显示部件、模拟行驶路程单元、及计价单元的设计。在硬件设计过程中,充分利用各部件的功能,实现多功能的出租车计价器设计。2.1 设计任务要求2.1.1 设计任务设计一款基于AT89S52单片机的出租车数字计价器,通过对传感器的检测,对数值进行处理和显示。2.1.2 设计要求1、能显示里程,单位为公里,最后一位为小数位。2、能显示金额数,单位为元,最后一位为小数位。3、可设定单程价格和往返价格,单程价格为2元/公里,往返价格为1.5元/公里。4、车速3公里/小时的时间累积为总等待时间,每5分钟等待时间相当于里程数增加1公里。5、起步公里数为3公里,价格为5元,若实际距离大于3公里,按规则3计算价格。6、按暂停键,计价器可暂停计价,按查询键,可显示总等待时间。2.2 设计的主要功能本设计所设计的出租车数字计价器的主要功能有:金额输出、路程输出、数据复位、计时计价等。输出采用2个4位一体的8段共阴数码管,车辆行走时前4位显示路程,后4位显示金额。车辆候车时,前4位显示等待时间,后4位显示等待金额。2.3 方案的选取本设计是由软件设计和硬件设计两部分组成的。软件设计要进行程序的编写和软件仿真;硬件设计要设计电路、硬件仿真和制作电路板。2.3.1 硬件设计方案本系统的硬件设计主要包括单片机AT89S52、数据显示部件、U18霍尔传感器电路、里程计算及计价单元的设计。在硬件设计过程中,充分利用各部件的功能,实现多功能的出租车计价器设计。计价器的单片机系统框图如图1所示。它由以下几个部件组成:霍尔传感器单元、AT89S52单片机、金额显示、里程显示、状态指示单元。利用单片机丰富的IO端口,及其控制的灵活性,实现基本的里程和价格的计算及显示功能。图1 计价器系统框图2.3.2 软件设计方案本设计程序的采取C语言进行编写,使用Keil uVision4编译和Proteus 7.4a仿真软件进行仿真调试。其中的里程计算和费用计算方案如下。1、里程计算(1)霍尔传感器对车轮进行信号检测,产生并输出脉冲信号到单片机;(2)单片机对传感器输出的脉冲信号进行计数,并进行km计算:每一个信号代表轮胎旋转一周,设轮胎的周长为1.67m ;每100m产生的信号数为60,里程显示为N/600.1(km),速度5公里时将等待时间折算为公里数进行计费,等待时间30s为0.1km。历程为两者之和。2、费用计算(1)出租车的起步费为5元,并且3km内不需额外计价;(2)出租车行驶3km后,单程2元/km,双程1.5元/km。(3)等待收费的标准为5分钟算一公里;(4)暂停时计价器暂停计价,暂停费用的计算。3 硬件设计本设计的硬件设计包括单片机AT89S52单元、测距单元、显示单元(数码管显示金额、等待时间和里程,指示灯对单双程切换指示、等待计时指示)、按键单元和时钟单元。3.1 AT89S52单片机及最小系统1、AT89S52单片机AT89S52具有如下特点:40个引脚,4k Bytes Flash片内程序存储器, 128 bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。P0口:1、外部扩展存储器时,当作数据/地址总线。2、不扩展时,可做一般的I/O使用,内部无上拉电阻,作为输入或输出时应在外部接上拉电阻。P1口:只做I/O口使用:其内部有上拉电阻。 P2口:1、扩展外部存储器时,当作地址总线使用。2、做一般I/O口使用,其内部有上拉电阻P3口:1、 作为I/O使用外(其内部有上拉电阻)2、 特殊功能口,由特殊寄存器来设置 图2 AT89S52引脚图 图3 AT89S52封装图设计中用到的单片机各管脚:设计中用到的单片机各个管脚功能以及与其他模块连接介绍如下:VCC:接+5V电源。VSS:接地。时钟引脚:XTAL1和XTAL2两端接晶振和30PF的电容,构成时钟电路,它可以使单片机稳定可靠的运行。RST:复位信号输入端,高电平有效。当在此引脚加两个机器周期的高电平时,就可以完成复位操作。P1.0:接清零键。P1.1:接切换键,表示等待时间和里程显示切换。P1.2:接单程和往返计费切换键P1.3:接暂停键 P1.4:接堵车指示灯P1.5:接查询指示灯P1.6:接往返计费指示灯P1.7:接暂停指示灯P3.0:接查询/确认键P0口接数码管段选端,P2口接数码管位选端P3.2:接霍尔传感器的输出口2、单片机最小系统复位电路和晶振电路是AT89S52工作所需的最简外围电路。单片机最小系统电路图如图4所示。图4 单片机最小系统AT89S52 的复位端是一个史密特触发输入,高电平有效。RST端若由低电平上升到高电平并持续2个周期,系统将实现一次复位操作。在复位电路中,按一下复位开关就使在RST端出现一段时间的高电平,外接12M 晶振和两个30pF 电容组成系统的内部时钟电路。3.2 测距单元本次设计我们选取了霍尔传感器来进行里程测量。霍尔器件是一种磁传感器。用它们可以检测磁场及其变化,可在各种与磁场有关的场合中使用。霍尔器件以霍尔效应为其工作基础。霍尔器件具有许多优点,它们的结构牢固,体积小,重量轻,寿命长,安装方便,功耗小,频率高,耐震动,不怕灰尘、油污、水汽及盐雾等的污染或腐蚀。霍尔器件分为:霍尔元件和霍尔集成电路两大类,前者是一个简单的霍尔片,使用时常常需要将获得的霍尔电压进行放大。后者将霍尔片和它的信号处理电路集成在同一个芯片上。本次设计选取了霍尔集成电路来测量里程。里程测量是通过将霍尔传感器的集成电路安装在车轮上方的铁板上,将磁铁安装在车轮上,旋转的车轮将磁铁对准集成电路时,霍尔传感器会输出一个脉冲信号,送到单片机,经过单片机的计算处理,将行驶的里程送到显示单元并显示出来。其原理示意图如下:图5 传感器测距示意图 U18是一种利用霍尔效应做成的半导体集成电路器件,它被设计在交变磁场中运行,特别是能在低电源电压和长时间运行温度范围可达到125。这种霍尔IC可用作各种类型的传感器(速度传感器、位移传感器、转速传感器等等),接触开关以及相类似的应用场合。其工作电压比较宽(2.520V),可运行在较大的温度范围内(-20125), 其输出的信号符合TTL电平标准,可以直接接到单片机的IO 端口上,而且其最高检测频率可达到1MHZ。霍尔传感器的特性如图6所示,其中BOP为工作点“开”的磁感应强度,BRP为释放点“关”的磁感应强度。当外加的磁感应强度超过动作点BOP时,传感器输出低电平,当磁感应强度降到动作点BOP以下时,传感器输出电平不变,一直要降到释放点BRP时,传感器才由低电平跃变为高电平。BOP与BRP之间的滞后使开关动作更为可靠。U18集成霍耳开关由稳压器A、霍耳电势发生器(即硅霍耳片)B、差分放大器C、施密特触发器D和OC门输出E五个基本部分组成。在输入端输入电压VCC,经稳压器稳压后加在霍尔电势发生器的两端,根据霍尔效应原理,当霍尔片处在磁场中时,在垂直于磁场的方向通以电流,则与这二者相垂直的方向上将会产生霍尔电势差VH输出,该VH信号经放大器放大后送至施密特触发器整形,使其成为方波输送到OC门输出。当施加的磁场达到工作点(即Bop)时,触发器输出高电压(相对于地电位),使三极管导通,此时OC门输出端输出低电压,三极管截止,使OC门输出高电压,这种状态为关。这样两次电压变换,使霍尔开关完成了一次开关动作。图6 U18霍尔传感器和其输出特性U18霍尔传感器有3个外接口,2个是电源的正负极接口,最后一个是脉冲信号输出口,只要将霍尔传感器的信号输出端接到单片机的端口上便可以实现距离检测。其中,单片机的P3.2(INT0)引脚作为信号的输入端,采用外部中断0进行计数。车轮每转一圈,霍尔传感器就产生一个脉冲信号,根据霍尔效应原理,当霍尔片处在磁场中时,霍尔传感器的输出端输出低电平。当车轮转动一圈时小磁铁提供一个磁场,则霍尔传感器输出一次低电平完成一次数据采集,从而产生信号。霍尔传感器检测并输出信号到单片机的INT0或INT1计算脉冲输入端,引起单片机的中断,对脉冲计数,当计数达到特定的次数时,里程就会增加,单片机对里程进行计算后,通过接口电路将计算好的结果传送到数码管并显示出来。3.3 按键单元和状态显示单元本设计的按键单元电路(如图7)有4个按键,功能分别是:p1.0口接是清零按键,用于对新旅客的重新计费;p1.1口为路程和等待时间切换按钮,;p1.2口按键可进行单程和双程之间切换,灯亮时表示往返计费;p1.3口按键对本次计费进行暂停。状态显示使用四个发光二极管来指示,包括计时指示灯(p1.4口)、等待时间查询指示(p1.5口)、双程指示灯(p1.6口)、暂停指示灯(p1.7口)。这些指示灯能对出租车的每一种状态进行指示,当汽车速度小于5km/_ms;/记录等待时间多少个10ms/按键的定义,所有按键按下去为低电平sbit key0=P10; /清零sbit key1=P11; /切换路程与等待时间sbit key2=P12; /单程还是往返设置sbit key3=P13; /暂停按钮sbit led1=P16;/ 双程 sbit led2=P17;/ 暂停sbit led3=P14;/ 计时sbit led4=P15; / 切换bit key1_flag;/由于按键会自动复位,这个为标志位bit key2_flag;bit key3_flag;bit flag;/初始化函数void initial_data(void)distance=0;cost=0;second=0;minute=0;wait_ten_ms=0;key1_flag=1; /key2_flag=0; /单程or往返,接指示灯;key3_flag=1; /暂停,接指示灯;flag=0;round=0;dengdai=0;led1=1; /双程指示led2=1;/暂停指示 led3=1; /堵车指示led4=1; / 等待时间切换标志/暂停程序void zanting(void) if(key3_flag) EX0=0;/关闭中断和定时器TR0=0;elseEX0=1;TR0=1; key3_flag=!key3_flag; /计算数据处理 void jisuan() distance=round/60+wait_ten_ms/3000;/车轮转60圈为100m,等待时间30s为100mif(distance30)cost=price*(distance-30)/10+50;wait=minute*100+second; /显示的辅助程序,分离一个数的各个数字 void fenli(int temp) /数据的分离处理 if(temp9999) temp=9999;qianwei=temp/1000;baiwei=temp/100%10;shiwei=temp%100/10;gewei=temp%10; /延时约1ms,数码管显示时使用void diplay_delay(void) int i;for(i=0;i0;i-)for(j=340;j0;j-);/键盘的扫描void keyscan() if(key1=0) / 按键消抖并判断按下去的次数为基数还是偶数 delay(5);if(key1=0) key1_flag=!key1_flag;while(!key1)led_show();delay(5);while(!key1)led_show(); if(key0=0) / 清零 delay(5);if(key0=0)initial_data(); if(key3=0) / 暂停 delay(5);if(key3=0)zanting();while(!key3)led_show();delay(5);whi

温馨提示

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

评论

0/150

提交评论