彭湘湖毕业设计终稿2改动 版LHP.docx
《彭湘湖毕业设计终稿2改动 版LHP.docx》由会员分享,可在线阅读,更多相关《彭湘湖毕业设计终稿2改动 版LHP.docx(29页珍藏版)》请在冰豆网上搜索。
彭湘湖毕业设计终稿2改动版LHP
学科分类号:
08
湖南人文科技学院
本科生毕业设计
题目:
基于单片机的公交车报站
系统设计
学生姓名:
彭湘湖学号:
09421319
系部:
通信与控制工程系
专业年级:
自动化2009级
指导教师:
赵志刚
职称:
助教
湖南人文科技学院教务处制
湖南人文科技学院本科毕业设计诚信声明
本人郑重声明:
所呈交的本科毕业设计,是本人在指导老师的指导下,独立进行研究工作所取得的成果,成果不存在知识产权争议,除文中已经注明引用的内容外,本设计不含任何其他个人或集体已经发表或撰写过的作品成果。
对本文的研究做出重要贡献的个人和集体均已在文中以明确方式标明。
本人完全意识到本声明的法律结果由本人承担。
作者签名:
二○年月日
基于单片机的公交车报站系统设计
摘要:
随着我国经济的快速发展和城市化进程的加快,城市人口日益增多,机动车数量急剧上升,城市交通压力越来越大,发展公共交通事业势在必行,是解决我国交通问题的重要措施。
公交车报站系统是公共交通系统的一个重要的组成部分,设计先进的报站系统是公共交通事业的一个重要的组成部分,能为广大居民乘车提供优质的服务,提高公交系统的服务水平。
本设计是以ATMAGE16位单片机为主控芯片,结合按键控制模块、I/O模块为一体的公交语音报站系统。
在这个设计中,采用了ISD4004语音芯片,通过单片机的I/O口连接ISD4004并且控制此芯片。
此设计采用射频识别技术实现对站台的检测,可以实现自动报站和按键报站,报站系统实现了播报语音高质量话、下载语音便捷化和报站自动化。
通过验证此系统可以极大的提高报站效率,减轻司机的工作压力,给安全行车提供了保证。
为城市公交事业的发展做出了突出的贡献。
关键词:
ATMAGE16;ISD4004;射频识别技术
BusStopAnnouncementSystemBasedonSingleChipDesign
Abstract:
Withtherapiddevelopmentofoureconomyandthespeedingupofurbanization,urbanpopulationincreased,motorvehiclenumberhasrisensharply,theurbantrafficpressureismoreandmorebig,thedevelopmentofpublictransportenterpriseisimperative,isanimportantmeasuretosolvethetrafficproblemsinourcountry.Busstopssystemisthepublictransportsystemisanimportantpartoftheadvanceddesignofthestopssystemisanimportantpartofpublictransportation,forthemajorityofresidentstoprovidequalityservices,improvetheservicelevelofpublictransportsystem.ThisdesignisbasedonATMAGE16bitssinglechipmicrocomputerasmaincontrolchip,combiningwithkeycontrolmodule,I/Omodulefortheintegrationofvoicebusstopssystem.ISD4004voicechipwasadoptedinthisdesign,throughtheMCUI/OmouthconnectionthischipISD4004andcontrol.ThisdesignUSEStherfidtechnologytorealizedetectionofplatform,canrealizeautomaticstopsstopsandbuttons,stopssystemrealizedthehighqualitybroadcastvoicemessage,downloadspeechfacilitationandstopsareautomated.Byverifyingthissystemcangreatlyimprovetheefficiencyofthestops,reducethedriver'sworkingpressure,providesguaranteeforsafedriving.Forthedevelopmentofcitybushasmadetheprominentcontribution.
Keywords:
ATMAGE16;ISD4004;RadioFrequencyIdentificationTechnology
第1章绪论
1.1选题的依及课题的意义
我国以2010年11月1日零时为标准时点进行了第六次全国人口普查。
2011年汇总的主要数据:
全国总人口为1370536875人。
这其中同2000年第五次全国人口普查相比,城镇人口增加207137093人,乡村人口减少133237289人,城镇人口比重上升13.46个百分点,城市化进程加快。
城市人口日益膨胀,机动车辆急剧增加,城市交通压力越来越大。
在城市中机动车的尾气成了污染环境的主要污染源,很多国家提倡人们乘坐公共汽车出行以减少污染,由此以来提倡“绿色出行”呼吁乘坐公交车成为了解决交通拥挤与环境污染的一项重要措施。
发展公共交通事业是为居民提供安全有序的出行方式的不可替代的途径,公共交通管理的高质量和公共服务水平的人性化是吸引居民采用公交出行的有效途径,是中国解决交通问题的重要措施。
公交车报站系统是公共交通系统的一个重要的组成部分。
设计先进的公交车报站系统能为广大居民乘车提供优质的服务,提高公交系统的服务水平。
本设计是针对娄底公交系统10路车而设计的自动报站系统,可以提高公共交通管理质量和公共服务水平,能为广大居民乘坐公交时提供优质的服务,提高公交系统的服务水平。
1.2国内外研究现状
1.2.1国内研究现状
1908年中国的第一部电车开始运营,结束了中国没有公交车的历史。
此后公交车随着城市人口的变化不断的发展。
公交车从之前的售票服务,人工报站到现在的无人售票的状况。
在不同的城市,公交车报站也略有差别。
主要应用的是自动报站、手动电子报站和人工报站。
在大城市,人口流动大,外来人员多,需要的公交语音报站的功能是很强大的。
除了需要准确的播报各个站点之外,还可能需要播报一些站点附近的旅游景点以及购物场所。
由于车辆的来来往往太复杂,公交语音播报一般采用GPS卫星导航系统,以便于能够更加保证不分散司机的注意力。
在小城市,人口流动量小,车辆也不是很多,考虑到成本问题,公交语音播报系统会选择较为廉价的人工按键来实现。
(1)自动报站:
自动报站是现行最先进的报站方式,就是指当公交到达某一站台时,系统对站台信息进行自动采集,自动核对站台信息,确认无误以后并显示站台信息,然后再进行自动报站。
其中采用的识别技术,通常情况下是射频识别技术;
(2)手动电子按键报站:
手动电子按键报站是在传统的人工报站方式上发展而来的报站方式,就是当公交车到达某一个站台时,公交车司机通过按键对已经录音的录音器进行控制,准确无误的播放到站提示,从而有效提高服务质量;
(3)人工报站:
人工报站是最原始的报站方式,就是当公交车到达某一站台时,由公交司机或者售票员进行人工报站,提醒广大乘客按时下车。
1.2.2国外研究现状
公交车的车厢内和车厢外提供可视显示和语音报话,包括实际时间、下一站信息、停车请求等其他要让乘客知道的信息。
还有的公交语音还提供沿线信息、信息的播报。
公交报站系统在国外研究中主要有GPS全球卫星定位系统的公交语音报站系统和射频识别的自动语音报站系统。
(1)射频识别自动语音报站系统:
射频技术是一种无线通信技术,可通过无线电讯号识别特定目标并读写相关数据,而无需识别系统与特定目标之间建立机械或光学接触。
在美国公交车报站系统是通过站台的射频卡或应答器发送信号,有公交车的射频识别阅读器进行读取,然后由处理器进行处理进行语音报站;
(2)GPS全球卫星定位系统的公交语音报站系统:
1973年,美国开始研制全球定位系统GPS,经过20年的不断完善,耗资200亿美元后,该系统终于在1994年全面建成,并逐渐用于各个领域。
公交车报站系统通过GPS对公交车进行全球定位,若到达某一站台则进行相应站名的语音播报。
这种报站系统已经在美国的一些城市投入使用但投资昂贵,尤其是一些中小城市无法承受。
综合国内外的情况,基于小城市的人口流动量和车流量不是很大,为了节省成本,我认为可以采用射频识别技术通过自动报站或者按键来实现公交语音的播报。
第2章系统的方案设计
2.1系统的工作原理(已经改动-LHP)
本设计针对娄底10路公交车而设计,10路公交车起于在湖南人文科技学院后街,终点在娄底火车站,途经20个站,每到一战都会先通过射频模块将到站以后检测到的信息传送给主控制器ATMEGE16,然后ATMEGE16主控制器对相关地理位置进行信息处理和确认,主控制器再将处理以后的到站信息送往以ISD4004为核心的语音模块,最后通过ISD4004语音模块将到站的信息进行自动播放来提醒各位乘客,同时当如果到站信息播报出现误差,操作人员可以立即进行最后的纠正。
纠正的方法,我们采用最简单最常见的按键人机交互方式进行调节纠正。
在系统设计上,我们多方面考虑到人性化的因素,所以我们在系统设计过程中加入了显示功能。
显示模块将公交车车次信息、时间信息和站台信息通过LCD12864显示屏在车辆的最前方顶部位置轮流进行各种信息显示,方便乘客在乘车过程查阅。
基于这样的一个自动公交报站系统从效率和市场应用方面,可以大大提高公交事业的服务质量。
2.2系统方案设计
本设计以8位AVR系列ATMAGE16为核心,用ISD4004做语音播报,通过按键将车站信息反馈给主控制器,然后进行相应的语音播报,同时本系统设计还能具有自动播站的功能,通过射频识别技术,在站台和汽车上安装射频卡和射频识别装置,实现自动播站。
在此基础上,我们在公交车行进的过程中,系统能通过LCD1602将车次信息和时间显示给各位乘客。
整个硬件系统设计框图如下图2.1所示:
图2.1系统总体框图
2.3系统硬件选型
2.3.1主处理器选型
考虑到课程设计的需要,我们选用了性价比更高的ATMEL公司提供的8位单片机,ATMEGE系列的ATMEGE16芯片。
其采用先进的RISC结构,全静态工作,处理速度快,执行乘法操作只需两个时钟周期的硬件乘法器,工作于16Mhz时的性能高达16MIPS。
其片内具有16K字节的可编程FLASH,512字节的EEPROM,1K字节的片内SRAM,具有独立锁定位的可选BOOT代码区。
公交车报站系统设计选择ATMAGE16作为主核心处理器,主要是基于一下原因:
(1)丰富的IO资源:
显示模块和语音播报模块需要外接的IO口比较多,这就要求主处理器能够提供够用的IO资源,避免外部IO口拓展。
在这一点上ATMAGE16可以完全满足要求,因为其IO资源丰富,提供32个通用可编程IO口。
(2)大容量的片内程序存储器:
因为系统要实现自动和手动两种语音报站功能,其程序设计较为复杂,需要处理器能提供大容量的片内程序存储器。
,ATMAGE16可以满足以上要求,其能提供内部16K字节的FLASH,已经内部还具有512字节的EEPROM。
(3)低功耗:
公交车在行进中,系统可能会处于空闲状态,我们要考虑节能性。
因此本次系统设计选用的ATMAGE16能够提供正常模式,空闲模式和掉电模式等多种模式的切换。
在空闲模式和掉电模式,ATMAGE16能够将系统的功耗降到最低。
(4)丰富且稳定可靠的外部中断能力:
本系统因为其特殊性的应用场合,在汽车到站的时候要既能实现手动报站,也要能通过其射频卡的检测要能实现系统的唤醒和实现外部中断功能。
而ATMAGE16具有多路外部中断,且其外部中断具有唤醒功能。
ATMAGE16为高性能、低功耗的8位AVR微处理器,采用先进的RISC,具有131条指令,大多数指令执行时间为单个时钟周期,具有32个8位通用工作寄存器,全静态工作。
带有非易失性程序和数据存储器,16K的FLASH,512字节的EEPROM,1K的SRAM。
有两个独立的预分频器和比较器功能的8位定时器/计数器,一个具有预分频器、比较功能和捕捉功能的16位定时器/计数器,具有独立振荡器的实时计数器RTC,四通道PWM,8路10位ADC,两个可编程的串行USART,带有SPI串行接口。
ATMAGE16具有多种封装形式,本设计采用它的TQFP封装,其封装图如下图2.2所示:
图2.2ATMAGE16的TQFP封装图
2.3.2LCD显示器选型(已经改动-LHP)
基于设计的要求,我们需要选择一款显示器件作为人机交互工具。
在显示器件中,可选择的器件有数码管显示,LCD1602,LCD12864、触摸屏等多种显示器件。
但考虑到我们的应用程序场合,数码管不能显示中文,LCD1602多数用于英文场合,做中文显示需要自己做中文字库写入器内部RAM,而触摸屏价格相对来说比较昂贵,所以最适合我们需要的,性价比最高的,当属LCD12864。
因为LCD12864带中文字库,能很方便的实现中文显示,且其具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块;其显示分辨率为128×64,内置8192个16*16点汉字,和128个16*8点ASCII字符集.利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。
可以显示8×4行16×16点阵的汉字.也可完成图形显示。
如下图2.3所示为LCD12864的实物图:
(加入的实物图)
图2.3LCD12864实物图
2.3.3语音芯片选型
基于设计要求,我们需要选择一款语音芯片做我们系统的语音播报。
在这里我们提供两种语音芯片选型的方案。
方案一:
选择NV系列语音芯片。
其有多种按键,串口触发方式,可以外接功放,20秒语音长度(在6KHz采样率);PWM级别D扬声器放大器,可直接驱动一个8Ω的扬声器或典型的蜂音器,音质优美清晰;也可DAC输出;灵活的分段放音操作,通过组合可节省语音空间,最多可播放220段组合语音段;价格便宜等特点。
方案二:
选择ISD4004语音芯片。
该语音芯片工作电压低,为+3V,采用SPI通信接口,且其单片录放时间为8到16分钟,音质好,采用直接存储模拟量技术,对声音不需要经过软硬件压缩等手段,同时具有断电保存功能。
鉴于方案一的录放音时间比较短,如果需要应用场合,它需要外接存储器件,这样就会使电路设计变的复杂。
所以我们最终的方案选择为方案二。
第3章系统硬件设计
针对我自己的设计,第一部分为最小应用系统设计,主要是为主处理器设计一个简单可用型的最小系统。
例如时钟电路,复位电路,电源电路等。
第二部分为最小应用系统的系统拓展部分,主要是为了满足系统需要,在最小应用系统上拓展我们系统需要的电路,例如键盘,显示器,打印机,A/D,D/A转换器等,不过在设计电路的时候,我们需要考虑合适的接口电路。
3.1最少系统的方案设计
ATMEGE16是片内有FLASH/EPROM的单片机,因此这种芯片构成的最小系统简单、可靠。
用ATMEGE16单片机构成最小应用系统时,只要将单片机接上时钟电路和复位电路即可,如图3.1ATMEGE16单片机最小系统所示。
由于集成度的限制,最小应用系统只能用作一些小型的控制单元。
其应用特点:
(1)有可供用户使用的大量I/O口线。
(2)内部存储器容量有限。
(3)应用系统开发具有特殊性。
图3.1最小应用系统
3.1.1时钟电路
ATMAGE16内部自带时钟电路,同时其器件的时钟电路选择可以有多种,例如外部晶体/陶瓷震荡器、外部低频晶振、外部RC振荡器、标定RC震荡器、外部时钟等,我们通过控制其CKSEL3~0来进行选择系统时钟,这里我们通过对其外部接时钟电路的方法来给处理器提供可靠的时钟源。
其时钟电路设计如下图3.2所示,X1:
振荡器反相放大器和内部时钟发生电路的输入端。
X2:
振荡器反相放大器的输出端。
图3.2时钟电路设计原理图
3.1.2复位电路
ATME16要实现外部复位,需要让/RESET上的低电平持续时间大于最小时钟脉宽度时MCU复位。
其复位电路设计原理图如下图3.3所示:
图3.3外部复位电路
3.2按键控制模块设计
本设计考虑到实际应用中将遇到公交报站系统错站和误站播报的环节,所以在本系统中加入了按键功能方便实现人机控制交流,当错站和误站播报中的情况出现时,我们能人为的手动调节实现纠正。
因为人机控制交流,我们只需要能实现上下站切换就能实现正确纠正,所以本模块设计,我们只需要在系统中加入两个按键就可以实现。
其按键模块设计原理图如下图3.4所示:
图3.4按键设计原理图
3.3LCD显示模块设计
本系统设计采用LCD128x64作为显示模块的显示输出。
本模块设计采用LCD12864的8位并行数据接口,对其指令和数据的区别,通过可编程IO口控制实现高低电平的控制来传递信息给LCD12864的CS端口,对其数据的读和写,也采用通用可编程IO口来实现高低电平传递给R/W端口。
其LCD显示模块设计原路图如下图3.5所示:
图3.5LCD12864显示电路原理图
3.4语音模块设计
3.4.1ISD4004芯片简介
ISD4004系列单片语音录放电路是美国ISD公司的新一代产品,它采用了ISD公司的Chip-Corder专利技术,多级存储技术,既声音无须A/D转换和D/A转换,采用直接模拟量存贮技术,因此能够真实、自然地再现语音、音乐效果声音,避免了一般固体录音电路量化和压缩造成的量化噪声和金属声。
由于设计成和微处理器通过串行接口控制芯片的方法,使本器件引出端数减到最少。
其产品主要特点如下:
(1)单片8至16分钟语音录放
(2)内置微控制器串行通信接口
(3)3V单电源工作
(4)多段信息处理
(5)工作电流25-30mA,维持电流1μA
(6)不耗电信息保存100年(典型值)
(7)自动静噪功能
(8)片内免调整时钟,可选用外部时钟
ISD4004有多种封装形式,本设计采用28引脚的SOIC封装。
其封装图如下图3.7所示:
图3.7ISD4004的SOIC封装图
3.4.2TDA2822芯片简介
TDA2822是意法半导体(ST)开发的双通道单片功率放大集成电路,通常在袖珍式盒式放音机(WALKMAN)、收录机和多媒体有源音箱中作音频放大器。
具有电路简单、音质好、电压范围宽等特点,可工作于立体声以及桥式放大(BTL)的电路形式下。
其芯片的主要特点如下:
(1)电源电压范围宽(1.8~15V,TDA2822M),电源电压低至1.8V时仍能工作
(2)静态电流小,交越失真也小
(3)适用于单声道桥式(BTL)或立体声线路两种工作状态
3.4.3ISD4004电路设计
因为ISD4004的特殊性,设计的时候需要对其进行单独的+3V供电,所以通过ASM1117芯片对主控制电路提供的+5V的电源进行电源变换,然后对ISD4004提供电源。
在输出端,通过采用双声道小功率功放TDA2822对ISD4004的输出信号进行适当的放大,然后供给扬声器。
在ISD4004控制端,通过主控制器的SPI口用SPI协议对其进行控制。
其电路设计原理图如下图3.8所示:
图3.8ISD4004语音模块设计原理图
3.5射频模块设计
由于射频模块用于自动检测功能,要求稳定性高,其硬件调试比较困难。
所以从经济性上面来考虑,我们选择从网上购买本模块用于这次的系统设计。
本模块我们选用MIFARE522_MODULE,供电电压为+5V~+9V,模块在输出端采用USARTTTL电平输出,可以直接和核心微控制器(atmage16)连接,只要两线就可以实现通信,无需再使用电平转换电路,接口简单方便实用。
其射频模块实物图如下图3.9所示:
图3.9射频模块实物图
3.6电源模块设计
本系统采用的供电模块是电瓶供电方式,电瓶的电压输出为+12V,对整个系统我们不能对其直接使用,所以我们这里需要提供一个电源稳压电路,将+12V的输入转换成为我们需要的+5V。
我们选用的电源芯片为LM2596,LM2596开关电压调节器是降压型电源管理单片集成电路,具有很好的线性和负载调节特性。
具体稳压电路如下图3.10所示。
图3.10电源设计原理图
第4章公交报站系统的软件实现
4.1总体软件控制流程
本设计的主流程就是当公交车到达某一站时,系统自动采集站台信息,并自动显示站台信息,公交车司机根据信息判断是否按下按键,当公交车按键按下时,读取是否按下的按键有效(按键是否有效流程后面有介绍),如果有效则发送命令给管道,Mplayer音频处理,收到信号后就进行解析,然后执行指令。
如果为无效的按键则不执行。
总体软件控制流程如图4.1所示。
图4.1总体软件控制流程图
4.2按键模块流程
在按键控制部分,我们都知道按键的信号是不稳定的,我们处理按键的方式有两种,第一种是硬件处理,第二中是软件处理。
本设计采取的是软件处理的方式。
当按键按下,则触发信号,开始延时100ms,再次检测按键信号,若是按键信号仍然为按下信号,我们此时则认为此次按下为成功。
否则抛弃此次按下。
图4.2按键模块软件控制流程
4.3音频输出流程图
现有的音频解码方式有两种:
一种是硬解码,一种是软解码。
本设计采用软解码。
本设计采取的是Mplayer的开源工程。
在系统开启的过程中,首先创建一个无名管道,这个无名管道是把Mplayer的打印信息重定向到管道中去不再打印到屏幕上,使我们看到尽可能少的打印信息。
创建一个有名管道,其用来进程间的通信。
在命令发送端,将命令写到有名管道中,这时Mplayer就读取有名管道的内容,达到上一站,下一站之间的切换。
。
图4.3音频输出控制流程图
4.4命令处理流程
当接收到管道的时,Mplayer会做一些命令处理。
当接收到下一站的命令时,Mplaer会播放下一站的语音。
当接收到为上一站的命令时,Mplayer播放上一站的语音。
若接收到为退出的消息时,Mplayer退出。
否则认为一切指令为空指令。
图4.4流程图
4.5自动播放模块
自动控制的实现实际是依靠RFID射频信号的实现而实现的。
流程图如图4.5所示。
当公交车过站时,RFID会发射一个射频信号,公交车的射频接收模块则会接收信号。
接收到RFID的信号后,公交车的站台编号加一,在公交车的系统内部会判断编号是否为最大,如果最大就将公交车站台编号自动置为1,之后,公交车的显示模块将更新当前站台信息,并报站。
在没有检测到RFID信号时,公交车的自动检测模块将阻塞在接收模