王春平,潘海鵬
(浙江理工大學 機械與自動控制學院,杭州 310018)
機器人技術自上個世紀中葉問世以來,經歷50多年發展已經取得長足進步,成為提升產業競爭力方面極為重要的戰略技術。隨著全球環境的變化,工作、生活中發生的意外事故增多,各種危險區域的人工監控活動逐漸由機器人代替,促使了監控機器人的誕生。眾多學者與科研機構對機器人技術的不斷深入研究使得機器人的應用領域日益廣泛,工作環境和任務也日益復雜,而單體機器人應對能力是有限的,很多任務僅靠單機器人不能完成或很難完成[1,2]。
科學家們從自然界蜂群、鳥群、狼群等物種通過群體協作完成復雜任務的行為受到啟發,提出群機器人系統的概念[3]。設計成本較低、功能較為單一、結構相對簡單的個體機器人,通過編隊技術使多個機器人相互協作,組成群體機器人系統[4]。目前,多機器人協同控制系統受到機器人、數學、物理、生物等相關領域專家的廣泛關注[5]。為了提高監控機器人系統的高效性、靈活性以及魯棒性,本文對基于領導者和跟隨者編隊的監控機器人系統進行設計研究。
系統總體結構如圖1所示,主要由領導者監控機器人、跟隨者監控機器人、控制中心和通信網絡組成。控制中心通過通信網絡控制領導者監控機器人運動,跟隨者監控機器人通過攝像頭識別領導者監控機器人上攜帶的標識物,實現跟隨的目的。

圖1 監控機器人系統總體結構
該系統中有兩個機器人,一個是領導者監控機器人,另一個是跟隨者監控機器人。領導者監控機器人主要由控制器模塊、運動機構模塊、電源模塊、監測模塊、通信模塊、人機交互模塊以及識別物模塊組成。跟隨者監控機器人的大部分組成模塊和領導者監控機器人差不多,不同之處是跟隨者監控機器人沒有攜帶標識模塊,但是攜帶了攝像頭模塊,負責獲取領導者監控機器人的位置。
系統使用STM32F103C8T6芯片作為控制器,STM32F103C8T6芯片實物圖,如圖2所示,其采用Cortex-M3作為內核架構。該芯片工作主頻為72MHz,FLASH大小為64KB,SRAM大小為20KB,具有2個SPI,3個USART,2個I2C,1個CAN總線,36個普通IO口,1個USB,2個ADC,3個普通定時器,1個高級定時器,工作電壓為2V~3.6V。

圖2 STM32F103C8T6芯片
控制器、人機交互模塊、各種傳感器和ZigBee模塊等模塊的工作電壓都在5V左右,不能承受11V的電壓,如果不想增加電池數量,而加重機器人的負載,可以使用降壓模塊。降壓模塊通過內部的BUCK電路,可以降低輸入電壓,并通過輸出口輸出降低后的電壓,供其他模塊使用[6]。為使機器人獲得周圍環境的信息,在機器人上搭載了多種傳感器,包括熱釋電傳感器,溫度傳感器和煙霧氣敏傳感器。系統采用HC-SR501熱釋電紅外傳感器作為生命檢測傳感器,如圖3所示。有人進入時,輸出高電平,反之輸出低電平。

圖3 熱釋電紅外傳感器HC-SR501
該傳感器上安裝了菲涅爾光學透鏡,使傳感器感應距離更遠,感應角度越大,其感應角度<100°錐角,感應距離<7米,如圖4所示,工作電壓為5V~20V,使用時不需外加外圍電路。
溫度傳感器采用DS18B20型號,該傳感器采用單總線方式通信,通過一根信號線和單片機相連,就可實現相互通信。其最高可測125℃,最低可測-55℃,分辨率為±0.5℃,工作電壓為3V~5V,使用時不需外加外圍電路。煙霧傳感器型號為MQ-2,該傳感器可對液化氣、丙烷、氫氣等氣體進行檢測,常用于廠房和家庭氣體泄露檢測裝置。其檢測濃度范圍100~20000ppm,靈敏度Rs(in air)/Rs(1000ppm異丁烷)5,工作電壓為5V,使用時不需外加外圍電路。

