基于FPGA技术的智能导盲犬
摘 要:利用FPGA技术设计出一种智能导盲犬,可以有效减少费用和提高实用性,克服普通导盲犬训练费用高、培养时间长的缺点。设计基于Altera公司的DE1开发系统,在使用中进行实时图像处理,波形处理,以及多进程并行处理;利用超声波测速测距系统以及图像采集系统采集外部环境信息,经综合处理系统对信息进行处理分析,并进行多模块输出,利用人性化语音提示向使用者反馈当前信息,利用受控电机控制导盲犬的行动。系统还可通过GPS模块进行短消息发送,亲属可及时掌握盲人的行踪,可实现多种实用功能。
关键词:Altera DE1;导盲犬;摄像头监测;超声波测距;语音提示;短信息发送
中图分类号:TP242 文献标识码:A
文章编号:1004-373X(2010)03-179-03
Blind-guiding Dog Based on FPGA
FANG Xin
(School of Information Science and Engineering,Shandong University,Ji′nan,250100,China)
Abstract:The antomatic blind-guiding dog is based on FPGA at the DE1 developing system from Altera Company.The system can process the image information,wave procession and multi-process simultaneously.The ultrasonic distance measurement system can collect and input the information of circumstance,after data processing through the synthetic system,various kinds of output information can be sent out.Meanwhile,users can receive the voice clue,and control the movement of guiding dog.The system can send message through GPS,many functions can be achieved.
Keywords:Altera DE1;blind-guiding dog;digital camera detection;ultrasonic distance measurement;short message sending
0 引 言
随着信息化和数字化的发展,现在社会中人们的生活变得更加丰富多彩,生活更加便利。但是有一种人群却不容忽视,社会上形形色色、丰富多彩的物是与他们无缘的,他们就是盲人。众所周知眼晴是“心灵之窗”,而对于突然失去或从未拥有过“心灵之窗”的盲人来说,生活上的困难与心理上的痛苦是可想而知的。他们的衣食住行存在诸多不便,而在出行与人际交往中遇到的困难更加突出,基于此设计了智能导盲犬。生活中,导盲犬习惯于颈圈、导盲牵引带和其他配件的约束;懂得“来”、“前进”、“停止”等口令;可以带领盲人安全地走路,当遇到障碍和需要拐弯时,会引导主人停下以免发生危险。但是,导盲犬的培训过程长达18个月,综合费用达2.5~3万美元,如此昂贵的价格不是普通用户能承担的,所以这里设计一个智能导盲犬,从而为盲人带来便利。
本系统主要解决的是盲人在出行和人际交往中遇到的问题,主要功能有:行进中的障碍物检测、识别与定位,其中包括移动的物体与静止的物体识别;测定障碍物的速度与距离;对周围的路线的特定环境标志进行环境辨认,检测出熟悉的地点,方便盲人了解情况,并同时也以此为信息主动控制导盲犬,实现人的主观控制;人性化的语音提示,能够根据信息重要程度主动提示当前情况,帮助盲人获取必要信息,帮助盲人决策;系统还可以对周边环境发生的特殊情况向家属发送短消息,必要时可以发送图片,实现进一步的安全性。
1 设计结构
本设计系统[1]通过数据采集、处理、存储、反馈等子系统构架而成。首先由两路信息采集系统——超声波测速测距系统及图像采集系统采集外部环境信息,经决策处理系统对信息进行处理,并进行多模块输出,其中有信息的反馈系统可以面向使用者提供足够的信息提示,同时,又可通过运动系统对“导盲犬”进行实时控制。存储系统可以将采集和处理的环境信息进行存取,方便查询。
1.1 系统的体系结构
图1为系统的体系结构图。
图1 系统体系结构图
1.2 硬件设计结构
本设计主要功能模块有:
摄像头监测及智能识别模块,超声波测速与测距模块,电机驱动与控制模块,Nios Ⅱ处理器模块,语音播报模块,通信与定位模块,实时存储模块,即插即用液晶显示模块。
硬件框架图如图2所示。
图2 硬件框架图
1.3 软件流程结构
软件流程结构如图3所示。
图3 软件流程结构图
2 具体模块
本设计基于Nios Ⅱ硬件平台,运用其强大的扩展及处理功能,将数字图像处理技术、超声波测距定位技术、智能控制技术协调的组合在一起,构成一个既功能强大又非常人性化的“导盲犬”。以下为各模块的设计特点及方法:
2.1 Nios Ⅱ处理器
Nios Ⅱ处理器[2]运算速度快,能满足对图像检测与处理的要求;具有完善的软件开发套件,包括编译器、集成开发环境(IDE)、JTAG调试器、实时操作系统(RTOS)和TCP/IP协议栈;其次,Altera DE1的外围接口丰富,可以满足不同的需求,必要时可以自定义外围电路进行扩展。在FPGA中使用软核处理器也是其优势所在,硬核实现没有灵活性,通常无法使用最新的技术。基于标准处理器的方案会被淘汰,而基于Nios Ⅱ处理器的方案是基于HDL源码构建的,能够修改以满足新的系统需求。将处理器实现为HDL的IP核,开发者能够完全定制CPU和外设,获得恰好满足需求的处理器。
2.2 图像采集模块
利用的地貌比对是对被检测到的环境特征在环境图像库中进行目标搜索以及进行地点的确认。实际上,将采样到的环境图像与库存的图像依次进行比对,并找出最佳的匹配对象。所以,环境的描述决定了环境识别的具体方法与性能。该应用的核心是“图形识别算法”,这种算法是利用了环境中的各主要特点及一些特征部分而形成的方法。
图像采集系统[3,4]主要由视频信号A/D转换,PFGA控制模块,逻辑控制模块,存储模块等组成。 系统采集图像的命令由计算机发出,通过Avalon总线将命令传送至FPGA同步采集模块。同步采集模块则发出采集信号采集一帧图像,利用写信号将数据存储至SRAM1中。经过边缘检测处理后存储到SRAM2中,将图像信息读出传送给FPGA至处理。对比FPGA中环境图片的数据库的数据与当前图像数据,对数字信息进行分析,在合理误差范围之内,可确定特定的位置,达到环境识别的目的。
2.3 超声波测距模块
利用超声波测距模块[5]可实现多障碍物的定位及运动状态的跟踪,可以精确地测出物体距离盲人的距离、物体相对于盲人的运动方向及运动速度。由于超声波测距误差是由超声波的传播速度误差和测量距离传播的时间误差引起的。而超声波的传播速度的误差影响最大,且其与环境的温度有关,故本设计中采用了带温度补偿的超声测距,通过高精度的温度传感器[6]实时跟踪外界温度的变换,能很好地补偿超声波在不同温度的传播速度。而传播时间的误差则通过Nios Ⅱ来消除,Nios Ⅱ内部具有高频晶振信号,通过其内部计数器计数可以满足超声波测距的微秒级要求,能保证测距1 cm的误差。
2.4 电机控制模块
本设计中用到的电机为直流电机,控制着导盲仪的运动[7],以及超声波传感器的循环扫描和摄像头的动态摄取,运用工程整定方法,通过试验,然后按照工程经验公式对控制器参数进行整定,由控制器输出控制各个电机协调运动,可以实现导盲仪的自动运动及多个超声波测量仪的平面覆盖式扫描,消除扫描中的死角。测速电路用于测量导盲小车的速度,反馈电路输出控制调速系统[8]可控制预先设定的速度。
2.5 短信息发送功能
能够将盲人遇到的情况的描述自动发送给其家人。短信息的发送[9,10]需要GSM模块和FPGA处理器共同协作完成。发送中文短信采用PDU模式Unicode编码方式[11],将所要发送的信息存储在SIM卡中。发送过程中,FPGA通过发送及接收AT命令与GSM模块形成回路,通过AT命令实现对GSM模块的操作。通过简单的按键分配各个对应的信息内容,能够使不同的信息通过短信息模块发送。
3 结 语
本设计基于FPGA技术在Altera公司的DE1开发平台进行开发,设计中需要大量进行实时图像处理,波形处理,以及多个进程的并行处理,对处理器的性能要求比较高,而基于Altera Nios Ⅱ可以很好地满足算法的速度和精度的双重要求。 同时丰富的IP盒可供直接使用,方便高效。在设计构架过程中,需要将Avalon总线上各个IP的时序进行综合,方便FPGA处理器进行处理,避免错误和损失。同时,如何提高导盲系统的鲁棒性也是一个值得解决的有意义的工作。
参考文献
[1]王刚,张潋.基于FPGA的SoPC嵌入式系统设计与典型事例[M].北京:电子工业出版社,2009.
[2]黄佳玮,陈福深.基于NiosⅡ的SoPC嵌入式系统设计[J].电子元器件应用,2009,11(7):48-51.
[3] 郑百源,程远增,任锁柱.基于FPGA和TMS320DM642的CCD图像采集和处理系统硬件设计[J].微型机与应用,2009(12):22-25.
[4]刘虹,黄涛.基于FPGA的高速图像采集系统的研究与实现[J].工业控制计算机,2004,17(8):18-19.
[5]黄大志,申屠留芳,郭燕.导盲机器人中超声波测距系统的研究[J].淮海工学院学报,2009(1):19-22.
[6]孙宝元,杨宝清.传感器及其应用手册[M].北京:机械工业出版社,2004.
[7]李保国,张春熹.双轮移动机器人安全目标追踪与自动避障算法[J].控制理论与应用,2007(4):535-540.
[8]杨东燕.一种移动机器人小车的电机控制系统[J].内蒙古科技与经济,2008(20):99-108.
[9]孙丘伟,余臻.基于GSM的短信报警收发平台设计[J].福州大学学报:自然科学版,2008(S1):44-48.
[10]宣彩平,王皓,邹国良.利用GSM无线模块发送短消息[J].计算机应用,2004(5):148-150.
[11]苗雨,孟闲勇.基于GSM模块实现中文短信息发送[J].计算机与信息技术,2008(7):84-86.