SPCE061A(精选9篇)
SPCE061A 篇1
0 引 言
常用温度计依材料和用途种类可分为以下几种[1]:玻璃水银温度计, 测量准确, 价格低廉, 但必须直接接触人体3 min以上, 而且由于刻度过细, 不易读数, 同时还有易碎等缺点;电子数字显示温度计, 以数字形式显示体温, 对玻璃水银温度计不易读数的缺点进行了改进, 但仍然存在紧急情况下需要一直关注温度计的缺点;贴纸温度计, 使用方便但精度不高;奶嘴温度计, 属于专用温度计, 夜间使用不方便;耳温枪, 价格昂贵;一次性体温计相对成本较高等。
在数字温度计的基础上采用数字语音技术, 测量结果通过语音的方式播报, 可以发挥听觉的优势, 弥补完全用光信号传递信息的不足, 实现温度测量由“查询方式”向“中断方式”的过渡, 充分发挥中断方式的优势, 如在光线较暗的地方或者眼睛正在关注其他细节的时候或者其他特殊情况 (如夜间长时间监测温度) 。本文设计并研制了一种集可编程 (设置参数) 、语音播报、超限报警功能于一体, 并能联机显示温度变化曲线和可联网使用的新型智能温度计。可以广泛地应用于医疗卫生行业甚至家庭, 如夜间测体温和体温监测中, 在监护重症病人时, 设置合适的报警温度值, 可以有效地减轻监护人员的工作强度, 同时又可及时发现温度异常。通过联网运行, 在传染性较强、和体温有关的疾病检测中也可以发挥其优势, 可以有效地保护医务人员。该温度计可编程[2], 本身可以裁减, 给温度计的使用带来了极大的灵活性, 在不同的需要测温的行业中都可以推广使用。
1 系统设计目标
(1) 系统每分钟采用语音报告一次所测温度的实时值, 无误报、漏报。当所测温度超过预警温度值时, 系统立即报警。
(2) 系统预警温度值可在-55.0~+125.0 ℃的范围内任意设置 (默认值设定为37.0 ℃) 。
(3) 记录测温结果, 并可以和计算机联网显示温度变化曲线。
(4) 测量精度为±0.1 ℃ (或0.2 F) 。
(5) 系统结构简单, 使用方便, 价格合理。
2 硬件设计
系统采用一般自动测试系统的成熟方案, 由主控单片机、测温电路、语音播报和编程电路组成。
2.1 主控芯片的选择
可供选择的主控芯片比较多, 如使用面最广的MCS-51系列、资源丰富的ARM7TDMI-S系列微控制器、低功耗的MSP430系列等。考虑到语音播报和语音编程功能的高性价比实现方案, 所以采用台湾凌阳公司推出的16位μ′nSPTM内核单片机SPCE061A, 其较高的处理速度能够非常容易、快速地处理复杂的数字信号, 也是适用于数字语音识别应用领域产品的一种最经济的选择。
2.2 测温方案
在不同的测温范围, 成熟的测温方案也比较多, 如采用热敏电阻、利用铂电阻、基于集成温度传感器等的测温系统。当前流行的数字型温度传感器有AD7416, MAX6575L/H以及DS18X20。前两者多用于计算机或仪器设备内部的温度检测。鉴于后者接口简单, 且就测量精度、器件可靠性、稳定性及参数一致性而言表现良好[2], 应用较广泛。由于在-10~+85 ℃范围其测温误差不超过±0.5 ℃, 以及有12位的分辨率而使其在各适用领域十分受欢迎[3]。本系统采用DS18B20, 该传感器内部自带信号调理和A/D转换, 与单片机之间的硬件接口非常简单, 只需要通过一根数据线与单片机相连, 所以保证了系统的高可靠性。为了实现测量精度为±0.1 ℃, 利用了DS18B20中SCRATCHPAD中的“剩余脉冲数”和“每度脉冲数”, 通过公式:
高分辨率温度值=TI-0.25+ (TP-TR) /TP可以获得±0.1 ℃的测量精度。
2.3 语音播报
对于语音播报, 常用做法是用单片机对ISD1420操作来实现, 所用硬件和连线都较多, 所以系统的可靠性和成本都不占优势。本设计由于采用了SPCE061A单片机, 由于其强大的信号处理功能, 所以可以直接由单片机输出语音信号, 不需要借助其他语音芯片, 从而使系统的可靠性得到大幅提高。
2.4 语音控制 (编程)
语音控制也有现成的芯片可供选择, 由于本系统采用的单片机具有较强的数字信号处理能力, 而且其Mic输入内部已经集成AGC电路, 使得语音控制更为稳定, 所以直接用SPCE061A实现语音控制。由于凌阳公司提供的语音识别API是基于特定人语音识别技术的, 所以使用之前需要用户对系统进行训练, 同时也只有对训练过的人的语音识别率才较高, 所以使用很不方便。本系统基于DHMM模型的识别算法, 用Baum-Welch法对模板进行训练, Viterbi算法进行识别[4]实现的非特定人语音识别, 使得使用者可以直接控制而无需进行繁琐的训练, 不同的用户也不需要经常反复训练, 使系统的适应性大为增强。
2.5 键盘电路
考虑到使用者讲话的习惯, 对于部分用户, 使用语音控制不太方便, 所以设置键盘电路, 以解决其设置 (编程) 问题, 所以要求键盘电路非常简单, 对整体成本影响不大。SPCE061A有2个16位的通用I/O接口Port A和Port B, 而且Port A具有唤醒功能, 所以采用A口直控键盘的形式。
2.6 联网功能
SPCE061A同样提供了通用异步串行接口UART, 所以可以直接利用其通用异步串行接口进行联网[5], 实现测温人员与被测对象的隔离, 即远距离和多点测温。
综上所述, 整体硬件电路组成如图1所示, 由SCPE061A单片机实现系统整体控制并实现语音或键盘编程与语音播报, 系统可通过通用异步串行接口实现联网功能, 在不需要联网的场合, 温度计也可以单独使用, 实现了系统的可裁剪, DS18B20用来实现温度检测。
3 软件设计
软件设计的主要任务是将测量温度通过语音播报出来, 接收编程数据使系统工作于不同的状态。
3.1 温度检测
通过DS18B20测温时, 要求控制器严格按照其单总线协议进行通信, 对于DS18B20的通信控制程序已有很多讨论, 这里不再赘述。
3.2 语音播报
实验凌阳公司提供的API可以直接播放压缩格式的语音, 所以将0~9十个数字和摄氏度、设置、报警温度等语音的数字信号 (文件) 压缩后直接写入单片机, 播报温时传递温度参数给放音程序就可以实现语音播报或者报警功能。
3.3 参数设置
参数设置可以通过语音控制和键盘输入实现, 对于普通话较好的用户, 可以直接使用语音控制实现系统参数的调整, 而普通话不太好 (识别率低) 的用户, 则可以选择使用键盘调整系统参数。系统采用非特定人语音识别技术, 使得使用语言控制系统较为简单、方便, 同时键盘的设计也为不方便使用语音控制的人群提供了另一种选择, 可以适应不同类型的用户。
可设置的参数主要有, 播报方式:“连续、隔x秒、禁止”;报警温度值;工作方式等。在需要实时关注温度值的时候, 可以设置为连续播报;温度变化较慢的时候可以设置为隔x秒方式;夜晚设置报警模式后, 可以设置为禁止播报模式。设置报警温度值后可以, 可以处理其他事情, 在出现警情时, 系统给出报警, 提示用户。选择工作方式为“联网工作”后, 系统除了现场播报和报警外, 还将相应信息通过异步串行口发送到远端。设置过程全部采用语音菜单方式, 可以大幅度较低成本, 设置流程图如图2所示。
4 结 语
本文设计的智能温度计, 电路简单、所需元器件少、测量精度高、抗干扰能力强, 可以实现实时测温、超限报警和语音播报等功能。由于各种功能是通过单片机来实现的, 可以根据具体要求添加不同的测温模式, 实现了设计目标, 可广泛地应用于温度测量和性价比要求较高的领域, 尤其是特殊应用场合。
参考文献
[1]温如春, 王祖麟.智能语音报警温度计的设计[J].低压电器, 2008 (4) :22-24.
[2]李娜, 董军堂, 张威虎, 等.一种可编程数字温度计的设计[J].现代电子技术, 2008, 31 (24) :172-174.
[3]陈良光.一线总线型温度传感器在多点测温中的编码优化[J].仪表技术与传感器, 2004 (1) :41-43.
[4]陈良光, 刘剑亮.DS18X20在多点测温中的编码优化技术[J].传感器技术, 2001 (20) :55-57.
[5]薛智宏, 赵金, 解丽红.DS1820的测量原理及提高分辨率的方法[J].河北工业科技, 2002, 19 (6) :4-7.
[6]黄涛, 胡宾.基于SPCE061A单片机的非特定人语音识别设计[J].微计算机信息, 2006, 22 (2) :19-20.
[7]罗亚非.凌阳16位单片机应用基础[M].北京:北京航空航天大学出版社, 2005.
[8]邱传涛.平均温度晶体温度计的设计[J].电子技术应用, 1999 (9) :25-26.
[9]Sunplus Technology Co..Spce061A datasheet[G].Tai-wan, China:Sunplus Technology Co., 2003.
SPCE061A 篇2
作 者:贾金贞
摘要:本文是做一个SPCE061A单片机的教学楼用打铃器,可以实时显示当前时间。硬件电路由键盘、声音输出模块、指示灯、LED数码管4部分组成。可以用键盘设定多个预定打铃时间,优点是凌阳61单片机的语音功能可以为教学楼打铃器增加语音提示功能,而其他单片机则无此功能。
关键字:SPCE061A单片机;声音输出模块;LED数码管;语音提示。
[1]1 引言
随着科学技术日新月异的发展,单片机技术在各个领域得到了广泛的应用。现代化的教学设备也在不断进步,朝着更人性化方向发展。本文介绍一种用SPCE061A单片机作出的教学楼用打铃器,更加接近现代化的教学设备。
凌阳61单片机的语音功能是其他单片机所不具备的,其实现的教学打铃器不但可以用键盘设定多个预定打铃时间,而且具有语音提示功能,这是以往其他打铃器所不具备的。系统总体介绍
2.1 设计思路
本文是一个教学楼用打铃器,实际上就是一个具有报时功能及作息时间控制钟。它利用SPCE061A单片机的2Hz时基计时,进行时间计算,并用LED数码管把它显示出来;在进行时间计算,分每加1时,都与规定的作息时间比较,如果相等则进行相应的控制或动作。
硬件电路由键盘、声音输出模块、指示灯、LED数码管4部分组成[2]。
第1页(共10页)
系统的IOA8~IOA15外接8个按键用于系统设置,什么时候打铃都可以通过这些按键设定。SPCE061A的DAC为电流型输出,经SPY0030驱动扬声器SPEAKER放音,SPEAKER可选用4Ω或8Ω扬声器。IOA0~IOA7接8个LED,到规定的打铃时间用LED闪烁来表示,使用者可根据具体需要来控制电铃等。2.2 技术要求
SPCE061A单片机的教学楼用打铃器,主要是用于教学工作,无论硬件或软件,都要求其具有非常高的稳定性[3]。
对于软件来说,系统软件需要可以任意升级,以满足教学要求,按星期编程播放,手动/自动播放,自动分区广播,无人管置,音乐打铃,标准接口等。对于硬件来说,则要求其经久耐用。系统硬件部分设计
硬件电路由键盘、声音输出模块、指示灯、LED数码管4部分组成[4]。
系统的IOA8~IOA15外接8个按键用于系统设置,什么时候打铃都可以通过这些按键设定。SPCE061A的DAC为电流型输出,经SPY0030驱动扬声器SPEAKER放音,SPEAKER可选用4Ω或8Ω扬声器。IOA0~IOA7接8个LED,到规定的打铃时间用LED闪烁来表示,使用者可根据具体需要来控制电铃等。
系统框图如下:
SPCE061AIOA0电铃的电源常开继电器电铃 图 1 教学打铃器的结构框图
电铃一般用高质白铁制造,表面电镀,不生锈不腐烂,打铃方式跟据电力学原理,将电能转化为动能,带动冲击棒敲打铃身,所以不存在敲断现象。声间清脆、宏亮。电铃的控制非常简单,有电的时候
第2页(共10页)
就会响,没有电的时候绝对不响,所以我们只需一根IO口线去控制电铃继电器的通断就可以了。
凌阳SPCE061A单片机的特点[5]正好为所设计的教学楼打铃器提供了语音处理功能,A/D 转换功能,而且其开发调试非常方便的特点,也为以后的改进做了铺垫。
SPCE061A 是凌阳科技公司µ’nSPTM(Microcontroller And Signal Processor)系列产品中的16位微控制器芯片, 内置32k闪存, 其较高的处理速度使芯片能够非常容易、快速地处理复杂的数字信号, 适用于数字语音识别等应用领域[6]。在2.6V~3.6V工作电压范围内, SPCE061A 的工作速度范围为0.32~49.152MHz, 具备8通道10位ADC 输入功能,内置的具有自动增益控制的麦克风输入功能,双通道10位DAC音频输出功能及A、B两个I/O口输入输出功能。
语音处理功能具有音频编解码及各种语音压缩算法实现的。各种算法相应的程序模块存放在语音算法库SCAM-LIB中, 使用时只需调用相应的模块就可方便地实现语音合成、语音播放、录音、识别等功能。
A/D 转换功能: SPCE061A内部集成了8 通道10 位的A/D 转换器, 采用逐次逼近原理实现模/数转换, 在检测连续变化的模拟量, 如温度、压力、流量、转速、声音、亮度时非常方便, 在语音类仪器仪表、家用电器中得到较好的应用。
开发调试方便: SPCE061A的开发是通过在线调试器PROBE 实现的。它既是一个编程器(即程序烧写器), 又是一个实时在线调试器, 因此在其应用项目开发调试中非常方便。3.1单片机主控板系统原理图及说明[7]
第3页(共10页)
+61板原理图VREFJ121CON2VRTVREF2C22104+C19100uAVSS1SLEEP1LED1KLEDVDD1D12LEDD22R12330C1AVSS1R11KAGCVMICVCMR3470KC2+4.7uAVSS1+R13MICVSSC5C4100u+C7104VSSC8104VSS+100uX1220uR43K1+2C11224C13224R510KR610KC9104+C622uAVSS1C12104MICPMICNR7MICOUTOPIR2C33300pC10VSS1043.3KOSCOSCOC1420pY132768C15VSS20pOSCIU1OSCOOSCI121314VDD15ICE_EN16ICE_SCK17ICE_SDA18VSS1920DAC121DAC222VREF223AVSS124AGC25OPI26MICOUT27MICN2829303132IOB5IOB6IOB7IOB8IOB9IOB10VDDHVCPVCPVDD_PRES_BIOB0IOB1IOB2IOB3IOB4PLLMICROPHONER83K5.1KC16AVSS1VDDHC20104C21+100uVSS502C17+C18104EZ-PROBESTORBEBUSYPD1PD0VSSJ1112345CON5R2633S5123CON3R28OE1_N3.3KPROBEJ412345CON5100uVSSDACVDDICE_ENICE_SCKICE_SDAVSSU4R2333PD0ICE_SDAVSSPD1R253.3KVSSOE1_NVDDC39104R243311***24681A11A21A31A42A12A22A32A41OE2OEVCC74HC244VDDH1Y11Y21Y31Y42Y12Y22Y32Y4GND***310ICE_SCKR27ICE_SDA33OSC32OOSC32IXTESTVDDXICEXICECLKXICESDAVSSPVINDAC1DAC2VREF2VSSAGCOPIMICOUTMICNPFUSENCNCNCNCNCVSSVCPVDDXRESBIOB0IOB1IOB2IOB3IOB4NCNCNCIOB5IOB6IOB7IOB8IOB9IOB10VDDHNCNCNCNCNCPVPPIOB11IOB12IOB13IOB14IOB15XSLEEPVSSXROMTIOA15IOA14IOA13IOA12IOA11IOA10IOA9MICPVCMVRTPADVDDVMICVSSNCNCIOA0IOA1IOA2IOA3IOA4IOA5IOA6IOA7VSSVSSVDDHVDDHIOA87473727******857565554DACJ2IOB11IOB12IOB13IOB14IOB15SLEEPVSSIOA15IOA14IOA13IOA12IOA11IOA10IOA9CON3C2352244AVSS1111098765432***797877767587U221SPY0030SPHJ321J12SPLSpeaker321PHONEJACK123+-DAC1C25R101041K2R91KC26AVSS2104VDDMICPVCMVRTVDD_AVMICAVSS1IOA0IOA1IOA2IOA3IOA4IOA5IOA6IOA7VSSVSSVDDHVDDHIOA******7484950515253BUSYIO_PORTVDDHIOB0IOB1IOB2IOB3IOB4IOB5IOB6IOB7VSSJ612345678910PBJ812345678910PAIOA2VDDHIOB8IOB9IOB10IOB11IOB12IOB13IOB14IOB15VSSJ712345678910PBJ912345678910PA2V5VDDH3J5123CON3C27C28C31104+AVSS100u1104VSS+C29100uC38D53.3V500P1POWERV5U32VIVO3V3R140R150R160R170VDD_AVDD_PVDDVDDH3RESETKEYVDDS2K1S3K22D3+J105V12+220uDIODEC33C341041SPY0029SOT-892IOA0IOA1D4DIODEC35+220uR190R210104R220VSSAVSS1AVSS2S1104C37VSSR184.7KRES_BVDDHIOA0IOA1IOA2IOA3IOA4IOA5IOA6IOA7VSS3VDDHIOA8IOA9IOA10IOA11IOA12IOA13IOA14IOA15VSSGND1C36-CON2VSS1S4K336图2 61板原理图
单片机主控板系统采用61板,它大小相当于一页扑克牌,是“凌阳大学计划”专为电子爱好者所设计的。61板资源包括:(01)CPU:SPCE061A,外部时钟为 32768Hz,内部倍频最高可至49MHz。(02)PROBE/EZ_PROBE接口。
(03)电池盒供电接口:开发板配有电池盒,也可外接5V稳压源。(04)32位IO口。(05)AD参考电压接口。(06)音频功放SPY0030。(07)麦克风:1路MIC音频输入。
(08)耳机接口:直接插耳机就可以听到音乐和语音。(09)喇叭接口:开发板配备喇叭。(10)音量调节旋钮:用于调整音量的大小。(11)端口电平可选:可以选择5V和3.3V。(12)两个外部中断输入口。(13)两个外部时钟源输入口。(14)串行通讯接口(SIO)。
(15)电源和睡眠指示灯:当系统进入睡眠状态,睡眠指示灯会被点亮。
第4页(共10页)
V5
3.2扩展板原理图及说明
为了提高数码管的亮度和系统稳定性,需要外加扩展。因为61板资源丰富,所以扩展板上硬件很少,只有8个按键,8个LED灯,6个LED数码管。它们与61板的核心SPCE061A单片机的接线如下:
IOB0IOB1IOB2IOB3IOB4IOB5IOB6IOB7IOB8R3113572468R-PACK4R321357R-PACK4R21470U11LED5621D11IOA0IOA1IOA2IOA3IOA4IOA5IOA6IOA724682222222D101111D5D7D9A+B+C+D+DD-E+F+COM3-G+DP+COM4-DD+U10LED5641A8COM1-1411COM2-10736NPN-8050-EBC2Q123Q41312Q223Q51V331S20IOA8IOA9IOA10IOA11IOA12IOA13IOA14IOA15S21S22S23S24S25S26S27IOB9IOB10IOB11IOB12IOB13IOB14IOB****42468R301357470*42Q323Q71123Q6246817A+COM5-B+C+D+E+COM6-F+G+DP+***1111109143652D4D6D82 图3 扩展板原理图
我们可以从图中看出,LED是SPCE061A的IO口直接驱动的,而数码管部分加了三极管是为了提高数码管的亮度和系统稳定性。
4系统软件设计
4.1主程序
主程序的主要功能是调用子程序,指示硬件完成用键盘设定多个预定打铃时间及语音提示功能。
楼打铃器由SPCE061A单片机控制,主程序里必须有键盘管理程序,让单片机识别并执行操作;由于断电或者单片机出现故障,不可避免的要重新校对时间,因此校时子程序就必不可少;语音提示功能是基于SPCE061A单片机的教学楼用打铃器最主要的功能部分,且其播放语音次序必须受控,播放语音子程序必须由主程序控制。
程序按照结构化程序设计,所有功能都可通过调用子程序完成,主程序较简单,流程如下图所示[8]。
第5页(共10页)
开始是否设置完毕NY设置打铃时间设置系统时间是否到打铃时间YN打铃YYN 是否遇复位命令图4 主程序流程图
4.2 键盘管理程序
系统有8个按键,代表的意义如下表所示: SPCE061A IOA0 IOA1 IOA2 IOA3 IOA4 IOA5 IOA6
LED数码管
D4 D5 D6 D7 D8 D9 D10
SPCE061A IOA8 IOA9 IOA10 IOA11 IOA12 IOA13 IOA14
LED数码管
S20 S21 S22 S23 S24 S25 S26
第6页(共10页)
IOA7 D11 IOA13 S27
表1 键盘定义
假设只要打铃一次,打铃时间是中午12点30分,那么设置过程 如下:按S20键(复位键),系统语音提示“请输入打铃次数”,这时通过S21和S22键把次数改为1,然后按S27键(确认键),系统提示“请输入第一次打铃时间”,通过S23和S24键把小时改为12,然后按S27键(确认键),通过S25和S26键把分钟改为30,然后按S27键(确认键),(若打铃次数是N,那就需要做N次这样的操作,照着语音提示作就行了),当系统提示“请输入当前时间”时,按照前面的方法设置系统当前时间,系统最后提示“输入完毕”的时候,系统就自动工作了,到指定的时间会做打铃的动作。整个设置过程均有语音提示,而且6位数码管也会同步显示相应的值。4.3校时子程序
利用2Hz中断做时钟源进行计时,每两次中断秒加1[9]。流程图如下所示:
第7页(共10页)
N有2Hz中断?Y半秒单元+1半秒单元=2?Y半秒单元=0N秒+1N秒=60?Y秒=0分+1N分=60?Y分=0时+1N时=24?Y时=0返回 图5
校时子程序
4.4播放语音子程序
报时用SACM-S480自动方式播放,流程图如下:
第8页(共10页)
SACM_S480放音的初始化SACM_S480压缩播放获取语音数据并解码等待中断播放
图6 播放语音子程序 结论
本文提出的教学楼用打铃器的设计经过软、硬件结合的实验验证,对该系统的设计有如下几点结论:教学楼用打铃器的设计采用了自顶向下的设计模式,即先进行总系统的设计,然后分模块各个击破,较传统的设计模式更快捷;对该系统还可进一步改进设计,可以与计算机结合,采用智能化控制[10]。
参 考 文 献
[1].罗亚非 《凌阳单片机应用基础》[M] 北京航天航空大学出版社 2005 [2].卢胜利 《基于凌阳SPCE061A设计实验平台的专业综合设计教程》[M] 机械工业出版社 2007 [3].洪应,宋国富《凌阳单片机实用技术教程》[M]中国铁道出版社 2007 [4].童诗白,华成英.模拟电子技术基础(第三版)[M].高等教育出版社,2000 [5].张友德.单片微型机原理、应用于实验[M].3版.上海:复旦大学出版社,2000 [6].王洪庆.微型计算机控制技术[M].北京:机械工业出版社,2006 [7].张培仁,张志坚,高修峰.单片机微处理器原理及应用(凌阳SPCE061A)[M] 北京清华大学出版社,2005 [8].彭为,黄科,雷道仲.单片机典型系统设计实例精讲[M].电子工业出版社,2006 [9].汪敏.凌阳32位单片机实验与实践[M] 北京航空航天大学出版社 2007 [10].杜刚.32位单片机原理及应用[M]
中国电力出版社 2007
第9页(共10页)
SPCE061A Monolithic machine-BasedTeaching Building uses dozen
of Bell implement
JIAJINZHEN Abstract:This is to be a teaching building SPCE061A MCU devices with rang the bell, you can real-time display the current time.Hardware circuit from the keyboard, voice output module, indicator, LED digital tube four parts.Can use the keyboard to play bells set the number of scheduled time, the advantage of voice-enabled Sunplus 61 SCM rang the bell for school buildings to increase device features voice prompts, while the other microcontroller does not have this feature.Key words: SPCE061A Single-Chip-Micro-Controller;Sound Output Module;LED Digital Tube
SPCE061A 篇3
关键词:脑机接口;SPCE061A;智能轮椅
中图分类号:TP273 文献标识码:A文章编号:1007-9599(2012)02-0000-02
Intelligent Wheelchair Control System Hardware Design Based on SPCE061A
Hao Minchai
(Shijiazhuang Vocational and Technology Institute,Shijiazhuang050081,China)
Abstract:With the population aging problem is getting worse and people's living standards improve,whether it is Senile,congenital or acquired physically disabled persons on the demand for wheelchairs and other assisted walking tools will become increasingly urgent.In the EEG equipment to send and receive control side by adding a speech recognition system based on SPCE061 technology,when the brain is operating intent is issued,the signal triggered treated voice broadcast system,while the voice controlled device installed on the receiving end through the speech recognition,send the right drive and voice broadcast,and to control the motor system of the wheelchair,if drivers perceive information from the auditory error,timely adjustment of the brain consciousness,EEG recognition and speech recognition in order to achieve the double insurance smart wheelchair provide a new control method for disabled persons with physical disabilities.
Keywords:Brain-computer interface;SPCE061A;Intelligent wheelchair
由于国际社会老龄化日益明显,加上各种交通事故时有发生,轮椅的需求在残疾人的辅助设备中占有重要的地位,智能轮椅的开发在残疾人公共服务领域占有重要的地位。
一、BCI技术
BCI的研究为残障人员提供一种新的信息交流和控制手段,很多种神经肌肉紊乱都会阻断大脑与外界环境的信息交换及对其的控制通道。随着计算机技术和脑功能研究的不断渗入和发展,脑机接口技术(Brain-Computer Interface)在康复医学和辅助控制领域显示了重要的研究价值和应用前景,它为那些思维正常但有严重运动障碍的患者提供语言交流和环境控制途径,大大提高了其生活质量。脑机接口技术是一种全新的信息交换和控制技术,目前BCI技术主要集中在美国、西欧和澳大利亚等国家,在国内,以清华大学为代表的研究机构也实现了利用脑电进行手机拨号、五笔录入、设备开关以及智能小车的控制,在康复工程和辅助控制领域有了深入的研究。尽管BCI技术在质和量两个方面有了一定的提高,仍然处在离线阶段,存在着识别率不高的问题,而且在设计中没有充分考虑到外界的复杂环境给脑电带来的影响。
目前,基于BCI的脑电设备主要是用于设备的开关以及轮椅的控制,在BCI系统全面建立过程中,信号获取是非常重要一步,也是获得良好结果的前提。利用自发想象或在视觉信息提示下进行想象运动已经研究了一段时间,也取得了一定的成果,而在听觉感知信息提示下进行想象运动进行的实验研究还很少。资料表明:人类获取外界信息的方式主要来自与视觉和听觉,当视觉感知出现一定程度的缺失,听觉感知作为一个重要的获取外界信息的感知方式就会起到辅助甚至主导作用。对于使用脑电设备的群体来说,利用听觉感知获得外界信息,进行想象运动控制外界环境同样具有广泛的实用价值和应用前景。
二、语音识别的基本原理
获取脑电提示信息的方式入手,针对无人驾驶的遥控汽车或残疾专用的轮椅等脑电设备,设计了一种基于听觉感知的驾驶行为的想象运动试验,在模拟现实的交通环境下,采用汽车鸣笛、刹车音作为刺激源,对车辆进行启动和制动控制,探索基于听觉感知信息的提示下利用想象运动进行驾驶的脑电特征,为残疾人进行车辆驾驶提供实验依据,并计划建立基于脑机接口技术的脑电控制车辆的离线模型,为有肢体残疾但大脑正常的驾驶人员提供一种新的辅助驾驶方式。
语音识别过程主要包括语音信号的预处理、特征提取、模式匹配几个部分。预处理包括预滤波、采样和量化、加窗、端点检测、预加重等过程。语音信号识别最重要的一环就是特征参数提取。提取的特征参数必须满足以下的要求:
1.特征参数必须有一定的特征,能够相互区分
2.各阶选取得参数必须具有相对的对立特征。
3.所选取得参数必须应用方便,为计算带来方便,能更好的实现语音识别的实现。
三、系统硬件设计
(一)电源电路
对于电源设计电路部分用7805芯片进行稳压输出稳定的5V电压,为语音识别和播放器和I/O口模块所使用,5V在经过TR1972-33后 输出3.3V为CPU供电使用,I/OSPCE061A采用低电压供电方式,可以降低芯片功率损耗。其中SPCE06lA的电源分两种,即内核电源(VDD)和I/O口电源(VDDH)。
(二)音频输出电路模块
音频输出是电流输出,为了能更好的驱动扬声器SPEAKER则需要一定的驱动电路。SPY0030与LM386相比LM386的供电电压为4v之多,SPY0030工作电压仅为2.4V,LM386功率輸出在100mw之下,芯片SPY0030大约是700mw,有足够的驱动能力,因此他的输出电路如图2所示。
图2 音频输出电路
(三)存储模块部分电路设计
因为SPCE061A内闪存有32Kwords,不足以存储大量的语音资源,所以使用时必须外扩扩展存贮器。因此我采用了SPR4096是一个带有4M-bit(512K×8-bit)总线闪存, 并且SPR4096内部还含有一个4K×8-bit的SRAM。闪存在进行的编程/擦除时,就可以并发执行SRAM的读/写。
(四)电机驱动模块
电机驱动模块采用直流电机驱动,左右配对来驱动左右轮运动,我采用了配对的DG-168永磁电机来使用,它具有过载能力大,噪声低,机械性能好等优点。电压使用为24V,功率为168W。
语音控制的轮椅具有实际的应用价值,稳定性好,能够很方便的为使用者带来的应用价值,语音控制在人们的日常生活中具有不可估量的的作用,同时为使用者带来的方便,应用会越来越广泛。
石家庄职业技术学院院级课题:11YQ1001
河北省科技厅科技支撑课题:11213596
SPCE061A 篇4
关键词:SPCE061A,语音信号处理,A/D转换,D/A转换
引言
随着嵌入式语音信号处理技术的发展, 语音信号的数据采集系统也在不断的更新, 一个高质量的数据采集系统, 应该具有通用性强、使用方便、成本低、软件齐全等特点。
本设计主要以嵌入式语音信号压缩存储和回放技术为主题, 利用凌阳公司研制的全集成高性能的16位SPCEO16A单片机, 对输入的语音信号进行数据采集, 转换存储, 压缩与解压缩, 最后通过DAC实现语音再生。本设计产品主要应用于智能家电、自动导游解说系统、自动报警系统、智能玩具等具有自动语音播报功能的嵌入式系统。
一、总体方案设计
本设计主要以语音信号压缩存储和回放技术为主题, 利用凌阳高集成度的16位微处理器SPCE061A, 对输入信号进行数据采集, A/D转换, 存储压缩与解压缩, 再进行D/A转换, 通过功放电路与键盘控制, 经扬声器最终实现语音处理与再现。其原理框图如图1-1所示:
二、系统硬件设计
1、SPCE061A的核心简介
SPCE061A的CPU内核采用凌阳最新推出的µ’n SP™ (Microcontroller and Signal Processor) 16位微处理器芯片。围绕µ’nSP™所形成的16位µ’nSP™系列单片机采用的是模块式集成结构, 它以µ’nSP™内核为中心集成不同规模的ROM、RAM和功能丰富的各种外设接口部件。与SPCE500A不同的是, 在存储器资源方面考虑到用户对资的需求较少以及便于程序调试等功能, SPCE061A里只内嵌32K字的闪存, 较高的处理速度使µ’nSP™能够非常容易快速地处理复杂的识字信号。以µ’nSP™为内核的单片机有SPCE***、SPT660*等系列, 本次设计中使用的开发系统是SPCE061A。图2-1是µ’nSP™家族的模块式结构。
µ’nSP™内核是一个通用的核结构。除此之外的其它功能模块均为可选结构, 亦即这种结构可大可小或可有可无。借助这种通用结构附加可选结构的积木式的构成, 便可形成各种不同系列派生品, 以适合不同的应用场合。这样做无疑会使每一种派生产品具有更强的功能和更低的成本。
2、SPCE061A开发方法
SPCE061A的开发是通过在线调试器PROBE实现的。它既是一个编程器 (即程序烧写器) , 又是一个实时在线调试器。用它可以替代在单片机应用项目的开发过程中常用的软件工具——硬件在线实时仿真器和程序烧写器。它利用了SPCE061A片内置的在线仿真电路ICE (In-Circuit Emulator) 接口和凌阳公司的在线串行编程技术。PROBE工作于凌阳IDE集成开发环境软件包下, 其5芯的仿真头直接连接到目标电路板SPCE061A相应管脚, 直接在目标电路板上的CPU---SPCE061A调试、运行用户编制的程序。PROBE的另一头是标准25针打印机接口, 直接连接到计算机打印口与上位机通讯, 在计算机IDE集成开发环境软件包下, 完成在线调试功能。图2-2是计算机、PROBE、用户目标板三者之间的连接示意图。
3、音频输入部分
音频输入部分原理图如图2-3所示, MICP和MICN将随着MIC产生的波形变化, 并在两个端口处形成两路反相的波形, 再经过两级运放放大, 把放大的语音信号交给ADC转换为数字量, 这个时候我们就可以通过单片机编程对这些数据进行处理, 比如说语音数据压缩、语音识别样本处理等。
4、音频输出部分
音频输出部分原理图如图2-4所示, SPY0030是凌阳公司开发的专门用于语音信号放大的芯片, 它的增益如下所示:Gain=2*5000/ (5000+R1) , SPY0030的放大倍数被固定为20倍。音量的大小可以通过电位器R9调整。和LM386相比, SPY0030还是比较有优势的, 比如LM386工作电压需在4V以上, SPY0030仅需2.4V即可工作 (两颗电池即可工作) ;LM386输出功率100mW以下, SPY0030约700mW。
三、系统软件设计
该语音控制系统的硬件电路结构较简单, 工作量较大的是软件的开发, 为了达到设计要求, 实现需要的功能, 保证该系统的性能, 对该系统的程序进行了认真的设计和编制。程序流程图如图3-1所示, 总体思路把系统分为录音、停止和放音三种状态, 状态的改变用按键控制。录放音都放在中断服务程序里处理, 主程序只处理键盘事件。主程序先对系统进行初始化, 然后只处理键盘事件, 判断按键值, 并据此设置相应的系统状态。中断服务程序是通过定时器中断进入的。在中断服务程序中, 先判断系统当前状态, 根据系统状态进行相应操作。如果是录音状态, 就去取ADC结果进行数字滤波, 把滤波结果保存到存储器中, 最后清中断标志退出中断服务;如果是放音状态, 就从存储器中读出数据, 进行DAC, 最后清中断标志退出中断服务;如果是停止状态, 就不进行其它操作, 直接清中断标志就退出中断服务程序。
参考文献
[1]罗亚非:《凌阳16位单片机应用基础》[M].北京:北京航空航天大学出版社, 2003.
[2]袁霞、杜潜、姚丽娜等:《基于凌阳单片机SPCE061A的语音识别控制系统的设计》[J].河南机电高等专科学校学报, 2007, 15 (2) :118-120.
[3]李晶皎编著:《嵌入式语音技术及凌阳16位单片机应用》[M], 北京航空航天大学出版社, 2003.
[4]雷思孝、李伯成、雷向莉:《单片机原理及实用技术——凌阳16位单片机原理及应用》[M].西安:西安电子科技大学出版社, 2004.
[5]瞿安连编著:《应用电子技术》[M], 科学教育出版社, 2003.
SPCE061A 篇5
20世纪20年代,语音识别技术就开始得到研究[1]。随后,各类语音识别系统相继诞生,语音识别技术也逐渐得到完善[2]。最近几年,语音识别技术作为一门相对成熟且与人联系密切的技术,被广泛应用于各行各业中,本课题研究的声控小汽车,是希望语音识别技术能运用到汽车中,让汽车变得更加智能化。本课题研究设计的声控小汽车是对语音识别功能运用到汽车控制上的初步探讨和简单设计,设计出小汽车的整体模型,实现声音控制小汽车行驶。
2. 总体方案设计
声控小汽车采用了凌阳SPCE061A作为整个小汽车系统的数据处理中心,该单片机具有语音识别和语音播放的功能[3],主要负责声音指令获取和识别的工作,声音信号从MIC麦克风处传入,经过一系列的语音处理步骤,将模拟信号转化为控制电机的数字信号,并把处理后的数据通过I/O口输出。该设计的基本架构如图1所示。
3. 硬件设计
声控小汽车在硬件层上的设计分为语音识别层设计、驱动层设计和车体设计三部分。语音识别层设计由SPCE061A单片机构成,主要负者将接收的声音信号转换为数字信号,并通过自身强大的计算能力和较多的I/O接口把处理完的信息传递给驱动部分。驱动部分的构成有驱动板和电机,驱动板的作用是控制小汽车的工作方式,分别有前进、后退、左转和右转四种方式。选用直流型电机负者驱动小汽车,降低了小汽车控制的难度。车体部分采用了较为实用性的托盘式三轮车,这样做可以直接将前两个部分的硬件固定在托盘上,简化了整体硬件设计的难度。
4. 软件设计
声控小汽车的软件设计主要包括训练子程序、识别子程序和驱动控制子程序。训练的目的是为了获取声音模板,这些模板会被存储到模板库中。到了识别阶段,最新获取到的模板会和之前训练的模板进行匹配,最接近的一组将作为识别结果输出对应的信息,这些信息将会通过I/O口输出到驱动模块中。控制子程序的功能是让电机正向转动或反向转动,从而改变小汽车的运动状态和方向。具体流程如图2所示。
5. 测试
首先将声控小汽车的硬件连接,包括SPCE061A单片机与电源的连接、SPCE061A单片机与驱动板的连接、SPCE061A单片机与喇叭的连接、驱动板与电机的连接四个部分,连接后的实物图如图3所示。然后按照代码设计的顺序,根据提示音对声控小汽车进行训练,训练顺序为前进、倒车、左转、右转四个指令。每个指令会训练两次,如果每个训练都成功,车上的喇叭会播放训练成功的提示音。等成功完成训练环节,小汽车就可以开始语音识别环节了。声控小汽车在接收到“前进”指令时,会往前移动一段距离;声控小汽车在接收到“倒车”指令时,会向后移动一段距离;声控小汽车在接收到“左转”指令时,会向左前方移动;声控小汽车在接收到“右转”指令时,会向右前方行驶。
6.总结
本设计的声控小汽车经过多次测试,基本达到了预期目标,小汽车能实现前进、后退、左转、右转的功能,同时,小汽车的语音识别功能运行比较稳定,不会出现经常不识别或识别错误的现象,当然也存在着许多不足的地方,比如在功能设计方面较为单一。在后期的维护中,会适当地增加一些功能,比如增加小汽车蔽障功能,采用PWM波控制小汽车驱动,进而控制电机的转速,完善声控小汽车的设计。
参考文献
[1]陈磊.带噪环境下的汉语连续语音识别研究[D].合肥:安徽大学,2010年.
[2]景新幸.基于DSP的语音识别系统的研究与应用[D].桂林:桂林电子科技大学,2011年.
[3]薛强强.新型导游机服务系统设计[D].太原:中北大学,2013年.
SPCE061A 篇6
关键词:16位单片机SPCE061A,盲人导向系统,数据校正
1. 引言
盲人导向仪是为盲人指引方向的重要仪器,也可作为指南针,而指南针是航海航行的重要仪器,也是人们外出旅行、考察的必备工具。本方案使用16位单片机实现系统和SPLC501液晶模组,可以实现图形及文字显示当前方向,语音播报方向,方向校正,显示日期、时间,有秒表、闹钟、语音报时等功能。
2. 系统结构及其功能
2.1 系统结构
盲人导向仪系统框图如图1所示,该系统以16位单片机SPCE061A为数据处理核心,外扩SPLC501液晶模组,利用电子导向模组得到与正北方向沿顺时针方向的夹角,在液晶屏上显示角度信息。
2.2 各模块功能以及硬件实现
2.2.1 电子导向模块
如图2所示,电子导向模组由两个磁性传感器SEN-S65和一个驱动芯片PNI-11096构成。磁性传感器SEN-S65里面包含一个LR振荡电路,当磁性传感器SEN-S65与地球磁感线平行方向夹角发生变化时,LR振荡电路的磁感应系数也会发生变化。驱动芯片PNI-11096通过磁性传感器SEN-S65磁感应系数的变化可以计算出磁性传感器与地球磁感线之间的夹角,驱动芯片PNI-11096最多可以连接三个磁性传感器SEN-S65,这三个磁性传感器SEN-S65方向互为垂直,这样就可以测量在三维方向上与地球磁感线的夹角,从而得到当前的三维方向。只要电子导向模组得到水平方向上与地球磁感线的夹角就可以测得方向了,因此驱动芯片PNI-11096上使用了两个磁性传感器SEN-S65。
电子导向模组采用SPI接口输入与输出,16位单片机使用I/O口模拟SPI接口与电子导向模组通讯。电子导向模组在每个时钟周期的上升沿,锁存数据。
2.2.2 液晶显示模块
液晶显示模块采用的SPLC501型图形点阵式液晶显示器。液晶显示器(LCD)具有显示信息丰富,功耗低,体积小,重量轻,超薄,无辐射等许多其他显示器无法比拟的优点,被广泛应用于微处理器控制的智能仪表、仪器和低功耗电子产品中。LCD可分为段位式、字符式和点阵式。其中,段位式LCD和字符式LCD只能用于字符和数字的简单显示,不能满足图形曲线和汉字显示的要求。本文中所采用的MG12864型点阵式液晶显示器不仅可以显示字符和数字,而且可以显示各种图形、曲线与汉字,并且可以具有实现屏幕上下左右滚动、反转、闪烁、动画等功能。
2.2.3 SPCE061A核心处理模块
本系统采用SPCE061A开发板作为数据处理核心,通过向电子导向模组发送不同的命令字,得到X轴和Y轴磁性传感器的测量值,经过计算可以得到电子导向模组与正北方向的顺时针夹角。并将处理后的数据在SPLC501液晶模组上进行显示。
3. 系统的软件实现
3.1 电子导向模块的软件实现
电子导向模块的软件实现主要由PNI11096驱动程序和导向功能程序两部分组成。
PNI11096驱动程序PNI_Driver主要是用来模拟SPI时序完成对PNI11096的控制及读取数据,16位单片机SPCE061A是通过I/O口模拟SPI接口与电子导向模组通信。PNI11096驱动程序包括两个函数,PNI11096初始化函数F_PNI_11096_Init PNI, PNI11096读取函数F_PNI_11096_Read。PNI11096驱动程序函数PNI_Driver的程序流程如图3所示。
导向功能程序主要是用来实现命令的发送与接收、数据校正、图形显示,以及方向数值显示。电子导向模块在接收到系统发送的命令字后,根据命令读取x和y轴的数据,然后将得到的x和y轴的值进行校正,根据校正后的值进行进一步计算,将得到的结果返回系统。导向功能程序的核心部分在于误差的校正。
在理想状态下,X轴测量数据与Y轴测量数据变化范围都应是-32768—32767之间,X轴数据与Y轴数据组成的坐标刚好构成一个正圆形,但实际测量中,X轴测量数据与Y轴测量数据最大值或最小值均达不到-32768—32767这个范围,则导致这两个数据组成坐标构成的图形成为一个中心不在原点的椭圆形。通过计算x轴和y轴的偏移量和测量数据的极大极小值,为了得到准确的方向值我们必须对电子导向模组返回的数据进行校正,将椭圆调整为正圆形,图4 (a)和图4 (b)为显示了测量坐标图在校正前后的对比情况。
从电子导向模组得到X轴方向和Y轴方向测量数据经过较正后,根据公式angle=atan (y/x) 就可以计算出电子导向模组与正北方向的顺时针夹角了。还有一个问题是要根据角度所在的不同的象限,对求得的角度值加以修正。角度值修正程序的示意性代码如下所示:
3.2 液晶显示模块的软件实现
液晶显示模块SPLC501的驱动程序由5个部分组成,分别为底层驱动程序文件SPLC501Driver_IO.inc、SPLC501Driver_IO.asm;用户API功能接口函数文件SPLC501User.h、SPLC501User.c、DataOSforLCD.asm。各文件的主要功能如下。
SPLC501Driver_IO.inc:该文件为底层驱动程序的头文件,主要对使用到的寄存器(如端口控制寄存器等)进行定义,还对SPCE061A与SPLC501液晶显示模组的接口进行配置;用户可以根据自已的需求来配置此文件,但要使端口的分配符合实际硬件的接线。
SPLC501Driver_IO.asm:该文件为底层驱动程序,负责与SPLC501液晶显示模组进行数据传输的任务,主要包括端口初始化、写控制指令、写数据、读数据等函数;这些函数仅供SPLC501User.c调用,不建议用户在应用程序中调用这些函数。
SPLC501User.h:该文件为用户API功能函数文件的头文件,主要对一些记住符进行定义,以及配置LCD的一些设置,另外该文件里还对SPLC501User.c中的函数作了外部声明,用户需要使用LCD的API功能函数时,需要把该文件包含在用户的C文件中。
SPLC501User.c:文件中定义了针对LCD显示的各种API功能函数。
DataOSforLCD.asm:该文件中提供了一些供API功能函数调用的数据处理子程序,主要完成显示效果的叠加、画圆偏差量的计算等。
3.3 SPCE061A核心处理模块的软件实现
SPCE061A核心处理模块主要由键盘扫描程序和系统主程序两部分组成。
键盘扫描程序先通过调用Key_Init()函数对键盘进行初始化,然后通过函数Key_Scan()对键盘进行扫描,若发现有按键按下,则使用Key_GetValue()函数获得按键值,并保存下来供系统调用。
程序运行后首先初始化各个硬件模块,校正指南针模组,然后程序进入主循环,不停地读取指南针模组的方向并显示,同时进行按键扫描,根据按键进入相应的功能模块。主程序流程图如图5所示。
4. 结语
本文利用16位单片机SPCE061A强大的处理能力,配合电子导向模组设计了一个语音播报盲人导向仪,此系统可以完成图形及文字显示当前方向,语音播报方向,方向校正,显示日期、时间,有秒表、闹钟、语音报时等功能,对开发一款功能丰富的盲人导向仪系统,有一定的参考价值。语音播报盲人导向仪可以快速添加到各种产品中,作为成熟系统的子模块,其应用在导航系统、盲人拐杖、汽车内置设备等诸多领域。
参考文献
[1]嵌入式微处理器SPCE3200原理及应用[M].凌阳科技有限公司资料, 2007, 08.
[2]61板课程设计指导书[M].凌阳科技有限公司资料, 2005, 10.
SPCE061A 篇7
1 系统的总体方案设计
系统的总体方案如图1所示。
1.1 语音录制、识别和播放
由麦克风接收语音输入,转换为电压信号,经自动增益控制器(AGC)调理,通过ADC转化为数字量,在处理器中压缩编码存到存储器中,作为语音资源;语音识别是将对使用者输入的语音命令进行记录并与存储的语音模型进行匹配,用来确定输入的指令;语音播放是将语音资源中的语音信息进行解码,解码后的语音信息数字量送到DAC转换为模拟量,经过音频放大器,输出到喇叭放出声音。
1.2 小车运动姿态控制原理
小车为四轮结构,前面两轮由前轮电机控制,在连杆和支点作用下控制前轮左右摆动,以调节小车前进方向,后面两轮由后轮电机驱动,为整个小车提供动力,控制小车的前进和后天退。驱动电路使用“H”桥式功率驱动电路,由单片机的I/O口输出控制信号。
2 系统硬件设计
系统的硬件电路如图2所示。
2.1 麦克风录音输入及AGC电路
SPCE061A芯片中具有声音模-数转换通道,内置了麦克风放大电路和自动增益控制功能。语音信号经第一级放大,MICOUT输出,再经OPI送入第二级运放,运放增益由自动控制器控制,AGC可以自动调节麦克风的收音量。
2.2 语音播报电路
播放声音,先从存储器中的语音资源库中提取语音信息,送到解码队列进行解码。电路中SPY0030的放大倍数固定为20倍,音量大小可以由电位器R9调整。
2.3 行驶状态控制电路
Q1、Q2、Q3、Q4四个三极管组成4个桥臂,Q1和Q4为一组,Q2和Q3为一组,控制两组4个三极管状态,就可使电动机正转、反转、停止。单片机IOB8、IOB9控制前轮电机运动,IOB10、IOB11控制后轮电机运动。小车运动状态和I/O输出关系如表1所示。
2.4 电源模块及其他电路
本系统采用电池供电。单片机提供5V和3.3V电压,电动机工作电压是4~6V,使用4节1.5V干电池。带有低电压保护功能。
3系统软件设计
软件设计遵循机构化设计原则,使用unsp IDE集成开发环境,利用API函数库,基于C语言和汇编言语混合编程,主程序和功能模块子程序使用C语言编程,定时中断、FLASH读写等使用汇编语言编程,软件以主程序为中心,采用模块化设计。主程序框图如图3所示。
子模块主要包括:
3.1语音录制播放子程序
对存储器录音初始化,进入录音循环中,定时器中断程序控制采样频率,并按时间间隔将采样值送人语音样本队列,录音循环从语音样本队列中获取数据并进行编码,将编码后的数据送入存储器,成为语音资源。
语音播放子程序,首先进行播放初始化,进入播放循环中,从语音资源中获取数据,解码,填入播放队列中,定时器中断程序从播放队列中取出数据送到D/A转换器中,则语音信号到扬声器中,放出声音。
3.2语音训练识别子程序
语音采用应答方式训练,每条指令训练次数为两次,在语音提示下进行,并且能进行容错处理。
3.3小车运动控制子程序
此程序就是前后电动机的正转和反转,程序识别出使用者说出何种语音命令后,根据表一的I/O口置位或清零,输出到电机驱动电路,控制电机运转,小车做出相应的动作。
4结束语
本设计模拟未来的交通设备,成功地实现了语音控制功能,操作较简单,是一个典型的语音识别控制方案。本课题为省级大学生实践创新训练计划立项项目。以小车的精巧、便携等特点,受到评委一致好评。
参考文献
[1]雷思孝.单片机原理及实用技术—凌阳16位单片机原理及应用[M].西安:电子科技大学出版社,2004.
[2]彭传正,林春景.凌阳单片机原理及实践[M].北京:北京航空航天大学出版社,2007-07.
[3]汪敏.凌阳16位单片机实验与实践[M].北京:北京航空航天大学出版社,2007-07.
[4]锣亚非,等编著.凌阳16位单片机实用基础[M].北京:北京航空航天大学出版社,2006-11.
SPCE061A 篇8
激光衍射光栅是计算机光盘驱动以及消费电子等设备中激光读写头的关键部分。目前, 专门用于测量激光衍射光栅参数的仪器还比较少见。DVD读写头中用到的激光波长通常是650 nm, 该设计采用650 nm的激光二极管LD (Laser Diode) 作为衍射光栅源, 结合高性能16位SPCE061A单片机, 设计了激光衍射光栅测试仪, 主要测试衍射光栅0级和1级光斑亮度和光栅透过率, 以提高衍射光栅质量测试的精度和效率[1,2]。
1 测试仪的工作原理
激光衍射光栅测试仪工作原理框图如图1所示。
测试仪的硬件包括四部分:激光二极管的驱动电路、小信号采样及放大电路、LED显示电路和单片机的最小外围电路。系统显示部分选用2块4位的LED, 采用动态扫描方式, 各用1块分别显示光栅的光斑亮度比和透过率。
测试原理:激光二极管驱动电路为激光二极管提供稳定的合适的电压电流, 驱动激光二极管正常发光。光电探测器将经光栅衍射后的光斑分别转换成微弱的电流, 该电流经电流采样及放大电路后得到符合A/D采样范围的电压。该电压经A/D转换后得到相应的数字信号, 将该数字信号进行数据处理, 计算出光斑亮度比以及透过率的值, 最后通过LED显示出来。同时, 设置了重启、清零、开始/保持、报警域值范围设定等控制按键, 以配合测试的进行[3,4]。
2 系统硬件设计
2.1 SPCE061A单片机的最小外围电路
测试仪MCU采用高性能16位SPCE061A单片机[5], 它具有7通道10位电压模/数转换器 (ADC) 和32个可编程的I/O口, 可通过内置在线仿真电路ICE (In-Circuit Emulator) 接口在线调试。SPCE061A的开发是通过在线调试器PROBE实现的。它既是一个编程器 (即程序烧写器) , 又是一个实时在线调试器。用它可以替代在单片机应用项目的开发过程中常用的软件工具——硬件在线实时仿真器和程序烧写器。
10位的单端ADC将GND与VREF之间的线性电压转换成2n个不同的数字量, 即1 LSB=VREF/2n, 该系统中1 LSB=2.5 V/1 024=2.4 mV。例如:假设从光探测器出来的电流为0.100 mA, 经10 kΩ电阻采样后得到1 V电压, 则A/D转换精度为2.4/1×100%=0.24%。再考虑到电流电压转换误差、AD采样误差等, 经测试最后精度可以达到2%, 基本可以满足测试精度。
2.2 激光二极管的驱动电路
设计选用激光二极管型号为日本索尼公司的SDL6161RL, 工作参数为:输出波长为650 nm, 工作电压选用DC 5 V, 阈值电流55 mA, 工作电流为65 mA, 出瞳功率为7 mW。激光二极管驱动电路如图2所示。
图2中稳压管采用TL431, 产生2.5 V稳压后, 经过电压跟随器AR1、电压调整器AR2后得到一稳定的电压VREF送到AR3的正输入端。从AR3出来的电流信号经达林顿管的放大作用产生足够大的驱动电流, 以达到激光二极管的工作电流需要[6]。
图中R2=R3, AR3工作在深度负反馈状态下, 由虚短概念可知, AR3的正输入端和负输入端的电压相等, 即:
undefined
由于IR10⧋IR11, 则:
undefined
由于达林顿管的第一级工作在饱和状态, 则VCE1=0, 即 VC=VE1=VB2, 那么VCE2=VB2E2=0.7 V, 最后可得:
undefined
因此只要给出合适的R6, R7, R10和R11, 便可得到所需的输出电压和电流。
2.3 小信号采样及放大电路
该系统具有两路采样通道, 一路采样0级光斑和未加光栅时激光直接照射探测器的信号, 另一路采样1级光斑光电转换后的信号。从光探测器出来的是0.01~0.5 mA的微弱电流信号, 而单片机的ADC转换范围是0~2.5 V。为了使A/D转换的精度提高, 必须对电流信号进行电流-电压转换并将信号放大。
一般来说, ADC 转换器在对量程范围内的中间值左右的转换误差最小。因此, 设计时将所有电流信号都转换为1 V左右的电压信号。
该系统需要测试的参数为光斑亮度比和光栅透过率, 因此需要测量未加光栅前的探测器电流和加光栅后的两个亮光斑产生的电流。而未加光栅前的电流大概为0.4~0.5 mA, 0级光斑的电流大概为0.1~0.2 mA, 而1级光斑的电流大概为0.01~0.05 mA, 因此它们放大的倍数会有很大差别。 其中测量0级光斑和未加光栅时激光的光探测器是同一个, 为了使两者产生的电压都在1 V左右, 设计一个单刀双掷开关, 以实现不同的放大倍数[5,6,7]。
3 测试仪的软件设计
测试仪主程序流程图如图3所示。其中包括A/D转换子程序、LED显示子程序、外部按键中断子程序。
通过两路A/D分别对0级和1级光斑转换所得的电压信号进行采样, 为了提高采样数据的稳定性与可靠性, 采用了数字滤波。每路数据采样150次, 去掉最大值和最小值之后再取平均值。每一种合格光栅, 其光斑亮度比和透过率的值在一定的范围内, 如果超过这个范围, 说明该光栅参数不合格, 仪器会显示U或倒U来说明该参数是上溢还是下溢, 方便了用户。
4 测试结果与分析
对于10个光栅样品, 测试的1级和0级光斑亮度比数据如表1所示。每个相同样品测5组数据。其中参考值为光栅厂家提供的标准样品值[8,9,10]。
undefined
式 (5) 和式 (6) 中:δ为相对误差;D为均方差;Ri为测量值;undefined为平均值;N为项数。
试验结果表明, 测试仪测试误差小于2%, 均方差小于2.2×10-3, 完全满足设计要求。
5 结 语
该设计利用高性能16位SPCE061A单片机实现了DVD等设备用激光二极管衍射光栅测试仪, 非常适用于小批量衍射光栅的测试。经过实际测试验证, 具有较高的稳定性和精确度。具有溢出报警功能, 同时, 该仪器成本低, 体积小, 检测效率高, 具有较高的推广价值。
摘要:激光经衍射光栅衍射后的光斑亮度比和透过率的测定是保证光盘驱动器等电子设备的质量一个关键环节, 采用高性能16位单片机SPCE061A创新地设计实现波长650 nm激光衍射光栅测试仪器。主要设计了测试仪的小信号采样及调理电路、单片机最小系统以及相关的软件程序。实验结果表明, 对衍射光栅0级和1级光斑亮度比和光栅透过率测试误差和均方差均满足了光栅测试的精度和稳定性要求, 大大提高了测试的可靠性和效率。
关键词:激光,衍射光栅,测试仪,SPCE061A,透过率,亮度比
参考文献
[1]郭军团, 高有行, 范惠敏, 等.基于单片机的光栅测试系统的硬件设计和实现[J].西安工业大学学报, 2006, 26 (5) :423-426.
[2]刑雪宁, 谷亚鹏.基于弯曲损耗的嵌入式光纤监测仪的实现[J].微计算机信息, 2007, 23 (11) :48-50
[3]Vilkomerson D., Lyons D.Clinical Blood Flow Measure-ments Using Diffraction-grating Transducers[A].IEEE Ul-trasonic Symposium[C].1998, 2 (8) :1 501-1 508.
[4]徐秀芳, 胡晓东.半导体激光器的功率稳恒控制技术[J].光子学报, 2001, 30 (6) :761-764.
[5]张培仁.十六位单片微处理器原理及应用[M].北京:清华大学出版社, 2005.
[6]千奕, 苏弘, 李小刚, 等.一种快前置放大电路的研制[J].核电子学与探测技术, 2006, 26 (6) :842-844.
[7]毛伟云, 陈明, 丁力.ARM嵌入式处理器在智能仪器中的应用[J].计算机技术与应用, 2006, 27 (1) :37-39.
[8]Yang S H, Chen X, Alty J L.Design Issues and Implementa-tion of Internet-based Process Control Systems[J].ControlEngineering Practice, 2003, 11 (6) :709-719.
[9]霍戌文, 李伟, 李进, 等.光电探测微信号放大器设计[J].浙江理工大学学报, 2005, 22 (3) :259-262.
SPCE061A 篇9
影响粮食安全储藏的主要参数是粮食的温度和湿度, 这两者之间又是互相关联的。粮食在正常储藏过程中, 含水量一般在12%以下 (安全状态) , 不会产生温度突变, 一旦粮库进水、结露等使粮食的含水量达到20%以上时, 粮粒受潮, 胚芽萌发, 新陈代谢加快而产生呼吸热, 使局部粮食温度突然升高, 必然引起粮食“发烧”和霉变, 并可能形成连锁反应, 从而造成不可挽回的损失.因此设计出一种经济实用的粮库粮情温湿度智能检测系统是非常必要的。
粮情检测属监控系统范畴, 早期粮情监测主要采用温度计测量法, 这种方法对储粮有一定的作用, 但由于温度计精度、人工读数的人为因素等原因, 温度检测速度慢, 精度低, 导致因局部粮食发霉变质引起大面积坏粮的情况时有发生。随着科技的发展, 后续粮情检测方法有电阻式温度传感器、采样器、模数转换器、报警器等组成的储粮监测系统;矩阵式布线技术、半导体、热电偶、单板机组成的储粮监测系统;基于高科技数字式传感器的粮情检测系统等。
本文针对高科技的粮库通风监控系统成本高、操作复杂的特点, 设计了适用于小型粮库的温湿度检测及通风降温模拟系统。
2 系统总体方案设计
本文设计的粮库通风模拟系统的应用对象主要是小型粮食储备库, 其目的是给粮库内的管理人员提供准确的粮情分析报告, 对粮食的温度、湿度参数进行实时检测和深入分析, 确保储备粮食的安全, 并提供智能化管理的功能。
该系统由硬件和软件两部分组成。硬件部分主要包括:SPCE061A主控芯片, 温度传感器, 液晶显示, 按键模拟, 风机调温及其语音报警等部分。软件设计部分主要包括:对温度传感器的程序编写, 对液晶显示的程序的编写, 对按键调节程序的编写, 对语音程序的编写等。
系统的总体框图如图1所示。
3 主要元器件的选择
本次设计中主要用到的元器件有:温度传感器, 液晶显示器, 5V供电的小风机, 按键。
3.1 温度采集方案选择
方案一:模拟温度传感器。采用热敏电阻, 将温度值转换为电压值, 经过运算放大器后送给A/D转换器, 将模拟信号变换为数字信号, 再由单片机经过比较计算得到的温度值。优点:应用广泛, 特别是在工程领域, 采用不同的热敏电阻, 可以实现低温到超高温的测量。缺点:必须采用高速高位的A/D转换器, 系统复杂, 成本高, 还易引进非线性误差, 得通过软件插值修正。
方案二:采用集成数字温度传感器DS18B20。该传感器采用单总线接口, 能方便的用于单片机通信。测温范围从-55℃~+125℃, 测温的精度是9~12位可调, 12位时, 最大的转换时间为750ms, 完全能满足本设计的要求。缺点:成本高, 实时性较差。
综合上述各种因素, 本设计选择数字温度传感器DS18B20方案。
3.2 液晶显示器选择
LCD显示器种类繁多, 安排列形状可以分为字段型, 点阵字符型和点阵图形型。而LCD1602就属于点阵字符型显示模块。其内部的驱动器为HD44100和控制器HD44780, 都采用低功耗CMOS技术。
3.3 风机和按键选择
本设计选择5V供电的, 型号为2510的小风机, 用于温度超出范围是用于调节粮库的温度;按键选用单列式按键 (也称独立式按键) , 它是利用一个一个的分立按钮开关, 按照具体的项目所需的数量排列组合在一起, 连接到单片机的某一个或某几个端口的引脚上的, 本设计选择了四个单列式按键组合在一起, 用于语音的播报和湿度的模拟调节。
4 系统硬件电路建立
粮库通风模拟系统硬件电路的建立包括:温度传感器连接电路、液晶显示连接电路、风机连接电路及按键连接电路。
温度传感器的三个引脚GND、DQ、VCC分别对应接到SPCE061A的GND、IOB0、VCC就可以了。
液晶显示器LCD1602与SPCE061A的连接电路图如图2所示。
在温度超出测量范围时, 风机就会自动转动以保持粮库的温度在合适的范围内。调温风机连接电路如图3所示。
通过两个按键来模拟粮库中湿度的上升和下降, 用两个按键来对温度和湿度进行实时的播报。由SPCE061A单片机的输入输出口IOA0~IOA3分别连接到键盘来接受按键的动作, 从而进行简单的温湿度播报恶和湿度调节的模拟。
按键的连接电路如图4所示。
5 软件程序设计
本设计采用了凌阳SPCE061A作为主控制器, 其强大的功能和充裕的I/O端口为软件编写提供了很大的方便。
首先, 把整个设计要实现的功能分块, 然后分别对各个模块编写程序, 最后将各个子模块联机调试。
主程序的功能是:将温度传感器DS18B20测得的数字信号送入单片机内部与预设值进行比较, 若温度在适宜的范围之内, 则继续执行湿度的模拟控制;并且, 将温度予以显示。同时, 还可以通过按键的形式将此温度进行实时的播报。若温度超出范围, 则语音报警并自动调节风机以使温度恢复到适宜的范围之内。湿度是通过模拟的, 在显示温度的同时, 湿度的百分比也在液晶上显示, 也可以通过按键的形式对湿度进行模拟调节, 如果调整使得湿度超出范围, 则二极管灯亮, 以提醒工作人员对湿度进行调节。主程序的程序流程图如图5所示。
6 联机调试与设计结果
6.1 联机调试
μ’n SPTMIDE环境是由凌阳科技公司提供的一个集成开发环境, 它集程序的编辑编译链接调试和仿真等功能为一体具有友好的交互界面下拉菜单快捷键和快速访问命令列表等使程序设计工作更加方便、高效。此外它的软件仿真功能可以不连接仿真板模拟硬件的部分功能来调试程序。
整个调试过程由静态调试、动态调试至最终完成软硬件联机调试成功。
静态调试是在用户系统未工作时的一种硬件检查。
(1) 目测。单片机应用系统中大部分电路及元器件都安装在印制电路板上。因此, 检查印制、线是否有断线、是否有毛刺、是否与其它线或焊盘粘连现象等。通过目测检查一些明显的器件、设备故障并及时排除。
(2) 万用表测试。通过万用表复核目测中认为可以得连线或接点, 查看它们通断状态是否与设计规定相符。短路现象一定要注意:如果电源对地短路, 系统中所有器件或设备都有可能被毁坏后果十分严重。所以, 对电源与地的处理, 在整个系统调试及今后的运行中都要相当小心。
(3) 加电检查。对各芯片、器件加电过程中, 注意观察芯片是否出现、火花、过热、变色、冒烟、异味等现象, 如出现这些现象, 应立即断电, 仔细检查电源加载等情况, 找出产生异味的原因并加以解决。此外, 也可以在加电期间, 利用给逻辑功能简单的芯片加载固定输入电平, 利用万用表测其输入电平来判断该芯片的好坏。如将反向器的输入端接地, 输入端应为高电平, 否则, 该反向器有问题。
动态调试是在用户系统中的工作的情况下发现和排除系统硬件中存在的故障、器件间连接逻辑错误等的一种硬件检查。其一般方法是由近及远、有分到合。
首先按逻辑功能将用户系统硬件电路分为若干块, 如测温电路、风机转换电路等, 先分块调试。当调试某块电路时, 与该电路无关的器件全部从用户系统中去掉, 这样, 可将故障范围限定在某个局部电路上。当各块电路的调试无故障后, 将各块电路逐块加入系统中, 再对各块电路功能及各电路间可能存在的相互联系进行试验。此时若出现故障, 则最大可能是出现在各电路的协调关系上, 如交互信息的联络是否正确, 时序是否达要求等。直到所有电路加入系统后各部分电路能正确工作为止, 由分到合的调试即告完成。在经历了这样一个调试过程后, 大部分硬件故障基本上可以排除。
部分情况下, 由于功能要求高或设备较复杂使某些逻辑功能模块电路较为复杂庞大, 为故障的准确定位带来一定的难度。这时对每块电路以处理信号的流向为线索, 将信号流经的各器件按照距离单片机的逻辑距离进行有近及远的分层, 然后分层调试, 调试时仍采用去掉无关器件的方法, 这样逐次依次调试下去, 就可能将故障定位在具体器件上。例如:在调试液晶显示器时, 先使其背光灯亮, 表示与单片机的连接正确, 然后再调节其显示使其能正确的显示要求的字符。动态调试借用开发资源 (CPU、存储器等) 来调试用户系统中单片机外围电路, 利用开发系统友好的人机界面, 可以有效地对用户系统的各部分电路进行访问、控制, 使系统在运行中暴露问题, 从而发现并解决问题。
6.2 设计结果
本设计通过液晶显示温度传感器测得的实时温度和开关按键模拟的湿度百分数, 并通过按键对实时的温度进行播报, 还通过按键对湿度数据进行调节。当温度低于0度或者高于40度时, 超标指示灯点亮, 以提醒工作人员进行调节。当湿度超过80%时, 超标指示灯同样也会点亮, 达到同样的提醒的目的。这些功能在这次设计中都得以成功的实现。 (图6、图7) 。
通过以凌阳单片机SPCE061A为主控器的粮库通风模拟系统的设计, 完成了对粮库温湿度的检测, 并进行通风控制。而对于影响粮库的其他因素 (例如:虫害, 霉变及水分) 并没有进行考虑, 所以在以后的研究过程就要对其进行检测与控制, 例如我们针对虫害因素设计一个电路通过检测昆虫的声音进行控制, 而对于水分则如温湿度检测一样, 采用水分传感器检测, 以全面的完成对粮库的检测与控制。
摘要:针对高科技粮库温湿度监控系统成本高, 操作复杂的问题, 设计了适用于小型粮库的温湿度检测模拟系统, 该系统以凌阳科技公司的高性能SPCE061A单片机作为主控制器, 采用数字温度传感器DS18B20作为温度传感器, 采用液晶1602作为显示器件, 采用按键模拟湿度传感器, 采用风机进行通风降温, 实现了小型粮库目标温度的测量、显示、语音播报与超限报警的功能。
关键词:单片机,传感器,监控系统
参考文献
[1]侯媛彬等.凌阳单片机原理及其毕业设计精选[M].北京:科技出版社, 2006.1.
[2]郑丽敏.人工智能与专家系统原理及其应用[M].北京:中国农业大学出版社, 2004.
[3]王风云, 赵一民, 张晓艳.基于人工智能的温室环境控制算法[J].中国农学通报, 2008, 24 (2) :445~448.
[4]陈灵袅.基于十六位单片机的语音控制电风扇[C].北京:企业家天地, 2007, 229~230.
[5]曾伟一.国家粮库粮情监控系统的设计及实现[D].四川大学学报, 2004.
[6]黄飞, 毛钢元.基于凌阳十六位单片机的温度控制系统[J].淮阴工学院学报, 2007, 16 (5) :52~56.
【SPCE061A】推荐阅读: