資料介紹
描述
在檢查我擁有的所有電子產品時,我發現了一個土壤濕度傳感器,我決定將它用于簡單的項目只是為了刷新我的基本 Arduino 知識。
這個想法是檢查植物的土壤水分,并在需要水時在 Twitter 上發送消息。
我有很多想法來實現這一點,我確信這不是可選的解決方案,但我有一些擔憂。最簡單的解決方案是將濕度傳感器連接到 Raspberry Pi Zero 并在濕度低于某個水平時讀取數字觸發器。但是,我想以模擬方式讀取濕度水平,以便能夠將其保存在數據庫或物聯網云中。這就是為什么我需要一個我不擁有的 ADC 轉換器。這就是我使用 atTiny85 作為 ADC 的原因。
所以我想出了這個解決方案:使用 atTiny85 從濕度傳感器讀取模擬數據,通過串行連接將此值發送到 Raspberry Pi Zero,以便 Raspberry Pi Zero 上的 Python 腳本可以將此值保存到數據庫并發送推文。同樣,我使用 atTiny85 作為 ADC 轉換器,因為我沒有。
這是此解決方案的草圖:

首先,我必須記住如何通過 Arduino Uno 對 Tiny85 進行編程,
快速說明:本文中的所有內容只有在開始時將 Arduino Uno 編程為 ISP 時才能正常工作。
atTiny85 幾乎沒有什么可做的,這就是為什么它有一個非常簡單的代碼。它只是讀取濕度傳感器模擬輸入值并將該值發送到串行連接,該串行連接轉到 Raspberry Pi Zero:
#include#define RX 1 // D1,引腳 6 #define TX 2 // D2,引腳 7 #define sensorPin 3 // D3,引腳 3
SoftwareSerial toRaspberry(RX, TX);
無效設置(){ pinMode(sensorPin,輸入);toRaspberry.begin(9600); }
無效循環(){ int sensorValue = analogRead(sensorPin);toRaspberry.println(sensorValue); 延遲(10000);}
?
要設置 Raspberry Pi 零迷你 UART(可在 GPIO 引腳上使用),我遵循了本文檔的“使用迷你 UART 端口”部分:https ://www.abelectronics.co.uk/kb/article/1035/raspberry-pi- 3--4-and-zero-w-serial-port-usage
我發現發送推文的最簡單方法是命令行程序twidge 。它有一個非常簡單的設置和易于使用的命令行界面:https ://jgoerzen.github.io/twidge/twidge-html/twidge.html
這是在 Raspberry Pi Zero 上運行的 Python 腳本,它從來自 atTiny85 的 GPIO 引腳讀取串行輸入值(值在 0-1023 之間,它代表土壤的水分——值越大意味著水分越少),將其保存到嵌入式sqlite數據庫并使用twidge命令行發送推文:
#!/usr/bin/env python import time import serial import os import random import sqlite3 as sl
def main(): ser = serial.Serial(port='/dev/serial0', baudrate = 9600, parity=serial.PARITY_NONE, stopbits=serial.STOPBITS_ONE, bytesize=serial.EIGHTBITS, timeout=1) x = ser.讀線();while (x == ''): x = ser.readline(); 打印 x checkSituation(x.rstrip());
def checkSituation(x): waterLevel = 1024 - int(x); tweetText = '{} --水位:{}'; if (waterLevel < 200): tweetText = tweetText.format(getHelpTweet(), waterLevel); 否則:tweetText = tweetText.format(getFineTweet(), waterLevel); 推文(推文);日志(水位);
def log(waterLevel): con = sl.connect('plant.db'); sql = 'INSERT INTO PLANT_DATA (water_level, timestamp) values(?, ?)'; 數據 = (水位, int(time.time())); con.execute(sql, 數據); con.commit(); con.close();
def tweet(text): command = 'twidge update "{}"'.format(text); os.system(命令);打印(命令);
def getFineTweet(): fines = ["我今天過得很好 :)", "這是美好的一天 ;)", "我愛我的鍋 :)"]; 返回隨機選擇(罰款);
def getHelpTweet(): help = ["我需要水!!:(", "請給我水", "有人給我澆水嗎?:("] return random.choice(helps);
如果 __name__ == "__main__": main()
?
我已經設置了一個 cron 作業,每天在 Raspberry Pi Zero 上運行這個腳本,我收到了關于我的工廠幸福的推文。
?
- 帶有ATtiny85的電池供電土壤濕度計
- 將ATtiny85與Arduino IDE結合使用
- 基于Attiny85的macropad
- ATtiny85供電高壓AVR編程器開源
- 帶藍牙的Attiny85/84
- 編程ATTINY85芯片開源分享
- DIY ATtiny85 Roomba墻
- ATtiny85 EMF檢測器開源分享
- 帶有ATTINY85的迷你Arduino
- ATtiny85電子負載開源設計
- ATtiny85微控制器開源項目
- ATtiny85突破開源項目
- Attiny85 Mosfet Gelistirme卡丁車
- 用Attiny85控制水泵澆花
- Digispark ATtiny85 ADC采樣 analogRead()
- 學習筆記|如何用Go程序采集溫濕度傳感器數據 763次閱讀
- 濕度傳感器的選擇_濕度傳感器發展趨勢 1303次閱讀
- 濕度傳感器的主要誤差來源 4312次閱讀
- 濕度傳感器安裝說明 3706次閱讀
- 濕度傳感器怎么接線_濕度傳感器接線方法 3.1w次閱讀
- 土壤濕度傳感器設計方案匯總(三款濕度傳感器設計電路原理圖詳細) 6.6w次閱讀
- 濕度傳感器好壞檢測_濕度傳感器的工作原理_濕度傳感器應用 2w次閱讀
- 濕度傳感器維修技巧 1.4w次閱讀
- 電阻式濕度傳感器_電阻式與電容式溫濕度傳感器哪個好 2.7w次閱讀
- 土壤濕度傳感器yl69如何使用 6.4w次閱讀
- 樹莓派土壤濕度傳感器 2.5w次閱讀
- 土壤濕度傳感器的原理介紹 7.7w次閱讀
- 土壤濕度傳感器怎么用_土壤濕度傳感器種類 3.6w次閱讀
- 電容式濕度傳感器_電容式濕度傳感器工作原理 2.6w次閱讀
- 濕度傳感器的原理、分類、特點特性、參數及其應用 2.1w次閱讀
下載排行
本周
- 1涂鴉各WiFi模塊原理圖加PCB封裝
- 11.75 MB | 76次下載 | 1 積分
- 2錦銳科技CA51F2 SDK開發包
- 24.06 MB | 29次下載 | 1 積分
- 3錦銳CA51F005 SDK開發包
- 19.47 MB | 3次下載 | 1 積分
- 4蘋果iphone 11電路原理圖
- 4.98 MB | 3次下載 | 2 積分
- 5基礎模擬電子電路
- 3.80 MB | 3次下載 | 1 積分
- 6RA-Eco-RA6M4-100PIN-V1.0開發板資料
- 34.89 MB | 1次下載 | 免費
- 7STM32F3系列、STM32F4系列、STM32L4系列和STM32L4+系列Cortex-M4編程手冊
- 3.32 MB | 1次下載 | 免費
- 8聯想A820t手機維修圖紙包括主板原理圖 尾板原理圖 點位圖
- 0.62 MB | 次下載 | 5 積分
本月
- 1AI智能眼鏡產業鏈分析
- 4.43 MB | 383次下載 | 免費
- 2蘇泊爾電磁爐線路的電路原理圖資料合集
- 2.02 MB | 296次下載 | 5 積分
- 3貼片三極管上的印字與真實名稱的對照表詳細說明
- 0.50 MB | 94次下載 | 1 積分
- 4長虹液晶電視R-HS310B-5HF01的電源板電路原理圖
- 0.46 MB | 91次下載 | 5 積分
- 5涂鴉各WiFi模塊原理圖加PCB封裝
- 11.75 MB | 76次下載 | 1 積分
- 6錦銳科技CA51F2 SDK開發包
- 24.06 MB | 29次下載 | 1 積分
- 7AO4803A雙P通道增強型場效應晶體管的數據手冊
- 0.11 MB | 28次下載 | 2 積分
- 8長虹液晶彩電LS29機芯的技術資料說明
- 3.42 MB | 16次下載 | 2 積分
總榜
- 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 積分
評論