基于FPGA的出租车计价系统设计

发布者:angelbaby最新更新时间:2012-06-28 来源: 现代电子技术关键字:FPGA  出租车计价系统 手机看文章 扫描二维码
随时随地手机看文章
   

摘要:设计出租车计价系统,运用自顶向下的设计思想,以芯片CycloneⅡEP2C8T144C8为设计核心,采用QuartusⅡ仿真软件,对设计电路的各模块及整个系统进行了EDA仿真验证。结果表明,该计价系统具有计时、计费、计程和动态显示的功能,符合设计要求,修改VHDL语言源程序,可完成更多的出租车计价系统的扩展功能。
关键词:出租车计价;自顶向下;VHDL;FPGA

0 引言
    随着电子技术的发展,出租车计价器的设计也从传统的全部由机械元器件组成的机械式设计到半电子式(即用电子线路代替部分机械器件的出租车计价器),再从集成电路式到目前基于FGPA芯片为核心的系统的设计共经历了四个阶段,利用FPGA芯片,用较少的外部硬件和适当的软件相互配合,可以通过软件编程来完成更多的附加功能,设计比较灵活,并且还具有功耗小,体积小、低成本、安全可靠、使用方便等优点。因此,使用FPGA来设计出租车计价系统已受到人们的关注,也能更好地发挥其优点。
    本文以FPGA为设计载体,通过VHDL语言编程,采用QuartusⅡ仿真软件,设计了一种能动态显示出租车计时、计费、计程的系统,具有一定的实际应用价值。

1 出租车计价系统的设计要求
1.1 实现计费功能
    车起步开始计费,首先显示起步价(本次设计为8.0元),行程在3 km以内,按起步价收费;当行驶超过3 km,1.6元/km,车暂时停车(如遇红绿灯或中途暂时停车),当等待时间超过3 min,按1元/min收费。
1.2 实现显示功能
    能动态显示出租车行驶的里程,范围为00~99 km(考虑到出租车就在市区或近郊附近活动),同时显示等待时间,范围为00~59 min,显示总计价值,范围为00~999.9元,计价分辨率为0.1元。

2 出租车计价系统的设计体系
    图1为整个系统的顶层框图,根据层次化设计理论,将出租车自动计价系统自顶向下可分为分频模块、控制模块、计量模块、译码和动态扫描显示模块。


    (1)分频模块。通过分频产生不同频率的脉冲信号用来实现系统的计费,本次设计中通过对240 Hz的输入脉冲进行15次,24次和240次分频,得到16 Hz,10 Hz和1 Hz的三种频率,分别用于1.6元,1元和0.1元的计费。
    (2)计量控制模块。计量控制模块是出租车自动计费器系统的主体部分,该模块主要完成出租车的计时、计价、计程功能。计时器的量程为59 min,满量程自动归零。计程器的量程为99 km,满量程自动归零。行程在3 km内,且等待累计时间在3 min内,起步价费为8元;3 km外以1.6元/km计费,等待累计时间超过3 min按1元/min计费。
    (3)译码显示模块。该模块经过8选1数据选择器将计费数据(4位BCD码)、计时数据(2位BCD码)、计程数据(2位BCD码)动态显示输出。其中计费数据最大显示为999.9元;计时数据最大显示为59 min;计程数据最大显示为99 km。[page]

 

    3 出租车计价系统的实现
    系统的顶层原理图如图2所示,出租车计价器系统由主体FPGA电路taxi模块和动态扫描显示部分(8选1选择器mux8_1模块、模8计数器mo8模块、七段数码显示译码器di_LED模块、生成动态扫描显示片选信号的3-8译码器模块74138)组成。


