資料介紹
描述
(用 DeepL 翻譯)
你有綠拇指嗎?即使你這樣做了,這個(gè)項(xiàng)目也會(huì)提醒你給植物澆水。只需將它放在花盆中您最喜歡的植物旁邊,然后將其校準(zhǔn)到合適的濕度水平。一旦土壤變得太干,LED 就會(huì)開(kāi)始閃爍并提醒您給植物澆水。
對(duì)于這個(gè)項(xiàng)目,您需要:
?
一個(gè)好的Plant Guard在植物旁邊的花盆里不應(yīng)該太突出,還應(yīng)該有獨(dú)立的電源。為此,ATtiny85 是一個(gè)不錯(cuò)的選擇,因?yàn)槟梢允褂?3.3V 紐扣電池長(zhǎng)時(shí)間運(yùn)行它——前提是您不要讓它連續(xù)測(cè)量,而是在大多數(shù)時(shí)間將其置于睡眠模式。
使用該項(xiàng)目的代碼,您只需每 30 分鐘測(cè)試一次土壤是否變得太干。其余時(shí)間,工廠守衛(wèi)睡覺(jué),從電池中汲取的電量很少。所以它應(yīng)該可以持續(xù)很長(zhǎng)時(shí)間沒(méi)有問(wèn)題。
要使 Plant Guard 尺寸緊湊,請(qǐng)使用迷你面包板的正面和背面。在背面,您粘貼一些組件,這些組件通過(guò)正面的電纜連接到 ATtiny85。完成的植物防護(hù)裝置的尺寸僅為 40 x 70 x 40 毫米。
如何對(duì) ATtiny85 進(jìn)行編程
在開(kāi)始組裝之前,您必須將適當(dāng)?shù)牟輬D加載到您的 ATtiny85 上。你可以在這個(gè)項(xiàng)目的最后找到代碼。在此處了解如何在 Arduino Uno 的幫助下將其上傳到 ATtiny85。
如何組裝植物衛(wèi)士
該項(xiàng)目的設(shè)置大約需要 30 分鐘。
首先是背面
方便的是,面包板背面有一個(gè)粘性表面,您可以在其中連接一些組件。所以先把背面的保護(hù)膜去掉。然后將電池座以及濕度傳感器的電路板和探頭粘貼到表面上。一開(kāi)始只輕輕按壓所有部件。如果一切都合適,您可以用力按壓它們 - 它們會(huì)很好地固定在背面。
將電纜連接到背面
讓我們暫時(shí)留在后面。在這里,您首先必須將探頭連接到電路板。為此,您需要兩根電纜(最好 10 厘米長(zhǎng)),兩端都有插座。按如下方式附加它們:
將插座插入引腳后,將電纜放在面包板的頂部。這樣它們占用的空間最少。
現(xiàn)在是濕度傳感器板。上面有四個(gè)空閑引腳:VCC(正)、GND(負(fù))、DO(數(shù)字輸出)和 AO(模擬輸出)。但你只需要前三個(gè)。所以首先將三根電纜連接到引腳 VCC、GND 和 DO。
有了這個(gè),您現(xiàn)在已經(jīng)完成了植物保護(hù)裝置的背面 - 面包板正面的時(shí)間到了!
將 ATtiny85 放在板上
拿起您的 ATtiny85 仔細(xì)查看:在芯片的一個(gè)角落,您會(huì)發(fā)現(xiàn)一個(gè)小圓孔。這將其旁邊的引腳標(biāo)記為第一。
現(xiàn)在將面包板放在您面前,使?jié)穸葌鞲衅鞯奶筋^朝下。現(xiàn)在小心地將 ATtiny85 放在面包板的中間,使小凹痕指向右下角。小心,因?yàn)樾酒囊_非常敏感。因此,當(dāng)您再次將其戴上或從面包板上取下時(shí),請(qǐng)?zhí)貏e小心。
最好為您的 ATtiny85 使用插座,以在安裝和拆卸過(guò)程中保護(hù)它。
這是完成后的樣子:
將濕度傳感器連接到 ATtiny85
在將濕度傳感器的電纜連接到面包板之前,首先查看 ATtiny85 的引腳數(shù):
如前所述,小凹痕標(biāo)志著 ATtiny85 的引腳 1。您可以從這里逆時(shí)針計(jì)數(shù)得到其他引腳的編號(hào)。
現(xiàn)在轉(zhuǎn)動(dòng)你的面包板,使?jié)穸葌鞲衅鞯奶筋^朝上。這樣,您的 ATtiny85 指向與上圖相同的方向。
現(xiàn)在將電纜從傳感器的引腳 DO 直接插入 ATtiny85 的引腳 2 旁邊。GND 連接到引腳 4 - 這是負(fù)極。傳感器的引腳 VCC 連接在 ATtiny85 的引腳 7 旁邊。再次在概述中:
用電阻連接 LED
在將電阻器放在面包板上之前,您必須將其彎曲并縮短腿。這是電阻器在治療后應(yīng)如何處理:
現(xiàn)在拿起 LED 并將其短腿(陰極)插入 ATtiny85 引腳 4 的電纜旁邊。它的長(zhǎng)腿(陽(yáng)極)旁邊有兩個(gè)孔。
現(xiàn)在將電阻器再插入一排,以便將陽(yáng)極連接到 ATtiny85 的引腳 3。這應(yīng)該是這樣的:
為工廠警衛(wèi)供電
現(xiàn)在最重要的部分:電源。拿起手中電池座的兩根電纜,將 ATtiny85 引腳 8 旁邊的紅色電纜和黑色電纜插入引腳 4 旁邊的最后一個(gè)空閑孔:
最后一根電線
現(xiàn)在你需要一個(gè)小線橋。您將需要它來(lái)校準(zhǔn)植物保護(hù)裝置,以便在其周圍的土壤太干時(shí)發(fā)出警報(bào)。
現(xiàn)在在 ATtiny85 的引腳 8 和引腳 6 之間插入此跳線:
就是這樣!您的工廠監(jiān)視器已組裝好并可以進(jìn)行校準(zhǔn)。
這就是您校準(zhǔn)工廠監(jiān)視器的方式
開(kāi)始之前,使用螺絲刀將濕度傳感器背面的電位器雙向旋轉(zhuǎn)。正確連接所有內(nèi)容后,LED 應(yīng)該會(huì)打開(kāi)和關(guān)閉,具體取決于您左右轉(zhuǎn)動(dòng)電位計(jì)的距離。
當(dāng)它這樣做時(shí),您可以繼續(xù):
將帶有探頭的 Plant Guard 放在地下植物旁邊。最好是這種土壤足夠干燥,以至于您現(xiàn)在可以真正給植物澆水。轉(zhuǎn)動(dòng)背面的電位器,使 LED 即將亮起。就是這樣 - 校準(zhǔn)完成,警衛(wèi)知道何時(shí)發(fā)出警報(bào)。
現(xiàn)在取出試驗(yàn)板上引腳 6 和 8 之間的跳線并將其放在一邊。如果一切正常,現(xiàn)在 LED 應(yīng)該每隔幾秒鐘閃爍幾次 - 表示該噴壺的信號(hào)了。
然后給植物澆水 - LED 將停止閃爍,直到土壤變得太干,是時(shí)候喝一口水了。
工廠守衛(wèi)代碼
原則上,代碼由以下部分組成:
- 校準(zhǔn)傳感器
- 測(cè)量濕度
- 如果土壤太干,請(qǐng)發(fā)出警報(bào)
- 讓 ATtiny85 進(jìn)入睡眠狀態(tài)
?
但是,在開(kāi)始時(shí),必須包含兩個(gè)庫(kù)并定義一些引腳:
所需的庫(kù)
您需要兩個(gè)用于代碼的庫(kù),它們已經(jīng)預(yù)先安裝:
#include
#include
使用庫(kù) avr/sleep.h,您可以將 ATtiny85 置于睡眠模式,從而確保其功耗大大降低。由于植物保護(hù)裝置由電池供電,因此這種睡眠模式尤為重要。
庫(kù) avr/wdt.h 是一個(gè)所謂的看門狗,您可以使用它在一定時(shí)間后喚醒您的 ATtiny85。
定義引腳
總的來(lái)說(shuō),您必須定義您的 ATtiny85 使用的四個(gè)引腳:
#define calibrationPin 1
#define sensorPin 2
#define sensorValuePin 3
#define ledPin 4
請(qǐng)注意,引腳編號(hào)與您之前逆時(shí)針計(jì)數(shù)的引腳編號(hào)不匹配。如果你想用代碼控制你芯片的管腳,你需要其他的數(shù)字,你也可以在上面的方案中找到。
您的代碼的數(shù)字以 PB 開(kāi)頭。例如,如您所見(jiàn),壓痕旁邊的第一個(gè)引腳對(duì)應(yīng)于“代碼引腳”PB5。但是,在代碼中,您省略了字母,只寫了 5 個(gè)。減去加號(hào) (VCC) 和減號(hào) (GND) 后,剩下 6 個(gè)引腳。
例如,Plant Guard 的 LED 位于支路編號(hào)旁邊。ATtiny85 的 3 個(gè) - 在您使用引腳 4 控制它的代碼中:
#define ledPin 4
從現(xiàn)在開(kāi)始,在下面的解釋中,總是指代碼的引腳號(hào)。
在草圖的設(shè)置中,您現(xiàn)在定義它們是輸入(INPUT)還是輸出(OUTPUT):
void setup() {
pinMode(calibrationPin, INPUT);
pinMode(sensorPin, OUTPUT);
pinMode(sensorValuePin, INPUT);
pinMode(ledPin, OUTPUT);
}
工廠監(jiān)視器的校準(zhǔn)
讓我們進(jìn)入草圖的循環(huán)。在這里,您首先檢查用于校準(zhǔn)傳感器的跳線是否已插入。跳線位于正極 (VCC) 和引腳 1 之間 - 這意味著,如果連接了跳線,您的 ATtiny85 會(huì)在此引腳處測(cè)量電流 (HIGH)。
如果是這種情況,則在循環(huán)中只執(zhí)行校準(zhǔn)代碼:
if (digitalRead(calibrationPin) == HIGH) {
digitalWrite(sensorPin, HIGH);
if (digitalRead(sensorValuePin) == 1) {
digitalWrite(ledPin, HIGH);
} else {
digitalWrite(ledPin, LOW);
}
}
首先,通過(guò)將其電源引腳 (sensorPin) 設(shè)置為高電平來(lái)打開(kāi)傳感器。在第二個(gè)查詢中,當(dāng)傳感器傳輸測(cè)量值 1(到 pin sensorValuePin)時(shí),LED 會(huì)打開(kāi)。如果地面潮濕,則 LED 關(guān)閉。
什么干什么濕意味著您可以通過(guò)轉(zhuǎn)動(dòng)濕度傳感器板上的電位器來(lái)確定自己。如前所述,校準(zhǔn)植物監(jiān)視器的最簡(jiǎn)單方法是將其放在干燥的土壤中并轉(zhuǎn)動(dòng)電位計(jì),使 LED 亮起。如果你然后給它澆水,它就會(huì)消失——直到土壤再次像你校準(zhǔn)它時(shí)一樣干燥。
測(cè)量水分
讓我們來(lái)實(shí)際測(cè)量濕度。這里只能有兩種狀態(tài):土壤太干或土壤仍然足夠濕潤(rùn)。
首先傳感器開(kāi)啟 100 毫秒:
digitalWrite(sensorPin, HIGH);
delay(100);
如果傳感器隨后測(cè)量到 1 并將其傳遞下去,則意味著地球太干燥了。然后再次關(guān)閉傳感器以立即節(jié)省電量。但為此,LED 會(huì)上下閃爍 10 次。
最后,看門狗被武裝起來(lái),因此 ATtiny85 進(jìn)入睡眠狀態(tài)并在 8 秒后喚醒并使 LED 再次閃爍 - 如果您在此期間沒(méi)有給植物澆水。
if (digitalRead(sensorValuePin) == 1) {
digitalWrite(sensorPin, LOW);
for (byte i = 0; i < 10; i++) {
digitalWrite(ledPin, HIGH);
delay(200);
digitalWrite(ledPin, LOW);
delay(200);
}
myWatchdogEnable (0b100001);
}
但是,如果您這樣做了,植物守衛(wèi)當(dāng)然不會(huì)再發(fā)出警報(bào)。它現(xiàn)在測(cè)量土壤是否足夠潮濕,并將 0 傳遞給相應(yīng)的引腳。在這種情況下,LED 和傳感器熄滅,看門狗將您的 ATtiny85 置于睡眠模式 30 分鐘:
else {
digitalWrite(ledPin, LOW);
digitalWrite(sensorPin, LOW);
for (byte j = 0; j <= 225; j++){
myWatchdogEnable (0b100001);
}
}
這里使用了 myWatchdogEnable() 函數(shù),您也可以在 Sketch 中找到該函數(shù)。你給這個(gè)函數(shù)一個(gè)字節(jié) 0b100001,它將定時(shí)器設(shè)置為 8 秒。For-Loop 確保這個(gè) 8 秒的計(jì)時(shí)器被執(zhí)行 225 次 - 這提供了 30 分鐘的睡眠時(shí)間。
- 將ATtiny85與Arduino IDE結(jié)合使用
- 基于Attiny85的macropad
- ATtiny85供電高壓AVR編程器開(kāi)源
- 基于ATtiny85的編碼消息閃爍器 0次下載
- 帶藍(lán)牙的Attiny85/84
- 使用atTiny85從濕度傳感器讀取模擬數(shù)據(jù)
- 編程ATTINY85芯片開(kāi)源分享
- DIY ATtiny85 Roomba墻
- 帶有ATTINY85的迷你Arduino
- ATtiny85突破開(kāi)源項(xiàng)目
- Attiny85 Mosfet Gelistirme卡丁車
- 用Attiny85控制水泵澆花
- Digispark ATtiny85 ADC采樣 analogRead()
- 土壤濕度傳感器模塊電路圖 128次下載
- 土壤濕度程序 8次下載
- 基于GD32L235系列MCU的土壤濕度檢測(cè)帶磁力翻轉(zhuǎn)式顯示方案 490次閱讀
- 土壤濕度檢測(cè)電路的基本原理 2597次閱讀
- 微雪電子土壤濕度傳感器簡(jiǎn)介 4958次閱讀
- dfrobot電容式土壤濕度傳感器簡(jiǎn)介 8190次閱讀
- 土壤濕度測(cè)量器電路 6070次閱讀
- 如何自己設(shè)計(jì)一款溫濕度計(jì) 1w次閱讀
- ADI關(guān)于測(cè)量土壤濕度和pH值的解決方案 1961次閱讀
- 數(shù)顯濕度計(jì)電路圖 4949次閱讀
- 土壤濕度傳感器設(shè)計(jì)方案匯總(三款濕度傳感器設(shè)計(jì)電路原理圖詳細(xì)) 6.6w次閱讀
- 自制土壤濕度傳感電路圖_土壤濕度檢測(cè)原理圖 3.4w次閱讀
- 土壤濕度傳感器yl69如何使用 6.4w次閱讀
- 樹莓派土壤濕度傳感器 2.5w次閱讀
- 土壤濕度傳感器的原理介紹 7.7w次閱讀
- 土壤濕度傳感器怎么用_土壤濕度傳感器種類 3.6w次閱讀
- arduino測(cè)量土壤濕度自動(dòng)澆水提醒 1.3w次閱讀
下載排行
本周
- 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開(kāi)發(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開(kāi)關(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ì)》 溫德?tīng)栔?/a>
- 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)論
查看更多