基于STM32的图书馆机器人设计应用

2024-09-19 00:00:00魏晋
现代信息科技 2024年13期

摘 要:通过托架放书单元、环形滑轨旋转机构、二维滑块夹取机构和行走单元,构建了图书馆机器人的整机设计,基于STM32单片机实现了图书馆机器人的控制系统。按照各功能单元的控制要求,通过程序设计实现了机器人的图书识别、抓书放书、清理转运、上架下架等操作功能,结合Wi-Fi网络和手机APP实现了数据传送、场景呈现、问题咨询等互动功能。测试结果反映,机器人车身灵活,运行平稳,传送数据快捷,适合于完成图书管理员的部分工作。

关键词:机构设计;STM32;图书馆;机器人;Wi-Fi网络;运动控制

中图分类号:TP23 文献标识码:A 文章编号:2096-4706(2024)13-0191-04

Design and Application of Library Robot Based on STM32

WEI Jin

(Jiuquan Vocational Technical College, Jiuquan 735000, China)

Abstract: A complete design of the library robot is constructed through a shelf book placement unit, a circular slide rail rotation mechanism, a two-dimensional slider gripping mechanism, and a walking unit. The control system of the library robot is implemented based on the STM32 single-chip microcomputer. According to the control requirements of each functional unit, the robot has implemented operation functions such as book recognition, book grabbing and placement, cleaning and transportation, and shelving and delisting through program design. Combined with Wi-Fi network and mobilephone APP, interactive functions such as data transmission, scene presentation, and problem consultation have been achieved. The test results indicate that the robot body is flexible, runs smoothly, and transmits data quickly, making it suitable for completing some of the work of a librarian.

Keywords: mechanism design; STM32; library; robot; Wi-Fi network; motion control

0 引 言

当前图书馆智能立体书库较多采用馆内密集智能书库或馆外高密度储存书库的单体空间建设模式,现阶段此模式在应用中还有诸多不足[1],机器人技术应用于图书馆智能立体书库,通过图书搬运、图书盘点、图书自动存取、图书扫描、智能咨询、远程阅览、特殊人群服务等实现图书的自动化转运和对用户的智能化服务。

目前,国外研究应用主要基于智能立体书库,注重数据处理软件与起重、输送设备和升降台等大型设备的使用,体现在高密度的存储和检索等方面,比如ASRS系统[2-3]。国内研究主要集中在书籍识别、抓取机构和自助存放等方面,围绕图书盘点和图书上下架等开展了个别应用,但受价格因素和存放书库的影响,应用效果有限[4-5]。基于此,结合STM32系统和物联网技术针对图书馆环境呈现、书籍条码识别、存放位置确定、图书搬运和书籍自动存取等环节进行研究,以期在图书管理员的控制下实现图书借阅、归类、清理、盘点以及场景展现、实时监控、位置导航和远程阅览等服务功能,开发一款便捷高效、经济实用的小型机器人。

1 机构设计

和其他功能装备一样,机器人的设计开发必须建立在其组成机构及其关联关系的基础之上,即机构设计必须围绕功能要求来展开。按照图书流转作业特点,机构设计应当包括抓取与放置机构、储藏和运送等基本组成单元。根据功能实现要求,整机共设计了托架放书单元、环形滑轨旋转机构、二维滑块夹取机构、和行走单元五个部分,其中二维滑块夹取机构由二维滑块装置与机械爪夹取装置组成。整机实物构成如图1所示。

机身设计主要考虑机器人要自身重量轻、移动方便、识别灵活等因素,因而采用了框架式的行走单元。行走单元包括2个后轮和1个前轮,电机驱动安装在箱体底座板上的2个后轮实现机身的前进与后退,安装在箱体前端的推杆旋转实现转向功能。底座上搭载了环形滑轨旋转机构,环形滑轨旋转机构用于传送书籍,书籍在环形滑轨传送装置上能够做水平位移和环形往复运动,便于扫描器扫描识别后抓取。环形滑轨传送机构与行走单元如图2所示。

书籍的存放运动控制过程需要二维滑块装置的配合来实现,二维滑块装置用于安装书籍抓取机构。通过二维滑块装置移动带动机械爪夹取装置在平面内运动,实现对书籍位置的确定。机械爪定位后,直流减速电机驱动动力轮从而拖动夹取装置伸缩,到达位置后抓取或放下书籍。机械爪及其夹取机构是抓取书籍的关键部件,根据书籍存放的空间位置和取书放书的作业特性,夹取机构选取了直角坐标系机械臂方案。二维滑块装置及机械爪如图3所示。

2 控制系统

机器人控制系统以STM32F407作为主控芯片,通过Wi-Fi建立与管理员的信息传输,在管理员的控制下实现书籍查询、场景导航、书籍运送、书籍取放和环境监测等任务。

