林建勇
(山東理工大學,山東 淄博255000)
隨著科學技術的不斷發展,智能機器人已經涉及到生活的各個領域。為了滿足垂直平面作業、橋梁設計以及建筑勘測等行業的高空作業需求,爬壁機器人一直是國內外機器人研究領域的重點[1]。目前爬臂機器人采用氣動以及負壓吸附方式,利用仿生學的原理實現在垂直平面上的運動,缺點是機動性能較差;輪式磁吸爬壁機器人是利用磁力吸附保證機器人吸附在垂直平面,靈活性強,缺點是適用范圍較少,具有一定的局限性[2]。本文主要結合氣體壓力差吸附的工作原理配合輪式傳動的運動特性,設計出了適應范圍廣、可沿固定軌跡運動的爬壁機器人。
根據垂直墻面需求與配置的不同,往往選用不同的運動行進方式。目前主流的運動行進方式有輪式運動、履帶式運動、多足爬壁式運動等。輪式爬壁機器人主要運用滾輪摩擦推動進行前進運動,具有移動速度快、可靠性強的行進特點;履帶式運動主要依靠接地履帶與墻面之間的相互作用力,推動爬壁機器人的前進與轉向,其特點是具有較強的越障能力與自鎖能力,但是行進緩慢。多足爬壁機器人是利用仿生學的原理,通過足部吸盤吸附,關節處采用電機通過齒輪運動,其特點是具有較強的適應能力,能夠適應各種不同的復雜墻面[3]。為保證爬壁機器人具有較強的機動性能與靈活性,本文采用傳統輪式傳遞運動,通過輪胎與墻面之間的摩擦力提供前進的動力。
爬壁機器人的吸附方式目前有負壓吸附、電磁吸附等,負壓吸附方式主要依靠真空發生器,通過真空泵不斷抽取爬壁機器人內部的空氣,從而保持空腔內部的負壓。在此基礎上,還應配以密封裝置以保證爬壁機器人有足夠的摩擦力去提供爬壁機器人的前進與轉向。永磁鐵吸附是依靠安裝在履帶上的永磁吸附塊吸附來提供前進的摩擦力,在前進和轉向運動時履帶的第一塊磁鐵脫離壁面的同時,最后一塊磁鐵吸附壁面,這樣周而復始運動傳遞,進而完成爬壁機器人的運動[4]。為了使爬壁機器人適應多種垂直平面以及具有較高的機動性能,本文采用負壓吸附配合輪式運動的總體設計。為了使爬壁機器人底盤更加貼合垂直墻面,故采用體積較小的N20 自鎖減速電機,底盤與墻面之間采用橡膠貼密封,用以最大限度地制造真空環境,因橡膠貼具有延展性,故可在壓力差的作用下貼緊墻面以適應多種平面。真空發生器采用QF1611-7000KV無刷電動涵道風機,通過風機不斷地將密封底盤內的氣體抽走,使密封底盤內的氣體氣壓小于外界大氣壓,風機持續轉動,形成壓力差,進而形成負壓吸附的環境[5]。
爬壁機器人的硬件部分主要采用arduino mega2560 R3 開發板、2200 毫安40C 航模電池、L298N 驅動模塊,12V 的N20 自鎖減速電機、無刷電動涵道風機、無刷電調、數字量灰度傳感器等。主要連接方式如圖1。

圖1 爬壁機器人硬件連接圖
爬壁機器人整車采用12V 航模電池供電。控制部分采用arduino mega2560 控制板,arduino 開發平臺是目前較為流行的開發平臺,具有使用簡單、功能多樣等優點,可與多種傳感器進行連接組合[6]。數字量灰度傳感器是本車的光敏循跡模塊,數字量灰度傳感器相較于模擬量灰度傳感器具有更高的靈敏度與準確性,灰度傳感器的工作原理是利用不同顏色的平面對光的反射程度的靈敏度不同而進行檢測,能夠靈敏地感應爬行平面反饋的顏色灰度信息,便于爬壁機器人自主沿著規定的軌跡運動。爬壁機器人采用N20減速自鎖電機構成運動系統,主要在于其體積小、減速比大。體積小可以有效的減小避免與爬壁機器人底盤之間的空隙,有利于更好的創造真空環境,減速比大可以有效的提供運動所需要的轉矩。N20 減速電機通過L298N驅動模塊驅動,并由arduino mega 主控板控制。根據爬壁機器人的灰度傳感器所檢測到的爬行軌跡的位置信息,arduino主控板發送給電機不同的轉速信號,進而控制爬壁機器人可以按照特定路線自主前進。無刷涵道風機主要通過無刷電子調速器,由arduino主控板發送PWM信號控制,通過無刷涵道風機的快速旋轉,不斷抽取底盤與壁面之間的空氣,進而創造負壓環境使得爬壁機器人能夠吸附在壁面上,風機的速度控制是通過人為調節電位器的大小來進行選擇,可根據不同平面給予風機不同的轉速以便適應多種垂直平面的工作情況。
3.1 整體程序設計。爬壁機器人可以根據灰度傳感器智能判斷路線并沿著規定軌跡運動,其軟件程序設計主要如圖2 所示。

