出租车计费器设计流程框架
- 格式:doc
- 大小:33.00 KB
- 文档页数:2
出租车计费系统设计功能分析本设计主要介绍了出租车计费系统的设计思路和过程,并给出了所涉及的相关知识的详细介绍。
EDA技术应用,单片机的功能及应用,传感器检测技术,VHDI编程语言及汇编语言程序,显示系统设计及按键控制,目前,普遍的出租车计费器仅仅具有时钟,起步价,里程计费,等待计费及显示几个功能。
其发展前景是可观的,将来的产品除具有这些功能外,另外还可增加如下功能:防作弊功能,IC卡付费:顾客能在制定点购买一定额度的"顾客IC卡",乘车后可用IC卡付帐,付帐是否成功有相应的提示。
车主可定期将总营业额写入”车主IC卡"中,并据此IC卡向所属公司领取报酬。
车票资料打印:顾客付费后可打印发票,打印内容包括车主信息和车费信息等。
可打印车主总营业额信息。
语音播报:当乘客上车时,可自动问候乘客,当到达目的地,自动播报乘车费用并礼貌再见,表达希望下次乘坐的意思。
增加的这些功能将会更好地为乘客服务。
计费及显示①里程,即汽车行程里程,用四位数字显示,显示方式为"XXX.X", 单位为畑,精确到0.1km o②单价,即里程单价,用三位数字显示,显示方式为"X.XX",单价为元/ m,根据每天不同的时间段有两种情况:当时间段为06: 00〜23:00时单价为1.4元/ m,其他时间段内单价为1.80元/km o③等候时间,用四位数字显示分钟和秒,显示方式为"XX:XX",等候的定义是:当汽车行驶速度小于或等于12 m/h时为"等候"。
在等候时间大于1小时的情况下,可以不显示等候时间,但必须对等候时间进行统计计算。
④等候单价,等候单价有两种情况:在等候时间小于1小时的情况下,等候单价为1元每5分钟;在等候时间大于1小时的情况下,等候单价为20元每小时。
⑤费用的计算,出租车的起价为5.00元,当里程小于2畑时,按起价计算费用;当里程大于2畑时按下式计算费用:费用二里程*里程单价+等候时间*等候单价。
第一章出租车计价系统的设计要求与设计方案1.1出租车计价器设计要求设计一个出租车自动计费器,计费包括起步价、行车里程计费、等待时间计费三部分,用1602液晶显示总金额,运行时间,暂停时间,最大值为999元,起步价为6元,3Km之内起步价计费,超过3Km,每一公里增加1元(即1KM增加1元),等待时间单价为每分钟1元,用液晶显示总里程,同时用液晶显示等待时间。
① 、计费功能费用的计算是按行驶里程收费。
设起步价为6元。
1、当里程<3km时,按起价计算费用2、当里程>3km时,每公里按1元计费3、等待累计时间>1min时,按1元/min计费4、S1为启动按钮、S2等待按钮、S3调整计费按钮、S4停止按钮②、显示功能1、显示行驶里程:用四位数字显示,显示方式为“XXX.X”,单位为km。
计程范围0-99.9km,精确到0.1km。
2、显示等候时间:用两位数字显示,显示方式为“XX”,单位为min。
计时范围0-59min,精确到1min。
3、显示总费用:用四位数字显示,显示方式为“XXX”,单位为元。
计价范围0-999元,精确到1元。
1.2系统主要功能本出租车自动计费,上电后显示最初的起步价,里程计费单价,等待时间计费单价,通过按键可以调节起步价,里程计费单价。
同时具有运行,暂停,停止等状态,可以显示暂停的时间,具有累加功能,暂停和运行时间在暂停和运行前一次的状态上计时。
出租车停止后能够显示行驶的总费用。
1.3方案论证与比较方案一:采用数字电子技术,利用555定时芯片构成多谐振荡器,或采用外围的晶振电路作为时钟脉冲信号,采用计数芯片对脉冲尽心脉冲的计数和分频,最后通过译码电路对数据进行译码,将译码所得的数据送给数码管显示,一下是该方案的流程框图,方案一如图1-1所示:图1-1方案一案二:采用EDA技术,根据层次化设计理论,该设计问题自顶向下可分为分频模块,控制模块计量模块、译码和动态扫描显示模块,其系统框图如图1-2所示:图1-2方案二方案三:采用MCU技术,通过单片机作为主控器,利用1602字符液晶作为显示电路,采用外部晶振作为时钟脉冲,通过按键可以方便调节,以下是方案三的系统流程图,本方案主要是必须对于数字电路比较熟悉,成本又不高。
目录摘要 (1)第1章绪论 (2)第2章系统设计 (3)2.1系统组成 (3)2.1.1 计费及显示 (3)2.1.2 时钟及显示 (3)2.1.3 计费开始提示 (1)2.2功能模块设计 (1)第3章硬件及软件实现 (3)3.1传感器 (3)3.1.1 光电传感器电路设计 (3)3.1.2车轮光电开关检测电路 (4)3.2单片机 (4)3.2.1 8051 单片机功能方块图 (5)3.2.2 AT89S51单片机简介 (7)3.2.3 AT89S5l与51系列单片机相比具有如下特点 (8)3.2.4 89S51的内部框图 (9)3.2.5 中断控制 (11)3.2.6 单片机控制程序设计 (12)3.2.7 单片机汇编语言源程序 (16)3.3显示及按键控制系统 (31)3.3.1 LED数码管 (31)3.3.2 数据显示电路的设计 (32)第4章系统检测及分析 (34)4.1系统仿真/硬件验证 (34)4.1.1 系统的调试方法 (34)4.1.2 系统的硬件验证 (34)4.2设计技巧分析 (35)结论 (36)附录A: FPGA芯片引脚 (37)摘要本系统电源电压为+16V,速度传感器具有汽车每运行1㎞提供1000个脉冲信号的特性。
显示器可以采用LED数码管。
系统采用单片机和FPGA的结合进行系统的主体设计,测控FPGA芯片通过采集传感器脉冲信号WCLK进行里程计算,里程计费,利用外部脉冲信号SCLK产生标准时钟信号,以计算等待时间,等待费用,并产生里程标志(LCBZ),等待标志(DDBZ),熄灯标志(XDBZ)等有关控制标志信号,同时根据单片机发出的开始信号(START),时段标志(SDBZ),传输数据选择(SEL)等控制信号将有关计算结果传送给FPGA芯片。
单片机MCU除了完成键盘扫描,显示控制外,还通过P0口与FPGA进行数据交换,并向测控FPGA芯片发出有关控制信号。
本设计方案利用单片机和FPGA的结合,发挥它们各自的长处,分工清晰,实际使用和操作符合大众逻辑,容易被人接受。
河热找桝甲駅粵?t JIANGSU TEACHERS UNIVERSITY OF TECHNOLOG Y通信电子线路课程设计调频器的设计学院名称:电气信息工程学院_______________________ 专业:通信工程_____________________________班级:08通信1w __________________________姓名:储旭____________________________学号________________________指导教师姓名:钱志文谈发明2011目录实验要求1.1技术要求 (2)1.2功能要求 (2)二本人任务 三实验原理3.1设计思路框图 ..................................... 3 3.1设计思路 .................................... 3 3.3设计框图 . (4)四单元模块设计4.1分频模块 ................................. 5 4 .2计费模块 ............................. 6 4.3转码模块 ............................. 9 4.4位选模块 ............................. 11 4.5八选一模块 ................................. 12 4.6 3-8译码模块 ................................. 13 4.7数码管译码模块 (14)五顶层模块设计5.1程序 ................................ 15 5.2顶层文件仿真图 (17)六 硬件电路设计及安装 ......................... 18 七 硬件电路安装与调试 ........................... 18 八调试结果与分析说明 .............................. 19 九收获与体会 ....................................... 19 十参考文献 .. (20)5.3软件框图 ..............................1815实验要求1.1技术要求用VHDL语言设计符合要求的计费器,并用层次化设计该电路。
4.8 出租车计费系统的设计4.8.1 设计要求设计出租车计费系统,实现出租车按照行驶里程计费,行驶里程在3公里以 内,预置起步费为7元,3公里以上以1.6元/公里计费,当计费总额超过30元, 以 2.4 元/公里计费,车停止结束计费。
车费总额可显示最大值为 99.9 元,能同 步显示对应行驶里程。
模拟出租车启动、暂停、停止等状态,通过动态扫描显示 电路,显示行驶里程和车费总额。
4.8.2 设计过程1.出租车计费系统的设计原理出租车计费系统整体设计框图如图 4.8.1 所示,主要模块包括车轮脉冲计数 模块、里程计数模块、计费模块、动态扫描模块及译码模块。
图 4.8.1 出租车计费系统整体设计框图车轮脉冲计数模块接收来自车轮传感器的脉冲信号, 以及出租车运营过程的 启动、暂停、停止等信号,根据车轮的型号,转换得到百米行驶信号。
里程计数 模块负责统计百米行驶信号,得到行驶里程数据信号,计费模块根据行驶里程以 车轮脉冲计数模块计费模块 里程计数模块动态扫 描及译 码模块车轮脉冲 信号 启动/暂停 停 止 时钟信号及车费规则,得到车费总金额数据信号,将行驶里程和车费总金额数据信号,送 入动态扫描模块及译码模块,供外部数码管显示。
2.车轮脉冲计数模块车路脉冲计数模块接收来自车轮传感器的脉冲信号,经过计数分频,产生出 租车行驶100米的输出信号。
由于不同型号的车轮,直径大小不同,行驶100米车轮转的圈数不同,即车 轮传感器发出的脉冲信号个数不同,对不同车轮应区别对待。
如表481所示, 车轮直径与每公里所转圈数对应表。
表 481 车轮直径与每公里所转圈数对应表车轮直径 500mm 520mm 540mm 560mm 580mm圈数/公里 637 612 590 569 549本设计中我们选取车轮直径为520mm进行讨论,设计程序如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY count ISPORT(clk, reset, start : IN STD_LOGIC;clk_out : OUT STD_LOGIC);END count;ARCHITECTURE behave OF count ISSIGNAL mode : STD_LOGIC_VECTOR(5 DOWNTO 0);SIGNAL temp : STD_LOGIC_VECTOR(5 DOWNTO 0);TYPE states IS (s0, s1);SIGNAL s_state : states;BEGINmode <= "111101";PROCESS(clk, start, reset)BEGINIF reset = '1' THEN s_state <= s0;temp <= "000000";ELSIF (clk'EVENT AND clk = '1') THENCASE s_state ISWHEN s0 => temp <= "000000";IF start = '1' THENs_state <= s1;ELSE s_state <= s0;END IF;WHEN s1 => IF start = '1' THENIF temp = mode THENtemp <= "000000"; s_state <= s1;ELSE temp <= temp + 1; s_state <= s1;END IF;ELSE s_state <= s0;END IF;END CASE;END IF;END PROCESS;clk_out <= '1' WHEN temp = mode ELSE '0';END behave;以上程序中,当停止键 reset 设为高电平,模块进入停止计数状态(s0);停止键 reset 设为低电平,同时启动/暂停键设为启动状态(start 高电平),进入;设置为暂停(start 低电平),回到s0状态,停止分频计数。
出租车计费器出租车的出现给人们的生活带来了极大的便利,日渐成为城市交通工具中重要的成员之一.本实验以日常所见的出租车计费器为设计目标,实现其计程、计时、预置、计费等功能。
一、系统设计要求设计一个满足日常生活所需功能的出租车计费器.该计费器能实现计费功能.车起步开始计费,首先显示起步价,起步费为3。
00元,车在行驶3KM以内,只收起步价。
车行驶超过3KM之后,没KM2元,车费依次累加。
当总费用达到或超过40元时,每KM收费4元。
当遇到红灯或客户需要停车等待时,则按时间计费,计费单价为每20s收费1元。
实现计费器预置功能,能够预置起步费、每公里收费、车行加费里程、计时收费等。
可以模拟汽车行驶、停止、暂停等状态,并根据不同状态进行计费.以十进制显示出租车行驶路程与车费。
二、系统设计方案分析系统设计要求不难得知,整个出租车计费系统按功能主要分为速度模块、计程模块、计时模块和计费模块。
速度模块:通过对速度信号sp的判断,决定变量kinside的值。
kinside即是进行100m所需要的时钟周期数,然后每行进100m,则产生一个脉冲clkout。
计程模块:由于一个clkout信号代表行进100m,故通过对clkout计数,可以获得共行进的距离kmcount.计时模块:在汽车启动后,当遇到顾客等人或红灯时,出租车采用计时收费的方式。
通过对速度信号sp的判断决定是否开始记录时间。
当sp=0时,开始记录时间。
当时间达到足够长时则产生timecount脉冲,并重新计时。
一个timecount脉冲相当于等待的时间达到了时间计费的长度。
这里选择系统时钟频率为500HZ,20s即计数值为1000。
计费模块由两个进程组成。
其中,一个进程根据条件对enable和price赋值:当记录的距离达到3公里后enable变为1,开始进行每公里收费,当总费用大于40元,则单价price 由原来的2元每公里变为4元每公里;第二个进程在每个时钟周期判断timecount和clkout的值。
电子课程设计——出租车计费器学院:电子信息工程学院专业、班级:姓名:学号:指导老师:2014年12月出租车计费器设计任务与要求设计一个出租车计费器,能按路程计费,具体要求如下:1、实现计费功能:计费标准为:按行驶里程计费,起步价为6.00元,并在3km后按1.20元/km计费,当计费达到或超过20元时,每公里加收50%的车费,车停止和暂停时不计费。
2、设计动态扫描电路,将车费和里程显示出来。
方案一一、总体框图方案一总体框图如图1-1所示。
路程信号采集模块里程显示模块计费显示模块图1-1 方案一总体框图1、路程信号采集模块此模块的主要功能为传感器采集出租车的行车信息,在此次的设计中,出租车行驶的公里数用脉冲来替代,出租车每行驶0.1公里,路程信号采集模块检测到一个脉冲。
2、里程显示模块此模块的功能主要为显示出租车行驶的里程数,在此次的设计中,采用数码管进行显示。
此模块中运用十进制计数器74LS160组成的组合电路对路程信号采集模块采集到的脉冲进行累计,并将累加结果作为出租车当前行驶里程数并通过数码管显示出来。
3、计费显示模块此模块的功能主要为显示出租车当前行驶里程下对应的车费,通过数码管显示出来。
在这一模块中,仍然采用十进制的计数器对价钱进行累加,根据设计要求,由于不同的行驶里程下所对应的计价方式不同,考虑到计价的准确性,此处采用累计与里程数脉冲频率成一定比例的脉冲的数量作为车费通过数码管显示出来。
例如,显示里程数的脉冲频率为100HZ,在行驶至三公里以后,计费部分的脉冲换为120HZ,这样相当于出租车每行驶一公里,价钱累加1.2元,当计价超过或达到20元时,计费部分的脉冲换做180HZ,这样相当于出租车每行驶一公里,价钱累加1.8元。
二、选择器件器件逻辑符号分别如图1-2、1-3、1-4、1-5、1-6、1-7所示,器件对应真值表与特性表分别如表1-1、1-2、2-3、1-4、1-5、1-6所示。
目录摘要 (Ⅰ)第1章引言 (1)1. 1 出租车计价器概述····················································· (1)1. 2 本设计任务······················································ (1)1.2.1 设计任务······················································ (1)1.2.2 设计要求······················································ (1)1. 3 系统主要功能······················································ (2)第2章出租车计价器硬件设计 (3)2.1 系统的硬件构成及功能························································ (3)2. 2 AT89S51单片机及其引脚说明··························································42.3 AT24C02引脚图及其引脚功能 (6)2. 4 AT24C02 掉电存储单元的设计·························································62.5 里程计算、计价单元的设计 (7)2.6 数据显示单元设计························································ (8)第3章系统软件设计 (10)3. 1 系统主程序设计························································ (10)3. 2 定时中断程序设计····················································· (12)3. 3 里程计数中断服务程序设计····················································· (12)3.4 中途等待中断服务程序设计····················································· (12)3. 5 键盘服务程序设计····················································· (12)3. 6 显示子程序服务程序设计····················································· (12)第4章系统调试与测试结果分析 (13)4. 1 使用的仪器仪表························································ (13)4.2 系统调试 (13)第1章引言本次课程设计利用单片机技术来实现一台多功能出租车计价器,具有性能可靠、电路简单、成本低等特点。
出租车计费器设计要求计费标准为武汉起步3元,1公里后为4元/公里,1.5公里后为5元/公里,2公里后为6元/公里,2.5公里后为7元/公里,3公里后为8元/公里,以后1.4元/公里。
当计费达到20元后,每公里加收50%的车费,车停止每3分钟增加0.7元。
车费显示出来,有一位小数。
1、 设计原理及方法如图1所示,包含运算控制模块、分频器、显示模块这三大部分。
图1系统框图运算控制器模块将其他两个进行连接,是本次设计的核心。
它包含计程器、计时器、计价器,同时还有读取外部的拨码开关控制信号,提供当前显示信号与显示位选信号,从而周期性交替显示计价/计时信息、等时信息。
计程器、计时器、计价器根据位选信号,输出相应数据的当前选中数字,由顶层模块根据显示数据类型变换信号进行选择,传输给显示模块。
实验箱的时钟信号为20MHz方波,由分频器分为10Hz的计时信号(一个周期代表现实中的1s)、10Hz的计程信号(一个周期代表现实中的10m)、500Hz的数码管扫描信号(扫描频率62.5Hz)、0.2Hz的显示数据类型变换信号(变化周期5s)。
显示模块由实验箱上的3/8译码器、五个LED灯构成状态的指示灯、程序编写的一个七段数码管译码器。
2、主要模块设计2.1、速度模块速度模块首先根据start信号判断是否开始计费,然后根据输入的速度档位sp[2..0]的判断,确定行驶100m所需要的时钟数,每前进100m,输出一个clkout 信号。
同时由cnt对clk进行计数,当cnt等于kinside时,把clkout信号置1,cnt清0。
其模块框图如图2图2速度模块框图2.1.1、速度模块仿真速度模块的仿真波形图如图3示。
该模块根据出租车所处的运行状态和不同的形式速度,对相应数目的时钟周期进行计数,车每行驶100m时输出信号clkout 输出高电平。
图3速度模块仿真波形图2.2、计程模块主要用于记录行进的距离,其模块框图如图4所示。
出租车计费器一、设计任务出租车自动计费器是根据客户用车的实际情况而自动计算、显示车费的数字表。
数字表根据用车起步价、行车里程计费及等候时间计费三项显示客户用车总费用,打印单据,还可设置起步、停车的音乐提示或语言提示。
1.自动计费器具有行车里程计费、等候时间计费和起步费三部分,三项计费统一用4位数码管显示,最大金额为99.99元。
2.行车里程单价设为1.80元/km,等候时间计费设为1.5元/10分钟,起步费设为8.00元。
要求行车时,计费值每公里刷新一次;等候时每10分钟刷新一次;行车不到1km或等候不足10分钟则忽略计费。
3.在启动和停车时给出声音提示。
二、设计方案方案1 采用计数器电路为主实现自动计费。
分别将行车里程、等候时间都按相同的比价转换成脉冲信号,然后对这些脉冲进行计数,而起价可以通过预置送入计数器作为初值,如图1的原理框图所示。
行车里程计数电路每行车1km输出一个脉冲信号,启动行车单价计数器输出与单价对应的脉冲数,例如单价是1.80元/km,则设计一个一百八十进制计数器,每公里输出180个脉冲到总费计数器,即每个脉冲为0.01元。
等候时间计数器将来自时钟电路的秒脉冲作六百进制计数,得到10分钟信号,用10分钟信号控制一个一百五十进制计数器(等候10分钟单价计数器)向总费计数器输入150个脉冲。
这样,总费计数器根据起步价所置的初值,加上里程脉冲、等候时间脉冲即可得到总的用车费用。
图1 出租车计费器原理框图一上述方案中,如果将里程单价计数器和10分钟等候单价计数器用比例乘法器完成,则可以得到较简练的电路。
它将里程脉冲乘以单价比例系数得到代表里程费用的脉冲信号,等候时间脉冲乘以单位时间的比例系数得到代表等候时间的时间费用脉冲,然后将这两部分脉冲求和。
如果总费计数器采用BCD码加法器,即利用每计满1km的里程信号、每等候10分钟的时间信号控制加法器加上相应的单价值,就能计算出用车费用。
图2 出租车计费器原理框图二方案2 采用单片机为主实现自动计费。
1.出租车计费器的总体设计1.1 出租车计费设计该出租车计费器按下开关S1后开始计费和计里程数,分为白天和夜晚。
当拨动开关K2为0时,系统使用程序设置的起步价,白天起步价是3元,准行2公里,以后2元/公里;夜晚起步价是9元,准行2公里,以后3元/公里。
当拨动开关K2为1时,可由矩阵键盘输入起步价0~9元。
当路程大于200公里时,价格会在原来的基础上加50元。
1.2 基本设计思想时钟输入为一个1KHz的系统时钟,直流电机模块每转一圈输出一个脉冲信号给CPU,另外用按键模块的S1 来作为整个系统的复位按钮,每复位一次,计费器从头开始计费。
直流电机模块用来模拟出租车的车轮子,每转动一圈认为是行走1 米,所以每旋转1000 圈,认为车子前进1 公里。
系统设计是需要检测电机的转动情况,每转1000圈,分频模块输出一个下降沿信号。
车费和里程数在一个8位7段数码管上显示,前4位显示里程,后4位显示费用。
路程的单价由16*16点阵显示,拨动开关K1为0时,2元/公里,点阵显示2;拨动开关K2为1时,3元/公里,点阵显示3。
2.出租车计费器的总体实现2.1 系统总体框图该出租车计费器由一个VHDL程序构成,不同功能的实现分别是多个进程控制,主要进程有:分频模块进程:将每1000个电机脉冲转化为1个输出脉冲;计程模块进程:记录已行里程;计费模块进程:计算应付车费;4*4矩阵键盘进程:设置起步价;数码管显示进程:将已行里程和应付车费显示在数码管上; 16*16点阵显示进程:显示当前状态的每公里单价。
图2-1 系统框图2.2 程序流程图(2)计程模块图2-3 计程模块(3) 计费模块图2-4 计费模块2.3 出租车计费器各功能的实现(1)分频模块:直流电机motor每输出1000个脉冲,分频器glclk输出一个下降沿脉冲,表示电机已走1公里,meter1加1.if rst='0' thencount<=0;temp<='0';elsif (motor'event and motor='1') thenif count>499 thencount<=0;temp<=not temp;elsecount<=count+1;end if;end if;glclk<=temp;(2)计程模块:glclk的下降沿来临时,路程的个位加1,满9往高位进一,同时低位归0。
出租车计价器系统设计方案第一章出租车计价器系统功能描述1.1 计价器整体功能描述结构设计出租车计价器方案并进行仿真,完成白天晚上转换计价,显示路程、单价、总金额。
1.2 各部分电路功能描述1 不同情况具有不同的收费标准。
a) 白天b) 晚上2 具有数据的复位功能3 IO 口分配的简易要求a) 距离检测使用霍尔开关A44Eb) 白天/ 晚上收费标准的转换开关c) 数据清零开关4 数据输出5 按键a) 启动计时开关b) 数据复位(清零)c) 白天/ 晚上转换第二章方案论证本系统可分 4 个模块构成:主控电路、掉电保护模块、信号采集模块和显示模块。
2.1 主控电路选择方案一使用数字电路和模拟电路来完成设计要求。
显示器件有:LED显示, VFD显示,分段式数码管等等,针对显示单元电路这里可以使用分段式数码管显示,分段式数码管分为共阳极和共阴极两种,对数码管的驱动针对不同的类型采用不同的芯片,共阴极数码管通常采用TTL系列的74LS48驱动,而共阳极数码管通常采用CMO系列的CD4543来驱动;仅时钟显示电路框图和实际电路就非常复杂,整体电路将更加烦琐。
而且对于模式的切换需要用到机械开关,机械开关时间久了会造成接触不良,功能不易实现;整体电路的规模较大,用到的器件多,造成故障率高,难调试。
方案二使用单片机来完成设计要求。
单片机功能强大,用较少的硬件和适当的软件相互配合可以很容易的实现设计要求,且灵活性强,可以通过软件编程来完成更多的附加功能。
针对计费模式的切换,通过软件编程就可以容易的实现。
避免了机械开关带来的不稳定因素。
确定方案经过上面的两种方案的比较,显然第二种方案具有更大的优越性、灵活性,所以我们采用第二种设计方案进行设计。
2.2 显示电路选择方案一:采用液晶显示器(LCD显示。
液晶屏显示功能强大,可显示各种字体的数字、汉字、图像,还可以自定义显示内容,显示内容较丰富;方便操作者读取信息及一些扩展功能的实现。
毕业论文目录摘要 (Ⅰ)第1章引言 (1)1. 1 出租车计价器概述 (1)1. 2 本设计任务 (1)1.2.1 设计任务 (1)1.2.2 设计要求 (1)1. 3 系统主要功能 (2)第2章出租车计价器硬件设计 (3)2.1 系统的硬件构成及功能 (3)2. 2 AT89S51单片机及其引脚说明 (4)2.3 AT24C02引脚图及其引脚功能 (6)2. 4 AT24C02 掉电存储单元的设计 (6)2.5 里程计算、计价单元的设计 (7)2.6 数据显示单元设计 (8)第3章系统软件设计 (10)3. 1 系统主程序设计 (10)3. 2 定时中断程序设计 (12)3. 3 里程计数中断服务程序设计 (12)3.4 中途等待中断服务程序设计 (12)3. 5 键盘服务程序设计 (12)3. 6 显示子程序服务程序设计 (12)第4章系统调试与测试结果分析 (13)4. 1 使用的仪器仪表 (13)4.2 系统调试 (13)第1章引言本次课程设计利用单片机技术来实现一台多功能出租车计价器,具有性能可靠、电路简单、成本低等特点。
1.1 出租车计价器概述计价器显示的营运金额是营运里程与价格的函数(等候时间一般折算成一定比例的里程来计算)。
出租车计价器通过传感器与行驶车辆连接。
出租汽车的实际里程通过传感器的脉冲信号在计价器里折算成一定的计价营运里程。
目前市场上出租车计价器功能主要有具有数据的复位功能、白天/晚上转换功能、数据输出功能、计时计价功能等等,但能够进行语音播报数据信息的出租车计价器还是比较少见的,针对这一点我们来设计一款多功能出租车计价器,在原有功能的基础上增加单价输出、单价调整、路程输出、显示当前的系统时间、语音播报数据信息等功能。
1.2 本设计任务1.2.1 设计任务设计一款基于AT89S51单片机的出租车计价器。
1.2.2 设计要求1.基本要求(1)不同情况具有不同的收费标准。
● 白天● 晚上● 途中等待(>10min 开始收费)(2)能进行手动修改单价。
电子课程设计——出租车自动计费器出租车自动计费器一、 设计任务与要求出租车自动计费器是根据客户用车的实际情况而自动显示用车费用的数字仪表。
仪表根据用车起价、行车里程两项求得用车的总费用,通过数码自动显示。
1. 设计一个自动计费器,具有行车里程计费,起价等部分。
用四位数码管显示总金额,最大金额是99.99。
2. 行车起价为8.00元,超过5公里为1.6元/公里(60公里每小时)二、总体框图模块功能与设计思路:计费的电路将汽车行驶的里程数转换成与之成正比的脉冲个数,在出租车转轴上加装传感器,以便获得“行驶里程信号”。
脉冲源为电路提供的脉冲的周期与行车里程正比。
起价部分电路通过脉冲源加在八百进制计数器上,在800个脉冲之前显示器一直显示0800,当八百进制计数器显示799时通过门电路控制使其停止计数(此时到达五公里)。
然后160进制计数有效,每计一个数,10000进制计数器也计一个数,显示器的数值加一。
三、器件选择与功能简介元器件名称数量备注555定时器 1 构成脉冲电路74LS190 8 十进制计数器74LS191 1 十六进制计数器行车里程 脉冲源起价10000进制计数器脉冲源160进制计数800进制计数器显示器74LS190逻辑符号 74LS191逻辑符号U174LS190NA 15B 1C 10D9~U/D 5QA 3QB 2QC 6QD 7~RCO 13MAX/MIN 12CLK 14~CTEN 4~LOAD1174ls190外接引线排列 74ls191外接引线排列单刀单掷开关 1 控制总电路单刀双掷开关 1 控制10000进制的置数端非门 1 构成八百进制计数器或门 2 控制八百进制计数器停在799的位置七输入与门 1 当799时输出高电平,八百进制计数器不再计数四位数码显示器 9 显示数字电阻 2 1个367ohm 1个4、7kohm电容 1 1个100uf 1个1 uf电源电压vcc 1 5v二输入与门 1控制800进制计数器到达799时,10000进制计数器开始计数U174LS191NA 15B 1C 10D9~U/D 5QA 3QB 2QC 6QD 7~RCO 13MAX/MIN 12CLK 14~CTEN 4~LOAD1174ls190时序图 74ls191时序图74ls190内部原理图 74ls191内部原理图74LS190是可预置数同步可逆加减十进制计数器,符号如图所示,它具有异步置数端LOAD,加减控制端D/U和计数控制端CTEN,为方便级联,设置了两个级联输出端RCO和MAX/MIN.;当加减控制端等于1时减计数,否则为加计数;当异步置数端等于0时置数,当计数控制段为1时禁止计数,为0时,四个触发器将在时钟上升沿开始计数;当计数器加计数,计数值为9或减计数,计数值为0时,MAX/MIN端输出与时钟周期相同的正脉冲,而RCO产生一个宽度为时钟低电平宽度的低电平,74LS191为四位二进制即十六进制同步加法计数器,其功能表与74LS190相同,如图所示输入输出CTEN LOAD D / U D C B A CPX O X d c b a X 异步预置O 1 O 加计数O 1 1 减计数11 XX 保持图.74LS190、191功能表555定时器555 芯片是定时器,,是一种将数字功能和模拟功能集为一体的中规模集成电路。
1.所选题目:出租车计费器2.设计要求:设计一个出租车计费器,能按路程计费,具体要求如下:(1)实现计费功能,计费标准为:按行驶里程计费,起步价为7.00元,并在汽车行驶2km后按1.2元/km计费,当里程数达到15km后,没千米加收50%的空驶费,车辆停止和暂停时不计费。
(2)现场模拟汽车的启动、停止、暂停和换挡等状态。
(3)设计数码管显示电路,将车费和路程显示出来,各有1位小数。
3.设计原理:设计该出租车有启动键、停止键、暂停键和档位键。
启动键为脉冲触发信号,当其为一个脉冲时,表示汽车已启动,并根据车速的选择和基本车速发出相应频率的脉冲(计费脉冲)以此来实现车费和路程的计数,同时车费显示起步价;当停止键为高电平时,表示汽车熄火,同时停止发出脉冲,此时车费和路程计数清零;当暂停键为高电平时,表示汽车暂停并停止发出脉冲,此时车费和路程计数暂停;档位键用于改变车速,不同的档位对应着不同的车速,同时路程计数的速度也不同。
4.模块设计:出租车计费器可分为两大模块,即控制模块和译码显示模块。
系统框图如下:5.电路符号:出租车计费器的输入信号有:计费时钟脉冲clk;汽车启动键star t;汽车停止键stop;档位speedup。
输出信号:7段显示控制信号seg7;小数点dp。
6.具体设计流程:(1)根据出租车计费原理,将出租车计费部分由5个计数器来完成分别为cou nterA,counterB,counterC,counterD,counterE。
①计数器A完成车费百位。
②计数器B完成车费十位和个位。
③计数器C完成车费角和分(显示时只显示角)。
④计数器D完成计数到20(完成车费的起步价)。
⑤计数器E完成模拟实现车行驶100 m的功能。
(2)当超出起步价时就自动在起步价的基础上每增加一个100m脉冲就增加相应的费用,而当总里程达到或超过一定的数值时,能按新的收费标准进行收费。
(3)译码/动态扫描电路模块将路程与费用的数值译码后用动态扫描的方式驱动6只数码管,即所连接的数码管共用一个数据端,由片选信号依次选择输出,轮流显示。
电子技术课程设计—出租车计费器的设计学院:电子信息工程学院班级:姓名:学号:指导教师:日期:2009年12月08日出租车计费器设计一、设计任务与要求设计并制作一台出租车计费系统,要求如下:﹙1﹚实现计费功能,计费标准为:按行程里程收费,起步价为7.00元,在车行3公里后再按2.2元/公里计费,当计费器达到或超过20元时,每公里加收50﹪的车费。
﹙2﹚实现模拟功能:能模拟汽车启动、停止、暂停、加速的状态﹙3﹚设计动态扫描电路,将车费和里程显示出来,各有两位小数。
二、总体框图(1)系统总体结构出租车计费器的组成如上图所示,各部分主要功能包括输入信号模块对车轮传感器传送的脉冲信号进行计数,并以高低脉冲模拟出租汽车启动,停止,暂停,加速按钮,具有输入信号作用;数据转换器模块将计费模块输出的车费和路程转换成4位的十进制数据;译码/动态扫描模块将路程与费用的数值译码后用动态扫描的方式驱动数码管;数码管显示模块将公里数和计费金额均用4位LED数码管显示。
(2)其流程图如下图所示:(3)各模块设计功能及设计思路★ 信号输入模块该模块主要实现计费功能和现场模拟功能。
计费标准为:按行驶里程计费,起步价为7.00元,并在车行3 km 后按2.20元/km 计费,当计费器达到或超过20元时,每公里加收50%的车费,车停止不计费。
并以高低脉冲模拟出租汽车启动、停止、暂停、加速按钮,具有输入信号的作用。
★ 数据转换模块数据转换模块是一个模为10的加法计数器,可将计费模块输出的车费和路程转换成4位的十进制数。
★ 显示模块显示模块是由七段LED 数码管译码和动态扫描显示两部分组成。
采用的是共阴极七段数码管,根据十六进制数和七段显示段码表的对应关系,其中要求路程和车费都要用2位小数点来表示,所以须设置一个控制小数点的变量,即程序中的dp 。
这段程序所示的是在数码管的第二、第六个后面显示小数点,实现了路程和车费都用2位小数点表示的功能。
电子元器件认识与系统设计报告班级学号姓名指导教师设计时间出租车计费器的设计1设计目的1.1 自动计费器具有行车里程计费,等候时间计费和起步费3项客户总费用,打印单据,3项费用统一用4位数码管显示,最大金额为99.99元。
1.2 起步费设为8元,行车单价为1.8元/km ,等候时间设为1.50元/km,要求行车时,计费器每1/km 刷新一次;等候时间每10 /km刷新一次;行车不足1/km或等候时间不足10 /km ,则忽略不计。
1.3 设置起步、停车的音乐提示或语言提示。
2设计分工说明在整个电路设计过程中,两个同学互相配合,共同完成了此项工作,并进行了市场调研。
3系统框图图1 出租车自动计费器系统框图4电路设计及工作原理4.1 等候时间计费电路等候时间计费电路如图2所示。
由74HC161(1)、(2)、(3) 构成的600进制计数器对“秒”脉冲CP2进行计数,当计满一个循环时也就是等候时间满10min。
一方面对600进制计数器清零,另一方面将基本RS触发器置1,启动74HC161(4) (5)构成的150进制计数器(10min 等候时间单价)开始计数,计数期间同时将脉冲从P1输出。
在计数器计满10min等候单价时将RS触发器复位为”0”,停止计数。
从P1输出的脉冲数就是每次等候10min对应输出的150个脉冲,表示单价为1.50元,即脉冲当量为0.01元。
等候时间计费的起始信号由接在74HC161(1)的手动开关给定。
图2 等候时间计费电路4.2 里程计费电路里程计费电路如图3所示。
安装在与汽车轮相接的涡轮变速器上的磁铁使干簧管继电器在汽车每前进10m路程闭合一次,即输出一个脉冲信号。
汽车每前进1km,则输出100个脉冲。
此时,计费器应累加1km的计费单价。
本电路设定为1.80元。
在图3中,干簧继电器B产生的脉冲信号经施密特触发器计满100个脉冲时,一方面使计数器清零,另一方面将基本RS触发器的Q端置“1”,使74HC161(3)(4)组成的180进制计数器开始对标准的秒脉冲CP1计数计满180个脉冲后,使计数器清零,RS触发器复位为“0”,计数器停止计数。
出租车计费器设计说明目录引言11总体设计21.1 设计要求如下:21.2 设计思路21.3出租车计费器工作原理21.4设计流程图32 应用工具介绍42.1 EDA技术介绍42.2 VHDL语言介绍52.3界面介绍63 系统仿真8总结与体会12参考文献13附录14介绍随着我国经济社会的全面发展,各大中小城市出租车运营发展迅速,出租车已成为人们日常出行的常用交通工具。
出租车计价器是出租车营运收费的专用智能仪器,是规范出租车市场的重要设备。
功能齐全、使用简单、计量准确的出租车计价器是加强出租车行业管理、提高服务质量的需要。
本设计采用VHDL硬件描述语言作为设计方法,采用自顶向下的设计思想,得到一个出租车计价系统的软件结构。
通过在Quartus软件下的仿真,证明所设计的电路系统完成了出租车计价功能,各项指标满足设计要求。
该设计虽然功能简单,智能化程度低,但还是有一定的实用性。
本设计基于VHDL语言设计出租车计价器,实现其基本功能。
与以往基于单片机的数模混合电路相比,FPGA具有稳定性好、抗干扰能力强的优点,非常适合作为出租车计价器的控制核心,因此选择VHDL设计出租车计价器来实现其功能。
本设计分析了出租车计价器的四个模块,概括如下:等待时间模块:该模块统计乘客确认下车前的等待时间,如堵车、中途下车等。
每分钟以一为单位计数,最大计数时间显示为59分钟。
距离模块:该模块计算车辆的行驶距离,并基于1Hz时钟检测行驶脉冲。
距离模块中有一些变量来判断距离。
大于3km时,有相应的使能信号记录,最大距离显示为99km。
计费模块:该模块根据等待时间模块和距离模块控制费用。
通过部门的使能信号,分别计算3km后、3km以上、3km以上的等待成本。
本文采用VHDL语言设计并实现了出租车计费系统。
源程序经美国ALTERA公司Quartus II软件调试优化,下载到特定芯片后可应用于实际出租车计费系统。
1总体设计1.1设计要求如下:(1)设计一个简单的出租车收费系统,实现计价功能。