這篇文章來源于DevicePlus.com英語網(wǎng)站的翻譯稿。在Crystal Signal Pi系列第3部分,我們終于要制作工具了!今天,我們將嘗試使用Crystal Signal Pi和溫度傳感器(DS18B20)來根據(jù)溫度變化生成警報。
原文最初由deviceplus.jp發(fā)布,本文為英譯版。
在本文中,我們將使用與上次相同的Raspberry Pi設(shè)置(主板:Raspberry Pi 3/操作系統(tǒng):Raspbian Jessie Lite)。
當您已經(jīng)可以從瀏覽器訪問Raspberry Pi IP地址的時候,我們就可以開始了。(本文使用的IP地址是“192.168.0.9.”)。
自定義之前(安裝samba 和 bc)
安裝samba包可以使過程變得更加簡單,因為您可以直接從外部對文件進行編輯。
在編輯nano時,打開smb.com,并添加以下行。
/etc/samba/smb.conf
每個文件夾中的內(nèi)容應(yīng)如圖所示。
接下來,讓我們嘗試對這些文件的訪問權(quán)限進行編輯。由于您也可以編輯現(xiàn)有文件,所以顯示內(nèi)容如下圖所示(*當不需要編輯時,將訪問權(quán)限修改至適用的個人)
在GitHub頁面中,將顯示如下警告。我們需要注意盡量不要將腳本文件命名為相同的名稱。
警告:作為示例的腳本將在中間件更新時被覆蓋。如果您想自定義該腳本,請復制文件并以不同的名稱命名。不要直接進行編輯。
這次我們將使用shell腳本,并編寫新的源代碼,其中會使用“bc”命令進行涉及小數(shù)的計算,因此如果需要,請先安裝bc包。
準備溫度傳感器
我們先在適當?shù)臈l件下對溫度傳感器進行設(shè)置。
Crystal Signal Pi使用了12個引腳與Raspberry Pi進行連接,因此我們按照圖3所示方式進行接線。本次我們將GPIO23用于信號線連接。
然后添加以下行,末尾的數(shù)字來自于GPIO(本示例為23)。
重啟后,1-Wire將被激活,并在“/sys/bus/w1devices”目錄中生成一個文件。
圖4是我們剛剛在“samba”上設(shè)置的“root”目錄。為了獲取溫度值,我們將使用圖4中顯示的文件名。在本次示例中,文件名為“28-0000006470bec”。
然后我們將會得到用于測量溫度的指令,如下所示。
第二行末尾的“t=”表示溫度值的1000倍。在圖5中,該數(shù)字所表示的溫度為26.812攝氏度。
創(chuàng)建一個程序
接下來,我們參考“scripts(腳本)”目錄下的中間件腳本來創(chuàng)建一些程序!我們將要創(chuàng)建一個在以下條件下可發(fā)出兩種類型警報的程序。
- 溫度超過 27℃ → 閃爍紅燈
- 當溫度低于 20℃ → 閃爍藍燈
/var/lib/crystal-signal/scripts/temperature.sh
因為在溫度適中(本示例中約為20-27℃)的情況下很難判斷是否有問題發(fā)生,所以我們使用“非同步閃爍”模式,平穩(wěn)閃爍時表示一切正常。
在“Settings(設(shè)置)”屏幕上,我將會對Crystal Signal Pi的按鈕操作進行設(shè)置。
對于“熄滅”的常規(guī)按鈕操作,我們會將其設(shè)置為“temperature.sh”,同時,將“Ack.sh”用于“點亮”的常規(guī)按鈕操作(刪除警報操作)。
另外,為了停止警報的同時重新啟動,我將“點亮”的長按按鈕操作設(shè)置為“temperature.sh”。
- 按下按鈕,啟動temperature.sh(非同步閃爍)
- 當溫度低于20℃時→閃爍藍光
- 按下按鈕,停止警報(Ack.sh)
- 按下按鈕,啟動temperature.sh(非同步閃爍)
- 當溫度高于27℃時→閃爍紅光
- 按下按鈕,停止警報(Ack.sh)
這就是視頻中所播放的基本流程。通過一個低溫絕緣體和我們的手指可以實現(xiàn)冷熱環(huán)境之間的切換,從而對溫度傳感器進行測試。這種方法可以測試出設(shè)備對溫度變化響應(yīng)的靈敏度。
“日志”屏幕變成了如下圖所示的樣子。
每當溫度低于20℃和高于27℃發(fā)生警報時,這些警報信息都會顯示在“Info”以一欄中,同時記錄溫度信息。
總結(jié)
現(xiàn)在,我們就可以使用溫度傳感器和Crystal Signal Pi來制作工具了!只需要在中間件中選擇一個腳本,我們就能以一種相對容易的方式創(chuàng)建按鈕功能。雖然這部分包含了一些電子領(lǐng)域的工作,會有一定困難,但我還是強烈推薦Raspberry Pi的初學者來嘗試完成本項目!
不過看著這酷炫的燈光,也無需我再多說什么了吧!
DevicePlus 編輯團隊
審核編輯黃宇
評論