首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 维修教程知识 > 单片机栏
基于凌阳SPCE061A单片机的音控小车的设计
来源:本站整理  作者:佚名  2009-10-26 11:30:37




    语音识别主要分为“训练”和“识别”两个阶段。在训练阶段,单片机对采集到的语音样本进行分析处理,从中提取出语音特征信息,建立一个特征模型;在识别阶段,单片机对采集到的语音样本也进行类似的分析处理,提取出语音的特征信息,然后将这个特征信息模型与已有的特征模型进行对比,如果二者达到了一定的匹配度,则输入的语音被识别。
    语音识别小车过程分为以下4大部分:
    (1)初始化部分:初始化操作将 IOB8~IOB11 设置为输出端,用以控制电机。必要时还要有对应的输入端设置。整个小车的行驶状态由2个电机来控制,电机1控制左拐和右拐,电机2控制前进、倒退。具体行使状态控制如表1所示。

    (2)训练部分:训练部分完成的工作就是建立语音模型。程序一开始判断小车是否被训练过,如果没有训练过则要求对其进行训练,整个训练过程共有 5 次,依次为:名称—前进—倒车—左拐—右拐。在训练成功之后将训练的模型存储到 FLASH,在以后使用时不需要重新训练;如果已经训练过会把存储在 FLASH 中的模型调出来装载到辨识器中。
    (3)识别部分:在识别环节当中,如果辨识结果是名字,停止当前的动作并进入待命状态,然后等待动作命令。如果辨识结果为动作指令,小车会语音告知相应动作,并执行该动作,在运动过程中可以通过呼叫小车的名字使小车停下来。
    (4)重训操作:考虑到有重新训练的需求,设置了重新训练的按键(61 板的 KEY3),循环扫描该按键,一旦检测到此键按下,则将擦除训练标志位(0xe000 单元),并等待复位。复位后,程序重新执行,当检测到训练标志位为 0xffff 时会要求重新对其进行训练。小车训练流程图如图5所示[5]



2. 2系统的软件设计流程图
    系统的软件设计流程如图6所示。本设计采用C语言和汇编语言联合编程的方法。其中,C语言作为主程序编程,可以充分利用C语言的优点,调用其他程序模块。汇编语言主要用在子程序的模块中,利用它的中断、延时等方面的优点。汇编语言的主要优点是占用硬件资源少、程序直接对硬件操作加快了处理速度。本设计的所有程序均在凌阳单片机集成开发环境IDE中进行。本系统的软件部分采用模块化程序结构,其软件设计主要包括初始化、系统主程序、语音提示程序、小车微调程序等部分。


           
    本文设计并制作的小车以凌阳单片机为控制核心,完成了语音辨识功能,并在实现语音控制的基础上扩展了SPCE061AI/O接口,实现了紧急避障微调功能,能够按照语音指令很好地完成前进、倒车、左转、右转以及倒库。能够识别人的语音命令,并根据命令的含义执行相应的动作。整个部分设计合理,小车运行正常。

上一页  [1] [2] 

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)

推荐阅读

图文阅读

热门阅读

Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:205,261.70000 毫秒