当前位置:首页 > 嵌入式 > 嵌入式教程
[导读]SPCE061A在智能语音识别避障机器人中的设计应用

现代社会中机器人这个词语已经不再新鲜,而且形形色色的机器人出现在我们的日常生活中。为了提高广大单片机爱好者学习单片机的兴趣,在凌阳科技教育推广中心的兴趣产品智能机器人的基础上,配合超声波传感器的使用,使机器人具有障碍检测功能。本文对这个避障机器人的软硬件制作进行介绍。

 
1  引言

  为了提高广大单片机爱好者学习单片机的兴趣,凌阳科技教育推广中心推出了应用SPCE061A作为主控制器,外加电机驱动电路制作的智能机器人。该机器人采用特定人语音识别对机器人进行控制,可以完成向前走、倒退、左转、右转、跳两首舞曲、向左瞄准、向右瞄准、发射、连续发射等功能。在此基础上,配合凌阳科技教育推广中心推出的超声波测距模组,为机器人增加了活动过程中实时检测前方障碍物、遇到障碍停止运动并向前方发射飞盘等功能,进一步丰富了机器人的功能,可以大大提高在校学生学习单片机的兴趣。

2  模组特性简介
2.1  SPCE061A特性简介

  SPCE061A是凌阳科技研发生产的性价比很高的一款十六位单片机,使用它可以非常方便灵活的实现语音的录放系统,该芯片拥有8路10位精度的ADC,其中一路为音频转换通道,并且内置有自动增益电路。这为实现语音录入提供了方便的硬件条件。两路10位精度的DAC,只需要外接功放(SPY0030A)即可完成语音的播放。另外凌阳十六位单片机具有易学易用的效率较高的一套指令系统和集成开发环境。在此环境中,支持标准C语言,可以实现C语言与凌阳汇编语言的互相调用,并且,提供了语音录放的库函数,只要了解库函数的使用,就会很容易完成语音录放,这些都为软件开发提供了方便的条件:
特性:
  16位μ‘nSP微处理器;
  工作电压:内核工作电压VDD为3.0~3.6V(CPU),IO口工作电压VDDH为VDD~5.5V(I/O);
  CPU时钟:0.32MHz~49.152MHz;
  内置2K字SRAM;
  内置32K闪存ROM;
  可编程音频处理;
  晶体振荡器;
  系统处于备用状态下(时钟处于停止状态),耗电小于2μA@3.6V
  2个16位可编程定时器/计数器(可自动预置初始计数值);
  2个10位DAC(数-模转换)输出通道;
  32位通用可编程输入/输出端口;
  14个中断源可来自定时器A / B,时基,2个外部时钟源输入,键唤醒;
  具备触键唤醒的功能;
  使用凌阳音频编码SACM_S240方式(2.4K位/秒),能容纳210秒的语音数据;
  锁相环PLL振荡器提供系统时钟信号;
  32768Hz实时时钟;
  7通道10位电压模-数转换器(ADC)和单通道声音模-数转换器;
  声音模-数转换器输入通道内置麦克风放大器和自动增益控制(AGC)功能;
  具备串行设备接口;
  低电压复位(LVR)功和低电压监测(LVD)功能;
  内置在线仿真板(ICE,In- Circuit Emulator)接口。

2.2  超声波模组简介
2.2.1  功能简介

  三种测距模式选择跳线J1(短距、中距、可调距):
  短距:20cm~100cm左右(根据被测物表面材料决定),精度1cm;
  中距:70cm~400cm左右(根据被测物表面材料决定);
  可调:范围由可调节参数确定,当调节在合适的值时,最远测距700cm左右;

2.2.2  电气参数
  超声波传感器谐振频率:40KHz
  模组传感器工作电压:4.5V~9V
  模组接口电压:4.5V~5.5V

2.2.3  超声波发射电路原理图

 

图 2-1 超声波谐振频率调理电路原理图

  由单片机产生40KHz的方波,并通过模组接口(J4)送到模组的CD4049,而后面的CD4049则对40KHz频率信号进行调理,以使超声波传感器产生谐振。

2.2.4  超声波回波接收处理电路

图 2-2 超声波回波接收处理电路

  超声波接收处理部分电路前级采用NE5532构成10000倍放大器,对接收信号进行放大;后级采用LM311比较器对接收信号进行调整,比较电压为LM311的3管脚的输入,可由J1跳线选择不同的比较电压以选择不同的测距模式。

2.2.5  电源接口

图 2-3 超声波模组的电源接口电路

  为外部电源接口,最高电压不要超过12V,J2为电源选择跳线,VCC_5即为由61板通过10PIN排线引入模组的电源;VCC即为模组的放大器、调理电路的供电电源。当用户使用61板为其供电时,要把VCC与VCC_5V短接;而使用外部电源时,要把VCC与VCC_IN短接。

2.2.6  测距模式选择跳线

图2-4  超声波测距模式选择跳线电路

  模组提供了测距模式选择跳线J1,可以选择短距测量模式、中距测量模式,或距离可调模式。跳线选择LOW时为近距测量模式,选择HIG时为中距测量模式;选择SET时为距离可调模式。凌阳科技大学计划提供了短距测量模式和中距测量模式的完整程序(其中ultrasonic_Low为短距测量模式程序;ultrasonic_long为中距测量模式程序)。

2.2.7  模组接口

图 2-5  超声波模组接口电路 [!--empirenews.page--]

  用户只需要把前面的电源输入跳线J2、测量模式选择跳线J1设置好后,用排线把J5与SPCE061A的IOB口低八位相接,J4与IOB口高八位相接,即可使用了。

