劉國超,李少春,吳 陽
(無錫太湖學(xué)院 智能裝備工程學(xué)院,江蘇 無錫 214064)
新工科建設(shè)是主動應(yīng)對新一輪科技革命與產(chǎn)業(yè)變革的戰(zhàn)略行動,它的主要內(nèi)容為新技術(shù)、新業(yè)態(tài)、新產(chǎn)業(yè)、新模式。機(jī)器人與人工智能專業(yè)在新工科建設(shè)中備受關(guān)注。智能機(jī)器人的研究包括但不限于機(jī)器人,還包括圖像識別、深度學(xué)習(xí)、運(yùn)動控制、語音交互等。智能機(jī)器人不是一項(xiàng)技術(shù),而是下一次的產(chǎn)業(yè)革命[1]。
隨著信息技術(shù)加速發(fā)展,社會需求飛速變革,導(dǎo)航定位硬件及算法、運(yùn)動智能算法、深度學(xué)習(xí)算法等的突破,帶動了運(yùn)動規(guī)劃、圖像識別、語音識別等技術(shù)的不斷進(jìn)步,智能機(jī)器人不但在工業(yè)界得到延伸,也深入服務(wù)領(lǐng)域?!皺C(jī)器人”的核心概念和功能是代替人從事一些人類無法完成或是“不愿意”做的事情的自動化機(jī)構(gòu)。人是一個高度復(fù)雜的智能體,如果機(jī)器人要取代人完成一些工作,則機(jī)器人必然也是一個高度復(fù)雜的智能體。
機(jī)器人工程專業(yè)是跨學(xué)科的綜合性專業(yè),其最終目的是要培養(yǎng)能夠獨(dú)立進(jìn)行機(jī)器人研發(fā)、算法優(yōu)化的綜合性人才[2]。大學(xué)的本科教育是培養(yǎng)人才的關(guān)鍵,而相關(guān)教育平臺、硬件的選擇也至關(guān)重要。移動機(jī)器人學(xué)包含了許多工程和學(xué)科的知識,包括但不限于機(jī)械、電氣、電子工程、計算機(jī),甚至認(rèn)知和社會科學(xué),因此一款性能良好、配置全面的移動機(jī)器人是非常契合機(jī)器人工程專業(yè)教學(xué)要求的平臺和工具。
同時,教學(xué)型機(jī)器人平臺也是繼工業(yè)機(jī)器人蓬勃發(fā)展以來,下一個最惹人注目和具有極高發(fā)展前景和充滿商機(jī)的領(lǐng)域。因此重視移動機(jī)器人相關(guān)知識的教授和學(xué)生能力的培養(yǎng),將有助于學(xué)生緊跟時代節(jié)奏,順利完成就業(yè)。機(jī)器人開發(fā)難度大,從業(yè)門檻高,沒有開發(fā)標(biāo)準(zhǔn)等因素嚴(yán)重阻礙了機(jī)器人行業(yè)的發(fā)展。因此,當(dāng)前急需一個標(biāo)準(zhǔn)的開發(fā)方法,一個高效統(tǒng)一的軟件架構(gòu),一套輔助開發(fā)的工具來幫助廣大的機(jī)器人開發(fā)者發(fā)揮自己的才智,構(gòu)建機(jī)器人工程的“高樓大廈”。智能機(jī)器人是人類科技進(jìn)步和產(chǎn)業(yè)發(fā)展的必然趨勢,未來的智能機(jī)器人將遠(yuǎn)遠(yuǎn)超出人們目前的想象。
機(jī)器人操作系統(tǒng)(Robot Operating System,ROS),是一個基于Linux的軟件框架,這個框架把原本松散的零部件耦合在了一起,為他們提供了通信架構(gòu)[3-4]。ROS本質(zhì)上是一個中間件,它為基于ROS的應(yīng)用程序之間建立起溝通的橋梁,所以也是運(yùn)行在基操作系統(tǒng)上的環(huán)境,在這個環(huán)境上,機(jī)器人的感知、決策、控制算法可以更好地組織和運(yùn)行。
如圖1所示,執(zhí)行機(jī)構(gòu)通常包含運(yùn)動底盤,機(jī)械手臂,機(jī)械手抓等機(jī)械或電氣執(zhí)行單元。感知系統(tǒng)一般由視覺、語音、激光、IMU等傳感器組成。機(jī)器人大腦主要由環(huán)境信息處理以及機(jī)器人行為決策控制等一系列算法模塊組成。常見機(jī)器人功能有:環(huán)境建模與定位,自然交互,運(yùn)動控制與規(guī)劃,計算機(jī)視覺等組成。操作系統(tǒng)提供算法單元之間的連接,算法與執(zhí)行機(jī)構(gòu)之間的連接,相當(dāng)于人類的中樞神經(jīng)“小腦”。ROS在機(jī)器人開發(fā)中扮演的角色就是“小腦”。
圖1 ROS在智能機(jī)器人開發(fā)中的角色
當(dāng)前機(jī)器人行業(yè)特別是智能機(jī)器人行業(yè)存在的問題就是缺乏統(tǒng)一的標(biāo)準(zhǔn),沒有統(tǒng)一的硬件架構(gòu),沒有統(tǒng)一的軟件架構(gòu),沒有統(tǒng)一的操作系統(tǒng)甚至沒有統(tǒng)一的開發(fā)語言。這嚴(yán)重阻礙了技術(shù)的流通和人才的流通。導(dǎo)致一個機(jī)器人功能的開發(fā)和維護(hù)只能由機(jī)器人本身的生產(chǎn)廠商來做。幾乎無可能像手機(jī)一樣可以由大量的第三方開發(fā)人員來開發(fā)大量優(yōu)質(zhì)的能夠適用于大部分機(jī)器人的應(yīng)用。ROS的誕生正是為了解決這一問題,為機(jī)器人開發(fā)提供統(tǒng)一的“標(biāo)準(zhǔn)”。
以自動化工程中機(jī)器人綜合智能應(yīng)用為背景,采用移動機(jī)器人作為手段和對象,按復(fù)雜工程應(yīng)用需求進(jìn)行設(shè)計,參考指定場景和具體設(shè)計要求,基于機(jī)器人操作系統(tǒng)ROS完成具有明確的系統(tǒng)與作業(yè)性能要求的智能機(jī)器人系統(tǒng)設(shè)計過程,包括分工設(shè)計、編程開發(fā)及集成應(yīng)用實(shí)現(xiàn)、測試、評估及報告。設(shè)計過程和內(nèi)容使學(xué)生能夠綜合運(yùn)用所學(xué)到的專業(yè)基礎(chǔ)和專業(yè)方向核心課程知識和技能,設(shè)計和開發(fā)具體項(xiàng)目,在智能機(jī)器人方向得到專業(yè)設(shè)計能力的綜合性訓(xùn)練。要求完成強(qiáng)化資料閱讀,通過綜合設(shè)計中團(tuán)隊(duì)合作分工、交流、設(shè)計、制作編程、測試評估及各階段的頭書面報告,得到完整的專業(yè)化工程設(shè)計及解決實(shí)際問題能力的培養(yǎng),為畢業(yè)設(shè)計獨(dú)立完成研究開發(fā)工作打下堅(jiān)實(shí)的基礎(chǔ)。
ROS是“新工科”的最佳實(shí)踐“機(jī)器人開發(fā)”。與老工科相比,更強(qiáng)調(diào)學(xué)科的實(shí)用性、交叉性與綜合性。而機(jī)器人的特點(diǎn)是跨學(xué)科、綜合性、工程性,是人工智能最具有挑戰(zhàn)性的實(shí)踐平臺。ROS與“新工科”教育機(jī)器人方面。ROS真正融合了很多人工智能的技術(shù),包括深度學(xué)習(xí)、導(dǎo)航、SLAM、決策、人機(jī)交互等。
課程培養(yǎng)學(xué)生的能力,具體包括以下幾方面能力的培養(yǎng):
(1)了解智能機(jī)器人相關(guān)技術(shù)點(diǎn),了解智能機(jī)器人組成架構(gòu)。
(2)綜合性的專業(yè)基礎(chǔ)知識和技能應(yīng)用能力的培養(yǎng),包括計算機(jī)硬件、軟件、機(jī)器人運(yùn)動控制、機(jī)器入動態(tài)控制/智能感知與決策算法、通信及人機(jī)交互技術(shù)。
(3)具體掌握基于機(jī)器人操作系統(tǒng)ROS的移動機(jī)器人開發(fā)方法。
(4)培養(yǎng)學(xué)生學(xué)習(xí)標(biāo)準(zhǔn)化設(shè)計、測試文檔及技術(shù)報告編寫能力。
(5)培養(yǎng)學(xué)生智能機(jī)器人綜合應(yīng)用能力。
以智能機(jī)器人綜合智能應(yīng)用為背景,采用移動機(jī)器人以及多關(guān)節(jié)手臂作為手段和對象,按復(fù)雜工程應(yīng)用需求進(jìn)行設(shè)計,參考指定場景和具體設(shè)計要求,基于機(jī)器人操作系統(tǒng)ROS完成具有明確的系統(tǒng)與作業(yè)性能要求的智能機(jī)器人系統(tǒng)設(shè)計過程,包括分工設(shè)計、編程開發(fā)及集成應(yīng)用實(shí)現(xiàn)、測試、評估及報告。課程具有以下特色。
3.2.1 主流開發(fā)框架
開發(fā)架構(gòu)采用當(dāng)前行業(yè)主流開發(fā)框架,實(shí)用性較強(qiáng)。底層驅(qū)動開發(fā):STM32嵌入式開發(fā);操作系統(tǒng)層以及開發(fā)工具:ROS+rviz+gazebo輔助應(yīng)用開發(fā)庫、科大訊飛語音、百度AI、OpenCV、AI框架。
3.2.2 涉及知識廣泛
如圖2所示,展示了課程涉及的相關(guān)知識。
圖2 涉及的相關(guān)知識
整體課程分為3個階段。
第一階段:機(jī)器人軟件系統(tǒng)構(gòu)建以及硬件系統(tǒng)構(gòu)建;
第二階段:機(jī)器人基礎(chǔ)功能開發(fā);
第三階段:機(jī)器人開發(fā)與綜合系統(tǒng)設(shè)計。
第一階段以操作系統(tǒng)認(rèn)知及ROS系統(tǒng)認(rèn)知為主,并認(rèn)識一個ROS工程。第二階段包括基礎(chǔ)功能開發(fā),從C++編寫一個node,到話題服務(wù)通信機(jī)制,再到參數(shù)服務(wù)器、tf構(gòu)建、運(yùn)動學(xué)解算等。第三個階段主要是機(jī)器人開發(fā)與綜合系統(tǒng)設(shè)計,包括navigation自主導(dǎo)航實(shí)驗(yàn)、多點(diǎn)導(dǎo)航實(shí)驗(yàn)、機(jī)械臂抓取服務(wù)開發(fā)、AR碼識別追蹤、語音交互等,并完成幾個綜合涉及,如自主充電開發(fā)實(shí)驗(yàn)、物料識別與抓取實(shí)驗(yàn)、定點(diǎn)抓取應(yīng)用實(shí)驗(yàn)等。
其中主要內(nèi)容是以下兩部分:激光雷達(dá)SLAM,即同步定位與地圖構(gòu)建。激光SLAM,是目前最穩(wěn)定、最主流的定位導(dǎo)航方法。涉及知識點(diǎn)包括STM32模塊、激光雷達(dá)、IMU模塊、超聲波模塊等硬件模塊的功能及原理以及整個ROS操作系統(tǒng)。
移動智能抓取:移動智能抓取系統(tǒng)主要由智能移動平臺系統(tǒng)和智能視覺抓取系統(tǒng)二部分組成,形成集感知、思維、知行統(tǒng)一為一體的智能系統(tǒng)。取智能車和機(jī)械臂的優(yōu)勢進(jìn)行組合,相較于常規(guī)的移動機(jī)器人或固定工位的機(jī)械臂而言,有著更靈活、更廣泛的應(yīng)用,在實(shí)際生產(chǎn)車間、倉庫或是餐廳、家庭都具有實(shí)際的應(yīng)用需求,而這也在一定程度上助漲了關(guān)于移動智能抓取機(jī)器人的研究熱情。該DEMO在激光雷達(dá)SLAM的基礎(chǔ)上,增加了圖像識別,機(jī)械臂運(yùn)動控制等知識點(diǎn),可作為是本科階段的進(jìn)階課程應(yīng)用。
從機(jī)器人工程專業(yè)人才培養(yǎng)目標(biāo)來講,相對于傳統(tǒng)的自動化專業(yè),機(jī)器人工程專業(yè)更強(qiáng)調(diào)由機(jī)器自動化向人工智能的進(jìn)化,這就突出了軟件及算法的學(xué)習(xí)和開發(fā)在專業(yè)課程中的重要性,而ROS因?yàn)槠溟_源性、通用性、復(fù)用性和社區(qū)性的特點(diǎn),成為被最為廣泛接受的學(xué)習(xí)和開發(fā)平臺。以智能機(jī)器人綜合智能應(yīng)用為背景,采用移動機(jī)器人以及多關(guān)節(jié)手臂作為手段和對象,按復(fù)雜工程應(yīng)用需求進(jìn)行設(shè)計,為畢業(yè)設(shè)計獨(dú)立完成研究開發(fā)工作打下扎實(shí)的基礎(chǔ)。