顏景浩
摘 要:現(xiàn)代化的科技館許多展項具有大耗電的投影設(shè)備、LCD大屏幕等,但對電缺乏適當?shù)淖詣庸芾硐到y(tǒng),耗電成為科技館運營中一個非常大的支出。根據(jù)科技館的實際情況和特點,對科技館自動用電系統(tǒng)核心建模做一探索。
關(guān)鍵詞:科技館 供電 建模
中圖分類號:TP27 文獻標識碼:A 文章編號:1007-3973(2013)007-012-02
科技館屬于公益設(shè)施,科技館的支出由財政承擔(dān)。正因為如此,在科技館的管理運營中就可能缺少“精打細算”。一個明顯的例子,就是對電缺乏適當?shù)淖詣庸芾硐到y(tǒng)?,F(xiàn)代化的科技館,絕大多數(shù)需要使用電力,其中許多展項又有大耗電的投影設(shè)備、LCD大屏幕等,因此耗電成為科技館運營中一個非常大的支出。據(jù)統(tǒng)計,一個中型科技館耗電功率在120萬千瓦左右。這方面的挖潛應(yīng)該不小。據(jù)現(xiàn)在科技館對用電系統(tǒng)的管理情況來看,如果采用一套自動用電系統(tǒng),自動控制展項的用電和展廳的照明、空調(diào)等,就可以最大限度地降低浪費,為科技館節(jié)省大筆支出。
本文根據(jù)科技館的實際情況和特點,對科技館自動用電系統(tǒng)核心建模做一探索。
1 問題分析
為了便于分析,以某一市地科技館為例。展館周三至周日開放,周一周二閉館,節(jié)假日開放,時間為上午9:00開館,下午16:30閉館。辦公區(qū)域周一至周二輪班,其他時間需上班,時間為上午8:30上班,下午16:50下班。科技館還會有其他區(qū)域,在時間上會有所不同,但建模的結(jié)構(gòu)都相似。為簡化模型,僅以展廳為例館和辦公區(qū)域這兩個主要部分做討論。
為了說明問題的方便,從簡到繁進行擴展和延伸。
1.1 第一種:精簡模式
按照該科技館的實際情況,自動供電系統(tǒng)應(yīng)滿足如下的功能:
(1)控制系統(tǒng)分別控制兩個工作時間不同的區(qū)域:展廳和辦公區(qū)域。
(2)展廳按照開館和閉館時間,自動送電和關(guān)電。
(3)辦公區(qū)域按工作時間,自動送電和關(guān)電。
根據(jù)這種要求,模結(jié)構(gòu)可以為:
public class Area
{
public bool PowerState { get; set; }
}
public class Musem : Area{ }
public class Office : Area{ }
public class PowerController
{
public void PowerOn(Area area)
{
area.PowerState = true;
}
public void PowerOff(Area area)
{
area.PowerState = false;
}
}
類關(guān)系如圖1。
圖1 精簡模式類關(guān)系圖
工作原理:根據(jù)當前時間分別調(diào)用PowerOn或PowerOff方法,實現(xiàn)自動控制。
1.2 第二種:進一步深化模式
上述簡單模式簡單的按照工作時間進行供關(guān)電,顯然不能滿足實際的需要。原因:
(1)閉館時間內(nèi)可能維修,需要送電。
(2)閉館時間內(nèi)可能來團參觀,需要送電。
(3)辦公區(qū)域因事加班的時候,需要送電。
(4)在正常開放時間,因事閉館,需要能斷電。
(5)辦公區(qū)域因事放假,需要斷電。
因此,展廳和辦公區(qū)域在接受自動控制的同時,必須能夠手工干預(yù),這種手工干預(yù)就象一個開關(guān)按鈕,可以人為地決定電的供斷,并且這種人工干預(yù)要高于自動控制,否則因為二者的命令是相互否定的,一個供電系統(tǒng)無法同時受兩個相互矛盾的指令控制,這就象一個指令向北,一個指令向南,無法同時滿足兩個指令的請求。以事例說明:16:50后,突然來團參觀,需要送電,手工送電后,但自動控制系統(tǒng)根據(jù)時間已經(jīng)過了閉館時間就自動斷電,即便手工再次送電,自動系統(tǒng)又斷電,循環(huán)往復(fù),手工干預(yù)失敗。事實上,由于自動控制系統(tǒng)的反應(yīng)時間為毫秒級,從宏觀上看,就是一直處于斷電狀態(tài),人的手工干預(yù)就象沒有發(fā)生任何動作。鑒此,系統(tǒng)必須要有處理這種例外的功能。當手工控制指令發(fā)出時,自動控制系統(tǒng)就放下控制權(quán)。從程序的角度來說,一旦手工控制,就替代了自動控制。
這種客觀要求,我們可以聯(lián)想到用方法的重載來實現(xiàn)。在前面的PowerController類中,對PowerOn和PowerOff兩個方法進行重載:
public void PowerOn(Area area,bool switchTo)
{
area.PowerState = switchTo;
}
public void PowerOff(Area area, bool switchTo)
{
area.PowerState = switchTo;
}
重載PowerOn和PowerOff兩個方法,一旦手工控制switchTo不為空,PowerState就只跟switchTo有關(guān),也就實現(xiàn)了讓自動控制失效,只服從手工控制的目的。
從類關(guān)系圖(如圖2)中可以清楚地看到,第二種與第一種的差別就是對于PowerOn和PowerOff進行重載。
圖2 深化模式類關(guān)系圖
工作原理:根據(jù)當前時間分別調(diào)用PowerOn或PowerOff方法,實現(xiàn)自動控制;如果有手工干預(yù),則重載控制方法。
1.3 第三種:細化模式
但上述第二種模式仍存在缺陷。第二種模式把辦公區(qū)域和展廳分別當作一個整體來處理,這雖然從管理角度上來說,從無到有,對電的供應(yīng)上產(chǎn)生了一定的自動效果,從精致、細化的角度來說,上述方案還是顯得粗放,不實用?,F(xiàn)在從這個科技館辦公區(qū)域的上班情況進行分析。辦公區(qū)域周一至周二是輪班,并不是所有辦公室在這兩天都上班。但上述模型只把辦公區(qū)域當作一個整體來設(shè)計,要么全部供電,要么全部停電。對于加班的情況也是如此,往往并不是所有辦公室加班。上述的模型并不能識別這種具體的情況,未能將控制具體到每一間辦公室。展廳也存在這種情況,有時比如維修展品,也僅給展品所處的展室(展區(qū))供電即可。
按照這個思路,就需要程序能夠識別每一間辦公室。這可以通過給每一間辦公室和每一個展室或展區(qū)編號(ID)來實現(xiàn)。在程序模型上,展區(qū)跟展室按相同對象來處理,也視作展室。
其基本思路:將辦公區(qū)域與展廳兩個區(qū)域作為兩個組,其下再包含各個辦公室和展區(qū),上述的控制方法PowerOn和PowerOff應(yīng)用的主體不再是兩個大區(qū)域(Area),而是各個辦公室或展室(Room)。
其模型為:
工作原理:辦公區(qū)域和展廳作為兩個組,除了整體上對其控制外,但又可以具體到各個Room進行控制,最小的控制單元為Room。
2 結(jié)論
通過對問題的一步步深入分析,模型由簡單到復(fù)雜,最終形成一個實用可操作的模型。本文給出的是最基層的模型關(guān)系,作為基石在此基礎(chǔ)上去實現(xiàn)業(yè)務(wù)。當然,本文的目的是闡述建?;舅悸?,在實際運用中還需要做進一步地細化。