出租车计费器的设计报告

合集下载

出租车计费器的设计报告

出租车计费器的设计报告

bit flag=0; uchar count=0; uchar click=0; uchar ZKB1=0,ZKB2=0; uchar time; uint T=0; float S,a[Change];
uchar code start []="welcome"; uchar code explain[]="S1:way S2:sure S3:stop S4:reset";
1
第六章 参考文献--------------------------------------------------11
2
摘要
本系统以 AT89C52 单片机为核心设计了一种用于计算出租车费用 的出租车计费器。其中还可根据出租车的档位,以及运行时间,实时 将里程数和时间用 1602 液晶显示。利用单片机的数学运算和控制功 能,结合部分模拟和数字电路,实现控制中的功能手动切换。各项实 测表明,设计原理正确合理,功能符合设计要求。
YES 显示里程数和时间
S1 是否按下? YES
换档及更新档位值
S3 是否按下? YES
电机停转、里程数不变
S4 是否按下? YES
里程表、时间显示为 0
8
四、系统功能测试 (一)功能测试 1、换档和暂停测试
经过测试,直流电机能在四个档位之间非常自如地转换,当暂停 键按下时电机能立即停止转动,并且能实时准确地在 1602 液晶上显 示档位值。 2、里程数测试
4
电机停转,则必使对角线上的两对三极管处于不导通状态,即为截止 状态。由于此时电机停转,里程数和时间也会静止不变。 三、系统设计 (一)硬件部分设计 1、电源电路
电路原理图如下所示:
图3 本设计系统采用 USB 方式供电,用一个 10uF 的电解电容稳定供 给系统的电源,并用一个 LED 灯做电源指示灯。 2、电平转换电路 电路原理图如下所示:

出租车计价器报告(共10篇)

出租车计价器报告(共10篇)

出租车计价器报告(共 10 篇)课程设计说明书课程:EDA 技术基础题目:出租车计费器学班级专XX 年12 月20 日长沙理工大学课程设计任务书物理与电子科学学院电信专业 1201 班姓名田伟正课程名称 EDA 技术基础题目出租车计费器长沙理工大学课程设计成绩评定表目录1.设计任务. ......................................12.设计方案. ......................................13.各功能模块的原理及思路分析.....................分频模块. ...................................计量模块. ...................................2 计费模块. ...................................控制模块. ...................................显示模块. ...................................4 模拟出租车脉冲信号发生器....................4 头文件......................................54.个人模块. ..........................55.个人模块方案验证. ..............................76.心得体会. ......................................8 参考文献. . (9)1.设计任务设计一个出租车自动计费器,计费包括起步价、行车里程计费、等待时间计费三部分。

起步价为元,2 公里之内按起步价计费,超过 2 公里,每公里增加元,等待时间单价为每 1 分钟元。

用数码管显示总金额、总里程、等待时间。

设汽车每前进十米里程传感器输出一个脉冲。

出租车计费器毕业设计

出租车计费器毕业设计

出租车计费器毕业设计济南铁道职业技术学院毕业设计题⽬:出租车计费器系别:电⽓系专业:电⼦信息专业班级:0831班学⽣姓名:梁会超指导教师:何付志完成⽇期:2010年11⽉11⽇毕业设计报告摘要本⽂介绍了以STC12C5A08AD单⽚机为核⼼的多功能出租车计价器的设计 ,阐述了系统软硬件设计过程及关键技术。

经测试,本计价器具有计程、计价、计时、等待时间计价等多种计量功能,并且具有存储、查询、起步价、起步价⾥程和每公⾥价格的预置、价格预置密码确认、车速显⽰、超速提醒、语⾳服务、清单打印和车内温度显⽰等多种功能。

