智能IC卡預付費煤氣表的設計
傳統的煤氣表的收費是由抄表人員走進(jìn)千家萬(wàn)戶(hù)的居民家中讀取煤氣表數據,然后計算當月用量。計算出應收費用后再向用戶(hù)收取。這樣的過(guò)程存在著(zhù)工作量大收費時(shí)間長(cháng)、效率低等問(wèn)題。更主要的問(wèn)題是由于用戶(hù)及其它方面的原因。往往不能按時(shí)收費,造成用戶(hù)對燃氣供應方的資金拖欠等。采用預付費煤氣表,使用戶(hù)與燃氣供應方的資金結算方式發(fā)生變化,可以有效地解決以上問(wèn)題,也有利于住宅小區實(shí)現智能化物業(yè)管理。當前國內已有許多廠(chǎng)家開(kāi)始或已經(jīng)生產(chǎn)出采用接觸式IC卡的預付費煤氣表,但是此類(lèi)表中的IC卡觸點(diǎn)在櫥房等易污染的環(huán)境中長(cháng)期使用,會(huì )造成接觸不良的現象。由價(jià)格較低的非接觸IC卡所構成的煤氣表可以改善表的性能。
1 非接觸式IC卡預付費煤氣表的功能
非接觸式IC卡預付費煤氣表是采用目前現成的機械式煤氣表為基表。通過(guò)光電或霍爾元件將基表的氣體流量信號取出并轉換成電信號輸入單片機進(jìn)行處理,并與表內已由IC卡預先讀入E²PROM 中的預置值進(jìn)行計算并扣除相應量,在預置值減至最小設定值后表將發(fā)出提示信號提醒用戶(hù)提前購氣,否則預置值減為零后將關(guān)閉氣閥,直至用戶(hù)重新購買(mǎi)的用氣量經(jīng)IC卡讀入煤氣表后才會(huì )重新開(kāi)閥供氣。隨著(zhù)燃氣供需關(guān)系的變化,可以在表內設計有實(shí)時(shí)時(shí)鐘電路,對用戶(hù)的用氣量進(jìn)行費用分時(shí)計價(jià)這樣可引導用戶(hù)避開(kāi)用氣高蜂時(shí)間用氣,實(shí)現燃氣供應方對用戶(hù)在每日24 h內按供氣的高峰與低谷點(diǎn)在不同的時(shí)間段以不同的價(jià)格收費,有利于燃氣能源的合理有效利用。
2 非接觸式IC卡煤氣表的基本結構及原理
該表組成框圖如圖1所示。由電源部分、 卡讀寫(xiě)電路、單片機、串行E²PROM及串行實(shí)時(shí)時(shí)鐘電路、閥門(mén)控制等組成。
2.1 電源部分
合理選擇儀表的電源的是很重要的,考慮到煤氣表的防爆安全性,首先是不能用市電228 V供電。應采用電池供電,但電池的使用壽命及儀表的功耗在設計中應當認真考慮。該表中選用3,6 V 1,2 A的高能量鋰電池供電,其存儲壽命可達6年。電路設計中為使功耗降到最低,單片機89C2051在不用氣時(shí)及用氣計數時(shí)間間隔內均運行于掉電方式,一塊標稱(chēng)流量為4m³/h的城鎮居民戶(hù)的煤氣表,當脈沖信號以0,01 為單位計數時(shí),最大流量時(shí)也只在每9 s才產(chǎn)生一個(gè)計數信號,而實(shí)際使用中往往達不到如此流量,在每個(gè)計數信號作用時(shí)單片機僅運行30ms時(shí)間,工作電流為l5mA, 這樣可以大大地降低電源功耗。
另外,由于IC卡讀寫(xiě)電路的工作是不連續的,通常只在對IC卡操作時(shí)(一個(gè)月或更長(cháng)時(shí)間)才工作一次,因此平時(shí)可由單片機控制使它不供電,由于大多數的機械表為金屬殼體,對射頻信號有屏蔽作用,因此可在表殼上開(kāi)一個(gè)類(lèi)似接觸卡的讀卡槽(但無(wú)觸點(diǎn)),當需要讀寫(xiě)卡時(shí),將卡插入槽內,槽底部有一個(gè)小開(kāi)關(guān)觸發(fā)單片機接通IC卡讀寫(xiě)電路的電源,卡讀寫(xiě)完后,無(wú)論卡是否從槽內取出,IC卡讀寫(xiě)電路都會(huì )斷電,這樣可以降低電池消耗。
2.2 IC卡讀寫(xiě)電路及其數據結構
非接觸式IC卡采用德國TEMIC公司生產(chǎn)的E5550芯片所封裝的射頻卡,該卡的成本較低,最主要的是它的讀寫(xiě)電路無(wú)論結構、成本及體積等方面的特殊優(yōu)點(diǎn)使它與其它非接觸卡相比更適宜于該表的應用,其讀寫(xiě)電路的核心也是該公司生產(chǎn)的U2270B芯片,該芯片只需較少的外圍元件即可與單片機連結構成讀寫(xiě)電路,但該蒼片需至步不低于5v的電源供電,因此,由3,6V供電的鋰電池需經(jīng)過(guò)一個(gè)簡(jiǎn)單的DC-DC升壓后為它供電,通過(guò)一個(gè)安裝在卡槽側面直徑約3.5 cm的電感線(xiàn)圈對卡進(jìn)行讀寫(xiě)。
F5550 IC卡是一種可靠性較好的可進(jìn)行邏輯加密的射頻(RF)串行IC卡,其可存儲的數據量為28字節?煞譃7塊,每塊4字節并附加l位寫(xiě)保護位,用于塊寫(xiě)保護,除外還有4字節32位的加密口令。同時(shí)配合其可編程的模式操作控制中對射頻信號的載波頻率、調制方式及,al3R功能的編程,可保證數據的安全性,以實(shí)現一卡一表的對應關(guān)系,用戶(hù)與用戶(hù)之間不能互使用?砂垂δ茉O計為用戶(hù)卡與超級用戶(hù)卡,用戶(hù)卡發(fā)給用戶(hù)用來(lái)購氣,卡上記錄為購氣預置值(金額),超級用戶(hù)卡由燃氣供應方的管理人員使用,用來(lái)對煤氣表的內部參數調整和設置,如定期的實(shí)時(shí)時(shí)鐘調整(校對時(shí)間),高峰時(shí)與低谷時(shí)的單價(jià)調整,與基表同步的內部初始值的設定等。單片機內部有一個(gè)與基表同步的計數值,當用戶(hù)每次將所購氣的預置值(金額)讀入表內的同時(shí),表內的這一計數值會(huì )自動(dòng)回寫(xiě)到卡上,這樣,用戶(hù)再到燃氣供應方指定的購氣點(diǎn)購氣時(shí),管理系統先讀取卡內數據存入系統,然后再將新購氣值寫(xiě)到卡上,由于用戶(hù)與系統之間的這種數據交換方式,可使燃氣供應方檢查監督用戶(hù)燃氣及表的使用情況,以提高系統及煤氣表數據的安全可靠性。
2.3 單片機、串行E²PROM及串行實(shí)時(shí)時(shí)鐘電路
單片機采用ATMEL公司生產(chǎn)的產(chǎn)品,該芯片具有空閑與掉電兩種節電工作方式,在掉電工作方式下單片機處于睡眠狀態(tài),功耗可降到最低,取自基表的計數脈沖信號將單片機從睡眠中喚醒,當完成一個(gè)計數的操作過(guò)程后,又進(jìn)入睡眠狀態(tài),用戶(hù)不用氣時(shí)及在基表的計數脈沖的間隔內使單片機處于睡眠狀態(tài)。由于A(yíng)T89C2051單片機只能用復位的方式才能從睡眠狀態(tài)喚醒,因此可將計數脈沖加在它的復位端,即每來(lái)一個(gè)計數信號,單片機口u復位一次,程序運行一次,將上一次的數據從串行E²PROM中讀出,處理完后再寫(xiě)入串行E²PROM然后單片機就進(jìn)入掉電(睡眠)狀態(tài)。同樣,IC卡槽內讀卡開(kāi)關(guān)信號也是加在復位端的,但不同之處是它同時(shí)還產(chǎn)生一個(gè)脈寬大于復位脈沖并滯后于復位脈沖的信號作用于P1.0端,如圖2所示。
采用這樣的工作方式,一方面可以利用AT89C2051單片機掉電工作方式,單片機實(shí)際上常期處于睡眠狀態(tài)使功耗降為極低。另一方面讀卡信號和復位信號是由復位端注入,可以使單片機省去看門(mén)狗及上電復位等電路而使煤氣表保持可靠的工作,提高儀表的整體可靠性。
串行E²POM用來(lái)保存流量計數值、單價(jià)、高峰與低谷的切換時(shí)間以及其它的中間參數等。采用24(181串行存儲器芯片,該芯片具有256字節的存儲容量,為二線(xiàn)式I²C總線(xiàn)串行接口,數據擦寫(xiě)次數為10萬(wàn)次,數據保存時(shí)間為100年。串行時(shí)鐘同樣用I²C串行接口芯片PCF8583,該芯片內部具有實(shí)時(shí)時(shí)種功能,時(shí)鐘運行不需單片機管理,并能夠保證一定的走時(shí)精度。
2.4 閥門(mén)控制部分主要是選用雙位置煤氣表專(zhuān)用閥門(mén),目前已有廠(chǎng)家開(kāi)發(fā)生產(chǎn),該閥門(mén)具有較好的密封性與抗腐蝕性、抗老化性。此閥的功耗極小并且只有在開(kāi)啟和關(guān)閉時(shí)才耗電,平時(shí)靜止狀態(tài)不耗電,通過(guò)改變電磁線(xiàn)圈中的電流方向可以控制開(kāi)啟與關(guān)閉。
3 軟件設計
煤氣表的軟件部分由兩個(gè)分支程序組成,即計數與IC卡讀寫(xiě)兩部分。這兩部分由復位后根據P1,0端的信號狀態(tài)而決定產(chǎn)生相應的分支,計數部分是先將前次脈沖計數所得運算結果從E²PROM中讀出,包括高峰時(shí)低谷時(shí)的不同單價(jià)、高峰與低谷的切換時(shí)間、實(shí)時(shí)時(shí)鐘與基表同步的累計量。分時(shí)計費的方法就是先由峰谷切換時(shí)間將每日24 h劃分為不同的時(shí)間段,由實(shí)時(shí)時(shí)間確定當前時(shí)間段是高峰期還是低谷期,并根據運行標志判別前次計數信號累計與當前時(shí)間是否在同一時(shí)間段內,如相同,則只進(jìn)行該時(shí)間段內的累計計數,然后程序結束。如不相同,則根據前一次時(shí)間段的用氣單價(jià)進(jìn)行用氣費用結算并由表內預置值中遞減扣除,新的時(shí)間段累計清零后重新計數。當余值小于設定最小值時(shí),發(fā)出報警信號提醒用戶(hù)購氣,此后如最小值低于零時(shí)關(guān)閉閥門(mén)停止供氣。程序結束時(shí)將所有數據寫(xiě)回E²POM中。
IC卡讀寫(xiě)部分首先校對看口令是否正確,如正確后根據卡上的標識字區分用戶(hù)卡與超級用戶(hù)卡;如果是用戶(hù)卡則將購氣的預置值讀入表內,并與表內原有的剩余值進(jìn)行正負累計,然后將表內的氣體累計流量回寫(xiě)到卡上,以便用戶(hù)下次購氣時(shí)與管理系統交換數據。如果是超級用戶(hù)卡根據其不同功能,如:初始化卡、校時(shí)卡、調價(jià)卡等,完成相應的讀寫(xiě)功能。
4 結束語(yǔ)
目前,國內原來(lái)生產(chǎn)機械式煤氣表的企業(yè)不斷地轉向IC卡煤氣表的生產(chǎn),但多數為接觸式IC卡,本文提出的非接觸式IC卡煤氣表是采用目前認為成本最低的非接觸IC卡系統來(lái)實(shí)現的,而其它的非接觸IC卡,如MIFARE卡等,其讀寫(xiě)裝置的成本遠遠高于上述表中所選的E5550卡。因此,選用E5550卡是實(shí)現IC卡煤氣表非接觸化的關(guān)鍵,雖然成本只比用接觸式IC卡表增加幾十元,但其優(yōu)點(diǎn)則是很突出的。上述其它部分的軟硬件的設計方法實(shí)踐證明也是很有意義的。
智能IC卡預付費煤氣表的設計