基于单片机的公交报站系统_第1页
基于单片机的公交报站系统_第2页
基于单片机的公交报站系统_第3页
基于单片机的公交报站系统_第4页
基于单片机的公交报站系统_第5页
已阅读5页,还剩55页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

毕业设计(论文)题目:基于单片机的公交报站系统所属院(系):电子信息工程学院2012年5月30日毕业设计(论文)任务书学院(直属系):电子信息工程时间:2012年4月21日学生姓名指导教师设计(论文)题目基于单片机的公交报站系统主要研究内容1.能准确地播报一条公交线路的站名,包括上行线路和下行线路。2.利用SPR4096模组存储大量的语音素材,并使用凌阳SPCE061A单片机进行语音播报。3.能在SPLC501液晶显示屏上显示站点信息、日期、时间。4.实现全自动报站和手动报站两种报站功能。5.采用GPS定位技术,准确、自动地播报站名、广告、服务语等。研究方法该系统主要针对系统控制核心SPCE061A单片机的程序设计,采用汇编语言和c语言相结合的办法进行开发设计,使用凌阳自行研发的16位单片机开发环境IDE和自带的编程函数库对GPS采集的数据进行处理,并自动语音播报和在SPLC501上显示信息。main.c主文件中负责调用相关函数,Gps.c文件中为LCD液晶初始化程序、GPS串口UART初始化程序和数据采集获取程序。主要技术指标(或研究目标)1.设置多个功能按键,以便在GPS信号受到外界信号干扰时保证报站器能够正常工作。2.使用SPLC501液晶,可以同时显示多个汉字和数字符号。3.利用SPR4096(512K×8BitsBusFlash)模组扩展存储空间。4.电源为5V直流。5.GPS定位精度在10m以内。教研室意见教研室主任(专业负责人)签字:年月日说明:一式两份,一份装订入学生毕业设计(论文)内,一份交学院(直属系)目录摘要 IIIAbstract IV第一章绪论 11.1近年来国内外公交车报站器的研制状况 11.2主要设计内容 21.3技术指标与参数设计 2第二章设计方案及论证 42.1公交车报站器的硬件框图 42.2公交车报站器工作流程及各部分功能 42.3设计方案的可行性分析和预期目标 5第三章系统硬件设计 73.1SPCE061A单片机控制系统设计 73.1.1SPCE061A单片机简介 73.1.2SPCE061A单片机最小系统设计 103.1.3SPCE061A单片机电源设计 123.2SPLC501液晶显示屏电路设计 123.2.1SPCE061A实现SPLC501液晶显示方案 133.2.2SPLC501显示控制线连接设计 143.3音频输出电路设计 173.4键盘电路设计 183.5SPR4096模组设计 193.5.1SPR4096芯片简介 193.5.2SPR4096硬件连接框图 203.5.3SPR4096模组电路原理图 203.6GPS接收电路设计 223.6.1GPS系统组成及特点 223.6.2GPS基本工作原理 243.6.3GPS器件的选择 253.6.4HOLUXGR87芯片简介 253.6.5GR87的输出语句格式 28第四章系统数据的压缩与处理 314.1数据的压缩与预存 314.1.1凌阳音频的压缩与存储 314.1.2显示文字信息的压缩与存储 324.1.3定位信息的压缩与存储 324.2GPS距离差距的处理与识别 33第五章系统软件设计 355.1系统主程序设计 365.2初始化程序设计 375.3播放语音程序设计 385.4GPS自动报站流程图 39第六章系统可靠性和误差分析 416.1系统可靠性分析 416.2GPS误差源的分析 426.3车辆行进中产生的偏差 42第七章结论及展望 43参考文献 44致谢 45附录 46附录I电路原理图 46附录Ⅱ程序清单 47

基于单片机的公交报站系统摘要近年来,GPS(GlobalPositioningSystem)全球定位系统在各种行业,特别是车辆监控与全球定位系统的应用中蓬勃发展。随着经济的快速发展,对公交运输也提出更高的要求。随着全国各大城市公交公司的人员逐步精减,目前各公交公司都在每辆公交车上只配备了一个司机,进行无人售票。为了公交运输的安全考虑,目前迫切需要智能化、自动化的公交语音报站系统。本次设计的公交车报站器是以凌阳十六位单片机SPCE061A为控制核心,结合GPS全球定位系统,对车辆的运行状态(方向、位置、时间、速度等)进行实时采集,并进行数据分析,当车辆达到预定位置时,通过凌阳单片机语音功能进行播报站名、提示语、音乐、时间、广告等信息,并在LCD点阵上显示,实现全自动报站功能。当GPS信号受外界影响时,还可通过键盘进行手动报站功能。此外,将大量的语音素材存储在SPR4096模组中,使报站器更具人性化。由于该报站器可以提供自动报站,因此对公交车的行车安全提供了保障。此外,它不仅可以应用到公交车上,还可以应用到火车及长途汽车上,结合LCD点阵进行报站显示,提供车上的宣传用语、广告、时间等信息服务。关键词:自动报站,GPS,凌阳单片机

DesignofAutomaticStationReportSystemforBusBasedonGPSAbstractSincerecentyears,GPS(GlobalPositioningSystem)hasvastlybeenusedanddevelopedineveryindustry,especiallyinthevehicle-monitoringandpositioningsystem.Withthesustainedgrowingoftheeconomy,thedemandtothebustransportationisincreasingtoo.Nowadaysthebuscompanyallocatesonlyonedriveroneverybusbecauseofthecuttingofthewholeindustry.Consideringthesafeofthebusindustry,iturgentlyneedsanintelligent;automatevoice-broadcastsystemforbustransport.Voice-broadcastequipmentforbusinthisdesigngatherparameters(suchasdirection,location,time,velocity)ofthebusinrealtimeandthenanalyzethedatathedesignusesSunplusMCUasitscore,whichintegratesGPSaspartofit.Whenthebusreachesonelocation,ittakesadvantageofthevoicefunctionofSunplusMCUandLCDMatrixScreenwhenitbroadcastsanddisplaysthelocationname,music,time,note,adandotherinformationautomatically.WhenthesignalofGPSbeingaffectedbytheouterfactor,wecanhandleitbymanualoperation.Inaddition,wecanmakeitmorehumanizationbymakinggooduseofgreatwavematerialsitstores.Thisequipmentprovidestheserviceofauto-broadcast,soguaranteesthesafeofthebus.Itappliesthebusaswellasthetrainandthecoach.Itprovidespromotionalspeech,advertisementandtimeonthevehicleassociatewithLCDMatrixScreen.Keywords:Automaticbus-stopannouncer,GPS,SunplusMCU