3.1 系统各功能模块
3.1.1 taxi模块
    Taxi模块是系统中十分重要的模块,模块设计中,系统的输入信号为clk_240(240 Hz)、计价开始信号start、等待信号stop、里程脉冲信号fin。系统的输出信号有总费用数cha3(百),cha2(拾),cha1(元),cha0(角),行驶距离信号为km1,km0,等待时间信号为m1,m0。
    Taxi模块的控制过程为:start作为计费开始开关,当start为高电平时,系统开始跟据输入情况计数,有乘客上车并开始行驶时,fin脉冲到来,进行行驶里程计数,这时的stop应为0,中途若停车等待,就需把stop置为1,同时fin为0,进行等待计费,当乘客下车时,直接将start置为0,系统停止工作。taxi模块又可分为分频(fenpin)、计量(jiliang)、kongzhi(控制)和计费(jifei)四个子模块,taxi模块的内部结构如图3所示。

[page]

 

    Fenpin模块是将输入端clk_240(240 Hz)的时钟信号进行分频,分别得到f_16(16 Hz),f_10(10 Hz),f_1(1 Hz)的信号,用于计量时的1.6元,1元,0.1元。
    Jiliang模块用来计时和计程,fin为汽车的里程脉冲信号,当fin为高电平时,以记录的f_1的脉冲个数作为行驶的公里里程数,start是汽车计量开始信号,stop为等待信号。f_1是计量驱动信号,当f_1的脉冲到来,如果fin=1,记录f_1的个数(即行驶公里数),当行驶超过3 km,ent0输出为1。当stop为高电平时,记录f_1的脉冲个数,60个脉冲为1 min,当超过3 min时,ent1输出为1。仿真波形如图4所示。


    Kongzhi模块主要根据jiliang模块的en1和en0的不同输出信号选择不同的输出频率供jifei模块计费,en1=1时f=10 Hz,en0=1时f=16 Hz。
    Jifei模块实际就是一个四位十进制加法器,仿真图形如图5所示,在taxi模块中,它根据不同的输入脉冲频率对脉冲个数进行计数。jil iang模块每计一次数,jifei模块就实现16次或10次脉冲计数,即实现超时时的1元/min,超里程时的1.6元/km的收费。


    对整个taxi模块进行仿真,结果如图6所示,由图中可知,当stop为高电平时,汽车行驶了km1km0=35 km,计费cha3cha2cha1cha0为05 92,即59.2元,与8+(35-3)x 1.6=59.2元一致,图中当等待超过3 min时,价格按1元/min计费,仿真结果正确。
3.1.2 动态扫描显示部分
    此模块包含mo8计数器、mux8_1(8选1选择器)、di_led七段数码显示译码器3个子模块。
    mo8计数器:输入信号clk为系统输入的240 Hz基准时钟,输出a为模8的二进制码。
    mux8_1模块是根据输入信号c[2..0]的地址码000至111分别对应了cha3,cha2,ch1,ch0,km1,km0,min1,min0八个四位BCD码,dp为小数点指示信号,在计费的第二位数字上带有小数点,仿真波形如图7所示。

[page]

 

      di_led数码显示译码模块,将输入信号d[3..0]转换为q[6..0],即g,f,e,d,c,b,a七段译码输出(高电平有效),3F对应为0,仿真波形图如图8所示。


    由于采用动态扫描,主要是根据人视觉暂留现象,一般影像在人眼中保留0.1~0.5 s左右,74LS138的输出码依次选通8个数码管。只要频率够高,依次点亮8个数码管时,给人视觉是同时点亮。
3.2 总体电路的仿真结果
    通过对整个设计系统的仿真分析,结果如图9所示,输出依次是3F 7D 27.5B 66 3F 3F 3F,其中总价格为3F7D27.5B(即67.2元),里程数为663F(即40km),等待时间为3F3F(即0 min),8+(40-3)×1.6=67.2元,仿真结果正确。



