專注電子技術(shù)學(xué)習(xí)與研究
當(dāng)前位置:單片機(jī)教程網(wǎng) >> MCU設(shè)計(jì)實(shí)例 >> 瀏覽文章

水塔水質(zhì)監(jiān)控器—實(shí)際安裝使用

作者:七彩流星雨   來源:本站原創(chuàng)   點(diǎn)擊數(shù):  更新時(shí)間:2014年04月21日   【字體:
將本裝置投入實(shí)際使用,由于水井下面是已經(jīng)用水泥蓋上了,沒辦法把探頭伸到井下,所以只能關(guān)閉水井水質(zhì)檢測(cè)功能,只啟用自動(dòng)抽水功能。當(dāng)然也可以在水管處插入探頭,但是如果密封不好,漏氣會(huì)導(dǎo)致抽水機(jī)的揚(yáng)程變短甚至抽不到那么高的水位。


2013年3月30日下午
買來相關(guān)的材料。
有水管,彎頭,軟電線,硬電線等。

首先先看看家里的水塔:
 

水管接在水塔原先預(yù)留的透氣孔上,浮球式水位傳感器從此伸入水塔低水位和滿水位位置,固定在一節(jié)水管上。然后把電線引出來,用水管罩著牽引到墻角的洞,進(jìn)入屋內(nèi)。用水管罩是防止陽(yáng)光直射電線容易老化。
墻角的洞原先并沒有預(yù)留足夠?qū)挼闹睆健荒艽┸浘進(jìn)去試試看了,水管沒辦法再進(jìn)去了 。



在給水管鉆孔和割槽安裝浮球的時(shí)候,手頭上沒有砂輪鋸,想到一個(gè)土辦法就是“用密集的點(diǎn)繪成線”
也能代替砂輪鋸切割直線啦~~~雖然不是很好看。





這樣就能固定在水管上了,然后把這只水管扭到水塔里面就行,水塔的排氣口有內(nèi)牙,我水管的一頭套有外牙。



哎呀,真是一大堆東西堆在這里有得弄的,走線決定走墻角。抽水機(jī)的電源線用4mm^2的硬線做,買了一捆100米~~~,不信從5樓到天井不夠長(zhǎng)。水位控制線用軟線做。
當(dāng)初抽水機(jī)怎么就沒接地線呢。。。哎不接也算了,也沒什么人靠近它的,有一段上水管是鐵的,如果水有電的時(shí)候,能夠傳電到墻壁里,也充當(dāng)了一點(diǎn)地線作用吧。

由于天色已晚,工程量還是有點(diǎn)的,把材料買好后明天再做,因?yàn)槊魈炜赡芟掠辏鋈ゲ环奖。今晚就順便更改程序?br>


涉及到房子的大工程,房主當(dāng)然也興致勃勃地爬上樓頂觀看啦。





看呵,鄰居家家戶戶都裝有水塔,都使用地下水。如果每人當(dāng)初建挖水井的時(shí)候都裝上這個(gè)東東,那我也能賺一點(diǎn)了。

2013年3月31日早晨
程序幾乎重新編寫了一遍,很多地方得到優(yōu)化。
做這產(chǎn)品比做比賽作品收獲更多?紤]更周全特別是日后維護(hù),作品只是一時(shí)演示,不實(shí)際。現(xiàn)在這個(gè)監(jiān)控器已經(jīng)成為產(chǎn)品,各方面都得到優(yōu)化如失控等意外情況發(fā)生時(shí),能夠及時(shí)自我解決或給用戶提供另一種補(bǔ)救措施這兩點(diǎn)已經(jīng)做到。還有低功耗等這都是大賽作品一般考慮不到的。我宗旨是不懂技術(shù)的人也能維護(hù)! 
為了提升程序的穩(wěn)定性,啟動(dòng)了單片機(jī)內(nèi)的看門狗。
看門狗就是如果程序跑飛了,出現(xiàn)不可預(yù)料的情況時(shí),即沒有執(zhí)行喂狗操作。就能夠在65.5ms后馬上自動(dòng)復(fù)位單片機(jī),不讓整套裝置失控 。
另外,利用單片機(jī)內(nèi)的EEPROM,存儲(chǔ)了一些具有記錄性、值得回憶意義的文字和數(shù)據(jù),數(shù)據(jù)內(nèi)容終身不毀,即使斷電仍保存,除非人為去擦除。
存儲(chǔ)了裝置第一次啟動(dòng)的時(shí)間,累計(jì)自動(dòng)完成抽水的次數(shù),本裝置的來源以及經(jīng)歷。
下面是EEPROM存儲(chǔ)的內(nèi)容。初始化狀態(tài)。值得注意的是,AVR單片機(jī)的數(shù)據(jù)存儲(chǔ)模式是小端模式,即有效字節(jié)低位在地址低位。 

 

