劉國超,李少春,吳 陽
(無錫太湖學院 智能裝備工程學院,江蘇 無錫 214064)
新工科建設是主動應對新一輪科技革命與產業變革的戰略行動,它的主要內容為新技術、新業態、新產業、新模式。機器人與人工智能專業在新工科建設中備受關注。智能機器人的研究包括但不限于機器人,還包括圖像識別、深度學習、運動控制、語音交互等。智能機器人不是一項技術,而是下一次的產業革命[1]。
隨著信息技術加速發展,社會需求飛速變革,導航定位硬件及算法、運動智能算法、深度學習算法等的突破,帶動了運動規劃、圖像識別、語音識別等技術的不斷進步,智能機器人不但在工業界得到延伸,也深入服務領域。“機器人”的核心概念和功能是代替人從事一些人類無法完成或是“不愿意”做的事情的自動化機構。人是一個高度復雜的智能體,如果機器人要取代人完成一些工作,則機器人必然也是一個高度復雜的智能體。
機器人工程專業是跨學科的綜合性專業,其最終目的是要培養能夠獨立進行機器人研發、算法優化的綜合性人才[2]。大學的本科教育是培養人才的關鍵,而相關教育平臺、硬件的選擇也至關重要。移動機器人學包含了許多工程和學科的知識,包括但不限于機械、電氣、電子工程、計算機,甚至認知和社會科學,因此一款性能良好、配置全面的移動機器人是非常契合機器人工程專業教學要求的平臺和工具。
同時,教學型機器人平臺也是繼工業機器人蓬勃發展以來,下一個最惹人注目和具有極高發展前景和充滿商機的領域。因此重視移動機器人相關知識的教授和學生能力的培養,將有助于學生緊跟時代節奏,順利完成就業。機器人開發難度大,從業門檻高,沒有開發標準等因素嚴重阻礙了機器人行業的發展。因此,當前急需一個標準的開發方法,一個高效統一的軟件架構,一套輔助開發的工具來幫助廣大的機器人開發者發揮自己的才智,構建機器人工程的“高樓大廈”。智能機器人是人類科技進步和產業發展的必然趨勢,未來的智能機器人將遠遠超出人們目前的想象。
機器人操作系統(Robot Operating System,ROS),是一個基于Linux的軟件框架,這個框架把原本松散的零部件耦合在了一起,為他們提供了通信架構[3-4]。ROS本質上是一個中間件,它為基于ROS的應用程序之間建立起溝通的橋梁,所以也是運行在基操作系統上的環境,在這個環境上,機器人的感知、決策、控制算法可以更好地組織和運行。
如圖1所示,執行機構通常包含運動底盤,機械手臂,機械手抓等機械或電氣執行單元。感知系統一般由視覺、語音、激光、IMU等傳感器組成。機器人大腦主要由環境信息處理以及機器人行為決策控制等一系列算法模塊組成。常見機器人功能有:環境建模與定位,自然交互,運動控制與規劃,計算機視覺等組成。操作系統提供算法單元之間的連接,算法與執行機構之間的連接,相當于人類的中樞神經“小腦”。ROS在機器人開發中扮演的角色就是“小腦”。