第一章绪论城市公共交通是城市发展和建设的重要组成部分,是影响社会发展和国民经济的具有先导性、全局性的基础产业,加快城市公共交通事业的发展,也是加快城市化进程的一项重要内容。随着国民经济的快速发展,目前各公交公司在每辆公交车上只配备了一个司机,进行无人售票,报站也由原先的随车售票员报站改为由司机按键报站了。但是由于公交司机既要开车,又要兼顾按键报站,所以常常出现漏报、误报等现象,不仅不能够满足公交系统的要求,而且由于司机为报站分散精力影响开车,对公交行车的安全埋下了隐患。因此,对自动化、智能化的公交自动语音报站系统的需求也日益强烈。自动报站系统的应用即可以节省职工开支,提高公司效益,又可以用标准的普通话播报站名,使各大城市更利于发展和交流,方便人们出行。利用GPS(全球定位系统)进行公交车自动报站系统是最近几年的一个热门课题。卫星定位语音报站系统具有自动播报语音、定位精度高等特点。该系统设计要求车辆的定位精度要高于20m,每台公交车报站器的成本价格不能高于1500元。自动报站系统要适用于全国各大城市,若遇GPS信号受外界影响还可恢复成手动操作进行报站。本次设计的目标是利用GPS(全球定位系统)系统结合凌阳单片机语音技术开发一套车辆自动报站系统,包括系统的硬件与软件,且系统应具有维护费用低、建设费用少、定位精度高等特点。该系统的研究内容包括:车辆定位系统的硬件与软件的设计与制作,即利用凌阳单片机;对GPS接收机接收的数据进行处理,并结合SPLC501液晶显示屏和SPCE061A的语音播报功能,使用控制按键来实现报站器的全自动报站和手动报站的功能,以及系统的整体测试和实际运行。1.1近年来国内外公交车报站器的研制状况城市公共交通是市民出行的主要交通工具之一。提供舒适,安全、便捷的乘车环境,对于公交企业来说,不仅是应尽的责任,亦是不断追求的目标。而公交车自动报站器的设计弥补了传统人工报站的落后方式,能够在进站、出站时自动播报站名及服务用语等相关信息,为市民提供更完善,更人性化的服务。目前各大城市公交语音报站器技术主要有以下几种情况:第一种是一般语音报站器,先通过序号来记录各个站点,到站前由司机按进站按钮开始报站,出站时由司机按下出站按钮,开始预报下站的站名;第二种是门控语音报站器,将开门、关门信号通过转换与语音报站器连接,实现开门和关门时自动报站;第三种是无线信标语音报站器,它在每个公交车站点设置发射信号点,当公交车接近站点时会收到信标信号,开始自动报站,出站后信号消失,开始预报下一站。该报站器虽报站准确,却需要为每个公交站点组建无线发射信标,费用高且复杂,公交公司修改站点非常不方便,而且公交车数量多时频率干扰问题严重,维护成本太高;第四种是GPS自动语音报站器,该报站器是在公交车上安装GPS自动语音报站器,实现自动识别站点并播报站点信息。由于无需人工操作,报站准确,无需修建其他车外设施,被各大城市广泛使用。1.2主要设计内容公交车自动报站器的设计包括以下内容:1.能准确地播报一条公交线路的站名,包括上行线路和下行线路。2.利用SPR4096模组存储大量的语音素材,并使用凌阳SPCE061A单片机进行语音播报,使报站器更具人性化。3.能在SPLC501液晶显示屏上显示站点信息、日期、时间。4.实现全自动报站和手动报站两种报站功能。5.采用GPS卫星定位技术,准确、自动地播报站名、广告、服务语等。1.3技术指标与参数设计主要技术指标如下:1.设置多个功能按键,以便在GPS信号受到外界信号干扰时保证报站器能够正常工作。2.使用128×64的SPLC501液晶,可以同时显示多个汉字和数字符号,字体字号可以按8×8,16×16等格式显示。3.利用SPR4096(512K×8BitsBusFlash)模组扩展存储空间。4.电源为5V直流。5.GPS定位精度在10m以内。

第二章设计方案及论证随着GPS卫星定位技术的成熟,定位的稳定性和精确度的提高,使得利用GPS卫星定位进行公交自动报站成为可能。通过查阅相关资料,分析近年来国内外公交车报站器的发展及实际应用情况,本设计采用了全自动报站和手动报站两种工作方式,通过凌阳单片机对数据进行采集、处理和分析,控制语音播报和液晶显示屏显示,来实现公交车报站器的功能设计。2.1公交车报站器的硬件框图图2-1所示为公交车自动报站器的硬件框图,主要由凌阳SPCE061A单片机、GPS信号接收电路、音频输出电路、电源模块、SPLC501液晶显示电路、SPR4096存储模块和键盘控制电路组成。音频输出电路音频输出电路GPS模块按键模块SPLC501液晶显示屏SPR4096模组凌阳单片机电源模块图2-1公交车报站器设计方框图2.2公交车报站器工作流程及各部分功能总体工作流程:首先将站名信息、广告信息和提示信息存储到外扩存储器SPR4096存储模块中,凌阳单片机上电工作后先检查是手动按键报站工作方式还是全自动报站工作方式。当系统工作在全自动报站方式时,凌阳单片机接收GPS的信息,其中包括速度、方向、时间、地理位置等信息,GPS通信遵循NMEA0138v2.2协议,凌阳单片机按照协议提取出用信息,结合公交车的实时运行信息,进行上行、下行判断,在SPLC501液晶显示屏上显示,并通过扬声器播放站点信息、广告及提示语。当系统工作在手动按键工作方式时,通过键盘直接控制液晶屏显示和语音播报。凌阳SPCE061A单片机:是整个系统的控制核心,主要是执行键盘控制电路发出的指令和接收GPS定位信息,并对相关数据进行分析处理,然后控制语音的播报和液晶显示屏幕显示。由于SPCE061A内部集成了D/A转换器,不需任何语音芯片就可直接实现语音播报功能。SPLC501液晶显示屏部分:采用LCD点阵显示形式,利用单片机对其逐点扫描,实现报站信息和广告的显示。单片机外部扩展部分:主要是按键和SPR4096模组。按键主要是实现对系统的人为控制;SPR4096模组主要是为了扩展单片机的存储空间,以便存储大量的语音素材,使报站器更具人性化。GPS接收部分:捕获到按一定卫星高度截止角所选择的待测卫星的信号,并跟踪这些卫星的运行,对所接收到的GPS信号进行变换、放大和处理,以便测量出GPS信号从卫星到接收机天线的传播时间,解译出GPS卫星所发送的导航电文,实时地计算出测站的三维位置,以及时间、速度、航向等定位信息。2.3设计方案的可行性分析和预期目标凌阳SPCE061A单片机最高可工作在49MHz的主频下,较高的处理速度使μ’nSP能够非常快速地、容易地处理各种复杂的数字信号,并且内置D/A、A/D转换器,这使得凌阳SPCE061A的语音处理能力更加灵活,实现语音播报功能更加容易。凌阳SPCE061A还具有32位通用可编程输入/输出端口,多达十四个中断源和一个通用串口等丰富的片内资源,还可扩展键盘和SPR4096模组,实现SPLC501液晶显示屏显示。GPS接收机选用差分模式产品HOLUXGR87模块,它的安装调试简单,价格便宜,非常适合测试或学习使用;数据接口简单并直接提供TTL电平输出,可以满足车载要求,能够达到设计的相关技术指标。该设计方案从理论上符合实际运行的要求,工作原理可行,各单元电路采用模块化设计,实用性强,易检修,若能应用于实际应该对公交行业提供较好的技术支持。设计的预期目标:全面了解GPS接收原理和凌阳单片机的开发设计流程,按照任务书的设计要求,结合公交车报站器运行的实际情况,力求从理论上研究出更先进、实用、廉价的公交车报站器,争取设计出实物。

