最近七夕快到了~又到了給妹子做禮物的時(shí)間了~,所以要做一點(diǎn)既有創(chuàng)意,又實(shí)用,又好看的東西!那么這個(gè)可以給植物自動(dòng)澆水的……飯盒,是非常理想的選擇。
首先放成品圖:
左邊的是土壤濕度探頭,當(dāng)土壤的干燥程度達(dá)到一定值的時(shí)候,打開(kāi)電磁閥進(jìn)行澆水。
左邊是DC電源線(DC5.5*2.1mm),5V輸入。可以直接使用USB轉(zhuǎn)DC來(lái)做電源。右邊就是進(jìn)水口,直接與水龍頭相連。
電磁閥使用的是飲水機(jī)的電磁閥,成本10元左右。電壓12V,所以需要另外購(gòu)買一個(gè)升壓模塊。
最上面的是升壓模塊,然后依次是土壤濕度檢測(cè)模塊,DHT11溫濕度模塊。
LCD1602,可以顯示當(dāng)前已經(jīng)運(yùn)行的時(shí)間,大氣溫濕度,以及土壤濕度值。
亮起來(lái)是這樣子的:
俯視圖。兩根白色的管子一根是進(jìn)水口,一根是出水,內(nèi)部是電磁閥控制。
程序結(jié)構(gòu)也非常簡(jiǎn)單:
土壤濕度探頭檢測(cè)到土壤干燥了,就打開(kāi)電磁閥進(jìn)行澆水,完畢關(guān)閉電磁閥,然后繼續(xù)檢測(cè),就這樣無(wú)限循環(huán)下去。每間隔3小時(shí)進(jìn)行一次判斷。
這是設(shè)計(jì)圖(很初步的構(gòu)想,實(shí)際實(shí)現(xiàn)和這個(gè)圖有一些細(xì)微的區(qū)別):
(原諒我的靈魂畫風(fēng)→_→)
關(guān)于如何澆水,有兩種方案:
方案一:使用電磁閥直接澆自來(lái)水。
方案二:使用水泵抽水。
在選擇實(shí)用水泵還是電池閥的時(shí)候糾結(jié)了很久。最后決定用電池閥,因?yàn)槿绻褂盟玫脑挘獙iT放個(gè)水盆來(lái)裝水……而且要手動(dòng)給水盆加水,不是一勞永逸的方案
(沒(méi)錯(cuò)我就是這么懶……(╯‵□′)╯︵┻━┻)
首先來(lái)看材料一覽表:
(你沒(méi)有猜錯(cuò),我就是把東西這么隨手一扔,然后就拍了張照片……)
然后做一個(gè)供電的模塊,一行接正極一行接負(fù)極,用來(lái)給各種模塊供電。(因?yàn)槲覜](méi)有買arduino的Shields,只能這樣做了)
這萬(wàn)能板的孔大小是M2的,被我強(qiáng)行擴(kuò)展為M3大小,然后才能擰上M3的銅柱
然后目測(cè)一下擺放的位置,做好標(biāo)記,準(zhǔn)備鉆孔:
直接電動(dòng)手鉆上吧,其實(shí)給這種塑料鉆孔,感覺(jué)是摩擦產(chǎn)生的熱量將塑料融化掉,并不是真正的鉆出來(lái)的孔……所以有很多毛邊。
擰上螺絲就可以了。
下面對(duì)LCD1602進(jìn)行固定:
找大概的位置,做好標(biāo)記
打孔,擰螺絲(其實(shí)這個(gè)孔我還打歪了……不過(guò)塑料盒子可以有一定的形變,所以還是強(qiáng)行擰上去了。)
打歪的孔……
還是強(qiáng)行擰上了。
繼電器這種接口可以直接用杜邦線來(lái)插,只要把杜邦線黑色的塑料頭拿掉就好了。就不用另外買專門的線。
杜邦線就可以解決!省錢!
關(guān)于杜邦線的處理,用美工刀把杜邦線頭卡位的迷之凸起翹起來(lái):
就可以很輕松的拿出來(lái)了。
之后就可以把露出來(lái)的金屬部分插進(jìn)去了。
再把繼電器安裝上去,無(wú)盡的打孔……擰螺絲
其實(shí)裝得有點(diǎn)歪,不過(guò)不要緊。
然后突然覺(jué)得,這個(gè)飯盒太大了,還有每個(gè)模塊都要我這樣打孔,效率太低……
然后睡覺(jué)去了。睡覺(jué)的時(shí)候靈感來(lái)了,換了一種思路(沒(méi)錯(cuò),前面我做的全部都推到重做了!)
第二天,拿著一大堆模塊,研究如何科學(xué)地進(jìn)行組裝……
然后……
。
。..。..。十分鐘后,這兩個(gè)疊在了一起
。..。..。..。二十分鐘后(忙著擺弄,忘記拍照了→_→)
duang~~這就是成品!采用了多層的結(jié)構(gòu),布局合理,結(jié)構(gòu)精巧(魔性BGM操起來(lái):我的朋友我想驕傲的告訴你,哦我真的不錯(cuò)我真的很不錯(cuò)。)
因?yàn)槭怯脕?lái)澆水的,整個(gè)電路板是固定不動(dòng)的(這又不是智能小車!),所以連接的結(jié)構(gòu)強(qiáng)度不是首要考慮的問(wèn)題。
下面多角度展示,從上往下依次是實(shí)時(shí)時(shí)鐘模塊DS1307,溫濕度模塊DHT11,土壤濕度傳感器,升壓模塊(用來(lái)獲得12V的輸出)。
已經(jīng)預(yù)留了銅柱,可以很方便地固定在萬(wàn)能板上面。
這樣……我就可以把你捧在手心了~(ˉ﹃ˉ)
然后下一步計(jì)劃固定到萬(wàn)能板上,右邊用來(lái)放電磁閥,中間的縫隙可以焊兩排排針,用于給各種模塊供電。
有個(gè)非常巧合的地方,這個(gè)萬(wàn)能板的寬度,正好和繼電器模塊的長(zhǎng)度完全一樣~邊角的孔完全對(duì)的上,強(qiáng)迫癥看了表示非常舒服。
順便說(shuō)一下板的尺寸是5x7的
固定這堆模塊,只需要鉆兩個(gè)孔。用小刀刻出要鉆孔的位置,避免鉆歪(就是圖中Q和R之間刻了一個(gè)標(biāo)記):
警告:對(duì)玻璃纖維板切割、鉆孔,一定要注意粉塵污染!
吸入這些粉塵是非常危險(xiǎn)的。所以我是把整塊電路板放到水里面進(jìn)行鉆孔的。(過(guò)程因?yàn)橛兴蜎](méi)有拿手機(jī)出來(lái)拍照)
準(zhǔn)備鉆孔之前,先把所有模塊扔到飯盒里面測(cè)試一下布局:
飯盒大小是1000ml的:
好了各位我鉆完孔回來(lái)了。這次鉆的不錯(cuò),都能對(duì)上,誤差不是很大。
果斷擰上螺絲,感受一下:
然后計(jì)劃在這里焊兩排排針,一排接正極,另一排是負(fù)極。
然后又拆下其他模塊,專心焊接電路板:
放上元件:
準(zhǔn)備進(jìn)行焊接:
然后這就是效果……光滑圓潤(rùn)的焊點(diǎn)?臣妾做不到啊!
……我承認(rèn)焊電路我一點(diǎn)都不在行,所以就不要吐槽這個(gè)焊點(diǎn)丑了= =
最后我用萬(wàn)用表測(cè)了,能用,所以也并沒(méi)有什么問(wèn)題。
焊好當(dāng)然要得瑟一下:于是我又裝上去了(感覺(jué)我拆了又裝中浪費(fèi)了不少時(shí)間……)
然后給電磁閥焊接兩個(gè)排針,就可以直接插杜邦線了,這樣各種模塊還是獨(dú)立的,以后拆卸也方便。(保證接口統(tǒng)一,才能方便調(diào)用!)
焊點(diǎn)是這樣的……其實(shí)這里是虛焊了,我后來(lái)重新焊了一遍=_=。所以看到這么圓的焊點(diǎn),一般都是虛焊。
然后又一天過(guò)去了……晚上臨睡前東西都是這樣扔一堆的。
第三天起來(lái)~今天我們來(lái)講解一下如何給arduino pro mini寫程序,使用FT232RL,和arduino pro mini直接六個(gè)引腳一對(duì)一進(jìn)行對(duì)接(非常方便的說(shuō)):
如果給arduino單獨(dú)供電的話,只需要接三個(gè)引腳。但是要記得兩個(gè)芯片要共地,不然是傳不上去的。
首先連接的是LCD1602,對(duì)應(yīng)的電路圖是這樣子的:
根據(jù)LCD1602的引腳定義,和arduino的連接方法如下:
LCD VSS 接地
LCD VDD 接5V電源
LCD VL 用于調(diào)節(jié)對(duì)比度,通過(guò)電位器再接地。
LCD R/W pin 接地
LCD Enable pin 鏈接數(shù)字口 pin11
LCD D4 pin 鏈接數(shù)字口 pin5
LCD D5 pin 鏈接數(shù)字口 pin4
LCD D6 pin 鏈接數(shù)字口 pin3
LCD D7 pin 鏈接數(shù)字口 pin2
LCD BLA 光源正極
LCD BLK 光源負(fù)極
但是我稍稍修改了引腳的位置,為了更方便接線:
RS-》8
Enable -》7
D4 -》6
D5-》5
D6-》4
D7-》3
R/W-》GND
然后接好了就密密麻麻這么多線了:
然后連DHT11模塊,VCC和GND分別接電源和接地,OUT接2號(hào)數(shù)字口。
然后連接電位器,COM 和NO就是開(kāi)關(guān)的兩端:
可以很輕松地插入~
完全插入(不能裸露太多金屬部分):
擰緊螺絲,大功告成:
這里線太多,也是要用鉗子進(jìn)行連接了……
兩個(gè)繼電器分別接9號(hào)數(shù)字口和10號(hào)數(shù)字口。
寫點(diǎn)小程序測(cè)試一下,繼電器1和繼電器2都可以正常開(kāi)關(guān)。
接下來(lái)花了很多時(shí)間,一個(gè)一個(gè)連接模塊,兩個(gè)電源分別獨(dú)立,一個(gè)電源長(zhǎng)期供電,連接arduino,繼電器1,升壓模塊,LCD1602。另一路電源可以關(guān)閉,給DHT11,土壤濕度模塊,LCD1602的背景光LED,還有給繼電器2進(jìn)行供電,平時(shí)會(huì)關(guān)掉這部分的電源,達(dá)到節(jié)能的目的。
密密麻麻的連接線……
這個(gè)是實(shí)時(shí)時(shí)鐘模塊DS1307,實(shí)際并沒(méi)有派上用途。所以就把它拆了下來(lái)(沒(méi)用你為什么要把人家裝上去(╯‵□′)╯︵┻━┻)。
然后把所有模塊接好線,預(yù)組裝一下,看看能否放下:
在規(guī)劃好模塊的位置,又要進(jìn)行標(biāo)記……打孔:
然后打孔完畢。過(guò)程和前面說(shuō)的大同小異,就不放圖了。
然后擰上螺絲看看,右邊很多空白空間,以后可以用來(lái)放鋰電池,或者移動(dòng)電源:
俯視圖:
放一個(gè)移動(dòng)電源進(jìn)去,測(cè)試一下,剛好能放下呢。
飯盒的容積是1000ML的,逼格than逼格!
通電后,點(diǎn)亮LCD背景燈的效果
然后又調(diào)試程序……如此循環(huán)。其中調(diào)試程序的苦逼過(guò)程就沒(méi)有記錄了……代碼放到github了,地址在帖子的最下面:
然后鏈接水管。直接用電鉆開(kāi)一個(gè)6mm的孔就可以插進(jìn)去了。
鏈接好的樣子。因?yàn)檫@個(gè)飯盒可以很容易地形變,所以很容易調(diào)節(jié):
緊密結(jié)合:
發(fā)現(xiàn)電源線插不進(jìn)去,用1cm的鉆頭進(jìn)行開(kāi)孔:
1cm開(kāi)孔效果
接入電源線,也是剛好可以插入
總體效果,一邊進(jìn)水,另一邊出水:
入水口是這樣的一個(gè)轉(zhuǎn)接口,可以直接固定在水龍頭上,而且不影響正常使用。某寶搜索就可以了(關(guān)鍵字:2分 萬(wàn)能接頭 凈水器)。
上面有個(gè)開(kāi)關(guān),可以不影響正常出水的情況下,引入水流。
最終展示
arduino pro mini芯片
2015年8月10日09:37:32更新物品清單:
arduino pro mini (或者其他任意可以兼容的都可以)
FT232RL(USB轉(zhuǎn)串口,用于給arduino pro mini編程)
LCD1602(用于顯示)
DHT11溫濕度模塊(只是用來(lái)顯示溫濕度,目前程序并沒(méi)有根據(jù)溫濕度數(shù)據(jù)來(lái)判斷澆水量的功能)
杜邦線(10cm和21cm的都買點(diǎn))
萬(wàn)能板,焊錫,烙鐵。(如果你使用arduino uno 加上傳感器shield就不需要自己焊電路)
排針
DC接頭(或者micro usb接頭,用于供電)
DC供電線
電磁閥(或者水泵)
升壓模塊/降壓模塊(根據(jù)電磁閥或水泵的電壓進(jìn)行選擇)
土壤濕度檢測(cè)模塊
水管(我用的是2分管,具體要根據(jù)電磁閥或者水泵的尺寸來(lái)選擇)
水龍頭轉(zhuǎn)接口(用于電磁閥方案,水泵方案不用買)
M3螺絲,M3銅柱若干
繼電器(如果不是太陽(yáng)能供電,不用省電的話,只需要1個(gè)。如果采用太陽(yáng)能供電的方案,可以模仿我的做法)
2015年8月13日15:09:30 更新,增加光敏電阻:
如果你百度搜索“arduino如何接光敏電阻”,結(jié)果一般都是讓你接一個(gè)電阻,再和光敏相連。實(shí)際上這樣并沒(méi)有必要,因?yàn)锳VR單片機(jī)內(nèi)部就有一個(gè)電阻:
只需要利用這個(gè)電阻就好了。將一個(gè)模擬口設(shè)置為高
#define PHOTO_RESISTOR_PIN A2
pinMode(PHOTO_RESISTOR_PIN, OUTPUT);//設(shè)置引腳模式為輸出
digitalWrite(PHOTO_RESISTOR_PIN, HIGH);//拉高引腳
Serial.println(analogRead(PHOTO_RESISTOR_PIN));//調(diào)試輸出
光敏電阻一端與A2相連,另一端直接接地。這樣結(jié)構(gòu)非常簡(jiǎn)單。實(shí)測(cè)全黑條件下讀取數(shù)值為1023,強(qiáng)光手電照射讀取數(shù)值623,戶外陰天環(huán)境(沒(méi)有陽(yáng)光直射),讀取數(shù)值為981,雖然不是很精確,但是一般情況下判斷是白天還是黑夜還是夠用了。設(shè)置閾值為1000,讀取數(shù)值小于這個(gè)值,則表示是白天,不進(jìn)行土壤濕度檢測(cè)。
環(huán)境為陰天,沒(méi)有陽(yáng)光直射,連接光敏電阻的引腳數(shù)值為981
還有拆的時(shí)候不小心太暴力,把飯盒拆破了= =。
兩處破損……挺嚴(yán)重的,只能換飯盒。
就這樣放著,今晚去買了新的飯盒再修理了。
================分割線=========================
代碼下載地址:直接打包ZIP下載 或者 訪問(wèn)github主頁(yè)
里面有個(gè)ino格式的文件,就是arduino程序的文件。要使用arduino軟件打開(kāi)。arduino軟件下載
雖然我用的是arduino pro mini,但是理論上arduino uno之類的板子都可以兼容使用。
下一步計(jì)劃:
加入根據(jù)氣溫判斷澆水量的功能。如果溫度低則少澆水(不知道有沒(méi)有這種需求?據(jù)說(shuō)有些花冬天不能澆太多的水。有多年種花經(jīng)驗(yàn)的童鞋來(lái)傳授點(diǎn)經(jīng)驗(yàn)吧~)
增加tf卡模塊。將土壤濕度的變化數(shù)值寫入tf卡。
增加光敏模塊,檢測(cè)到有光再進(jìn)行澆水。
-
LCD1602
+關(guān)注
關(guān)注
14文章
607瀏覽量
52598 -
DHT11
+關(guān)注
關(guān)注
19文章
277瀏覽量
57603 -
FT232RL
+關(guān)注
關(guān)注
0文章
5瀏覽量
8748
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論