《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > IC卡預付費采暖購熱系統的設計
IC卡預付費采暖購熱系統的設計
來源:微型機與應用2011年第19期
李開元1,2,孫應飛1,王衛東2,劉洪運2
(1.中國科學院研究生院,北京 100049; 2. 解放軍總醫院生物醫學工程研究室,北京 1008
摘要: 為預付費采暖系統設計了用于供熱中心主管部門依卡購熱的IC卡購熱系統,IC卡讀寫器主控芯片為單片機STC89C52RC,通過串口(或USB接口)與上位機通信,上位機軟件采用LabVIEW開發,使用LabSQL實現了對數據庫的管理。
Abstract:
Key words :

摘  要: 為預付費采暖系統設計了用于供熱中心主管部門依卡購熱IC卡購熱系統,IC卡讀寫器主控芯片為單片機STC89C52RC,通過串口(或USB接口)與上位機通信,上位機軟件采用LabVIEW開發,使用LabSQL實現了對數據庫的管理。
關鍵詞: LabVIEW;LabSQL;數據庫;IC卡;購熱

 隨著政府和個人對節能環保的重視程度越來越高,住宅供熱系統按熱量消耗單獨計費以及根據室內溫度調控熱量供給成為當前研究的熱門問題。而用于供暖主管部門的預付費購熱系統也配套產生。不同于IC卡購買天然氣、水和電,采暖購熱由于供暖部門存在市政統一供暖、社區獨立供暖等多種形式,同時熱量的傳遞也不同于水、電和天然氣,損耗因環境影響大,因此無法采用全國甚至全市的統一收費標準,嚴格來講收費標準應取決于當地供暖成本(包括燃料、維護、管理等)以及供暖系統的供熱效率等因素。如通過統計數據,確定單一收費標準,不但無法確保公平,更有悖于國家對供暖節能的初衷。同時供暖費用相對水、電等具有區域性、時效性、集中消費等特點,一年僅有幾個月的供暖需求,且費用較高,因此還應在系統中考慮到用戶退費的因素,而退費的資費應參照其繳費時的資費標準而不應是退費時的當時資費標準。綜上所述,傳統的IC卡預付費系統已無法適應熱計量計費的需求。
 供熱計費系統由流量計、入水口/出水口溫度傳感器組成,微控制器按一定周期采集實時的流量和溫度差,用以計算產生的費用[1],計算公式如式(1)。其中M為t1~t2時間段內產生的用熱費用;K為供熱系數,由地方供熱部門根據各地實際情況確定;Tin、Tout為入水口、出水口溫度;I為當時測量的流速。

 而一旦供熱計費系數有了區域和時段的變化,則類似水(電、氣)卡的將購買的水(電、氣)量存入卡內的方式將帶來以下幾種弊端:
 (1)各區域預付費購熱系統的不兼容:如A區的用戶無法到B區購熱。
 (2)用戶退費可能造成資費不一致:如去年的系數不同于今年。
針對上述弊端,本文提出了將實際購熱的金額與當時該區確定的供熱計費系數同時存入用戶熱量卡內的方案,同時購熱系統依靠用戶信息數據庫與區域供熱系數數據庫綁定用戶熱量卡,從而克服上述不足。
1 硬件系統設計
 如圖1所示,硬件系統為USB接口的IC卡讀寫器,所選單片機采用宏晶公司的STC89C52RC。STC89C52RC功耗低(工作電流4~7 mA)、抗干擾能力強(3.4~5.5 V可工作,抗2 000 V快速脈沖干擾)、自動加密、讀寫壽命長,且通過串口即可下載程序,方便了日后的升級。IC卡芯片為西門子的SLE4442[2],與單片機依靠I2C協議進行通信。與上位機的接口采用USB口,通過凌陽公司的UART-USB芯片SPCP825A實現了單片機UART到電腦終端的數據傳輸[3]。USB口更能方便地為讀寫器系統提供所需的5 V電源,而全系統的5 V供電要求則省去了電源管理芯片。


2 單片機程序設計
 單片機主要完成如下主要任務:
 (1)讀取IC卡內信息:用戶ID號、余額、用戶卡內供熱系數等。
 (2)將卡內信息傳到上位機軟件。
 (3)按照上位機指令對IC卡進行寫操作:IC卡初始化(含注銷)、充值、修改ID號、修改計費系數等。
 該系統中,由于IC卡購熱屬于預付費業務,且資費標準暫時無法統一并固定。為了避免用熱費用調整以及退費帶來的誤差,本系統暫確定卡內存儲的為交納的金額而不是購買的熱量值,同時在每次充卡操作時將最新的熱量計算系數寫入卡內,確保用戶在新的用熱周期接受新的熱量資費標準,而退費時則直接按余額退費,不需要進行費用-熱量的計算。
2.1 數據定義
 IC卡內的數據包括用戶ID號、金額、系數等相關信息,具體定義如表1所示。

 

 

 ID號為用戶的唯一標識碼,對應于數據庫內的用戶基本信息,如姓名、聯系電話、家庭住址和郵政編碼等信息,金額與供熱系數均采用4 B以浮點型數據格式存放。由于單片機讀取IC卡只能以I2C協議按字節讀取,為了讀取方便,定義了一個浮點型與數組的共同體,程序如下:
typedef union  
{    
float f;
long l;
uchar M[4];   
}EX_TYPE;
EX_TYPE a,b,c;  //a,b,c分別用于
ID、金額、系數三個變量
這樣,變量的計算和判斷時,用長整型a.l、浮點型b.f和c.f;涉及到數據存儲時,則直接處理數組a.M[4]、b.M[4]和c.M[4]即可。
2.2 程序設計
 單片機程序如圖2所示,單片機將UART、中斷等初始化后,進入休眠模式,等待上位機指令,接收到讀卡指令則讀取IC卡信息并按“ID號、金額、系數”的順序上傳到上位機,接收到寫卡的指令后將接收到的數據信息按順序存入a.M[4]、b.M[4]和c.M[4]三個數組,并更新IC卡內數據。在讀卡和寫卡時都要校驗IC卡的加密位,如沒有插卡或校驗未通過則向上位機發送錯誤代碼。IC卡的讀寫為I2C協議,IC卡芯片SLE4442是以字節方式存儲,其中ID號為長整型數據,金額與系數均為浮點型數據,上述三個參數各占4 B。

3 上位機軟件設計
 上位機軟件利用LabVIEW開發。LabVIEW是美國國家儀器公司推出的一種虛擬儀器開發平臺,也是目前國際上應用最廣的虛擬儀器開發工具之一。作為一種圖形化編程語言(G語言),LabVIEW能把復雜、繁瑣的語言編程簡化為用菜單和圖標提示的程序流程“繪制”方式,其主要用于數據采集、儀器控制、過程監控等領域[4]。針對數據庫的訪問則利用LabVIEW用戶開發的免費LabVIEW數據庫訪問工具包LabSQL。LabSQL利用Microsoft ADO和SQL語言來完成數據庫訪問,它將復雜的底層ADO及SQL操作封裝成一系列的LabSQL VIs,用戶只需要了解各個VIs的接口及其所實現的功能就可以實現所有的數據庫操作,簡單易用[5]。
軟件主要實現如下主要功能:
 (1)讀取用戶卡內ID號、金額、供熱系數。根據用戶ID號從數據庫中提取用戶資料以及歷史充值退費記錄并分別顯示。
 (2)為新建用戶添加數據庫、分配ID號并將ID信息寫入用戶卡內。
 (3)修改用戶資料并保存到數據庫。
 (4)注銷用戶。
 (5)添加充值或退費的數據庫記錄并對IC卡金額內容進行修改。
 (6)向卡內寫入新的供熱系數。
 數據庫涉及用戶信息表單和充值退費記錄表單,由用戶ID號關聯。用戶信息表單包括了編號(用作用戶ID號,為主鍵)、姓名、聯系電話、家庭住址和郵政編碼等字段,充值退費記錄表單含有編號(主鍵)、用戶ID號、時間、充值金額、退費金額以及備注等字段。數據庫選用Microsoft Office Access 2003。
 由于整個系統實現的功能是與下位機系統的串行通信和上位機數據庫管理,因此,主要使用了LabVIEW中設備IO類(Instrument IO)中的的串口子模塊(Serial)和數據庫類(LabSQL)的記錄操作等函數(表2)。圖3為主程序框圖,其中Case Structure由前面板的一組按鍵形成的二進制值進行選擇,分別實現了讀卡、創建、保存、注銷、充值、退費等任務。在讀卡程序中,率先通過串口向下位機發送讀卡指令并讀出數據,將讀到的數據字符串轉換為無符號字節數組,每4 B通過強制轉換函數將數據轉換為“長整形、單精度浮點、單精度浮點”格式分別賦予ID號、卡內余額和供熱系數。利用ID號的傳遞,將數據庫用戶信息表單中該ID號的記錄按不同字段顯示在前面板各個文本框內[6],同時在充值退費記錄表單中將所屬該ID號的充值、退費信息顯示在前面板的列表內。需要說明的是,為了數據安全,用戶ID號并不顯示在前面板中,僅在后臺程序中使用。
用戶管理管理子程序主要包括對用戶的創建、修改保存和注銷,不但要對數據庫用戶信息表單中相應記錄的添加、修改或刪除,還要對IC卡進行相應的設置ID號或重新初始化等操作。創建用戶模塊僅完成了添加記錄操作,需要操作人員將新用戶個人信息添加到前面板后點擊保存以啟動保存模塊,即將該記錄的其他字段進行保存,同時將ID號、金額和系數按字符串格式通過串口發送到讀寫器用來燒寫IC卡。注銷時則刪除當前記錄,并向串口發出約定字符串以對IC卡初始化。

 充值和退費兩個子程序將對充值退費記錄表單進行操作,按照ID號、時間、充值金額或退費金額添加充值或退費的記錄,時間由獲取日期的模塊(Get Date/Time String)獲得。同時將數據字符串以“ID號、金額、系數”的格式發送到下位機用于更新IC卡數據,充值時將充值金額與IC卡余額的和作為金額字符串,退費時則將金額賦0。
 IC卡預付費購熱系統,通過直接存儲計費系數應對供暖計費的復雜性、時效性和地域性帶來的資費難統一和供暖季結束退費等實際問題,硬件電路設計要充分考慮成本因素。而LabVIEW軟件簡易直觀的編程環境以及對于硬件系統更好的適應性,大大縮短了以串口通信為主的購熱系統的開發周期,同時該系統應用于數據庫管理的部分并不是十分復雜,目前僅有兩個表單的基本操作,盡管LabVIEW對于數據庫的訪問并不是強項,但其免費的工具包LabSQL則能輕而易舉地實現上述要求,后續的如對于用戶住址創建字典庫以將ID號字段更完善的管理等需求都能夠得到LabSQL直觀、簡易的支持,這些后續功能有待日后不斷完善。
參考文獻
[1] 李開元,劉洪運,王衛東,等.基于STC單片機的溫控熱計費采暖閥門的設計[J].電子技術應用,2011,37(5):56-59,63.
[2] 陳建良,李玉謙.基于SLE4442的IC卡系統設計與實現[J].微計算機信息,2008,24(9-2):247-248,254.
[3] 李開元,胡敏露,王衛東,等.USB心電信號采集卡的研制[J].醫療衛生裝備,2006,27(3):25-26.
[4] 邊香燕,朱瑞祥,王戰濤.基于LabVIEW和數據庫的光譜儀器軟件設計[J].微計算機信息,2008,24(7-1):117-119.
[5] 徐紅安,費仁元.用ADO構建LabVIEW中的數據庫訪問接口[J].北京工業大學學報,2003(3):10-13.
[6] 羅文輝.LabVIEW中的數據庫訪問[J].武漢理工大學學報·信息與管理工程版[J],2006,28(3):13-16.
 

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
日韩亚洲欧美一区| 久久―日本道色综合久久| 欧美在线免费视屏| 亚洲视频香蕉人妖| 一区二区三区你懂的| 亚洲蜜桃精久久久久久久| 亚洲电影自拍| 在线观看亚洲精品| 国精品一区二区三区| 国产亚洲美州欧州综合国| 国产精品视频网| 国产精品毛片| 国产精品久久99| 国产精品美女久久久久久久| 国产精品扒开腿做爽爽爽软件| 欧美三级网页| 欧美视频在线一区二区三区| 欧美午夜精品久久久久久浪潮| 欧美日韩a区| 欧美日韩精品在线视频| 欧美视频中文一区二区三区在线观看| 欧美视频一二三区| 国产精品美女主播| 国产精品一区二区久久| 国产麻豆综合| 国产亚洲精品久久久久婷婷瑜伽| 国产深夜精品| 精品不卡在线| 伊人久久婷婷色综合98网| 亚洲电影在线免费观看| 最新国产拍偷乱拍精品 | 影音先锋亚洲电影| 在线精品福利| 日韩网站免费观看| 亚洲视频电影在线| 销魂美女一区二区三区视频在线| 久久精精品视频| 亚洲精品在线三区| 亚洲与欧洲av电影| 久久精品2019中文字幕| 老司机免费视频久久 | 欧美精品激情blacked18| 欧美天堂亚洲电影院在线播放| 国产精品永久免费| 影音先锋成人资源站| 亚洲精品欧美日韩| 亚洲午夜在线观看| 久久精品亚洲| 一本久久综合亚洲鲁鲁| 午夜激情久久久| 久久久中精品2020中文| 欧美风情在线观看| 国产精品久久久久久五月尺| 韩国一区电影| 99成人精品| 欧美一区二区三区免费观看| 亚洲精品欧美极品| 亚洲欧美综合精品久久成人| 老司机免费视频久久| 欧美三级在线播放| 国产综合欧美| 一本一道久久综合狠狠老精东影业 | 性久久久久久久久| 亚洲狼人精品一区二区三区| 性色av一区二区三区在线观看 | 久久国产精品久久久久久| aa日韩免费精品视频一| 欧美在线播放| 欧美日韩亚洲一区二区| 国产一区二区三区的电影 | 亚洲成人在线视频网站| 亚洲一区免费| 欧美高清在线观看| 国产一区二区三区四区在线观看| 亚洲精品一区二区三区不| 香港久久久电影| 亚洲视频香蕉人妖| 免费精品视频| 国产欧美日韩亚洲精品| 99视频日韩| 亚洲精品乱码久久久久久蜜桃91 | 亚洲一区二区三区在线看| 亚洲精品一区二区在线观看| 久久久久久久综合狠狠综合| 欧美性生交xxxxx久久久| 91久久综合亚洲鲁鲁五月天| 久久成人久久爱| 亚洲一区在线播放| 欧美伦理91| 亚洲国产精品女人久久久| 香蕉精品999视频一区二区| 亚洲一区二区三区激情| 欧美精品一区三区在线观看| 精品成人在线| 久久国产精品网站| 久久er99精品| 国产精品久久久久婷婷| 99精品99| 亚洲视频一区二区在线观看| 欧美国产91| 亚洲国产视频a| 亚洲精品精选| 欧美成人午夜77777| 激情综合电影网| 久久精品欧美日韩| 久久久久国产精品人| 国产农村妇女毛片精品久久麻豆 | 激情av一区| 欧美一区二区精品久久911| 午夜精品福利在线观看| 国产精品v欧美精品v日本精品动漫 | 亚洲精品你懂的| 亚洲乱码一区二区| 欧美激情久久久| 亚洲激情女人| 一区二区欧美日韩| 欧美日韩播放| 99天天综合性| 亚洲一区黄色| 国产精品视屏| 欧美在线你懂的| 亚洲全黄一级网站| 亚洲国产日韩在线一区模特| 久久躁日日躁aaaaxxxx| 精品69视频一区二区三区| 亚洲第一级黄色片| 蜜桃久久av一区| 在线国产欧美| av成人毛片| 国产精品极品美女粉嫩高清在线| 亚洲私拍自拍| 久久aⅴ国产欧美74aaa| 国产一区二区三区四区五区美女| 亚洲第一中文字幕在线观看| 久久这里只精品最新地址| 在线播放不卡| 一本色道久久精品| 欧美日韩综合| 亚洲女性喷水在线观看一区| 久久精品一区二区国产| 尤物九九久久国产精品的特点 | 久久成人18免费网站| 榴莲视频成人在线观看| 亚洲国产综合91精品麻豆| 中文在线一区| 国产精品亚洲综合久久| 欧美一区二区三区视频在线| 蜜桃久久av一区| 99日韩精品| 久久精品国产99国产精品澳门| 狠狠综合久久| 夜夜狂射影院欧美极品| 国产精品久久久久久一区二区三区| 欧美一级久久久| 欧美/亚洲一区| 99精品视频免费全部在线| 欧美在线观看一区| 在线观看视频一区二区| 亚洲永久网站| 黑人巨大精品欧美一区二区| 亚洲精品乱码久久久久| 国产精品你懂的| 亚洲欧洲精品一区二区三区| 欧美日韩国产小视频| 一区二区三区波多野结衣在线观看| 亚洲精品国产精品国自产在线| 欧美亚洲成人精品| 久久精品成人| 国产精品激情偷乱一区二区∴| 久久精品国产v日韩v亚洲| 欧美日韩视频| 欧美中文字幕不卡| 欧美久久久久久久久| 性感少妇一区| 欧美日韩免费看| 亚洲大片免费看| 欧美午夜性色大片在线观看| 久久精品国产一区二区三| 欧美日本一道本在线视频| 午夜精品国产| 欧美精品亚洲一区二区在线播放| 亚洲欧美日韩精品| 欧美电影打屁股sp| 篠田优中文在线播放第一区| 欧美精品一区二区三区四区| 羞羞色国产精品| 欧美三日本三级少妇三99| 久久成人国产| 国产精品美女久久久浪潮软件 | 国产一区二区中文| 99热免费精品| 国产最新精品精品你懂的| 亚洲视频在线观看| 在线看视频不卡| 欧美综合国产| 亚洲免费观看高清在线观看 | 欧美成人午夜| 欧美在线视频一区二区三区| 国产精品vvv| 99视频一区二区|