关键词出租车计价器多功能 STC12C5A08AD 软硬件设计⽬录1引⾔ (1)2 ⽅案论证……………………………………………………………………Y 2.1 主控芯⽚的选择………………………………………………………Y 2.2 键盘选择………………………………………………………………Y 2.3扫描⽅式的选择………………………………………………………Y2.4显⽰驱动⽅式选择………………………………………………………Y3 系统整体……………………………………………………………………Y 3.1系统整体框图………………………………………………………………Y 4各单元电路设计………………………………………………………………Y 4.1主控单元…………………………………………………………………Y 4.2模拟出租车车速装置与⾥程检测单元……………………………………Y 4.3键盘控制单元……………………………………………………………Y 4.4数码显⽰单元……………………………………………………………Y 4.5实时时钟与等待时间累加单元…………………………………………Y 4.6语⾳播报与超速提醒单元………………………………………………Y 4.7票据打印单元……………………………………………………………Y 4.8车内实时温度显⽰单元…………………………………………………Y 5系统软件设计…………………………………………………………………Y 6测试⽅案与测试结果…………………………………………………………Y 表1 系统性能测试项⽬表…………………………………………………Y 表2 按键模拟设置⾥程、单程/往返计价测试结果………………………Y 表3 预置转速后计价测试结果……………………………………………Y 表4 累计等待时间计价功能测试结果……………………………………Y 表5 起步价、起步⾥程与每公⾥价格预置功能测试结果…………………Y 表6 ⽩天/晚上计价标准测试结果………………………………………Y 总结……………………………………………………………………………Y致谢……………………………………………………………………………Y 参考⽂献…………………………………………………………………………Y 附录⼀主程序流程……………………………………………………Y 附录⼆计价⼦程序流程……………………………………………………Y 附录三显⽰⼦程序……………………………………………………Y 附录四时钟⼦程序……………………………………………………Y 附录五温度传感器⼦程序……………………………………………………Y引⾔出租车计价器是出租车营运收费的专⽤智能化仪表 ,随着电⼦技术的发展 ,出租车计价器技术也在不断进步和提⾼。

出租车计价器设计报告

出租车计价器设计报告

出租车计价器系别:电气信息工程学院专业:电子科学与技术小组:成员:目录1 前言 (3)2 系统设计方案 (4)2.1 系统的设计需求 (4)2.2 系统的工作原理 (4)3 系统硬件设计 (5)3.1 单片机介绍 (5)3.2 硬件组成 (8)4 系统软件设计 (12)5 仿真调试 (14)6 结论 (16)7 参考文献 (178)8 心得体会及致谢 (20)附录A 设计总图 (194)附录B 源程序 (205)1 前言随着生活水平的提高,人们已不再满足于衣食住的享受,出行的舒适已受到越来越多人的关注[1]。

相对于公共汽车拥挤与缓慢以及私家车高昂的费用,出租车无疑是一种低价高质的出行交通工具。

近年来越来越多的人为了出行方便舒适愿意选择使用出租车,出租车行业得以快速发展[2]。

出租车计价器是出租车营运收费的专用智能化仪表,随着电子技术的发展,出租车计价器的技术在不断进步和提高[3]。

最初的计价器计费模式较为单一,不便于在不同的运营环境下选取不同的计费模式。

考虑到出租车行驶可能会出现从市区行驶到郊区或者行驶到偏僻地区,郊区或偏僻区打车的人少的现象,司机空车行驶返回成本较高,这时需要乘客为空车返回的路程承担一定的费用,这就需要区分单程/往返不同计价模式。

“单程”模式是指目的地在郊区或者比较偏僻的地方,到达目的地后打车的人比较少,需要乘客乘客承担一定的空车返回的费用;“往返”模式是指目的地在市区,到达目的地后还会有乘客乘车返回,这种情况下司机不需要空车返回,乘客不需要承担回程费用。

考虑到夜晚时出租车的灯光需要消耗能源以及司机夜间服务比白天较为辛苦,所以一般夜晚出租车的价格需要比白天高一点。

早期的出租车计价器均采用模拟电路和数字电路设计。

计价器整体电路的规模较大,需要器件多,容易出故障,难调试。

和模拟电路和数字电路设计相比而言,基于单片机进行设计的计价器,用较少的硬件和适当的软件相互配合就可以很容易的实现设计需求,硬件电路简单,稳定性好,灵活性强[4],通过软件编程就可以实现计费模式的切换。

出租车计价器设计报告

