微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 智能玩具的设计-聪明宝宝

智能玩具的设计-聪明宝宝

时间:06-09 来源:互联网 点击:

1引言
智能化已成为玩具行业的新趋势,让语音技术融入到玩具中,不仅可以赋予玩具“听”“说”的交流能力,使其更加生动、智能,还有利于在儿童中普及现代科学技术,推动语音技术产业化的发展。一些领先技术被应用于今天的玩具领域如:无线电、红外通讯、传感器、语音识别等等。
本文介绍的是基于SPCE061A的一种具有语音识别功能的玩具产品,并着重介绍了软硬件设计方法。

2系统结构
硬件结构框图如图 2.1所示:主要由按键输入电路、触摸键输入电路、直流电机驱动电路、光敏器件输入电路、单片机最小系统等部分组成。


图 2.1系统整体框图

整个系统工作于4.5V电压下,由3节5号电池提供4.5V电压,经过SPY0029稳压到3.3V为单片机系统供电。 整个系统在无操作时,处于睡眠状态,当3个按键、2个触摸键被触发时,睡眠被唤醒,进入相应的操作,执行完操作后1分钟内无任何按键触发,则再次进入睡眠。光敏器件在睡眠前不断采集光线强度,如果跟环境光线有较大变化,则会进入语音识别模式,MIC、直流电机、扬声器则是各动作的相应辅助器件。

3硬件电路设计
3.1 微控制器电路
控制器采用凌阳科技公司的SPCE061A,其硬件资源分配见表 3.1。
表3.1硬件资源分配表

IO口使用情况 使用 IOA5:光敏器件输入; IOA4 ~~~ IOA3:触摸键输入; IOA2 ~~~ IOA0:按键输入; IOB9:BPWM输出口;
剩余IO及处理方式 剩余IO: IOA15~IOA6、IOB15~IOB10、IOB8 ~IOB0 处理方式: 软件上设置为输出,输出低电平;
Timer使用情况 TimerA 训练过程、放音时使用
TimerB BPWM输出频率的控制以及占空比的设置
ADC使用情况 使用6通道 用来做光敏信号采集
中断使用情况 1) 训练、放音时使用FIQ_TMA;
2)使用IRQ3_KEY来完成睡眠唤醒操作;
3)使用IRQ5_2Hz做计时基准;

3.2 键盘输入电路
键盘输入电路如图 3.1所示,当有键按下时,对应的IO口被拉到高电平,CPU处理后做相应处理。


图 3.1键盘输入电路

3.3 触摸键输入电路
触摸键主要由555集成电路来实现,其原理如图 3.2所示,左边的触摸片为金属铜片,正常情况下,人本身会产生幅度为80~100mv的正弦波电压,当人手触摸到金属片时,产生的感应电压叠加在偏置电压上(偏置电压设置在0.6V),使得三极管导通,触发555集成电路使之3脚产生单稳态输出,从而系统从睡眠状态被唤醒。


图3.2触摸键输入原理

3.4 光感输入电路
光照感应电路由电阻与光敏电阻器组成。光敏电阻器是一种受光照射导电能力急剧增加的电子元件。常用的型号为MG45,适用于可见光谱范围(0.4~0.76μm),亮电阻≤2~10kΩ,暗电阻≥1~10MΩ。使用时,耗散功率不要超过10mW,例如工作电压在5V时,通过的电流不应超过2mA。另外,应避免强光长时间照射,防止光敏材料老化。 在环境光照强度下,采集一个标准值,然后在主循环中,不断采集比较,当变化比较大的时候,意味着有手挡着,则进入相应的辨识子程序。 接口电路如图 3.3所示。


图3.3光感输入电路

3.5 直流电机驱动电路
直流电机控制电路比较简单。由I/O口输出信号,通过NPN型三极管8050反相驱动电路去控制电机。其控制电路如图 3.4所示。二极管起保护作用,防止电机的反向电流过大击穿器件。


图3.4直流电机控制电路

3.6 MIC输入电路和扬声器输出电路
MIC采用驻极体电容话筒,这种话筒具有灵敏度高、无方向性、重量轻、体积小、频率响应宽、保真度好等特点。SPCE061A内置专门用于语音信号采集的具有自动增益控制放大器(AGC)的麦克风输入通道(MIC_IN)。语音信号经麦克风转换成电信号,由隔直电容隔掉直流成分,然后输入至内部前置放大器,最后通过ADC转换成数字信号。 扬声器采用一般的喇叭,电压不超过5V。凌阳SPCE061A单片机自带双通道DAC音频输出,DAC1、DAC2转换输出的模拟量电流信号分别通过AUD1和AUD2管脚输出,DAC输出为电流型输出,61板自带音频放大电路,所以外接一喇叭即可。

4软件设计
4.1 主程序流程及说明
整个系统的外部输入包括:按键、触摸键、感光控制及语音控制,其中语音控制需等到感光唤醒之后才能进行。当各控制键触发后,系统从睡眠状态唤醒,通过判断标志位,进入相应的处理子程序,之后在主程序中不断检测,1分钟内若无任何操作,则再次进入睡眠状态。 具体程序中,通过判断gKeyDoubleUseSign的值来确认执行何种操作,当为1时,进入键处理子程序;为2时,进入复用键处理程序;为0时,不执行任何操作,认为是出错或出现异常情况。在键处理子程序中,根据标志位gKeyID来判断进入哪一个处理程序,如表 4.1所示。
表4.1

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top