首页 » PHP教程 » rfidphp接口技巧_基于RFID的助盲语音寻物机械人的设计与实现

rfidphp接口技巧_基于RFID的助盲语音寻物机械人的设计与实现

访客 2024-11-23 0

扫一扫用手机浏览

文章目录 [+]

1功能描述

基于RFID助盲寻物机器人,是帮助盲人探求物品的电子产品,它可以方便盲人探求所需物品,避免盲人因找物而带来的麻烦,并可以通过语音命令对机器人进行掌握,同机遇器人也会给出语音提示,让盲人能享受当代科技生活的便捷。

rfidphp接口技巧_基于RFID的助盲语音寻物机械人的设计与实现

本系统紧张包括以下几个功能模块:

rfidphp接口技巧_基于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=CT (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 = TH0256+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

相关文章