出租车计价器设计报告
方案整体框图
出租车计价器设计
出租车计价器设计
3. 设计实现 该设计内容可分为分频模块,控制模块,计量模块和显示模块 设计一个出租车计费器,具有行车里程计费、等候时间计费以及起步价三部分,用数码管 显示行驶里程 行车里程单价1元/公里,等候时间大于五分钟后单价1元/1分钟,起价5元(4公里起价 ) 行车里程的计费电路将汽车行驶的里程数转换成与之成正比的脉冲数,然后由计数译码电 路转换成收费金额,实验中以一个脉冲模拟汽车前进十米,则每100个脉冲表示1公里,然 后用BCD码比例乘法器将里程脉冲乘以每公里单价的比例系数,比例系数可由开关预置
例如单价是1元/公里,则脉冲当量为w0.01元/脉冲
出租车计价器设计
用LED显示行驶公里数,两个数码管显示收费金额 硬件设计 1、 主控制器:选择一个合适的微控制器作为系统整体的主控制模块 2、 里程表接口:设计电路接受和处理来自出租车里程表的信号来获取行驶里程 3、 等待时间计数器:使用定时器来测量为顾客停留的等待时间 4、 显示模块:选择LED数码管用于实时显示行驶的里程和费用 软件设计 1、 里程和等待时间费用计算:编写程序来实现里程表和等待时间测量器计算费用。对应 不同时间以及不同里程段,应用不同的计费规则 2、 显示驱动:编写程序驱动显示模块进行实时更新
随着城市旅游业的发展,出租车行业已成为城市的窗口,象征着一个城市的文明程度
出租车计价器设计
随着EDA技术的高速发展,电子系统的设计技术发生了深刻的变化,大 规模可编程逻辑器件CPLD/FPGA的出现,给设计人员带来了诸多方便。 利用它进行产品开发,不仅成本低、周期短、可靠性高,而且具有完全的知识产权。本次课程设计采用FPGA作为控制芯片,其中只需控制 FPGA中的RAM的状态即可。FPGA芯片可以重复使用,其原因是内容逻辑 关系会在断电后自动消失。4

出租车里程计价器设计报告(精简版)

出租车里程计价器设计报告(精简版)

注:1、本实验报告为精简版,简单易懂;2、报告封面需要自行添加;3、本人制作使用的是Multisim 11;附赠:完成的电路图、各部分及总原理图的截图;地址:/share/link?shareid=209026&uk=823578047(需下载本文档后,把遮盖在地址后半部分上的框框删除才可完全显示,方可下载附赠的内容。

PS:不要吝啬你的财富值啦,提供的图绝对能用!)数电部分题目 出租车里程计价器一、设计任务与要求1、里程计费用4位数码管显示,最大金额为99.99元;2、行车里程单价设为1.80元/km ;3、行车时,计费值每公里刷新一次。

二、方案设计与论证方案一:行车里程计数电路每行车1km 输出一个脉冲信号,启动行车单价计数器输出与单价对应的脉冲数,例如,单价是1.80元/km ,则设计一个一百八十进制计数器,每公里输出180个脉冲到总费计数器,即每个脉冲为0.01元。

原理框图:方案二:基于VHDL 的出租车计费器的设计。

采用 FPGA 芯片进行出租车计费器,主要分为分频模块、计量模块、计费模块、控制模块等模块,利用 FPGA 的可编程性,简洁又多变的设计方法,缩短了,研发周期。

主要采用了 FPGA 芯片,使用 VHDL 语言进行编程,使其具有了更强的移植性,更加利于产品的升级。

经过上面的两种方案的比较,两种方案各有优缺点,但它们实质是一样的。

由于刚刚学完了模电和数电,较两种方案而言,第一种方案对于加强和巩固所学的数电知识十分明显,所以我最终选择了第一种方案。

三、单元电路设计与参数计算里程计费电路如下图所示。

安装在与汽车车轮相接的涡轮变速器上的磁铁使干簧继电器在汽车每前进10m 时闭合一次,即输出一个脉冲信号。

汽车每前进译码显示数据锁存1km则输出100个脉冲。

此时,计费器应累加1km的计费单价,本电路设为1.80元。

在图中,干簧继电器产生的脉冲信号经施密特触发器整形到CP0。

CP0送入由74LS161(1)和74LS161(2)构成的一百进制计数器,当计数器计满100个脉冲时,一方面使计数器清0,另一方面将RS锁存器的Q1置为1,使74LS161(3)和74LS161(4)组成的一百八十进制计数器开始对标准脉冲CP1,(CP1脉冲为555定时振荡产生的500Hz脉冲)计数,计满180个脉冲后,使计数器清0。

出租车计价器设计报告

出租车计价器设计报告一、引言二、需求分析1.收费标准:根据国家和地方的规定,出租车费用通常包括起步价、里程费和时间费。

