資料介紹
描述
如今,我們忘記了滋養(yǎng)和澆灌讓我們的家變得干凈舒適的植物。如果植物能夠說(shuō)話并根據(jù)溫度告訴他們需要多少水,那就太好了。如果我們?cè)?a href='http://ttokpm.com/v/tag/107/' target='_blank' class='arckwlink_none'>手機(jī)上收到有關(guān)植物健康和需求的通知,那將非常有幫助。考慮到這一點(diǎn),我們想到了用植物溫度監(jiān)測(cè)系統(tǒng)建造一個(gè)智能花園的想法。它定期檢查落在植物上的陽(yáng)光強(qiáng)度。處理完數(shù)據(jù)后,會(huì)發(fā)送一條關(guān)于植物健康狀況的短信。它將使我們的生活變得簡(jiǎn)單和輕松,也將幫助我們更好地照顧我們的植物。讓我們開始吧!
注意:如果超過(guò)閾值水平,我們使用 TWILIO 為我們提供消息服務(wù)。TWILIO 為我們提供了“SID NO”、“AUTH TOKEN”、用于通信的號(hào)碼、“API KEY”。
代碼說(shuō)明:
在代碼中,我們首先必須導(dǎo)入包含所有憑據(jù)的 conf 文件。Python JSON 和時(shí)間庫(kù)也在同一行中導(dǎo)入。由于我們已經(jīng)用 .py 擴(kuò)展名保存了我們的 conf 文件,所以我們可以直接導(dǎo)入它。
導(dǎo)入 conf、json、時(shí)間
JSON 是一個(gè) Python 庫(kù),用于處理對(duì) JSON 對(duì)象的所有操作。JSON只不過(guò)是一種在互聯(lián)網(wǎng)上廣泛使用的數(shù)據(jù)通信格式,用于在客戶端和服務(wù)器之間發(fā)送/接收數(shù)據(jù)。可以在此處找到有關(guān) JSON 的更多信息。請(qǐng)記住,“json”是用于處理 JSON 對(duì)象的 Python 庫(kù),而 JSON 是一種數(shù)據(jù)通信格式。
現(xiàn)在我們將導(dǎo)入 Bolt Python 庫(kù),它可以讓我們獲取存儲(chǔ)在 Bolt Cloud 中的數(shù)據(jù)。要發(fā)送 SMS,還導(dǎo)入 Sms 庫(kù)。下面的代碼行導(dǎo)入所需的庫(kù)。
從 boltiot 導(dǎo)入 Sms, Bolt
SMS 將用于發(fā)送 SMS 警報(bào),另一個(gè)是 Bolt,它用于從您的 Bolt 設(shè)備訪問(wèn)數(shù)據(jù),例如在此處完成溫度讀數(shù)。
最大和最小變量用于設(shè)置閾值。
如果溫度讀數(shù)低于最低限值或高于最高限值,這將發(fā)出警報(bào)。
minimum_limit = 400, maximum_limit = 500
為了從 Bolt Cloud 獲取數(shù)據(jù),我們將創(chuàng)建一個(gè)名為“mybolt”的對(duì)象,您可以使用它訪問(wèn) Bolt 上的數(shù)據(jù)。
為了讓 Bolt Cloud 識(shí)別您的設(shè)備,您需要在創(chuàng)建 mybolt 對(duì)象時(shí)提供 API 密鑰和設(shè)備 ID。由于 conf 文件包含 API 密鑰和設(shè)備 ID 變量,您可以按如下方式使用它們,
mybolt = Bolt(conf.API_KEY, conf.DEVICE_ID)
上面的代碼將自動(dòng)獲取您在 conf.py 文件中初始化的 API 密鑰和設(shè)備 ID。
現(xiàn)在要發(fā)送短信,我們將創(chuàng)建一個(gè)相同的對(duì)象。
短信=短信(conf.SID,conf.AUTH_TOKEN,conf.TO_NUMBER,conf.FROM_NUMBER)
上面的代碼將自動(dòng)獲取您在 conf.py 文件中初始化的 SID、AUTH_TOKEN、TO_NUMBER 和 FROM_NUMBER。確保您在 conf.py 文件中提供了正確的值。
無(wú)限循環(huán) while 用于定期和連續(xù)地獲取數(shù)據(jù)。
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”函數(shù)連續(xù)獲取溫度值。由于傳感器連接到 Bolt 的 A0 引腳,我們將在引腳 A0 上執(zhí)行 analogRead() 函數(shù)。
Bolt Cloud 使用 analogRead() 函數(shù)的響應(yīng)是 JSON 格式,因此我們需要使用 Python 的 json 庫(kù)加載云發(fā)送的 JSON 數(shù)據(jù)。
溫度值位于響應(yīng)中標(biāo)記為“值”的字段內(nèi)。我們可以使用語(yǔ)句 `sensor_value = int(data['value'])` 訪問(wèn) JSON 值。此行還將傳感器讀數(shù)轉(zhuǎn)換為整數(shù)數(shù)據(jù)類型以比較溫度范圍。
它包含在 try-except 塊中,用于處理代碼中可能出現(xiàn)的任何錯(cuò)誤。此處給出了 try-except 代碼塊的更多解釋。
下一行代碼檢查溫度讀數(shù)是高于最高限值還是低于最低限值。如果超過(guò),則將發(fā)送 SMS。
要發(fā)送的 SMS 將包含文本“The Current temperature sensor value is”,后跟溫度值。
來(lái)自 Twilio 的響應(yīng)將存儲(chǔ)在“response”變量中。
發(fā)送溫度讀數(shù)后,我們需要等待 10 秒才能獲得下一個(gè)讀數(shù)。為此,我們將在每次循環(huán)迭代時(shí)讓程序休眠一次。
語(yǔ)句 time.sleep(10) 將程序執(zhí)行暫停 10 秒。這意味著該程序?qū)⒃?10 秒內(nèi)不執(zhí)行。
在上面的代碼中,我們每 10 秒獲取一次數(shù)據(jù)。您可以更改該值,但理想情況下,如果 2 個(gè)數(shù)據(jù)點(diǎn)之間的時(shí)間間隔超過(guò) 10 秒應(yīng)該是好的。
- hydroMazing智能花園系統(tǒng)網(wǎng)絡(luò)服務(wù)
- 基于樹莓派的智慧花園 0次下載
- 為植物構(gòu)建光強(qiáng)度監(jiān)測(cè)系統(tǒng)
- 監(jiān)測(cè)周圍環(huán)境條件的花園助手
- 虹科ELPRO醫(yī)藥供應(yīng)鏈溫度監(jiān)測(cè)系統(tǒng)目錄
- 多旋翼飛行器設(shè)計(jì)與控制的動(dòng)力系統(tǒng)建模和估算 0次下載
- 使用樹莓派2實(shí)現(xiàn)的植物澆水系統(tǒng)的資料合集 56次下載
- 如何使用ANT傳感器網(wǎng)絡(luò)實(shí)現(xiàn)溫度監(jiān)測(cè)系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn) 4次下載
- 模糊系統(tǒng)建模 0次下載
- 基于32位MCU的植物油溫度測(cè)控系統(tǒng) 8次下載
- 基于ADuC812的溫度、壓力監(jiān)測(cè)系統(tǒng) 14次下載
- 電纜接頭溫度在線監(jiān)測(cè)系統(tǒng)設(shè)計(jì) 33次下載
- 輪胎智能監(jiān)測(cè)系統(tǒng)的研究
- 溫度影響農(nóng)藥抑制植物酶的研究
- 制梁廠水泥養(yǎng)護(hù)室溫度集中監(jiān)測(cè)系統(tǒng)
- SMT焊接溫度曲線智能仿真系統(tǒng)的功能介紹! 461次閱讀
- 一種微型生態(tài)花園控制系統(tǒng)設(shè)計(jì) 461次閱讀
- 什么是系統(tǒng)建模語(yǔ)言SysML? 5960次閱讀
- 基于無(wú)線技術(shù)的齒輪箱溫度在線監(jiān)測(cè)系統(tǒng) 766次閱讀
- Acrel-5010重點(diǎn)用能單位能耗在線監(jiān)測(cè)系統(tǒng)助力實(shí)現(xiàn)用能單位端系統(tǒng)建設(shè) 401次閱讀
- 如何構(gòu)建高分辨率溫度監(jiān)測(cè)系統(tǒng) 827次閱讀
- 如何利用溫度傳感器實(shí)現(xiàn)植物監(jiān)控系統(tǒng)的設(shè)計(jì) 1663次閱讀
- 歐司朗推出的新型LED技術(shù)幫助植物生長(zhǎng)促進(jìn)綠色生態(tài) 772次閱讀
- 暖氣溫度報(bào)警系統(tǒng)的簡(jiǎn)單制作 3019次閱讀
- 智能測(cè)酸在線監(jiān)測(cè)系統(tǒng)的原理及設(shè)計(jì) 1185次閱讀
- 可伸縮的植物用可穿戴設(shè)備和無(wú)人機(jī)投放的智能標(biāo)簽 3768次閱讀
- 用智能手機(jī)監(jiān)測(cè)您的汽車胎壓 ─ 帶藍(lán)牙的胎壓監(jiān)測(cè)系統(tǒng) 1w次閱讀
- 基于TC35i的遠(yuǎn)程溫度監(jiān)測(cè)系統(tǒng)設(shè)計(jì) 3089次閱讀
- 工程師DIY智能灌溉器解決植物澆水難題 2364次閱讀
- 用MAX6641制作的智能溫度控制器電路圖 4262次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
- 1.06 MB | 532次下載 | 免費(fèi)
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費(fèi)
- 3TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費(fèi)
- 5元宇宙深度解析—未來(lái)的未來(lái)-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費(fèi)
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費(fèi)
- 7元宇宙底層硬件系列報(bào)告
- 13.42 MB | 182次下載 | 免費(fèi)
- 8FP5207XR-G1中文應(yīng)用手冊(cè)
- 1.09 MB | 178次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21549次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
- 0.00 MB | 6656次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191187次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183279次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論
查看更多