2.1 硬件设计

图书馆机器人硬件部分主要包括主控板、条形码读取模块、压力传感器模块、Wi-Fi模块、摄像头模块、舵机和9个电机驱动控制模块,控制系统结构图如图4所示。为了防止干扰,增强可靠性、减少器件分布空间,本设计采用了将控制电机运行的9个继电器焊接到了主控板上的方式。

2.1.1 主控板选型

设计采用STM32F407ZET6芯片作为系统微控制器,该控制器采用ARMv7架构的32位Cortex-M3内核,功能强大,完全适应图书馆机器人对各种数据处理能力的需要。STM32产品具有体积小、功耗少、成本低、性能高的特点,且采用简单易用的HAL库开发方式,方便机器人的功能开发[6]。STM32F407程序存储器容量为512 KB,I/O端口丰富,工作电压2.0~3.6 V,主频率为168 MHz,可满足Wi-Fi模块对数据通信的需要[7]。STM32F407ZET6主控芯片的电路如图5所示。

机器人在系统控制器的控制下完成各种操作,其控制流程为:图书管理员借助Wi-Fi网络,通过手机APP向机器人发出作业指令,机器人主控芯片对接收的指令进行处理,执行相应的程序,并通过I/0控制端口向继电器发出指令,控制电机运转,从而驱动运行机构工作,完成设定的作业任务,机器人中的9个执行电机都由继电器控制。

2.1.2 条形码读取模块

条形码扫描器安装在二维滑块装置上固定位置,用于对传送中的书籍条形码进行扫描识别,从而获取书籍的相关数据。本次选取了GM77中速二维条码扫描识别模块,其对移动速度为30 cm/s的条形码可以识读,符合现场要求。这个模块体积小,功耗低,支持TTL232和USB接口,并具有将数据显示在手机APP上的功能,比较适合该款机器人的需要。实操中,工作电压5 V,工作电流180 mA,需要将模块的两根信号线和主控芯片串口3TXD/RXD对应的I/O引脚PA10、PA11连接。

2.1.3 压力传感器模块

机械爪的夹持板在直流减速电机控制下完成夹紧和松开作业。电机通电,夹持力发挥作用,但当作用力低于某个阈值时,则无法夹持或提升书籍,或者出现书籍中途滑落现象。这既取决于夹持力的大小,也取决于书籍重量的大小,因而压力传感器的选择要符合书籍夹持提升对夹持力的要求。本次选择FSR402电阻式薄膜压力传感器,压力为20克到6千克,且阈值范围可调[8],可以满足普通书籍对夹持力的需要。设计中压力传感器第1引脚接电源正极,第2引脚接电源负极,第4引脚直接和芯片I/O口PE9连接,如图6所示。

2.1.4 舵机与摄像头模块

舵机安装在二维滑轨上,用于控制机械爪的旋转抓取的书籍,舵机模块的选型主要依据舵机的输出扭矩和反应速度两个指标。本次选择型号为MG995舵机,其工作扭矩为13 kg/cm,反应速度为53-62R/M,转动角度左右各90度[9],符合机械爪的作业要求。舵机模块的3根引线中红色线接电源正极,棕色线接电源负极,黄色线为信号线,连接PB0接口。摄像头专用模块通过USB口连接到Wi-Fi模块上,用于场景拍照或机器人行走中进行实时画面拍摄。管理员通过实时画面可以掌握机器人的工作状态,及时下达任务指令。

2.1.5 Wi-Fi模块

Wi-Fi模块与STM32进行串口通信并实现机器人与手机APP之间的信息传输[10]。本次选取的Wi-Fi数传模块,其FLASH容量为8 MB,RAM容量为64 MB,可以满足机器人的功能要求,模块需要的工作电压为5 V,工作电流为500~1000 mA。模块引出线中,黑色接地,白色接串口通信USART2中的PA3,灰色接串口通信USART2中的PA2。Wi-Fi模块电气原理如图7所示。

2.2 程序设计

为实现机器人的存放书功能,展开了如下程序设计:手机APP控制机器人程序、Wi-Fi指令通信程序、机器人行走控制程序、书盒传输机构控制程序、机械爪取书放书控制程序、二维滑块运动控制程序。手机程序控制机器人行走界面如图8所示。

手机APP控制机器人程序,使机器人在管理员的控制下完成各种作业任务;定义Wi-Fi模块串行IO口,管理员可使用手机APP通过Wi-Fi网络向机器人发送执行指令;机器人行走控制程序实现继电器控制电机实现前进、后退、左行、右行运动功能;书盒传输机构控制程序应用了2个继电器控制直流减速电机的正反转,实现书盒移动,产生位移;书籍的抓取运动由机械爪取书放书控制程序与二维滑块运动控制程序控制。以机器人行走控制程序为例,主控板I/O定义了4个继电器接口具体为PE2、PE3,PE6、PE7,部分程序为:

