摘 要:通過(guò)托架放書(shū)單元、環(huán)形滑軌旋轉(zhuǎn)機(jī)構(gòu)、二維滑塊夾取機(jī)構(gòu)和行走單元,構(gòu)建了圖書(shū)館機(jī)器人的整機(jī)設(shè)計(jì),基于STM32單片機(jī)實(shí)現(xiàn)了圖書(shū)館機(jī)器人的控制系統(tǒng)。按照各功能單元的控制要求,通過(guò)程序設(shè)計(jì)實(shí)現(xiàn)了機(jī)器人的圖書(shū)識(shí)別、抓書(shū)放書(shū)、清理轉(zhuǎn)運(yùn)、上架下架等操作功能,結(jié)合Wi-Fi網(wǎng)絡(luò)和手機(jī)APP實(shí)現(xiàn)了數(shù)據(jù)傳送、場(chǎng)景呈現(xiàn)、問(wèn)題咨詢等互動(dòng)功能。測(cè)試結(jié)果反映,機(jī)器人車身靈活,運(yùn)行平穩(wěn),傳送數(shù)據(jù)快捷,適合于完成圖書(shū)管理員的部分工作。
關(guān)鍵詞:機(jī)構(gòu)設(shè)計(jì);STM32;圖書(shū)館;機(jī)器人;Wi-Fi網(wǎng)絡(luò);運(yùn)動(dòng)控制
中圖分類號(hào):TP23 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):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 引 言
當(dāng)前圖書(shū)館智能立體書(shū)庫(kù)較多采用館內(nèi)密集智能書(shū)庫(kù)或館外高密度儲(chǔ)存書(shū)庫(kù)的單體空間建設(shè)模式,現(xiàn)階段此模式在應(yīng)用中還有諸多不足[1],機(jī)器人技術(shù)應(yīng)用于圖書(shū)館智能立體書(shū)庫(kù),通過(guò)圖書(shū)搬運(yùn)、圖書(shū)盤點(diǎn)、圖書(shū)自動(dòng)存取、圖書(shū)掃描、智能咨詢、遠(yuǎn)程閱覽、特殊人群服務(wù)等實(shí)現(xiàn)圖書(shū)的自動(dòng)化轉(zhuǎn)運(yùn)和對(duì)用戶的智能化服務(wù)。
目前,國(guó)外研究應(yīng)用主要基于智能立體書(shū)庫(kù),注重?cái)?shù)據(jù)處理軟件與起重、輸送設(shè)備和升降臺(tái)等大型設(shè)備的使用,體現(xiàn)在高密度的存儲(chǔ)和檢索等方面,比如ASRS系統(tǒng)[2-3]。國(guó)內(nèi)研究主要集中在書(shū)籍識(shí)別、抓取機(jī)構(gòu)和自助存放等方面,圍繞圖書(shū)盤點(diǎn)和圖書(shū)上下架等開(kāi)展了個(gè)別應(yīng)用,但受價(jià)格因素和存放書(shū)庫(kù)的影響,應(yīng)用效果有限[4-5]?;诖耍Y(jié)合STM32系統(tǒng)和物聯(lián)網(wǎng)技術(shù)針對(duì)圖書(shū)館環(huán)境呈現(xiàn)、書(shū)籍條碼識(shí)別、存放位置確定、圖書(shū)搬運(yùn)和書(shū)籍自動(dòng)存取等環(huán)節(jié)進(jìn)行研究,以期在圖書(shū)管理員的控制下實(shí)現(xiàn)圖書(shū)借閱、歸類、清理、盤點(diǎn)以及場(chǎng)景展現(xiàn)、實(shí)時(shí)監(jiān)控、位置導(dǎo)航和遠(yuǎn)程閱覽等服務(wù)功能,開(kāi)發(fā)一款便捷高效、經(jīng)濟(jì)實(shí)用的小型機(jī)器人。
1 機(jī)構(gòu)設(shè)計(jì)
和其他功能裝備一樣,機(jī)器人的設(shè)計(jì)開(kāi)發(fā)必須建立在其組成機(jī)構(gòu)及其關(guān)聯(lián)關(guān)系的基礎(chǔ)之上,即機(jī)構(gòu)設(shè)計(jì)必須圍繞功能要求來(lái)展開(kāi)。按照?qǐng)D書(shū)流轉(zhuǎn)作業(yè)特點(diǎn),機(jī)構(gòu)設(shè)計(jì)應(yīng)當(dāng)包括抓取與放置機(jī)構(gòu)、儲(chǔ)藏和運(yùn)送等基本組成單元。根據(jù)功能實(shí)現(xiàn)要求,整機(jī)共設(shè)計(jì)了托架放書(shū)單元、環(huán)形滑軌旋轉(zhuǎn)機(jī)構(gòu)、二維滑塊夾取機(jī)構(gòu)、和行走單元五個(gè)部分,其中二維滑塊夾取機(jī)構(gòu)由二維滑塊裝置與機(jī)械爪夾取裝置組成。整機(jī)實(shí)物構(gòu)成如圖1所示。
機(jī)身設(shè)計(jì)主要考慮機(jī)器人要自身重量輕、移動(dòng)方便、識(shí)別靈活等因素,因而采用了框架式的行走單元。行走單元包括2個(gè)后輪和1個(gè)前輪,電機(jī)驅(qū)動(dòng)安裝在箱體底座板上的2個(gè)后輪實(shí)現(xiàn)機(jī)身的前進(jìn)與后退,安裝在箱體前端的推桿旋轉(zhuǎn)實(shí)現(xiàn)轉(zhuǎn)向功能。底座上搭載了環(huán)形滑軌旋轉(zhuǎn)機(jī)構(gòu),環(huán)形滑軌旋轉(zhuǎn)機(jī)構(gòu)用于傳送書(shū)籍,書(shū)籍在環(huán)形滑軌傳送裝置上能夠做水平位移和環(huán)形往復(fù)運(yùn)動(dòng),便于掃描器掃描識(shí)別后抓取。環(huán)形滑軌傳送機(jī)構(gòu)與行走單元如圖2所示。
書(shū)籍的存放運(yùn)動(dòng)控制過(guò)程需要二維滑塊裝置的配合來(lái)實(shí)現(xiàn),二維滑塊裝置用于安裝書(shū)籍抓取機(jī)構(gòu)。通過(guò)二維滑塊裝置移動(dòng)帶動(dòng)機(jī)械爪夾取裝置在平面內(nèi)運(yùn)動(dòng),實(shí)現(xiàn)對(duì)書(shū)籍位置的確定。機(jī)械爪定位后,直流減速電機(jī)驅(qū)動(dòng)動(dòng)力輪從而拖動(dòng)夾取裝置伸縮,到達(dá)位置后抓取或放下書(shū)籍。機(jī)械爪及其夾取機(jī)構(gòu)是抓取書(shū)籍的關(guān)鍵部件,根據(jù)書(shū)籍存放的空間位置和取書(shū)放書(shū)的作業(yè)特性,夾取機(jī)構(gòu)選取了直角坐標(biāo)系機(jī)械臂方案。二維滑塊裝置及機(jī)械爪如圖3所示。
2 控制系統(tǒng)
機(jī)器人控制系統(tǒng)以STM32F407作為主控芯片,通過(guò)Wi-Fi建立與管理員的信息傳輸,在管理員的控制下實(shí)現(xiàn)書(shū)籍查詢、場(chǎng)景導(dǎo)航、書(shū)籍運(yùn)送、書(shū)籍取放和環(huán)境監(jiān)測(cè)等任務(wù)。
2.1 硬件設(shè)計(jì)
圖書(shū)館機(jī)器人硬件部分主要包括主控板、條形碼讀取模塊、壓力傳感器模塊、Wi-Fi模塊、攝像頭模塊、舵機(jī)和9個(gè)電機(jī)驅(qū)動(dòng)控制模塊,控制系統(tǒng)結(jié)構(gòu)圖如圖4所示。為了防止干擾,增強(qiáng)可靠性、減少器件分布空間,本設(shè)計(jì)采用了將控制電機(jī)運(yùn)行的9個(gè)繼電器焊接到了主控板上的方式。
2.1.1 主控板選型
設(shè)計(jì)采用STM32F407ZET6芯片作為系統(tǒng)微控制器,該控制器采用ARMv7架構(gòu)的32位Cortex-M3內(nèi)核,功能強(qiáng)大,完全適應(yīng)圖書(shū)館機(jī)器人對(duì)各種數(shù)據(jù)處理能力的需要。STM32產(chǎn)品具有體積小、功耗少、成本低、性能高的特點(diǎn),且采用簡(jiǎn)單易用的HAL庫(kù)開(kāi)發(fā)方式,方便機(jī)器人的功能開(kāi)發(fā)[6]。STM32F407程序存儲(chǔ)器容量為512 KB,I/O端口豐富,工作電壓2.0~3.6 V,主頻率為168 MHz,可滿足Wi-Fi模塊對(duì)數(shù)據(jù)通信的需要[7]。STM32F407ZET6主控芯片的電路如圖5所示。
機(jī)器人在系統(tǒng)控制器的控制下完成各種操作,其控制流程為:圖書(shū)管理員借助Wi-Fi網(wǎng)絡(luò),通過(guò)手機(jī)APP向機(jī)器人發(fā)出作業(yè)指令,機(jī)器人主控芯片對(duì)接收的指令進(jìn)行處理,執(zhí)行相應(yīng)的程序,并通過(guò)I/0控制端口向繼電器發(fā)出指令,控制電機(jī)運(yùn)轉(zhuǎn),從而驅(qū)動(dòng)運(yùn)行機(jī)構(gòu)工作,完成設(shè)定的作業(yè)任務(wù),機(jī)器人中的9個(gè)執(zhí)行電機(jī)都由繼電器控制。
2.1.2 條形碼讀取模塊
條形碼掃描器安裝在二維滑塊裝置上固定位置,用于對(duì)傳送中的書(shū)籍條形碼進(jìn)行掃描識(shí)別,從而獲取書(shū)籍的相關(guān)數(shù)據(jù)。本次選取了GM77中速二維條碼掃描識(shí)別模塊,其對(duì)移動(dòng)速度為30 cm/s的條形碼可以識(shí)讀,符合現(xiàn)場(chǎng)要求。這個(gè)模塊體積小,功耗低,支持TTL232和USB接口,并具有將數(shù)據(jù)顯示在手機(jī)APP上的功能,比較適合該款機(jī)器人的需要。實(shí)操中,工作電壓5 V,工作電流180 mA,需要將模塊的兩根信號(hào)線和主控芯片串口3TXD/RXD對(duì)應(yīng)的I/O引腳PA10、PA11連接。
2.1.3 壓力傳感器模塊
機(jī)械爪的夾持板在直流減速電機(jī)控制下完成夾緊和松開(kāi)作業(yè)。電機(jī)通電,夾持力發(fā)揮作用,但當(dāng)作用力低于某個(gè)閾值時(shí),則無(wú)法夾持或提升書(shū)籍,或者出現(xiàn)書(shū)籍中途滑落現(xiàn)象。這既取決于夾持力的大小,也取決于書(shū)籍重量的大小,因而壓力傳感器的選擇要符合書(shū)籍夾持提升對(duì)夾持力的要求。本次選擇FSR402電阻式薄膜壓力傳感器,壓力為20克到6千克,且閾值范圍可調(diào)[8],可以滿足普通書(shū)籍對(duì)夾持力的需要。設(shè)計(jì)中壓力傳感器第1引腳接電源正極,第2引腳接電源負(fù)極,第4引腳直接和芯片I/O口PE9連接,如圖6所示。
2.1.4 舵機(jī)與攝像頭模塊
舵機(jī)安裝在二維滑軌上,用于控制機(jī)械爪的旋轉(zhuǎn)抓取的書(shū)籍,舵機(jī)模塊的選型主要依據(jù)舵機(jī)的輸出扭矩和反應(yīng)速度兩個(gè)指標(biāo)。本次選擇型號(hào)為MG995舵機(jī),其工作扭矩為13 kg/cm,反應(yīng)速度為53-62R/M,轉(zhuǎn)動(dòng)角度左右各90度[9],符合機(jī)械爪的作業(yè)要求。舵機(jī)模塊的3根引線中紅色線接電源正極,棕色線接電源負(fù)極,黃色線為信號(hào)線,連接PB0接口。攝像頭專用模塊通過(guò)USB口連接到Wi-Fi模塊上,用于場(chǎng)景拍照或機(jī)器人行走中進(jìn)行實(shí)時(shí)畫(huà)面拍攝。管理員通過(guò)實(shí)時(shí)畫(huà)面可以掌握機(jī)器人的工作狀態(tài),及時(shí)下達(dá)任務(wù)指令。
2.1.5 Wi-Fi模塊
Wi-Fi模塊與STM32進(jìn)行串口通信并實(shí)現(xiàn)機(jī)器人與手機(jī)APP之間的信息傳輸[10]。本次選取的Wi-Fi數(shù)傳模塊,其FLASH容量為8 MB,RAM容量為64 MB,可以滿足機(jī)器人的功能要求,模塊需要的工作電壓為5 V,工作電流為500~1000 mA。模塊引出線中,黑色接地,白色接串口通信USART2中的PA3,灰色接串口通信USART2中的PA2。Wi-Fi模塊電氣原理如圖7所示。
2.2 程序設(shè)計(jì)
為實(shí)現(xiàn)機(jī)器人的存放書(shū)功能,展開(kāi)了如下程序設(shè)計(jì):手機(jī)APP控制機(jī)器人程序、Wi-Fi指令通信程序、機(jī)器人行走控制程序、書(shū)盒傳輸機(jī)構(gòu)控制程序、機(jī)械爪取書(shū)放書(shū)控制程序、二維滑塊運(yùn)動(dòng)控制程序。手機(jī)程序控制機(jī)器人行走界面如圖8所示。
手機(jī)APP控制機(jī)器人程序,使機(jī)器人在管理員的控制下完成各種作業(yè)任務(wù);定義Wi-Fi模塊串行IO口,管理員可使用手機(jī)APP通過(guò)Wi-Fi網(wǎng)絡(luò)向機(jī)器人發(fā)送執(zhí)行指令;機(jī)器人行走控制程序?qū)崿F(xiàn)繼電器控制電機(jī)實(shí)現(xiàn)前進(jìn)、后退、左行、右行運(yùn)動(dòng)功能;書(shū)盒傳輸機(jī)構(gòu)控制程序應(yīng)用了2個(gè)繼電器控制直流減速電機(jī)的正反轉(zhuǎn),實(shí)現(xiàn)書(shū)盒移動(dòng),產(chǎn)生位移;書(shū)籍的抓取運(yùn)動(dòng)由機(jī)械爪取書(shū)放書(shū)控制程序與二維滑塊運(yùn)動(dòng)控制程序控制。以機(jī)器人行走控制程序?yàn)槔骺匕錓/O定義了4個(gè)繼電器接口具體為PE2、PE3,PE6、PE7,部分程序?yàn)椋?/p>
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 運(yùn)行測(cè)試
實(shí)驗(yàn)對(duì)機(jī)器人的抓書(shū)功能、放書(shū)功能、RFID掃描功能、壓力傳感器功能、行走功能、導(dǎo)航和查詢功能進(jìn)行了測(cè)試。測(cè)試設(shè)定了系統(tǒng)的環(huán)境為:操作系統(tǒng)Windows 10、機(jī)器人控制軟件版v1.0和機(jī)械抓手硬件版本v2.0。機(jī)械爪抓書(shū)功能測(cè)試結(jié)果為:如果書(shū)籍位置到位,能夠準(zhǔn)確抓取書(shū)籍,并將其放在指定的位置;如果書(shū)籍位置不準(zhǔn)確,機(jī)器能夠調(diào)整位置,重新抓取書(shū)本并放置在指定位置。機(jī)械抓手放書(shū)功能測(cè)試結(jié)果為:機(jī)械爪能夠?qū)⒆サ降臅?shū)籍準(zhǔn)確地放在指定位置;如果放置的位置不準(zhǔn)確,能夠調(diào)整位置并重新放置書(shū)籍。RFID自感應(yīng)掃描功能測(cè)試結(jié)果為:掃描器能夠正常掃描到書(shū)籍,條形碼讀取正常;自動(dòng)感應(yīng)掃碼,如果不能正常掃描,能夠通過(guò)環(huán)形滑軌電機(jī)調(diào)整位置并重新自動(dòng)感應(yīng)掃碼。壓力傳感器模塊功能測(cè)試結(jié)果為:舵機(jī)正常工作,沒(méi)有卡死現(xiàn)象,機(jī)械爪能夠正常抓取書(shū)籍;若出現(xiàn)舵機(jī)卡死現(xiàn)象,通過(guò)調(diào)整壓力傳感器數(shù)值并重新完成抓取動(dòng)作。行走功能測(cè)試結(jié)果為:在書(shū)盒裝滿書(shū)籍情況下,機(jī)器人運(yùn)行平穩(wěn);管理員通過(guò)機(jī)器人提供的現(xiàn)實(shí)場(chǎng)景通過(guò)手機(jī)APP能夠控制其行進(jìn)路線,到達(dá)目標(biāo)位置。導(dǎo)航及查詢測(cè)試結(jié)果為:用戶通過(guò)Wi-Fi和手機(jī)APP界面,能夠依據(jù)機(jī)器人提供的真實(shí)場(chǎng)景準(zhǔn)確找到目標(biāo)物或目標(biāo)位置。
測(cè)試結(jié)論顯示,機(jī)器人工作狀態(tài)基本符合預(yù)期設(shè)定。掃描器測(cè)試場(chǎng)景如圖9所示。
4 結(jié) 論
本文設(shè)計(jì)完成了一款基于STM32F407ZET6手機(jī)控制的圖書(shū)館機(jī)器人,采用了機(jī)械爪搭配桁架機(jī)械臂可以直接將書(shū)籍放置到書(shū)架上,機(jī)械爪的夾持板在直流減速電機(jī)控制下完成夾緊和松開(kāi)作業(yè),通過(guò)射頻掃描(RFID)識(shí)別條形碼的方式進(jìn)行書(shū)籍識(shí)別,利用激光雷達(dá)掃描獲得的實(shí)時(shí)數(shù)據(jù)控制機(jī)器人的行走路線,借助Wi-Fi網(wǎng)絡(luò)和手機(jī)APP界面為用戶提供導(dǎo)航和咨詢服務(wù)。運(yùn)行測(cè)試證明,機(jī)器人運(yùn)行平穩(wěn),輕便靈活,能夠準(zhǔn)確識(shí)別并抓取書(shū)籍,避障行走快捷,適宜在圖書(shū)館相對(duì)狹小的空間作業(yè)。
參11c5c5e04245289aa640a6f45de8b98a考文獻(xiàn):
[1] 韋景竹,王政,祝培培,等.智能協(xié)同的多點(diǎn)區(qū)域性網(wǎng)借平臺(tái)研究 [J].中國(guó)圖書(shū)館學(xué)報(bào),2023,49(5):44-62.
[2] 汪建滿.圖書(shū)館立體書(shū)庫(kù)ASRS波次任務(wù)長(zhǎng)尾效應(yīng)的產(chǎn)生原因及分析 [J].圖書(shū)館雜志,2022,41(3):72-78.
[3] 劉哲.智慧圖書(shū)館視域下新一代圖書(shū)館文獻(xiàn)智能倉(cāng)儲(chǔ)系統(tǒng)研究——以深圳圖書(shū)館北館為例 [J].圖書(shū)館,2023(2):26-32.
[4] 楊倩.智能機(jī)器人技術(shù)在圖書(shū)館中的應(yīng)用歷程與展望 [J].大學(xué)圖書(shū)館學(xué)報(bào),2021,39(6):30-37.
[5] 楊揚(yáng),鄭玄.機(jī)器人技術(shù)與圖書(shū)館服務(wù)創(chuàng)新的融合研究:進(jìn)展、問(wèn)題和前景 [J].國(guó)家圖書(shū)館學(xué)刊,2021,30(6):78-87.
[6] 林逢春,陶燕.基于ZigBee的煤礦監(jiān)測(cè)系統(tǒng)終端設(shè)計(jì) [J].煤炭技術(shù),2023,42(4):234-236.
[7] 華國(guó)環(huán),舒梁,張文鋒,等.基于北斗衛(wèi)星和STM32F407的雷電監(jiān)測(cè)系統(tǒng)設(shè)計(jì) [J].傳感技術(shù)學(xué)報(bào),2022,35(9):1282-1286.
[8] 杜英魁,姚俊豪,劉鑫,等.基于電阻式薄膜壓力傳感器組的人體坐姿感知終端 [J].傳感器與微系統(tǒng),2020,39(1):78-81.
[9] 曾堯.基于STM32的智能小車循跡優(yōu)化設(shè)計(jì) [J].機(jī)械工程師,2022(1):25-27.
[10] 王飛.基于WiFi的語(yǔ)音礦燈設(shè)計(jì) [J].工礦自動(dòng)化,2022,48(1):98-102.
作者簡(jiǎn)介:魏晉(1990.05—),男,漢族,甘肅蘭州人,助教,碩士,研究方向:產(chǎn)品創(chuàng)新設(shè)計(jì)。