劉三榮
(棗莊學院 信息科學與工程學院,山東 棗莊 277160)
我國物聯網產業已經形成了面向應用的較為成熟的產業結構,如我們熟悉的智慧城市、智能交通等.如此巨大的發展,帶來了巨大的人才需求,大部分的高校也已開設了物聯網相關的專業.TinyOS操作系統是物聯網工程的基礎課程.它隨著“無線傳感器網絡(WSN)”的技術研究而流行起來的.因此掌握該系統的相關技術也就占領了制高點.TinyOS是一門資料很少,技術較新,沒有多少較好的經驗可以借鑒,只能自己摸索出一套適合于TinyOS課程學習的教學模式.
TinyOS是由美國加利福尼亞大學伯克利分校專門為無線傳感器網絡定制研發的嵌入式操作系統,是一種基于事件驅動的操作系統,程序核心模塊較小,能在傳感器存儲資源少的限制上有所突破,能在無線傳感器網絡上有效地運行并執行相應的管理工作.TinyOS將底層硬件進行封裝成組件架構,對應用層通過組件的層遞結構提供與硬件無關的接口.它的這種分層架構有利于操作系統的移植.
TinyOS的架構是一個自下而上的樹狀結構,分成底層硬件抽象組件、中間綜合硬件組件和上層軟件組件,其結構如圖1所示.底層硬件抽象組件將物理硬件映射到TinyOS的組件模型,負責信號交互并向上報告事件的發生;中間綜合硬件組件模擬高級硬件行為,負責解析數據和傳遞數據參數;上層軟件組件主要實現組件控制、路由以及數據傳輸、協議解析等,并向下發送指令.
nesC語言是TinyOS的編程語言,是C語言的擴展,用來構建TinyOS的結構和執行模型,是進行TinyOS程序開發的工具.nesC程序結構是由模塊組件、配置組件和編譯文件三種類型文件組成.TinyOS組件有配置組件和模塊組件兩種.通常來說,底層組件的命令可以由上層組件調用,上層組件及其事件的發生由下層組件通過觸發信號的方式通知,硬件與最底層的組件直接交互,自上而下形成一種樹狀結構接口.接口中的命令函數由接口的提供者實現,接口的事件函數由接口的使用者實現,一個組件使用或提供多個接口,也實現同一接口的多個命令.模塊由應用程序代碼組成,配件說明應用程序要使用的組件及組件間的關系,將使用者與提供者連接在一起.

