程建平
(山西工程職業學院,山西 太原 030062)
“新工科”建設和發展以新經濟、新產業為背景,需要樹立創新型、綜合化和全周期工程教育的新理念,構建新興工科和傳統工科相結合的學科專業的新結構[1]。 “物聯網應用系統設計”課程培養創新型、實踐型的人才的需求越來越迫切。 在教學過程中還存在一些問題:一方面,一個完整的物聯網應用系統分為3 個層次(感知層、網絡層和應用層),完成一個物聯網應用系統所需要的知識涉及電子、通信、計算機等多個學科,課程本身就是軟硬件相結合,內容多且系統性較強,要在有限的學時內掌握物聯網系統概念和理論知識,具有物聯網應用系統開放能力,其難度可想而知[2-3]。 另一方面,目前控制中心所需芯片更新迅速,新嵌入式芯片的推出必然帶來新的實驗設備,而高校考慮到成本問題無法及時更新設備,這就導致多數高校對人才的培養與市場需求相脫節[4],教學質量無法得到有效提高。
“物聯網應用系統設計”教學需要與時俱進,以市場為導向,不斷在教學中引入新技術、新方案,培養市場需要且能用的人才。 而虛擬仿真教學順應了教育信息化的發展趨勢現實需要,對教育質量的提升和實驗教學改革的深化產生了積極而重要的影響[5]。
通過對相關文獻的搜集,虛擬仿真技術(Proteus)應用于“嵌入式系統”等硬件課程的實驗教學已有先例[6],但是“物聯網應用系統設計”課程中不僅僅包括硬件開發,還需要應用層的數據展示,本文提出利用LabVIEW 軟件進行上位機編程,實現數據的存儲與展示。 該虛擬仿真平臺實現虛實結合,不受限于時間場所,很好地適應了高校學生的學習特點,又符合課程的編排特點,將理論和實際一體化落到實處。 以豐富的工程實踐為主線啟發學生的創新思維,培養學生的創新精神,使學生具備物聯網應用系統的獨立開發能力,對于培養學生的創新創業能力有很好的促進作用。
基于學校課時有限、內容繁雜、實驗設備更新不及時和教學技術輸出與企業脫節等問題,本文通過構建Proteus 和LabVIEW 的虛擬仿真平臺,并將該平臺應用于“物聯網應用系統設計”的課堂展示中以解決這些問題。
Proteus 是一款功能強大的虛擬仿真軟件,是世界上著名的EDA 工具[7];LabVIEW 是NI 公司開發的圖形化編程開發平臺,具備強大的實時數據處理功能與顯示功能。 本平臺應用于“物聯網應用系統設計”的教學過程中,實現虛擬仿真技術與教育教學相結合,有以下優點。
第一,Proteus 具有豐富的元器件資源,能夠提供多種虛擬儀器。 一臺電腦就相當于一個先進的電子實驗工作臺,實驗過程中不必擔心虛擬的元器件及儀器會損壞,同時,不論在元器件及儀器的采購上,還是在更新換代上,都極大程度地節約了實驗室的資金投入。
第二,Proteus 操作界面簡單,易學易用。 學生普遍學習基礎較差,缺乏自信心,虛擬的實驗可以反復操作,不斷試錯,讓學生學習的信心倍增。
第三,LabVIEW 作為一個專為測試測量設計的編程語言,使用了工程師們最熟悉的圖形化的編程方式,能夠幫助學生高效快速的開發測試應用。
該虛擬仿真平臺首先充分利用MDK 軟件實現代碼的編寫,將編譯后的HEX 文件加載在Proteus 軟件繪制的電路中,可以直觀地查看到實際硬件運行后的效果,接著利用LabVIEW 實現數據的采集存儲展示,圖形化界面效果更為直觀明了。 該虛擬仿真平臺能夠讓學生不受時間和硬件條件的局限,隨時仿真進行實踐操作,在有限的學時內更好地掌握物聯網應用系統設計所需知識,提高學習效果。
(1)利用嵌入式芯片STM32 為控制中心,進行數據的采集,在上位機上可以進行數據的查看,數據查看可以是表格的形式也可以是圖表形式。
(2)系統效果可以利用Proteus,VI 等多種方式查看實現的效果。
根據需求,學生能夠自主選擇設計一款數據檢測系統,可以提高學生的創新能力和實踐能力,例如學生選擇設計一款溫度檢測系統,該系統將采集到的溫度數據進行展示,也可以將歷史數據存儲于數據庫中,系統結構如圖1 所示。

圖1 系統結構
該系統包括溫濕度傳感器,STM32F103R6 的最小系統、窗口調試工具Virtual Terminal、COMPIN 等元件,溫濕度傳感器可以進行溫濕度的設置,STM32F103R6芯片可以實現數據的處理及發送,窗口調試工具可以查看發送的數據,COMPIN 元件實現硬件系統與上位機的通信,同時添加LCD1602 顯示屏實時顯示當前的溫度。 完成電路設計后利用編程軟件Keil 實現數據的采集與發送,核心代碼如圖2 所示。

圖2 核心代碼
LabVIEW 是一種基于圖形化編程語言的虛擬儀器軟件開發平臺。 利用VISA 實現LabVIEW 的串行通信,VISA 作為測試程序和數據傳輸總線的中間層為應用程序和儀器總線的通信建立了通道。 利用LabVIEW設計實現了溫度檢測系統,觀測者通過此平臺可以方便地觀察串口通信狀態,直觀地觀察當前溫度值以及歷史采集的數據。 該系統主要由串口配置模塊、數據顯示模塊、歷史數據查看模塊組成。 串口配置模塊中采用VISA 模塊實現與串口之間的通信,運行前需要配置好VISA 資源名稱也就是COM 端口。 STM32 芯片利用USART 串口將數據通過COM 口發送到上位機,上位機接收數據無誤后顯示通信正常,并在數據顯示模塊中顯示接收的數據值。 歷史數據查看模塊利用Excel 表格進行歷史數據的再現。 不僅可以動態顯示采集的溫度數據,還可以將數據存儲于MySQL 數據庫中,以便后續使用,可用于評估溫度的狀態,系統界面如圖3 所示。

圖3 系統界面
將編譯后的HEX 文件加載于芯片上,啟動溫度采集,將數據傳輸到系統上,運行后的效果如圖4 所示。圖中左側的儀表盤顯示最新一次溫度為9 攝氏度,通信正常,右側表格顯示了歷史的溫度數據及上報時間,達到預期目標。

圖4 運行效果
將基于Proteus 和LabVIEW 的虛擬仿真平臺應用于“物聯網應用系統設計”課程教學中,可以使學生全面了解硬件電路的設計、仿真和測試,熟練掌握上位機編程,利用該平臺進行獨立設計和解決實際問題,具備物聯網應用系統設計開放能力。 該平臺為理論與實踐相結合提供了有效的教學方法,一定程度上能夠提高教學效果。