摘 要: 提出了一種基于CAN總線的智能機器人" title="智能機器人">智能機器人控制系統" title="控制系統">控制系統" title="分布式控制系統" title="分布式控制系統">分布式控制系統">分布式控制系統體系結構,闡述了系統的電路組成和功能實現原理,具體分析了系統的容錯控制與魯棒性" title="魯棒性">魯棒性。該系統可采用多種傳感器實施組合導航,并可通過語音系統和無線網絡通信實現人機交互。實踐表明,該控制系統具有較高的實用價值和較好的開放性、實時性和可靠性。
關鍵詞: 智能機器人 分布式控制系統 雙目視覺 語音識別
現代智能機器人大多結構復雜,控制對象及功能較多,集中控制和主從控制方式已不能滿足機器人對控制系統實時性、開放性、魯棒性等方面的要求。比較理想的控制系統解決方案是采用分布式控制系統DCS(Distributed Control System),將控制功能在下位機" title="下位機">下位機分散,每個下位機完成一項特定功能,各下位機便可實現并行工作,這將大大提高整個系統的處理能力和處理速度。DCS的核心思想是集中管理、分散控制[1],即管理與控制分離,上位機用于集中監控和系統管理,下位機分散到現場實現分布式控制,各上下位機之間通過控制網絡互連實現信息傳輸。顯然,采用DCS方案有如下明顯優點:實現集中監控和管理,管理與現場分離,管理更綜合化和系統化;實現分散控制,可使各功能模塊的設計、裝配、調試、維護獨立,系統控制的危險性分散,可靠性提高,投資減?。徊捎镁W絡通信技術,可根據需要增加以微處理器為核心的功能模塊,具有良好的系統開放性、擴展性和升級特性。
CAN(Controller Area Network)總線[2]作為連接各上下位機之間的通信網絡,非常適用于分布式控制系統,因為它具有以下突出特性:CAN控制器工作于多主方式,網絡中的各節點都可根據總線訪問優先權向總線發送數據,通信方式靈活;CAN節點在錯誤嚴重的情況下具有自動關閉輸出功能,以使總線上其他節點的操作不受影響,因而具有突出的可靠性;CAN總線的通信協議可由CAN控制器芯片及其接口芯片來實現,從而大大降低了系統開發難度,縮短了開發周期;CAN總線結構簡單,只有兩根信號線,掛接在總線上的設備可方便地增減,因而具有優良的可擴展性;此外,CAN總線還有傳輸速率高、實時性強、開放性好、成本低等特點。
1 系統功能設計
本文討論的機器人屬自主式移動機器人,具有多種環境感知功能和控制功能,可廣泛應用于教學機器人、娛樂機器人、服務機器人等領域,通過對控制系統的定制和擴展,很容易實現某些特種機器人的功能。為此,要求該機器人的控制系統必須具有較好的實時性、協調性、可靠性、可擴展性、開放性和魯棒性等特性。該分布式控制系統具有以下功能特性:
·輪式移動平臺,動作敏捷迅速,可靠性高,控制特性好。
·語音交互功能。具有語音識別與合成功能,可進行人機語音交互,包括執行用語音下達的命令、人機語音對話聊天、媒體(視頻、音頻)語音點播、語音信息查詢、文本語音播放等。
·無線網絡遠程監控功能??赏ㄟ^遠程計算機終端和無線網絡對機器人下達命令,實施控制;也可將機器人的狀態信息(如當前任務、位置、速度等),甚至是采集到的實時視頻圖像顯示在遠程監控計算機終端上。
·多傳感器組合導航功能。具有雙目視覺及圖像處理功能,可實現視覺導航及目標的定位、跟蹤和識別;可綜合利用視覺、激光、紅外、光敏等多種傳感器信息,實現距離檢測、障礙物檢測、懸崖檢測、光源檢測等環境感知功能,從而實現軌跡跟蹤、避障、避碰、避懸崖等導航功能。
·突出的魯棒性。具有故障診斷與處理、關鍵部件雙冗余設計、多傳感器信息融合導航與檢測等功能,可實現系統功能模塊故障的診斷、排除或替換;可檢測和分配電量,增強生命力。
2 系統體系結構
基于CAN總線的分布式控制系統的上位機由主控計算機及語音和圖像處理單元構成,下位機則是由以0至7號節點控制器為核心的功能模塊所組成。控制系統硬件結構如圖1所示。
系統在縱向結構上可分為四層。決策層:主要實現以下功能:(1)通過無線網絡和語音處理系統(語音識別與合成)兩種方式實現人機交互;(2)實現雙目視覺圖像采集與處理;(3)對整個系統實施管理監控,并對控制層及功能層的事件做出響應。控制層:檢測各節點的工作情況,登記各節點的狀態,對發生故障的節點進行處理,對系統電源進行合理的分配和調度。功能層:由一個個基于MCU的節點控制器及相關電路組成的功能模塊所構成,實現機器人的基本行為和感知控制。執行層:由環境感知傳感器和執行器組成,完成數據采集和行為動作執行。
主控計算機是分布式控制系統的上位機,由一臺高性能PC機承擔,主要用于人機交互、系統管理、控制決策、任務調度、運動規劃、圖像識別與視覺導航等。環境感知部分由雙目視覺攝像機、激光傳感器、超聲傳感器、紅外傳感器、光敏傳感器、觸覺傳感器等傳感器組成,其中,雙目視覺傳感器可實現視覺導航、目標定位與跟蹤、人臉識別等功能。輪式移動平臺采用三組正交輪驅動,具有三個自由度,可實現仿人靈活移動,由移動平臺伺服控制器、PWM放大器、驅動電機和增量式光電碼盤構成速度閉環控制。無線網絡采用802.11b通訊協議,可實現主控計算機與遠程監控計算機的互連,一方面通過遠程計算機終端對機器人下達命令,實施控制;另一方面,也可將機器人的狀態信息(如當前任務、位置、速度等)及實時視頻圖像顯示在遠程監控計算機終端上??刂葡到y功能圖如圖2所示。
3 系統容錯控制與魯棒性分析
作為一款自主式智能機器人,其控制系統必須具有較好的魯棒性和容錯性。本文從控制系統的硬件體系結構、人機交互方式、多傳感器信息融合、系統通信架構及軟件設計等方面,提出了一套綜合解決方案,較好地滿足了系統的魯棒性需求。
3.1 故障診斷與處理控制器
在典型分布式控制系統的基礎上,增設了一個故障診斷與處理控制器模塊(圖1中的節點0),負責系統功能層節點故障的診斷處理和電源電量的檢測與分配。該控制器結構如圖3所示。
由于系統中較繁重的任務集中在控制層和功能層,因此提高其容錯性,將大大提高整個系統的可靠性[3]。節點控制器發生的故障類型可分為臨時性故障和永久性故障兩種。臨時性故障指由于軟件中存在BUG,導致控制器“死機”或由于某種信號干擾,致使程序“跳飛”等故障。永久性故障指由于元器件發生燒毀、功能失效或電路發生短路、斷路等原因所產生的故障。一般而言,臨時性故障可通過系統復位重新啟動進行修復,而一旦發生永久性故障,則應替換備用單元或將其關閉。
故障診斷與處理模塊采用對功能層控制器進行定期巡檢的方式監控其工作。該控制器以固定時間間隔(1秒~10秒之間)向功能層廣播連接請求,若各節點控制器工作正常,則回應請求,并將它們的最新狀態信息發送給控制層,控制層便刷新節點狀態信息存儲器中這些控制器的狀態信息記錄。若在規定時間內沒有收到某節點控制器的回應,則認為該控制器發生故障。此時,控制層對其實施復位操作,若復位后該機恢復正常工作,說明發生的是臨時性故障,控制層只需將節點狀態信息存儲器中相應狀態信息記錄發送給該節點控制器,它便能恢復到故障前的工作狀態。若復位后也不能恢復正常工作,則說明發生了永久性故障,此時應啟動備用單元,或關閉故障單元,切斷其電源,并將其編號對外廣播注銷。
3.2 雙冗余設計
容錯技術的核心是冗余技術,對關鍵部件采用備份冗余,可提高系統的安全性、可靠性和魯棒性。當設有備份控制器的關鍵單元發生永久性故障時,故障診斷與處理控制器便執行以下操作:(1)控制備用單元和故障單元
進行熱切換;(2)控制現場傳感器和執行器的切換;(3)將故障單元最后的狀態信息記錄寫入到備用單元。
3.3 多傳感器信息融合
導航技術是移動智能機器人的核心技術之一。由圖1和圖2可見,為提高導航系統的魯棒性,本設計采用了集雙目視覺導航、坐標導航、超聲波導航、激光導航、地圖匹配導航等多種導航方式于一體的組合導航[4]方法,以滿足機器人對越來越高的導航性能及復雜環境條件下導航技術的要求。因為單個傳感器在環境描述方面存在以下問題:(1)只能獲得環境特征的部分信息,無法對操作環境做出全面準確的描述;(2)缺乏魯棒性,偶然故障將導致系統無法正常工作;(3)數據的可信度不高。多傳感器信息融合是指傳感器系統對來自多種傳感器的信息進行綜合統一,以產生更可靠、更準確的信息。該項技術的出現是為了解決單個傳感器系統所面臨的問題。和單個傳感器系統相比,多傳感器融合系統具有以下優點:(1)可得到更全面、更準確的信息;(2)可提高系統的可靠性和魯棒性;(3)可得到描述同一環境特征的多個
冗余信息,可描述不同的環境特征;(4)可實現并行數據采集和處理,提高導航系統綜合性能;(5)可增強數據可信度。
對多種傳感器所提供的冗余或互補信息進行融合,可獲得更加全面、準確、可靠地反映環境特征的信息,為導航提供快速而準確的決策依據。本系統的多傳感器信息融合如圖4所示。
除上述設計外,系統的魯棒性還體現在以下幾個方面:(1)采用了CAN總線。由于CAN總線除具有在CAN節點嚴重錯誤的情況下能自動關閉輸出,使總線上其他節點的操作不受影響的特點外,還采用非破壞性總線仲裁制度,即使在網絡負載很重的情況下也不會出現癱瘓現象,并采用短幀結構,有CRC及其他校驗措施,數據出錯率極低,因而具有突出的可靠性;(2)人機交互采用了語音交互和利用遠程監控計算機及無線網絡進行遠程監控兩套方案,確保了人對機器人操控指令的可靠下達;(3)軟件的可靠性設計等其他措施。
本文提出了一種基于CAN總線的智能機器人分布式控制系統體系結構,闡述了系統的電路組成和功能實現方法,深入分析了系統的容錯控制和魯棒性。根據這套方案設計并實現了娛樂機器人,實踐證明,該方案設計科學合理、切實可行,系統具有較好的實時性、開放性和魯棒性。
參考文獻
1 王常力,羅 安.分布式控制系統(DCS)設計與應用實例[M].北京:電子工業出版社,2004
2 呂當俠. CAN總線的特點及應用[J].航空與航天, 2005;(3):16~20
3 朱 蘭,朱玉文.多CPU探測機器人分布式體系結構研究[J].裝甲兵工程學院學報,2005;19(3):61~64
4 沈 猛,徐德民,李俊等.輪式移動機器人組合導航方法及試驗研究[J].計算機仿真,2005;22(7):85~87
5 Microsoft. Microsoft speech SDK 5.1 documentation. http://download.microsoft.com/download/SpeechSDK/SDK/5.1/WXP/EN-US/sapi.chm.
6 Verissimo P. Distributed computer-controlled systems: The DEAR-COTS approach[J].IFAC,2000
7 韓大鵬,韋 慶.機器人控制器的一種模塊化設計方法[J].微計算機信息,2005;21(5):3~4




