摘要:針對傳感器教學枯燥乏味、資源匱乏的問題,我校引入了Arduino作為傳感器教學實踐平臺。Arduino具有開源、易學易用、設計靈活等優點,支持多種傳感器擴展模塊且易于編程,可以完成紅外遙控、光電傳感器、霍爾傳感器、溫度傳感器、超聲波傳感器等各種傳感器實驗。通過引入Arduino平臺,可以激發學生對科學的興趣和好奇心,培養他們的實踐能力和創新精神。總之,Arduino平臺在傳感器教學中具有十分廣闊的應用前景,我校的經驗可以為傳感器教學的改進和發展提供有益的參考和借鑒。
關鍵詞:傳感器教學;Arduino簡介;實驗教學
1概述
傳感器教學是現代工程教育中不可或缺的一部分,它通過培養學生對物理世界的觀測和量化能力,以及對數據采集和處理的技能,為學生提供了實踐應用科學知識的機會。隨著科技的不斷發展,傳感器教學的重要性也越來越受到關注。然而,在傳感器教學中存在著一些問題,如傳統教學方法缺乏趣味性和實驗性,學生參與度不高,以及教學資源有限等。
為了解決這些問題,近年來,Arduino平臺在傳感器教學中得到了廣泛的應用。作為一種開源的硬件和軟件平臺,Arduino可以通過連接各種傳感器實時獲取環境數據,并將其通過數字信號進行處理。這使學生可以通過實際操控傳感器和編程來感知和理解物理世界的規律,有效提高了傳感器教學的趣味性和實用性。
筆者作為廣東醫科大學的專任教師,講授本科生的“智能醫學傳感器”課程(省級一流本科課程)已經兩年,充分利用了Arduino平臺開展自己的傳感器實驗教學,將積累的一些實踐經驗分享在此,拋磚引玉,供各位教師同行參考,共同學習進步。
2Arduino簡介
Arduino是意大利工程師MassimoBanzi與DavidCuartielles研發設計的一款基于AVR單片機的開源電子平臺。它包含各種型號的Arduino板(硬件)和Arduino集成開發環境(軟件)。Arduino能通過各種各樣的傳感器來感知周圍環境,進而控制LED燈亮滅、揚聲器發聲和馬達旋轉等來實現各種交互式應用。Arduino最大的特點是“開源”,其開源協議允許任何人使用、復制、修改和分發該平臺,這促成了Arduino的高度靈活性和可擴展性,吸引了大量的開發者和創新者。在Arduino的開源社區,全世界的開發者都參與到Arduino的開發中,貢獻了大量的代碼、教程、示例和模塊,為Arduino的發展提供了豐富的資源,幫助了新手快速入門,同時也為有經驗的開發者提供了深入研究和探索的機會。
與傳統的傳感器實驗平臺[見圖(a)]相比,基于Arduino的傳感器實驗套件[見圖(b)]具有多方面的優點。首先,Arduino平臺的開源性使教師和學生可以自由獲取和分享各種教學資源,從而豐富了教學內容和方法。其次,Arduino具有簡單易學的特點,即使是初學者也可以很快上手,并且可以通過編程進行個性化的功能實現,激發學生的創造力和實踐能力。此外,Arduino支持多種編程語言和開發環境,使教師可以根據學生的不同水平和興趣進行靈活的教學設計和組織。另外,Arduino平臺的低成本也使更多的學校和教育機構可以采用這種方法開展傳感器教學,促進了教育資源的共享和普及。
3傳感器實驗設計
在Arduino開源社區中,與Arduino兼容的可擴展的開源傳感器模塊多達168種。在我校所采購的國產Arduino傳感器套件中,包含可擴展的傳感器模塊共37種[見圖(b)],支持溫度傳感器、濕度傳感器、光線傳感器、壓力傳感器等多種實驗,配合Arduino軟件編程,能夠實現各種不同的功能。由于篇幅所限,本文僅簡單介紹其中的五種傳感器實驗。
3.1紅外遙控實驗
紅外遙控裝置包括紅外發射器與紅外接收器兩個部分。紅外發射器是一種紅外線發射二極管,可以將低頻或高頻的電信號轉換成載波頻率38kHz的光信號,通過發射紅外線將信號傳遞給接收裝置。紅外接收器為IC化的一種受光元件,其內部是將光電二極管(俗稱接收管)和集成IC共同組合封裝而成,主要接收38kHz頻率的紅外線,而對其他頻率段的紅外信號不敏感。這樣,遙控器發出載波38kHz頻率的紅外線,被接收器接收并識別,從而完成一次通信[3]。
在實驗中,我們通過Arduino編程識別來自遙控器的按鍵信號(開燈或關燈),從而控制Arduino主板上的LED燈亮或滅。按下遙控器上的某個鍵時,遙控器上的發射器發出紅外線,然后被Arduino主板上的紅外接收器接收,調用IRremote庫中的decode函數解碼后,識別出按鍵的編號(開燈或關燈)。若為開燈鍵,則控制Arduino主板上的D13口連接的LED亮起;若為關燈鍵,則控制此LED熄滅。
3.2U型光電傳感器實驗
U型光電傳感器是一種對射式光電傳感器,整體呈U型。它由一個發射端和接收端組成,分別位于U型的兩側。發射器中的LED一直不停地發射紅外光,然后光線被對側的接收器檢測到[4]。如果發射器和接收器之間的光束被障礙物擋住,則接收器將檢測不到入射光,導致其輸出電平發生改變。因此,它可以檢測光線是否被障礙物擋住,廣泛用于速度測量、物體檢測、計數和定位等場合。
在實驗中,我們通過Arduino編程來檢測U型光電傳感器中間的光線是否被障礙物擋住。若被擋住,則控制Arduino主板上的D13口連接的LED亮起;若未被擋住,則控制此LED熄滅。以此模擬工廠中的限位開關的工作原理,當傳送帶運行到某個位置時,傳送帶上的凸起部分會遮擋住U型光電傳感器中間的光線,從而觸發LED亮燈報警。
3.3霍爾傳感器實驗
霍爾傳感器是基于霍爾效應制作的一種磁場傳感器。霍爾效應是磁電效應的一種,它是指當導體通過均勻的磁場時,載流子的自然電子漂移導致磁場對這些載流子施加洛倫茲力,造成了電荷分離,使其底部或頂部積聚了正電荷或負電荷,從而產生電壓[5]。霍爾傳感器的應用非常廣泛,可用于測量磁場、電流、位移、壓力、振動、轉速等。
在實驗中,我們使用的是開關型霍爾傳感器,開關霍爾傳感器由電壓調節器、霍爾元件、差分放大器、施密特觸發器和輸出端子組成,輸出布爾值(高電平或低電平)。當霍爾傳感器接近磁鐵時,傳感器的引腳A0的值發生改變,當該值超過電位器設定的閾值時,將輸出低電平,相應的LED燈亮起。反之,當霍爾傳感器遠離磁鐵時,傳感器的引腳A0的值發生改變,當該值低于電位器設定的閾值時,將輸出高電平,相應的LED燈熄滅。
3.4溫度傳感器實驗
溫度傳感器是一種能夠將溫度這個非電物理量轉換成電信號的裝置,其種類繁多。根據材料和結構的特點,常見的溫度傳感器包括熱電阻和熱電偶兩種。熱敏電阻是熱電阻中的一種,利用半導體材料對溫度敏感的特性制成。根據其感溫特性,熱敏電阻又分為負溫度系數熱敏電阻和正溫度系數熱敏電阻。實際生活中,大多數熱敏電阻是負溫度系數,其電阻值隨溫度升高而降低[6]。由于熱敏電阻對溫度的變化非常敏感,所以在工業自動化、醫療設備、環境監測、農業現代化等領域得到了廣泛的應用。
在實驗中,我們所使用的是負溫度系數熱敏電阻模塊。該模塊除了可以對溫度進行檢測外,還有內置了一個比較器LM393,可以同時輸出數字和模擬兩種信號,可用于溫度測量和溫度報警。當火焰接近熱敏電阻時,其電阻值會降低,一旦降到低于比較器設定的閾值,將輸出高電平。通過Arduino編程可以檢測到此高電平,并驅動連接到Arduino主板的D13上的LED燈亮起報警。反之,當火焰熄滅時,熱敏電阻的溫度逐漸降低,其電阻值會升高,將輸出低電平,驅動LED燈熄滅。同時,我們還可以編程讀取與熱敏電阻相連的A0口的模擬電壓值,并調用Serial.print()函數將電壓值顯示在電腦上,通過ArduinoIDE中的串行監視器上實時察看。
3.5超聲波傳感器距離檢測實驗
超聲波傳感器由壓電晶片組成,兼具有發射和接收超聲波的功能。當它發射超聲波時,利用壓電材料的逆壓電效應,將高頻電振動轉換為機械振動產生超聲波,將電能轉換成機械能;當它接收超聲波時,利用壓電材料的正壓電效應,將超聲波振動轉換為電信號,將機械能轉換成電能。
超聲波測距的原理類似于蝙蝠的回聲定位,是通過測量超聲波從發射到遇到障礙物反射回來的時間,計算出發射點到障礙物的距離[7]。具體來說,超聲波傳感器首先發出超聲波信號,然后接收器會接收到障礙物反射回來的信號。通過測量信號發射和接收的時間差,就能夠計算出傳感器與障礙物之間的間距。由于超聲波在空氣中傳播速度相對穩定,約為340m/s,因此這種方法具有很高的精度和可靠性。
在實驗中,我們用Arduino單片機的計數器對超聲波信號的發送和接收之間的延遲時間進行計數,計數器的輸出值就是回聲返回時間。因為單片機的時鐘周期T=1/晶振頻率,往返距離=340m/s×(計數器的時鐘數×時鐘周期),所以傳感器與障礙物之間的單程距離=往返距離/2=340m/s×(計數器的時鐘數×時鐘周期)/2。為方便查看所檢測到的障礙物的距離,還可以將計算出的數值顯示在液晶顯示屏上,或通過串口顯示在電腦的串行監視器上。
4結論
Arduino作為一種開源硬件平臺,具有低成本、易編程和易擴展等特點,在傳感器教學中具有極大的應用價值。首先,Arduino提供了豐富的傳感器接口和庫函數支持,可以方便地與各種傳感器進行連接和數據采集。其次,Arduino的開放性和靈活性使學生可以自由組合各種傳感器和外設,進行創新性的實踐和設計。使用Arduino進行傳感器教學,可以使學生更加直觀地理解傳感器的原理和應用,提高他們的實踐操作能力和創新設計能力。
在教學實踐中,筆者感觸最深的一點是,傳統傳感器實驗箱價格不菲(售價約8500元),且操作不便,學生在實驗過程中畏首畏尾、害怕出錯;而Arduino傳感器套件非常便宜(售價約400元)且操作方便,學生在實驗過程中敢于動手、勇于創新。通過Arduino,學生可以自己動手搭建傳感器實驗電路,并編寫相應的程序進行數據采集和處理。這種實踐性的教學方式可以提高學生對傳感器原理和應用的理解,激發他們的學習興趣,并培養他們的創新能力和解決實際問題的能力。
此外,使用Arduino進行傳感器教學還可以給學生提供一個開放性的平臺,讓他們自由地進行實驗和設計,從而培養他們的創造力和創新思維。其中,有一個學生基于Arduino平臺自主創新,綜合運用紅外傳感器、光電傳感器、壓力傳感器等多方面知識,設計了一款能定時、定量、定點給實驗小鼠喂食的自動化裝置,將實驗人員從日常枯燥的小鼠喂食工作中解放了出來,該作品在我校電子設計競賽中榮獲二等獎,且發表了相關論文。
總之,Arduino作為一種開源硬件平臺,在傳感器教學中具有廣闊的應用前景。進一步研究和推廣Arduino在傳感器教學中的應用,對于提高學生的綜合素質和創新能力具有重要意義。
參考文獻:
[1]程瑩.將Arduino技術引進傳感器與自動檢測技術的課程改革[J].現代職業教育,2019(33):112113.
[2]胡代弟.基于Arduino套件的傳感器原理課程教學改革探索[J].電子測試,2019(21):138140.
[3]梁劍平.基于紅外遙控的傳感器實驗設計與實現[J].物聯網技術,2023,13(01):9899+103.
[4]黃俊.基于PWM及槽型光電傳感器的測速與調控系統[J].電子設計工程,2018,26(01):157160+165.
[5]牛小方.淺析霍爾傳感器在汽車電路控制系統中的應用[J].模具制造,2023,23(10):235237.
[6]董曉宇,孟海彥,孔令布.基于STM32的熱敏電阻分壓式測溫系統設計[J].計算機與數字工程,2018,46(04):846850.
[7]付曉云.基于Arduino典型傳感器智能避障小車的設計開發[J].精密制造與自動化,2021(02):2529.
基金項目:2022年度廣東省本科高校在線開放課程指導委員會研究課題《“AI技術+AI應用場景”培育智能醫學工程新工科雙創人才在線開放課程創新研究》(項目編號:2022ZXKC187);2021年度廣東省基礎與應用基礎研究基金區域聯合基金——青年基金項目(項目編號:2021A1515110494)
作者簡介:彭榮超(1987—),男,漢族,湖南岳陽人,博士,副教授,研究方向:穿戴式醫療設備。
*通訊作者:馬莎(1984—),女,漢族,陜西西安人,博士,講師,研究方向:康復系統研發、機器視覺應用、生物醫學工程建模。