第三章系统硬件设计公交车自动报站器硬件电路包括:凌阳SPCE061A单片机、GPS信号接收电路、音频输出电路、SPLC501液晶显示电路、SPR4096存储模块和键盘控制电路组成。3.1SPCE061A单片机控制系统设计本设计中采用了凌阳16位单片机SPCE061A作为控制芯片,CPU最高可工作在49MHz的主频下,较高的处理速度使μ’nSP能够非常快速地、容易地处理复杂的数字信号,这使得SPCE061A具有相对灵活的语音处理能力。在语音功能的应用领域产品中是一种十分经济的选择。3.1.1SPCE061A单片机简介继μ’nSP™系列产品SPCE500A等之后SPCE061A是凌阳科技推出的又一款16位结构的微控制器。与SPCE500A不同的是,SPCE061A在存储器资源方面考虑到便于程序调试以及用户的较少资源的需求等功能。SPCE061A的主要性能特点是:采用16位μ’nSP™微处理器,工作电压(CPU)VDD为2.4~3.6V,(I/O)VDDH为2.4~5.5V,当系统处于备用状态下(时钟处于停止状态),耗电仅为2µA@3.6V,CPU时钟为0.32MHz~49.152MHz,内嵌32K字(Word)闪存(FLASH),2K字(Word)SRAM,内置十位ADC、DAC,可编程音频处理,2个16位可编程定时器/计数器,32位通用可编程输入/输出端口,1个UART和SIO接口,有多达十四个中断源等丰富的片内资源,同时还具备触键唤醒、在线仿真、文件保密、WatchDog(看门狗)等功能。SPCE061A的结构如图3-1所示:16位微16位微控制器μ’nSP™+ICEFlashRAM双16位定时器/计数器时基中断控制器锁相环振荡器CPU时钟实时时钟7通道10ADC单通道ADC+AGC双通道10位DAC串行输入输出接口32管脚的通用输入输出管脚低电压检测/低电压复位Watchdog串行异步通信接口IOB7(RXD)IOB10(TXD)IOB0(SCK)IOB1(SDA)……IOA15~0IOB15~0AUD2MIC_INAUD1ICE_ENICE_SCKICE_SDAXI/RVcpXO图3-1SPCE061A的结构其各部分功能介绍如下:(一)输入/输出(I/O)接口:61板将SPCE061A的32个I/O口全部引出:IOA0~IOA15,IOB0~IOB15,对应的SPCE061A引脚为:A口,41~48、53、54~60;B口,5~1、81~76、68~64。而且该I/O口是可编程的,即可以设置为输入或输出:设置为输入时,分为悬浮输入或非悬浮输入,非悬浮输入又可以设置为上拉输入或是下拉输入;在5V情况下,上拉电阻为150K,下拉电阻为110K;设置为输出时,可以选择同相输出或者反相输出。(二)音频输入/输出接口:语音的MIC输入端,自带自动增益(AGC)控制,一个2pin的插针外接喇叭,由DAC输出引脚21或22经语音集成放大器SPY0030A放大,然后输出,SPY0030A是凌阳的一款芯片,功能相当于LM386,但是比LM386音质好,它可以工作在2.4~6.0V范围内,最大输出功率可达700mW(LM386必须工作在4V以上,而且功率只有100mW)。(三)在线调试器PROBE和EZ_PROBE接口:SPCE061A的开发可通过在线调试器PROBE来实现。实际上,PROBE既是一个编程器(即程序烧写器),又是一个实时在线调试器,其接口有5pin,我们就是通过它将PROBE与PC机连接起来进行调试、仿真和下载程序的。这样,就不需要再用仿真器和编程器了。它可在单片机应用项目的开发过程中替代常用的两种工具——硬件在线实时仿真器和程序烧写器。它利用了SPCE061A内置的在线仿真电路ICE和凌阳公司的在线串行编程技术。PROBE可工作于凌阳IDE集成开发环境软件包下,其5芯的仿真头可直接连接到目标电路板上SPCE061A的相应管脚。并可直接通过目标电路板上的CPU(SPCE061A)来调试并运行用户编制的程序PROBE的另一头是标准的25针打印机接口。可直接连接到计算机的打印口"它与上位机的通讯可在计算机IDE集成开发环境软件包下完成。图3-2是计算机,PROBE,用户目标板三者之间在线调试时的外围连线接口电路。图3-2PC、PROBE、用户目标板和SPCE061A的外围连线接口电路图(四)电源接口61板的内核SPCE061A电压要求为3.3V,而I/O端口的电压可以选择3.3V也可以选择5V。所以,在板子上具有两种工作电压:5V和3.3V。对应的引脚中15、36和7必须为3.3V,对于I/O端口的电压51、52、75可以为3.3V也可以是5V,这两种电平的选择通过跳线J5来选择。61板的供电电源系统采用用户多种选择方式:1、5V供电:用户可以用3节电池,5V直流电压直接通过SPY0029(相当于一般3.3V稳压器)稳压到3.3V,为整个61板提供了5V和3.3V两种电平的电压。另外也可以直接外接5V的直流稳压源供电,5V电压再通过SPY0029稳压到3.3V。2、3.3V供电:用户可以提供直流3.3V电压为实验板进行供电,此时整个板子只有3.3V电压,I/O端口电压此时只有一种选择。(五)外部复位复位是对61板的硬件初始化,61板本身具有两种复位功能:上电复位功能,即通电就自动复位;外部复位功能,即在引脚6上外加一个低电平就可令其复位。根据公交车报站器的硬件设计要求,对SPCE061A单片机的硬件资源分配见表3-1。表3-1硬件资源分配表WATCHDOG看门狗。复位时间:0.75s。IOA口IOA0接键盘KEY1IOA1接键盘KEY2IOA8~IOA15用于SPLC501液晶显示的数据线。IOB口IOB0用于SPR4096的SCK信号。IOB1用于SPR4096的SDK信号。IOB7用于通用串口Rx。IOB4、IOB5、IOB6、IOB9分别接SPLC501的四条控制线。Timer使用情况TimerA放音时使用。DAC音频输出。中断使用情况FIQ_TimerA中断用于放音。IRQ3_EXT中断扫描外部按键。IRQ7_UART中断扫描串口数据。3.1.2SPCE061A单片机最小系统设计如图3-3所示为最小系统接线图,在OSCO、OSCI端接上晶振及谐振电容,在锁相环压控振荡器的阻容输入VCP端接上相应的电容电阻后即可工作,其他不用的电源端和地端接上0.1μF或100μF的去耦电容提高系统的抗干扰能力。 图3-3SPCE061A最小系统原理图SPCE061A单片微控制器的内部共有84个引脚,封装形式为PLCC84其各引脚的功能如表3-2所列。表3-2SPCE061A管脚功能表3.1.3SPCE061A单片机电源设计SPCE061A的工作电压要求为3.3V,而I/O端口的电压可以是3.3V也可以是5V。因此,该电路设计上具有两种工作电压:3.3V和5V。而SPY0029为凌阳公司设计的电压调整IC,采用CMOS工艺且具有静态电流低、驱动能力强、线性调整出色等特点,故本电路采用SPY0029芯片作为直流稳压电源设计,对应的SPCE061A引脚中15、36和7必须为3.3V,对于I/O端口的电平参考引脚51、52、75可以为3.3V也可以是5V,这两种电平的选择通过跳线J501来选择。图3-3图中的VDDH为SPCE061A的I/O电平参考,接SPCE061A的51、52、75脚;VDDP为PLL锁相环电源,接SPCE061A的7脚;VDD和VDDA分别为数字电源与模拟电源,分别接SPCE061A的15脚和36脚;AVSS1是模拟地,接SPCE061A的24脚;VSS是数字地,接SPCE061A的38脚;AVSS2接音频输出电路的AVSS2。 图3-4SPCE061A电源电路原理图3.2SPLC501液晶显示屏电路设计本次设计采用SPLC501液晶显示模组为128*64点阵,面板采用STN(SuperTwistedNematic)超扭曲向列技术制成并且由128Segment和64Common组成,LCM非常容易通过接口被访问。模组上的液晶显示器采用凌阳科技的SPLC501芯片作为LCD驱动和控制器,为128*64点阵图形液晶显示器。SPLC501液晶显示模组主要有以下几个主要部件:1、液晶显示器(带驱动、控制器的液晶面板);2、复位按键;3、电源指示灯;4、模组接口及跳线;下图是SPLC501液晶显示器的结构示意图:图3-5SPLC501液晶显示器的结构示意图3.2.1SPCE061A实现SPLC501液晶显示方案鉴于凌阳SPCE061A单片机(16位单片机)比传统的51系列(8位单片机)具有更加丰富的资源,而且数据处理速度更快,可将显示数据通过并行(一般为8位)方式送入驱动电路,这样的好处是:相对于串行控制而言,数据的刷新速度快,在处理同等数量的数据时,对处理速度要求可以大大降低,从而提高了系统的稳定性。要用SPLC501液晶显示屏来显示汉字、字母和数字等信息,首先要能够提取出其字模数据,即一个16*8的点阵数字、字母的字模数据共有16个字节,一个16*16的点阵汉字的字模数据共有32个字节。点阵信息提取方案如下:方案一:固定汉字显示,就是将要显示的语句中全部汉字和字母数据依次提取出来,按顺序存放在存储器中,当有显示任务时,直接取出字模数据送至显示器即可。这种方法占用空间少,程序实现简单,显示速度快。本系统中的显示数据较少,对预存点阵信息的提取和存储就是采用这种方案。但是,要想显示大量的汉字信息或直接对显示信息进行更新,则几乎是不可能的事。因此,要实现这样的功能就要采用第二种方案。方案二:将标准的点阵信息字模数据的字库文件(可以采用汉字库文件HZK16、ASCII码库文件ASC16)装入外扩ROM存储器,采用与PC机相同的编码(机内码),先进行基于PC机的预处理,提取需显示内容的机内码,通过串口发给单片机,单片机首先进行判断,若是ASCII码,则直接计算出起始地址,在ASC16文件中指定位置取出连续的16个字节即为其字模信息;若为汉字,单片机将机内码转换为区码和位码,再计算出起始地址,在HZK16文件中指定位置取出连续的32个字节即为其字模信息,然后送到显示器去显示。另外,PC机与单片机之间串口通信只是传输机内码,而不是传输字模信息,传输信息量小,不需要复杂的通信协议。这样既可以减轻单片机的负担,而且可以根据要求随时改变显示内容,非常简单灵活。针对本系统设计要求来说,第一种方案就可以很容易实现,且编程简单,显示速度也能达到设计要求。3.2.2SPLC501显示控制线连接设计一、功能说明SPLC501液晶显示模组采用的驱动控制芯片为凌阳科技的SPLC501A芯片,SPLC501A为液晶显示控制驱动器,集行、列驱动器和控制器于一体,广泛应用于小规模液晶显示模块。SPLC501A单芯片液晶驱动,可以直接与其他微控制器接口总线相连。微控制器可以将显示数据通过8位数据总线或者串行接口写到SPLC501A的显存中。下列是SPLC501A的特点:内置8580位显示RAM。RAM中的一位数据控制液晶屏上的一个象素点的亮、暗状态。“1”亮“0”暗。具有65行驱动输出和132列驱动输出(注:模组中的液晶显示面板仅为64行、128列)。可以直接与8080系列和6800系列微处理器相连。内置晶振电路,也可以外接晶振。工作温度范围为-40摄氏度~+85摄氏度。该系统采用凌阳SPCE061A单片机的IOB4、IOB5、IOB6、IOB9分别接SPLC501的四条控制线CS1、A0、R/W、EP、IOA(8~15)共8个口对SPLC501连接数据线进行控制。表3-3SPLC501引脚功能说明接口引脚名说明CS1片选,低有效RES复位脚A0数据命令选择脚R/W对于6800系列MPU的读/写信号(R/W)对于8080系列MPU的写信号(W/R)EP对于6800系列MPU的时钟信号使能脚(EP)对于8080系列MPU的读信号(RD)DB08位数据总线DB1DB2DB3DB4DB5DB6DB7VR端口输出电压C86C86=’H’选择6800MPU系列C86=’L’选择8080MPU系列PS串、并行时序选择二、控制方法及控制指令SPLC501液晶显示模组共有23种显示指令,常用的功能种指令有:1、显示开关指令2、显示起始行设置这个指令设置了对应显示屏上首行的显示RAM行号。有规律的修改该行号,可以实现滚屏功能。3、页地址设置4、设置列地址由上图可以看出显示RAM被分成9页每页132个字节,当设置了页地址和列地址后,就确定了显示RAM中的唯一单元,该单元由低到高各个数据位对应于显示屏上的某一列的8行数据位。注:在本模组中与LCD屏上对应的显示RAM仅为8页有效(0~7),每页128字节。列地址的设置需要连续写两次指令,如上图所示,指令数据为0001XXXXB和0000XXXXB,都是用低四位放置有8位地址的高低四位数据,而指令的DB4指明当前设置的是高四位地址还是低四位地址。5、读状态BUSY当BUSY为1时,忙状态;当BUSY为0时,准备好状态,ADC表示行和列的关系ADC:1正常输出(n-131==SEGn),ADC:0为反向输出(131-n==SEGn)ON/OFF表示液晶显示开和关0:显示打开,1:显示关闭RESET0:正常工作状态,1:复位6、写显示数据这条指令可以将显示数据(8位)写到RAM中,显示地址自动加一。3.3音频输出电路设计如前所述,SPCE061A内置2路精度为10位的DAC,只需要外接功放电路即可完成语音的播放。图3-6SPCE061A音频输出电路原理图图3-6是音频输出电路图。图中的SPY0030也是凌阳公司的产品,和LM386相比,SPY0030还具有下述优势,比如LM386工作电压需在4V以上,SPY0030仅需2.4V即可工作(两颗电池即可工作);LM386输出功率100mW以下,SPY0030约700mW。3.4键盘电路设计由于凌阳SPCE061A单片机具有可编程的I/O口,所以只需将要接按键的I/O口设置为带上拉电阻的输入口,按键的另一端接到低电平上即可。电路原理图如图3-7所示。 图3-7键盘电路原理图各按键的功能定义如下:K1:逐次播放上行各站提示语,每按一次按顺序播放一个。K2:逐次播放下行各站提示语,每按一次按顺序播放一个。K3:语音预留键,用于播放广告和文明宣传语等。在启用自动报站时,屏蔽按键操作;在启用手动报站时,关闭串口接收GPS数据,按K1、K2键,分别执行上行/下行报站操作。3.5SPR4096模组设计凌阳SPCE061A芯片具有语音播放的硬件条件,而且还提供了大量的语音播放的函数可供调用,为了使报站器更具人性化,需要存储大量的语音文字信息。但是由于SPCE061A片内只有32K的FLASH存储器,在播放大量语音资源时需要外扩存储器。这就要求系统扩展外部存储空间,本次设计采用凌阳公司的SPR4096模组电路,配合PC机使用ResWriter工具,通过EZ-probe下载线,完成对SPR4096存储器芯片的擦除、写入、校验等功能。并且SPR4096可以直接与SPCE061A单片机相连,实现SPCE061A单片机存储空间的扩展。3.5.1SPR4096芯片简介SPR4096内嵌512K*8位高性能FLASH存储器同时内嵌4K*8位SRAM。芯片具有BMI(BusMemoryInterface)并行接口总线与SIF(SerialInterface)串行接口总线。在SPR4096芯片中,使用两种电源供电,VDDI与VDDQ。VDDI范围在2.25V-2.75V,这个电源是给内部的FLASH与逻辑控制单元供电的。VDDQ范围在2.25V-3.6V,只给I/O口供电。SPR4096可以工作在5.0MHz频率下,最大读电流为2.0mA,最大编程/擦写电流6.0mA。SPR4096特性如下:

