畢 盛, 董 敏, 冼 進, 張 齊, 梅登華
(華南理工大學 計算機科學與工程學院,廣州 510006)
結合機器人技術的嵌入式實踐教學
畢 盛, 董 敏, 冼 進, 張 齊, 梅登華
(華南理工大學 計算機科學與工程學院,廣州 510006)

嵌入式系統是計算機學科中十分重要的一門課程,如何提高嵌入式系統課程的教學質量因此也顯得的十分關鍵。機器人技術是當今研究熱點,容易激發學生的學習興趣。通過把機器人技術引入到嵌入式系統實踐教學中,從基礎實踐、綜合實踐和創新實踐3個方面,建立結合機器人技術的嵌入式實踐教學內容和實施方案,有助于提高學生學習嵌入式系統課程的興趣和質量。
嵌入式系統; 機器人技術實驗平臺; 實踐教學研究
嵌入式系統應用十分廣泛,各種各樣的智能終端核心平臺都是基于嵌入式系統來實現的,如手機、機器人等。因此,為了適應社會和行業的廣泛需求,全國各高校紛紛開設嵌入式系統課程,嵌入式系統課程一時成為各高校最受歡迎和最熱門的課程之一[1-4]。但在施教過程中,很多尤其計算機學科方向的學生對此課程興趣不大, 主要是不了解這門課程真正用處在哪里[5-7]。雖然也嘗試通過實踐教學以及和企業合作來提高學生對課程的興趣[8],在教學效果有一定的提高,但越來越多的新生代學生需要以興趣為導向,即通過實現一個有意義的嵌入式實體項目開發過程來吸引他們興趣,從而有助于學生掌握嵌入式系統課程關鍵內容。
機器人技術一直是吸引人們眼球的熱點,嵌入式技術是機器人技術的核心實現平臺[9],如機器人的控制、傳感器數據處理及規劃都是在嵌入式平臺上來完成的。本文旨在通過機器人技術作為嵌入式系統課程的實驗平臺、課程設計平臺和創新平臺,有助于提高學生學習嵌入式系統的熱情。
機器人技術涉及計算機、電子和機械等多個學科,由于其常需要具有移動功能,故對體積和功耗有一定的要求;而嵌入式系統是軟硬件可裁剪,以應用為中心,對功能、可靠性、成本、體積、功耗等嚴格要求的專用計算機系統[10]。因此,嵌入式平臺是機器人實現各種功能的主要平臺,兩者密切聯系。所以開發機器人技術過程中需要大量掌握嵌入式技術的工程師,同理在機器人開發過程中需培養大批嵌入式技術人才。因此,通過把機器人開發過程引入到嵌入式課程體系中,提高嵌入式系統學習過程的針對性,以機器人內容為導向提高學生學習的興趣,同時也在此過程中培養出機器人開發人才。針對這種思路德國學者托馬斯·布勞恩[11]把嵌入式和機器人結合起來出版著作。但該著作主要面向個人并沒有建立出相應的實踐教學體系。
針對建立嵌入式機器人教學體系問題,由于機器人技術和嵌入式所涉及的技術領域很廣,故需要根據嵌入式系統教學的特點,選取出合適的機器人技術內容作為結合點建立出相應的實踐教學體系。相對于嵌入式操作系統,傳統的嵌入式系統課程需要學生掌握各種常用的嵌入式芯片核心模塊、接口和裸機程序開發等知識點[12-14]。因此,本文以一個機器人小車作為載體,為適合教學要求設計小車具有以下功能模塊(見圖1)。

