郭麗紅 吳海濤 楊潔 沙愛軍
[摘 要]為了督促學(xué)生熟練掌握編程技巧,進(jìn)一步提升其編程能力,文章基于OBE理念,以項(xiàng)目驅(qū)動的教學(xué)模式為主線,結(jié)合編程類課程的特性和多種教學(xué)方法,采用多級幫帶方式,設(shè)計(jì)了系統(tǒng)化的課程學(xué)習(xí)模塊和教學(xué)方案。在實(shí)施過程中,文章以企業(yè)的設(shè)備定位項(xiàng)目為驅(qū)動,利用UWB和NB?IoT技術(shù),并基于STM32單片機(jī)完成了室內(nèi)外設(shè)備的位置及狀態(tài)檢測,不僅實(shí)現(xiàn)了高精度定位,還成功將單片機(jī)采集和處理后的數(shù)據(jù)上傳至企業(yè)私有云平臺。此外,系統(tǒng)設(shè)計(jì)了手機(jī)app,用戶可以通過app向云端請求數(shù)據(jù),實(shí)時(shí)掌握設(shè)備狀態(tài),統(tǒng)計(jì)和分析數(shù)據(jù),幫助企業(yè)實(shí)現(xiàn)自動化設(shè)備監(jiān)測與管理,秉持了“學(xué)生中心、產(chǎn)出導(dǎo)向”的理念,滿足了用人單位和社會需求,同時(shí)也顯著提升了學(xué)生的軟硬件編程能力,達(dá)到了人才培養(yǎng)的目標(biāo)。
[關(guān)鍵詞]編程能力;OBE理念;項(xiàng)目化教學(xué);設(shè)計(jì)與開發(fā)
[中圖分類號]G642[文獻(xiàn)標(biāo)識碼]A[文章編號]2095-3437(2024)04-0077-03
隨著計(jì)算機(jī)技術(shù)的普及和高度信息化時(shí)代的到來,軟硬件編程在各行各業(yè)的應(yīng)用愈發(fā)廣泛,對編程人才的需求也日益增加。因此,具備良好的編程能力已成為時(shí)代所需[1]。編程語言作為打開計(jì)算機(jī)技術(shù)大門的鑰匙,無論是在大數(shù)據(jù)、物聯(lián)網(wǎng)還是人工智能等領(lǐng)域的發(fā)展中,都發(fā)揮著不可或缺的作用。計(jì)算機(jī)相關(guān)專業(yè)的專業(yè)課程往往以編程語言為基礎(chǔ),構(gòu)建實(shí)驗(yàn)或設(shè)計(jì)系統(tǒng)。此外,隨著考研學(xué)生數(shù)量的逐年攀升,部分高校在專業(yè)考核科目中要求使用編程語言來描述算法、設(shè)計(jì)方案,或在研究生復(fù)試中更加注重考查學(xué)生的邏輯思維及編程能力。
隨著工程教育專業(yè)認(rèn)證工作在各大高校中的不斷推進(jìn),在基于產(chǎn)出的教育理念(Outcome?Based Education,OBE)和“學(xué)生中心、產(chǎn)出導(dǎo)向”理念的指引下[2-5],以提升學(xué)生編程能力為目標(biāo)的項(xiàng)目化實(shí)踐方法有待深入研究。
一、總體方案設(shè)計(jì)
基于當(dāng)前學(xué)生編程能力、編程類課程的教學(xué)效果、學(xué)生考試成績等因素,本文在工程教育專業(yè)認(rèn)證理念的指導(dǎo)下,通過深入分析和歸納總結(jié),針對編程能力培養(yǎng)與提升過程中遇到的具體問題,構(gòu)建了一個系統(tǒng)化的編程能力提升框架,并制訂了一套完整的學(xué)習(xí)方案。該方案以項(xiàng)目驅(qū)動為核心,緊密結(jié)合課程特征和學(xué)生狀況,從教育理念的創(chuàng)新性、項(xiàng)目驅(qū)動的可行性、編程能力的系統(tǒng)化提升等方面建立人才培養(yǎng)模式。
二、編程能力提升的具體實(shí)施方案
(一)以項(xiàng)目驅(qū)動的教學(xué)模式
項(xiàng)目化教學(xué)模式作為一種新型教學(xué)方法,能夠有效緩解社會需求與人才培養(yǎng)之間的矛盾。該模式緊密圍繞企業(yè)的實(shí)際需求,以項(xiàng)目驅(qū)動的教學(xué)模式為主線,采用多級幫帶方式,即組建教師幫帶學(xué)生、學(xué)生幫帶學(xué)生的學(xué)習(xí)梯隊(duì);以實(shí)際項(xiàng)目開發(fā)為目的,以學(xué)生為中心,以提升編程能力為目標(biāo),實(shí)現(xiàn)從需求到理論,再由理論到實(shí)踐的反復(fù)循環(huán),徹底改變傳統(tǒng)的教學(xué)模式。同時(shí),根據(jù)企業(yè)需求,明確項(xiàng)目目標(biāo)和所需技能,使學(xué)生在邊做邊學(xué)的過程中完成項(xiàng)目開發(fā)。
(二) 設(shè)計(jì)目標(biāo)導(dǎo)向,并具體實(shí)施
以學(xué)生為中心,按照從基礎(chǔ)到強(qiáng)化再到提升的能力訓(xùn)練途徑,精心設(shè)計(jì)了具體的課程模塊、項(xiàng)目指導(dǎo)以及學(xué)習(xí)流程(見圖1)。
[計(jì)算機(jī)基礎(chǔ) ][提升能力訓(xùn)練項(xiàng)目 ][強(qiáng)化能力訓(xùn)練項(xiàng)目 ][基礎(chǔ)能力訓(xùn)練項(xiàng)目 ][訓(xùn)練基本編程思維 ][學(xué)會編碼和調(diào)試 ][高級語言程序設(shè)計(jì)C ][適合管理系統(tǒng)類項(xiàng)目 ][計(jì)算機(jī)網(wǎng)絡(luò) ][訓(xùn)練邏輯編程思維 ][數(shù)據(jù)結(jié)構(gòu)、算法、數(shù)據(jù)庫 ][面向?qū)ο蟪绦蛟O(shè)計(jì)語言
(C++/Java/Python) ][適合算法類相關(guān)項(xiàng)目 ][訓(xùn)練綜合編程思維 ][單片機(jī)原理及應(yīng)用 ][關(guān)注時(shí)空分配、效率提升 ][適合各類軟硬件相關(guān)項(xiàng)目 ]
圖1 項(xiàng)目化驅(qū)動學(xué)習(xí)方案具體訓(xùn)練流程
編程作為一種技能,其核心在于編程思維,而良好的系統(tǒng)性設(shè)計(jì)則是能力培養(yǎng)的關(guān)鍵。本文以項(xiàng)目驅(qū)動的教學(xué)模式為主線,構(gòu)建三級階梯式項(xiàng)目化教學(xué)模塊,從基礎(chǔ)課程的學(xué)習(xí)和基本編程思維的訓(xùn)練,到中等強(qiáng)度的算法設(shè)計(jì)和邏輯思維的培養(yǎng),最后到高級課程的學(xué)習(xí)和綜合編程思維的訓(xùn)練。學(xué)生在這個過程中不僅得到了思維訓(xùn)練,也實(shí)現(xiàn)了將知識轉(zhuǎn)化為能力的目標(biāo)。
(三)以實(shí)際教學(xué)對象為實(shí)驗(yàn)對象,將項(xiàng)目化教學(xué)應(yīng)用于實(shí)際教學(xué)
以課程組為單位,深入研究實(shí)施細(xì)節(jié)。根據(jù)每個階段的訓(xùn)練要求,精心挑選實(shí)際項(xiàng)目,引導(dǎo)學(xué)生將理論與實(shí)踐緊密結(jié)合,通過完成項(xiàng)目開發(fā)和應(yīng)用,進(jìn)一步提升編程能力。本文以企業(yè)實(shí)際需求為例,引入基于NB?IoT的設(shè)備室內(nèi)外定位項(xiàng)目[6],并據(jù)此開展項(xiàng)目化教學(xué)。
1.項(xiàng)目需求和總體規(guī)劃
硬件選型及模塊的選擇[7-8]:單片機(jī)的選型(STM32單片機(jī))、室外定位(采用BC20定位模塊,實(shí)現(xiàn)基于GPS+北斗的聯(lián)合定位)、室內(nèi)定位(采用UWB技術(shù))、低功耗數(shù)據(jù)傳輸方式NB?IoT、供電模塊。
各種通信協(xié)議及信息傳遞方式:串行口通信方式的實(shí)現(xiàn)、NB?IoT無線傳輸模式的實(shí)現(xiàn)、AT指令的通信格式、設(shè)計(jì)數(shù)據(jù)采集端和云端的通信協(xié)議等。
相關(guān)編程技術(shù):下位機(jī)與室內(nèi)外定位模塊的通信,開發(fā)手機(jī)app。實(shí)時(shí)了解設(shè)備的運(yùn)行狀態(tài),以更好地掌握工控領(lǐng)域的實(shí)時(shí)信息,提高生產(chǎn)效率,降低安全隱患。
2.項(xiàng)目分塊、學(xué)生分組設(shè)計(jì)
采集端:單片機(jī)、室內(nèi)外定位模塊與監(jiān)測設(shè)備一體化設(shè)計(jì)。通過單片機(jī)的實(shí)時(shí)數(shù)據(jù)采集、NB?IoT的無線傳輸,以及串口通信的協(xié)同作用,完成信息采集工作,并將數(shù)據(jù)上傳至企業(yè)私有云平臺。
手機(jī)app:系統(tǒng)的設(shè)備監(jiān)測數(shù)據(jù)通過無線網(wǎng)絡(luò)傳輸,將分散的設(shè)備狀態(tài)信息上傳至企業(yè)私有云平臺。運(yùn)維工程師或用戶下載安裝手機(jī)app,遠(yuǎn)程監(jiān)視設(shè)備狀態(tài)及位置信息,及時(shí)發(fā)現(xiàn)并應(yīng)對緊急情況,實(shí)現(xiàn)高效便捷的運(yùn)維處理和確保設(shè)備的安全運(yùn)行。
服務(wù)器端:服務(wù)器是系統(tǒng)中提供特定服務(wù)的計(jì)算機(jī)系統(tǒng),其主要職責(zé)是存儲用戶數(shù)據(jù),為客戶端提供服務(wù),并實(shí)時(shí)處理客戶端的數(shù)據(jù)請求。
信息交互:包括采集模塊及定位模塊與下位機(jī)的信息交互、下位機(jī)和私有云的信息交互、客戶端通過手機(jī)app與私有云端的信息交互。
(四)系統(tǒng)功能的具體實(shí)現(xiàn)與測試
系統(tǒng)設(shè)計(jì):上位機(jī)主要指的是手機(jī)app的編程,采用Android Studio編程工具,并使用Java語言完成上位機(jī)的設(shè)計(jì)[9],具體包括授權(quán)登錄模塊、條件查詢模塊、實(shí)時(shí)監(jiān)控模塊、匯總統(tǒng)計(jì)模塊等。上位機(jī)的數(shù)據(jù)來源于企業(yè)私有云平臺,能夠?qū)崟r(shí)獲取云端信息,從而實(shí)現(xiàn)對設(shè)備的在線監(jiān)測。下位機(jī)采用低功耗的STM32主控芯片,在Keil uVision5開發(fā)環(huán)境中,使用C語言來實(shí)現(xiàn)其具體功能,包括室內(nèi)外模塊的位置信息采集、與單片機(jī)的交互、室內(nèi)基站模塊和標(biāo)簽?zāi)K的交互,以及NB?IoT與企業(yè)私有云的通信等。
室內(nèi)定位:在室內(nèi)定位中基于UWB技術(shù)[10],采用DWM1000距離傳感器,并運(yùn)用球形定位算法來完成室內(nèi)設(shè)備的精確定位。UWB終端的位置確定是利用通過幾何關(guān)系來計(jì)算圓的交叉點(diǎn),從而精確地獲取位置信息。
室外定位:BC20模塊集成了一款高性能的GNSS(Global Navigation Satellite System,全球?qū)Ш叫l(wèi)星系統(tǒng))芯片,支持GPS、GLONASS、北斗、Galileo等多個系統(tǒng),從而實(shí)現(xiàn)多系統(tǒng)聯(lián)合定位。通過嵌入式的GNSS功能,BC20模塊可以協(xié)助用戶獲取精確的坐標(biāo)和時(shí)間信息。STM32單片機(jī)通過發(fā)送AT指令與BC20模塊建立通信,進(jìn)而控制BC20模塊執(zhí)行特定的操作。
手機(jī)app:手機(jī)端軟件設(shè)計(jì)采用分層結(jié)構(gòu)設(shè)計(jì),包括用戶界面層、用戶功能層、中間件層以及操作系統(tǒng)層。使用Android Studio編程工具,調(diào)用JDBC的API來連接企業(yè)私有云端數(shù)據(jù)庫,從而獲取設(shè)備狀態(tài)及位置信息。同時(shí),編寫UI界面用于數(shù)據(jù)展示,并調(diào)用高德地圖API和圖表控件來美化和優(yōu)化信息的呈現(xiàn)方式,實(shí)現(xiàn)實(shí)時(shí)交互和信息交換。
(五)檢驗(yàn)實(shí)施效果,并評價(jià)結(jié)果
在項(xiàng)目化教學(xué)過程中,教師應(yīng)實(shí)時(shí)記錄工作狀態(tài),并密切關(guān)注每個環(huán)節(jié)的進(jìn)展情況。
優(yōu)化過程:參與課堂教學(xué)、實(shí)驗(yàn)教學(xué)及畢業(yè)設(shè)計(jì)等環(huán)節(jié),深入了解其教學(xué)模式的整個過程,并展示相應(yīng)的理論成果。在特色教學(xué)模式的基礎(chǔ)上,將理論成果實(shí)際應(yīng)用于教學(xué)中,反復(fù)優(yōu)化實(shí)踐中出現(xiàn)的錯位問題,并探索出最佳方案。
檢驗(yàn)結(jié)果:選取部分教學(xué)班作為試驗(yàn)點(diǎn),對其進(jìn)行項(xiàng)目化教學(xué)模式改革,并對實(shí)施效果進(jìn)行定量分析。經(jīng)過反復(fù)試驗(yàn)與優(yōu)化,最終形成效果良好的高校編程類課程教學(xué)模式,為創(chuàng)新型人才培養(yǎng)提供有力的理論指導(dǎo)。同時(shí),組織學(xué)生參與各類人才選拔和學(xué)科競賽,以檢驗(yàn)學(xué)生的學(xué)習(xí)效果。
定性能力評價(jià):通過組織學(xué)生參與各類人才選拔競賽、學(xué)科競賽,以及基于各種創(chuàng)新創(chuàng)業(yè)項(xiàng)目的實(shí)踐表現(xiàn),可以有效檢驗(yàn)學(xué)生的學(xué)習(xí)效果。
三、結(jié)語
培養(yǎng)軟硬件技術(shù)型人才是時(shí)代所需。因此,實(shí)施編程能力的提升方案能有效解決高分低能的問題,將知識模塊與思維訓(xùn)練有機(jī)結(jié)合。在基于OBE理念的項(xiàng)目化教學(xué)方案實(shí)施過程中,不僅有效培養(yǎng)和鍛煉了學(xué)生的創(chuàng)新能力,還提升了他們的專業(yè)素養(yǎng),從而實(shí)現(xiàn)了人才培養(yǎng)的多重目標(biāo)。
[ 參 考 文 獻(xiàn) ]
[1] 劉國瑞.國家重大戰(zhàn)略轉(zhuǎn)換期高等教育現(xiàn)代化的定位與思路[J].高等教育研究,2020,41(5):1-9.
[2] 安勇.工程教育專業(yè)認(rèn)證改進(jìn)工作質(zhì)量提升的深度思考[J].中國高等教育,2018(23):38-40.
[3] 耿曉偉.基于OBE理念的實(shí)踐教學(xué)體系改革:以安全工程專業(yè)為例[J].實(shí)驗(yàn)技術(shù)與管理,2019,36(7):192-196.
[4] 張男星.以O(shè)BE理念推進(jìn)高校專業(yè)教育質(zhì)量提升[J].大學(xué)教育科學(xué),2019(2):11-13.
[5] 楊長龍,李莉,賈宏葛,等.基于OBE的人才培養(yǎng)目標(biāo)制定機(jī)制及程序[J].高分子通報(bào),2019(12):74-77.
[6] JANSSEN T , BERKVENS R , WEYN M . RSS?based localization and mobility evaluation using a single NB?IoT cell[J]. Sensors, 2020, 20(21):6172.
[7] 丁一鈞,聶電開,武存山.基于北斗系統(tǒng)和物聯(lián)網(wǎng)的野外圖像采集設(shè)備防盜定位系統(tǒng)設(shè)計(jì)[J].物聯(lián)網(wǎng)技術(shù),2020,10(9):31-32.
[8] 郭起軒,仲梁維.基于安卓平臺的重點(diǎn)設(shè)備遠(yuǎn)程監(jiān)測系統(tǒng)設(shè)計(jì)[J].軟件導(dǎo)刊,2018,17(4):115-117.
[9] 王高杰,靳東安.基于NB?IoT的全球定位設(shè)計(jì)與實(shí)現(xiàn)[J].中國新通信,2020,22(1):28-30.
[10] 姬生月,孫嘉文,宋云記,等.基于北斗短報(bào)文的遠(yuǎn)海實(shí)時(shí)精密單點(diǎn)定位[J].國防科技大學(xué)學(xué)報(bào),2021,43(6):74-84.
[責(zé)任編輯:梁金鳳]