孫鈺,許福,張海燕,李巨虎,陳志泊
(北京林業大學信息學院,北京100083)
物聯網是我國“十三五”規劃的戰略性新興產業,其專業人才的培養已成為當務之急[1]。目前面向物聯網的教學還處在探索階段,國內外并沒有一個成熟的培養模式和課程體系[2]。“嵌入式系統”是物聯網專業的一門專業核心課,是“操作系統”“計算機網絡”“數字電路”等專業基礎課的后續課程,同時又是“無線網絡”“物聯網應用”“物聯網專業實踐”等多門主要專業課的先修課程。因此,它在整個教學體系中起著承前啟后的重要作用,課程本身及實驗應有較高的應用性、前沿性和綜合性。
教育部高等學校計算機科學與技術教學指導委員會對物聯網專業的指導思想是重點進行應用型、工程型人才的培養[3]。物聯網技術專業的設置需要綜合考慮相關交叉學科的特點,注重課程體系的交叉融合[4]。
“嵌入式系統”實踐性強,要求學生在實驗中操作硬件,驗證嵌入式理論。現階段主要沿用計算機科學與技術專業的實驗內容[5-6],應用到物聯網專業時存在以下不足之處:
(1)實驗箱的硬件遠遠落后于目前的主流嵌入式平臺。目前,機房的試驗箱型號為UPNETARM2410-S,其處理器屬于ARM9系列,為2008年的主流配置,現已停產。然而,隨著智能手機的興起,嵌入式系統獲得了超過摩爾定律的發展速度。目前智能機的市場占有率已超過90%。即使低端的Android智能手機(ARM Cortex-A設備),其嵌入式硬件水平也比試驗箱先進數倍,有強大的多媒體功能及友好的人機界面,普遍作為物聯網的應用層設備。學生在“移動開發”課程中已經接觸過先進的嵌入式設備(Android智能機),而在后續的“嵌入式系統”卻只能使用老舊的ARM9設備,導致學習積極性低下。
(2)實驗未按照物聯網三層結構劃分模塊,導致實驗練習的技術路線單一,學生間缺乏分工合作,并只能以個人為單位完成。目前試驗箱僅支持嵌入式Linux操作系統,不支持新出現的Android移動操作系統。在嵌入式Linux下,開發語言也局限于C和C++,不能使用Java及Python等現代語言。學生在實驗中,僅能練習Linux系統的C/C++編程。另外,軟件未根據物聯網的三層架構進行模塊化分割,學生無法以合作的方式完成實驗,更無相應的考核機制。
(3)實驗內容與“移動開發”“智能家居”“物聯網導論”等新課程缺乏聯系,綜合性不足。“嵌入式系統”是一門傳統課程,早期的嵌入式以工控為主,實驗內容也以工控為主。隨著成本的下降和物聯網的普及,嵌入式已成為消費電子領域的主流技術,而該課程的實驗還不能體現嵌入式系統在“互聯網+”時代的最新應用,內容缺乏綜合性與創新性。
強化試驗箱的底層控制功能,標準化其對外接口,保留大部分原有硬件。機房試驗箱的處理器屬于ARM9系列,ARM公司將其定位為微控制器,適用于物聯網底層的控制及傳感。盡管ARM9的多媒體功能已經非常落伍,但仍具有很強的底層控制功能,借助其豐富的IO管腳,操作試驗箱的步進馬達、ADC、DAC、LED及蜂鳴器等硬件。在試驗箱的智能化升級與改造中,將弱化多媒體播放,剔除試驗箱的多媒體實驗(MP3播放、視頻播放等),增加控制及傳感的內容,并提供符合物聯網規范的接口,供上層調用。
為試驗箱升級Wi-Fi、藍牙及3G等無線模塊,滿足物聯網對無線組網的需求。無線組網是物聯網的大勢所趨,也是學生參與競賽及招聘的熱點問題。而試驗箱的網絡仍以有線網絡為主,以落后的紅外及2G無線網絡為輔,難以滿足現代物聯網對無線組網的需求。本項目將采購先進的Wi-Fi,藍牙4.0及3G模塊,通過試驗箱已有的串口或USB接口連接新的無線模塊,實現平滑升級。
整合Android智能手機,作為試驗箱的人機界面與控制中心。目前智能機的市場占有率已超過90%。即使低端的Android智能手機,其硬件水平也比試驗箱先進數倍。運行Android的嵌入式系統有強大的多媒體功能及友好的人機界面,普遍作為物聯網的應用層設備。學生在先修課程“移動開發”中,已經掌握了在Android設備上進行軟件開發的技能。本項目擬采購少量千元級別的國產Android手機,同時發揮學生已有Android手機的作用,借助無線組網技術,實現Android手機對試驗箱硬件的遠程物聯網化操作。
將試驗箱定位于感知層、Android智能機定位于應用層,兩層保持獨立性。根據試驗箱及Android手機中嵌入式處理器的等級,將二者分配至物聯網合適的位置,發揮各自所長。ARM公司將ARM9處理器定位為微控制器。因此,基于ARM9的UP-NETARM2410-S試驗箱型號適用于物聯網感知層的控制及傳感。運行Android的嵌入式系統有強大的多媒體功能及友好的人機界面,普遍作為物聯網的應用層設備。
新增的無線模塊定位于物聯網傳輸層,通過標準接口耦合感知層與應用層。新增的Wi-Fi、藍牙及3G等無線模塊作為物聯網傳輸層設備,連接原有的試驗箱和新增的Android智能機。試驗箱通過標準物聯網協議向Android手機提供控制箱內硬件的接口,在保持感知層和應用層松耦合的前提下,完成無線的可感、可傳及可控。
設計新的實驗考核機制,即根據各層及總體的完成度科學評價學生的實驗成績。新實驗題目的各模塊分別對應物聯網的感知層、傳輸層和應用層,需要3名學生分工協作,實現各層的功能,并向外提供接口,最終完成物聯網整體的聯通。在考核時,既要考核本人分工內的完成度,也要考察其在總體中的工作量,合理分配各模塊與總體的權重,科學衡量學生的嵌入式實踐能力。
實驗內容整合移動開發和Android系統等多項新技術,增強綜合性。盡管試驗箱僅支持嵌入式Linux操作系統,不支持新出現的Android移動操作系統。但通過無線模塊整合Android智能機后,學生可在試驗中使用Java等現代語言實踐移動開發技術。與“移動開發”課程不同的是,本課程的實驗側重于Android智能機對傳統硬件的控制,而非純粹的軟件開發。通過整合移動開發和Android系統等多項新技術,極大提高了實驗的綜合性,更好地鍛煉學生的軟硬件開發能力。
實驗選題圍繞“互聯網+”在智能家居、智慧林業的應用展開。“互聯網+”已廣泛應用于智能家居、水土保持、物流倉儲等行業。嵌入式設備在物聯網中處于主導地位。實驗的選題不僅僅是簡單地遠程操作步進馬達、讀取傳感器數據等,而是有具體的應用場景,以智能家居為例,根據Android手機無線讀取光線及溫度傳感器的數據,綜合用戶的生活習慣,智能決策試驗箱控制窗簾馬達的啟停,營造舒適的家居環境。情景化選題使學生明確學習的目的,提高了學習積極性。
鼓勵學生設計新的嵌入式應用場景,升級軟件功能,鼓勵學生創新創業。物聯網的應用日新月異,融入生產生活的方方面面。實驗中,鼓勵學生在已有硬件的基礎上,根據自己的學習心得和生活實踐,設計新的應用場景,升級軟件部分,特別是Android手機的APP。在保持底層硬件不變及接口穩定的前提下,通過軟件升級,適配新的應用場景,使實驗中的小型物聯網更智能,并在考核中科學評價其創新性。
(1)加強該課程與先修課和后續課的溝通與交流,總結其在教學方法、考試模式等方面的經驗和不足;向兄弟院校的相關專業進行廣泛調研,借鑒其方法和手段;獲取本專業學生的反饋信息,了解其他專業對課程的需求情況。進行課程優化,處理理論授課與實踐授課之間的關系。
(2)選取和搜集物聯網在實際生產中的典型案例,提煉案例中的知識點,使其具有整體性、連貫性和實用性。隨著實驗的推進,學生可以將案例完整地實現出來,能有效地將所學知識點融會貫通,增強自信心、提高學習的動力。
(3)教研結合,注重引導。通過鼓勵學生參加各級計算機競賽、申請大學生創新創業訓練項目、參加教師的科研項目等形式,促進學生實踐能力和創新性思維的培養,提高學生的應用能力。在實際應用中檢驗教師的教學效果和學生的學習成果,實現理論與實踐的有效結合。
(4)在整個課程改革中,提出穩固基礎知識、提高編程能力、開拓知識層面、倡導實踐應用的計算機科學與技術專業人才程序設計能力的培養模式,培養出適應經濟和社會發展需要的、本領過硬的物聯網專業人才。
實踐證明,對“嵌入式系統”實驗的三項改革,加強了實驗的綜合性、設計性和創新性,解決了“嵌入式系統”課程基礎知識與“互聯網+”前沿技術的脫節問題,有利于培養具備嵌入式軟硬件設計能力的創新創業人才。未來的改革中,我們將進一步強化新興硬件的引入,及時將“互聯網+”創新成果引入課堂。
[1]黃瑜岳,常晉義,許秀蘭.物聯網工程專業應用型人才培養模式研究[J].計算機教育,2012(23):58-62.
[2]劉鵬.物聯網工程專業創新人才培養探索[J].計算機教育,2012(21):9-12.
[3]教育部高等學校計算機科學與技術專業教學指導分委員會.高等學校物聯網工程專業發展戰略研究報告暨專業規范(試行)[M].北京:機械工業出版社,2012:1-4,22-23.
[4]桂小林.物聯網技術專業課程體系探索[J].計算機教育,2010(16):1-3,9.
[5]孫偉,李嚴,崔曉晗,等.面向應用的嵌入式系統教學改革與探索[J].工業和信息化教育,2016(1):32-36.
[6]鄢秋榮,王玉皞,王艷慶,等.面向軟硬件協同設計的嵌入式系統教學改革與實踐[J].實驗室研究與探索,2016(6):190-193.