累計(jì)自動(dòng)完成的抽水次數(shù),這個(gè)我特別設(shè)計(jì)算法,數(shù)據(jù)類型定為unsigned long int 哈哈~~~范圍夠大的吧,還是unsigned的。但是EEPROM的總線寬度只有8位。這樣就回歸到最底層的設(shè)計(jì)啦,自己設(shè)計(jì)函數(shù)把數(shù)值存進(jìn)EEPROM,讀寫函數(shù)如下:
unsigned long int time=0;

for (i=0;i<4;i++)//讀數(shù)據(jù)
{
time<<=8;
while(EECR&(1<<EEWE));
EEAR=0x23-i;//內(nèi)置EEPROM的0x20地址是記錄自動(dòng)完成抽水的次數(shù)
EECR|=1<<EERE;//進(jìn)行讀操作
time|=EEDR;
asm("WDR");//喂狗
}
time++;
for (i=0;i<4;i++)//寫數(shù)據(jù)
{
while(EECR&(1<<EEWE));
EEAR=0x20+i;
EEDR=time;
EECR|=1<<EEMWE;//準(zhǔn)備寫操作
EECR|=1<<EEWE;//寫操作
time>>=8;
asm("WDR");//喂狗
}

由于是產(chǎn)品了,所以要更為自動(dòng)化。

把抽水設(shè)計(jì)成一個(gè)周期任務(wù),如果在抽水過程中,家里突然停電,等到下次來電時(shí)能夠自動(dòng)繼續(xù)抽水,直到抽滿為止。
裝置的電源開關(guān)去掉,一上電馬上工作。
關(guān)于程序方面,更多可靠性的功能我還會(huì)繼續(xù)增加和維護(hù),直到我離開這個(gè)房子去其他地方的時(shí)候。
目的讓維護(hù)更加簡(jiǎn)便呵呵。

為了防止裝置硬件性故障,(軟件上是沒問題的了,有看門狗) 
在抽水機(jī)的控制電路上,設(shè)計(jì)了另一道保障,能在裝置失控的狀態(tài)下人為強(qiáng)制控制抽水機(jī),即回到原始的手動(dòng)抽水的辦法 。

結(jié)合實(shí)際情況,控制器安裝在5樓,抽水機(jī)在一樓,需要從一樓到五樓拉兩條線,它們是控制抽水機(jī)的關(guān)鍵電線。雖然電線有絕緣層,但途徑各個(gè)樓梯,為了更安全,我把這兩條線設(shè)成零線,只有抽水機(jī)工作時(shí)才有電。單片機(jī)控制繼電器閉合、斷開這兩條線,能夠達(dá)到自動(dòng)控制抽水的目的,同時(shí)就算絕緣層破裂也不要緊。
這樣的話,在原來的電閘處,火線就必須時(shí)刻接通到抽水機(jī),這就是我原先埋怨沒有接地線的原因。
不過,抽水機(jī)和樓梯,仍是樓梯的安全較重要,抽水機(jī)在門角,少人去理。當(dāng)然使用兩個(gè)繼電器控制或者在這里兩條電線上套一水管是最安全不過的了。【2013年4月7日13:37:41對(duì)此斜體字內(nèi)容進(jìn)行更正:無論怎樣接線,始終都會(huì)有一條火線經(jīng)過樓梯,這在不用無線控制下是不可避免的】



右邊的電閘是以前難道是爸爸裝的?由于左邊的電閘的螺絲生銹,我拆開右邊的看看還能不能用,結(jié)果看到保險(xiǎn)絲的地方,頓時(shí)笑了……左邊用銅線接上,右邊用一塊鋁片接上,亂七八糟的,有這樣接的嘛,不過算了反正那個(gè)電閘已經(jīng)不用了。


我只能接在線上了,電閘里的螺絲有一些已經(jīng)不能扭開,在原來的線上剝開一道口子,捆綁上去。好難捆綁,原來的是多股線,我的是單股4mm2的粗銅線……

