盧桂萍,李春雷,劉卓沄,葉栩謙,李俊明
(北京理工大學珠海學院工業自動化學院,廣東珠海 519088)
隨著科技的飛速發展和人民生活水平的不斷提高,機器人逐漸進入人們的生活,并漸漸滲透到生活的各個領域。在衛生清潔方面,傳統的掃地機器人有著不錯的發展,但他們僅限于在平地上工作,不能對樓梯進行清潔,這對于復式樓房來說,其清潔范圍非常局限,不能滿足人們對美好物質生活向往的要求。
要實現機器人對樓梯進行清潔,首先要實現機器人的上樓和下樓。經調查,目前實現爬梯越障的機器人根據其實現形式的不同主要分為[1]輪系式、履帶式和腿足式[2]。輪系式機器人又以單輪式和行星輪式最為常見,單輪式機器人的越障能力較弱,但憑借其較好的承載能力及較快的平面移動速度得以廣泛應用。行星輪式機器人則擁有著較好的越障能力,簡單的機械結構和較快的移動速度,因此也被廣泛應用。
根據市面上現有的各類型掃地機器人的結構特點,進行優化改進、取長補短,設計了行星輪[3]與麥克納姆輪相結合的機構,用超聲波傳感器和紅外傳感器對環境信息進行采集,通過程序設計對信息進行判斷,再將程序所表達的功能通過Arduino電路板傳輸給各工作模塊,使機器人能夠自主爬樓清潔并自適應不同的階梯環境。同時安裝的吸塵盒內置吸附碳,吸附空氣中有害物質,能夠凈化粉塵和提高清潔效率。
通過采用麥克納姆輪與行星輪[4]相結合的輪系式爬樓機構,同時實現“平地清潔”和“樓梯清潔”雙模式。通過電磁離合器來進行兩個模式的切換。采用紅外避障[5]傳感器和超聲波測距傳感器[6]對環境信息進行檢測反饋。運用水平開關,間接檢測機器人狀態,并將所處狀態反饋給Arduino,確保機器人正常運行。工作流程如圖1所示。
圖1 工作流程圖
進行平地清潔工作時,機器人根據規劃路徑進行清潔,當前方無障礙物時,機器人直線前進進行清潔工作,當檢測前方有障礙物時機器人橫向移動一定距離并再次判別,當判別前方阻礙為障礙物時執行繞行指令。當判別到達清潔區域邊緣時,機器人原地轉向并繼續直線前進進行清潔,如此周期執行直至到達樓梯邊緣。進行樓道清潔工作時,由電機驅動行星輪執行主要爬樓梯任務,此時麥克納姆輪僅起到輔助爬樓的功能,當到達相應樓梯階層時,行星輪停止運轉,由麥克納姆輪帶動機器人進行橫向清潔,當檢測到達樓梯橫向邊緣時開始返程清潔,再次到達樓梯橫向邊緣時,麥克納姆輪停止運轉,機器人停止橫向移動。行星輪繼續執行爬梯工作,如此周期執行樓道清潔工作直至再次識別到達平地。當水平置于機器人前端的超聲波測距傳感器判定前方為樓梯并進入樓道清潔工作模式時,水平開關處于傾斜狀態。而當機器人持續工作至樓梯階末端時,超聲波測距傳感器檢測前方無障礙物,但水平開關仍處于傾斜狀態,機器人繼續樓道清潔工作,直至機身整體位于樓道頂層的平臺之上,此時水平開關處于水平狀態,機器人切換為平地清潔工作模式。系統功能如圖2所示。
圖2 系統功能結構
爬樓機構采用麥克納姆輪與行星輪[7]相結合的4個輪組式機構[8],用設計制作的板材作為機器人的承載式機身,吸塵器和塵盒置于板材上方進行塵屑的收集。如圖3~5所示。
圖3 爬樓機構三維設計
圖4 爬樓機構實物
圖5 吸塵器與塵盒
表1所示為Arduino mega 2560端口。該機器人采用Arduino開源平臺對其整體進行驅動控制。由于該機器人使用到的超聲波模塊及紅外避障傳感器等元件較多,所以所需的IO端口(數字電路輸入輸出端口)較多,最終選用了Arduino Mega 2560來對機器人進行控制。如圖6所示。
表1 Arduino Mega 2560端口
圖6 Arduino Mega2560原理
根據直流減速電機的驅動與控制要求,該機器人采用了雙H橋電機驅動模塊。該模塊的主控芯片為L298N,具有驅動能力強,發熱量低,抗干擾能力強等優點。主要用于接收Arduino指令并根據相應指令發送電信號控制電機進行前進、后退、轉彎等動作,是驅動電路的核心控制模塊,模塊還可通過PWM(脈沖寬度調制)進行調速從而控制電機轉速以滿足工作要求。如圖7~8所示。
圖7 L298N原理
圖8 L298N實物
采用HC-SR04型超聲波測距模塊[9]對周邊環境進行檢測,反饋與障礙物之間的距離。該傳感器在設計中主要用于檢測機器人所在位置與周邊障礙物的距離,使Ar?duino能夠根據反饋信息做出相應判斷,當到達相應距離時根據事先設定的程序指令使機器人做出相應動作或切換工作模式。如圖9~11所示。
圖9 超聲波測距傳感器原理
采用紅外避障傳感器[9]對周邊障礙物進行檢測[10],判斷所檢測方向能否正常通行。該傳感器主要用于檢測有效范圍內有無障礙物并發送相應電信號,根據其特性用于檢測機器人是否處于可通行位置,也可運用于檢測機器人所在地面環境防止從樓梯跌落。如圖12~13所示。
圖10 超聲波測距傳感器實物
圖11 超聲波時序
圖12 紅外避障傳感器原理
圖13 紅外避障傳感器實物
該設計采用24 V鋰電池作為驅動電源,在連接工作電壓較低的模塊時需要由降壓模塊進行調節降壓處理。該模塊選用了型號為LM2596的DC-DC可調降壓模塊,主要應用于將輸入電壓調節至相應元器件額定工作電壓的降壓領域。如圖14所示。
圖14 可調降壓模塊實物
電機驅動電路主要用于連接Arduino對電機進行驅動控制。根據機械結構及力學性能要求,電機采用了轉速66 r/min、工作電壓24 V的大扭矩直流減速電機。根據驅動要求和元器件的性能要求選用了24 V鋰電池作為驅動電源,連接于L298N電機驅動模塊的12 V供電端口和GND端口上,再由L298N電機驅動模塊[10]的兩個OUT通道分別控制兩個24 V直流減速電機[11],Arduino可通過發送指令信號對電機進行調速及驅動控制。L298N電機驅動模塊由Arduino的5 V端口提供電源,Arduino電路板則外接7.4 V電源供電以確保Arduino電路板的穩定運行。
電磁離合器控制電路主要用于“平地清潔”和“樓梯清潔”兩種工作模式的切換,機器人通過Arduino電路板對電磁離合器進行控制完成切換。控制電路選用的為一路5 V繼電器,通過連接繼電器常開端口(NO端口)和繼電器公用端口(COM端口)使常態下繼電器保持電路常開,電磁離合器斷開,當Arduino發送控制信號至繼電器IN端口,繼電器主電路連通,電磁離合器吸合。根據要求選用了24 V鋰電池作為該控制電路工作電壓來源,將24 V鋰電池正負極分別連接于繼電器接電源正極端口(DC+端口)與接電源負極(DC-端口)以提供控制電路主電路的工作電壓。5 V繼電器控制端口(IN端口)通過Arduino電路板輸出5 V高電平電信號觸發控制電路,使繼電器常開端口(NO端口)與公用端口(COM端口)連通,主電路通電使電磁離合器吸合。
電量檢測電路主要用于監測24 V鋰電池的電量狀態以保證其輸出電壓能夠滿足各驅動電路及控制電路的工作要求。利用Arduino電路板的特性進行線路連接,對鋰電池電壓值的監測,并通過不同的LED燈呈現出來。如圖15所示。
圖15 電量檢測電路調試
從Arduino電路板數字電路輸入輸出端口引接至LED燈正極,各LED燈都需串聯一個330Ω的電阻防止因電路空載燒毀Arduino電路板,從而確保Arduino電路板可根據電壓值進行反饋。因鋰電池輸出電壓為24 V,而Arduino電路板輸入端口可承受工作電壓為0~5 V,因此需選用降壓模塊對鋰電池的輸出電壓進行降壓處理。檢測電路通過對降壓后電壓的監測對鋰電池剩余電量進行判斷,當處理后電壓大于其50%時,綠燈亮起;當處理后電壓大于20%且小于50%時,綠燈熄滅,黃燈亮起;當處理后電壓小于20%或者檢測電路電壓為0(即將24V鋰電池斷開連接)時,黃燈熄滅,紅燈亮起。以此來推斷其電量損耗程度。
水平開關檢測電路主要用于檢測機器人是否處于傾斜狀態,以此來判斷機器人當前所處的工作模式,從而進行相應工作。
由Arduino電路板提供5 V電壓接于水平開關的一端進行供電,開關的另一端與330Ω的電阻及Arduino電路板的模擬電路輸入輸出端口進行連接,水平開關的狀態信號由此向Arduino電路板進行反饋,電阻另一端連接Arduino電路板GND端口形成回路。外接LED指示燈由數字電路端口引接,串聯330Ω的電阻并與Arduino電路板GND端口形成回路。當水平開關處于傾斜狀態時,Arduino電路板針對其狀態環境進行相應的控制反饋,并由LED燈顯示狀態。
通過超聲波發出及被接收的時間計算出超聲波測距模塊[12]與前方障礙物的距離,并回饋給Arduino電路板以進行相應地控制。該傳感器工作電壓為5 V,將其VCC端口與GND端口連接Arduino電路板的5 V端口與GND端口對傳感器進行供電。其Trig端口與Echo端口則連接至Arduino電路板上相應的控制端口,給予Trig端口一個高電平信號,傳感器將循環發射若干個脈沖,當檢測到反彈信號時,Echo端口會相應的產生高電平信號,Ardu?ino電路板也將獲得距離信號值。
紅外避障傳感器主要用于對機器人周圍環境是否存在障礙物進行探測,從而判斷機器人所處狀態以進行相應的驅動控制。紅外避障傳感器工作電壓也為5 V,可將Arduino電路板的5 V端口與紅外避障傳感器的VCC引腳進行連接,并將電路板的GND端口連接于傳感器的GND引腳形成回路。傳感器的OUT引腳可將檢測結果通過數字形式輸出給Arduino電路板,以此對周圍環境所處狀態進行推測。如圖16~17所示。
圖16 紅外避障傳感器調試
圖17 電路連接
將各驅動電路及控制電路分別進行連接調試,24 V鋰電池連接分線器對各電路進行分線供電,通過端口連接電量檢測電路進行實時監測。利用面包板的特性,將Arduino電路板5 V供電端口與接地端口外接于各模塊,滿足電路模塊的供電需求。如圖18~21所示。
圖18 機器人測試
圖19 機器人實物1
圖20 機器人實物2
圖21 三維建模
本設計實現了清潔機器人在工作領域上的突破,實現了通過各模塊反饋信號進行自檢測且通過檢測結果對機器人所處狀態進行剖析與干預以確保機器人穩定運行。該設計的主要創新點如下。(1)實現了掃地機器人的爬樓清潔。使掃地機器人進入樓梯清潔時代,大大提高了清潔效率,對掃地機器人未來的發展具有重要影響。(2)實現機器人的自適應。使機器人具有自適應環境的能力,擺脫了人為的干預,降低了人的操作成本。(3)減少人工清潔的勞動風險。樓梯清潔本身存在一定安全隱患,通過實現機器人進行樓梯清潔,消除了人工清潔存在的風險。