圖1 TinyOS體系結構
(1)師資力量較弱.TinyOS是門全新的課程,教學老師大都是從事其他專業的,如計嵌入式的、計算機的等,很多無線傳感器網絡的核心技術這些老師基本沒有接觸,所以老師的技術水平不是很好,無法滿足教學的需求.帶課老師要從頭學習新的技術本來就很困難,且TinyOS資料文獻較少,經驗傳授相對缺少了,大部分老師是自己摸索學習,然后再將摸索學習的知識傳授給學生,這樣匱乏的知識儲備和較少的經驗肯定會影響到教學的質量.
(2)實踐教學方法相對落后.講課和做實驗是傳統的教學模式的主要方式,先課堂上講理論知識再安排一次實驗.這樣的方式導致了學生所做實驗之間相互獨立.導致學生只會做這些實驗,不知道做實驗的實際意義、在什么場合應用,更不知道應用到工作中去.學生學習的目的不是很明確,知識更不能融會貫通,更不用說培養學習的興趣.
(3)實驗儀器設備不足.TinyOS是近幾年才走進高校的課堂,教學儀器設備相對較少,價格較貴,學校采購設備的范圍和數量受到限制,適合于專業教學的實驗設備很少,要三、四位同學使用同一套設備.且無線傳感器網絡設備大多是小的獨立節點,設備較易損壞.實驗設備少影響了學生學習熱情,學生的學習興趣更無法激發出來.
根據物聯網工程專業學生培養目標,讓學生更好地掌握所學的專業知識,更好的培養學生實踐操作和實踐創新的能力,對傳統的教學方法和模式進行教學改革,激發學生的學習熱情,培養學生學習興趣.
MOOC是近幾年新興的教學形式,正改變著課堂的傳統教學模式,適合于當今網絡化學習方式.教師在網絡上提供教學視頻為主的學習資源,學生在線學習教學視頻,通過網絡在師生間、學習者間的進行互動交流,完成教師提供的在線測試、在線作業、在線考試等.能夠在一定程度上實現優質教學資源共享,推動教育的公平性.將傳統教學與MOOC教學方式結合起來形成混合式教學,學生在課下完成知識學習,課堂則變成師生間互動的場所,完成答疑解惑、問題討論和知識運用等.
將TinyOS的理論知識部分制作成微視頻,并作為作業布置給學生,讓學生觀看視頻完成在線學習與練習并進行交流與討論,在實踐課堂上進行關鍵知識點的討論、答疑.完成關健知識點的編程練習,從而加強實踐練習.
為了讓學生充分掌握TinyOS的知識點,結合教學內容與實踐教學的難易程度,將知識點進行分塊,并將學生進行分組,將每一塊知識點讓一組學生共同準備,制作PPT或知識點的總結,在課堂上進行7-8分鐘的講解,并進行討論和抽查.既培養了學生的自學能力,制作PPT的能力,查找文獻資料的能力,又培養了學生解決問題的能力,從而提高學生的學習積極性和主觀能動性.
TinyOS是無線傳感器網絡的操作系統,要實現數據的采集、處理和傳輸三種功能.它是大量靜止或移動傳感器以自組織或多跳的方式組成無線網絡,協作地采集、處理、傳輸網絡覆蓋區域內被感知對象的信息,最終將信息發送給網絡的所有者.所以TinyOS是一門實踐性很強的課程.
針對TinyOS課程的特點,采用任務驅動式教學設計實踐教學,通過設計學生感興趣的實踐任務,在學生完成任務的過程中提取理論知識點,鞏固理論知識.在實施任務驅動式教學方式中,通過布置難度循序漸進的實踐任務,讓學生在實踐中發現問題,進行自主或協作學習,鼓勵圍繞實踐內容進行討論與研究,從實踐任務中提煉知識點,形成“以任務為主線、學生為主體、教師為主導”的教學模式.
帶領學生參觀物聯網實驗室中“智慧城市”,引導學生思考在城市交通中無人駕駛公交車中報站、紅綠燈的識別、路線的識別等是如何實現的.對此進行任務分析和分解,進一步引導學生思考與無線傳感器網絡的節點部署、數據采集處理、路由協議等相關知識,由以有的知識引入新的知識,激發學生的好奇心和學習興趣.
基于任務驅動教學方式,設計若干循序漸進的任務,每個任務背后都隱含的相應的知識點.循序漸進的任務將教學難點進行分解細化,使學生從簡單的知識到復雜的系統揮金如土,層層深入,促進學生在此過程中自主學習、探索和創新.任務大綱與相應知識點的分配如表1所示.

表1 任務大綱與知識點分配
表中任務層層遞進,可將TinyOS的各個層次的關健技術和知識點進行概括,在以有的知識上拓展新的知識點,從而使學生溫故而知新、觸類旁通.
TinyOS課程教學改革側重于理論教學和實踐教學,探討了如何對TinyOS課程教學方法進行改革,以適應物聯網專業的教學要求和培養目標.通過實踐采用上述教學方式對于TinyOS課程教學是行之有效的方法.它能促進學生發現問題、解決問題,激發學生對TinyOS課程的學習興趣,培養學生分析和解決問題的能力,更好地提高教學質量.
〔1〕李外云.CC2530與無線傳感器網絡操作系統TinyOS應用實踐[M].北京:北京航空航天大學出版社,2013.
〔2〕李歐,張效義,王曉梅,張大龍.TinyOS實用編程—面向無線傳感器網節點軟件開發[M].北京:機械工業出版社,2013.
〔3〕牟占生,董博杰.基于MOOC的混合式學生探究—以Coursera平臺為例[J].現代教育技術,2014,124(5):73-80.