張 強 陳奕梅
(天津工業(yè)大學電氣工程與自動化學院,天津 300387)
隨著人們生活水平的日益提高,我國人口的老齡化問題也越來越明顯,清潔機器人作為智能移動機器人的一個特殊應用,能夠代替人們進行清掃房間、車間、墻壁等一些簡單勞動,這些都為人們的日常生活提供了許多方便,使服務機器人有了廣闊的市場前景。從技術方面講,清潔機器人體現(xiàn)了移動機器人的多項關鍵技術,包括路徑規(guī)劃、自主避障、信號處理等。目前市場上的清潔機器人大多由于通用性差、結構不合理導致成本高、操作復雜,不利于其普及[1]。在研究總結市場上相對成熟產品的基礎上,基于ARM處理器s3c2440A設計一款具備自我導航能力的家用清潔機器人,其具有結構簡單、外形緊湊、運行穩(wěn)定、噪音小的特征,并且價格低,操作方便,還具有可擴展接口,用戶能夠根據實際需要對其功能做進一步開發(fā)[2]。
清潔機器人本體硬件系統(tǒng)如圖 1所示。系統(tǒng)主要由以下幾部分組成:主控制器模塊、驅動模塊、清掃模塊、器模塊、人機交互模塊、電源及欠壓檢測模塊等,這幾個模塊在主控制器的控制下,相互協(xié)調工作,保證了清潔機器人各種功能的實現(xiàn),清理機器人各模塊間關系。
清潔機器人以s3c2440A控制芯片作為控制核心,主要完成以下的任務:接收各個傳感器采集的外界環(huán)境信息進行綜合規(guī)劃;通過2路PWM信號控制左右輪的速度和方向,從而控制機器人的行駛路徑;通過 I/O口信號控制三極管進而控制繼電器驅動清掃模塊對地面進行清潔;通過多個 I/O口控制 LCD顯示機器人的當前狀態(tài),如電池剩余電量、外界環(huán)境溫度等[3]。
清潔機器人的環(huán)境信息采集傳感器包括五個紅外避障傳感器、五個碰撞傳感器和三個紅外防跌落傳感器,其結構如圖 2所示,圖中圓代表紅外避障傳感器,長方形代表紅外碰撞傳感器,三角形代表紅外防跌落傳感器。機器人通過紅外避障傳感器和碰撞傳感器的結合使用實現(xiàn)清潔機器人的避障,紅外防跌落傳感器對機器人的行駛路徑上可能跌落的區(qū)域進行檢測,防止機器人跌落[4]。
清潔機器人通過紅外避障傳感器檢測障礙物,通過紅外防跌落傳感器檢測臺階,但臺階檢測和障礙物檢測需要選用距離不同的反射式紅外光電開關。反射式光電開關是由 LED光源和光敏二極管或光敏晶體管等光敏元件組成,當有障礙物阻攔時光線能夠反射回來,輸出為低電平信號,當沒有障礙物阻攔時,光線不能反射回來,輸出為高電平信號[4]。
本文所設計的紅外傳感器如圖 3所示。電路中使用了LM567芯片,它在電路中的作用是選頻,即只有當輸入信號的頻率與電路自身的振蕩頻率一致時,電路輸出低電平,但是紅外避障傳感器和防跌落傳感器的作用是不同的,當紅外避障傳感器輸出低電平時,清潔機器人進行避障,當紅外防跌落傳感器輸出高電平時,清潔機器人進行防跌落操作。清潔機器人在行駛過程中由于紅外避障傳感器的局限性是不能完成對于桌腿、椅腿等較細的障礙物的檢測的,這時就需要碰撞傳感器對其障礙物檢測的缺陷進行補足[5],其與 s3c2440A的連接如圖4所示,圖中只給出一個碰撞傳感器與s3c2440A的接線圖。當機器人碰到障礙物時,碰撞開關閉合,1、3引腳導通,引腳 3輸出由低電平變?yōu)楦唠娖?,機器人進行避障操作。
清潔機器人在運行過程中至少六個電機同時運轉,其中驅動模塊包括兩個小型直流電機,清掃模塊包括四個直流電機:一個電機用于產生真空,兩個電機用于控制邊刷,一個電機用于控制滾刷。本文將驅動機構設計成一個閉環(huán)控制,主要包括L298N驅動電路和光電編碼器電路,L298N驅動電路如圖5所示。
處理器的J5和J6與ENA和ENB相連,產生PWM波控制電機的速率,管腳D12、C12、E11、F10分別和IN1、IN2、IN3、IN4相連,用于控制電機的轉向(J5、J6、D12、C12、E11、F10均為ARM的管腳),處理器通過編碼器反饋的脈沖數(shù)量和相位而得到當前的電機速度和轉向,對電機實現(xiàn)閉環(huán)控制。清掃模塊控制電路如圖 6所示,由于清掃模塊中的四個電機的控制方式相同,所以圖中只給出一個電機的控制電路,三級管導通,電機開始轉動。由三極管做開關驅動繼電器,當F10作為I/O口輸出高電平時,線圈通電,常開端口閉合,電機轉動。
人機交互模塊包括 LCD液晶顯示屏、按鍵和紅外遙控模塊??紤]系統(tǒng)需求,本文選用了SYB12864K-ZK液晶顯示屏,它具有并行/串行兩種接口方式,內部含有中文字庫,其顯示分辨率為 128x64,接口方式靈活簡單、方便操作[6]。同時,采用 4個獨立式按鍵作為輸入,分別為設置鍵、遞增鍵、遞減鍵和確認鍵,用于工作時間和路徑規(guī)劃方式的選擇。本文設計的紅外遙控模塊如圖 7所示,該設計使機器人的使用更加方便簡單,發(fā)射距離超過10m,能夠滿足需要。
清潔機器人的電源消耗主要有清掃模塊、控制電路和驅動電路。綜合考慮各個方面的因素,本文采用14.4v/3500mA的可充電電池,具體的電路連接如圖8所示,其中VDD作為清掃機構正極,VCC作為控制電路和驅動電路的正極。
本設計采用AX301作為欠壓檢測芯片,其連接電路如圖9所示。當電源電壓高于上行閾值60ms后,LBO輸出高電平,當電源電壓低于下行閾值后LBO輸出低電平。
整個系統(tǒng)基本上可以分成以下幾個部分的任務:a.控制機器人的清掃模塊。當清潔機器人開始或停止工作時,清掃模塊中四個電機同時啟動或停止。b.防止機器人從臺階跌落。如果機器人底部的任意一個紅外防跌落傳感器檢測到臺階都要強行后退并向右轉彎,這部分實時性要求高,所以采用中斷來實現(xiàn)。c.探測機器人周圍的障礙物情況。當機器人的紅外避障傳感器或碰撞傳感器探測到障礙物時,傳感器將信號反饋給 s3c2440A,機器人初步判斷障礙物的位置,然后采取相應的處理。d.控制機器人的驅動模塊。s3c2440A通過兩路PWM波和光電編碼器對驅動模塊實現(xiàn)閉環(huán)控制,從而實現(xiàn)機器人的路徑規(guī)劃。e.LCD顯示屏和按鍵的設置。在程序中需要對LCD顯示屏的參數(shù)進行設置使之顯示機器人的運行狀態(tài),而且按鍵進行軟件去抖動。g.電源欠壓檢測及充電控制。通過AX301檢測電池電壓,當電池電壓低于一定值時,啟動尋找充電站子程序,電池充上電后,監(jiān)測電壓防止過充電。
以上的每個任務都對應幾個子程序或中斷程序,整個系統(tǒng)的主程序流程如圖 10所示.其中障礙檢測、按鍵和電壓檢測等都采用了分時查詢的方式,臺階檢測和大部分延時程序采用了中斷的方式。這樣合理利用資源的同時也提高了機器人的響應時間當定時時間到或檢測到臺階時,進入中斷程序,具體流程如圖10所示。
實驗證明,控制系統(tǒng)滿具備智能清潔能力,運行平穩(wěn)可靠,抗干擾能力強,性能良好,可以實現(xiàn)完全遍歷和自主避障等路徑規(guī)劃任務,替代了傳統(tǒng)的人工清潔工作。
[1] 高學山,徐殿國.全方位地面移動清掃機器人[J].機械工程學報,2008,44(3):28-33.
[2] 邢敏,蒙梅,劉任平.JP-cleaner型清潔機器人控制系統(tǒng)設計[J].機械與電子,2006,(10):55-57.
[3] 王磊,楊杰.全自主清掃機器人運動分析與路徑規(guī)劃[J].機電一體化,2007,(2):70-73.
[4] Yong-Joo,Watanabe-Y.Development of small robot for home floor cleaning[A].SICE 2002.Proceedings of the 4lst SICE Annual Conferenee[C].2002,(5):222-223.
[5] 劉瑜.自主吸塵機器人的研究[D].杭州:浙江大學, 2006.
[6] 曹建樹,曾林春,靳志杰.室內智能清潔機器人控制系統(tǒng)[J].機械與電子,2009,(6):60-63.