2.里程计算:计价器需要能够准确计算起点和终点之间的距离。

3.时间计算:计价器需要能够准确计算乘坐时间,以确定时间费用。

4.显示界面:计价器需要具备清晰易读的显示界面,能够显示当前的车费、里程和时间。

5.操作简便:计价器需要提供用户友好的操作界面,方便乘客和司机操作。

6.故障自检:计价器需要具备自动故障检测和报警功能,以保证正常工作。

三、设计方案1.硬件设计:(1)显示屏:使用液晶显示屏,具备高清显示和低功耗的特点,以确保清晰易读的显示界面。

(2)里程测量:采用GPS定位技术测量车辆的实时位置,并根据起点和终点的坐标计算里程。

(3)时间计算:计价器内置实时时钟,能够记录乘坐的时间,并根据时间段进行费用计算。

(4)按键:提供简单明了的按键,用于用户的选择和操作。

(5)故障检测:利用传感器检测故障情况,并在检测到故障时发出警报。

2.软件设计:(1)界面设计:设计直观简洁的用户界面,显示当前的车费、里程和时间,并提供用户选择的接口。

(2)公式计算:根据收费标准,设计相应的公式进行费用计算。

(3)自动故障检测:通过编程实现自动故障检测,并在检测到故障时,及时报警或提醒用户。

(4)数据存储:将计价器的数据存储在内部存储器中,便于后续的数据分析和管理。

四、实施方案1.硬件实施:(1)购买和组装计价器所需的硬件设备,如液晶显示屏、GPS定位模块、实时时钟等。

(2)开发或选择适合的电路板,将相关硬件设备连接起来,并进行测试和调试。

(3)将电路板和其他硬件设备安装在出租车中,确保稳定工作。

2.软件实施:(1)根据设计方案,开发计价器的软件程序,包括界面设计、公式计算、自动故障检测和数据存储等功能。

(2)将软件程序烧录到计价器的控制芯片中,并进行测试和调试。

(3)部署计价器的软件程序到所有出租车计价器上,以确保统一的功能和用户体验。

出租车自动计费器课程设计报告

电子课程设计——出租车自动计费器出租车自动计费器一、 设计任务与要求出租车自动计费器是根据客户用车的实际情况而自动显示用车费用的数字仪表。

仪表根据用车起价、行车里程两项求得用车的总费用,通过数码自动显示。

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 芯片是定时器,,是一种将数字功能和模拟功能集为一体的中规模集成电路。

出租车计价器-课程设计报告

软件学院课程设计报告课程题目出租车计价器班级集成13-4专业集成电路设计与集成系统学生学号指导教师(填写自己班的指导教师)年月日1.课程设计目的全面熟悉、掌握VHDL语言基本知识,掌握利用VHDL语言对常用的组合逻辑电路和时序逻辑电路编程,把编程和实际结合起来,熟悉编制和调试程序的技巧,掌握分析结果的若干有效方法,进一步提高上机动手能力,培养使用设计综合电路的能力,养成提供文档资料的习惯和规范编程的思想。

2.课程设计题目描述和要求2.1.课程设计题目描述①.实现计费功能,计费标准为:按行驶里程计费,起步价为7.0元,并在车行3km 后按2.2元/km 计费,当计费器达到或超过20元时,每公里加收50%的车费,车停止不计费。

②.现场模拟功能:以开关或按键模拟公里计数,能模拟汽车起动、停止、暂停等状态。

③.将车费和路程显示出来,各有一位小数。

2.2.总体设计思路框架2.3.课程设计题目要求①.设计正确,方案合理。

②.程序精炼,结构清晰。

③.设计报告含程序设计说明,用户使用说明,源程序清单及程序框图。

④.上机演示。

⑤.有详细的文档。

文档中包括设计思路、设计仿真程序、仿真结果及相应的分析与结论。

3.设计思想和设计内容3.1 出租车计费设计该出租车计费器按下开关S1后开始计费和计里程数,起步价是7元,行驶3公里,以后2.2元/公里。

并且设计选择模块,在车费超过20元每公里加收50%车费即3.3元/公里。

3.2 基本设计思想出租车计费器根据设计要求可初步分为3方面——显示、记里程数、记费。

之后再根据三方面分别设计模块。

1.显示模块。