圖1 ROS在智能機器人開發中的角色
當前機器人行業特別是智能機器人行業存在的問題就是缺乏統一的標準,沒有統一的硬件架構,沒有統一的軟件架構,沒有統一的操作系統甚至沒有統一的開發語言。這嚴重阻礙了技術的流通和人才的流通。導致一個機器人功能的開發和維護只能由機器人本身的生產廠商來做。幾乎無可能像手機一樣可以由大量的第三方開發人員來開發大量優質的能夠適用于大部分機器人的應用。ROS的誕生正是為了解決這一問題,為機器人開發提供統一的“標準”。
以自動化工程中機器人綜合智能應用為背景,采用移動機器人作為手段和對象,按復雜工程應用需求進行設計,參考指定場景和具體設計要求,基于機器人操作系統ROS完成具有明確的系統與作業性能要求的智能機器人系統設計過程,包括分工設計、編程開發及集成應用實現、測試、評估及報告。設計過程和內容使學生能夠綜合運用所學到的專業基礎和專業方向核心課程知識和技能,設計和開發具體項目,在智能機器人方向得到專業設計能力的綜合性訓練。要求完成強化資料閱讀,通過綜合設計中團隊合作分工、交流、設計、制作編程、測試評估及各階段的頭書面報告,得到完整的專業化工程設計及解決實際問題能力的培養,為畢業設計獨立完成研究開發工作打下堅實的基礎。
ROS是“新工科”的最佳實踐“機器人開發”。與老工科相比,更強調學科的實用性、交叉性與綜合性。而機器人的特點是跨學科、綜合性、工程性,是人工智能最具有挑戰性的實踐平臺。ROS與“新工科”教育機器人方面。ROS真正融合了很多人工智能的技術,包括深度學習、導航、SLAM、決策、人機交互等。
課程培養學生的能力,具體包括以下幾方面能力的培養:
(1)了解智能機器人相關技術點,了解智能機器人組成架構。
(2)綜合性的專業基礎知識和技能應用能力的培養,包括計算機硬件、軟件、機器人運動控制、機器入動態控制/智能感知與決策算法、通信及人機交互技術。
(3)具體掌握基于機器人操作系統ROS的移動機器人開發方法。
(4)培養學生學習標準化設計、測試文檔及技術報告編寫能力。
(5)培養學生智能機器人綜合應用能力。
以智能機器人綜合智能應用為背景,采用移動機器人以及多關節手臂作為手段和對象,按復雜工程應用需求進行設計,參考指定場景和具體設計要求,基于機器人操作系統ROS完成具有明確的系統與作業性能要求的智能機器人系統設計過程,包括分工設計、編程開發及集成應用實現、測試、評估及報告。課程具有以下特色。
3.2.1 主流開發框架
開發架構采用當前行業主流開發框架,實用性較強。底層驅動開發:STM32嵌入式開發;操作系統層以及開發工具:ROS+rviz+gazebo輔助應用開發庫、科大訊飛語音、百度AI、OpenCV、AI框架。
3.2.2 涉及知識廣泛
如圖2所示,展示了課程涉及的相關知識。

圖2 涉及的相關知識
整體課程分為3個階段。
第一階段:機器人軟件系統構建以及硬件系統構建;
第二階段:機器人基礎功能開發;
第三階段:機器人開發與綜合系統設計。
第一階段以操作系統認知及ROS系統認知為主,并認識一個ROS工程。第二階段包括基礎功能開發,從C++編寫一個node,到話題服務通信機制,再到參數服務器、tf構建、運動學解算等。第三個階段主要是機器人開發與綜合系統設計,包括navigation自主導航實驗、多點導航實驗、機械臂抓取服務開發、AR碼識別追蹤、語音交互等,并完成幾個綜合涉及,如自主充電開發實驗、物料識別與抓取實驗、定點抓取應用實驗等。
其中主要內容是以下兩部分:激光雷達SLAM,即同步定位與地圖構建。激光SLAM,是目前最穩定、最主流的定位導航方法。涉及知識點包括STM32模塊、激光雷達、IMU模塊、超聲波模塊等硬件模塊的功能及原理以及整個ROS操作系統。
移動智能抓取:移動智能抓取系統主要由智能移動平臺系統和智能視覺抓取系統二部分組成,形成集感知、思維、知行統一為一體的智能系統。取智能車和機械臂的優勢進行組合,相較于常規的移動機器人或固定工位的機械臂而言,有著更靈活、更廣泛的應用,在實際生產車間、倉庫或是餐廳、家庭都具有實際的應用需求,而這也在一定程度上助漲了關于移動智能抓取機器人的研究熱情。該DEMO在激光雷達SLAM的基礎上,增加了圖像識別,機械臂運動控制等知識點,可作為是本科階段的進階課程應用。
從機器人工程專業人才培養目標來講,相對于傳統的自動化專業,機器人工程專業更強調由機器自動化向人工智能的進化,這就突出了軟件及算法的學習和開發在專業課程中的重要性,而ROS因為其開源性、通用性、復用性和社區性的特點,成為被最為廣泛接受的學習和開發平臺。以智能機器人綜合智能應用為背景,采用移動機器人以及多關節手臂作為手段和對象,按復雜工程應用需求進行設計,為畢業設計獨立完成研究開發工作打下扎實的基礎。