●512K*8位的FLASH,256个扇区,每个扇区为2K字节

●可重复擦写20000次

●在自然条件下数据保存10年

●4K*8位的SRAM

●供电要求:

VDDI:2.25V-2.75V

VDDQ:2.25V-3.6V

●最大工作频率:5.0MHz

●最大擦除、烧录电流:6.0mA

●最大读取电流:2.0mA3.5.2SPR4096硬件连接框图SPR4096模组连接框图如图3-8所示,SPR模组有两个接口,一个接口是EZ-probe,这是在使用ResWriter工具对SPR4096进行烧写时连接使用的,另一个接口主要提供电源以及SCK和SDA与SPCE061A连接使用。SPR模组使用3.3V电源供电,注意不要使电源接反。PCSPR4096PCSPR4096SCKSDASPCE061AIOB0IOB1图3-8SPR4096硬件连接框图3.5.3SPR4096模组电路原理图SPR模组的硬件电路主要分为两部分,如下介绍:第一部分:ResWriter工具对SPR4096进行烧写的下载缓冲电路,此部分电路主要是控制SCK、SDA信号的作用,通过74HC244可以控制SDA信号的高低电平,这样可以使用ResWriter工具发出符合烧写芯片的时序信号,完成对芯片的擦除、写入与校验功能。第二部分:SPR4096的工作电路,此部分电路是为了使SPR4096存储器正常工作的外围电路,通过SCK、SDA与SPCE061A单片机相连。如图3-9所示为SPR模组电路原理图:图3-9SPR4096模组电路原理图如图3-10所示为SPR4096模组实物图:图3-10SPR4096模组实物图3.6GPS接收电路设计GPS是英文NavigationSatelliteTimingandRanging/GlobalPositioningSystem的缩写,译为利用卫星导航进行测时和测距/全球卫星定位系统。全球定位系统(GlobalPositioningSystem-GPS)是美国从20世纪70年代开始研制,历时20年,耗资300亿美元,于1994年全面建成,为高精度导航和定位而研制的全球被动式无线电卫星系统,是集成无线电导航、定位和定时于一体的多功能系统。GPS以全天候、自动化、高精度、高效益等显著特点,赢得广大使用者的信赖,并成功地应用于导航、授时、高精度测量等领域。3.6.1GPS系统组成及特点(一)GPS(全球定位系统)的主要组成部分:GPS定位技术是利用高空中的GPS卫星,向地面发射L波段的载频无线电测距信号,由地面上用户接收机实时地连续接收,并计算出接收机天线所在的位置。因此,GPS定位系统是由以下三个部分组成:GPS卫星星座(空间部分)、GPS信号接收机(用户设备部分)和地面监控系统(地面控制部分)。1.GPS卫星星座GPS卫星星座由21颗工作卫星和3颗在轨备用卫星组成,记作(21+3)GPS星座。24颗卫星距地表20~200公里的上空,均匀分布在6个轨道平面内,轨道倾角为55度,各个轨道平面之间相距60度,即轨道的升交点赤经各相差60度。每个轨道平面内各颗卫星之间的升交角距相差90度,同一轨道平面上的卫星比西边相邻轨道平面上的相应卫星超前30度。卫星每11小时58分环绕地球一次,即当地球对恒星来说自转一周时,它们绕地球运行两周。位于地平线以上的卫星颗数随着时间和地点的不同而不同,最少可见到4颗,最多可见到11颗。卫星提供全球全天候,每秒一次,持续不断的定位讯号。2.GPS信号接收机GPS信号接收机(用户部分)是接收、跟踪、变换和测量GPS信号的无线电设备,由天线、接收机、处理器控制显示单元、电源组成,GPS信号接收机接收GPS卫星发射的无线电信号,以获得必要的定位信息和观测量,并经过数据处理而完成定位工作。用户使用GPS信号接收机定位导航时,为了计算出三维坐标(包括:经纬度坐标、高度、速度、加速度、时间等),必须接收到3颗以上GPS卫星信号。而且接收到卫星信号的数量和几何位置分布对定位精度有一定的影响。3.地面监控系统地面监控系统负责监控全球定位系统的工作:监测卫星是否正常工作,是否沿预定的轨道运行;跟踪计算卫星的轨道参数并发送给卫星,由卫星通过导航电文发送给用户;保持各颗卫星的时间同步;必要时对卫星进行调度。GPS的地面监控系统由分布在全球的5个地面站组成,其中包括:一个主控站、五个卫星监测站和三个注入站。主控站协调和管理地面监控系统的主要任务是:1)根据本站和其它监测站的观测资料,推算编制各卫星的星历、卫星钟差和大气修正参数,并将数据传送到注入站。2)提供全球定位系统的时间基准。各监测站和GPS卫星的原子钟,均应与主控站的原子钟同步,测出其间的钟差,将钟差信息编入导航电文,送入注入站。3)调整偏离轨道的卫星,使之沿预定轨道运行。4)启用备用卫星代替失效工作卫星。监测站是主控站直接控制下的数据自动采集中心。观测资料由计算机进行初步处理,存储并传输到主控站,以确定卫星轨道。注入站主要任务是在主控站的控制下,将主控站推算和编制的卫星星历、钟差、导航电文和其它控制指令等,注入到相应卫星的存储系统,并监测注入信息的正确性。(二)GPS(全球定位系统)的主要特点:GPS(全球定位系统)能在全球、全天候工作,且功能多、应用广,采用差分定位,精度可达厘米级和毫米级。其主要特点如下:1、定位精度高应用实践已经证明,GPS相对定位精度在50KM以内可达10-6,100-500KM可达10-7,1000KM可达10-9。在300-1500M工程精密定位中,1小时以上观测的解其平面其平面位置误差小于1mm,与ME-5000电磁波测距仪测定得边长比较,其边长较差最大为0.5mm,校差中误差为0.3mm。2、观测时间短随着GPS系统的不断完善,软件的不断更新,目前,20KM以内相对静态定位,仅需15-20分钟;快速静态相对定位测量时,当每个流动站与基准站相距在15KM以内时,流动站观测时间只需1-2分钟,然后可随时定位,每站观测只需几秒钟。3.6.2GPS基本工作原理GPS的基本定位原理是:测量出已知位置的卫星到用户接收机之间的距离,然后综合多颗卫星的数据就可知道接收机的具体位置。要达到这一目的,卫星的位置可以根据星载时钟所记录的时间在卫星星历中查出。而用户到卫星的距离则通过记录卫星信号传播到用户所经历的时间,再将其乘以光速得到,由于大气层电离层的干扰,这一距离并不是用户与卫星之间的真实距离,而是伪距(PR):当GPS卫星正常工作时,会不断地用1和0二进制码元组成的伪随机码(简称伪码)发射导航电文。GPS系统使用的伪码一共有两种,分别是民用的C/A码和军用的P(Y)码。C/A码频率1.023MHz,重复周期一毫秒,码间距1微秒,相当于300m;P码频率10.23MHz,重复周期266.4天,码间距0.1微秒,相当于30m。而Y码是在P码的基础上形成的,保密性能更佳。导航电文包括卫星星历、工作状况、时钟改正、电离层时延修正、大气折射修正等信息。它是从卫星信号中解调制出来,以50b/s调制在载频上发射的。导航电文每个主帧中包含5个子帧每帧长6s。前三帧各10个字码;每三十秒重复一次,每小时更新一次。后两帧共15000b。导航电文中的内容主要有遥测码、转换码、第1、2、3数据块,其中最重要的则为星历数据。当用户接受到导航电文时,提取出卫星时间并将其与自己的时钟做对比便可得知卫星与用户的距离,再利用导航电文中的卫星星历数据推算出卫星发射电文时所处位置,用户在WGS-84大地坐标系中的位置速度等信息便可得知。可见GPS导航系统卫星部分的每颗卫星时刻发布其位置和时间数据信号,用户接收机可以测量每颗卫星的信号到接收机的时间延迟,根据信号传输的速度就可以计算出接收机到不同卫星距离。同时收集至少4颗卫星的数据时,就可以计算出三维坐标、速度和时间。民用导航系统常常采用的GPS定位方法是伪距法。GPS接收机根据接收所选的卫星发来的导航信息和时钟校正参数的时间,能计算出接收机到卫星的“距离”。如果测量到3颗卫星的“距离”,则分别以3颗卫星发射时刻的卫星位置(根据发射的星历参数确定)为中心,根据测得的“距离”画出3个球,其交点就是用户的三维位置。但是,由于接收机的本机钟对星载原子钟存在偏差,上面所测的“距离”并不是卫星接收机的真实距离,因此称为“伪距离”,伪距法由此得名。正因为用户钟与GPS时间不能精确同步,故每次测量总会存在一个固定的偏差,这使得定位产生不定性。如果在测量出到第4颗卫星的伪距,则此时由用户钟偏差造成的定位不定性就产生一个由4个相交球面所围成的误差体积。从每个伪距测量中加上或减去这个固定的值就消去了该体积,结果使得4个球面相交于一点,这就是用户的三维位置。3.6.3GPS器件的选择在实际使用中,并不是需要关心如何去计算坐标数据,GPS器件本身会提供详细的定位信息。GPS技术目前已经较为成熟,市场上的GPS产品很多,可以分为下面的3类。1)单点模式产品,如MOTOROLAM12、GARMINGPS25LP等,其定位精度为15m左右。2)双系统模式产品,如ARGO-16GPS/GLONASS,其定位精度与单点模式产品相似,但在精度上高一些,价格上也略高一些。3)差分模式产品,如HOLUXGR87,其实就是使用单点模式产品的差分功能进行差分的GPS(DGPS)定位,其定位精度大大提高。经过综合考虑,选用差分模式产品HOLUXGR87模块作为本次设计的GPS器件,它的价格相对便宜,定位精度高,启动时间短且能直接提供TTL电平输出,其他的指标也能够达到设计要求。3.6.4HOLUXGR87芯片简介HOLUXGR87模块的性能指标如下:1、相关特性:

