孙苗 兰晓红 贺转玲 魏延
摘 要: 针对传统方法查找书籍繁琐、耗时长,开发一套基于蓝牙通信的可以通过远端自然语言控制的具有自动查找定位、可避障移动和自动巡线传送书籍等功能的小型智能书架机器人系统。该系统主要包含书架机器人本体部分和远端控制APP部分。书架机器人本体部分通过3D机械设计和开源平台Arduino编程控制电路运转;APP部分利用APP Inventor软件开发一套书架控制手机APP,并采用关键字查询技术查找图书。经过实验测试,发现书架机器人系统可以在短时间内准确查找到图书,并准确送达目的位置。文中设计的书架机器人系统有效解决了在特定場合需要快速定位查找书籍、便捷取放图书等问题。
关键词: 书架机器人; 蓝牙通信; 自然语言控制; 系统设计; 远程控制; 系统测试
中图分类号: TN911.23?34 文献标识码: A 文章编号: 1004?373X(2020)10?0179?05
Design and implementation of speech control bookshelf robot based on Bluetooth
SUN Miao1,2, LAN Xiaohong1, HE Zhuanling3, WEI Yan1
(1. College of Computer and Information Science, Chongqing Normal University, Chongqing 401331, China;
2. Engineering Center of Robotics and Intelligent Equipment, Chongqing Normal University, Chongqing 401331, China;
3. College of Information and Communications, National University of Defense Technology, Xian 710106, China)
Abstract: As the search books is tedious and time?consuming in the traditional methods, a small intelligent bookshelf robot system based on Bluetooth communication and by means of the remote natural language control is developed, which has the functions of automatic searching and locating, obstacle avoiding and moving, and automatic routing and transferring books, etc. The system mainly includes the body pa0072t and the remote control APP of the bookshelf robot. In the robot body part, the circuit operation is controlled by means of the 3D mechanical design and Arduino programming, an open source platform; in the App part, a bookshelf control mobile phone APP is developed by the App Inventor software, and the keyword search technology is used to search books. The experimental testing results show that the bookshelf robot system can find books accurately in a short time and deliver them to the destination accurately. The bookshelf robot system designed in this paper can effectively solve the problems such as quick locating and searching books, convenient picking and placing books in specific occasions.
Keywords: bookshelf robot; Bluetooth communication; natural language control; system design; remote control; system testing
0 引 言
随着机器人技术以及移动互联网技术的迅速发展[1?2],智能化研究在日常生活中的应用需求日益增多[3?6]。如今,在教室、书房、办公室等场所,书籍被堆放在书架上,大多是通过人工查阅的,查找比较困难,拿取也极其不方便,严重影响了人们查阅书籍的时效性。如果设计出一种能够通过自然语音自动查找书籍,并把定位的书籍送到人们手边的书架机器人,将有效地解决人们在书房中对书籍定位难、查找耗时长等问题。
在查阅图书过程中,准确定位和取放图书是常见的问题。针对书籍定位这一问题,张郁松等以物联网图书馆智能书架的结构化、通用化设计为目标,利用超高频(UHF)射频识别(RFID)技术,设计了一种具有实时检测与定位功能的智能书架,提高查阅书籍的效率[7];舒远仲等基于改进的RFID室内定位技术设计一款应用于图书馆中的智能书架系统[8],将书架定位到每一层,精确到书架的最小单元格,并且降低系统的复杂度和成本,有效地提高了读者借阅图书的效率和管理员的工作效率,在国内外,很多图书馆为了提高图书查找效率已经从纯手工管理方式过渡到采用条形码识别、计算机网络、计算机软件技术等的数字化管理模式。虽然采用了许多现代化技术,但还是有很多问题困扰着阅读者。据调研分析,目前存在的问题主要体现在图书馆藏书量大的时候,阅读者需要花费很多时间去找出自己想要的图书。即使现有图书馆有图书检索查询系统,但通过图书检索查询系统只能检索到图书所在的书架机器人号或楼层,还是需要阅读者花时间到书架机器人或楼层查找图书。另外,现有的书架系统不可移动,在找图书前,阅读者还需要花费一些时间去找出相应书架。
此外,这些图书管理及查找系统都是针对较大型图书馆设计的,目前还没有一款主要针对个人的图书管理系统。鉴于此,本文设计基于蓝牙的语音控制书架机器人系统。该系统可以通过移动终端设备(手机或平板等)用自然语言控制书架的行为,书架行为主要有两大类型:图书查找定位行为以及书架运动行为。这样,每个个体尤其是在校学生就可以拥有一个自己的专属书架,平时书架可以停放在室内的任何空闲角落,需要拿放图书时,用自然语言命令书架运动到自己的身边,同时,也不需要自己查找所需拿取的图书,只需通过自然语言告诉书架你所要的图书名称(支持关键字查找),书架自动为你查找该图书并精确定位该图书在书架上的位置。从而较好地解决目前大量学习资料存放及查找繁琐、费时的问题,有效提高了学习效率。
1 总体开发流程
基于蓝牙的语音控制书架机器人系统总体内容主要包含两部分:书架机器人本体部分和远端控制APP部分。系统总体开发流程如图1所示。
书架机器人本体部分包含书架机械结构和控制系统,主要用于存取图书、定位图书、与APP端通信和移动书架等功能,如图2所示。远端控制APP部分主要是通过移动终端设备(手机、平板等)上开发的APP软件来管理图书、控制书架行为等,开发设计的APP界面如图3所示。
2 硬件系统设计
2.1 机械结构设计
由于要考虑书架尺寸和所存放图书种类、大小的不同,书架机械结构的设计必须符合实际要求。首先采用三维软件进行建模,然后按照实际需求对建模的结构进行设计分析,之后通过3D打印机将模型打印成型。所设计的書架机器人机械结构主要包含图书存放机构,具有多个不同大小的存储格子,可以存放多种图书;包含可以存放控制系统的夹层;包含可移动的万向轮,可以保证书架自由全方位移动;包含存放图书查询定位的机构,主要用于存放LED指示灯、液晶显示屏和语音播报小喇叭等。设计完成的三维结构如图2所示。
这里选用三维建模软件3DOne对书架机械结构进行设计,是因为3DOne融合了其他软件的许多功能,而且把很多功能进行图形简易化处理,整合了常用的实体造型和草图绘制等命令,使用起来非常方便、简单。同时该软件实现了3D设计与3D打印软件的直接无缝连接,设计好的三维图形导出后可以直接连接到3D打印机上进行打印。3DOne操作设计界面如图4所示。
2.2 控制系统设计
书架机器人本体的控制系统,采用 Arduino UNO[9?10]开发板作为主控器,开发板使用高速的微处理控制器(ATMEGA328),开发操作界面和环境都较简单、易理解,而且控制器稳定、运行速度快。Arduino UNO控制器如图5所示。
书架机器人本体的控制系统外围模块主要包括前端避障模块、巡线模块、蓝牙通信模块、供电模块和驱动模块。书架机器人本体部分控制系统电路原理框图如图6所示,主要由控制器通过指令控制各模块的工作,由于驱动和通信模块的功能比较容易理解,这里主要介绍一下避障模块和巡线模块。
在一般模式下,控制系统处于避障模式,在书架机器人的四周都安装有用于避障的超声波传感器,可以实现全方位避障,例如当前方遇到障碍物,机器人会自动调节后退适当的角度,然后再继续前行检测;当选择巡线模式时,一般用于有固定轨道的场所,书架机器人会沿着黑线(或者白线)做慢速地往复运动,以便于读者自由取阅图书。
3 软件系统设计
3.1 开发平台介绍
本文设计的基于蓝牙的语音控制书架机器人系统的书架机器人本体部分和远端控制手机APP部分主要在开源平台Arduino IDE和APP Inventor[11]上进行设计和开发。
Arduino IDE可以在多操作系统上运行,是基于processing IDE开发,Arduino的IDE界面是基于开放源代码。同时,它可以使用C语言进行编程,对于初学者来说,比较容易掌握,而且具有足够大的灵活性和扩展性。远端控制APP部分采用的是APP Inventor开发平台来进行手机APP软件的开发和设计。Google APP Inventor是一个完全在线开发的Android编程环境,该平台采用图形模块化编程,省去复杂的代码书写程序的繁琐。
3.2 算法思想
由于基于蓝牙的语音控制书架机器人系统分为两大部分控制系统,根据各自特点需要采用两个软件。相应地根据实现的功能不同,需要设计两套不同的算法。
3.2.1 书架机器人本体端算法思想
书架机器人本体端程序采用Arduino IDE开发环境编写,主要完成接收APP程序端控制命令和解析命令,控制书架按命令要求完成相应的动作(移动、查找、定位、巡线等),程序主要算法思想如图7所示。
3.2.2 远端APP算法思想
远端控制APP实现的功能远端控制APP部分,如图2所示,主要功能是通过手机APP实现对图书的管理,包括图书取放操作、移动控制模式选择(语音控制、按键操作、巡线模式)和图书信息维护操作等。图书信息维护模块主要完成书架图书信息增加、删除、图书存放位置调整等功能。
手机端APP控制程序采用APP Inventor开发环境编写,其主要算法思想如图8所示。
3.2.3 关键技术
书架机器人系统通过一个手机端的控制APP程序向书架机器人发送控制命令,控制命令可以通过自然语言发送也可以通过按键发送,书架与APP之间通过蓝牙通信,APP还负责书架图书信息的维护管理。对书籍的查询主要采用关键字查询方式。按照关键字查询可以分为几类:按照标题、作者、内容等出现的关键字进行查询。
这里采用搜索引擎的主流检索方式:基于文本的信息检索。搜索引擎一般通过用户提供的指定所需信息的关键字,对关键字进行后台处理,返回相应的文档。搜索引擎重要的一个处理工作是在用户提交关键字之后,采用什么方式快速找到哪些文档中包含这些关键字。由于所查询的文档资料数目非常繁多,如果用户在提交关键字之后把每一个文档都拿出来然后判断关键是不是匹配文档,这个过程是相当缓慢的。这里采用在信息检索领域常用的通过关键字来索引文档的“倒排文档索引” 技术[12]。
在实际的查询中,尽管每个关键字索引的文档数都比较多,但由于用户限定的关键字个数都比较少,因此只要根据关键字的倒排文档索引进行集合操作,即可得到用户需要的文档。
利用倒排文档索引技术的关键字查询的方式对用户没有特殊要求,具有简单、易用的特点,而且目前关键字查询也在进一步完善,比如模糊查询[13?14]、语义匹配[15]、查询改写[16]等技术[17?18],让关键字查询更加便捷和智能,受到很多用户的青睐。
4 系统测试
为了验证本文设计的书架机器人系统的实用性,选取实际应用环境对系统进行测试。书架机器人系统测试实物如图9所示。
实验针对存放书籍数量为10本的书架机器人进行测试,主要测试书籍查询定位和送达成功的准确率和所用的时间。测试数据如表1所示。
由表中数据可知,测试准确率基本达到90%以上,查询定位和送达书籍所用时间较短,在人们可以接受的范围内,与传统书架的查询方式相对比,具有定位快、用时短、准确率高的特点,具有一定实用价值。
5 结 语
本文基于蓝牙通信、Arduino IDE和APP Inventor开发平台,成功搭建语音控制书架机器人系统。该系统由书架机器人本体和远端控制APP组成,较好地把机器人技术、移动互联网络技术应用到了书架设备中,解决了查找图书耗时耗力的问题,提高了时效性。该系统经过实验测试,所设计的书架机器人系统在特定环境下可以准确查找定位和推送书籍,具有较好的稳定性和识别准确率,可满足实际应用需求,有较大的市场前景。但是仍然存在一些不足之处,通过用户反馈信息,将从以下几个方面改进完善:优化书架机器人本体的机械结构,使其更加稳固的同时增加存书量;增加一些个性化可选择功能模块,满足现代人的个性化需求。
参考文献
[1] 李忠.智能楼宇中通信自动化系统应用思考[J].电脑知识与技术,2016,12(12):250?251.
[2] 刘继雷.智能技术在电子工程自动化控制中的应用[J].电子技术与软件工程,2016(18):167.
[3] 邹昌伟,王林.面向嵌入式的协程与脚本化机制[J].计算机应用,2014,34(5):1411?1422.
[4] 李新友,许涛,刘蓓.计算机核心配置自动化系统设计与实现[J].计算机应用,2013,33(10):2859?2860.
[5] 曹克刚.工业机器人技术的应用及未来发展[J].黑龙江科学,2017(1):26?27.
[6] 曹承志.人工智能技术[M].北京:清华大学出版社,2010.
[7] 张郁松,杜景林.基于超高频RFID的图书馆智能书架方案研究与设计[J].图书馆杂志,2014(12):87?103.
[8] 舒远仲,张丽,朱玄华,等.基于RFID的图书馆智能书架系统的研究与设计[J].计算机工程与设计,2013,34(6):2218?2222.
[9] 王刚.基于ArduinoUno平台的跌倒检测报警系统设计[J].单片机与嵌入式系统应用,2015,7(1):49?52.
[10] 石从刚,崔连涛,宋剑英.基于Arduinouno和nRF24L01的无线温度测试仪的设计[J].仪表技术,2016,10(15):46?49.
[11] 夏继媛.APP Inventor在高职Android移动应用开发类课程中的教学研究与实践[J].新课程(下),2014,10(28):105?106.
[12] 陶岳.关系数据库上基于组的关键字查询研究[D].上海:复旦大学,2012.
[13] 胡骏,范举,李国良,等.空间数据上Top?k关键词模糊查询算法[J].计算机学报,2012,11(15):2237?2246.
[14] 马晖男,吴江宁,潘东华.一种基于同义词词典的模糊查询扩展方法[J].大连理工大学学报,2007,5(15):439?443.
[15] 尹超,夏卿,黎振武.基于OWL?S的云制造服务语义匹配方法[J].计算机集成制造系统,2012,7(15):1494?1502.
[16] 黃静,陆嘉恒,孟小峰.高效的XML关键字查询改写和结果生成技术[J].计算机研究与发展,2010,5(15):841?848.
[17] YU Bei, LI Guoliang, SOLLINS Karen, et al. Effective keyword?based selection of relational databases [C]// Proceedings of ACM SIGMOD International Conference on Management of Data. Beijing: ACM, 2007: 139?150.
[18] LI G L, OOI B C, FENG J, et al. EASE: An effective 3?in?1 keyword search method for unstructured, semi?structured and structured data [C]// ACM SIGMOD International Conference on Management of Data. Vancouver: ACM, 2008: 1?12.