夏侯洪濤











編者按:從本期開始,欄目將會邀請更多的老師陸續添加一些生物、物理、化學學科的信息技術實驗,通過傳感器的制作和應用講解探究的過程。希望大家能通過這些案例,初步了解開源技術在科學實驗中的應用方法。
● 實驗簡介
探究植物對環境溫度的影響是一個比較經典的實驗,其目的是驗證生物在其生長過程中會不會對周圍的環境產生影響。生活經驗告訴我們,任何生物都必須有一定的生活環境,環境中的非生物因素(陽光、溫度、空氣、水……)和生物因素(生物之間的相互關系)都會對該生物產生很大的影響,這種影響是顯性的,是我們很容易觀察和理解的,但生物對環境的影響則是隱性的,是我們容易忽略的,這個實驗就是為了驗證生物對環境是否有影響而設計的。
● 實驗目的
通過測量同一時間段內裸地、草地、灌叢中的溫度值,并對數據進行比較,來驗證綠色植物能否對空氣的溫度產生影響。
● 設計思想
1.硬件
在Arduino板上添加溫度傳感器,通過溫度傳感器獲取空氣的溫度值,并通過藍牙模塊將溫度數值傳輸至計算機。
2.軟件
使用Scratch編程控制Arduino的運行,并且在Scratch編程中利用等待指令控制數據采集的時間間隔,利用鏈表功能存儲一定時間內采集的數值,最后將數值輸出到電子表格進行數據分析,從而最終得出實驗的結論。
3.測量方式
將實驗裝置分別放置于裸地、草地、灌叢等合適位置,同時啟動程序進行數據采集,從早上9點到下午4點,每間隔10分鐘采集一次數據。(如果時間不允許也可以采用早中晚分別采集1小時,間隔時間為5分鐘)
● 實驗器材
基于以上的思考,我們需要的實驗器材有:Arduinouno X3、Arduino Sensor Shield V5.0傳感器擴展板X3、LM35溫度傳感器X3、傳感器連接線、藍牙模塊、電池盒。
需要特別說明的是,在本實驗中我們采用了LM35溫度傳感器(如圖1)。LM35是由國半公司所生產的溫度傳感器,它具有很高的工作精度和較寬的線性工作范圍,該器件輸出電壓與攝氏溫度線性成比例,每升高1℃,輸出電壓增加10mV。LM35無需外部校準或微調,可以提供±1/4℃的常用的室溫精度。LM35溫度傳感器模塊可以通過一根3P傳感器連接線直接插到Arduino Sensor Shield V5.0傳感器擴展板上。
圖1
藍牙模塊可以使我們脫離USB線的束縛(如圖2),在本實驗方案中,Arduino作為下位機,主要起到采集數據的功能,要將數據傳輸到計算機中進行存儲和處理,傳統的方法是通過USB電纜,但在S2A環境中,我們可以通過藍牙模塊進行數據的傳輸,其有效傳輸距離為10米,大大增加了采集的靈活性。
圖2
● 實驗步驟
1.組裝并調試實驗設備
(1)器材組裝
首先將擴展板和Arduino板插接起來,然后用一條3P的連接線將LM35溫度傳感器連接到擴展板的模擬接口A0,連接好后,將電池盒的插頭插入Arduino的電源接口,當Arduino板上的指示燈亮起來時就說明我們已經完成了硬件的連接工作,圖3是連接好的設備。
圖3
當然,為了提高測量的精確度,我們可以用紙盒做一個簡易的百葉箱,以避免太陽和風的影響。
(2)設備連接
接下來,我們要做的就是通過計算機中的藍牙適配器和Arduino的藍牙模塊將Arduino和計算機連接起來,從而實現在計算機上編程控制Arduino的工作,其過程如下:①鼠標右鍵點擊計算機藍牙適配器圖表,在彈出的菜單上選擇“添加設備”。②在彈出的對話框中選擇HC-06,稍微等待一會,計算機會提示設備安裝成功。③重復步驟1,選擇“顯示Bluetooth設備”,在打開的窗口中就會有HC-06的圖標,在圖標上點擊右鍵,選擇屬性,在屬性窗口中點擊“硬件”選項卡,查看藍牙模塊使用的串口號。
然后,我們需要在S2A環境中設置通訊的端口,其過程為:①在程序中找到“啟動s2a”,單擊鼠標右鍵,在菜單中單擊“編輯”。②計算機會使用記事本打開s2a,將文本中最后一行的串口號修改為我們自己設備所使用的串口號,保存退出(如圖4)。
圖4
設置完成后,我們就可以運行S2A程序,當出現如圖5的界面時,說明我們已經順利通過藍牙方式將Arduino和計算機連接起來了。
圖5
(3)編寫程序
接下來,我們將打開Scratch程序,開始編寫程序。
因為溫度傳感器是接在模擬引腳A0上的,所以,我們將通過這樣的
指令將端口A0設置為輸入,以便于確保程序能從A0端口獲取數值。
而后新建一個變量temp,這里要說明的是,我們用LM35溫度傳感器測量環境溫度時,直接讀取的數值并不是溫度的值,而是此時LM35輸出的電壓值,這個值要經過運算才能獲取溫度值,所以我們會在這里設置一個變量,用于存儲計算后得到的溫度值。
接著新建一個鏈表“溫度記錄”,用于存儲一定時間內獲取的溫度的值。
在程序開始時,需將變量和鏈表都清空,所以我們在程序中需添加這樣兩條指令(如圖6)。
圖6
因為每隔1小時要測量1次,因此我們還需要設置一個等待時間,要說明的是這個等待時間需根據實驗方案靈活設置,如我們要每隔10分鐘測1次,這里就設置為600秒。
最終我們的程序是這樣的,其中一系列的運算是為了我們最后的溫度是一位小數做的鋪墊(如圖7)。
圖7
程序寫完后,我們可以將間隔時間改短一些,測試實驗設備是否能正常運行,如果一切正常我們就可以進行下一步的實驗。
2.選擇天氣和位置
選擇合適的天氣,將3套實驗裝置分別放置到裸地、草地、灌叢的合適位置。
3.采集數據
同時啟動程序,進行數據采集,從早上8點開始,到下午5點為止,每隔1小時采集1次數據。
4.導出數據,進行數據分析
需要特別說明的是,由于季節原因,本文所用的數據為2014年9月11日采集的數據。
我們將裸地、草地、灌叢三個鏈表中的數據導出到電子表格中,如圖8所示。
然后我們將三地一天的氣溫值生成折線圖進行比較(如圖9)。
5.根據數據分析,得出實驗結論
①三地氣溫均為早晚低中午高。②同一時間氣溫最低的是灌叢,其次是草地,最高的是裸地。③植物的蒸騰作用受到陽光強度的影響,植物通過蒸騰作用可以降低局部環境的溫度。④植物能夠對所生長的環境造成一定的影響。
根據分析的結果,我們還需要填寫實驗報告。
● 實驗拓展
在本實驗中,我們通過LM35溫度傳感器測量環境中的溫度,LM35溫度傳感器是一種常用的模擬量的傳感器,與之類似的模擬量傳感器還有光敏傳感器、土壤濕度傳感器、降雨傳感器、氣體傳感器(如酒精傳感器、一氧化碳傳感器、二氧化碳傳感器)等,這類傳感器的特點是發出的是連續信號,用電壓、電流、電阻值等表示被測參數的大小。傳感器測量的數據經過相應公式的計算就可以得到我們需要的測量值,他們在使用方式上也基本相同,在實際使用中,大家可以參考LM35溫度傳感器的使用方法。
我們常用的傳感器除了模擬量的傳感器外,數字量傳感器(也叫開關量傳感器)也經常用到,如測空氣溫濕度的DHT11傳感器、碰撞傳感器等,它們在使用的方法上和模擬量就有很多區別,我們將在今后的文章中與大家分享。