if((RxBufferWF[0] == 'S') && (RxBufferWF[1] == 'Q')&& (RxBufferWF[2] == 'J')&& (RxBufferWF[3] == '1'))

{

HAL_GPIO_WritePin(GPIOE,GPIO_PIN_2,GPIO_PIN_SET);

HAL_GPIO_WritePin(GPIOE,GPIO_PIN_3,GPIO_PIN_SET);

}

else if((RxBufferWF[0] == 'S') && (RxBufferWF[1] == 'Q')&& (RxBufferWF[2] == 'J')&& (RxBufferWF[3] == '0'))

{

HAL_GPIO_WritePin(GPIOE,GPIO_PIN_2,GPIO_PIN_RESET);

HAL_GPIO_WritePin(GPIOE,GPIO_PIN_3,GPIO_PIN_RESET);

……

3 运行测试

实验对机器人的抓书功能、放书功能、RFID扫描功能、压力传感器功能、行走功能、导航和查询功能进行了测试。测试设定了系统的环境为:操作系统Windows 10、机器人控制软件版v1.0和机械抓手硬件版本v2.0。机械爪抓书功能测试结果为:如果书籍位置到位,能够准确抓取书籍,并将其放在指定的位置;如果书籍位置不准确,机器能够调整位置,重新抓取书本并放置在指定位置。机械抓手放书功能测试结果为:机械爪能够将抓到的书籍准确地放在指定位置;如果放置的位置不准确,能够调整位置并重新放置书籍。RFID自感应扫描功能测试结果为:扫描器能够正常扫描到书籍,条形码读取正常;自动感应扫码,如果不能正常扫描,能够通过环形滑轨电机调整位置并重新自动感应扫码。压力传感器模块功能测试结果为:舵机正常工作,没有卡死现象,机械爪能够正常抓取书籍;若出现舵机卡死现象,通过调整压力传感器数值并重新完成抓取动作。行走功能测试结果为:在书盒装满书籍情况下,机器人运行平稳;管理员通过机器人提供的现实场景通过手机APP能够控制其行进路线,到达目标位置。导航及查询测试结果为:用户通过Wi-Fi和手机APP界面,能够依据机器人提供的真实场景准确找到目标物或目标位置。

测试结论显示,机器人工作状态基本符合预期设定。扫描器测试场景如图9所示。

4 结 论

本文设计完成了一款基于STM32F407ZET6手机控制的图书馆机器人,采用了机械爪搭配桁架机械臂可以直接将书籍放置到书架上,机械爪的夹持板在直流减速电机控制下完成夹紧和松开作业,通过射频扫描(RFID)识别条形码的方式进行书籍识别,利用激光雷达扫描获得的实时数据控制机器人的行走路线,借助Wi-Fi网络和手机APP界面为用户提供导航和咨询服务。运行测试证明,机器人运行平稳,轻便灵活,能够准确识别并抓取书籍,避障行走快捷,适宜在图书馆相对狭小的空间作业。

11c5c5e04245289aa640a6f45de8b98a考文献:

[1] 韦景竹,王政,祝培培,等.智能协同的多点区域性网借平台研究 [J].中国图书馆学报,2023,49(5):44-62.

[2] 汪建满.图书馆立体书库ASRS波次任务长尾效应的产生原因及分析 [J].图书馆杂志,2022,41(3):72-78.

[3] 刘哲.智慧图书馆视域下新一代图书馆文献智能仓储系统研究——以深圳图书馆北馆为例 [J].图书馆,2023(2):26-32.

[4] 杨倩.智能机器人技术在图书馆中的应用历程与展望 [J].大学图书馆学报,2021,39(6):30-37.

[5] 杨扬,郑玄.机器人技术与图书馆服务创新的融合研究:进展、问题和前景 [J].国家图书馆学刊,2021,30(6):78-87.

[6] 林逢春,陶燕.基于ZigBee的煤矿监测系统终端设计 [J].煤炭技术,2023,42(4):234-236.

[7] 华国环,舒梁,张文锋,等.基于北斗卫星和STM32F407的雷电监测系统设计 [J].传感技术学报,2022,35(9):1282-1286.

[8] 杜英魁,姚俊豪,刘鑫,等.基于电阻式薄膜压力传感器组的人体坐姿感知终端 [J].传感器与微系统,2020,39(1):78-81.

[9] 曾尧.基于STM32的智能小车循迹优化设计 [J].机械工程师,2022(1):25-27.

[10] 王飞.基于WiFi的语音矿灯设计 [J].工矿自动化,2022,48(1):98-102.

作者简介:魏晋(1990.05—),男,汉族,甘肃兰州人,助教,硕士,研究方向:产品创新设计。