汪 珺
(合肥學院 機械工程系,安徽 合肥 230062)
二十一世紀,機器人自動控制技術得到廣泛應用,工業革命的序幕再次拉開。機器人的用途不再單一,不再局限于工業領域而是向更加寬闊的應用領域擴展,越來越多的機器人及其相關衍生產品來到我們的生活中,包括醫學、美術、科研、統計、教學等等,其中交通類機器人就是機器人的一個應用方向,而且具有廣泛的應用前景。究其原因,一是由于目前經濟的發展迅速,各種類車輛數量也隨之日益增多。以小型車輛為例,公安部統計數據顯示,截至2018年底,全國小型汽車保有量達2.4億輛,比2017年增加了2285萬輛,增長百分比為10.51%。與此同時交警的警力卻遠遠達不到高度發達的交通所需水平,于是道路擁堵、交通事故頻發的預防和處理也遠遠得不到及時的解決。給人民生活帶來的不便尚屬其次,在大中城市,尤其是高峰時間的應急處理上更是帶來了更大的隱患,如急性醫療和社會事件發生時相關人員和車輛因為擁堵,無序的交通無法及時到位,其后果是無法想象的,由此可能帶來的相應的人員傷亡和財產損失會大幅度提升。與其同時,處理的應急時間窗口長短也與財政支持成明顯的負相關。另一原因,從交通警察角度來看,交警執勤的工作環境屬于室外高危工種,且不論其長時間處于大量的汽車尾氣和灰塵的環境中,容易罹患呼吸道及心腦血管疾病,同時對于違法惡性事件發生時我們的執法人員自身的生命安全也完全無法得到保障。為了維護交警人群的身體健康以及安全,可以考慮用交通機器人替代交警的工作。由此可見,隨著經濟的飛速發展以及交通壓力的日益增長,交通指揮型機器人有望成為人類交通領域所必需的保障。它們可以代替人類完成很多危險、復雜的任務,解放人類的負擔等,有望成為市場的新生力軍。
現階段機器人運用市場高速發展,從早期的用于工業和軍事領域的機械手和機器臂,到如今的廣泛應用于軍事、制造業、醫療、服務的智能機器人。但用于交通方面的智能機器人甚少,比如浙江紹興高速交警支隊所采用的護欄預警抓拍巡邏機器人[1-2],該種機器人的移動方式是借助于高速公路兩邊的護欄,在護欄上高速移動的同時監控高速公路各路段的實時交通情況,對于違法違章行駛的車輛可以獲取車輛的圖像信息達到取證的效果。該種機器人的出現反映出智能機器人的優勢,節省了警力的同時改善了交警的工作環境,交警不用在室外就可以完成對高速公路的巡視。但是這種機器人的缺點也是顯而易見的,必須依賴于護欄導致該種機器人移動方式有很大的局限性,而且有些角度不方便采集圖像信息,會存在視覺盲區。再比如山東大學信息科學與工程學院邢建平、劉勇等研制的人形機器人姿態控制的智能交通指揮系統[3],利用KINECT深度傳感器獲取視野內場景的深度信息[4],選取NAO機器人作為系統構架里的智能機器人[5-6],能夠跟蹤交警的指揮動作并完成模仿,該系統的缺點是成本高不易推廣,但是為交通類機器人的出現提供了一種別具一格的新思路。由此可見目前市面上的交通類機器人大致可分為移動平臺類和仿人形類,受現有的交通類機器人啟發,筆者基于虛擬儀器技術的NI RIO平臺設計出一種可分離式智能協警機器人,包括可以做出各種交通指揮動作的機器人以及機器人下方的移動平臺,結合現有交通類機器人的一些優點,該協警交通機器人可實現自動行走,同時行走速度可自行控制,能夠快速通過擁擠混亂的現場及時到達指揮場地并根據實時的交通狀況做出相應的交通指揮動作。
智能協警交通機器人系統組成如圖1所示,由圖中可見整個系統包括四大部分:交通機器人本體、可搭載交通機器人到指定地點的移動平臺、可以遠程控制交通機器人本體和移動平臺的后臺系統以及相關的控制系統。

