基于MSP430系列單片機的智能IC卡熱量表電控系統(tǒng)設計
引言
智能IC卡熱量表是根據(jù)用戶IC卡購熱量實施自動計費、自動控制的一種高科技民用產(chǎn)品.具有遠程抄表及人工抄表無可比擬的優(yōu)越性:并且隨著超大規(guī)模集成電路的發(fā)展,“金卡工程”的深入,節(jié)能環(huán)保和熱計量結算方式的改革,智能IC卡呈現(xiàn)出十分廣闊的應用前景。本文介紹了該產(chǎn)品的技術核心--基于MSP430系列單片機的智能Ic卡熱量表電控系統(tǒng)設計。
1 智能IC卡熱量表控制模式
智能IC卡熱量表是在熱量表中集成了IC卡電路檢測系統(tǒng)及加裝了卡座而構成,該測控系統(tǒng)主要由IC卡,熱量、流量計量電路,電控系統(tǒng)及管道上的電磁閥等構成 系統(tǒng)原理圖,如圖1所示:
當用戶把含有熱量的IC卡插入卡座時,觸點K1接通路并向MSP430單片機發(fā)出中斷請求信號,單片機響應中斷請求后對IC卡進行識別,以防插入的是壞卡或金屬片破壞儀表。經(jīng)識別后把IC卡中的熱量讀出并寫入MSP430單片機的信息存儲器中存儲起來,然后對Ic進行清零,同時電磁閥在電控系統(tǒng)下開通供水開關,開始供熱。用戶的熱水流量計每產(chǎn)生一個脈沖就產(chǎn)生一次中斷進行脈沖累計,累計到10個脈沖時,啟動A/D轉換器進行熱量汁算,算出的熱量與信息存儲器中的熱量相減,其值回存人信息存儲器中,進行熱量值的判斷,當信息存儲器中的熱量小于10MJ時蜂鳴器發(fā)出蜂鳴聲要求用戶重新購熱,如果用戶不購熱,在信息存儲器中的熱量等于0時,電磁閥將自動關閉停止熱量的供應。只有重新購熱之后才會開啟電磁閥。在正常情況下電磁閥輸入電平為低電平,只有在特殊情況下才會發(fā)生開起與關閉,3種情況下電磁閥的通斷情況,如圖2所示。
2 系統(tǒng)電路構成
智能IC卡熱能表電控系統(tǒng)電路由低功耗MSP430F133單片機,溫度、流量測量電路、電源電壓檢測電路、電池保護電路、液晶顯示及聲音報警電路、Ic卡讀寫控制電路等構成,如圖3所示。
2.1 MSP430系列單片機及電路組成
MSP430系列單片機是TI公司推出的16位超低功耗單片機,它采用先進的精簡指令,具有高的性價比、超低功耗、高性能等特點,內(nèi)部集成有可擦除信息存儲器,可擦除10萬次以上這樣就可省去外部EEPROM。本設計采用MSP430系列中的具有flash存儲器的F133作為電控系統(tǒng)核心 該單片機在非工作狀態(tài)時進入低功耗模式3(LMP3)休眠狀態(tài),當有外部中斷時,喚醒休眠狀態(tài)進入工作狀態(tài)。本系統(tǒng)中,單片機與外圍模塊的連接,如圖3所示。P1.0口獲取流量脈沖信號,P1.1、P1.2口獲取電壓欠壓和電壓保護信號,P1.3~P1.7口與IC卡引腳相接,以串行方式與單片機進行數(shù)據(jù)交換,P2.2~P2.5口控制電磁閥的通斷及通過P4.4~P5.7口控制顯示器以輸出顯示內(nèi)容。
2.2 溫度測量電路IC1
采用Ptl000(即0℃時,鉑電阻的電阻值為1000Ω)作為溫度傳感器,用BB公司的恒流源REF200提供兩路各100 μA的電流:
一路通過二四模擬開關MAX4582選通供回水管道上的傳感器以提取傳感器電壓;另一路則通過標準電阻Rk提供儀用放大器的標準電壓,經(jīng)INA122放大之后接單片機的P6.0
口以供A/D轉換之用。由于傳感器用Ptl000且連接導線短,所以可以忽略導線電阻,采用二線制接法。模擬開關引腳A接P6.1口,引腳B接P6.2口。當A=1、B=0時,選通供水管道上的鉑電阻傳感器;A=0、B=1時,則選通回水管道上的鉑電阻傳感器。測溫原理圖,如圖4所示:
2.3 流量測量電路
流量采用葉輪式熱水表改裝而成,傳感元件為于簧管,當流量計上的磁鐵隨葉輪旋轉時,使其上的于簧管通斷,從而發(fā)出電脈沖信號。經(jīng)施密特觸發(fā)器SN74AHC1G14整形電路(IC2,如圖3所示)整形后送微控制器中斷口。
2.4 電源監(jiān)控電路
電壓監(jiān)測器采用安森美公司(Onsemi)的NCP302HSN27T1(IC3),此芯片工作電壓范圍寬達0.8~10 V,靜態(tài)電流典型值僅約0.5μA ;電壓檢測門限精度不大于2% ;當系統(tǒng)電池電壓在正常值2.7V時,輸出腳1(output)為低電平;當電池電壓低于保護值2.7 V時,該芯片的腳1變?yōu)楦唠娖?,并向微控制器發(fā)出中斷請求,使蜂嗚器發(fā)出嗚叫聲以提醒用戶欠壓更換電池,同時關斷電磁閥,停止供暖。
2.5 電源保護電路
為有效保護系統(tǒng)電源,可對電池盒位置進行高靈敏檢測。
當電源盒被拉開時,保護電路(ic4)輸出低電平,微控制器接收到這個中斷信號后,P2.3、P2.5口置1,大功率開關管Q2、Q4接通輸出高電平使其控制閥門關斷。直到電池安裝好并將電池盒推入表內(nèi)正常位置時,微控制器才會再次控制閥門使其重新開閥供水.
2.6 電磁閥電路
電磁閥采用雙穩(wěn)態(tài)脈沖電磁閥,由3.6 V鋰電池供電,雙穩(wěn)態(tài)、低壓、低功耗,兩位式通斷,由4個高功率三極管控制其通斷。平時正反端均為低電壓不消耗能量,工作時,當正端(ON)接Vcc,反端(OFF)接地時,正電流接通電磁閥;當正端接地,反端接Vcc時,反向電流關斷電磁閥,開關電流約270mA,時間小于2s。P2.2、P2.3、P2.4、P2.5口用來控制大功率開關管通斷,組合控制電磁閥的通斷見圖5,在有以上3種事件發(fā)生時電磁閥關斷:
2.7 IC卡及讀寫電路
由于IC卡具有存儲量大、抗干擾能力強、操作速度快等優(yōu)點,系統(tǒng)采用符合IS07816國際標準的IC卡,用于可靠存儲用戶購熱量等關鍵數(shù)據(jù)。單片機通過IC卡讀寫電路完成對IC卡的讀寫:IC卡芯片(IC5)采用93C46 EEPROM,它采用三總線串行與MSP430F133單片機進行數(shù)據(jù)傳輸。用戶把IC卡插入卡座.卡座卡簧的常開觸點K1閉合,P1.3具有電平變換引起中斷功能,微控制器的P1.3口由高電平變?yōu)榈碗娖?,喚醒微控制器進入工作狀態(tài),卡識別之后進行串行數(shù)據(jù)的傳輸,先把Ic卡中的數(shù)據(jù)寫入RAM,并與微處理器信息存儲器中的熱量相加,然后對IC卡進行清零處理并打開電磁閥,最后拔出IC卡.
2.8 液晶顯示器及蜂鳴器電路
液晶顯示器采用MS 12232顯示模塊,可顯示電壓欠壓、流量、熱量、供回水溫度、累計工作時間等信息,采用一鍵多意的方式,根據(jù)按鍵l(2的次數(shù)不同而顯示不同的內(nèi)容。聲音報警電路采用高響蜂鳴器,由單片機控制發(fā)出不同的聲音,按鍵K2按下即可停止蜂鳴。
3 系統(tǒng)軟件設計
系統(tǒng)軟件采用模塊化結構,用MSP430的嵌入式C語言編寫,軟件設計思想緊密結合Ic卡熱量表的控制模式,對IC卡信息讀寫,卡類型的識別,計量信號判斷和數(shù)據(jù)處理,電壓的欠壓檢測與電源保護,降低功耗等方面進行了設計。為了降低功耗,程序大部分集中在中斷處理程序中,程序流程圖,如圖6所示。
為了保證IC卡信息的安全性,在硬件的基礎上對軟件也進行了精心設計。當對插入的卡進行識別之后,發(fā)出讀寫命令字,Ic卡芯片接受后,向單片機發(fā)出一個應答指令,然后跟隨8字節(jié)讀密碼,密碼錯誤顯示“o0”,重試計數(shù)器加以1,最多重試5次,否則IC卡清零;密碼正確,顯示“11”,進入寫周期:通過串行數(shù)據(jù)線把IC卡中熱量讀入MSP430F133的RAM中,最后發(fā)停止位;IC卡的熱量清零并顯示“01”,這時方可安全地取卡。如果在這之前拔出IC卡,那么此次操作將視為無效。在完成讀卡、清零之后,讀出微處理器信息存儲器中剩于的熱量至RAM中,并與Ic卡中讀出的熱量相加,把最后結果回存人微處理器信息存儲器中,檢測電磁閥的起閉情況,如果處于關閉狀態(tài),則開啟電磁閥。
為了提高軟件系統(tǒng)運行的抗干擾能力和可靠性,除了在硬件上采取相應的措施外,在軟件的設計上也采取了相應的對策。
4 結論
電控系統(tǒng)采用低壓、低頻、靜態(tài)低功耗的CMOS器件,而在電路設計采用了關斷技術,即當外部器件或設備在不工作時關斷供電,減少無效功耗,并且對軟件也進行了低功耗的設計,即單片機在等待時進入休眠模式,需要時由外部中斷信號喚醒,所以此系統(tǒng)整體的功率消耗很低。運用此控制電路開發(fā)出的熱量表,其運行穩(wěn)定可靠,操作方便,抗干擾能力強:對于我國熱計量收費制度的改革、金卡工程的深入展開以及節(jié)能環(huán)保起到很大的促進作用。