2.2.8  注意事项
  ◆提供给模组的电源必须在4.5V以上,而且尽量保持电源电压的稳定。
  ◆模组外接电源接口J3接入的电源不要超过12V。
  ◆模组工作的性能与被测物表面材料有很大关系,如毛料、布料对超声波的反射率很小,会严重影响测量结果。
  ◆模组的中距测距模式的精度与程序设计有关,提供的范例程序中没有对测距结果进行标定,所以有3~5cm的距离误差时是正常的。

2.3  机器人简介
2.3.1   机器人驱动电路图
  机器人驱动电路图如图2-6所示:

图 2-6 机器人驱动电路图

  机器人驱动电路采用功率较大的三极管搭成H桥来驱动电机,可以实现电机的正向旋转与电机的反向旋转。这些电机包括2个用于走路的电机与一个头部转向的电机。另外用了一个三极管驱动单向旋转的电机,包括加速电机与发射电机,驱动电路比较简单。

2.3.2  主要功能
  ◆通过语音命令对其进行控制;
  ◆可以跳两首舞曲;
  ◆走步功能、转向功能、转头功能;
  ◆发射飞盘功能;

2.3.3  机器人实物图

图 2-7 机器人实物图

2.3.4  注意事项
  ◆机器人在发射飞盘时不要面向人,避免受伤
  ◆机器人要轻拿轻放应该避免摔打
  ◆在安装电池时注意正负极,否则容易烧坏机器人电机或主控制板

3  系统总体方案介绍
  用61板来控制机器人,使用了IOA7-IOA15以及IOB2和IOB9资源,另外使用了扬声器。如图3-1所示:

图 3-1 系统的结构框图

  系统主要由61板、超声波测距模组和机器人驱动电路构成。61板作为整个系统的主控板,超声波测距模组在机器人运动期间定期检测前方是否存在障碍物,驱动电路驱动电机,在主控板61板的控制下完成各个动作。另外增加了特定人语音识别的功能,通过命令来控制机器人,使机器人智能化。

4  系统软件设计
  在主函数中调用相关函数完成特定人语音的训练,然后在训练成功后进行语音识别,根据识别的命令执行相关的操作。程序流程如图4-1所示:

图 4-1 主程序流程图

  根据FLASH中的标志位来进行判断是否为第一次下载。使用库函数BSR_ExportSDWord(uiCommandID)将训练好的语音模型导出存储到FLASH中进行操作,然后再调用读写FLASH函数。在进行语音识别时,首先读取FLASH将语音模型取得,然后调用BSR_ImportSDWord(uiCommandID)函数将语音资源载入内存。在识别出命令后,执行相关动作,相关动作操作就是操作电机的正向或反向旋转同时配合延时与播放声音组合起来形成不同的动作。
  避障的实现是在机器人活动期间完成的。
  在机器人活动期间会播放背景声音或音乐。播放采用后台方式,使用4096Hz时基中断处理语音解码。这样可以释放大量CPU资源在前台处理其他事务。
  语音播放函数流程图如图4-2所示。

图 4-2 语音播放程序流程图 [!--empirenews.page--]

  在4096Hz时基中断中进行的处理流程如图4-3所示。

图 4-3 语音播放中断服务程序流程图

  在播放背景音乐的同时,程序将调用超声波测距函数进行机器人前方障碍物检测。测距函数利用TimerB产生40KHz的PWM方波驱动超声波发射传感器。当接收传感器接收到回波后经过处理电路处理将引起SPCE061A的外部中断,计算从发射超声波到产生中断的时间,即可计算出目标物体的距离。测距函数流程如图4-4所示。

图 4-3 语音播放中断服务程序流程图

  在播放背景音乐的同时,程序将调用超声波测距函数进行机器人前方障碍物检测。测距函数利用TimerB产生40KHz的PWM方波驱动超声波发射传感器。当接收传感器接收到回波后经过处理电路处理将引起SPCE061A的外部中断,计算从发射超声波到产生中断的时间,即可计算出目标物体的距离。测距函数流程如图4-4所示。

图4-5 编译、链接图

  步骤二:下载程序代码到机器人的61板上。
  步骤三:打开机器人的电源,进行语音训练,训练过程按照下面进行:
按顺序训练以下15条指令:"名称","开始","准备","跳舞","再来一曲","开始","向前走","倒退","右转","左转","准备","向左瞄准","向右瞄准","发射","连续发射"。每条指令要训练两遍。当一条指令被正确识别时会提示进入下一条;如没有被识别会要求重复该指令,直到正确识别为止。
  步骤三:如果训练成功则进入语音识别状态,如果训练没有成功则重复训练。由于SPCE061A的FLASH存储器只有32K,所以15条指令需要分组存放。在这里分成3组,每组5条指令。在不同组指令中交换需要根据触发名称,所以在识别状态,要执行动作首先需要触发名称,就是训练的第一条命令,然后可以识别第一组的其余四条命令。在触发第一条指令,然后再触发第二条指令,就可以识别第三条指令,参考下图:

图 4-6 机器人操作示意图

  步骤四:在机器人前进、倒退、跳舞时,用手或其他物体靠近机器人前方,机器人会发出"HoHooHoHoo"的声音,并停止动作,接着,向前方发射飞盘。

  应用SPCE061A外加电机驱动控制电路可以实现多个电机的控制,完成机器人的许多动作。配合超声波传感器等感测装置,可以为机器人增加更多的功能。单片机爱好者可以自己制作电机驱动电路,选择多式多样的传感器,发挥想象力制作出自己的机器人。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