最多可同时接收20个卫星

接收码:

L1,C/A

更新速率:

1HZ

时间标示:

1脉波/秒,

GPS时间

+/-0.1秒误差

支援通讯协定:NMEA-0183

v2.2版本规格输出及SiRF二位元编码

晶片内建

200,000

个卫星追踪运算器

运算程式:ARM7TDMI

内建快闪记忆体

1Mb

最低追踪信号感度:-159dBm

尺寸:25.4

×

25.4

×

7公厘

重量:2g

操作温度:

-10℃

to

+

60℃

存放温度:

-20℃

to

+

85℃

操作湿度:

5%

to

95%

无压缩条件下

2、位置精准度

.Autonomous:<

10

公尺

2DRMS

.SBAS:7公尺,(二维RMS,

WAAS修正\u7bc4围)

.差分修正输入

(DGPS):1-5

公尺CEPS

3、定位时间

.定位时间(平均值)

重新抓取:0.1

热开机:

1

暖开机:

38

冷开机:

42

4、输出入规格及介面

.NMEA

输出协议:

支援通讯协定:

NMEA-0183

v2.2版本规格输出、SiRF二位元编码及AI3/FHOLUXGR87在加电后开始运行,其基本运行过程如下。1、自检:加电后开始自检,并通过输出通道报告自检结果,自检过程将检测、接收器、实时时钟和晶振。2、初始化:自检完毕后,将开始卫星探测和跟踪过程。整个探测过程是完全自动的,正常情况下,HOLUXGR87将用45s的时间获取位置定位信息(已知星历表时只需要15s),之后通过输出通道传送有效的位置、速度和时间信息。3、导航:探测完毕后,HOLUXGR87将通过输出通道发送有效的导航信息,包括经纬度、海拔、速度、日期/时间、误差估计、卫星和接收器状态。4、卫星数据收集:在运行时,HOLUXGR87将自动更新卫星轨道数据。HOLUXGR87提供一个单排的6针对外硬件接口,如图3-11所示。图3-11HOLUXGR87对外硬件接口其引脚功能如下:TXA(2脚):第1路串行数据发送脚。RXA(3脚):第1路串行数据接收脚。RXB(4脚):第2路串行数据接收脚。VCC(1脚):电源,接3.3V~5V电源。GND(5脚):接地。GR87和SPCE061A单片机的具体连接方式如图3-12所示。图3-12GR87与SPCE061A单片机连接示意图3.6.5GR87的输出语句格式GPS上电后,每隔一定的时间就会返回一定格式的数据,数据格式为:$信息类型,x,x,x,x,x,x,x,x,x,x,x,x,x每行开头的字符都是‘$’,接着是信息类型,后面是数据,以逗号分隔开。一行完整的数据如下:$GPRMC,080655.00,A,4546.40891,N,12639.65641,E,1.045,328.42,170809,,,A*60HOLUXGR87的信息类型有六种:GPGSV:可见卫星信息;GPGLL:地理定位信息;GPRMC:推荐最小定位信息;GPVTG:地面速度信息;GPGGA:GPS定位信息;GPGSA:当前卫星信息;结合本系统只需要判断公交车的位置和方向即可,不需要很高的精确度,故采用推荐最小定位信息GPRMC。其语句格式如下。$GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>,*hh<CR><LP><1>:UTC当地时间,“时时分分妙妙”的格式。<2>:工作状态,A为可用,V为接收器报警,不可用。<3>:纬度,“度度分分.分分分分”格式(前面的0也会传送)。<4>:纬度半球,N或者S。<5>:经度,“度度分分.分分分分”的格式(前面的0也会传送)。<6>:经度半球,E或者W。<7>:对地速度,000.0~999.9节(前面的0也会传送)。<8>:对地的航向,000.0°~359.9°(前面的0也会传送)。<9>:UTC当地日期,“天天月月年年”格式。<10>:磁变,磁偏角地球磁场在不同的时间、不同地点的偏差,000.0°~180.0°。<11>:磁变方向,E或者W。<12>:工作模式,A为自主,D为差分,E为评估。N为数据无效。*hh:为数据校验和。解析内容如下:1.时间,这个是格林威治时间,是世界时间(UTC),我们需要把它转换成北京时间(BTC),BTC和UTC差了8个小时,要在这个时间基础上加8个小时;2.定位状态,在接收到有效数据前,这个位是‘V’,后面的数据都为空,接到有效数据后,这个位是‘A’,后面才开始有数据;3.纬度,我们需要把它转换成度分秒的格式,计算方法:如接收到的纬度是:4546.408914546.40891/100=45.4640891可以直接读出45度4546.40891–45*100=46.40891可以直接读出46分46.40891–46=0.40891*60=24.5346读出24秒所以纬度是:45度46分24秒。4.南北纬,这个位有两种值‘N’(北纬)和‘S’(南纬);5.经度的计算方法和纬度的计算方法一样;6.东西经,这个位有两种值‘E’(东经)和‘W’(西经);7.速率,这个速率值是海里/时,单位是节,要把它转换成千米/时,根据:1海里=1.85公里,把得到的速率乘以1.85;8.航向,指的是偏离正北的角度;9.日期,这个日期是准确的,不需要转换;实测的数据示例如下:$GPRMC,031604.719,A,3201.3255,N,12054.1669,E,20.15,298.21,250411,,,,*11则表示日期11年4月25日,UTC时间为3时16分4.719秒,北京时间11时16分4.719秒。地点是北纬32度1.3255分,东经120度54.1669

