首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
MCU 单片机技术
» 基于CPLD/FPGA的出租车计费器系统的设计实现
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
基于CPLD/FPGA的出租车计费器系统的设计实现
发短消息
加为好友
我是MT
当前离线
UID
1023166
帖子
6651
精华
0
积分
3328
阅读权限
90
来自
燕山大学
在线时间
230 小时
注册时间
2013-12-19
最后登录
2016-1-5
论坛元老
UID
1023166
性别
男
来自
燕山大学
1
#
打印
字体大小:
t
T
我是MT
发表于 2014-5-5 19:18
|
只看该作者
基于CPLD/FPGA的出租车计费器系统的设计实现
出租车
,
计费器
1 引言
随着EDA技术的发展及大规模可编程逻辑器件CPLD/FPGA的出现,电子系统的设计技术和工具发生了巨大的变化,通过EDA技术对CPLD/FP-GA编程开发产品,不仅成本低、周期短、可靠性高,而且可随时在系统中修改其逻辑功能。本文介绍了一种以Altera公司可编程逻辑器件EP1K30TC144-3为控制核心,附加一定外围电路组成的出租车计费器系统。
2 系统总体结构
基于CPLD的出租车计费器的组成如图1所示。各部分主要功能包括:信号输入模块对车轮传感器传送的脉冲信号进行计数(每转一圈送一个脉冲),并以高低脉冲模拟出租汽车启动、停止、暂停、加速按钮,具有输入信号作用;数据转换模块将计费模块输出的车费和路程转换成4位的十进制数据;译码/动态扫描模块将路程与费用的数值译码后用动态扫描的方式驱动数码管;数码管显示模块将公里数和计费金额均用4位LED数码管显示(2位整数,2位小数)。
3 单元模块设计
3.1 信号输入模块
该模块主要实现计费功能和现场模拟功能。计费标准为:对车轮传感器传送的脉冲信号进行计数(每转一圈传送一个脉冲),按行驶里程计费,起步价为7.00元,并在车行3 km后按2.40元/km计费,当计费器达到或超过20元时,每公里加收50%的车费,车停止不计费。并以高低脉冲模拟出租汽车启动、停止、暂停、加速按钮,具有输入信号的作用。
该模块的时序仿真图如图2所示。图中的stop下降沿到来时系统不计费,车费为“0”,路程为“0”,起步价为7.00元,在车行3 km(图中300为3 km。因为后面有2位小数)后按2.40元/km计费,当计费器达到或超过20元时,每公里加收50%(即按3.60元/km)的车费。
3.2 数据转换模块
数据转换模块是一个模为10、步长可变的加法计数器,可将计费模块输出的车费和路程转换成4位的十进制数。该模块通过开关量预置步长,当超过一定预置参数时改变步长。计费模块也采用非压缩BCD码,但因步长不为1,所以在做非压缩BCD加法时必须调整,否则可能导致在超过或未超过预置参数时出现超程错误。这里采用模仿微机的AF标志位,在其设立一个半进位标志,当累加和大于9或半进位标志为“1”时,对其累加和调整。转换模块的时序仿真图如图3所示,可见能将路程和车费转换为4位的十进制数,便于8位数码管显示。
3.3 显示模块
显示模块是由七段LED数码管译码和动态扫描显示两部分组成。采用的是共阴极七段数码管,根据十六进制数和七段显示段码表的对应关系,其中要求路程和车费都要用2位小数点来表示,所以须设置一个控制小数点的变量,即程序中的dp。这段程序所示的是在数码管的第二、第六个后面显示小数点,实现了路程和车费都用2位小数点表示的功能。要注意的是如果选择的扫描频率不合适,可能会出现小数点闪动的情况。但只要扫描频率不小于24 Hz,人眼就感觉不到显示器的闪烁。本系统采用36 Hz的扫描频率,扫描脉冲由相应的外围电路提供。七段数码管显示模块的时序如图4所示。
数码管控制及译码显示模块将十进制的输入信号用七段数码管显示,由七段发光二极管组成数码显示器,利用字段的不同组合。可分别显示0~9十个数字。本设计中,要求输出的段信号为低电平有效。
4 系统仿真、综合、下载
仿真是EDA技术的重要组成部分,也是对设计的电路进行功能和性能测试的有效手段。EDA工具提供了强大且与电路实时行为相吻合的精确硬件系统测试工具。在建立了波形文件、输入信号节点、波形参数、加输入信号激励电平并存盘之后,选择主菜单“MAX+plusII”中的仿真器项 “Simulator”,弹出对话框之后单击“Start”进行仿真运算,完成之后就可以看到时序波形。图5为总电路的时序图。
最终的电路设计完成后,若总体电路编译无错,且时序仿真成功,可进行硬件测试。将总电路下载到可编程逻辑器件中,按fit文件中自动分配引脚搭建硬件电路。系统顶层原理图如图6所示。
打开电源,数码管有正确的数字显示,操作运行实验结果完全符合要求。查看报告文件可得到器件引脚的利用情况及器件内部资源的使用情况,通过更换适当的器件使其资源配置达到最优。选择器件的一般原则是系统所使用的资源不要超过器件资源的80%,若超过90%,系统功耗将增大,工作不稳定。本设计中输入、输出引脚各用22个,器件资源利用率仅为62%,具有较大的扩展空间。
5 结束语
硬件设计说明本次设计的出租车计费器计数脉冲CP来自车轮转速传感器(干簧管),脉冲经器件内部整形后送计数器;动态扫描脉冲由外围电路给出;系统使用整流、滤波、降压后的出租车电源供电;由于CPLD/FPGA的驱动能力有限,为了增强数码管的亮度,提高系统的可靠性,设计中在LED驱动和位驱动上分别增加了电流驱动器件ULN2803和2SCl015。现场实验表明:该计费器实现了按预制参数自动计费(最大计费金额为999.9元)、自动计程(最大计程公里数为999.9公里)等功能;能够实现起步价、每公里收费、车型及加费里程的参数预制(如:起步价5.00元;3公里后,1.20元/公里;计费超过15.00元,每公里加收50%的车费等),且预置参数可调范围大。由于采用了CPLD/FPGA大规模可编程逻辑器件,整机功耗小、抗干扰能力强、系统稳定、工作可靠、升级方便。另外,根据实际需要,系统可方便地增加以下功能:①通过芯片内部编程增加时钟功能(器件内部资源足够),既可为司机和乘客提供方便,又能为夜间行车自动调整收费标准提供参考;②用CPLD/FPGA的输出引线控制语音芯片,可向乘客发出问候语、提醒乘客告诉司机所要到达的地点、报出应收缴的费用等。
收藏
分享
评分
回复
引用
订阅
TOP
返回列表
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议