圖1 機器人小車功能模塊圖
圖中,“電動機控制”可控制小車輪速;“電動機速度檢測”可通過讀取電動機上安裝的碼盤獲得當前電動機速度;“電池電量檢測”可通過讀取電池電壓值獲得;“WiFi串口通信”通過串行接口實現WiFi通信;“小車方向檢測”通過讀取I2C總線接口的6軸姿態傳感器數據獲得;“LCD顯示”通過并行接口實現對TFT LCD顯示器控制;“指示燈”通過LED燈表示小車狀態;“按鈕啟動接口”通過實現對按鈕狀態的讀取來啟動或停止小車。而作為以裸機開發為主的嵌入式學習要點主要包括:嵌入式芯片架構及核心模塊,嵌入式軟件編程,通用輸入輸出接口,外部中斷,定時器/計數器,串行通信,模擬數字(ADC)接口,I2C總線等。其中機器人小車各模塊與嵌入式各接口模塊對應關系如圖2所示。
圖2 機器人小車模塊與嵌入式系統知識點關系圖
根據機器人小車模塊與嵌入式系統課程學習知識點的關系,從嵌入式系統實踐教學的基礎性,綜合性,實踐性和創新性[15]出發,建立基礎層、綜合層和創新層多層實踐教學體系。在實踐教學過程中,通過圍繞機器人小車開展教學內容,有助于學生對嵌入式系統應用的認識并提高學習熱情。在實踐教學過程中這3個教學層次由淺入深,不同的實踐教學層次對應不同的實驗項目,而且組織形式也不同。基礎性實踐教學主要目的在于熟悉方法。而綜合性和創新性實踐教學則多是以機器人小車綜合應用為主,在于提高綜合設計開發能力。這3個層次的教學循序漸進,逐步提高,為進一步的實踐開發和畢業設計打下了良好的基礎。
2.1基礎實踐教學內容
把嵌入式系統所要掌握的各知識點和機器人小車各模塊結合起來,建立出一整套基礎實驗內容,主要在嵌入式系統課程教學當中完成,根據大部分學校在嵌入式課程實踐教學學時安排,基礎實踐教學可控制在16學時左右,主要以驗證或操作性實驗為主,加深對理論知識的理解,以及對機器人小車原理和功能實現知識點學習。要求學生根據實驗指導書或實驗講義,并通過查閱參考資料完成整個實驗內容。
基礎教學實踐內容如表1所示。其中,在實驗3和實驗4分別利用脈沖寬度和脈沖數法在定時器產生時間內計算出輪速。有些單片機本身內部集成了碼盤測量模塊,可以利用集成模塊得到的數據和實驗3和4的數據做對比,從而做到舉一反三。
2.2綜合實踐教學內容
綜合實踐教學內容是學生能夠把基礎實驗內容綜合起來,實現一定功能的實驗綜合體。表2列出的一些題目,可利用嵌入式系統課程設計來完成。

表1 結合機器人技術嵌入式基礎教學實踐內容

