楊鵬 嚴(yán)冬 楊光陸 陳曉梅 趙麗
摘要:隨著人類(lèi)社會(huì)的飛速發(fā)展,城市化率越來(lái)越高,各類(lèi)現(xiàn)代化高樓大廈拔地而起,如何在確保高空作業(yè)人員人身安全的前提下解決高樓大廈的清潔問(wèn)題一直都是智能機(jī)器人領(lǐng)域的研究熱點(diǎn)。文章設(shè)計(jì)一種基于 Arduino的高空智能清潔機(jī)械手臂,主要通過(guò)Arduino 單片機(jī)來(lái)實(shí)現(xiàn)相關(guān)功能,并結(jié)合攝像頭、吸附底盤(pán)、HC—06藍(lán)牙等傳感器模塊完成設(shè)計(jì),實(shí)現(xiàn)通過(guò)智能控制的機(jī)械手臂來(lái)完成高層建筑的清潔,解決高空作業(yè)純?nèi)斯げ僮鞯陌踩詥?wèn)題。
關(guān)鍵詞:Arduino;智能清潔;機(jī)械手臂
中圖法分類(lèi)號(hào):TP241文獻(xiàn)標(biāo)識(shí)碼:A
Design and research of high-altitude intelligent cleaning roboticarm based on Arduino
YANG Peng,YANDong,YANGGuanglu,CEHNXiaomei,ZHAO Li
(School of Information Technology,Xingyi Normal University for Nationalities,Xingyi,Guizhou 562400,China)
Abstract:With the rapid development of human society, the urbanization rate is getting higher and higher, and various modern high-rise buildings are rising. How to solve the cleaning problem of high- rise buildings under the premise of ensuring the personal safety of high-altitude workers has always been a research hatspots in the field of intelligent robots. This article designs a high-altitude intelligent cleaning robot arm based on Arduino, which is mainly realized by Arduino microcontroller,and is designed with sensor modules such as camera, adsorption chassis,HC-06 Bluetooth, etc., and realizes the cleaning of high-rise buildings through intelligently controlled robot arms, to solve the safety problem of pure manual operation of aerial work.
Key words: Arduino, intelligent cleaning, robotic arm
隨著社會(huì)的不斷發(fā)展,高樓大廈拔地而起,高空智能清潔手臂目前在國(guó)外的應(yīng)用比較廣泛,現(xiàn)今其在國(guó)內(nèi)的應(yīng)用大體上主要是人工高空作業(yè)清潔,因此,為了減少危險(xiǎn)事故的發(fā)生,在有效降低清洗玻璃的“難度系數(shù)”的同時(shí)降低高空作業(yè)的危險(xiǎn)性,設(shè)計(jì)出一款用于高空清潔行業(yè)的清潔機(jī)械手臂是一個(gè)剛需研究方向。當(dāng)前,為了解決高層建筑物外墻清潔問(wèn)題,部分人找到了家政服務(wù)公司,聘請(qǐng)專(zhuān)業(yè)的“高海拔清潔工”來(lái)完成清潔作業(yè),也有部分人會(huì)選擇自己動(dòng)手。然而,無(wú)論是國(guó)內(nèi)公司的高空清潔工,還是居民自己工作,都不能忽視高層戶(hù)外玻璃清潔的危險(xiǎn)。據(jù)有關(guān)報(bào)道,因室外擦窗不幸從高處跌落導(dǎo)致重傷甚至死亡的案例不在少數(shù)。因此,我們?cè)O(shè)計(jì)并研發(fā)了基于 Arduino 的高空智能清潔機(jī)械手臂系統(tǒng)。
1系統(tǒng)框架設(shè)計(jì)
1.1系統(tǒng)介紹
該系統(tǒng)設(shè)計(jì)硬件主要基于 Arduino UNO 單片機(jī)、 SG?90舵機(jī)、HC?06藍(lán)牙和 OV7670攝像頭四個(gè)模塊來(lái)實(shí)現(xiàn),其中攝像功能和遠(yuǎn)程控制功能為硬件設(shè)備的附帶功能。當(dāng)整個(gè)系統(tǒng)通電運(yùn)行后,單片機(jī)會(huì)根據(jù)設(shè)定好的程序完成機(jī)械臂的初始化功能,如電路無(wú)故障,機(jī)械手臂各組成模塊處于初始化狀態(tài),并等待工作指令,接著用戶(hù)可通過(guò)藍(lán)牙將機(jī)械手臂和 APP 綁定,最后通過(guò)點(diǎn)擊相應(yīng)的功能按鈕操作機(jī)械臂工作,完成對(duì)污垢的清潔工作。其工作流程如圖1所示。
1.2系統(tǒng)架構(gòu)
Arduino 支持下的高空智能清潔機(jī)械手臂設(shè)計(jì)研究基于物聯(lián)網(wǎng)三層架構(gòu)實(shí)現(xiàn),即感知層、網(wǎng)絡(luò)層、應(yīng)用層的物聯(lián)網(wǎng)技術(shù)[1]。其中,感知層的模塊以 OV7670攝像頭為主要設(shè)備;網(wǎng)絡(luò)層由 HC?06藍(lán)牙模塊搭建,作為數(shù)據(jù)傳輸通道;應(yīng)用層由 APP 和 SG?90舵機(jī)構(gòu)建。其系統(tǒng)架構(gòu)如圖2所示。
2系統(tǒng)硬件設(shè)計(jì)
2.1 Arduino 單片機(jī)
眾所周知,Arduino 開(kāi)發(fā)板作為上手簡(jiǎn)單的開(kāi)源電子硬件平臺(tái),軟件代碼編程也極易上手[2]。并且,其中的接口和串口通信支持多種通信方式,如 IIC 通信、UART 通信以及 SPI 通信等,再加上開(kāi)源,可應(yīng)用多種傳感器模塊(如土壤濕度傳感器模塊、火焰?zhèn)鞲衅髂K、溫濕度傳感器模塊、光敏傳感器模塊等),以感知環(huán)境的具體數(shù)據(jù),并且實(shí)時(shí)監(jiān)控和記錄所需要的科研數(shù)據(jù)。通過(guò)感知捕捉獲取實(shí)時(shí)數(shù)據(jù)信息,并通過(guò)數(shù)據(jù)分析與生活、工作環(huán)境結(jié)合,實(shí)現(xiàn)實(shí)時(shí)監(jiān)控和控制,達(dá)到智能化管理的最佳目標(biāo)。相對(duì)于其他類(lèi)別的單片機(jī)而言,Arduino 并無(wú)煩瑣的底層代碼以及操作流程和代碼編寫(xiě)算法,而是具備簡(jiǎn)單、易懂、易上手的匯編語(yǔ)言,即簡(jiǎn)單實(shí)用的函數(shù)算法。這主要是因?yàn)樗褂玫沫h(huán)境為 IDE ,開(kāi)發(fā)人員在其中構(gòu)建并添加了代碼庫(kù),自由匯編開(kāi)源并且拓展性很高[3]。因此,本項(xiàng)目基于Arduino 單片機(jī)實(shí)現(xiàn)。
2.2控制裝置
該系統(tǒng)的控制裝置采用伺服驅(qū)動(dòng)器 SG?90舵機(jī)(圖3)。與電機(jī)不同的是,電機(jī)需要提供旋轉(zhuǎn)、控制速度和方向,轉(zhuǎn)向器不需要一整圈的旋轉(zhuǎn),而是需要旋轉(zhuǎn)角度和保養(yǎng),轉(zhuǎn)角范圍一般為0~180°,屬于正常值。舵機(jī)引線為3線,分別用棕色、紅色、橙色三種顏色進(jìn)行區(qū)分,舵機(jī)品牌和生產(chǎn)廠家不同,會(huì)有些許差異,使用之前需查看資料。使用最常見(jiàn)的方向舵,棕色、紅色、橙色對(duì)應(yīng)功率負(fù)、功率正、控制信號(hào)。轉(zhuǎn)向器的參考旌旗燈號(hào)周期一般為20ms[4]。理論上,脈沖寬度分布應(yīng)該在1ms~2ms ,但實(shí)際上,脈沖寬度可以達(dá)0.5ms ~2.5ms ,當(dāng)需要不同的最大脈沖值和最脈沖小值的時(shí)候,就需要把脈沖寬帶和轉(zhuǎn)向器之間的角度調(diào)整到0~180°,即最小脈沖值為1ms ,最大脈沖值為2ms。
2.3圖像獲取裝置
為了獲取圖像,該系統(tǒng)采用了 Omni Vision 公司的 OV7670攝像頭模塊作為“眼睛”[5]。該模塊所需電壓低、體積小,還能提供 VGA 攝像頭和影像處置器的全部功能。當(dāng)需要求出整幀、子采樣、取窗口和圖像處置功效進(jìn)程(包括白平衡、伽馬曲線、色度、飽和度等)時(shí),都可以經(jīng)由過(guò)程 SCCB 接口編程,其中各類(lèi)分辨率8位影像數(shù)據(jù)到達(dá)30幀每秒,而且可以徹底節(jié)制圖像質(zhì)量、數(shù)據(jù)格式等[6]。若要削減或消弭光學(xué)或電子缺點(diǎn),如牢固圖案噪聲、拖尾、浮散等,進(jìn)一步提升圖像質(zhì)量,獲得清楚的、不變的彩色圖像,只能經(jīng)由過(guò)程 OV 圖像實(shí)現(xiàn)。
2.4信息傳輸裝置
HC?06藍(lán)牙模塊作為信息傳輸裝置,在整個(gè)系統(tǒng)中起到了十分重要的作用,藍(lán)牙技術(shù)及藍(lán)牙產(chǎn)品的特點(diǎn)主要有:藍(lán)牙技術(shù)的適用設(shè)備多,無(wú)須電纜,無(wú)線通信[7]。藍(lán)牙模塊的工作模式如下。
(1)主機(jī):用于向從機(jī)下發(fā)指令,能夠搜索從機(jī)并主動(dòng)建立連接的一方。
(2)從機(jī):用于接收主機(jī)發(fā)出的指令,雖然不能主動(dòng)連接主機(jī),但是卻能長(zhǎng)時(shí)間等待連接,不會(huì)擾亂整個(gè)應(yīng)用進(jìn)程。
(3)主從一體:該藍(lán)牙模塊可以切換主機(jī)模式與從機(jī)模式。
此系統(tǒng)采用的 HC?06模塊為主從機(jī)一體模塊,工作波特率為9600,在構(gòu)建系統(tǒng)時(shí),要保證藍(lán)牙模塊與單片機(jī)的波特率一致,否則無(wú)法傳輸數(shù)據(jù)[8]。
3系統(tǒng)軟件設(shè)計(jì)
3.1遠(yuǎn)程控制系統(tǒng)
本系統(tǒng)是基于 Arduino UNO 單片機(jī)開(kāi)發(fā)的一套清潔機(jī)械手臂。通過(guò) APP 向 HC?06藍(lán)牙模塊發(fā)送數(shù)據(jù),可控制機(jī)械手臂各個(gè)部位的舵機(jī),以操控整個(gè)系統(tǒng)運(yùn)行,并通過(guò)基于攝像裝置的畫(huà)面控制系統(tǒng)對(duì)污垢進(jìn)行清洗。
3.2 APP Inventor 設(shè)計(jì)
本系統(tǒng) APP 應(yīng)用 APP Inventor 圖形化編程平臺(tái)完成設(shè)計(jì),其特點(diǎn)是操作較為簡(jiǎn)單。APP lnventor是一個(gè)可視化的 Android 應(yīng)用制作平臺(tái),App Inventor 簡(jiǎn)稱(chēng) ai ,為了和人工智能( Artificial Intelligence)進(jìn)行區(qū)分,簡(jiǎn)稱(chēng)用小寫(xiě)英文字母[9]。APP 整體邏輯設(shè)計(jì)如圖5所示,當(dāng)開(kāi)始運(yùn)行 APP 時(shí),通過(guò)連接藍(lán)牙獲得 off反應(yīng),與機(jī)械臂進(jìn)行藍(lán)牙配對(duì)連接之后,可在 APP 界面選擇“自動(dòng)模式”或“手動(dòng)模式”。其中。自動(dòng)模式指的是機(jī)械臂根據(jù)設(shè)計(jì)好的函數(shù)代碼進(jìn)行相應(yīng)的運(yùn)行;手動(dòng)模式則是通過(guò) APP 來(lái)操作機(jī)械臂。
4結(jié)束語(yǔ)
本文設(shè)計(jì)了一種基于 Arduino 的高空智能清潔手臂系統(tǒng),可以通過(guò) APP 進(jìn)行數(shù)據(jù)監(jiān)控以及實(shí)現(xiàn)對(duì)機(jī)械手臂的遠(yuǎn)程檢測(cè)和控制,避免了高空人工攀爬作業(yè),能夠大大提升高空作業(yè)的安全性,同時(shí)手機(jī)監(jiān)控操作也在很大程度提高了高空清潔作業(yè)的操作性。該系統(tǒng)不僅能夠應(yīng)用于家庭,針對(duì)特殊場(chǎng)景更換對(duì)應(yīng)的硬件即可應(yīng)用于餐館、學(xué)校教室、工廠廠房等區(qū)域,實(shí)現(xiàn)了在多種環(huán)境、多種因素下更加安全快捷的工作,同時(shí)通過(guò)機(jī)械化、智能化和自動(dòng)化,更能夠避免不必要的人員傷亡。將科技力量應(yīng)用于現(xiàn)實(shí)生活中,可以最大化降低高空作業(yè)的危險(xiǎn)性。在該系統(tǒng)設(shè)計(jì)中,結(jié)合藍(lán)牙互聯(lián)、Arduino 函數(shù)模塊和 APP ,達(dá)到人為操作機(jī)械臂的目標(biāo),并且 APP 操作起來(lái)十分容易;高空作業(yè)人員通過(guò)手機(jī)操作,即可完成具有危險(xiǎn)性的高空作業(yè),節(jié)省財(cái)力物力的同時(shí),也保障了人員的安全。
參考文獻(xiàn):
[1]陳良坤,梁勝濤,賀凱旋.物聯(lián)網(wǎng)感知層結(jié)構(gòu)關(guān)鍵技術(shù)及應(yīng)用分析[J].電力設(shè)備管理,2020(6):190?192.
[2]唐皓,金亞玲.基于 Arduino 機(jī)械臂的設(shè)計(jì)與實(shí)現(xiàn)[ J].數(shù)碼世界,2018(7):227.
[3]王慧,李偉.基于 Arduino 控制的多自由度機(jī)械臂系統(tǒng)設(shè)計(jì)[J].安徽電子信息職業(yè)技術(shù)學(xué)院學(xué)報(bào),2017,16(4):6?9+13.
[4]孫統(tǒng).基于 STM32的六足爬行機(jī)器人設(shè)計(jì)與實(shí)現(xiàn)[J].中國(guó)新通信,2019,21(2):58?59.
[5]陳文昌,王勇,楊振國(guó),等.基于 OV7670圖像采集與顯示的FPGA 設(shè)計(jì)[J].電腦編程技巧與維護(hù),2017(4):67?68+85.
[6]程飛,左其波,歐陽(yáng)常童.基于 OV7670機(jī)器人視覺(jué)圖像采集模塊的設(shè)計(jì)[J].電子測(cè)試,2018(13):28?29+27.
[7]林滿(mǎn)山.淺談藍(lán)牙技術(shù)的發(fā)展現(xiàn)狀和前景[J].黑龍江科技信息,2016(14):165.
[8]紀(jì)利琴,王健,熊偉.基于藍(lán)牙模塊的單片機(jī)雙機(jī)通信的實(shí)現(xiàn)[J].科技視界,2019(19):42+120.
[9]張海生.基于 Arduino 和 APP Inventor 2的智能燈的設(shè)計(jì)與實(shí)現(xiàn)[J].電子技術(shù)與軟件工程,2020(14):56?58.
作者簡(jiǎn)介:
楊鵬(2000—),本科,研究方向:科技創(chuàng)新。
計(jì)算機(jī)應(yīng)用文摘·觸控2022年14期