圖1 智能協警交通機器人系統組成圖
工作時先將需要到達的目的地通過后臺系統發送給移動平臺小車,移動平臺可以規劃路線,開啟電機后,移動平臺小車可以沿著車道線到達預定的目的地,期間若遇到障礙物可以繞過障礙物再繼續前行。到達目的地后,交通機器人本體根據后臺系統的指令或者通過現場語音指令,做出與指令相符合的交通指揮動作。目前已研制出一代交通機器人樣機1臺,圖2所示即為智能協警交通機器人系統的機器人本體和移動平臺的3D造型圖及樣機圖。
在設計系統時為了方便開發、調試,采用了模塊化的設計思路。機器人這部分主要包括五個模塊:機器人控制單元、實時環境圖像采集單元、語音識別交互單元、后臺通訊單元、電源單元。機器人控制單元模塊可以接受后臺的指令或者來自現場的語音指令信息,根據指令的內容控制機器人完成與指令相對應的交通指揮手勢;實時環境圖像采集單元模塊與機器人控制單元模塊和后臺通信單元模塊連接,該部分主要功能是收集周圍環境的實時圖像信息,然后將圖像信息通過后臺通訊模塊傳遞給后臺;語音識別交互單元模塊可以識別周圍環境的語音信息,進行判別,從而做出相應的動作或自身發出相應的語音與之進行交互;后臺通訊單元模塊可以傳遞指令信息,如前文所提及的當實時環境圖像采集單元模塊將實時道路圖像信息傳遞到后臺時,后臺判斷后會發出相應的指令,緊接著通訊單元模塊會將該指令信息傳遞至機器人控制單元模塊。以下選取重要模塊進行詳細介紹。

為了讓機器人本體具備較高的親和力,在構造其外形時選用仿人類外形的形態,其外形模擬人的形態構造,包括主體軀干、帶攝像頭的頭部以及手部和腿部。為減少開發時間選用了幻爾LOBOT的17自由度人形機器人,其結構示意圖如圖3所示,該機器人自帶7.4V超大容量鋰電池,通過控制舵機來實現各種動作。

圖3 17自由度人形機器人結構示意圖
為了靈活控制機器人本體,沒有采用幻爾LOBOT配備的控制系統,而是自主開發了機器人控制模塊。通過前文的介紹可以了解本控制模塊要實現的功能主要有:完成機器人的運動控制、語音互動功能、后臺通信功能;除此之外,考慮實際工作的環境以及場合,該控制模塊還應該能夠滿足如下要求:
1)有較強的環境適應能力:眾所周知,交通警察執勤期間所處環境具有多樣性和復雜性,代替其工作的交通機器人能適應比如各種溫度、各種濕度、多塵埃等多樣的工作環境,并對于危險區域執法便利性也有大幅度的提高;
2)成本合理:考慮到推廣應用的可行性,在保證其可靠性、功能性的前提下,應該盡可能采用價格低的控制器,從而提高整機的市場競爭力以及市場推廣可行性;
3)便于集成:所選控制器體積不大,可提高對于生產流水線的成本投入減少以及模塊化的半成品的運輸、集成、安裝便利性。
在主控制器的選擇上考慮滿足上述要求功能,因此選用STMicroelectronics 公司的STM32107VCT6 作為主控制器。這一款控制器的核心處理器為ARM Cortex-M3,具有運算能力強、體積小、成本低、功耗小的特點。該控制器包含多路PWM輸出可以用來控制人形機器人上的舵機,在軟件開發上也比較靈活,可采用 C語言和LabVIEW圖形化開發,由此滿足人形機器人本體控制系統的各種需求。對于開發語言的選擇,考慮到兩種語言有相比較,C語言是級別相對低一點的語言,在控制上主要是提供低級別的控制,因此在軟件的過程中對編程者的要求比較高,諸如線程和內存的分配這些非常細微的細節,都需要編程人員考慮到。LabVIEW對于剛剛接觸其的使用者來說,可能會被認知為一種新型的圖形化編程語言,既能具備強大的功能,界面又容易上手。實際上LabVIEW除了開發簡易、界面友好等優點之外,它對于系統內可以使用的硬件資源能夠快速準確地識別,對于可以用的執行目標以及輸入/輸出通道以項目名稱和下拉菜單的方式顯示,這樣在系統調試過程中,調試人員可以很快捕捉到一些錯誤的系統配置,成功避免系統在調試時候的運行錯誤,節約了一筆代價高昂的調試費用。當然,如果非要讓LabVIEW和C語言做個較量,是不能籠統地分出優勝來的。根據具體需要的應用環境來看,綜合考慮快速開發性,采用LabVIEW圖形化語言來開發。
要機器人能完成一系列交通指揮動作,需要STM32107VCT6控制17個舵機的轉動角度和順序。為方便管理,將這17個舵機分為三類:需要沿著X軸向旋轉的8個,定義為P1-P8;需要沿著Y軸向旋轉的8個,定義為Z1-Z8;需要沿著Z軸向旋轉的1個,這一個處于頭部位置,由于該位置在交通指揮動作時涉及較少,而且上面放置攝像頭,因此在控制時考慮不易多涉及該部位,這個位置舵機定義為17。這17個舵機和STM32107VCT6的PC口16路引腳以及PB口的1路引腳相接,具體對應關系如圖4中所示。