圖2 爬壁機器人程序控制流程
將硬件連接好的爬壁機器人放在垂直平面上,首先通過人為調節電位器使無刷電動涵道風機轉動,電位器作為風機的模擬開關,通過電位器調節模擬輸入的值,arduino主控板根據電位器的模擬輸入值調節對風機的模擬輸出PWM值,進而控制風機旋轉的速度大小。通過風機不斷抽取內部空氣,使得爬壁機器人底盤與壁面之間產生負壓環境進而吸附在垂直平面。若風機沒有啟動,則爬壁機器人不會運動。當風機正常啟動并可以使得爬壁機器人可以穩定地吸附在壁面上之后,灰度傳感器會自動檢測是否具有前進路線的反饋信息,當檢測到前進路線,爬壁機器人便會在arduino mega 主控板的控制下,通過L298N驅動模塊控制爬壁機器人前進和轉向,前進的同時灰度傳感器會不斷檢測路線,并采用多路灰度傳感器循跡的算法,根據前傳感器的返回值,判斷小車的與路線的相對位置關系,進而可以調用相應的位置處理函數[7],通過不同位置的灰度反饋與對應的位置處理函數,arduino 主控板會自動調節PWM的占空比來控制爬壁機器人的前進與轉向運動。
3.2 轉向程序設計。爬壁機器人在壁面的運動性能是評價爬壁機器人性能好壞的一個重要指標,在運動特性中轉向控制是最關鍵的一部分。本文中的爬壁機器人采用的是差速控制,差速控制的優點在于其轉向控制靈活,通過四個電機的正反轉以及轉速控制便可以完成不同位置的轉動以及原地旋轉。差速轉向控制因其控制簡單、操作靈活、被廣泛的應用于智能車的轉向設計。爬壁機器人轉速控制主要是通過arduino主控開發板產生不同的PWM占空比進而驅動電機按照不同的轉速運動。PWM波是通過單片機編程經脈寬調制專用芯片輸出,PWM調速對外界干擾有較大的抵抗力,可以通過調頻、調寬、調寬調頻三種方法改變PWM脈沖占空比,PWM調速也因其控制方式簡單,對干擾的抵抗力較強,被廣泛的用于電機的速度調節過程中[8]。爬壁機器人的速度與轉向調節邏輯如表1。

表1 爬壁機器人電機控制信號邏輯表
L298N驅動模塊具有4 個輸入引腳,2 個使能引腳以及4 個輸出引腳。通過雙H 橋直流電機驅動芯片控制,采用12V電壓供電。其中IN1、IN2、IN3、IN4 分別為L298N驅動模塊的數字輸入,表格中PWM1 與PWM2 分別代表ENA1 與ENA2,PWM1 與PWM2 的作為模擬輸入接口。L298N驅動模塊的這六個引腳與arduino主控板相連,通過使用arduino主控板改變6 個引腳信號的輸入邏輯來控制L298N的輸出,進而控制4 個N20 電機的轉速運動。通過灰度傳感器的位置反饋信號調用對應的位置處理函數,對應的位置處理函數對應相應的輸入邏輯信號。經過arduino主控板的程序處理便可以實現爬壁機器人的前進、后退以及轉向操作。
本文通過對爬壁機器人進行吸附結構設計、運動結構設計以及整體程序設計,可以實現爬壁機器人在多種壁面環境下的工作運動。通過灰度傳感器對路線位置的反饋,可實現爬壁機器人沿著特定軌跡路線進行運動,控制系統采用成本較低arduino開發板,整體成本低廉,具有良好的應用價值與市場前景。