這樣左邊的電閘就成了第二道保障了,當(dāng)裝置失控時(shí),不能自動(dòng)恢復(fù)的時(shí)候,拔掉裝置電源,這個(gè)電閘就和原來的電閘沒什么區(qū)別了,打上抽水,拉下斷電。裝置正常運(yùn)行的情況下,電閘是打下來的,不通電的。

2013年3月31日下午
終于把所有東西安裝完了。在測(cè)試過程中,因?yàn)榘惭b時(shí)候家人在旁邊說話,說著說著我把高低水位的控制線接反了……結(jié)果抽水過程鬧出笑話,抽到低水位就停了。
還有抽水機(jī)斷電的時(shí)候,由于水塔的水多,水面的水波推動(dòng)浮球,在臨界點(diǎn)的時(shí)候有幾率導(dǎo)致抽水機(jī)抽抽停停。這個(gè)問題必須解決。
2013年3月31日晚上
抽水機(jī)在臨界點(diǎn)抽抽停停的問題已經(jīng)解決,同時(shí)我關(guān)閉掉了許多LED燈,保留兩盞燈,紅燈亮表示未抽在水,綠燈亮表示正在抽水,任何一盞燈亮都表示裝置正常運(yùn)行。數(shù)碼管的電源也斷開,兩片74HC573芯片也斷電。盡最大可能節(jié)省功耗。由于萬能表的200mA保險(xiǎn)絲斷了,只能用20A的量程,測(cè)得電流為0.2A。那么功率就大概1W左右。還是可以的。
 
使用水管套電線,防止老鼠咬。幸虧這個(gè)洞還足夠大,當(dāng)初真是有遠(yuǎn)見,鑿得不錯(cuò)@趕海人生 




水塔安裝完后的外表圖

此裝置我還將繼續(xù)升級(jí),往維護(hù)方面升級(jí),能夠更快幫助人們,即使是不懂技術(shù)的人,也能檢測(cè)出哪里出問題


2013年4月6日22:41:30
至今,水塔水質(zhì)監(jiān)控器已經(jīng)全天候運(yùn)行了一周,整體表現(xiàn)良好。期間出現(xiàn)兩次不尋常的情況,每個(gè)情況出現(xiàn)后,又都恢復(fù)正常,并不是一直錯(cuò)誤地發(fā)展下去,均不不影響日常用水:
①投入使用后第三天的清晨,媽媽報(bào)告說抽水不到1分鐘又停了
②今晚,外婆說剛才
自動(dòng)抽水10分鐘,并且啟動(dòng)前1個(gè)小時(shí)已經(jīng)抽滿過一次水,不可能用得那么快。

觸發(fā)抽水的條件有且只有一個(gè):低水位傳感器的信號(hào)線被拉高電平。
可能的原因:
①有可能在布線過程中劃傷信號(hào)線,每個(gè)傳感器有一條+5V的線和一條信號(hào)線,劃傷的話可能有幾率+5V的線和信號(hào)線觸碰,導(dǎo)致誤判。
②水中的懸浮物或水流把低水位傳感器的浮球暫時(shí)拉低,導(dǎo)致錯(cuò)誤地觸發(fā)信號(hào)。

改進(jìn)方法:主程序中加一種算法來驗(yàn)證是否是誤判,對(duì)傳感器不能100%信任。
 
2013年4月7日13:39:09
對(duì)它進(jìn)行了第一次維護(hù)。
取出芯片,讀出EEPROM內(nèi)容,
地址0x20處的數(shù)據(jù)為0x0F。說明裝置從第一次安裝使用到現(xiàn)在已經(jīng)完成自動(dòng)抽水15次。但這個(gè)值我覺得太特殊了,今晚抽過一次水后,我有必要再讀一次數(shù)據(jù),看是否還是0x0F。

本次維護(hù)新增了兩處判斷,即軟件把水位傳感器的信號(hào)進(jìn)行去抖動(dòng)處理。新增了兩項(xiàng)記錄。
當(dāng)檢測(cè)到電位發(fā)生變化的時(shí)候,等待10秒鐘,10秒過后再次檢測(cè),如果電位沒有再次變化,則說明此時(shí)的信號(hào)是正確的,然后采取相應(yīng)行動(dòng)。否則記錄此次出現(xiàn)錯(cuò)誤信號(hào)的事件。
雖然這樣子檢測(cè)一般情況下能把錯(cuò)誤的信號(hào)過濾掉,但是還是會(huì)存在有一些特殊情況,如傳感器損壞、有異物纏住浮球等,但發(fā)生幾率很低。
在EEPROM里,我設(shè)0x10~0x11這兩個(gè)空間來記錄低水位傳感器傳出錯(cuò)誤信號(hào)的次數(shù),0x12~0x13為高水位傳感器傳出錯(cuò)誤信號(hào)的次數(shù)。



