張歡 宋慧娜 滕旭陽 喬磊
關(guān)鍵詞:新工科;嵌入式系統(tǒng);樹莓派;擴展項目;創(chuàng)新思維
中圖分類號: TP311 文獻標識碼:A
文章編號:1009-3044(2023)03-0166-03
1 引言
為應對新一輪的全球產(chǎn)業(yè)變革,支撐國家戰(zhàn)略發(fā)展,為國家培養(yǎng)高素質(zhì)創(chuàng)新型人才,教育部于2017年先后形成了“復旦共識”[1]“天大行動”[2]和“北京指南”[3],并發(fā)布了在全國范圍內(nèi)開展新工科研究與實踐的通知。相比傳統(tǒng)的工科教育,“新工科”著力培養(yǎng)人才提出問題、分析問題和解決問題的工程能力,培養(yǎng)的人才應兼具理論基礎(chǔ)、創(chuàng)新性思維和工程實踐能力,更注重人才培養(yǎng)的社會滿意度[4]。
嵌入式系統(tǒng)實驗課程是計算機和電子類專業(yè)的專業(yè)課,這門課覆蓋了C語言編程、電子電路、Linux 操作系統(tǒng)、計算機系統(tǒng)、嵌入式系統(tǒng)等多門專業(yè)基礎(chǔ)課內(nèi)容,在前置課程交叉融合的基礎(chǔ)上,培養(yǎng)學生綜合實踐能力?;凇靶鹿た啤苯逃砟钤O(shè)計嵌入式系統(tǒng)實驗課程,有利于提升學生解決工程問題的能力,拓展學生知識的廣度和深度,符合“大學本科要培養(yǎng)適應新時代中國特色社會主義現(xiàn)代化建設(shè)需要,有助于實現(xiàn)培養(yǎng)具有家國情懷、國際視野、創(chuàng)新精神和實踐能力的高素質(zhì)人才”的目標[5]。
杭州電子科技大學通信工程學院已經(jīng)連續(xù)多年開展了嵌入式系統(tǒng)實驗課程,并對該課程進行了一些積極的探索和實踐[6]?;凇靶鹿た啤苯逃砟?,本次教學改革探索將實驗課程分成了基礎(chǔ)部分和擴展部分,在原有樹莓派開發(fā)的基礎(chǔ)上進行了一系列的完善與改進,增加學生獨立設(shè)計、思考與實踐在整個課程中的課時比例。
2 課程介紹
樹莓派是專為學生學習計算機原理而設(shè)計的,具有價格低廉、功耗低、體積小、功能完善等應用優(yōu)勢,受到了廣大計算機愛好者的歡迎,并作為一種嵌入式計算機平臺在社會的各個領(lǐng)域發(fā)揮著重要作用。樹莓派可以運行Linux等操作系統(tǒng),便于在開發(fā)板上直接進行軟件編程和調(diào)試,并提供了以太網(wǎng)、藍牙、WIFI 和豐富的GPIO口,可以外接各類傳感器和遠程終端,兼具通用計算機的靈活性和嵌入式開發(fā)板的可擴展性[7]。因此將樹莓派引入嵌入式系統(tǒng)實驗教學是不二的選擇。
本次嵌入式實驗教學探索中,基于樹莓派開發(fā)板搭建智能小車,包括基礎(chǔ)平臺和擴展實現(xiàn)兩大模塊。首先,由教師講解原理及實驗方法,并帶做基礎(chǔ)平臺部分;然后在教師的引導下,學生獨立實現(xiàn)擴展部分。本課程采用項目制學習法,致力于引導學生基于基礎(chǔ)平臺發(fā)揮創(chuàng)造力和想象力,學生根據(jù)自己的學習基礎(chǔ)和興趣愛好,獨立擬定具有創(chuàng)新性和挑戰(zhàn)性的項目主題,經(jīng)過一個學期的開放性探索,最終形成一個完整的作品[8]。
3 實驗教學設(shè)計
3.1 教學目的
學生能夠掌握嵌入式Linux操作系統(tǒng)的鏡像燒寫與使用,學會使用Shell、C和Python等嵌入式常用編程語言,能夠通過GPIO接口和軟件開發(fā)實現(xiàn)對外圍傳感器的驅(qū)動。引導學生從經(jīng)濟、環(huán)保、安全、實用等角度出發(fā)提出項目目標,培養(yǎng)學生的創(chuàng)新思維和分析、解決復雜工程問題的能力,提升團隊協(xié)作能力和溝通表達能力。
3.2 學情分析
課程面向通信工程學院大二下學期學生開設(shè),這一階段的學生已經(jīng)學習了C語言程序設(shè)計、電子電路基礎(chǔ)、Linux操作系統(tǒng)、嵌入式系統(tǒng)等前置專業(yè)課程,具備嵌入式計算機硬件基礎(chǔ)和軟件編程能力,學生抽象思維活躍,正在形成辯證思維[7],已有的專業(yè)理論知識在頭腦中碰撞。在這個階段,依托嵌入式系統(tǒng)項目實踐對學生進行創(chuàng)新思維和設(shè)計能力的培養(yǎng),有利于將理論知識進行融會貫通,進一步鞏固對知識的理解并靈活運用。
同時,學生之間的能力差距正在逐漸拉大,一部分學生基本掌握了理論知識,但是對知識的認知處于記憶和理解階段,欠缺實踐應用能力,處于學習的初級認知階段;另一部分學生已經(jīng)靈活掌握了各個前置課程的知識,動手能力較強,可以將知識應用到實踐中,能夠?qū)こ套龀龇治龊驮u價,具備創(chuàng)造性,處于學習的高級認知階段。鑒于學生之間學習基礎(chǔ)和認知能力的差距,需要進行有層次的教學設(shè)計,使教學能夠兼顧各階段學生的學習需求。
3.3 教學方法
本實驗采用分散教學周的方式,將整個課程分散在一學期中的11個教學周內(nèi),每個教學周上三節(jié)課。采用自由組合的方式進行分組教學,每組3人?;跇漭尚≤嚮A(chǔ)平臺,各組首先獨立擬定實現(xiàn)目標,指導老師根據(jù)學生的學習基礎(chǔ)和能力評估工作量以及項目實施難度,與學生共同確定最終的項目內(nèi)容,然后再由組員分工合作進行硬件電路設(shè)計和軟件流程設(shè)計。
3.4 教學步驟
實驗教學主要分為基礎(chǔ)平臺和擴展項目兩部分,教學步驟與教學目的之間的對應關(guān)系如表1所示。
1) 樹莓派小車基礎(chǔ)平臺
樹莓派小車基礎(chǔ)平臺如圖1所示,包括樹莓派、車架、車輪、電機、L298N電機驅(qū)動、電池組和若干杜邦線等,這部分的搭建由教師講解并帶領(lǐng)學生完成。這部分的教學目的是使學生熟悉樹莓派系統(tǒng)開發(fā)流程,掌握GPIO接口驅(qū)動的編程方法,能夠獨立完成對小車運動的控制。
樹莓派小車基礎(chǔ)平臺部分的教學包括以下步驟:
(1) 安裝和配置開發(fā)環(huán)境,下載并燒寫Raspbian 操作系統(tǒng),連接外接顯示器、鍵盤、鼠標等設(shè)備搭建一個小型計算機,熟悉Linux shell操作;
(2) 連接樹莓派GPIO與LED燈,并編寫C或Py?thon驅(qū)動程序控制LED燈亮滅,以掌握樹莓派GPIO口的控制;
(3) 組裝小車車架、車輪、電機和電機驅(qū)動,通過電機驅(qū)動與電池組的連接實現(xiàn)車輪轉(zhuǎn)動;
(4) 參考電機驅(qū)動原理圖,連接樹莓派GPIO口與組裝好的小車,并使用C語言或Python語言編程實現(xiàn)樹莓派通過GPIO口對電機驅(qū)動的控制,進而實現(xiàn)控制小車前進、后退、轉(zhuǎn)向、停止等功能,以及使用脈沖調(diào)制(PWM) 的方式控制小車的運動速度。
2) 智能小車擴展項目
樹莓派智能小車擴展項目由學生發(fā)揮創(chuàng)造力自擬題目,在基礎(chǔ)平臺之上加裝傳感器,實現(xiàn)一個完整的項目。這部分的教學目的是培養(yǎng)學生設(shè)計完整系統(tǒng)的能力,學會閱讀各類傳感器的使用手冊,能夠根據(jù)原理圖搭建硬件電路、設(shè)計軟件框架,掌握硬件和軟件調(diào)試流程,具備獨立解決問題的能力,提升在項目合作中必備的溝通交流能力。
3.5 考核方法
課程考核采用百分制,從項目驗收、個人表現(xiàn)和實驗報告三個方面進行考核。項目驗收從是否完成項目目標,項目方案的合理性和復雜性,已完成目標功能的難易程度,代碼的完整、規(guī)范程度,是否有創(chuàng)新性等方面對學生的項目做出綜合性評分;個人表現(xiàn)包括出勤率、課堂參與度、團隊配合能力、工作量比例和驗收答辯的表達能力等;實驗報告是每個小組學生提交的項目報告,分為設(shè)計目標、軟硬件設(shè)計思路、具體實施方案、實驗結(jié)果與分析等方面,考查學生的寫作能力、分析和整理資料的能力。
4 學生實現(xiàn)的優(yōu)秀作品展示
4.1 基于紅外傳感器的自動倒車入庫系統(tǒng)
學生設(shè)計的自動倒車入庫功能主要依靠放置在車輛兩側(cè)的紅外傳感器,借助Python編程的方式,不斷獲取紅外傳感器探測到的車輛與車庫邊界的距離,進而不斷調(diào)整車輪的運動軌跡,最終實現(xiàn)小車自動倒車進入車庫。圖2(a)展示了在小車右側(cè)配置三個紅外傳感器的系統(tǒng),分別對車前部、中部、尾部進行距離探測,以此判定車身與車庫邊緣的相對位置關(guān)系,進而控制車輛行進路線,直到車輛右側(cè)與車庫右邊緣平齊,再調(diào)制車輛位置使其位于車庫中部。由于條件有限,該作品僅在車輛一側(cè)安裝了傳感器,后續(xù)可以在車身四周安裝更多傳感器,使定位更準確。
4.2 基于神經(jīng)網(wǎng)絡(luò)的人臉口罩識別
在小車前部安裝攝像頭,樹莓派可采集小車行進途中的視頻圖像,進而實現(xiàn)圖像識別、人臉檢測、快照拍攝等功能。圖2(b)展示了基于卷積神經(jīng)網(wǎng)絡(luò)的人臉口罩識別系統(tǒng),該作品基于LeNet-5 模型架構(gòu)和TensorFlow Lite庫,使用三層卷積神經(jīng)網(wǎng)絡(luò)模型對各類佩戴口罩的圖片進行訓練,將訓練模型搭載到圖像識別模塊,對攝像頭采集的實時畫面進行人臉口罩識別,該作品可標記出正常、不規(guī)范和未佩戴三種類型。該作品的項目立意在當前防疫背景下為規(guī)范行人的口罩佩戴行為具有良好的實用價值。
4.3 基于藍牙的遠程控制
開發(fā)手機端應用程序,通過手機界面對小車進行運動控制,該項目還可結(jié)合攝像頭和視頻實時傳輸模塊,將獲取的圖像傳輸?shù)绞謾C端,實現(xiàn)視角清晰的車輛控制。圖2(c)展示的作品基于Android Studio平臺和Java語言開發(fā)手機應用程序,可通過屏幕按鍵實現(xiàn)對小車運行參數(shù)設(shè)置,以及運動狀態(tài)控制,還可以在手機屏幕顯示攝像頭采集的實時畫面。
4.4 基于多自由度云臺的智能拍照系統(tǒng)
圖2(d)展示的作品將兩個舵機和一個攝像頭組裝在一起,構(gòu)成一個多自由度拍照云臺,可以智能控制云臺轉(zhuǎn)動使攝像頭畫面中心對準人臉面部。在樹莓派中編寫拍照控制程序,對接收到的USB攝像頭圖像進行分析,通過PID(比例-積分-微分)算法計算出舵機控制量,再通過PWM脈沖調(diào)制控制舵機轉(zhuǎn)動,進而實現(xiàn)對拍照角度的控制。
5 教學效果
經(jīng)過一個學期的教學實踐,嵌入式系統(tǒng)實驗課程受到了學生的一致好評,學生們表現(xiàn)出了高漲的學習熱情和濃厚的探索興趣。在擴展項目開始初期,學生不斷查資料、摸索設(shè)計方案,根據(jù)自身能力并與教師交流后提出明確的設(shè)計目標;在項目開展后經(jīng)?;ù罅繒r間進行實踐探索和軟硬件調(diào)試;在項目結(jié)束時,每個小組都能交出完整的項目作品,完成項目報告,并進行流暢的項目答辯。
6 結(jié)束語
在“新工科”教育改革背景下,以培養(yǎng)創(chuàng)新思維人才為目標,設(shè)計了嵌入式系統(tǒng)實驗課程教學方法,以基于樹莓派的智能小車為基礎(chǔ),采用項目制學習法,因材施教,開展開放探索的教學實踐,將培養(yǎng)學生設(shè)計、分析、解決工程問題能力貫徹教學始終。實踐證明,該課程可以激發(fā)學生的創(chuàng)造力,鍛煉工程實踐能力,培養(yǎng)團隊協(xié)作和溝通表達能力,從而增強專業(yè)自信心,有助于畢業(yè)后成為社會認可的高素質(zhì)工程技術(shù)人才。