一种智能家居服务机器人的家居服务设计
2016-11-26曹琛常乐
曹琛,常乐
(北京理工大学 计算机学院,北京 100081)
一种智能家居服务机器人的家居服务设计
曹琛,常乐
(北京理工大学计算机学院,北京100081)
提出一种智能家居服务机器人设计架构,以TMS320F2812作为主控芯片,嵌入监听器模块,利用延时估计法实现声源方位的实时检测;嵌入语音识别模块、电机驱动模块和避障模块,实现语音控制机器人的运动,并且利用超声波传感器使得机器人在移动过程中能够躲避障碍物;此外,提供编程接口实现机器人对家庭成员语音指令做出相应的行动。
TMS320F2812;智能家居;机器人;语音识别;超声波避障
引 言
随着电子技术、嵌入式领域的快速发展,智能控制和自动化技术日益成熟,同时机器人领域也得到了突飞猛进的发展,让机器人听懂人话,用各种指令(如声音、手势)来操纵机器人进行一系列的操作,使之能与人交流,完成人们交给它们的任务是越来越多的工业、商业、家庭、乃至个人亟待发展的课题之一。
现代家居中,人们越来越注重家中各种家具布局的智能化,可操作化,合理化,科学化和人性化。提出一种包含语音、通信接口、电机、避障、信号处理等模块的设计框架,可以设计制造出一种智能化、人性化的智能家居服务机器人。
生活中人们需要到有垃圾桶的地方去扔废物或杂物,会带来一些不便性,尤其是老人、孕妇和残疾人,不便、费时、费劲等问题更为突出。针对一问题,设计出一种可帮人处理垃圾的家居服务机器人,机器人随叫随到,当用户想要扔垃圾的时候,只要将指令说出来,机器人就会快速准确无误地来到身边。由于声音信号在系统中会转化成数字信号,对数字信号的处理结果直接决定了最终的效果,因此本系统还设计了一套基于DSP控制的能够语音识别的智能机器人,实现“随叫随到”的控制功能。
1 系统方案
本系统以TMS320F28012作为核心控制器[1],以拾音器作为声音传感器,采用延时估计法,实现对用户位置的实时检测与自行判断;采用超声波传感器实现自动躲避行进过程中的障碍,准确到达用户方位;同时,采用语音识别技术实现对用户各种语音指示的识别,从而使得此智能家居机器人具有声控避障功能,能“随叫随到”,体现了智能化,充满了人性化。
1.1 系统硬件设计方案
系统硬件包括两大部分:机器人机械结构和硬件控制电路。基于三轮车构造的想法,车体的机械结构为一部三轮小车车体,当车体上的拾音器接收到指令信号(用户的声音指令)时,自动地移动到用户所在处。
系统总体框图如图1所示,包括电源设计模块、TMS320F2812最小系统模块、语音识别模块、声源定位模块、电机驱动模块、超声波避障模块。
图1 系统总体结构图
1.2 系统软件设计方案
系统软件主要包括一些算法,如特定语音识别算法、声源定位算法和自动避障算法。
1.2.1 特定语音识别算法
针对特定语音的识别,本设计采用的是凌阳语音芯片SPCE061A,其处理过程如图2所示。首先要滤除输入的语音信号的噪音并进行预加重处理,提升高频分量,然后利用线性预测系数等方法进行频谱分析,找出语音的特征参数作为未知模式,与预先存储的标准模式进行比对,当输入的未知模式与标准模式的特征一致时,计算机便识别输入的语音信号并输出结果[7]。
图2 SPCE061A语音识别过程
输入的语音与标准模式的特征完全一致固然好,但是,语音含有不确定因素,完全一致的情况几乎不存在,事实上没有人能以绝对相同的语调把一个词说两遍。因此,要预先制定好打算输入语音的特征模式与标准模式类似程度(或距离度)的算法规则,把距离最小(即最类似)的模式作为识别相应语音的方法。
1.2.2 声源定位算法
针对声源定位,本设计采用了基于传声器阵列时延估计法[4]来判断用户声源的方向。基于时延估计的声源定位算法分为两个部分:①时延估计,计算声源到两个传声器之间的时间差;②方位估计,根据时延和传声器阵列的几何位置来估测出声源的所在位置。第一部分即时延估计的准确度是关系到声源定位准确与否的关键条件。
(1)时延估计
时延估计(Time Delay Estimation,TDE)采用广义互相关法。假设两传声器m1和m2间距为d,在没有混响的情况下,两传声器接收到的信号x1(t)和x2(t)为:
s(t)是声源信号,α1、α2是在声源至传感器传递过程中声波的传播衰减系数;τ是声源传播至两个传感器延迟时间,即到达时延(TDOA);n1(t)、n2(t)为环境噪声。可以采用传统的互相关法来估测到达时延(TDOA),互相关方程如下:
根据式(3)选取不同的权函数ψ12(ω),就可得到到达时延的不同算法,可以根据实际情况(实际声学的环境)选择对应的准则来选取权函数,使得Rx1x2(τ)有个较尖锐的峰值,得到较好的估测效果。Rx1x2(τ)的峰值处就是两个传声器之间的时延。可是在实际场景下,权函数的选取是一个难点。目前用得比较多的是基于互功率谱相位加权(CSP)法,其中加权函数选为。此方法的核心思想是对信号互功率谱进行归一化处理,去除信号的幅度值,只保留信号的相位特征,对于抑制噪声和混响,都有不错的效果。
(2)方位估计
图3 几何定位法
由图3可得:
因为AB距离和V声音已经给出,时延(tA-tB)可由式(1)~(3)算出,再由式(4)、式(5)就可求得声源偏移正方向的角度θ。得到方位后,就能编程控制驱动电机,驱动机器人向用户方向移动。
1.2.3 超声波避障算法
避障采用声波反射原理,在测量过程中声波信号由传感器发出,在发射的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即反射回来,超声波接收器收到反射波就立即停止计时。因此可以采用时间差测距法,根据计时器记录的时间就可以计算出发射点距障碍物的距离S, 即S=v×Δt/2。式中,v为超声波在空气中的传播速度,该值与温度有关,在常温下近似为340 m/s;Δt为发射、接收信号的时间差。
系统中在机器人前、后、左、右分别放置超声波传感器,可分别测量出垃圾桶与障碍物之间的距离,根据距离的远近决定机器人的转向。
2 系统硬件设计
2.1 电源模块
本系统的电源模块[5]如图4所示。TMS320F2812芯片的核心需要+1.8 V供电,I/O口需要+3.3 V供电;凌阳语音芯片SPCE061A由5 V供电;拾音器由5 V供电;直流电动机由5 V供电。
对照组和观察组的60例研究患者每天给予患者1枚安达芬栓(重组人干扰素α2b栓,安徽安科生物工程(集团)股份有限公司生产,国药准字S20020103,10万U/粒)进行治疗,于月经结束后第3天开始使用,具体用药方法为每晚睡前将药物置入到阴道后穹窿处,1粒/次,且连续使用12次为1个治疗疗程,治疗3个疗程。患者在治疗期间禁止盆浴、阴道冲洗、性生活。
图4 电源模块
2.2 声源定位模块
声源定位模块主要包括拾音器构成的麦克风阵列和信号处理单元,如图5所示。
图5 拾音器与DSP连接图
麦克风阵列采用两个拾音器(监听器)来实现,拾音器具有成本低、保真度高、噪声小、功耗低、传输距离远等优点,监听范围为30~50 m2。不过拾音器所拾取的声音信号过小,在采集的时候容易受周围环境噪声的影响,所以有必要对声音信号进行预处理,在设计中通过信号调理单元进行处理,使之尽可能满足系统要求。本设计采取两级放大电路,主要是为了放大拾音器采集到的微弱电信号。又因为A/D模块无法采集负电压,因此需要对放大后的电信号进行偏置,使其不出现负电压,以便于后续的DSP采样,更大程度地减小误差。
2.3 语音识别模块
本设计采用语音芯片SPCE061A作为语音模块实现语音识别,相比于专业的语音处理芯片更加方便,节省了成本,且容易实现。此芯片拥有8路10位精度的ADC,其中一路为专用声音转换通道,并且内置麦克风放大器和自动增益控制(AGC)电路,这为实现语音识别提供了方便的硬件条件。不仅如此,SPCE061A还具有通用异步串行接口(UART)模块,可以用来与TMS320F2812串行通信。借助于IOB端口的复用功能和UART IRQ中断,可以同时完成UART接口的接收与发送过程。SPCE061A 与TMS320F2812通过串口进行通信,如图6所示。
图6 语音芯片SPCE061A与DSP的连接图
2.4 TMS320F2812最小系统
智能机器人控制器是最主要的核心部分,它的主要作用在于:接收并处理各种传感器信号,准确判断输入信号,并输出合适的输出信号,因为需要处理的数据量是很大的,所以对实时性和准确度要求很高,适合采用DSP。
本设计选用TI公司的32位定点数字信号处理器TMS320F2812为核心处理器。TMS320F2812每秒可以执行150 MB条指令,具有强大的数据处理能力,片内存储器资源包括:128 KB×16b POM,18 KB×16b的数据存储器SARAM、片内128 KB×16b的Flash程序存储器、4 KB×16b片上Boot ROM、1 KB×16b的一次可编程存储器OTP;同时集成丰富的外设资源,主要包括模/数转换模块(ADC)、事件管理器模块(EV)、串行外设接口模块(SPI)、串行通信接口模块(SCI)、CAN控制器模块(eCAN)等,可以很方便地采集并处理各种传感器信号,实时地控制机器人的移动,并完成与语音识别芯片的通信。
2.5 电机驱动模块
电机驱动模块根据DSP控制器的控制信号驱动电机的运行(前进、转弯、后退等)。电机的驱动电路采用H桥驱动电路,如图7所示[6]。
Q1、Q2、Q3、Q4这4个三极管组成4个桥臂,Q1和Q4一组,Q2和Q3一组,Q5控制Q2、Q3的导通与断开, Q6控制Q1和Q4的导通与断开。由于Q5、Q6由TMS320F28027的GPIO口来控制,这样就能通过I/O输出的高低电平来控制四个桥臂的导通与关断,从而控制电机的运行状态(正转或反转等),进而控制垃圾桶的移动方向。在设计中利用了L298N芯片驱动元件,可以有效地避免分立元件带来的电路板过于复杂的问题。
图7 H桥驱动电路
2.6 避障检测模块
障碍检测模块作为对外部障碍信息的采集窗口,把移动过程中障碍信息检测出来,并交给DSP控制器进行处理。系统中采用的传感器是UCM40T/R,若传感器接收到反射的超声波,就通知DSP控制器前方有障碍物,反之则可以行进。超声波避障模块与DSP控制器的连接图如图8所示。
图8 超声波避障模块与DSP控制器的连接图
3 系统软件设计
系统软件主要包括:特定声源定位算法模块、避障软件模块、数据采集模块、SCI通信模块。系统总体软件流程图如图9所示。
3.1 特定声源定位算法模块
本系统的声源定位算法主要基于传声器阵列时延估计法,利用A/D采样模块检测不同拾音器所接收到的声音信号,算法实现上采用的是广义互相关法。DSP采样得到的波形接近为正弦波,将对应采样得到的值放入数组中保存,首先进行相关运算,得出互相关谱。为了避免误差和杂音的干扰,进行了多次计算去除了误差较大的值。其算法流程图如图10所示。
图9 系统总体软件流程图
图10 声源定位算法流程图
为了避免机器人对接收到的任何声音都进行定位,本系统在定位时加入了语音识别,即只对需要的声音进行方位判断,其算法流程图如图11所示。对特定声音进行语音识别的流程图如图12所示。
3.2 避障软件模块
避障软件模块采用一个计数器实现对时间的采样。机器人上电后,首先对前进方向上的两个超声波上电,并在触发其中一个超声波的同时启动计数器工作,每个回波返回,都会触发一次外部中断,在外部中断处理程序对超声波返回时间进行记录。同时启动另一个超声波传感器而关闭当前工作的传感器。
实际上,在每个时刻,只有一个超声波传感器[8]工作,并采集到数据。当前面的两个超声波中的任何一个采集到的数据小于同定值(认为有障碍物的值)时,才依次打开另外3对超声波传感器。超声波避障流程图如图13所示。
4 系统创新点
本系统的创新点介绍:
图11 语音辨识整体框图
图12 特定声音的声源定位流程图
①选择TMS320F2812作为DSP控制器,充分利用其A/D采样、GPIO、中断、定时器SCI等功能,利用TMS320F2812超强的MCU特性(高速采样和快速计算能力)采集并且计算出了μs级的时间差信号,从而实现了系统的集成化。
②本设计所采用的特定声源定位法,可以有效地实现机器人对特定的声音指令的判断并定位,从而向声源移动。
③设计的机器人能够对特定的声音指令进行识别,根据不同的指令做出不同的动作,从而使其人性化。
④所设计的机器人能够在移动过程中躲避障碍(利用超声波避障模块),从而使其更加智能化。
⑤本设计在机器人设计范畴内,实现了机器人的听觉(声音定位)、认知(根据不同声音指令做不同操作)、行走(运动)和触觉(躲避障碍物)等功能。
5 评测与结果
用户相对机器人有多个测试位置,其中用户距离机器人的直线距离均大于4 m。测试结果如表1和表2所列。
表1 特定声音定位测试结果
图13 超声波避障流程图
表2 声音识别测试结果
结 语
从上述一系列的测试可知,当机器人接收到用户的声音信号后,会自动地移动到用户身边,若移动过程中有障碍物,能够很聪明地躲开。机器人还能识别用户不同的声音指令,并根据不同的指令做出不同的操作。下一步工作将对算法不断改进,使其更加成熟。
[1]苏奎峰,吕强,常天庆,等.TMS320X281x DSP原理及C程序开发[M].北京:北京航空航天大学出版社,2008.
[2]容茂成,祖丽楠,杨鹏.移动机器人听觉定位技术研究[J].机器人技术与应用,2009(1).
[3]吕晓玲,张明路.基于机器人听觉的声源定位策略[J].传感技术学报,2010(4).
[4]崔玮玮,曹志刚,魏建强.声源定位中的时延估计技术[J].数据采集与处理,2007(3).
[5]康华光.电子技术基础模拟部分[M].4版.北京:高等教育出版社,1999.
[6]谢自美.电子线路设计、实验、测试[M].2版.武汉:武汉华中理工出版社,2000.
[7]李晶皎.凌阳十六位单片机原理及应用[M].北京:北京航空航天大学出版社,2003.
[8]徐科军.传感器与检测技术[M].北京:电子工业出版社,2004.
(责任编辑:杨迪娜收修改稿日期:2016-05-12)
Home Service Design of Smart Home Service Robot
Cao Chen,Chang Le
(School of Computer Science,Beijing Institute of Technology,Beijing 100081,China)
In the paper,a design architecture of intelligent home service robor is proposed,which takes TMS320F2812 as the master chip, the listener module is embedded.The delay estimation method(Time Delay Estimation,TDE)is used for the real-time detection of the sound source orientation,the embedded speech recognition module,the motor drive module and the obstacle avoidance module are used for the voice control movement of the robot.The robot uses the ultrasonic sensors in the process of moving,that can avoid the obstacles. In addition,it provides a programming interface for the robot family members voice commands to make the appropriate actions.
TMS320F2812;smart home;robot;sound source recognition;ultrasonic obstacle avoidance
TP368.1
A