2013年4月13日21:18:49
自從上次維護(hù)以來,又過了一個(gè)星期,這個(gè)星期一點(diǎn)問題都不出,外婆也沒發(fā)現(xiàn)有異常。
現(xiàn)在我調(diào)取了EEPROM里的數(shù)據(jù),根據(jù)自動(dòng)記錄的數(shù)據(jù),至今已經(jīng)完成自動(dòng)抽水任務(wù)21次,兩個(gè)傳感器發(fā)生錯(cuò)誤信號(hào)的次數(shù)為0
看來上次更改的算法是起到了很好的作用。
本次維護(hù)不做任何改動(dòng)。






2013年5月11日18:53:12
再次對(duì)它進(jìn)行維護(hù)。
更改220V電機(jī)線連接方式。
 







主要改動(dòng)為:火線進(jìn)入一號(hào)開關(guān),開關(guān)打上去后,通過一根保險(xiǎn)絲進(jìn)入二號(hào)開關(guān)和裝置里的繼電器的一端。

這樣的話,一號(hào)開關(guān)就是總開關(guān)了 ,它比裝置優(yōu)先控制火線的接通。裝置也由原先的控制零線改為控制火線。

這樣,火線從一樓到樓頂時(shí),如果漏電,人觸碰到的話,要不就是保險(xiǎn)絲熔斷,要不就是電表處的漏電、過流保護(hù)開關(guān)自動(dòng)跳閘。而且,抽水機(jī)在啟動(dòng)的情況下,沒有火線到,整個(gè)機(jī)器是不會(huì)帶電的。
當(dāng)維修抽水機(jī)時(shí),打下一號(hào)總開關(guān),是最安全的了(如果零線帶電等特殊情況除外),其實(shí)我應(yīng)該再讓一號(hào)開關(guān)同時(shí)控制零線和火線的,這樣能夠防止人不知道零線帶電的情況下維修抽水機(jī)。
不過抽水機(jī)那邊有個(gè)排插和插頭的,維修時(shí)可以拔掉那個(gè)插頭。




2013年7月2日23:48:41 
自從使用了新的水塔水位監(jiān)控器后,一直沒有出現(xiàn)問題。
今天發(fā)現(xiàn)居然不自動(dòng)抽水了,外公在我不在家的時(shí)候,通過閘刀開關(guān)直接強(qiáng)制抽水,并不影響日常用水,這點(diǎn)設(shè)計(jì)很好!檢查時(shí)我故意設(shè)計(jì)的蜂鳴器派上大用場(chǎng),在外面把線剝開絕緣層,短接如果聽到蜂鳴器響就說明是傳感器問題。我剝開后發(fā)現(xiàn),線內(nèi)部都被腐蝕,爛掉了。短接后用萬能表測(cè)電阻幾百歐千歐去,可能由于井水礦物質(zhì)多,由于存在微弱的5v直流電,形成原電池。四五個(gè)月后時(shí)間長(zhǎng)了也會(huì)慢慢反應(yīng)腐蝕掉。換單股粗電線可以緩解 

還有,因?yàn)榭刂扑惴ǖ男枰枰獙⑿盘?hào)線保持高電平,可以將這個(gè)上拉電阻換大些。使得電流減到最小,單片機(jī)只要電壓信號(hào)就夠了,不需要多大的電流,另一方面,上拉電阻大了以后,電流會(huì)減小,能降低水塔那邊微弱的原電池反應(yīng)速率,延長(zhǎng)電線壽命


2013年7月6日23:53:13 
根據(jù)電路實(shí)際焊接,元件選取,更新電腦里的原理圖并打印出來放在裝置旁邊以便以后查詢。
信號(hào)線上拉電阻由原來的10K換成680K。 
通過串口清空數(shù)據(jù)時(shí),增加回饋信息。 
補(bǔ)焊上次漏焊的高頻濾波電容C2。
 


2013年7月7日15:15:29 

更換水塔中的電線,采用多股銅芯軟電線,接頭處焊接并用熱熔膠封住,這樣能夠防止水進(jìn)入線的絕緣套里,防止發(fā)生化學(xué)反應(yīng)電解,不用電工膠布包扎了。
 

關(guān)閉窗口

相關(guān)文章