基于RFID的助盲语音寻物机器人的设计与实现
随着科学技术的发展和人们生活水平的不断提高,我们对生活的安全、舒适、便捷等各方面的要求也越来越高[2]。针对盲人的生理缺陷,研究了一款帮助盲人寻找所需物品的移动机器人,它以UP-MAGIC2410为主控芯片,嵌入式Linux为操作系统,并采用多线程的方式集成了射频识别模块、超声波测距模块、电机驱动模块和语音声控模块。通过RFID模块对物品进行辨识确定所寻物体的位置并且进行精确定位,直流电机和驱动器完成对机器人的移动控制,而超声波模块实现避障功能[3]。盲人可以通过语音来对机器人进行寻物控制,在语音命令的指示下机器人将独立完成一次寻物过程,并会在找到的物体处给出语音提示。基于RFID的助盲寻物机器人是结合了RFID技术、语音声控技术、传感技术等的融合体,它给盲人的生活带了极大的便利[4]。
1功能描述
基于RFID助盲寻物机器人,是帮助盲人寻找物品的电子产品,它可以方便盲人寻找所需物品,避免盲人因找物而带来的麻烦,并可以通过语音命令对机器人进行控制,同时机器人也会给出语音提示,让盲人能享受现代科技生活的便捷。
本系统主要包括以下几个功能模块:
1)智能检测模块:
◆RFID读写器:检测室内的带有RFID标签的物品,确定其物品方位后通过语音提示给盲人。
◆温湿度传感器:检测室内的温度和湿度,通过语音提示给盲人。
◆烟雾浓度探测器:自动检测烟雾及温度,当烟雾浓度大于一定的范围的时候,进行语音提示。
2)手动控制模块:
◆Zigbee模块:在手动控制模块与中控模块之间进行无线传输指令和数据。
◆按键控制:直接通过手持终端上的按键来发出控制指令。
◆SPCE061A语音模块:识别盲人发出的语音指令来控制机器人,语音控制机器人使得整个系统操作简单实用更加人性化。
3)中控模块:
◆中控模块采用北京博创公司的UP-MAGIC2410开发板,它集成了助盲语音寻物机器人的所有子系统,接口丰富,功能强大,是机器人的总控制器。通过手持终端的Zigbee无线通讯,控制机器人的开启、温湿度检测、烟雾浓度检测和语音寻物的功能。
硬件系统框图如下图1。
2项目总体设计
根据助盲寻物机器人的功能与技术要求的实际情况,采用“硬件+软件”的系统结构来设计机器人[5],各部分简要介绍如下:
系统选用基于采用UP-MAGIC2410的硬件开发平台。嵌入式操作系统选用Linux 2.6.24,可以很好的满足用户的需求,而且用户可以对Linux系统进行剪裁或定制。
SQLit3数据库支持大多数的SQL指令,使用方便,一个文件就是一个数据库,不需要安装数据库服务器软件,减小了系统空间的使用量。不仅有完整的Unicode标准支持,而且它还具有速度快的特点,可以减少系统查询所消耗的时间。
系统的开发环境如下:
1)硬件环境:UP-MAGIC2410硬件开发平台、SPCE061A语音模块、Zigbee无线传输模块、超声波模块、RFID模块;
2)软件环境:Linux2.6+SQLite3
3应用的技术分析
3.1 Zigbee简介
ZigBee技术是一种应用于短距离范围内,低传输数据速率下的各种电子设备之间的无线通信技术。ZigBee名字来源于蜂群使用的赖以生存和发展的通信方式,蜜蜂通过跳ZigZag形状的舞蹈来通知发现的新食物源的位置、距离和方向等信息,以此作为新一代无线通讯技术的名称。
ZigBee技术的特点:
1)功耗低:工作模式下,ZigBee传输速率低,传输数据量很小,因此信号的收发时间很短,其次在非工作模式时,ZigBee节点处于休眠模式。2)传输可靠:ZigBee的媒体接入控制层(MAC层)采用talk-when-ready的碰撞避免机制。3)网络容量大:ZigBee低速率、低功耗和短距离传输的特点使它非常适宜支持简单器件。4)兼容性:ZigBee技术与现有的控制网络标准无缝集成。
5)安全性:Zigbee提供了数据完整性检查和鉴权功能,在数据传输中提供了三级安全性。
CC2430是一颗真正的系统芯片(SoC)CMOS解决方案。这种解决方案能够提高性能并满足以ZigBee为基础的2.4GHz ISM波段应用对低成本,低功耗的要求。它结合一个高性能2.4GHz DSSS(直接序列扩频)射频收发器核心和一颗工业级小巧高效的8051控制器。
3.2 RFID简介
RFID模块采用RMU900+读写器。RMU900+模块是超小型化超高频读写器核心部件,它集成了PLL、发射、接收、射频耦合器件 及MCU等。其主要工作频率为840-960MHz,同时支持EPC C1 GEN2、ISO 18000-6C两个协议,可工作在+3.3V的低电压下,最大输出功率可达到27dBm,并且可以通过UART、WIEGAND连接上位机。RMU900+模块还提供完整的通讯协议,可用于上位机为Linux操作系统的应用。
3.3 UP-MAGIC2410简介
本次项目的设计使用的硬件平台是由北京博创兴业科技有限公司开发的UP-MAGIC 2410实验平台。S3C2410微处理器的ARM9高性能的开发平台,主频200MHz,100MHz总线频率。采用最小系统核心板加扩展板的双层构架,标配32MSDRAM和64M NAND FLASH。提供LINUX2.4/2.6操作系统,并且提供了完整的驱动和应用程序。
UP-MAGIC 2410是专门为对成本和功耗非常敏感同时性能要求又相当高的应用而设计的。凭借代码大小和中断延迟的优化、集成的系统部件、灵活的配置、简单的高级语言编程和强大的软件系统,UP-MAGIC2410将成为广大系统(从复杂片上系统到低端的微控制器)的理想解决方案。
部分模块的详细设计:
3.4语音控制模块
语音控制模块主要是通zigbee的无线传输来控制助盲机器人寻找物体。SPCE061A是台湾凌阳公司出的一款单片机,它的CPU内核采用凌阳最新推出μ’nSP?s21(Microcontroller and Signal Processor)16位微处理器芯片。围绕μ’nSP?s21所形成的16位μ’nSP?s21系列单片机采用的是模块式集成结构,它以μ’nSP?s21内核为中心集成不同规模的ROM、RAM和功能丰富的各种外设接口部件;由于具有语音处理的特色,即便是不挂接额外的硬件,也能制作语音通讯产品[6]。
3.5超声波模块设计图如下
超声波是指频率超过20KHz以上的声音。理论上,声音在25℃空气中传播速度的理论值为344m/s,这个速度在0℃时降为334m/s。如果测距精度要求很高,则应通过温度补偿的方法加以校正。而超声波测距是利用超声波在空气中的传播速度为已知,测量声波在发射后遇到障碍物反射回来的时间,根据发射和接收的时间差计算出发射点到障碍物的实际距离。由此可见,超声波测距原理与雷达原理是一样的。
测距的公式表示为:L=C*T (1)。
式(1)中L为测量的距离长度;C为超声波在空气中的传播速度;T为测量距离传播的时间差(T为发射到接收时间数值的一半)。
发射部分用来对超声波换能器进行功率驱动,将由单片机产生的40KHZ脉冲信号送入发射输入端,经过驱动放大达到足够功率之后,推动超声波换能器产生超声波。之所以使用40KHz的脉冲信号是因为实际的需要α=αf2式中α为衰减,α为介质常数(空气中α=2×10-13S2/cm),f位震荡频率。由上面的公示可知,当f=40KHz时,α=3.2×10-4/cm,1/a=31m。如果f=30KMz,1/a=56cm。用波动方程表示超声波A=A0e-axcos(wt+kx),那么(1/a)表示了在这个长度上,平面声波的振幅衰减为原来e分之一。由此可见,频率越高,衰减越厉害,传播的距离越短。
接收部分主要由接收换能器和放大电路等环节组成。其中放大电路是一个放大倍数较高的三级运算放大器,是将从目标处反射回来的微弱信号进行放大整形后送入计数控制电路部分。由于在距离较远时声波的回波信号很小,因而转换为电信号的幅度也较小,为此要求将信号放大60万倍左右[7]。因为共射放大适合用于小信号放大,所以采用三级共射放大:前两级放大100倍,其带宽为15MHz能充分满足要求;第三级采用运算放大器,带宽为4 MHz。
部分代码如下:
void init0int interrupt 0
{uint timer_us = 0;
TR0=0;//关闭定时器0
timer_us = TH0*256+TL0;
if(timer_us>190)timer_us=timer_us-180;//修正测距的距离
if(timer_us<=735)
{timer_us=timer_us-96}//二次修正
length = ((unsigned long)(329)*timer_us)/2000;//计算长度,是扩大1000倍
flag = 0;
EA = 0; }//禁止所有中断
3.6驱动模块的设计
驱动程序是连接硬件设备和设备文件的纽带,是操作系统内核和硬件设备之间的接口。
采用嵌入式Linxu系统,其驱动程序主要有两种加载方式:直接编译入内核和模块加载[8]。其中,采用直接编译进内核方式,在内核启动时就已经存在。而采用模块化加载方式,需要时动态的加载入内即可,这样使得程序按需加载,节省了内存,也相对灵活[9]。
模块化加载的的方式如下:
1)在Linxu内核目录下,执行“make menuconfig”指令,弹出Linux内核的配置菜单。
2)针对本课题选用的PL2303芯片的串口转USB设备,在配置菜单中选择响应的驱动模块,具体如下:
USB support -->
USB Serial Converter Support -->
USB Serial Converter Support
USB Prolific 2303 Single Port Serial Driver
3)退出配置菜单,并执行“make modules”指令编译驱动模块。也可以只编译内指定目录下的驱动模块,即通过执行“make mod? ules SUBDIRS=drivers/usb/serial”指令只编译内核源代码中drivers/usb/serial目录下的驱动模块。
4)执行完上述指令后,会在drivers/usb/serial目录下生成驱动模块usbserial.ko和pl2303.ko。
5)将usbserial.ko和pl2303.ko下载到开发平台上,并执行“insmod usbserial.ko”和“insmod pl2303.ko”两条指令。当然由于pl2303. ko是依赖于usbserial.ko的,所以上述指令的执行顺序是不能改变的。
6)最后,通过mknod建立响应的设备文件结点,即执行“mknod /dev/ttyUSB0 c 188 0”即可,而指令中的/dev/ttyUSB0代表文件节点的名车;“c”代表驱动程序的类型,为字符驱动;而188和0分别代表该串口转USB设备的主次设备号[10]。
3.7系统的工作流程如下
通过对SPCE061A语音模块进行语音命令预存储操作,并将训练的命令存储在flash中,在下次启动时先判定是否已经存储,如果存储,就直接将命令进行加载。否则对其训练。
在语音训练完成时,再和中控进行串口通信。但接受到一条命令时,语音模块就通过串口像中控平台发送一个对应的命令符。
中控平台找到物体后,语音模块可以通过串口中断接受中控平台发来的命令,并给予语音提示。
预先对RFID记录标签信息。RFID启动时,先开启USB接口,等待中控平台传送指令,在通过指令找到相应标签信息,然后开启标签查找功能。
机器人在中控平台的指令下启动,并根据中控平台中寻径算法控制其移动避障。并在每一次移动的同时发送超声波所反馈的信息。
超声波先设定好其探测长度(设定频率),当电机驱动开启后,超声波通过单片机GPIO口控制也随之开启,随着机器人的每一次移动,将前方信息反馈给单片机。再由单片机通过串口传送给中控平台。
先存储语音和RFID标签信息的数据库,再创建语音控制,RFID通信,和算法的线程,机器人的调控接口作为参数设置在算法线程中,由算法来给电机驱动提供指令。
4仿真及总结
基于RFID助盲语音寻物机器人完成实现之后,我们对它进行了测试,当我们在室内点燃物品产生烟雾时,机器人自动会通过语音提示来告诉盲人室内的烟雾浓度过高,同时还可以检测室内的温湿度状况;当通过语音发出寻物指令时,机器人就开始移动寻找物品,如果有障碍物遮挡时它会自动及时进行避障,不至于撞到周围物体,直到机器人移动到RFID模块扫描到所要找的物品时,它会停止移动并且通过语音提示来告诉盲人物品已找到。整个测试结果基本达到了预期的效果,但是机器人移动起来所走的路线由于受到路面等环境因素稍微有点偏差,以致最后离找到的物品发生位置上的偏差。
这款助盲语音寻物机器人所定位的服务对象是我国的广大的盲人群体,切实的帮助盲人解决生活上寻找物体的不便,为他们带来物联网时代下高科技的生活体验[11]。利用RFID定位导航,是依赖其较高的精确度,且便于控制[12]。根据RFID技术检测到目标物的位置[13],利用超声波探测技术结合贪心算法进行局部路径规划[14],在保证规划任务顺利完成的同时,也保证了路径规划的收敛性,并且具有较好的环境适应能力[15]。在探测路面状况方面,是利用超声波来进行实时探测。超声波不仅可以设置探测定长,而且探测距离远。采用Zigbee无线传输语音命令控制机器人,实现人机互动的趣味和便利。
随着对移动机器人技术的深入研究,以及机器人在工业和日常生活中的逐渐普及,采用RFID技术的移动机器人研究的显得越来越为人们所关注,其也必将为人们的生活、生产带了极大的便利。
参考文献:
[1]李磊,叶涛,谭民.移动机器人技术研究现状与未来[J].机器人,2002(24):475-477.
[2]杨化书,曲新峰.工业机器人技术的应用及发展[J].黄河水利职业技术学院学报,2004(4):42-43.
[3]郭戈,胡征峰,董江辉.移动机器人导航与定位技术[J].微计算机信息,2003(8):10-12.
[4]陈博.机器人技术的发展趋势和最新发展[J].西安教育学院学报,2004(3):85-87.
[5]康一梅.嵌入式软件设计[M].北京:机械工业出版社,2008:178,189-194,282-284.
[6]王??.有声图书市场分析[EB/OL].http://bbs.省略/home.php?mod=space&uid=51004&do=blog&id=379745,2010-11-02。
[7]吴涛.移动机器人避障与路径规划研究[D].武汉:华中科技大学,2004.
[8]李俊.嵌入式Linux设备驱动开发详解[M].北京:人民邮电出版社,2008:16-20.
[9]刘淼.嵌入式系统接口设计与Linux驱动程序开发[M].北京:北京航空航天大学出版社,2006:199-204.
[10]童永清.Linux C编程实战[M].北京:人民邮电出版社,2008:204-219.
[11]蒋新松.机器人学导论[M].沈阳:辽宁科学技术出版社,1944:511-516,543-554.
[12]陈华志,谢存禧.移动机器人导航及其相关技术的研究[J].机床与液压,2003(4):12-15.
[13]雷斌.动态环境下多移动机器人路劲规划研究[M].武汉:武汉理工大学,2006.
[14]刘京京.多目标遗传优化及其在机器人路径规划中的应用[D].南京:南京理工大学,2007.
[15]刘世成.工业机器人路径规划算法研究[M].沈阳:沈阳工业大学,2004.
1
蓝牙传感器监测吉他温湿度 向更智能、更精准发展
Nordic Semiconductor宣布,总部位于北京的青萍科技有限公司已选择nRF52832低功耗蓝牙先进多协议芯片级系统,为“李吉他蓝牙温湿度计”传感器设备提供内核处理和无线连接能力。
这款专业吉他温湿度传感器产品可通过内置磁铁固定在吉他音孔附近的面板上,连续监测吉他内部和周围的温湿度情况。用户可随时查看乐器存放环境的温湿度,并适时调整,预防吉他变形、开裂或开胶。保存吉他的适宜温度范围为20~25°C,湿度范围为40%~50%,温度或湿度的剧烈变动可能导致严重的后果,例如部件翘曲、品丝突出和琴桥损坏等。
连吉他都用上了蓝牙传感器,我们生活中还有哪些蓝牙传感器的踪影呢~跟随小编的步伐来了解一下吧。
基于蓝牙技术的无线温度传感器
在各种生产现场都需要温度传感器实现温度的检测中,温度是一种常用的控制参数。但在一些危险的场合或物体移动的情况下,有线的温度传感器不仅布线复杂而且容易造成线缆脱落影响数据的可靠性。近年来,蓝牙技术作为一种较成熟的短距离无线通信技术,将它和单片机技术相融合设计无线温度传感器,可以方便、实时、可靠地将采集到的温度数据传输给控制终端,保证了生产的顺利进行。而且,经过功能扩展建立的无线传感器网络,能够适应更加复杂的测量现场。
无线温度传感器主要由单片机控制单元、蓝牙模块、温度检测单元、接口电路及其它辅助电路组成。控制单元凌阳单片机为整个系统的核心,对检测到的温度数据进行转换、显示、传输。蓝牙模块包括蓝牙芯片、放大器、非平衡变压器等,负责与蓝牙控制终端进行无线连接和数据传输,按键完成系统设置、复位等信息输人,测量的温度数据在传输到控制终端的同时在LED上显示,并通过扬声器定时语音播报当前温度数据和超限报警。
由于无线温度传感器负责向控制终端传输数据,因此何时进行数据采集、何时进行数据传输可以由控制终端决定,并且控制终端一般接有持久的电源,所以电源管理的开销由终端来负责比较合适。把控制终端作为主设备,将电源管理程序设计在终端的应用控制层中,并由控制终端完成设备的查询、配对、建链等工作,当无线传感器与控制终端配对成功并建立连接后进入休眠模式。当需要进行数据传输时,退出休眠模式进人呼吸模式,当数据传输结束后再次进人休眠模式,从而尽可能地降低能耗。
低功耗蓝牙与传感器
随着用户对智能家居系统的远程控制需求,模拟传感器和数据传感器的应用越来越多。低功耗蓝牙模块能够快速响应,且支持二次开发,使用方便,能满足智能家居系统的应用需求,也越来越多的物联网工程师开始将数据采集和传输的重担移交给低功耗蓝牙。
一般传感器都会采用一种常用并容易被主设备检测到相关的通信模式与之通信。在实际应用中,传感器一般体积偏小,而为了提高待机时长,相比其他的无线传输方式,工程师一般会优选低功耗、小尺寸的蓝牙模块;其次,低功耗蓝牙模块的接口也相对丰富,传感器可以采用多种不同的方式进行连接。
传感器可以大致分为模拟和数字两种。典型的模拟传感器包括用于监测气体、烟雾、环境光线等的传感器。数字传感器包括监测温度、湿度、压力等的传感器,其中低功耗蓝牙模块主要负责通过通信接口采集传感器数据,经处理或所接收的数字数据可以通过BLE接口发送,并由内置BLE功能的手机或任何其他客户端设备进行监测。
蓝牙传感器的未来
1.更灵活且更柔性
柔性蓝牙传感器是未来传感器发展的一个重要方向。目前,柔性光传感器、PH传感器、离子传感器和生物传感器仍处在早期开发阶段。在未来,这些柔性蓝牙传感器将拥有更多创新应用,如人造皮肤、可穿戴传感器和微动传感。通过微线技术和磁场,蓝牙传感器可以像头发丝一样纤细,而又具有弹性,不需要电源,可以无接触地测量温度、压力、拉力、应力,扭转和位置。
2.更小,更便宜
随着各种新平台和新材料的应用,制造商可以制造更小的蓝牙传感器,其性能可以与毫米级和微波级的电子元器件一样高,并且随着更少的硅的应用,成本将大幅降低。同时,新平台还会降低蓝牙传感器的设计、开发和制造成本。从长远来看,可自我校准的蓝牙传感器具有非常高的成本效益。通过自动校准,可以减少蓝牙传感器的维护次数和时间,并大幅降低维护成本。另外,可自我修复的蓝牙传感器将会有更广泛的应用范围,并使维护成本更低,特别是在发生各种灾难和风险时将大有用处。
3.更高的准确性
目前,多通道协作频谱感知的研究还处于初期阶段。未来,一旦技术成熟,它将比现在的单通道蓝牙传感器提供更精确的监测数据。更准确、更可靠和可复制的蓝牙传感器将在医疗设备等领域拥有更多的应用场景,其实现的功能也更加强大。
为了更好的实现智能化,未来蓝牙芯片将和传感器进行深度融合,最有可能的是厂商会提供封装形式的蓝牙芯片组。未来蓝牙与传感器结合可以把采集的数据直接送到云端进行处理,这样每个装有蓝牙模块的设备都成为智能设备,这样的应用在家庭、办公场所可以有很大发挥的潜力。
相关问答
...括 语音 信号的采集与回放,面板旋钮状态的编码, 语音 信号_作业帮[最佳回答]Thetopicstousewirecommunicationsanalogwirelesscommunicationprocess,andmilitarytrainingin...
凌阳单片机 发展历程?随着单片机功能集成化的发展,其应用领域也逐渐地由传统的控制,扩展为控制处理数据以及数字信号处理即DSP(DigitalSignalProcessing)等领域。凌阳的16位单...
学51 单片机 更有前途还是学 凌阳 61 单片机 更有用处?当然是51,现在市面上的51单片机我所知道的就有几十种,它们的指令相同,芯片内部包含的资源则各有特点,用法相似,可移植性好。生产51的公司众多(Intel、Atm...