一般计数器显示数字为1-F即16进制,而16进制不方便观看,所以在设计这一模块时我们将16进制改为10进制输出进而设计了译码模块。

2、里程模块。

设计要求对里程计数主要分为两个方面,计数以及公里数比较。

即3公里之内收7元,3公里之后20元(通过计算为9公里)以内每公里2.2元,9公里以外为每公里3.3元。

出租车计费器报告

课程设计说明书课程:EDA技术基础题目:出租车计费器学生姓名:田伟正学号: 201256110131班级: (1)专业:电子信息科学与技术指导教师:贺慧勇2014年12月20日长沙理工大学课程设计任务书物理与电子科学学院电信专业 1201 班姓名田伟正课程名称 EDA技术基础题目出租车计费器同组设计者:糟怀明贺智勇赵亚杰洪敏杰设计一个出租车自动计费器,计费包括起步价、行车里程计费、等待时间计费三部分。

起步价为 6.0 元,2 公里之内按起步价计费,超过 2 公里,每公里增加 1.8 元,等待时间单价为每 1 分钟0.3 元。

用数码管显示总金额、总里程、等待时间(可键控交替显示)。

设汽车每前进十米里程传感器输出一个脉冲。

设计一个测试用模拟车速的脉冲源,模拟的车速可通过按键调整,范围为5km/h ~200km/h 发挥部分:(1)时钟,白天夜间计费模式(2)按长沙市出租车现行收费标准设计计费器工作计划(1)时间本课程设计安排2周时间: 2014.12.22 ~2015.1.2(2)进度安排第1周周一周二:查阅资料,拿出整体设计方案,划分模块;第1周周三至周五:各模块的设计、调试、验证。

第2周周三前完成项目整体调试和测试。

第2周周三周四文档写作整理第2周周五:答辩讨论指导教师:贺慧勇唐立军文勇军周晓萍唐俊龙2014年12月22 日教研室意见:同意。

教研室主任文勇军2014年12月26 日长沙理工大学课程设计成绩评定表学生姓名:田伟正学号: 201256110131 专业班级:电信1201 课程设计题目:出租车计费器评分项目要求分值得分学习态度学习态度认真,遵守纪律。

10设计方案调研充分,方案设计合理。

20工作量完成了任务书规定的工作量。

实际设计、调试效果好。

40设计报告完全符合撰写规范要求,结构严谨,逻辑性强,层次清晰,表述准确,文字流畅。

20答辩准备充分,概念清楚,能准确流利地回答各种问题。

10总分备注:成绩:指导教师:年月日目录1.设计任务 (1)2.设计方案 (1)3.各功能模块的原理及思路分析 (2)3.1分频模块 (2)3.2计量模块 (2)3.3计费模块 (3)3.4控制模块 (3)3.5显示模块 (4)3.6模拟出租车脉冲信号发生器 (4)3.7头文件 (5)4.个人模块(计量模块) (5)5.个人模块方案验证 (7)6.心得体会 (8)参考文献 (9)1.设计任务设计一个出租车自动计费器,计费包括起步价、行车里程计费、等待时间计费三部分。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

目录摘要----------------------------------------------------------------------1一、方案比较及论证-------------------------------------------------31.1方案比较----------------------------------------------------31.2方案确定----------------------------------------------------3二、基本控制原理----------------------------------------------------32.1出租车的档位控制----------------------------------------32.2里程数的计算----------------------------------------------42.3电机停转、里程数静止不变的控制-------------------4三、系统设计----------------------------------------------------------53.1.1电源电路--------------------------------------------------53.1.2电平转换电路--------------------------------------------53.1.3电机驱动电路--------------------------------------------63.1.4显示电路--------------------------------------------------63.1.5系统控制电路--------------------------------------------73.2.1系统程序流程图-----------------------------------------8四、系统功能测试----------------------------------------------------94.1.1换档和暂停测试-----------------------------------------94.1.2里程数测试-----------------------------------------------94.2设计与测试使用的仪器----------------------------------94.3误差分析及措施-------------------------------------------9五、心得体会----------------------------------------------------------10六、谢词--------------------------------------------------10七、参考文献--------------------------------------------------11基于PIC单片机的出租车计费摘要随着电子技术的发展,出租车计费器技术也在不断进步和提高,了解在出租车上应用的计费系统,对我们日常生活也有帮助。

而使用单片机实现该系统,是深化单片机应用的良好途径。

