摘 "要:隨著人民生活水平的日益提高,人們對舒適生活的追求成為一種趨勢。對于居室中魚的飼養(yǎng)價(jià)值和觀賞價(jià)值更是得到充分的體現(xiàn),它可以放松心情、緩解壓力、消除學(xué)習(xí)及工作中的眼睛及心理的疲勞。對于養(yǎng)魚所需要的魚缸,目前市場上存在著諸多問題。養(yǎng)魚者大部分采用傳統(tǒng)魚缸,這對魚的飼養(yǎng)及照料有一定的困難;而智能魚缸多為價(jià)格昂貴,體積龐大的水族箱,得不到廣泛的普及。故魚缸的智能化設(shè)計(jì)以及其普遍推廣使用的結(jié)合也是亟待解決的問題。針對這一現(xiàn)狀,設(shè)計(jì)了一套基于Holtek單片機(jī)控制的智能魚缸。
關(guān)鍵詞:合泰Holtek單片機(jī);HT46RU232;智能魚缸;自動調(diào)整
文章編號:1674-3520(2014)-11-00-02
針對魚缸的養(yǎng)護(hù)問題,市場上出現(xiàn)了很多有關(guān)魚缸的水溫控制、換水、充氧和照明的設(shè)備和器具,例如過濾器可除去水中雜質(zhì)、加熱器給水加溫、加氧泵改善水中含氧量等的設(shè)備。但是由于產(chǎn)品種類繁多,功能效果不統(tǒng)一,而且大部分都是非智能化的、單一化的恒溫控制、充氧和照明的系統(tǒng)。
一、本設(shè)計(jì)中智能魚缸的實(shí)現(xiàn)
本課題設(shè)計(jì)是根據(jù)目前國內(nèi)外水族行業(yè)的發(fā)展情況,以及水族箱和觀賞魚的養(yǎng)護(hù)需求進(jìn)行分析,并對行業(yè)中水族箱控制設(shè)備的研發(fā)和產(chǎn)品的特點(diǎn)進(jìn)行總結(jié),自主設(shè)計(jì)并開發(fā)制作的價(jià)格低廉,操作簡單,節(jié)能環(huán)保,集恒溫控制、自動充氧、自動水位檢測并控制進(jìn)排水、自動照明、自動喂食以及要遙控設(shè)計(jì)控制等多功能與一體的魚缸智能控制系統(tǒng)。
(一)HT46RU232最小系統(tǒng)的設(shè)計(jì)
HT46RU232單片機(jī)最小系統(tǒng)和其他單片機(jī)的使用相似,同樣需要除單片機(jī)組件外的時鐘振蕩電路、復(fù)位電路。
(二)系統(tǒng)功能特色
1、組合創(chuàng)新。市場上的魚缸大多沒有其他附屬功能,許多商家有這方面的研究,但是功能相對單一,我們將魚缸水溫、排水、充氧、照明和喂食等設(shè)備結(jié)合在一起,用單片機(jī)進(jìn)行控制,實(shí)現(xiàn)了功能的統(tǒng)一和系統(tǒng)的智能化
2、恒溫設(shè)計(jì)。具有低溫加熱功能;可以根據(jù)不同魚的水中的適宜溫度進(jìn)行不同的設(shè)置。
3、定時自動喂食功能??梢园存I設(shè)置喂食的時間,當(dāng)設(shè)置的時刻一到,單片機(jī)發(fā)送喂食命令,控制舵機(jī)轉(zhuǎn)動,使其放食口打開并適時關(guān)閉,使其食物適量放入魚缸中。
4、具有多重水循環(huán)與水質(zhì)過濾。
5、運(yùn)用無線遙控進(jìn)行控制,更能方便使用者對其進(jìn)行開光照、啟用水泵、啟用充氧泵、喂食等的設(shè)置。
6、應(yīng)用超聲波原理進(jìn)行對水位進(jìn)行檢測,根據(jù)所得到的值進(jìn)行判斷是否關(guān)閉抽水水泵,達(dá)到自動停止放水的功能。
二、系統(tǒng)硬件設(shè)計(jì)
(一)傳感器模塊設(shè)計(jì)
傳感器模塊由光照傳感器、溫度傳感器、水位監(jiān)測器等構(gòu)成。
1、光照傳感器
光照傳感器是由光敏電阻和LM358為主要部件制作的,應(yīng)用光敏電阻有入射光強(qiáng)電阻減小,入射光弱電阻增大的特性,還有LM358的電壓放大功能,得到一個隨光照減弱而增強(qiáng)的電壓。把此電壓值用單片機(jī)內(nèi)部自帶的AD功能將電壓模擬量變?yōu)閿?shù)字量,
2、溫度傳感器
溫度傳感器采用單總線溫度傳感器DS18B20,性能穩(wěn)定,可以節(jié)省IO,由于測的是水溫故需要選擇帶有防水型不銹鋼封裝水溫探頭的DS18B20。
3、水位監(jiān)測器
水位監(jiān)測器是應(yīng)用超聲波可以測距的功能來制作的,應(yīng)用NE555占空比可調(diào)的脈沖振蕩電路產(chǎn)生40KHz的信號,利用CX20106進(jìn)行接收40KHz的信號,由單片機(jī)計(jì)數(shù)器計(jì)算發(fā)送到接收到信號的時間T,有距離(Distance)=T*340/2即可得到離水面的高度。
(二)無線控制模塊設(shè)計(jì)
315M無線模塊體積小,操作簡單,價(jià)格低廉,采用315M無線模塊可以在20米的范圍內(nèi)遙控開關(guān)燈、加氧泵和抽水泵等。
(三)人機(jī)界面設(shè)計(jì)
系統(tǒng)以液晶顯示器LCD12864作為人機(jī)顯示界面,以鍵盤作為人機(jī)交流界面。顯示界面將顯示時間、日期、溫度等信息,實(shí)時時間由DS1302時鐘芯片提供。通過鍵盤還可設(shè)定啟用光照的最小強(qiáng)度值、水溫的恒溫值和定時喂食時間,充分體現(xiàn)了智能魚缸的人性化和智能化。
1、液晶顯示LCD12864
LCD12864漢字圖形點(diǎn)陣液晶顯示模塊,可顯示漢字及圖形,內(nèi)置8192個中文漢字(16X16點(diǎn)陣)、128個字符(8X16點(diǎn)陣)及64X256點(diǎn)陣顯示繪圖RAM(GDRAM)。
在本設(shè)計(jì)中采用了3位串行的輸入方式,雖然對于并行輸入方式來說速度相對慢些,但對硬件線路連接來說相對變的簡單了,并且節(jié)省了不少單片機(jī)的I/O口資源。此時15引腳PSB應(yīng)該接地或是在單片機(jī)的使其在使用時該引腳設(shè)置為0,在本設(shè)計(jì)中選擇15引腳PSB接地的方式進(jìn)行選擇其串行輸入方式。為方便其與單片機(jī)連接,制作了LCD12864的轉(zhuǎn)接板。
2、鍵盤設(shè)計(jì)
鍵盤采用獨(dú)立按鍵,通過按鍵的復(fù)用達(dá)到相應(yīng)需要的數(shù)值的調(diào)整、以及選擇。
KEY1設(shè)置為Enter確認(rèn)鍵,KEY2設(shè)置為Add加調(diào)整鍵,KEY3設(shè)置為Sub減調(diào)整鍵,KEY4設(shè)置為Back返回鍵。
3、時鐘模塊
DS1302芯片管腳說明:
表3-1 " DS1302管腳:
(四)執(zhí)行部分設(shè)計(jì)
執(zhí)行部分包括水中加熱棒、燈、加氧泵、水泵。由于其供電均用220V/50Hz供電,故需要對其控制部分與執(zhí)行部分進(jìn)行隔離,采用PC817芯片進(jìn)行光電耦合控制通過驅(qū)動繼電器的通斷來分別實(shí)現(xiàn)加熱棒、燈、加氧泵、水泵的開啟與否,光電耦合器PC817在電路中起到隔離的效果,使繼電器在導(dǎo)通的情況下產(chǎn)生的較大電流與單片機(jī)的控制管腳進(jìn)行。
三、系統(tǒng)軟件設(shè)計(jì)
(一)系統(tǒng)中使用Holtek MCU的主要核心功能
1、AD轉(zhuǎn)換器
將光照傳感器輸出電壓接至AD轉(zhuǎn)換器的一個通道引腳上(PB0),將模擬電壓轉(zhuǎn)化為數(shù)字信號,有效的減少了外圍電路和開發(fā)成本。
2、外部中斷
水位監(jiān)測器中,應(yīng)用了HT46RU232中的外部中斷功能。40KHz信號接收端接外部中斷引腳(PA5),當(dāng)接收到40KHz信號時,立即執(zhí)行計(jì)算計(jì)數(shù)值的中斷程序,從而可得到較準(zhǔn)確的水位值。
3、定時/計(jì)數(shù)器
利用了單片機(jī)中是定時/計(jì)數(shù)器0(16位定時計(jì)數(shù)),計(jì)算發(fā)送到接收到信號的時間T。
4、看門狗定時器功能
啟用看門狗定時器功能能防止如電磁的干擾等外部不可控制事件,所造成的程序不正常動作或跳轉(zhuǎn)到未知的地址,從而提高了系統(tǒng)的穩(wěn)定性。
在系統(tǒng)主程序中,首先是對各個模塊的初始化,除了包括液晶屏LCD12864、DS1302及串口的初始化外,還應(yīng)對I/O口進(jìn)行正確設(shè)置,按鍵設(shè)定為輸入狀態(tài),繼電器控制腳設(shè)置為輸出狀態(tài)。經(jīng)過單片機(jī)對DS1302讀取時間數(shù)據(jù)、DS18B20進(jìn)行溫度讀取、AD采集到的光照值、定時器記下的時間數(shù)據(jù)經(jīng)過數(shù)據(jù)的處理后分別其顯示時間(時分秒年月日星期)、溫度、光照值、離水面的距離。
(二)系統(tǒng)流程圖
當(dāng)菜單鍵按下后,就進(jìn)入了設(shè)置模式選擇的界面,顯示2當(dāng)確定調(diào)整模式后,就分別可以進(jìn)入四種調(diào)整界面,即時間調(diào)整確定后就進(jìn)入了顯示3的界面,定時調(diào)整確定后就進(jìn)入了顯示4的界面,光照調(diào)整界面確定后就進(jìn)入了顯示5的界面,溫度調(diào)整確定后就進(jìn)入了顯示6的界面。
當(dāng)進(jìn)入各自的調(diào)整界面后就可以通過加減及確定按鍵進(jìn)行相應(yīng)的數(shù)值調(diào)整,從而改變顯示時間、喂食時間、光照最低值、溫度設(shè)定值。
圖4-1 "人機(jī)界面及控制軟件流程圖
除此之外,在不進(jìn)入設(shè)定調(diào)整狀態(tài)時,可以通過無線遙控進(jìn)行相應(yīng)的控制。即水泵、加氧、燈光、喂食的工作控制。在遙控模式下,遙控的四個按鍵進(jìn)行相應(yīng)的控制,并且配合著相應(yīng)的指示燈進(jìn)行指示說明,按下后啟動,再次按下后關(guān)閉,第三次按下后開啟,第四次按下后關(guān)閉,以此類推。這樣就達(dá)到了無線控制的方便、簡捷的控制。
圖4-2 " "顯示界面設(shè)計(jì)
四、結(jié)論
本設(shè)計(jì)主要采用Holtek合泰單片機(jī)HT46RU232為主控芯片作為控制器,充分使用其單片機(jī)的內(nèi)部資源所做的一套智能魚缸系統(tǒng)。該系統(tǒng)有著恒溫設(shè)計(jì)、定時自動喂食、多重水循環(huán)與水質(zhì)過濾、運(yùn)用無線遙控進(jìn)行控制、超聲波原理進(jìn)行對水位進(jìn)行檢測等功能性和實(shí)用性的組合創(chuàng)新。
在設(shè)計(jì)制作的過程中對單片機(jī)的硬件結(jié)構(gòu)和指令系統(tǒng)有了進(jìn)一步充分的了解,通過Holtek合泰單片機(jī)的學(xué)習(xí),培養(yǎng)了自己對知識的遷移性和靈活性的掌握,同時也鍛煉了自己的學(xué)習(xí)新事物的能力。
在編寫程序的時候出現(xiàn)了語法正確,編譯RAM超出范圍的情況。分析應(yīng)該是數(shù)據(jù)存儲器使用完畢,初步認(rèn)為解決的方法有外加存儲器、使用串口多使用一塊單片機(jī)。但看到程序存儲器使用度較低,故發(fā)現(xiàn)了可以用在ROM定義所要顯示的字符串,節(jié)省RAM。經(jīng)過此番處理,問題得以完善解決。