新聞中心

EEPW首頁 > 消費電子 > 設(shè)計應(yīng)用 > 太陽熱水器水位控制的EDA實現(xiàn)

太陽熱水器水位控制的EDA實現(xiàn)

作者: 時間:2010-02-26 來源:網(wǎng)絡(luò) 收藏
 1 引言

  [1]目前,我國的產(chǎn)量和使用量均居世界首位[1][2]。隨著人們生活水平的提高,對的品質(zhì)要求越來越高。智能越來越受到人們的歡迎。是智能型太陽能熱水器的基本功能之一,是“全自動控制”不可或缺的環(huán)節(jié)。所謂控制,是通過設(shè)定來太陽能熱水器水箱里缺水時自動補水、水滿時自動停水的功能?,F(xiàn)有的控制方案多由傳感器根據(jù)缺水或滿水時發(fā)出的不同信號控制半導(dǎo)體器件的通斷,從而進一步控制繼電器、電磁閥的開合狀態(tài),來進行補水與否。水滿后自動停水功能一般都能做到。但“缺水”的定義往往會造成用戶的使用不便。如把缺水定義為水箱無水,當(dāng)晚上仍有少量余水時不能及時補水,會造成第二天用水不便;而若把缺水定義為一特定水位,則會在低于此水位用水時出現(xiàn)混水狀態(tài)[3]。

本文引用地址:http://www.butianyuan.cn/article/166767.htm

  本文設(shè)計了一種新型的水位控制器,并采用了電子設(shè)計自動化()技術(shù)[4][5],用目前廣泛應(yīng)用的VHDL硬件電路描述語言,在Altera公司的MAX+PLUSⅡ集成開發(fā)環(huán)境下進行綜合、仿真,并下載到可編程邏輯器件EPF10K10TC144-3中,以控制功能。

  2 水位控制的主要功能

  智能型水位控制要求補水及時且不影響正常使用。此處設(shè)計的智能化水位控制器可以實現(xiàn)水滿后自動停水、條件補水和強制補水及顯示、報警等功能。如圖1所示。

水位控制示意圖

  圖1 水位控制示意圖

  其中“水位”由水箱中的水位傳感器提供。分三個檔位:滿水水位、條件補水水位和強制補水水位。滿水水位用于實現(xiàn)水滿后自動停水功能;條件補水水位可設(shè)置在一定水位如半箱水,當(dāng)水箱水位低于此設(shè)置(高于強制補水水位)時實現(xiàn)有條件補水:當(dāng)用水指示位有效(正在用水)時禁止補水,否則予以補水;強制補水水位可設(shè)置為水箱無水(或設(shè)置在較低水位),此時實現(xiàn)強制補水功能。為使用方便,控制器提供報警、指示功能:補水時補水指示燈亮,用戶此時不能用水;水箱水位低于條件水位時發(fā)出提示音樂,此時用戶若想繼續(xù)間斷用水,可通過鍵盤設(shè)置“補水禁止”,這樣,即便不用水也不會補水,以便短時間內(nèi)仍有熱水可用,因此時有音樂提示,用戶可在用水完畢及時撤銷“補水禁止”位,為水箱補水;水箱水位到達強制補水水位而又被禁止補水時,發(fā)出報警信號,以便撤銷補水禁止位及時補水,防止水箱長時間缺水。

  3 水位控制器的VHDL代碼

  VHDL(Very-High-Speed Integrated Circuit Hardware Description Language)是IEEE工業(yè)標(biāo)準(zhǔn)硬件描述語言,是隨著可編程邏輯器件(PLD)的發(fā)展而發(fā)展起來的。這種用語言描述硬件電路的方式,容易修改和保存,且具有很強的行為描述能力,所以在電路設(shè)計中得到了廣泛應(yīng)用。以下是描述水位控制的VHDL代碼。

  LIBRARY IEEE;

  USE IEEE.STD_LOGIC_1164.ALL;

  ENTITY bushui IS

   PORT (ply,forbid : IN STD_LOGIC; --用水標(biāo)示,用水禁止

   level : IN INTEGER RANGE 0 TO 7; --水位

   valve,alm,music : OUT STD_LOGIC; --補水電磁閥,報警,提示音樂

   fil_l : BUFFER STD_LOGIC); --補水指示燈

  END bushui;

  ARCHITECTURE behav OF bushui IS

  BEGIN

  PROCESS(ply,forbid,level)

   BEGIN

   CASE forbid IS

WHEN '1' => valve = '0';fil_l = '0'; --禁止補水

   IF level = 3 AND level > 1 THEN

  music = '1';alm = '0'; --音樂提示水位低于條件補水水位

   ELSIF level = 1 THEN

  alm = '1';music = '0'; --水位低于強制補水水位報警

   ELSE music = '0'; alm = '0';

  END IF;

   WHEN '0' => alm = '0';

   IF level = 7 THEN

  valve = '0';fil_l = '0';music = '0'; 水滿時停止補水

   ELSIF level= 3 AND level > 1 THEN

  alm = '0';music = '1'; --音樂提示水位低于條件補水水位

  valve = not ply; fil_l = not ply; --不用水時予以補水

   ELSIF level = 1 THEN

  valve = '1';fil_l = '1';music = '0'; --強制補水

   ELSE music = '0'; valve = fil_l;fil_l = fil_l;

  END IF;

   WHEN OTHERS => null;

   END CASE;

   END PROCESS;

  END behav;


上一頁 1 2 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