本系统以AT89C52单片机为核心设计了一种用于计算出租车费用的出租车计费器。

其中还可根据出租车的档位,以及运行时间,实时将里程数和时间用1602液晶显示。

利用单片机的数学运算和控制功能,结合部分模拟和数字电路,实现控制中的功能手动切换。

各项实测表明,设计原理正确合理,功能符合设计要求。

本系统提高同学们用C语言编写程序的能力、单片机应用系统设计综合能力的训练、培养同学们分析问题和解决问题的能力、对同学们的招聘以及参加工作均有帮助。

该系统稍加改进,可以成为一套真正的实用的计费系统。

关键词:单片机、直流电机、PWM调速。

一、方案比较及论证1、方案比较方案一:采用数字电路控制。

采用传感器件,输出脉冲信号过放大整形作为移位寄存器的脉冲,实现计价,但是考虑到这种电路过于简单,性能不稳定,而且不能调节单价,也不能根据天气调节计费标准,电路不够实用。

方案二:采用单片机控制。

利用单片机丰富的 I/O端口,及其控制的灵活性,实现基本的里程计价功能和价格调节、时钟显示功能。

2、方案确定通过比较通过比较以上两种方案,单片机方案有较大的活动空间,不但能实现所要求的功能而且能在很大的程度上扩展功能,而且还可以方便的对系统进行升级,所以我们采用方案二。

二、基本控制原理1、出租车的档位控制出租车的档位控制我们设计用PWM(脉冲宽度调制)来控制。

PWM 是通过控制固定电压的直流电源开关频率,改变负载两端的电压,从而达到控制要求的一种电压调整方法。

在PWM驱动控制的调整系统中,按一个固定的频率来接通和断开电源,并且根据需要改变一个周期内“接通”和“断开”时间的长短。

通过改变直流电机电枢上电压的“占空比”来达到改变平均电压大小的目的,从而来控制电动机的转速。

从而可以实现出租车的换档。

设电机始终接通电源时,电机转速最大为Vmax,设占空比为D= t1 / T,则电机的平均速度为Va = Vmax * D,其中Va指的是电机的平均速度;Vmax 是指电机在全通电时的最大速度;D = t1 / T是指占空比。

由上面的公式可见,当我们改变占空比 D = t1 / T时,就可以得到不同的电机平均速度Vd,从而达到调速换档的目的。

其原理如图1所示。

图12、里程数的计算根据PWM的调速原理Va = Vmax * D,即直流电机转动T秒钟的时间内里程数为S=Va*T = Vmax * D*T,则可以用实验的方法测出直流电机在一秒钟内的转速,再利用调速原理即可算出不同档位的速度,再根据直流电机转动的时间便可算出里程数。

3、电机停转、里程数静止不变的控制我们这次的设计是采用电流电机的经典控制电路 H桥电路控制的。

H桥控制电路可以实现直流电机的正转、反转、停止、加速、减速等各种操作。

如图2 所示即为H桥电路示意图。

图2图中所示为一个典型的直流电机控制电路。

电路得名于“H桥驱动电路”是因为它的形状酷似字母H。

4个三极管组成H的4条垂直腿,而电机就是H中的横杠。

H桥式电机驱动电路包括4个三极管和一个电机。

要使电机运转,必须导通对角线上的一对三极管。

根据不同三极管对的导通情况,电流可能会从左至右或从右至左流过电机,从而控制电机的转向。

要使电机停转,则必使对角线上的两对三极管处于不导通状态,即为截止状态。

由于此时电机停转,里程数和时间也会静止不变。

三、系统设计1、硬件部分设计(1)电源电路电路原理图如下图所示:图3本设计系统采用的时USB供电方式,用一个LED灯做电源指示灯,同时用一个10uF的电解电容来稳定供给系统的电源。

(2)电平转换电路电路原理图如下图所示:图4电平转换电路由MAX232芯片及外围电容构成,用于把计算机的RS-232C电平转换为TTL电平,并利用此电路给单片机下载程序以及与单片机进行串口通信。

(3)电机驱动电路电路原理图如下所示:图5基于三极管的使用机理和特性,在驱动电机中采用H桥功率驱动电路,H桥功率驱动电路可应用于步进电机、交流电机及直流电机等的驱动。

