



摘要:以“全國大學生集成電路創新創業大賽職業技能賽”曾益慧創杯初賽賽題為例,分析了LABVIEW程序設計中涉及的文件操作、數組處理、循環結構、條件判斷等知識點的應用,將企業中的真實項目引入到教學中,探討“以賽促教、以賽促學”教學模式在《測控技術》課程中的應用效果。研究結果表明,該模式能夠有效激發學生的學習興趣,促進理論知識與實際應用的結合,提高教學質量和學生綜合素質。
關鍵詞:測控技術;以賽促教;以賽促學;曾益慧創杯;LABVIEW
中圖分類號:G642 文獻標識碼:A
文章編號:1009-3044(2024)27-0118-03
0 引言
“以賽促教、以賽促學”是一種教育理念,旨在通過競賽活動來促進教師的教學能力和學生的學習積極性。在實際應用中,這種模式可以通過設計與課程內容緊密相關的競賽項目,讓學生在準備和參與競賽的過程中加深對知識的理解和應用能力。如侯杰和雷瓊[1]以中職組化工生產技術國賽為例,通過案例分析,探討了競賽在促進學生學習、教學質量和創新能力方面的作用;李娜[2]通過問卷調查和訪談,分析了“以賽促教、以賽促學”模式在體育教學中的應用效果。“以賽促教,以賽促學”教學模式在不同學科和層次的教育中均顯示出顯著的應用價值。通過參與競賽,學生不僅能夠在實踐中掌握知識和技能,還能培養團隊合作和創新精神,而教師也能通過這一過程優化教學方法,提升教學質量。
《測控技術》課程通常包含傳感器技術、自動控制理論、信號處理、數據采集與處理等內容,旨在培養學生掌握現代測控系統的設計、實施和維護能力。課程主要借助虛擬儀器技術,利用LABVIEW平臺和高性能的模塊化硬件,結合高效靈活的軟件來完成各種測試、測量和自動化應用。課程需注重理論與實踐相結合、教學內容需要不斷更新、教學方法需要創新,目前主要存在的問題有:已有設備型號單一、設備完好率低、學生實際軟硬件聯調的機會少。
下面以“全國大學生集成電路創新創業大賽職業技能賽”曾益慧創杯的初賽賽題解析過程為例,說明通過比賽,達到以賽促教、以賽促學的效果。
1 比賽任務
全國大學生集成電路創新創業大賽職業技能賽是由工業和信息化部人才交流中心主辦的一項國家級競賽。該賽事旨在服務國家集成電路產業發展大局,創新集成電路產業人才培養模式,為集成電路產業提供優秀的后備人才。
參賽隊伍將會拿到一個芯片測試數據分析程序,LABVIEW編程,考查點在提供的比賽程序中用綠色高亮的注釋進行了標識,參賽隊伍需要完成這4個考查點,方可實現芯片測試數據分析程序,提供的比賽程序位于桌面的桌面賽題程序文件夾中,程序前面板已經給出,無需改變前面板上的內容,程序最終實現的樣子如附件中視頻所示[3]。
2 比賽考查點解析
2.1 文件讀取與路徑設置
在LABVIEW 中,文件I/O 選板提供了一系列函數,用于實現文件的讀寫操作,支持文本文件、電子表格文件、二進制文件、測量文件等多種格式。
如圖1所示的考查點1中要求將已給的Excel文件中的內容調取出來,則需要用到“讀取帶分隔符的電子表格文件”VI。
賽題已給了一部分程序框圖,需要進行補充,若對已給的函數不夠熟悉,可在函數圖標上右擊,將顯示項\標簽勾選,如前三個函數分別是當前VI路徑、拆分路徑、創建路徑函數;若對函數使用有疑問,可以借助幫助菜單,顯示即時幫助,將鼠標移動到函數上,可查看具體的函數使用方法及案例等。
對于文件的寫入與讀取,首先要搞清文件存放在哪里,即文件的路徑;其次文件名叫什么,即需要寫進去保存的文件或從哪個文件讀取內容,所以編程時主要要關注路徑和文件名兩個部分。
文件路徑可以用兩種形式設置:基路徑+文件名或路徑常量。
2.1.1 在已給的程序基礎上添加完善路徑
從已有的程序可以看出,要讀取文件名為“測試數據”的Excel文件中的內容,則創建路徑函數的輸入端需要補充的名稱或相對路徑為文件“測試數據.xls”。注意,要將后綴.xls加上,否則運行時會出錯,提示找不到文件。
添加讀取帶分隔符的電子表格文件VI后,還應注意:這是一個多態VI,有雙精度、整型、字符串三種數據類型,默認的讀取數據類型為雙精度型,若直接與已給的“測試數據”顯示控件相連,則會出錯,提示連接的兩種數據類型不同,所以應將多態選擇為“字符串”。
運行后可在前面板上“測試數據”表格里將“測試數據.xls”電子表格文件的內容讀取并顯示出來。
2.1.2 使用基路徑和文件名設置文件路徑
件路徑可以簡化為用創建路徑函數,基路徑+ 文件名的形式設置,打開前面板上基路徑的對話框可以選擇需要讀取的文件,但要注意的是:基路徑要設置為文件的上一級目錄,否則運行時也會出現錯誤,提示文件找不到。這是因為借助基路徑+文件名的形式設置路徑時,若基路徑里也出現了文件名,則完整的路徑變成了C:\Users\陳光紅\Desktop\測試數據.xls\ 測試數據.xls,最后一級重復了,會找不到文件;若將基路徑改成C:\Users\陳光紅\Desktop,則可正常運行出結果。
2.1.3 使用路徑常量設置文件路徑
當已確定需要打開的文件位置時,也可以用路徑常量的形式設置路徑。如右擊測試數據.xls文件,查看屬性\位置,將位置內容復制、填寫到讀取帶分隔符的電子表格文件函數的路徑常量端,并加上文件名,也可以運行出正確結果。
2.2 數據提取與分析
賽題考查點2要求:完成Excel中單個參數的提取,找出DNLmax、DNLmin、INLmax、INLmin、THD、SINAD、SNR。
由于賽題要求提取的參數均為雙精度型數據,因此將“讀取帶分隔符的電子表格文件”VI的多態選擇設置為“雙精度”,即可將所有數據讀取為雙精度型數組。
2.2.1 索引數組函數的使用
賽題要求提取DNL和INL列數據的最大值和最小值,以及THD、SINAD、SNR等參數,因此需要使用“索引數組”和“數組最大值與最小值”函數進行數據處理。
使用“索引數組”函數,可以提取數組中的特定元素或子數組。使用索引數組函數時,關鍵是如何對其輸入端行和列賦值,當要找出某一行時,只需要對行賦值,列不需要賦值,如要找出表格中的標題,只需要給行賦值0,輸出的結果為子數組;當只需要找出某一列時,只需對列賦值,行不需要賦值,如要找出INL列的值,只需要給列賦值1,輸出的結果也為子數組;當需要找出某個元素時,對行和列都要賦值,如要找出THD 的值,則給行賦值1、列賦值2,輸出的結果為元素。
2.2.2 數組最大值與最小值函數的使用
數組最大值與最小值函數可以方便地找出數組中的最大值、最大值所在的位置、最小值及最小值所在的位置。
要注意的是本任務點中要找出DNL和INL的最大值與最小值,其查找的范圍不是整個表格,而是限制在DNL列和INL列。所以,先要用上述的索引數組函數找出DNL列和INL列,然后在兩個子數組的基礎上分別用數組最大值與最小值函數找出各自的最大值與最小值。
其程序框圖如圖2所示,任務點1和2運行的結果如圖3所示。
2.3 參數判斷與結果輸出
賽題考查點3要求:參數值需要和前面板給出的范圍作比較,例如DNLmin必須大于-1,DNLmax必須小于1,如果超出這個范圍,程序必須彈出一個小對話框提示,DNL參數不合格,并且對應的DNL的燈需要亮起;同理其余四個參數也一樣;任何一個參數報錯,最終都需要彈出該元件不合格的字樣。
根據賽題要求,DNL和INL的取值范圍為-1到1,THD、SINAD、SNR的取值應大于35。
2.3.1 順序結構的使用
賽題要求對5列數據分別與給定的范圍作比較,最后得出結論元件是否合格,已給的程序框圖中使用了層疊式的順序結構,選擇器標簽可在0-5切換,共有6幀。
在層疊式順序結構的第0幀,需要對DNL參數判斷是否在-1到1之間,若在此范圍,則DNL參數合格,否則DNL參數不合格,即根據DNL參數與所給的參數范圍作比較,結論有兩種情況:符合范圍要求和不符合范圍要求,也就是需要兩個分支,需要用條件結構[4]。其他幀也類似,需要將參數跟給定的范圍作比較后判斷參數是否合格。
2.3.2 條件結構的使用
在LABVIEW編程環境中,條件結構是一種決策結構,它允許根據不同的輸入條件執行不同的代碼路徑。條件結構的工作原理類似于傳統編程語言中的if-else或switch語句。LABVIEW的條件結構由一個分支選擇器和多個子程序框圖(分支)組成,分支選擇器根據輸入的值來決定激活哪個分支的代碼。
條件結構主要由三部分組成:①選擇器標簽;② 條件選擇器;③子程序框圖(分支),其各部分標注可參看圖4。
本賽題中條件結構是兩個分支,其選擇器標簽的值有兩個:真和假;條件選擇器的值是根據數據比較的結果:T和F即布爾型;子程序框圖(分支)是兩個分支。在真分支中不需做任何的操作,不需要編程;在假分支中,以第一幀里DNL參數為例,需對話框提示DNL參數不合格,且對應的DNL的燈需要亮起。需用單按鈕對話框函數,在其消息端創建常量,并輸入要顯示的提示信息“DNL參數不合格”,當對話框關閉時,其輸出端則返回TRUE,點亮布爾燈DNL,假條件分支的程序框圖如圖4所示。
其他幀里的條件結構的編程類似。
在使用條件結構時,需要注意以下幾點:1) 在多條件情況下,應設置默認分支以防止程序報錯;2) 數據流方向在條件結構中非常重要,確保數據正確流向所選分支;3) 如果某個分支不需要輸出數據,可以設置“未連接時使用默認”選項,以便在不接線時使用默認值[5]。
條件結構在LABVIEW中應用廣泛,特別是在需要用到比較、判斷、報警、提示等時,其典型的應用場景有:1) 面向用戶的界面跳轉功能:可以根據用戶的操作選擇執行不同的程序路徑;2) 狀態機框架:結合While循環和枚舉量,實現復雜的狀態管理邏輯。
在設計LABVIEW程序時,合理使用條件結構可以提高程序的邏輯清晰度和可維護性。
2.3.3 復合運算函數的使用
在考查點3中需要用到結構面板上的層疊式順序結構、條件結構,比較面板上的大于、小于函數,布爾面板上的與函數。這里需要注意的是:在LABVIEW 中,與函數通常設計為接受兩個輸入端,用于執行邏輯與運算。本考查點中在最后一幀要求前5個參數都符合要求時元件才合格,否則元件不合格,也就是前5 個參數與參考范圍值比較后要同時滿足要求(邏輯與)后若結果為真,則元件合格。若直接用于函數,只有兩個輸入端,需要兩兩相與,則需用多個與函數。而LABVIEW的函數庫中包含了可以接受多個輸入的復合運算函數,在布爾面板上取出復合運算函數,將其輸入端子從默認的2個端子擴展成5個,將前5個參數比較的結果連上復合運算函數的輸入端子,并將復合運算函數的模式切換為“與”,這樣就可以將前5個參數比較的結果直接相與,可簡化程序框圖。
2.4 程序循環控制
考查點4要求:程序需要實現整體循環運行,選擇測試數據文檔,點擊開始分析后,如果元件合格則程序繼續運行,程序終止的條件是元件不合格或者按下停止按鈕。
2.4.1 LABVIEW 中的循環結構
LABVIEW提供了兩種主要的循環結構:For循環和While循環,它們各自適用于不同的編程場景。
For循環用于執行確定次數的代碼塊。 While循環用于重復執行某個LABVIEW代碼塊,直至滿足給定條件為止。
2.4.2 循環停止條件
由于程序需要根據條件判斷是否繼續運行,因此采用While循環結構實現,While循環的關鍵在于設置合理的停止條件。
根據題目要求,當按下停止按鈕或者元件不合格時程序終止,則需將停止按鈕與元件不合格兩者用或函數運算后,結果送給循環停止條件。
3 結束語
通過分析集創賽職業技能賽曾益慧創杯初賽的考題,將《測控技術》中的主要知識點如何使用、使用中的注意事項等舉例說明,將行業中的真實項目引入課程教學,激發學生的學習潛能,使學生能夠提升自己的動手實踐能力、工程設計能力和創新能力,達到了“以賽促教、以賽促學”的目的。
本研究主要關注了曾益慧創杯的賽題對《測控技術》課程教與學的促進作用,未來需要研究更多的賽項、賽題在集成電路技術等專業中的“以賽促教、以賽促學”的作用。
參考文獻:
[1] 候杰,雷瓊“. 以賽促學,以賽促教,以賽促創” 提升人才培養質量:以中職組化工生產技術國賽為例[J].河南化工,2024,41(5):69-70.
[2] 李娜“. 以賽促教、以賽促學” 教學模式在高職體育教學中的應用與創新[J].現代職業教育,2024(8):134-137.
[3] 2024集創賽職業技能賽項杯賽題目:曾益慧創職業技能杯http://univ.ciciec.com/nd.jsp?id=758#_jcp=1.
[4] 何玉鈞,高會生.LabVIEW虛擬儀器設計教程[M].北京:人民郵電出版社,2012.
[5] 劉科,張微.虛擬儀器技術與應用[M].北京:機械工業出版社,2024.
【通聯編輯:光文玲】
基金項目:校研究性課程項目“電子級超純水制備設備的改進研究”(項目編號:20240500441196) ;校級在線精品課程建設項目“集成電路工藝與實踐”(項目編號:20230300441094)