4 结语
    通过仿真验证表明,本文所设计的出租车计价系统能动态显示行驶的里程、等待时间和计费数目等,符合预定的设计功能要求。但设计中对出租车里程计数精度不高,若要提高精度,需根据设计要求设置取样里程的脉冲,在计量(jiliang)模块的输入频率中要做相应的修改,当出租车计费标准发生变化时,也可以通过修改VHDL源程序达到要求,另外,还可以扩展语音播报或票据打印等附加功能,此系统的设计体现了FPGA设计的自顶向下的设计思想,基于FPGA的设计灵活性高、功耗低、集成度高,具有广阔的市场前景。

关键字:FPGA  出租车计价系统 引用地址:基于FPGA的出租车计价系统设计

上一篇:基于FPGA的喷油脉宽处理系统的设计
下一篇:一句话点评2012年20大技术前瞻

推荐阅读最新更新时间:2024-05-02 22:09

FPGA搭建一个STM32内核?
1.必要的基础知识 为了更快的完成在FPGA上实现ARM Cortex-M3软核,一些必要的基础知识还是要有的! FPGA开发基础知识,如FPGA开发流程,设计、综合、布局、布线、约束、下载 Xilinx Vivado开发环境使用基础,如BlockDesign设计方式,管脚分配,Bit流文件生成与下载 ARM Cortex-M3内核的使用基础,如STM32、MM32、GD32、CH32等微控制器的开发。 Keil-MDK开发环境的使用基础,基本的工程建立、编译、下载流程。 如果以上知识都具备,那么,恭喜你!可以在2小时内完成ARM Cortex-M3软核在FPGA上的实现。 2.Cortex-M3 FPGA IP核下载 首先,
[单片机]
用<font color='red'>FPGA</font>搭建一个STM32内核?
单片机、ARM、MCU、DSP、FPGA、嵌入式的定义、特征及关系详解
首先,“嵌入式”这是个概念,准确的定义没有,各个书上都有各自的定义。但是主要思想是一样的,就是相比较PC机这种通用系统来说,嵌入式系统是个专用系统,结构精简,在硬件和软件上都只保留需要的部分,而将不需要的部分裁去。所以嵌入式系统一般都具有便携、低功耗、性能单一等特性。 然后,MCU、DSP、FPGA这些都属于嵌入式系统的范畴,是为了实现某一目的而使用的工具。 MCU 俗称”单片机“经过这么多年的发展,早已不单单只有普林斯顿结构的51了,性能也已得到了很大的提升。因为MCU必须顺序执行程序,所以适于做控制,较多地应用于工业。而ARM本是一家专门设计MCU的公司,由于技术先进加上策略得当,这两年单片机市场份额占有率巨大。ARM
[单片机]
赛灵思扩展Ultrascale产品组合,推高性价比的Zynq/Arix
本文编译自eejournal 如果您在前几年问我对Xilinx针对成本优化的产品有何看法,我会告诉您,我坚信该公司已放弃了低成本FPGA,将其留给了其他竞争对手,如Lattice和Microsemi/Microchip。英特尔(前身为Altera)也放弃了低成本FPGA,两家公司针对低成本应用所提供的产品基本和数年前相同,并未真正在该市场投入任何工程或营销能力,而是专注于在针对数据中心的高性能应用程序中相互竞争。 放弃低成本市场并不明智。随着物联网的快速发展以及在边缘要求苛刻的应用中,包括对AI推理和其他工作负载加速的需求,似乎边缘加速市场已准备好进行快速扩展,而FPGA是许多市场的理想解决方案。赛灵思为何要放弃这一潜在的
[嵌入式]
Enclustra瑞苏盈科FPGA核心板在无线电视系统中的应用
无线电视系统的设计依赖于一些关键的技术和构建模块。FPGA(现场可编程门阵列)技术可以在无线电视应用中发挥重要作用,特别是在数字电视信号的传输和接收方面。 LiveTools Technology SA LiveTools Technology SA是一家成立于1997年的瑞士公司(之前名为Broadcast Services),在全球无线电视制作服务方面有着广泛的背景。它为电视信号传输链接提供了SoloRX紧凑型软件无线电接收器。 Enclustra(瑞苏盈科)于今年举办的EmbeddedWorld2003嵌入式展上,很荣幸邀请到来自瑞士的LiveTools,并展示了他们一款基于Enclustra ZX1 核心板所
[嵌入式]
Enclustra瑞苏盈科<font color='red'>FPGA</font>核心板在无线电视<font color='red'>系统</font>中的应用
FPGA供电的挑战和应对
  “很多电子工程师可能还没有迫切感受到电源对FPGA、处理器、ASIC等设计的制约性,但作为FPGA厂商,我们很清楚电源将越来越成为设计的瓶颈,”日前在谈到电源发展挑战时,ALTERA中国区Enpirion产品高级业务经理张伟超表示:“在为FPGA等器件设计电源时,工程师通常会遇到许多设计两难:市场需求驱使设备生产商在其产品中增加越来越多的特性和功能,希望提供更大的带宽,进一步减小外形封装,并且提高能效。最新的28 nm和20 nm FPGA、处理器或其他SoC都需采用更小尺寸,更高精度的电源管理器件来支持。市面上多数的电源产品都在为更好的解决这些问题而努力,但能权衡多方面性能表现的产品不多。”   为FPGA供电的挑战   集