永磁步进电机或混合式步进电机的励磁绕组都必须用双极性电源供电,也就是说绕组有时需正向电流,有时需反向电流,这样绕组电源需用H桥驱动。

直流电机控制使用H桥驱动电路,当DC1为低电平,通过对DC2输出占空比不同的矩形波使三极管Q3、Q6同时导通Q4截止,从而实现电机正向转动以及转速的控制;同理,当DC2为高电平,通过对DC1输出占空比不同的矩形波使三极管Q4、Q5同时导通,Q3截止,从而实现电机反向转动以及转速的控制。

(4)显示电路电路原理图如下所示:图6显示电路由1602液晶构成,用于输出选择及控制信息。

(5)系统控制电路电路原理图如下所示:图7此部分是系统的主要控制部分,要完成直流电机的档位转换、停转、里程数的计算,及显示数值功能。

2、软件部分设计(1)系统程序流程图开始S1是否按下?显示档位值S2是否按下?S3是否按下? S4是否按下? S1是否按下?显示里程数和时间YESYES YESYES NONOYES四、系统功能测试1、功能测试(1)换档和暂停测试经过测试,直流电机能在四个档位之间非常自如地转换,当暂停键按下时电机能立即停止转动,并且能实时准确地在1602液晶上显示档位值。

(2)里程数测试经过测试,本系统能够根据档位值以及运行时间实时显示出里程数。

2、设计与测试使用的仪器数字万用表、台式电脑、锐志电子RZ-51V2.0单片机开发板3、误差分析及措施本系统使用的是万用版焊接的电路,所以电路系统本身存在着较大的误差因素,即系统的性能不是很好,这也加大了调试的难度。

档位的转换使用的是PWM方法来转换的,四个档位的划分不是很标准。

里程数的计算是通过实验的方法,测出电机在一个标准时间内所转的圈数,再通过数学计算转化为不同档位所转的圈数,由于实验总是存在误差的,所以里程数的显示值不太准确。

提高里程数的准确度可以使用霍尔传感器,电机每转一圈,就产生一个脉冲,通过测量脉冲的个数来确定电机所转的圈数。

五、心得体会通过本次单片机课程设计,我深刻了解了在出租车上应用的计费系统。

系统的掌握了我们所学的单片机知识,并且得以应用。

在设计过程中,我认真学习了相关的知识,极大地拓宽了我的知识面,我感觉收获不小。

从开始熟悉这些知识到对整体设计的了解,再从概要设计、详细设计到开始使用软件,以及最后的调试,整个过程感觉很充实。

虽然遇到了不少困难,但当我和我们设计小组的同学通过查资料,向老师请教以及与同学互讨论,而设计出解决方案并成功实现时,那种成就感和满足感足以忘却所有的辛苦。

但是由于我们自己相关知识的不足以及一些其他原因,所以该设计还有许多不尽如人意的地方,可能在实际应用中有些功能不到位。

致谢本次单片机课程设计,我们出租车计费器设计小组能按时按量的完成,这与老师的耐心指导以及相关同学的热心帮助是分不开的,在此,我衷心的感谢你们,谢谢你们的无私帮助。

同时,我还要感谢我们此次设计小组的其他成员们,正是由于你们的不懈支持和积极合作,我们才能克服一个又一个的困难和疑惑,直至本课程设计的顺利完成。

感谢你们团结合作的精神。