圖4 機器人舵機定義圖
基于LabVIEW圖形化語言,我們開發了交通機器人控制系統,其人機交互界面及后面板程序如圖5、圖6所示,圖5中人機交互界面的左邊是路面的實時監控界面,右邊是交通機器人的交通指揮手勢,為了能控制機器人完成一系列的交通指揮動作,我們把每個動作進行分解,通過多次實驗可以準確獲得這個動作涉及的舵機的運行順序以及相對應舵機需要轉動的角度,緊接著把每個獨立的動作進行組合,從而就可以得到連續的動作,最后將交通警察指揮交通時所需要的一系列指揮動作放入庫中。在指揮過程中,當交通機器人接收到到指令時,判別需要哪一個指揮動作,然后直接從庫里調用就可以了,通過實驗表明上述整個過程具有穩定以及快捷性。

圖6 交通機器人控制系統后面板程序

圖5 交通機器人控制系統人機交互界面
交通機器人本體接收到指令后可以做出與之對應的動作,而這個指令的一個來源是控制后臺。根據交通機器人的特點和使用場合,機器人與后臺通信需要帶寬比較的大,同時可以適應系統不停移動的需求。考慮如果要滿足這些基本的需求,根據我們的條件,可以采用的解決方案是采用運營商現有的3G、4G通訊,這種方式不需要我們自己架建基站,但長期使用可能需要向對應的運營商支付一筆不少的費用,因此該種方案雖然前期投入比較低,但是后期會有持續投入。不過考慮到未來的5G會具有極低延時和核心技術獨占性,對于交通機器人系統的機動性、安全性和保密性會極大提高,此種方案不應該摒棄;另一種方案是采用WIFI通信,但這需要自己建造基站,雖然前期會有投入,基站建好后可以長期免費使用,也可以點狀建設從而彌補信號空白區域。我們的系統在調試階段由于時間以及經費的限制,采用現有的3G/4G通訊方案為過渡,待5G技術成熟后結合兼并使用自己建設基站的第二種方案,以彌補野外5G信號空白區。
為提高趣味性以及人機互動性,我們加入了語音識別交互模塊,因此交通機器人本體除了可以根據后臺指令做出交通指揮動作,還可以接受周圍環境的語音指令從而做出相應的動作,其后面板程序如圖7所示。這部分模塊的加入增進了人機互動性,同時也可以提高指揮效率。語音識別交互模塊主要包括三個部分:

圖7 語音交互后面板程序
1)語音接收模塊:該部分主要功能是采集周圍環境的可用語音信息,然后將采集到的語音信息傳遞給語音分析模塊以待分析;
2)語音識別模塊:該模塊可以對采集到的可用語音信息進行分析識別,識別的方式是通過在該部分模塊中添加大量的語音關鍵詞,語音接收模塊送出的語音信息如果觸發這些語音關鍵詞的時候,語音識別模塊可以將所觸發的關鍵詞信息發送至下一步,也就是語音處理模塊;
3)語音處理模塊:語音識別模塊得到的內容輸入到本模塊時,語音處理模塊會做一個比對,比對預先設定好的庫里的動作,找出匹配的動作,調動相應動作的子程序,從而使交通機器人本體做出對應的動作;此外設計了大量對話場景,交通機器人本體除了會做出動作來回應外,還可以匹配到設計的場景,調用相關的語音進行回應。
移動平臺這部分在設計是依然采用模塊化設計的思路,這部分包含六個模塊:移動平臺控制單元、障礙識別單元、路徑規劃單元、速度調節單元、后臺通訊單元、電池單元。移動平臺控制單元模塊主要根據其他模塊及后臺指令控制小車的路徑及行駛的速度;障礙識別單元模塊可以識別移動平臺前方障礙物,并反饋給移動平臺,以便其重新規劃路徑;路徑規劃單元模塊可以根據平臺在移動過程中對路面實時采集的信息,得到到達目的地的路徑;速度調節單元模塊可以實現對移動平臺電機速度的調節;后臺通訊單元模塊和機器人本體上的通訊單元模塊設計思路是一致的,這里就不再詳述。以下選取重要模塊詳細介紹。
常見的移動平臺有輪式和非輪式(步行類、爬行類等),考慮到本移動平臺的使用場合要求其應具備簡單、安全、快速的特點,采用輪式結構。進一步的,為了滿足功能需求,同時兼顧經濟型,采用差分式驅動器的三輪車型,包含一個自由輪以及分布在車身軸兩側的兩個固定驅動輪,可以實現前進、后退、轉彎以及在原地旋轉的功能。這種差分驅動器的三輪車型比單驅動器的轉彎的適應性強,比雙輪驅動以及多輪驅動的平臺成本低。
基于差分驅動器的三輪車型的常見結構,我們設計出如圖8所示的移動平臺,機器人整體底座為三輪鋼架,底座為三個滾輪,由尾輪控制機器人的移動方向,整個平臺體積不大且具備機動性強的特點,可以穿梭于車流之中執行任務。

