本帖最后由 dxabdepl 于 2021-10-27 23:25 編輯
體溫計(jì)是我們生活中非常常見(jiàn)的健康用品,比較多見(jiàn)的主要有水銀體溫計(jì)、電子體溫計(jì)、紅外線體溫計(jì)。 如果在緊急情況下需要,但手頭上沒(méi)有現(xiàn)成的體溫計(jì)怎么辦呢? 作為一名愛(ài)鼓搗的創(chuàng)客,這都不是事兒!不就是一個(gè)溫度傳感器+一個(gè)控制器+一個(gè)顯示模塊解決的事兒嘛。 今天小蝸牛就給大家展示一個(gè)更加極致的、更具創(chuàng)客范的體溫計(jì)。 一、所需器件
蝸?刂破鳎和耆嫒軦rduino,支持手機(jī)編程
DS18B20:高精度單總線數(shù)字溫度傳感器
DS18B20是由Maxim Integrated(以前的Dallas Semicondu ctor)生產(chǎn)的數(shù)字溫度傳感器。它是市場(chǎng)上最受歡迎的溫度傳感器之一,在較大的溫度范圍(-55°C至+125 C)內(nèi)提供相當(dāng)高的精度(+0.5C),對(duì)于我們?nèi)粘I钪械臐穸葴y(cè)量包括體溫測(cè)量是綽綽有余了。由于傳感器的工作電壓為3.0至5.5V,因此可以與Arduino直接連接。 紅線為電源線(3.0V~5.5V),黑線為地線(GND),黃線為數(shù)據(jù)線。 二、連接電路 DS18B20傳感器的電源線接到蝸牛控制器的5V引腳,黑線連接到“接地”引腳,黃線連接至D2引腳。同時(shí),數(shù)據(jù)線要串聯(lián)一個(gè)5000歐姆左右的電阻上拉到5V。
三、編程實(shí)現(xiàn) 借用蝸?刂破髯詭У乃{(lán)牙串口組件,直接將采集的溫度值發(fā)送到手機(jī)上,不再需要額外的顯示模塊。 1.打開串口 在“串口”積木組中選擇“打開串口”積木,將其拖放到右側(cè)的“初始化區(qū)”,拼接如下。
注意:蝸?刂破鞯牟ㄌ芈时仨氃O(shè)置為115200 2.DS18B20獲取濕度值 DS18B20利用單總線協(xié)議控制,時(shí)序嚴(yán)格而且復(fù)雜。但好在Arduino的開發(fā)者們?yōu)樗_發(fā)了一整套的開發(fā)函數(shù),創(chuàng)客們只需調(diào)用幾條函數(shù)語(yǔ)句即可。而蝸?刂破鲗(duì)DS18B20的使用更勝一籌,因?yàn)槿讨恍枰粋(gè)積木。
DS18B20編程積木
DS18B20積木位于“傳感器”積木組中。將其拖放至程序區(qū)后,只需指定它的連接引腳(DATA管腳連在蝸?刂破鞯腎O端口編號(hào))即可,這里選擇2,即對(duì)應(yīng)D2引腳。 3.溫度測(cè)量顯示 蝸牛端將DS18B20采集到的溫度值通過(guò)藍(lán)牙串口發(fā)送到手機(jī)端,手機(jī)端通過(guò)接收后在“交互”窗口進(jìn)行顯示。 串口發(fā)送溫濕度值用到了“串口打印”和“串口打。〒Q行)”兩種串口發(fā)送積木。
- 前者輸出后不換行,保證下一次輸出內(nèi)容在同一行;
- 后者輸出后換行,下一次輸出內(nèi)容顯示在下一行。
最后,因?yàn)閱纹瑱C(jī)執(zhí)行速度很快,執(zhí)行上述語(yǔ)句大概只需要幾十微秒,為防止串口堵塞,必須加一個(gè)延遲等待,而且溫度也不需要特別快的顯示頻率。延時(shí)等待積木位于左側(cè)的“控制”積木組。這里每1秒顯示一次測(cè)量結(jié)果。 這些積木組合后拼接成如下的樣式。
完整的程序模塊
四、程序下載 1.蝸?刂破鞴╇ 供電后,其上的藍(lán)色指示燈會(huì)處于閃爍狀態(tài),表明蝸?刂破髡9ぷ髁恕 2.手機(jī)環(huán)境配置 使用蝸牛手機(jī)APP時(shí),需要打開手機(jī)的藍(lán)牙和GPS定位功能,同時(shí)保證藍(lán)牙未被其它設(shè)備連接。 3.連接蝸?刂破 點(diǎn)擊左上角的“連接”按鈕,按鈕由灰底“連接”切換為黃底“斷開”,表明連接成功。 點(diǎn)擊“下載”按鈕開始程序編繹和下載,就可以看到“下載”按鈕切換為百分號(hào)數(shù)字進(jìn)度條了。
程序無(wú)線下載中...
五、溫度測(cè)量 程序下載完成后,連接后傳感器,將DS18B20的金屬頭清潔后,夾在腋窩。
體溫測(cè)量中...
點(diǎn)擊APP最上面的“交互”按鈕,打開手機(jī)與蝸?刂破鞯慕换ゴ翱?梢钥吹,每隔1秒鐘左右,蝸?刂破魃蟼饕淮螠囟戎档绞謾C(jī)上。大概3分鐘后就可以看到體溫趨于穩(wěn)定了。 六、后記 1.測(cè)量校準(zhǔn) 使用中,DS18B20與真實(shí)濕度值還是有一定偏差的,這時(shí)我們就需要對(duì)它進(jìn)行大致的校準(zhǔn),做到心里有數(shù)。 最簡(jiǎn)單的校準(zhǔn)方法就是選定一個(gè)基準(zhǔn)溫度(最常用的是人的體溫),也就是在盡量短的時(shí)間內(nèi),分別用數(shù)字濕度計(jì)和我們本例的濕度計(jì)分別測(cè)量一個(gè)體溫,計(jì)算兩者的偏差,作為后續(xù)使用的修改系數(shù)。 2.應(yīng)用范圍 由于DS18B20的測(cè)量濕度范圍較寬,該體溫計(jì)不僅可以用于體溫檢測(cè),還可以用于生活中的水溫測(cè)量等等,還是比較廣泛的。
|