参考文献【1】李朝青.单片机原理及接口技术(第3版).北京:北京航空航天大学出版社,2010.01【2】谭浩强.C程序设计(第三版).北京:清华大学出版社,2005.07附:出租车计费器的C语言程序和原理图#include<reg52.h>#define uchar unsigned char#define uint unsigned int#define Data P0#define TH0_Value 0xff#define TL0_Value 0x06#define TMOD_Value 0x01#define PI 3.14159#define R 0.01#define Change 20#define S1 0x70#define S2 0xb0#define S3 0xd0#define S4 0xe0sbit RS =P1^3;sbit RW =P1^4;sbit E =P1^5;sbit DC1=P1^6;sbit DC2=P1^7;bit flag=0;uchar count=0;uchar click=0;uchar ZKB1=0,ZKB2=0;uchar time;uint T=0;float S,a[Change];uchar code start []="welcome";uchar code explain[]="S1:way S2:sure S3:stop S4:reset"; void display_M(void);void delayus(uint z){uint j;for(j=0;j<z;j++);}void Timer0_Init(void){TMOD=TMOD_Value;TH0 =TH0_Value;TL0 =TL0_Value;TR0 =0;ET0 =1;EA =1;}void writedir(uchar dir)//写指令{RS=0;RW=0;Data=dir;E=0;E=1;E=0;}void writedat(uchar dat)//写数据{RS=1;RW=0;Data=dat;E=0;E=1;E=0;}void readdir(void)//读与检测状态{uchar dir;Data=0xff;do{RS=0;RW=1;E=1;dir=Data;E=0;}while(dir&0x80);}void ints(void)//初始化{delayus (1666);writedir(0x38);delayus (555);writedir(0x38);delayus (555);writedir(0x38);readdir();writedir(0x38);readdir();writedir(0x08);readdir();writedir(0x01);readdir();writedir(0x06);readdir();writedir(0x0c);}uchar Keyscan(void){uchar Key;if((P2&0xf0)==0xf0){return(0);}delayus(1110);if((P2&0xf0)==0xf0){return(0);}Key=P2&0xf0;while((P2&0xf0)!=0xf0){display_M();}return(Key);}void KeySet(void){static uchar i=0;uchar j;switch(Keyscan()){case S1:if(!i){ints();}i++;if(i>4){i=1;}readdir();writedir(0x80);readdir();writedat(i+0x30);break;case S2:if(i){flag=1;T=0;count++;if(count>Change){count=1;}TR0=1;}switch(i){case 1:ZKB1=7;ZKB2=14;break;case 2:ZKB1=6;ZKB2=14;break;case 3:ZKB1=4;ZKB2=16;break;case 4:ZKB1=1;ZKB2=19;break;default:break;}break;case S3:if(i){DC1=1;DC2=1;TR0=0;}break;case S4:if(i){time=0;for(j=0;j<count;j++){a[j]=0;}S=0;click=0;TH0=TH0_Value;TL0=TL0_Value;if(flag){readdir();writedir(0x87);readdir();writedat(0+0x30);readdir();writedat('s');readdir();writedat(' ');readdir();writedat(' ');readdir();writedir(0xc2);readdir();writedat(0+0x30);readdir();writedat('M');for(j=0;j<4;j++){readdir();writedat(' ');}}delayus(1666);T=0;}break;default:break;}}void display_M(void){uchar j;uint int_S;// float S;// float a[Change];if(count){S=(ZKB2-ZKB1-1)*0.83*PI*R*T;a[count-1]=S;S=0;for(j=0;j<count;j++){S=a[j]+S;}}S=S*100;if(flag){int_S=(uint)(S);readdir();writedir(0x82);readdir();writedat('t');readdir();writedat('i');readdir();writedat('m');readdir();writedat('e');readdir();writedat('=');if(time/100){readdir();writedat((time/100)+0x30);}if((time/100)||(time%100/10)) {readdir();writedat((time%100/10)+0x30); }readdir();writedat((time%10)+0x30);readdir();writedat('s');readdir();writedir(0xc0);readdir();writedat('S');readdir();writedat('=');if(int_S/1000){readdir();writedat((int_S/1000)+0x30); }readdir();writedat((int_S%1000/100)+0x30); readdir();writedat('.');readdir();writedat((int_S%100/10)+0x30); readdir();writedat((int_S%10)+0x30); readdir();writedat('M');}}void Display_E(void){uchar i;uchar *P,*T;P=&start[0];T=&explain[0];ints();readdir();writedir(0x84);for(i=0;i<7;i++){readdir();writedat(*P);P=P+1;}delayus(60000);ints();readdir();writedir(0x80);for(i=0;i<32;i++){T=T+1;if(i<16){readdir();writedat(*(T-1));}if(i==16){readdir();writedir(0xc0);}if(i>=16){readdir();writedat(*(T-1));}}}void main(void){DC1=1;DC2=1;Timer0_Init();Display_E();while(1){display_M();KeySet();}}void timer0(void) interrupt 1 using 2{static uint click_S=0;TH0=TH0_Value;TL0=TL0_Value;click++;click_S++;if(click>=20){click=0;}if(click_S>=4000){click_S=0;T++;time++;}if(click<=ZKB1)DC1=0;elseDC1=1;if(click<=ZKB2)DC2=0;elseDC2=1;}21。

相关文档
最新文档