資料介紹
描述
如今,我們忘記了滋養和澆灌讓我們的家變得干凈舒適的植物。如果植物能夠說話并根據溫度告訴他們需要多少水,那就太好了。如果我們在手機上收到有關植物健康和需求的通知,那將非常有幫助。考慮到這一點,我們想到了用植物溫度監測系統建造一個智能花園的想法。它定期檢查落在植物上的陽光強度。處理完數據后,會發送一條關于植物健康狀況的短信。它將使我們的生活變得簡單和輕松,也將幫助我們更好地照顧我們的植物。讓我們開始吧!
注意:如果超過閾值水平,我們使用 TWILIO 為我們提供消息服務。TWILIO 為我們提供了“SID NO”、“AUTH TOKEN”、用于通信的號碼、“API KEY”。
代碼說明:
在代碼中,我們首先必須導入包含所有憑據的 conf 文件。Python JSON 和時間庫也在同一行中導入。由于我們已經用 .py 擴展名保存了我們的 conf 文件,所以我們可以直接導入它。
導入 conf、json、時間
JSON 是一個 Python 庫,用于處理對 JSON 對象的所有操作。JSON只不過是一種在互聯網上廣泛使用的數據通信格式,用于在客戶端和服務器之間發送/接收數據。可以在此處找到有關 JSON 的更多信息。請記住,“json”是用于處理 JSON 對象的 Python 庫,而 JSON 是一種數據通信格式。
現在我們將導入 Bolt Python 庫,它可以讓我們獲取存儲在 Bolt Cloud 中的數據。要發送 SMS,還導入 Sms 庫。下面的代碼行導入所需的庫。
從 boltiot 導入 Sms, Bolt
SMS 將用于發送 SMS 警報,另一個是 Bolt,它用于從您的 Bolt 設備訪問數據,例如在此處完成溫度讀數。
最大和最小變量用于設置閾值。
如果溫度讀數低于最低限值或高于最高限值,這將發出警報。
minimum_limit = 400, maximum_limit = 500
為了從 Bolt Cloud 獲取數據,我們將創建一個名為“mybolt”的對象,您可以使用它訪問 Bolt 上的數據。
為了讓 Bolt Cloud 識別您的設備,您需要在創建 mybolt 對象時提供 API 密鑰和設備 ID。由于 conf 文件包含 API 密鑰和設備 ID 變量,您可以按如下方式使用它們,
mybolt = Bolt(conf.API_KEY, conf.DEVICE_ID)
上面的代碼將自動獲取您在 conf.py 文件中初始化的 API 密鑰和設備 ID。
現在要發送短信,我們將創建一個相同的對象。
短信=短信(conf.SID,conf.AUTH_TOKEN,conf.TO_NUMBER,conf.FROM_NUMBER)
上面的代碼將自動獲取您在 conf.py 文件中初始化的 SID、AUTH_TOKEN、TO_NUMBER 和 FROM_NUMBER。確保您在 conf.py 文件中提供了正確的值。
無限循環 while 用于定期和連續地獲取數據。
while True: print ("Reading sensor value") response = mybolt.analogRead('A0') data = json.loads(response) print("Sensor value is: " + str(data['value'])) try: sensor_value = int(data['value']) if sensor_value > maximum_limit or sensor_value < minimum_limit: print("Making request to Twilio to send a SMS") response = sms.send_sms("The Current temperature sensor value is " +str(sensor_value)) print("Response received from Twilio is: " + str(response)) print("Status of SMS at Twilio is :" + str(response.status)) except Exception as e: print ("Error occured: Below are the details") print (e) time.sleep(10)
?
代碼使用“analogRead”函數連續獲取溫度值。由于傳感器連接到 Bolt 的 A0 引腳,我們將在引腳 A0 上執行 analogRead() 函數。
Bolt Cloud 使用 analogRead() 函數的響應是 JSON 格式,因此我們需要使用 Python 的 json 庫加載云發送的 JSON 數據。
溫度值位于響應中標記為“值”的字段內。我們可以使用語句 `sensor_value = int(data['value'])` 訪問 JSON 值。此行還將傳感器讀數轉換為整數數據類型以比較溫度范圍。
它包含在 try-except 塊中,用于處理代碼中可能出現的任何錯誤。此處給出了 try-except 代碼塊的更多解釋。
下一行代碼檢查溫度讀數是高于最高限值還是低于最低限值。如果超過,則將發送 SMS。
要發送的 SMS 將包含文本“The Current temperature sensor value is”,后跟溫度值。
來自 Twilio 的響應將存儲在“response”變量中。
發送溫度讀數后,我們需要等待 10 秒才能獲得下一個讀數。為此,我們將在每次循環迭代時讓程序休眠一次。
語句 time.sleep(10) 將程序執行暫停 10 秒。這意味著該程序將在 10 秒內不執行。
在上面的代碼中,我們每 10 秒獲取一次數據。您可以更改該值,但理想情況下,如果 2 個數據點之間的時間間隔超過 10 秒應該是好的。
- hydroMazing智能花園系統網絡服務
- 基于樹莓派的智慧花園 0次下載
- 為植物構建光強度監測系統
- 監測周圍環境條件的花園助手
- 虹科ELPRO醫藥供應鏈溫度監測系統目錄
- 多旋翼飛行器設計與控制的動力系統建模和估算 0次下載
- 使用樹莓派2實現的植物澆水系統的資料合集 56次下載
- 如何使用ANT傳感器網絡實現溫度監測系統的設計和實現 4次下載
- 模糊系統建模 0次下載
- 基于32位MCU的植物油溫度測控系統 8次下載
- 基于ADuC812的溫度、壓力監測系統 14次下載
- 電纜接頭溫度在線監測系統設計 33次下載
- 輪胎智能監測系統的研究
- 溫度影響農藥抑制植物酶的研究
- 制梁廠水泥養護室溫度集中監測系統
- SMT焊接溫度曲線智能仿真系統的功能介紹! 619次閱讀
- 一種微型生態花園控制系統設計 461次閱讀
- 什么是系統建模語言SysML? 7027次閱讀
- 基于無線技術的齒輪箱溫度在線監測系統 910次閱讀
- Acrel-5010重點用能單位能耗在線監測系統助力實現用能單位端系統建設 509次閱讀
- 如何構建高分辨率溫度監測系統 1006次閱讀
- 如何利用溫度傳感器實現植物監控系統的設計 1834次閱讀
- 歐司朗推出的新型LED技術幫助植物生長促進綠色生態 857次閱讀
- 暖氣溫度報警系統的簡單制作 3353次閱讀
- 智能測酸在線監測系統的原理及設計 1345次閱讀
- 可伸縮的植物用可穿戴設備和無人機投放的智能標簽 3873次閱讀
- 用智能手機監測您的汽車胎壓 ─ 帶藍牙的胎壓監測系統 1w次閱讀
- 基于TC35i的遠程溫度監測系統設計 3197次閱讀
- 工程師DIY智能灌溉器解決植物澆水難題 2405次閱讀
- 用MAX6641制作的智能溫度控制器電路圖 4413次閱讀
下載排行
本周
- 1錦銳科技CA51F2 SDK開發包
- 24.06 MB | 29次下載 | 1 積分
- 2涂鴉各WiFi模塊原理圖加PCB封裝
- 11.75 MB | 4次下載 | 1 積分
- 3錦銳CA51F005 SDK開發包
- 19.47 MB | 3次下載 | 1 積分
- 4蘋果iphone 11電路原理圖
- 4.98 MB | 3次下載 | 2 積分
- 5基礎模擬電子電路
- 3.80 MB | 2次下載 | 1 積分
- 6FS4059B、FS4059C雙節鋰電池充電應用圖
- 0.05 MB | 1次下載 | 免費
- 7RA-Eco-RA6M4-100PIN-V1.0開發板資料
- 34.89 MB | 1次下載 | 免費
- 8RF9209 低功耗高靈敏EM9209 2.4G通信模塊規格書
- 565.33 KB | 次下載 | 免費
本月
- 1AI智能眼鏡產業鏈分析
- 4.43 MB | 382次下載 | 免費
- 2蘇泊爾電磁爐線路的電路原理圖資料合集
- 2.02 MB | 296次下載 | 5 積分
- 3貼片三極管上的印字與真實名稱的對照表詳細說明
- 0.50 MB | 94次下載 | 1 積分
- 4長虹液晶電視R-HS310B-5HF01的電源板電路原理圖
- 0.46 MB | 91次下載 | 5 積分
- 5錦銳科技CA51F2 SDK開發包
- 24.06 MB | 29次下載 | 1 積分
- 6AO4803A雙P通道增強型場效應晶體管的數據手冊
- 0.11 MB | 28次下載 | 2 積分
- 7長虹液晶彩電LS29機芯的技術資料說明
- 3.42 MB | 16次下載 | 2 積分
- 8802.11_Wireless_Networks
- 4.17 MB | 12次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935127次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉換器 PCB layout 設計
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191388次下載 | 10 積分
- 5十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183342次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81588次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73815次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65988次下載 | 10 積分
評論