表2 結合機器人技術嵌入式綜合教學實踐內容
2.3創新實踐教學內容
機器人小車和嵌入式系統課程結合最高的實踐教學層次,主要從兩個方面開展創新教學內容:
(1) 學生以基礎教學和綜合教學內容為基礎,提出各種創新的方法控制小車得到更好的效果。例如可以采用自適應PID控制方法使小車運行更加穩定;利用擴展卡爾曼濾波、自適應卡爾曼濾波或粒子濾波,使機器人小車方向測量更加準確;利用神經網絡甚至深度學習訓練機器人小車的模糊邏輯,從而實現更準確的方向控制。
(2) 在本平臺上添加模塊擴展機器人小車的功能從而實現創新。如可以在機器人小車上安裝超聲波 模塊并可實現避障;還可以在小車上安裝圖像模塊實現導航定位等。還可以把機器人小車控制平臺和上層智能終端進行通信,如手機等,從而實現智能小車系統,可借助訊飛語音語義平臺實現自然語言控制;也可以利用手機上的攝像頭并借OpenCV庫實現人臉追蹤等有趣的模式識別和機器人識別功能。從而提高學生對整個嵌入式系統的興趣,并且能明白嵌入式系統是智能硬件的載體。
由于目前各高校現有的嵌入式系統教學實驗設備,都不是現有的,因此需考慮如何對結合機器人技術的特點對實驗內容進行實施工作。根據嵌入式系統實踐教學實施方法也可以根據內容按照3個層次進行。
3.1基礎實踐教學實施
針對基礎實驗內容,主要對現有的實驗教學平臺進行改進為主,根據實驗內容可購買電動機、光電碼盤、姿態傳感器MPU6050模塊和串口WiFi模塊等(其他接口一般實驗平臺已包括),并連接到實驗平臺接口實現各實驗內容。在教學過程中,描述機器人小車的嵌入式平臺,并對應到所用的實驗平臺,使學生在用實驗平臺做實驗的時候可對應到機器人小車各功能模塊。
3.2綜合實踐教學實施
可動員對嵌入式擅長的學生開發出針對機器人小車基本控制平臺,或通過在網上較為容易的采購到通用的小車底盤和控制板,并結合綜合教學實踐內容,使學生通過課程設計或各高校的學生項目完成綜合實踐教學,從而使學生能夠設計實現一個完整機器人小車平臺,并激發學生下一步研究開發的熱情。此過程可通過課程設計或高校的學生研究計劃具體實施,交由各興趣小組, 模擬項目的形式實踐開發。
3.3創新實踐教學實施
從綜合實踐教學實踐效果較好,并對嵌入式感興趣的同學中,激發他們的創新思維,去參加全國大學生創新項目和全國挑戰杯大賽,在此過程中機器人小車提供一個很好的展示平臺,同時有助于激發學生創新思維,同時在項目評審過程中對自己的方法進行不斷的改進。
很多嵌入式芯片公司也舉辦針對機器人小車平臺的嵌入式設計大賽,也可以鼓勵學生去參加,從而在過程中激發創新思維,并且通過和其他選手專家交流完善自己的方法,有助于實用化。
3.4實施初步效果
通過結合機器人項目實踐的模式, 拓展了學習內容,并學以致用, 進一步提高了學習興趣培養了合作精神,還起到了“以點帶面”的效應, 切實拓展了知識面和動手能力。
此外,結合機器人技術和嵌入式平臺,學生通過開發智能機器人小車方面的創新點已拿到大學生國家創新項目,并在畢業設計環節中, 每年都設計了2~3個結合機器人技術的嵌入式系統設計課題。經過兩屆的實踐證明, 選擇該類課題的畢業生知識面更廣, 就業面更寬。
通過把機器人技術作為嵌入式系統課程的實驗平臺、課程設計平臺和創新平臺,有助于提高學生學習嵌入式系統的熱情。同時在機器人平臺上也集成各種創新應用,有助于學生在通過嵌入式技術實現機器人一些功能模塊的同時結合新的想法開發出新的智能終端設備,并可進行實物演示。目前已在教學實踐和指導學生創新活動中獲得較好的效果。
[1] 殷建軍,張明武,尹 令.嵌入式系統課程現狀分析與對策研究[J].計算機教育,2010(14):114-117.
[2] 孫士明,劉新平,鄭秋梅,等.計算機專業嵌入式系統實踐教學體系探索[J].實驗室研究與探索,2009,28(5):122-125,145.
[3] 韓改寧,張 偉,唐云凱,等.計算機科學與技術專業人才培養模式研究與探討[J].現代計算機,2016(7):62-64.
[4] 賴曉晨,劉文杰.高校嵌入式實驗室建設探索[J].實驗室研究與探索,2007,26(6):52-54,79.
[5] 宋 軍,王一雄,徐 鋒.面向物聯網的嵌入式系統實驗教學改革[J].實驗室科學,2011,14(1):20-22.
[6] 沈珊瑚,姚茂群.面向實踐創新人才培養的嵌入式系統教學研究[J].計算機教育,2016(7):27-30.
[7] 房好帥,朱 杰,陳 憲.嵌入式系統基礎課程實踐教學改革的探討[J].北華航天工業學院學報,2016(3):58-60.
[8] 冼 進,賈德良,畢 盛.嵌入式系統實驗課的教學改革初探[J].實驗室研究與探索,2011,30(8):282-284,288.
[9] 張海濤,方 明,付飛蚺.嵌入式輪式機器人實驗平臺設計與實現[J].吉林大學學報(信息科學版),2016(5):670-675.
[10] 黃智偉,鄧月明,王 彥.ARM9嵌入式系統設計基礎教程[M].北京:北京航空航天大學出版社,2013.
[11] 托馬斯·布勞恩.嵌入式機器人學:基于嵌入式系統的移動機器人設計與應用[M].劉錦濤,辛巧,陳睿,譯.西安:西安交通大學出版社,2012.
[12] 謝 玲.高校開放嵌入式實驗室的探索[J].計算機教育,2010(7):55-57.
[13] 李春光,謝光前.以項目為導向的嵌入式系統實踐教學研究[J].中國電力教育,2014(11):183-184.
[14] 莫 莉,喻洪平,何 欣.單片機課程教學體系改革與實踐[J].教育與教學研究,2016(6):105-110.
[15] 孫士明,劉新平,鄭秋梅,等.計算機專業嵌入式系統實踐教學體系探索[J].實驗室研究與探索,2009,28(5):122-125,145.
·名人名言·
我們不能人云亦云,這不是科學精神,科學精神最重要的就是創新。
——錢學森
EmbeddedSystemPracticeTeachingMethodBasedonRobotics
BISheng,DONGMin,XIANJin,ZHANGQi,MEIDenghua
(School of Computer Science & Engineering, South China University of Technology, Guangzhou 510006, China)
Embedded system is very important in computer science course, how to improve the teaching quality of the embedded system is critical. Robotics is a research hotspot recently, it is easy to stimulate students’ interest in learning. Embedded system practice teaching methods based on robotics is proposed in this paper. And the content and implementation plan for the methods are built from three levels: basic practice, comprehensive practice and innovation practice. It is helpful to improve students’ learning interest and quality for embedded system course.
embedded system; robot technology experiment platform; practice teaching research
G 424.31
A
1006-7167(2017)09-0167-03
2016-11-03
2016年教育部與ARM公司產學合作項目(嵌入式系統,201602007004);2015年教育部與Google公司產學合作專業綜合改革項目(ARM嵌入式系統開發與程序);華南理工大學“探索性實驗”教學項目(結合機器人技術的嵌入式系統課程探索性實驗研究)
畢 盛(1978-),男,甘肅天水人,副教授,主要從事嵌入式系統教學工作,研究方向為智能機器人。Tel.:13450229759; E-mail: picy@scut.edu.cn