第四章系统数据的压缩与处理本章主要阐述对微处理器中的数据如何进行处理,并对各存储单元中的数据如何存放、处理、调用进行了说明。为了提高数据运算效率、降低硬件成本,对数据进行了压缩处理。4.1数据的压缩与预存在公交车报站器的系统中,判别车辆行驶的位置以及播报站名和显示信息时,需要对播报点的语音编码、文字信息、经纬度坐标、方向、运行状态进行预存。为了节约存储空间,必须对数据进行预处理与压缩。4.1.1凌阳音频的压缩与存储凌阳SPCE061A是16位单片机,具有DSP功能,有很强的信息处理能力,最高时钟频率可以达到49MHz,具备运算速度高的优势等。这些无疑为语音播放提供了条件。凌阳常用的音频形式和压缩算法:1.波形编码:sub-band即SACM_A2000。特点:高质量、高码率,适于高保真语音和音乐。本方案采用该编码方式。2.参数编码:声码器(vocoder)模型表达,抽取参数与激励信号进行编码。如:SACM_S240。特点:压缩比大,计算量大,音质不高,廉价。3.混合编码:CELP即SACM_S480。特点:综合参数和波形编码之优点。除此之外,还具有FM音乐合成方式即SACM_MS01。在此系统中,可由使用计算机预先将要播报的报站、广告、音乐、提示语等音频信息录制属性为8.000KHz,16位,单声道,15KB/秒的wav格式语音文件,然后使用凌阳音频压缩工具将该音频文件压缩成A2000的凌阳音频格式。最后利用凌阳ResWriter工具将其烧录到SPR4096存储单元中。4.1.2显示文字信息的压缩与存储首先利用DMTool工具进行字模提取,将要显示的文字信息利用凌阳ResWriter工具将其烧录到SPR4096存储单元中,再通过凌阳SPCE061A单片机编程控制SPLC501液晶显示屏显示文字信息。如图4-1所示为SPLC501液晶显示屏示例,整个演示程序的演示过程中,无需用户进行操作。程序初始运行时,会将液晶屏初始显示为黑白相间的横线,随后,将演示画点、ASCII码字符显示、画矩形、字符串显示、画圆、画直线、汉字显示以及滚屏显示等;演示最后的环节为滚屏显示。图4-1“凌阳科技”的显示图4.1.3定位信息的压缩与存储由于我国陆地地处东经73度到136度之间,所以在该系统设计中将采集到的经度数据首先减去73度,变换使得经度范围在0-63度之间。对经纬度值的预存可以使用存储每次的增量值的办法,这样可使数据长度变短,但处理起来要麻烦一些,并且可能产生误差积累;另外一种方法就是存储变换后的绝对经纬度值,这样虽然数据略长一些,但处理起来比较简单。经过权衡,本例使用存储变换后的绝对经纬度值。GPS提供的经纬度为1/10000分,实际上它的最低位值,是不稳定的,所以现只取到1/1000分。由于地球的半径约为R=6378137m,这样每1/1000分所对应的弧长约为:2πR/(360度×60(分/度))/1000≈1.86m,所以这里只取小数点后3位。以1/1000分为单位,经度的最大值为63×60×1000=3780000。我国纬度的最高值不超过北纬60度,同样以1/1000分为单位,最大值为60×60×1000=3600000,经纬度以二进制形式存储各用24位((3个字节)是足够了。经纬度共需要6个字节即可。方向数据,GPS可提供1/10度的精度,实际使用中以2度为单位已经足够了,所以对采集的数据整数部分除以2,范围在0-180之间,这样只须1个字节就可以了。4.2GPS距离差距的处理与识别由于一般车辆行使的范围都是比较小的,所以可以将经纬度直接看作直角坐标来处理。GPS距离的差距测算有如下两种方法:方案一:用距离长度测算法。设预存的经度为,预存的纬度为,车辆位置实时采集的经度为x,纬度为y。根据距离公式,两点间的距离为:×1.86m如果二将距离控制在小于20m(实际要求10m)进行播报,则20/1.86≈10.75,这也就是说车辆的位置(x,y)与预存的位置(EQ,)之间的值小于10.75即满足播报的条件,由于单片机对开平方运算较为复杂,故两端平方后得:<115,实际处理时,当(x-),(y-)只有两个值均小于10.75时,才需要计算是否满足上式,当满足上式时即达到了播报的距离。方向的判别主要用于往返同一站点,在不同方向的运行的状况,所以要求的精度并不高,只要在预存的方向值的基础上±15(30°)范围内即可。再加上运行状态等数据的识别,即可准确的进行播报。方案二:区域范围估算法。我们此次设计采用这种方法。它只利用固定站点设计,在站点附近采取站点GPS数据信息,将其设置为预定值的办法,在站点附近自动报站的模式。在实测中对于距离误差的处理采用模糊估算的办法,采用经度[E-0.05,E+0.05]距差设计,纬度[N-0.05,N+0.05],这样的一个矩形区域内测算的办法,保证在站点附近的报站播报。方案一的优点是测量准确,按距离播报,可以预知前方到站距离和大概时间,缺点是实现复杂,计算量大;方案二可以简化设计过程,容易实现,虽误差较大,但对于本次设计要求并不要求高精度定位的情况已完全可以满足,并且误差可以通过利用GR87的高精度差分测量得到抑制。

第五章系统软件设计系统软件部分主要是针对系统控制核心SPCE061A单片机的程序设计,采用汇编语言和C语言两种语言进行开发设计,使用凌阳自行研发设计的16位单片机开发环境IDE,此工具支持Windows环境下操作,支持标准C语言和汇编语言,集编译、编程、链接、调试和仿真于一体,应用方便简单易学,同时还提供大量的编程函数库,大大加快了软件开发的进程。整个软件系统完成的功能在程序中分为如下文件实现:main.c文件:整个工程的主文件,负责调用相关函数完成相关功能。ISR.c文件:此文件中包含所有工程中要调用的中断程序,定义中断接口和中断子程序过程及需要返回的值,包括了定时中断voidFIQ(void),在FIQ_TimerA中断中调用语音播放服务函数完成,在FIQ_TimerB中调用PWM驱动音频播放顺序;UART串行通讯中断voidIRQ7(void),IRQ7中断中接收GPS的数据,并对接收的数据进行处理,如果判断为进行播报,则调用显示程序和语音播放程序。EXT外部中断程序voidIRQ3(void)扫描键盘键盘与得到键盘程序。Gps.c文件:此文件包含LCD液晶初始化程序;GPS串口UART初始化程序;GPS数据采集获取程序,既站点信息提取。SPLC501USER.c文件:此文件中包含有与LCD点阵显示操作有关的函数,包括LCD点阵的处始化、LCD点阵的驱动、LCD点阵的显示。SPLC501USER_IO.ASM文件:此文件定义了501的操作函数,包括初始化,读、写、状态字读取、底层子模定义等。RW_4096.asm文件:与SPR4096存储器相关的操作函数,包括初始化,读、写、擦除操作等。另外将与播放语音的相关操作函数写在main.c文件中。在语音处理方面采用了凌阳科技的sacmv26e.lib函数库完成语音播放功能,只需要调用几条函数就可以播放语音。汉字字模显示保存在1.c文件中,用于LCD中汉字的显示。5.1系统主程序设计开始初始化局部变量开总中断,初始化SPR4096、串口、GPS、LCD显示、外部中断初始化GPS数据读取是否有键按下NY关闭GPS数据开始初始化局部变量开总中断,初始化SPR4096、串口、GPS、LCD显示、外部中断初始化GPS数据读取是否有键按下NY关闭GPS数据中断手动播报程序GPS自动站点播报清中断,返回图5-1主程序流程图5.2初始化程序设计系统要对SPR4096、GPS串口通讯、键盘外部输入中断初始化设置及SPLC501LCD进行初始化,程序流程图如图5-2、图5-3、图5-4、图5-5所示。设置系统时钟为49MHHH开设置系统时钟为49MHHH开始设置IOB0、IOB1为高电平输出结束初始化显示缓冲区和显示变量开始设置IOA高8位为输出口结束打开4KHz中断设置IOB7为高电平输入口(秒)—开始结束设置IOA0、IOA1、IOB2、IOB3为上拉电阻输入口开始打开EXT1、EXT2中断(IRQ3)结束图5-2SPR4096初始化图5-3串口UART中断的初始化图5-5键盘外部中断的初始化初始化键盘变量设置UART串口波特率4800打开UART中断(IRQ7),设置command1、command2,清除缓存数据显示默认汉字显示信息图5-4LCD显示初始化5.3播放语音程序设计由于语音资源存储在SPR4096上面,需要获得语音资源,关键解决语音资源的起始地址,然后通过读取函数获得语音资源。函数流程图如图5-6所示。获得语音资源语音资源解码获得语音资源语音资源解码语音播放结束YNNYN取得语音资源的开始地址和结束地址初始化放音队列与解码结束放音Y清看门狗开始判断解码队列为空?是否播放结束?是否有键按下?图5-6播放语音程序流程图5.4GPS自动报站流程图串口IRQ7中断程序就是利用串口接收GPS数据,根据NMEA0183协议提取公交车的经纬度、运动的方向和速度等信息。程序的流程图如图5-7所示。开始提取GPS中的经纬度、方向等定位信息开始提取GPS中的经纬度、方向等定位信息是’$’吗?是’G’吗?是’P’吗?是’R’吗?是’M’吗?是’C’吗?NNNNNNYYYYYY返回图5-7GPS接收数据流程图GPS自动报站的实现就是依靠GPS采集公交车实时运行的数据(x,y,n),与预存的数据(,,)进行比较,由单片机控制是否要播报语音和显示,并调用相应的操作。程序流程图如图5-8所示,其中公交车当前运行位置(x,y),站点位置(,),公交车与第i站站点信息在([x-0.01,x+0.00],[y-0.01,y+0.01])范围内时播报i站信息。采用区域播报的方式报站。是否在站点区域?内?关闭串口中断是否在站点区域?内?关闭串口中断GPS信息提取经度E,纬度NNYKey=?站点1站点k站点3站点2…将站点i的信息存入当前站单元播报:xxx车站信息打开串口,并清看门狗结束是否有键中断?YNGPS串口数据接收开始图5-8GPS自动报站流程图

第六章系统可靠性和误差分析整个系统的设计不仅要实现基本功能的实际要求,还要保障系统能够稳定的运行。本章主要讨论公交车自动报站器设计的可靠性和系统运行自动报站的误差分析。6.1系统可靠性分析1.凌阳SPCE061A单片机内嵌32K字(Word)闪存(FLASH),2K字(Word)SRAM,内置十位DAC、ADC转换器,无需外部三总线结构,极大减少了外界电磁噪声的干扰,提高系统的稳定性。2.本次设计采用SPCE061A单片机为PLCC84封装的,有15个空余脚,在使用时确保15个空余脚悬浮。3.设置复位电路,当电源失效或电压降到某一电压值以下时,产生复位信号对系统进行复位。4.在凌阳单片机不用的电源端和地端接上0.1μF或100μF的去耦电容,提高单片机的抗干扰能力。5.使用SPCE061A自带的WatchDog功能,复位时间为0.75s,以防止单片机受到干扰或程序运行混乱而陷入死循环。6.GPS信号容易受到建筑和金属的阻隔,所以应当尽量避开强磁场和高大建筑群所在地域,以减少对GPS的屏蔽。7.接地技术往往是抑制噪音的重要手段,良好的接地可以在很大程度上抑制系统内部噪音耦合,防止外部干扰的侵入,提高系统的抗干扰能力。此外设备的金属外壳和屏蔽用的导体必须良好接地;模拟地与数字地要分开,最后只在一点相连,如果两者不分,则会互相干扰。以上措施有效的保证了系统的可靠性,确保系统能够准确、可靠运行。6.2GPS误差源的分析GPS测量中出现的各种误差按其来源大致可分为三种类型:1.信号传播误差:因为GPS卫星是在距地面20000km的高空中运行,GPS信号向地面传播时要经过大气层,因此,信号传播误差主要是信号通过电离层和对流层的影响。此外,还有信号传播的多路径效应的影响;2.与卫星有关的误差:主要包括卫星星历误差、卫星钟的误差、地球自转的影响和相对论效应的影响等;3.观测误差和接收设备的误差。前两项误差是本次设计无法控制的误差,在本次设计中GPS接收设备是采用差分模式产品HOLUXGR87,此芯片误差也以固定,这里不做过多的考虑。6.3车辆行进中产生的偏差由于实际上车辆行使的路线和指定播报点总是要有一定差距的(如图6-1所示),这种情况只有在行进方向的左右两侧产生,记此偏差的最大值为,且是不会超过2m的;另一个影响因素是在运行状态下两次采集时间间隔中车辆行走距离的影响,这种影响只在行进方向的前后两个方向产生,记此偏差的最大值为,而公交车在进站前的行使速度是限制在30km/s之内的,且GPS数据采集间隔小于1s,所以两次采集时间间隔中车辆行走距离小于8.3m,≤4.15m。实际行走路线指定行走路线图6-1车辆行进中偏差分析图实际行走路线指定行走路线结合以上两种情况,产生的综合最大误差为E=≤4.61m。此值只是理论上的偏差,在实际中运行还需对系统进行动态测试,确保定位精度在规定范围以内。

第七章结论及展望在科技高速发展的今天,科技含金量高、环保型、智能型的公交设施已成为一个国家和地区发展水平和国际形象的重要衡量标准。公交车在城市交通事业中占有举足轻重的地位,它给人们外出提供了方便快捷的服务,而报站器直接影响到公交车的服务质量。公共交通必须依靠科技进步来满足日益增长的社会需求,这一点已经成为共识,其中,十分明显的趋势是客车档次在提高、数量在大幅增加,同时无人售票也是必然趋势。因此,我认为在不久之后,自动报站器将完全取代传统的人工报站,普遍使用于各大、中、小城市。以往公交车报站器的设计,司机可以通过键盘进行报站控制,通过语音和显示屏进行报站,减轻了乘务人员的负担。但在控制过程中,由于要分散司机的注意力,同时就存在着安全隐患,本次设计对以往的公交车报站器进行了改进,增加了GPS技术,使其具备手动报站和GPS自动报站两种报站方式,采用先进的卫星定位技术与凌阳SPCE061A强大的语音播报技术相结合的方式,改变了传统公交车语音报站器必须由司机操控才能工作的落后方式。进站、出站自动播报站名及服务用语,准确、及时、完全不需要人工介入,是公交车语音报站器的一项技术革命,它为公交车的安全行驶和对乘客提供报站服务及乘坐安全提供了一定的保障,实现了公交车报站器的完全智能化。本课题中公交车自动报站系统已基本做出实物,主要功能己基本实现,在GPS系统不稳定的情况下可以由键盘进行控制语音播报,达到设计要求。下一步要做工作是把该系统进一步完善,随着GPS技术的发展成熟,GPS产品成本的降低,增强GPS系统的稳定性,达到真正意义的GPS自动报站系统,符合实际应用的要求。

参考文献[1]谭博学,苗汇静.集成电路原理及应用[M].北京:电子工业出版社,2003[2]WEIHongli.Designofabusstopreporter[J].JOURNALofXI’ANINSTITUTEOFTECHNOLOGY.2003,23(3):212-214[3]韦宏利.语音芯片在报站器中的应用[J].现代电子技术.2003,(13):30-31[4]袁成.自动报站设备[J].城市公用事业.2003,17(3):42-43[5]谢广宝.公交车报站器的设计[D].山东:山东理工大学,2007[6]Tolman,BrianW.TheGPSToolkit-OpensourceGPSsoftware[M].Proceedingsofthe17thInternationalTechnicalMeetingoftheSatelliteDivisionoftheInstituteofnavigat

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论