圖8 移動平臺3D造型圖
由于移動平臺要對采集的圖像進行分析,完成路徑規劃、避障等功能,所以在控制器的選擇上考慮FPGA,兼顧經濟型,選用NI myRIO(Zynq-based)嵌入式平臺。該控制器有“口袋實驗室”之稱,顧名思義兼顧了結構緊湊、體積小和功能強大的特點。除此之外,其編程環境也多樣,包括C、 C++以及LabVIEW。通過前文描述可知交通機器人本體的控制系統是基于LabVIEW開發的,所以移動平臺的開發軟件同樣選用LabVIEW。
路徑規劃我們采用車道線識別的方式,移動平臺在移動過程中實時對路面的車道線進行采集,獲取車道線信息的相關參數。如圖9中車道線識別的人機交互界面所示,我們截取車道線圖像信息的某一矩形區域,與此同時考慮環境的差異,比如光線強弱等因素,在采集信息的時候會根據所采集的圖像調整相關參數直到采集的圖像比較清晰為止,為調試方便,設定此時會有一道紅色標志線出現在車道線邊緣。要使得移動平臺一直沿著車道線行駛,通過實驗我們發現將移動平臺行駛方向與車道線之間的角度控制在-2°到2°比較合適,當超出這個范圍的時候,如果此時角度為正,說明校車行駛方向右偏,我們通過控制電機的占空比來降低右輪轉速,升高左輪轉速;若角度為負則反之。

圖9 車道線識別人機交互界面
該部分程序的后面板程序如圖10所示。
障礙物的識別目前多采用紅外傳感器或者超聲波傳感器,紅外傳感器雖然電路比較簡單但是有個比較大的缺點時容易受到光線的影響;而超聲波傳感器不受光線影響,性能也比較穩定,還可以測量距離。因此我們選用超聲波傳感器,將其安裝在移動平臺的正前方,在傳感器下加了一個舵機讓其可以一直在180°范圍內旋轉,從而增加其掃描的范圍。在移動平臺工作時,超聲波傳感器會不停掃描前方行駛區域,遇到障礙物的時候,自動計算出移動平臺和障礙物之間的距離,決定是繞行還是先倒退再繞行,在編制軟件時此部分采用和車道線識別類似的選擇條件結構,這里就不再贅述。

圖10 車道線識別程序后面板程序
研制了智能協警交通機器人系統,該系統由上下兩部分構成,上部分為采用Labview控制的人形機器人,包括機器人控制單元、實時環境圖像采集單元、語音識別交互單元、后臺通訊單元、電源單元,該部分的涉及運動調試,無線傳輸以及語音交互;下半部分為能夠起到避障和自動行駛作用的移動平臺,包含移動平臺控制單元、障礙識別單元、路徑規劃單元、速度調節單元、后臺通訊單元、電池單元。總結整個系統的特點如下:
1)該系統在設計過程采用模塊化設計,參考一些成熟技術,開發周期短,可靠性高;
2)在外形上,率先采用了人形機器人與移動平臺的分開的分離式結構,既保證了機器人能夠完成一些復雜的動作也克服了人形機器人機動性不足的缺點,使交通機器人能自如地穿梭于復雜的交通環境中;
3)將Zynq平臺應用于交通機器人即智能車輛技術中,形成一種全新的車道線識別技術,對該移動平臺分別在天氣晴朗和陰雨的環境中進行驗證,均可到達既定目的地,故其具備識別效率高和可靠性強的特點。
當然,本系統僅僅為交通類機器人的設計提供一種新思路,交通機器人能夠完全和交通警察一樣自由移動并靈活做出反應,還需要對機器人的系統性和穩定性進一步研究,相信隨著后續研究工作的開展,系統會更具有科學性和實用性。