圖4 熱釋電紅外傳感器檢測范圍
系統使用ZigBee模塊作為機器人和控制中心的通信模塊,該模塊工作電壓范圍為:3.0V~5.5V,波特率最高可達115200,具有16個信道。本系統使用廣播工作模式,這樣領導者監控機器人、跟隨者監控機器人和控制中心之間就能通過ZigBee網絡實現相互通信。為提高開發效率,本文為機器人增加了人機交互模塊,其主要由OLED顯示屏和按鍵組成。該OLED顯示屏尺寸為0.96寸,分辨率為128×64,使用SPI方式通信,工作電壓范圍為3.3V~5V。可以在顯示屏上顯示機器人的當前狀態,獲得的指令和電池電壓等數據,便于及時發現問題,快速解決問題。
為使跟隨者監控機器人更易獲得領導者監控機器人的位置,在領導者監控機器人上還安裝了識別模塊,主要由繼電器組成,由于紅外信號燈的功率較大,不能使用控制器的IO口直接驅動,故需要在控制器和紅外信號燈之間加一個繼電器。繼電器依靠電生磁原理制作,常用于小電流控制大電流的場所。
系統選用了OV7725型號的鷹眼攝像頭,可檢測領導者監控機器人標識物發出的紅外信號,為降低外界其他物體的干擾,在攝像頭鏡頭上加了紅外濾光片。鷹眼攝像頭最大的特點就是具有硬件二值化,通過硬件將圖像二值化,直接輸出二值化后的圖像,這樣攝像頭一次就可以傳輸8個像素點,比普通的攝像頭快了8倍,大大減少了傳輸時間,加快了圖像處理速度,減輕單片機的負擔。而且該攝像頭的閾值是可變的,從而使系統適應環境能力更強。
跟隨者監控機器人采用麥克納姆輪,作為一種全向輪,通過控制四個電機的運動方式,可控制機器人進行上下左右移動,控制方式如圖5所示[7]。通過使用麥克納姆輪可對左右方向和上下方向基于PID算法進行解耦,使機器人更加容易控制。最終搭建的領導者監控機器人如圖6(a)所示,跟隨者監控機器人如圖6(b)所示。

圖5 麥克納姆輪運動方式

圖6 監控機器人實物圖
跟隨者監控機器人為了實現跟隨領導者監控機器人的目的,首先要獲得領導者監控機器人的位置。本系統采用攝像頭定位。攝像頭獲得的原始圖像如圖7所示,因為OV7725是硬件二值化攝像頭,所以獲得的圖像一開始就是黑白色的,這對于獲得領導者監控機器人的位置已經足夠了,且濾除了其他干擾物,便于圖像的后期處理。

圖7 攝像頭獲得的原始圖像
在處理完圖像后就是加入控制算法實現跟隨。閉環負反饋控制系統主要包括控制器,執行器,被控對象和測量變送器等部分[8]。本系統中,控制器為PID,執行器是跟隨者監控機器人的電機,被控對象是跟隨者監控機器人,測量變送器為攝像頭,預期值是領導者監控機器人和跟隨者監控機器人之間的距離和方位,被控變量為PWM的輸出值。
PID控制器具有結構簡單、穩定性好、調整方便等優點[9,10],結構如圖8所示。

圖8 PID控制器結構圖
控制公式如下:

其中Ti為積分時間常數,Td為微分時間常數,Kp為比例系數。為了能用ARM控制器表示該公式,需要對其進行離散化,離散化后的公式為:

Kp為比例系數,Ki為積分系數,Kd為微分系數。本系統是一個多輸入單輸出系統,輸入為兩個機器人之間的距離d和方向θ,輸出為機器人的運動狀態。為便于控制,將距離d和方向θ分解為橫坐標x和縱坐標y。其中x和y值如下所示:

系統控制器的結構如圖9所示,通過橫向PID控制x達到預期值,通過縱向PID控制y達到預期值,當x和y都達到預期值時,兩個機器人之間的距離d和方向也達到預期值。控制器表達式如下:

其中u1,u2,u3,u4分別為電機1,2,3,4輸出的PWM波的占空比。

圖9 系統控制器結構圖
為維持機器人之間的預期相對位置,在設計好控制算法后,還需要通過實驗選擇一組合適的參數,實現編隊跟隨快、準、穩的目標。據此設計PID控制算法,有三個參數需要調節,分別為比例系數Kp,積分系數Ki,微分系數Kd,本文根據經驗法提出了參數調節的步驟如下:
1)將Ki和Kd設為0,在輸出不震蕩的前提下,增大Kp;
2)維持Kp不變,在輸出不震蕩的前提下,增大Ki;
3)維持Kp和Ki不變,在輸出不震蕩的前提下,增大Kd。
當Kp=225,Ki=0,Kd=0時,編隊效果如圖10所示。此時系統有穩態誤差e=(80-77)/80=0.0375。
當Kp=225,Ki=2,Kd=0時,編隊效果如圖11所示。此時系統沒有穩態誤差。
當Kp=225,Ki=2,Kd=10時,編隊效果如圖12所示。此時系統沒有穩態誤差,且超調量較小,調整時間較短。

圖10 只有Kp時的編隊輸出效果

圖11 有Kp和Ki時的編隊輸出效果

圖12 有Kp,Ki和Kd時的編隊輸出效果
為提高機器人應對復雜環境的能力,本文提出一種基于領導者和跟隨者編隊的監控機器人系統設計。給出了監控機器人系統的整體設計,并對機器人編隊展開介紹,搭建了監控機器人系統并對系統進行調試,實現了通過控制中心控制領導者監控機器人和跟隨者監控機器人自主跟隨目標,對同類機器人的設計和開發具有一定的參考和推廣價值。