[电源管理]
Microchip为FPGA芯片推出功能安全认证包,加快上市时间
Microchip为FPGA芯片推出功能安全认证包,加快上市时间 SmartFusion® 2和IGLOO® 2 FPGA在其单粒子翻转(SEU)缓解功能的基础上新增 IEC 61508认证 在许多高可靠性商业航空、太空、国防、汽车和工业应用中使用的系统需要获得IEC 61508安全完整性等级(SIL)3功能安全规范的认证。 为了降低这一过程的成本,并加快上市,Microchip Technology Inc.(美国微芯科技公司)持续按照行业安全规范对产品和工具进行认证,今日宣布已为另外两款系统级芯片(SoC)FPGA和FPGA系列新增了IEC 61508 SIL 3认证包。 Microchip FPGA业务部副总裁B
[嵌入式]
Microchip为<font color='red'>FPGA</font>芯片推出功能安全认证包,加快上市时间
基于FPGA 的UART 扩展总线设计和应用
  1 引言   在嵌入式领域,由于UART 具有操作简单、工作可靠、抗干扰强、传输距离远(组成 485 网络可以传输1,200 米以上),设计人员普遍认为UART 是从CPU 或微控制器向系统的 其他部分传输数据的最佳方式,因此它们被大量地应用在工业、通信和家电控制等嵌入式领 域。而通常处理器都会自带一个UART 串口,实际应用中一个串口往往不够用,需要进行 UART 串口扩展。而本文在分析了片内总线技术和UART 的工作原理的基础上了实现UART 总线设备的设计,使主控芯片可以控制4~6 个外围设备。   本文中的嵌入式系统由AT91ARM9200 处理器、Linux 操作系统和ALTERA 公司的 ACEX 系列的E
[嵌入式]
e络盟发起‘Spartan-6 FPGA设计迁移七步进阶’挑战赛
此次挑战赛旨在助力工程师将Spartan-6 FPGA设计迁移到7系列 中国上海,2022年4月29日 – 安富利旗下全球电子元器件产品与解决方案分销商e络盟通过其在线社区发起 ‘Spartan-6 FPGA设计迁移七步进阶’挑战赛 ,指导e络盟社区成员如何在当前元器件短缺的情况下从Spartan-6迁移到 Spartan-7 FPGA。 参赛者即日起即可报名参赛。比赛将从中评选出25名参赛选手,他们将免费获赠Arty S7开发板用于构建参赛项目。同时,比赛还将每两周陆续上线七项教育活动,以帮助参赛者更好地掌握从Spartan-6到Spartan-7的迁移过程。评委将根据参赛者参与的每项活动进行打分,并将在七项活动全部结束
[嵌入式]
e络盟发起‘Spartan-6 <font color='red'>FPGA</font>设计迁移七步进阶’挑战赛
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved