河南科技大学出租车计费系统设计课程设计报告Word格式文档下载.docx
- 文档编号:20901372
- 上传时间:2023-01-26
- 格式:DOCX
- 页数:17
- 大小:688.18KB
河南科技大学出租车计费系统设计课程设计报告Word格式文档下载.docx
《河南科技大学出租车计费系统设计课程设计报告Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《河南科技大学出租车计费系统设计课程设计报告Word格式文档下载.docx(17页珍藏版)》请在冰豆网上搜索。
用四位数字显示,显示方式为“XXX.X”,单位为元。
计价范围为999.9元,计价分辨率为0.1元。
三、时间进度安排
1周:
(1)完成设计准备,确定实施方案;
(2)完成电路文件的输入和编译;
(3)完成功能仿真。
2周:
(
(1)完成文件至器件的下载,并进行硬件验证;
(2)撰写设计说明书。
四、主要参考文献
(1)谭会生、瞿遂春,《EDA技术综合应用实例与分析》,西安电子科技大学出版社,2004
(2)曹昕燕、周凤臣等,《EDA技术实验与课程设计》,清华大学出版社,2006
指导教师签字:
2010年9月5日
一、设计任务与要求………………………………………………………3
二、设计背景………………………………………………………………3
三、系统设计方案…………………………………………………………4
3.1设计原理……………………………………………..…….………4
3.2系统总体框图………………………………………………..….…5
四、模块设计及仿真……………………………………………….…..…6
4.1分频模块…………………………………………..……….…..…6
4.2控制模块…………………………………………..………………7
4.3计量模块………………………………………….………………7
4.4计费模块…………………………………………..………………8
4.5顶层例化模块…………………………………………………….9
五、硬件验证……………………………………………….………..……9
5.1实验过程………………………………………………….……...9
5.1验证结果…………………………………………………….…...11
六、总结与心得……………………………………………………………12
七、参考文献……………………………………………………..….……12
附录:
VHDL源程序………………………………………………..……13
一、设计任务与要求
(1)、能够实现计费功能
费用的计算是按行驶里程收费,设出租车的起价为5.00元,当里程小于3km时,按起价计算收费;
总费用=起价费+(里程-3km)×
(2)、能够实现显示功能
用四位数字显示,显示方式为“XXXX”,单价为km。
计程范围为0~99km,计程分辨率为1km。
计时范围为0~59min,计时分辨率为1min。
二、设计背景
近年来,我国出租汽车行业迅猛发展,出租汽车已成为我国城市公共交通的重要组成部分和现代化城市必备的基础设施,成为人们工作、生活中不可缺少的交通工具。
它对繁荣经济、促进发展、方便群众、改善交通起到了积极作用。
出租汽车对我国人民物质和文化生活影响之大、作用之广是前所未有的。
出租汽车行业的服务水平和程度已经成为现代化的重要标志。
出租汽车服务行业和出租汽车计价器紧密相关,因为出租汽车必须安装出租汽车计价器才能投入营运。
出租汽车计价器是一种能根据乘客乘坐汽车行驶距离和等候时间的多少进行计价,并直接显示车费值的计量器具。
计价器是出租汽车的经营者和乘坐出租汽车的消费者之间用于公平贸易结算的工具,因而计价器量值准确与否,直接关系到经营者和消费者的经济利益。
随着出租车行业的发展,对出租车计费器的要求也越来越高,用户不仅要求计费器性能稳定,计费准确,有防作弊功能;
同时还要求其具有车票资料打印、IC卡付费、语音报话、和电脑串行通信等功能,而这些与电子技术的发展是分不开的。
本次课程设计即是应用EDA技术来实现出租车计费系统设计和验证。
EDA技术(即ElectronicDesignAutomation技术)就是依赖强大的计算机,在EDA工具软件平台上,对以硬件描述语言HDL为系统逻辑描述手段完成的设计文件,自动地完成逻辑编译、化简、分割、综合、布局布线以及逻辑优化和仿真测试,直至实现既定的电子线路系统功能。
它在硬件实现方面融合了大规模集成电路制造技术、IC版图设计、ASIC测试和封装、FPGA)/CPLD编程下载和自动测试等技术。
在现代电子学方面则容纳了更多的内容,如电子线路设计理论、数字信号处理技术、数字系统建模和优化技术及长线技术理论等。
Altera公司成产的FPGA系列芯片,以性能稳定,功能全面,价格优惠,服务完善而得到广泛应用。
该公司的QUARTUSII软件设计环境的灵活性和高效性为出租车计费器的设计带来了无可比拟的好处。
其丰富的界面,让设计人员可以轻松的掌握和使用。
所以,在设计仿真过程中,我们采用Altera公司QUARTUS-II软件,进行编程,综合,仿真,验证,下载等各项实验步骤。
在硬件验证过程中,采用以Altera公司Cyclone系列EP1C6Q240C8型号FPGA器件为核心的GW48教学实验系统来进行硬件验证。
三、系统设计方案
3.1设计原理
根据设计要求,可得系统的输入信号有:
CLK,计价开始信号START,等待信号STOP,里程脉冲信号FIN。
系统得输出信号有:
总费用数CHA0~CHA3,行驶距离KM0~KM1,等待时间MIN0~MIN1等。
所以系统的元件框图如下:
系统有两个脉冲输入信号clk_195、fin,两个控制输入开关start、stop。
整个系统的控制过程为:
start作为计费开始开关,当start为高电平时,系统开始根据输入的情况计费。
当有乘客上车并开始行驶时,fin脉冲到来,进行行驶计费,此时的stop需要置为0;
如需停车等待,就把stop变为高电平,并去除fin输入脉冲,进行等待计费;
当乘客下车且不等待时,直接将start置为0,系统停止工作。
系统由分频模块、计量模块、计费模块和控制模块四部分组成。
计量模块是整个系统实现里程计数和时间计数的重要部分;
控制模块是实现不同计费方式的选择部分;
设计通过分频模块产生不同频率的脉冲信号来实现系统的计费。
计量模块采用1HZ的驱动信号,计费模块采用13HZ、15HZ的驱动信号;
计量模块每计数一次,计费模块就实现13次或者15次计数,即为实现计时时的1.5元/min、计程时的1.3元/km的收费。
3.2系统的总体框图
由Quartus仿真得系统总体顶层框图为:
四、模块设计及仿真
4.1分频模块
分频模块是对系统时钟频率进行分频,分别得到15HZ,13HZ,1HZ三种频率;
本设计中通过这三种不同频率的脉冲信号实现在计程车行驶、等待两种情况下的不同计费。
而系统时钟频率CLK=15*13Hz=195Hz。
在接入实际硬件电路时,根据系统时钟频率选用的不同,会等比例地得到不同分频频率。
其原理框图如下:
分频模块的仿真图为:
由图中的周期时间可以看出,三种输出的信号脉冲对应的频率比实现了1:
13:
15。
4.2控制模块
本模块主要是通过两个不同的输入使能信号,对两个输入脉冲进行选择输出;
使能信号是计量模块中的输出,两个输入脉冲是分频模块输出的13HZ、15HZ的脉冲;
本模块实现了双脉冲的二选一。
其原理框图为:
控制模块的仿真波形图为:
由图中可以看出,当ent0为高电平时,输出为这一时段的clk_in1;
当ent1为高电平时,输出为这一时段的clk_in2;
4.3计量模块
本模块实现对于出租车在行驶和等待过程中的使能和计时功能。
当行驶里程大于3KM时,本模块中en0信号变为1;
当等待时间大于2min时,本模块中en1信号变为1;
clk1每来一个上升沿,计量模块实现一次计数,里程数或者等待时间加1。
计量模块的仿真波形图为:
由图可以看出,在fin脉冲到来时,k1、k0进行计数,en0在每进行一次加法计数时就输出一次高电平;
当stop为高电平时,即为进入等待计时,m1、m0进行计数,en1在每进行一次计时计数的时候输出一个高电平。
4.4计费模块
本模块根据输入的clk2信号变化,调节费用的计数,c0、c1、c2、c3分别表示费用的显示。
由图中可以看出,随着clk2的高电平的到来,c3、c2、c1、c0逐级进行加法计数,当c0计数到九时,产生进位,c1加一;
当c1计数到九时,产生进位,c2加一;
当c2计数到九时,产生进位,c3加一;
起步价为5元。
4.5顶层例化模块
本模块用例化语句实现出租车的计费器系统设计,将各个模块组合在一起。
系统模块的仿真波形图为:
由图中可以看出,当fin脉冲信号到来时,实现了行驶计费,当行驶里程超过三公里,则再按每公里1.3元计费;
当stop为高电平,即进入等待计时收费;
当等待时间超过2min时,每过一分钟加1.5元,即为实现每等一分钟收费1.5元。
五、硬件验证
5.1实验过程
EDA课程设计中对于各个模块的设计是基础,首先要分析清楚各个模块的功能,然后分别进行编程设计、验证,然后使用VHDL语言中的元件例化语句,将各个模块组合到一起,实现总的设计功能。
在出租车计费系统的4个模块中,重点在于计量模块,计费模块。
计量模块主要有汽车的启动、停止、暂停等按键;
各模块完成后,在将它们组合成完整的出租车系统。
本次设计的首要是如何实现等待计时和行驶里程的不同计费。
对于里程和等待时间的计数都使用的是计数器的原理,通过fin和stop信号的不同值实现在不同情况下的计数;
通过分频产生的13HZ、15HZ、1HZ对应的周期频率关系,由1HZ的信号控制计量模块,由控制器选择产生的信号作为计费模块的输入信号,所以计费模块的输入信号是13HZ、15HZ的信号之一,计量模块每完成一次计数,计费模块完成13次或者15次计数,即为实现1.3元或1.5元的计费。
通过硬件下载,该电路可以完成硬件实现,芯片管脚定义可以直接用编辑*.pin文件。
完成管脚定义后选择器件,编译后生成*.sof、*.pof文件。
选择sof文件进行下载。
通过对每一模块的仿真和下载,可以实现各个模块的逻辑功能,验证了各个模块的正确性。
本设计采用的是GW48实验教学系统,采用电路模式5,clk_195采用clock0信号端,连接pin28,fin连接clock2信号端,连接pin153;
stop连接键1,端口pio0,引脚号为pin233;
start连接键2,端口pio1,引脚号为pin234;
CHA0~CHA3、km1~km0、min1~min0分别连接八个七段显示译码器,端口号依次为pin16~pin47。
管脚连接图如下:
5.1验证结果
出租车计费器系统的设计已全部完成,能按预期的效果进行模拟汽车启动、停止、暂停等功能,并设计动态扫描电路显示车费数目,由动态扫描电路来完成。
。
车起步开始计费,首先显示起步价,起步费为5.00元,车在行驶3km以内,只收起步价。
车行驶超过3km后,每公里1.3元,车费一次累加。
当遇到红灯或者客户需要停车等待时,则按时间计费,计费单价为:
车暂时停止不计费,车费保持不变。
若停止则车费清零,等待下一次计费的开始。
结果验证:
出租车的起步价是5元,当行驶了89KM的时候,收费为5+(89—3)*1.3=116.8元;
等待三分钟时,收费为118.3元。
硬件仿真图如下:
六、总结与心得
不经意间,为期两周的课程设计已经接近尾声。
这次课程设计是设计一个出租车计费器系统,实现行驶计费功能、等待计费功能、预置功能等。
在设计过程中同时用到了多进程多模块例化等设计方法。
在设计中遇到了很多问题,比如在硬件实现过程中,当进行等待计时计费时,发现计时很慢,初步分析是因为计时的驱动频率不大,需要选择256HZ以上的频率;
更改以后,计时正常,但同频率下行驶计费速度较快,不便观察,因此要注意观察的点和频率的选择。
另外在设计过程中我发现控制系统的纠错功能还需要进行改进,而迫于时间和精力的限制我只查阅了相关的资料,了解设计原理,而没有设计出来。
但总体来说,这次实习使我受益匪浅。
在摸索该如何设计使之实现所需功能的过程中,特别有趣,培养了我的设计思维,增加了实际操作能力。
在让我体会到了设计的艰辛的同时,更让我体会到成功的喜悦和快乐。
刚开始拿到课题时候感觉相当兴奋,觉得大学四年的理论课程终于与生活中的实际密切结合了!
首先,我查阅了相关书籍。
查阅参考书的独立思考的能力以及培养非常重要,我们在设计程序时,遇到很多不理解的东西,有的我们通过查阅参考书弄明白,有的通过网络查到,但由于时间和资料有限我们更多的还是独立思考。
认识到QuartusⅡ包括模块化的编译器。
可以通过选择StartCompilation来运行所有的编译器模块,也可以通过选择Start单独运行各个模块。
还可以通过选择CompilerTool,在CompilerTool窗口中运行该模块来启动编译器模块。
然后,在接到任务后,我便开始研究程序,希望通过自己的努力,能对这个课题和程序有自己的认识。
但是前期的学习得不够扎实,让我在阅读程序时频频的遇到问题。
经过老师的讲解,能对程序的各模块进行修改。
然而,我还是遇到了很多棘手的问题,比如说,程序不理解,软件运用不熟练,再比如说,应用模块不熟悉,等等。
真正领略到艰苦奋斗的真正含义,我才意识到学好基础的重要性。
我想说,设计确实有些辛苦,但苦中也有乐。
而且,通过这次课程设计对EDA技术有了更进一步的熟悉,VHDL语言和C语言等其他语言还是有很大的区别。
VHDL是EDA技术的重要组成部分,其具有与具体硬件电路无关和与设计平台无关的特性,并且具有良好的电路行为描述和系统描述的能力,并在语言易读性和层次化、结构化设计方面,表现了强大的生命力和应用潜力。
其主要的也是最大的优点就在于设计者可以专心致力于其功能的实现,而不需要对不影响功能的与工艺有关的因素花费过多的时间和精力。
其实,在实际操作中发现设计和课本上的知识有很大联系,但又高于课本,一个简单的原理要把它应用以及和其他功能综合起来就有些困难。
通过设计也巩固了我们的书本知识以及通过借阅书籍和上网查找资料,也丰富了自己对EDA的了解。
但是,本次设计也存在一些不足,暴露了自己对EDA的掌握还有所欠缺。
通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。
在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。
课程设计是我们专业课程知识综合应用的实践训练,着是我们迈向社会,从事职业工作前一个必不少的过程.我今天认真的进行课程设计,学会脚踏实地迈开这一步,就是为明天能稳健地在社会大潮中奔跑打下坚实的基础。
通过这次设计,本人在多方面都有所提高。
同时各科相关的课程都有了全面的复习,独立思考的能力也有了提高。
在这次设计过程中,体现出自己单独设计模具的能力以及综合运用知识的能力,体会了学以致用、突出自己劳动成果的喜悦心情,从中发现自己平时学习的不足和薄弱环节,从而加以弥补。
最后感谢我们的王老师和张老师。
两位老师严谨细致、一丝不苟的作风一直是我工作、学习中的榜样;
老师循循善诱的教导和不拘一格的思路给予我无尽的启迪;
这次设计的每个细节和每个数据,都离不开老师的细心指导。
而您们开朗的个性和宽容的态度,帮助我能够很顺利的完成了这次课程设计。
在此我要对两位老师在这次课设中的给予的悉心指导表示深深的谢意!
同时感谢帮助过我的同学们,谢谢你们对我的帮助和支持,让我感受到同学的友谊
七、参考文献
[1]潘松、黄继业.《EDA技术实用教程》[M].北京:
科学出版社,2005
[2]谭会生、瞿遂春.《EDA技术综合应用实例与分析》[M].西安:
西安电子科技大学出版社,2004
[3]亿特科技.《CPLD/FPGA应用系统设计与产品开发》[M].北京:
人民邮电出版社,2005
[4]曹昕燕、周凤臣.《EDA技术实验与课程设计》.清华大学出版社,2006
[5]王勇.《电子设计自动化实验指导书》.河南南科技大学电工电子实验教学中心,2009
VHDL源程序
分频模块VHDL源程序:
libraryIEEE;
useIEEE.STD_LOGIC_1164.ALL;
useIEEE.STD_LOGIC_ARITH.ALL;
useIEEE.STD_LOGIC_UNSIGNED.ALL;
entityfenpin2is
port(clk_195:
instd_logic;
--195HZ的时钟
clk_13:
outstd_logic;
--分频为13HZ的时钟
clk_15:
--分频为15HZ的时钟
clk_1:
outstd_logic);
--分频为1HZ的时钟
endfenpin2;
architecturert1offenpin2is
signalq_13:
integerrange0to12;
signalq_15:
integerrange0to14;
signalq_1:
integerrange0to194;
begin
process(clk_195)
if(clk_195'
eventandclk_195='
1'
)then
ifq_13=12thenq_13<
=0;
clk_13<
='
;
--此处产生13HZ频率的信号
elseq_13<
=q_13+1;
0'
endif;
ifq_15=14thenq_15<
clk_15<
--此处产生15HZ频率的信号
elseq_15<
=q_15+1;
ifq_1=194thenq_1<
clk_1<
--此处产生1HZ频率的信号
elseq_1<
=q_1+1;
endprocess;
endrt1;
计费模块VHDL源程序:
entityjifeiis
port(clk2:
instd_logic;
start:
c0,c1,c2,c3:
bufferstd_logic_vector(3downto0));
endjifei;
architecturert3ofjifeiis
begin
process(clk2,start)
ifstart='
thenc3<
="
0000"
c2<
c1<
0101"
c0<
elsifclk2'
eventandclk2='
then
ifc0="
1001"
thenc0<
ifc1="
thenc1<
ifc2="
thenc2<
ifc3="
elsec3<
=c3+1;
elsec2<
=c2+1;
elsec1<
=c1+1;
elsec0<
=c0+1;
endprocess;
endrt3;
计量模块VHDL源程序:
libraryieee;
useieee.std_logic_1164.all;
useieee.std_logic_arith.all;
useieee.std_logic_unsigned.all;
entityjiliangis
port(s:
fin:
stop:
clk1:
en1,en0:
bufferstd_logic;
k1,k0:
bufferstd_logic_vector(3downto0);
m1,m0:
endjiliang;
architecturert2ofjiliangis
signalw:
integerrange0to59;
--秒计数器
process(clk1)
ifclk1'
eventandclk1='
ifs='
w<
en1<
en0<
m1<
m0<
k1<
k0<
elsifstop='
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 河南 科技大学 出租车 计费 系统 设计 课程设计 报告