引言
SPCE061A是一款16位微控制器,其高速的处理和特殊的内核结构使它能够非常快速地处理复杂的数字信号,同时其内嵌32KB的FLASH ROM和2KB的SRAM能够存储所需的数据和程序,特别是其所提供的语音识别函数可供方便地进行调用,不需要过多地考虑语音算法,为语音识别设计带来了很大的方便。本文选用SPCE061A作为该系统的控制核心,系统硬件结构如图1所示。
图1 系统硬件结构图
方案论证
主控模块和语音处理模块的选择
较MCS-51系列单片机而言, SPCE061A单片机内部集成有32KB的ROM、2KB的SRAM,更能满足软件对空间的要求,且不需要扩展相关存储器。另外,该类单片机完全支持C语言,软件编写比较方便,语音处理模块采用凌阳的语音压缩算法,也用软件来实现。该单片机内部集成有A/D、D/A转换功能,方便实现语音录放功能。
电机模块的选择
电机模块选择直流电机。与步进电机相比较而言,直流电机具有转速快、控制方便等特点,更能够满足小车较高速行驶情况的要求,如图2所示。
图2 电机控制模块原理图
测路程方案的选择
本文利用红外对管来实现对小车的路程测量。在小车的车轮转轴上安装一个不透光转盘,在转盘边缘均匀地打N个孔,当红外发射管发射的红外光经小孔照射到接收管时,接收管的反向端电平将发生变化,单片机通过检测这种电平的变化便可以自行计算出小车的运行路程。红外对管还具有体积较小、安装较霍尔传感器更方便、成本低等特点。
系统硬件结构
语音控制小车的系统硬件结构主要由两部分组成:一部分是SPCE061A精简开发板,另外一部分是电机控制板。SPCE061A精简开发板为系统主控模块,电机控制板则驱动小车的前后两个电机按系统的要求工作。
小车控制板主要包括接口模块、电机控制模块、预留传感器接口以及电源模块等几部分。其中,电源模块采用集成稳压芯片 L7805,在输出端(控制板的JP11)并接了一个470μF的去耦电容和一个 0.1μF的滤波电容,增强了系统电压的稳定性和抗干扰性能。
电机控制模块是整个控制板的核心部分,其根据61板的具体输出信号启动或停止相应的电机,并调整电机的正反转方向,实现小车的前进、倒退等功能。后电机的控制电路包括方向控制和速度控制两个单元,前电机的控制电路则只有方向控制单元。控制单元负责小车电机的正转、反转和停止三态控制。速度控制单元是扩展单元,以适应不同的场合需求。
红外对管测小车运行路程部分的原理图如图3所示。
图3 红外对管电路原理图
红外发光管D2和接收管U4安装在同一水平线上,发射管D2一直处于发射工作状态。当D2和U4间没有被挡住,即D2发射的红外线照射在U4上时,U4的2脚和3脚导通,同时2脚和1脚也导通,此时晶体管Q1的基极电压为Ub=VDD×R12/(R12+R10),Q1导通,SPEED端近似于接地,呈低电平状态。当D2和U4间被挡住时,即D2发射的红外线不能照射在U4上时,U4的2脚和3脚截止,同时2脚和1脚也截止,此时Q1的基极经电阻R12和R10接地,即基极电压为0V,此时Q1截止,SPEED端经电阻R11接到VDD,呈高电平状态。单片机通过检测这种高低电平的变化来实现小车的路程测量。