欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    公交车自动报站系统概要.docx

    • 资源ID:14804860       资源大小:539.99KB        全文页数:35页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    公交车自动报站系统概要.docx

    1、公交车自动报站系统概要西安文理学院机械与材料工程学院课程设计报告专业班级 测控1301 课 程 专业课程设计 题 目基于FPGA的公交车自动报站系统设计学 号 0703130117 学生姓名 毛铭 指导教师 师超 2016年 11月西安文理学院机械与材料工程学院课程设计任务书学生姓名毛铭专业班级测控1301学 号0703130117指导教师师超职 称讲师教研室测控课 程专业课程设计题 目基于FPGA的公交车自动报站系统设计任务与要求(1)设计方案选择(2)系统组成和原理(3)绘制电路原理图(4)设计软件流程图(5)撰写设计报告开始日期 2016年 11月 7日 完成日期 2016年 12月 2

    2、日 指导教师签名 2016年 11月 3日摘要传统的公交车语音报站系统常采用微处理器进行控制,其缺点是可靠性低、维护和升级不方便。目前,许多中等以上城市的公交车上都实现了无人售票,公交司机对行车安全责任也就更大,这就迫切需要在每辆公交车上安装自动报站系统。针对中小城市公交系统的特点,使用FPGA技术设计出低成本自动报站器,系统硬件电路简单,调试和升级方便,可靠性高,实用性强。关键词:FPGA;仿真;自动报站;VHDL语言1 概述1.1技术简介 FPGA是英文FieldProgrammableGate Array的缩写,即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步

    3、发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。FPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样一个新概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输出输入模块IOB(Input Output Block)和内部连线(Interconnect)三个部分。2 设计要求及思路2.1基本要求 针对中小城市公交系统的特点,使用FPGA技术设计出低成本的自动报站系统,可兼有手动和自动两种报站方式的功能。熟练使用FPGA器件,掌握VHDL程序设计,

    4、通过对公交车自动报站系统的设计学会分析以及设计一个数字系统。2.2 设计思路 设计流程图如下:图2.2 流程图3 设计原理3.1 ISD1420单片20秒高保真语音录放IC ISD1420为美国ISD公司出品的单片语音录放电路。内部电路由振荡器、语音存储单元、前置放大电路、抗干扰滤波器和输出放大器组成。最小的录放系统仅由一个麦克风、一个喇叭、两个按钮、一个电源和少数电阻电容组成。录音内容存入E2PROM永久存储单元,具有零功率信息存储功能,这个独一无二的方法是借助于美国ISD公司的专利直接模拟存储技术(DAST TM)实现的。利用它,语音和音频信号被直接存储,以其原本的模拟形式进入E2PROM

    5、存储器。直接模拟存储允许使用一种单片固体电路方法完成其原本语音的再现,不仅语音音质优美,而且具有断电语音保护功能。3.1.1 特点所需外围元件少,电路简单,操作方便。采用直接模拟量存贮技术DAST(Direct Analog Strorage Technology),再现优质原声,没有常见的背景噪声。零功率信息存贮,省掉备用电源。信息可保存10年以上,可反复录放达10万次之多。语音固化无需专用编程或开发装置。较强的选址能力,可把存储器分成160段来进行管理。具有自动省电模式,此时仅需0.5A的保持电流。单一电源供电。3.1.2 电气特性工作电压VDD:5V.静态电流ISTB:典型值 0.85A

    6、,最大值为2A.工作电流IOP:典型值15mA,最大值30mA3.1.3 电路图形符号及管脚功能说明 图3.1 电路图形符号各管脚功能如下表:表3.1 ISD1420管脚功能表名称管脚功能名称管脚功能A0A516地址ANA OUT21模拟输出A6、A79、10地址(MSB)ANA IN20模拟输入VCCD28数字电路电源AGC19自动增益控制VCCA16模拟电路电源MIC17麦克风输入VSSD12数字地MIC REF18麦克风参考输入VSSA13模拟地PLAYE24放音(边沿触发)SP+、-14、15喇叭输出+、-REC27录音XCLK26外接定时器(可选)RECLED25发光二极管接口NC7

    7、、8、11、22空脚PLAYL23放音(电平触发)各管脚功能描述如下:1).A0A7地址输入端。ISD1410除A3,其余均为空脚(NC)。ISD1420的地址输入端具有两个功能:作为信息地址线用(A0A7LOW);作为操作模选择用(A6和A7HIGH)。2).MIC驻极体话筒输入端。驻极体话筒通过电容C将音频信号耦合到该输出端,C的电容值与该端内阻(10K)决定ISD1420通频带下限频率。3).MIC REF驻极体话筒参考输入端。4).ANA IN模拟信号输入端。该端经C、R与ANA OUT端相连,语音通频带下限频率取决于C、R和该端输入阻抗(2.7k),除MIC端,该端亦可作为模拟信号输

    8、入端。5).ANA OUT来自驻极体话筒的输入信号被放大输出至该端,前置放大器的电压增益取决于AGC电平,对于小信号输入电平,其最大增益为24dB。6).AGC自动增益控制端。AGC可动态地调整前置放大器增益,而且可扩展加大MIC输入端的非失真信号的范围。AGC的响应时间是由AGC内阻抗(5k)和外部电容C来决定的;释放时间是C和R的RC时间常数决定的。7).SP、SP喇叭输出端。该端可直接驱动16喇叭,可利用单端输出驱动喇叭,也可采用双端输出驱动喇叭。双端输出信号的功率是单端的四倍。单端输出则需要该脚与喇叭之间串接100F的交流耦合电容。8).XCLK外接时钟振荡端。该端在实际应用中通常接地

    9、,如果需要更高的计时精度,该端可外接时钟电路。9).RECLED发光二极管接口。当录音时,该端输出低电平,发光二极管LED亮。当录音停止或存储器录满时,LED熄灭。10).PLAYE边沿触发放音控制端。当该端输入一低脉冲,电路即进入放音状态,直到结束,电路自动进入准备状态。11).PLAYL电平触发入音控制端。当该端电平变低并保持,电路进入放音状态,放音结束后电路进入准备状态。12).REC录音触发端。录音期间该端必须一直保持低电平。REC键优先于PLAYE或PLAYL其中一个放音键。如果在放音期间,遇REC接低电平,放音立即停止,自动进入录音状态。13).VSSD、VSSA数字地和模拟地。1

    10、4).VCCD、VCCA数字电路电源正端和模拟电路电源正端。3.1.4 操作模式应用 ISD1420地址输入端具有双重功能,根据地址中的A6、A7的电平状态决定A0A7的功能。如果A6、A7有一个低电平,A0A7输入全解释为地址位,作为起始地址用,此时地址线仅作为输入端,在操作过程中不能输出内部地址信息。根据PLAYE、PLAYL或REC的下降沿信号,地址输入被锁定。如果A6、7同为高电平时,它们即为模式位。 使用操作模式有两点要注意:1)所有初始操作都是从0地址开始。0地址是ISD1420存储空间的起始端,后面的操作可模拟模式的不同,而从不同的地址开始工作。当电路中录放音转换将进入省电状态时

    11、,地址计数器复位为0。2)当PLAYE、PLAYL或REC变为低电平,同时A6、A7为高电平时,执行地址线所对应的操作模式。这种操作模式一直执行到下一个低电平控制输入信号出现为止。操作模式可以与微控制器一起使用,也可用硬件连线得到所需系统操作。A0:信息检索(仅用于放音工作状态)。不知道每个信息的实际地址,A0使操作者快速检索每条信息,A0每输入一个低脉冲,可使利内部地址计数器跳到下一个信息。这种模式仅用于放音工作,通常与A4操作同时应用。A1:用于删除EOM标志(仅用于录音工作状态)。A1可使录入的分段信息成为连续的信息,使用A1可删除掉每段中间信息捷的EOM标志,仅在所有信息后留一个EOM

    12、标志。当这个操作模式完成时,录放的所有信息就作为一个连续的信息放出。A3:用于循环重放信息(仅用于放音工作状态)。A3可使存于存储空间始端的信息自动地连续重放。一条信息可以完全占满存储空间,那么循环就可以众头至尾进行工作,并由始至终反复重放。A4:连续寻址。在正常操作中,当一个信息放完,遇到一个EOM标志时,地址计数器就会复位。A4可防止地址计数器复位,使得信息连续不断地放出。A2、A5: 未用3.2语音典型电路图图3.2 ISD1420典型应用电路3.3 语音芯片的分段存储设计为了能正确地进行语音播报,必须将20秒的语音芯片分段存储所需的内容,然后根据每条播报信息的要求组合后进行播报。根据分

    13、析,一个全长九站的线路,语音信息分18段存储即可,分段表如下:表3.3 语音芯片分段存储地址表地址(二进制)地址(十进制)单元数时间长度(s)内容00-010-120.25空白02-072-760.75“前往”08-0F8-1581“北门”10-1716-2381“北大街”18-1F24-3181“钟楼”20-2732-3981“西大街”28-2F40-4781“水司”30-3748-5581“太白南路”38-3F56-6381“沙井村”40-4764-7181“电子城”48-4F72-7981“终点站”50-5780-8781“所有”58-5F88-9581“到了”60-6796-10381

    14、“下一站”68-6F104-11181“需要在”70-81112-129243“下车的乘客请下车”74-81*116-129243“(下车)的乘客请下车”82-87116-129243“大学城”88-9F136-159243“的乘客请做好准备”其中74-81是70-81的子集,属于同一个存储段。3.4 控制电路CPLD设计系统的几乎所有控制逻辑均由CPLD实现,其逻辑框图如图3.3所示。图3.3 CPLD控制逻辑框图 其中ADD是加计数按键输入;CLEAR是复位输入;REPEAT是重复播报按键输入;CLK16MHz是时钟输入端,信号频率为16MHz;PLAY_END是ISD1420的放音结束信

    15、号,该信号是低有效;P_N_SELECT是方向选择输入端,当该输入端为低电平时,播报信息是正向播报,反之,当为高电平时,播报信息是逆向播报;SUB是减计数按键输入。PLAY_E是触发语音播放的输出端;A7:0是地址输出端,用于给语音芯片播放时提供语音地址;BCD3:0是驱动显示译码的输出端,用于同步显示汽车到站信息。 CPLD控制逻辑电路的内部结构如图4所示。系统工作控制过程如下:汽车正向行驶时将P_N_SELECT置为低电平,当需要播报语音信息时,按下ADD键即可。注意,每按一次ADD键,播报的语音信息就自动加1,并立即播报两次,所以正常情况下只需按ADD键即可。如果出现堵车等特殊情况,需要

    16、再次播报已经播报过的信息,驾驶员只需按下REPEAT键即可,该键可任意次重复执行。如果出现汽车站点与播报信息错位的情况,则可以通过连续按ADD键快进或连续按SUB键快退进行调整。时钟信号的作用是用于产生按键去抖动的50Hz信号和延时用的1kHz信号。 PLAY_END输入端不是一个按键输入,而是语音芯片的输出端,是低有效,该信号有效时表示当前播报的一段语音信息已经结束,利用该信息去触发下一段语音信息的播报,就可以使需要播报的一条完整的语音信息连续流畅地播放出来。一条完整的语音信息由8段组成,如果每一条语音信息播报两次,则需要一个16进制的计数器,如图中的COUNT_16模块,也就是图中的I20

    17、。 图3.4 CPLD控制逻辑顶层电路图 一条语音信息连续播放的原理如下:任何时候只要按下ADD、SUB、REPEAT、CLEAR四个键中的一个,由于七输入或门I35的作用都会触发一次语音的播报,且存储语音信息的高5位地址已经确定,其中ADR7由P_N_SELECT确定,ADR6:3由双向计数器COUNT16_U_D确定,所以按键ADD可以使ADR6:3加1以指向下一条语音信息地址表的存储位置,同理按键SUB可以使ADR6:3减1以指向上一条语音信息地址表的存储位置,而REPEAT将不改变ADR6:3以指向当前条语音信息地址表的存储位置,按键CLEAR可以使ADR6:3全为0以指向第一条语音信

    18、息地址表的存储位置。按键ADD、SUB、REPEAT、CLEAR都有3个功能,第一个功能是前面讲的修改ADR6:3,第二个功能是使16进制计数器I20清零以便从该条信息的第1段开始播放,第三个功能是通过I35产生语音播放信号PLAY_E,该信号连接到语音芯片的边沿触发放音控制端PLAYE,使语音芯片开始播放语音信息。当第1段语音信息播放完后,ISD1420将输出PLAY_END信号,PLAY_END信号作为16进制计数器的CLK输入端将使I20计数为0001,该计数器的低3位输出作为存储器的低3位地址输入将指向当前条语音信息的第2段,同时PLAY_END信号通过I32延时后经I35还将产生语音

    19、播放信号PLAY_E,该信号作用于语音芯片ISD1420后又使语音芯片开始播放语音信息,但这次播放的是第2段语音信息。I32延时的目的是保证在PLAY_E信号有效时,PLAY_END已经使16进制计数器完成计数。以此类推,第2段播放完成后又将播放第3段、第4段直到第8段。当第8段播放完后I20的输出为1000,由于计数器的最高位未用,所以语音播放又将从该条的第1段重复播放,接下来是第2段、第3段直到第8段。当第二次的第8段播放完后I20的输出变为0000,因此16进制计数器产生的进位信号CO将屏蔽PLAY_END,使语音播放停止。这样就达到了每条语音信息重复播放两次的目的。 值得注意的是,七输

    20、入或门I35除了对ADD、SUB、REPEAT、CLEAR和PLAY_END敏感外,它还有两个输入端,分别接的是16进制双向计数器的CO与BO,正常工作时CO与BO都为0,所以不产生任何影响,但当16进制计数器产生了进位CO或借位BO时,将封锁I35使之不能产生PLAY_E信号,即当汽车运行到终点站后,语音播报就将停止,这样就可防止语音播报器又从头播报。因为这样的播报是错误的。正确的播报应该是改变播报的方向重新播报。因此,只有当按下CLEAR键后,CO或BO才会消失,语音播报才会重新正常地工作。3.4.1 16进制双向计数器COUNT16_U_D 该模块有3个输入信号和三个输出信号,其中一个输

    21、出信号为逻辑向量输出信号。该逻辑向量输出信号为Q3.0,它是16进制计数器的BCD码输出信号,由4位BCD码组成,代表计数器的计数值。另两个输出信号分别是进位输出信号CO和借位输出信号BO。每当加计数从1111变为0000后就使进位输出CO为高电平,每当减计数从0000变为1111后就使借位输出BO为高电平。CP_D是减法计数器的计数输入信号,CP_U是加法计数器的计数输入信号,RD是高有效计数器异步清零信号。16进制双向计数器的工作时序如图5所示。从图中可以看出计数器是双向计数的,在CP_U的作用下是加计数,在CP_D的作用下是减计数,并且不管是加计数还是减计数只要产生了进位信号CO或借位信

    22、号BO计数器都将停止计数,直到异步清零信号RD有效后,才会重新开始计数。图3.5 16进制双向计数器工作时序3.4.2 16进制计数器COUNT_16 该模块有两个输入信号和两个输出信号,其中一个输出信号为逻辑向量输出信号。该逻辑向量输出信号为Q3.0,它是16进制计数器的BCD码输出信号,由4位BCD码组成,代表计数器的计数值。另一个输出信号是进位输出信号CO。每当计数到1111后就使进位输出CO为低电平。clk是计数器的计数输入信号,clear是高有效计数器异步清零信号。16进制计数器的工作时序如图3.6所示。图3.6 16进制计数器工作时序3.4.3 按键处理KEYIN 该模块有4个输入

    23、信号和三个输出信号,其中一个输入信号为时钟输入信号,其余三个输入信号为按键输入,即key1、key2和key3。输出信号out1、out2和out3分别是三个输入信号的延时去抖动输出信号。延时的长短与输入时钟的周期有关。按键处理的工作时序如图7所示。从图中可以看出按键的抖动被彻底地去掉了。通常按键的抖动时间不大于10ms,因此为去抖动目的输入时钟信号的频率可取50Hz,如本例中的I7和I28,而如果仅仅是延时目的,则输入时钟的频率只与所需延时的长短有关,如本例中的I32。图3.7 按键处理模块工作时序图3.4.4 分频模块COUNT_X 该模块有一个输入信号和两个输出信号,输入信号为16MHz

    24、 时钟输入信号,输出信号为系统所需的1kHz和50Hz信号,即CLK1kHz、CLK50Hz。通常按键的抖动时间不大于10ms,因此为去抖动目的输入时钟信号的频率可取50Hz,延时输入时钟的频率只与所需延时的长短有关,如本例中选用延时输入时钟的频率为1kHz。分频模块的工作时序如图3.8所示。图3.8 分频模块工作时序图3.4.5 256字节只读存储器ROM256 8 该模块有三个输入信号和一个输出信号,其中两个输入信号为存储器使能信号g1和g2,另一个输入信号为存储器地址输入信号,即ADR7:0,此为8位逻辑向量,因此存储器的寻址能力为256,即存储器有256个存储单元。输出信号为8位宽度的

    25、数据输出。本系统中存储器用于存储语音信息播放时的分段地址。语音芯片ISD1420的分段地址为8位,所以这里设计的存储器的数据宽度也为8位。存储器模块的工作时序如图3.9所示。图3.9 存储器模块工作时序图 存储器分配原理是这样的,根据分析,每一条播报信息可以又8段组成,因此每一条语音信息占用8个存储单元,这8个存储单元分别存储8段语音信息的在语音芯片中的存储地址。总共9个站,除去起点站外,需要播报的只有8个站。由于每个站需要播报两次,因此共需报站16次。第一次播报在汽车离开上一站的时候,告诉乘客下一站是什么站,提醒需要下车的乘客作好准备,第二次播报在汽车到站以后,告诉乘客什么站已经到了,该下车

    26、的乘客请下车。从上面的分析可见,汽车从起点站运行到终点站的过程中,需要播报16条信息,每条信息由8段组成,因此共需要16 8=128个存储单元。汽车运行到终点站后,还会原路返回。如果将前面运行的线路定义为正向行驶,那么原路返回的运行线路就定义为反向行驶。由于反向行驶时播报的内容和顺序不能与正向行驶的公用,因此反向行驶的播报内容也必须单独存储,所以,整个系统所需存储器容量为256字节。 如下是只读存储器存储内容分配表,正向播报时ADR7=0,所以占用的是低128个存储器单元,反向播报时ADR7=1,所以占用的是高128个存储器单元。ADR6:3为0000时唯一确定了8个存储器单元,这8个单元由低

    27、3位地址ADR2:0确定。下面的表中每一行括号中的8个数值就是在ADR7和ADR6:3确定后的一条播报语音信息中组合的8段语音段的地址表。其中的“ ”表示空白语音,用于停顿。正向播报ADR7=0ADR6:3:0000 - (0 96 8 0 2 0 8 136) “下一站”“北门” “前往” “北门”“的乘客请做好准备”ADR6:3:0001 - (0 8 88 0 104 8 0 112) “北门”“到了” “需要在”“北门” “下车的乘客请下车”ADR6:3:0010 - (0 96 16 0 2 0 16 136) “下一站”“北大街” “前往” “北大街”“的乘客请做好准备”ADR6:

    28、3:0011 - (0 16 88 0 104 16 0 112) “北大街”“到了” “需要在”“北大街” “下车的乘客请下车”ADR6:3:0100 - (0 96 24 0 2 0 24 136) “下一站”“钟楼” “前往” “钟楼”“的乘客请做好准备”ADR6:3:0101 - (0 24 88 0 104 24 0 112) “钟楼”“到了” “需要在”“钟楼” “下车的乘客请下车”ADR6:3:0110 - (0 96 32 0 2 0 32 136) “下一站”“西大街” “前往” “西大街”“的乘客请做好准备”ADR6:3:0111 - (0 32 88 0 104 32 0

    29、 112) “西大街”“到了” “需要在”“西大街” “下车的乘客请下车”ADR6:3:1000 - (0 96 40 0 2 0 40 136) “下一站”“水司” “前往” “水司”“的乘客请做好准备”ADR6:3:1001 - (0 40 88 0 104 40 0 112) “水司”“到了” “需要在”“水司” “下车的乘客请下车”ADR6:3:1010 - (0 96 48 0 2 0 48 136) “下一站”“太白南路” “前往” “太白南路”“的乘客请做好准备”ADR6:3:1011 - (0 48 88 0 104 48 0 112) “太白南路”“到了” “需要在”“太白南路” “下车的乘客请下车”ADR6:3:1100 - (0 96 56 0 2 0 56 136) “下一站”“沙井村” “前往” “沙井村”“的乘客请做好准备”ADR6:3:1101 - (0 56 88 0 104 56 0 112) “沙井村”“到了” “需要在”“沙井村” “下车的乘客请下车”ADR6:3:1110 - (0 96 72 0 64 0 80 136) “下一站”“终点站” “电子城” “所有”“的乘客请做好准备”ADR6:3:1111 - (0 72 64 0 88 0 80 112) “终点站”“电子城” “到了” “所有”“(下车)的乘客请下


    注意事项

    本文(公交车自动报站系统概要.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开