基于電話網(wǎng)的多功能煤氣管道自動抄表系統(tǒng)
摘要:為了保證遠(yuǎn)程自動抄表系統(tǒng)的準(zhǔn)確性和可靠性,介紹了一種基于電話網(wǎng)用單片機(jī)控制的多功能煤氣管道遠(yuǎn)程自動抄表系統(tǒng)。整個(gè)系統(tǒng)由主控端和客戶多功能煤氣表端組成,主控端與客戶端通過電話線網(wǎng)實(shí)現(xiàn)自動抄表。該系統(tǒng)布線簡單,數(shù)據(jù)傳輸?shù)目煽啃院桶踩远驾^好。
關(guān)鍵詞:電話網(wǎng);多功能煤氣表;遠(yuǎn)程自動抄表;數(shù)據(jù)傳輸
0 引言
目前居民小區(qū)的水、電、煤氣耗能讀取的方式有四種,分別是:預(yù)付費(fèi)式、有線抄表方式、無線抄表方式、混合式。預(yù)付費(fèi)式的儲值卡表比儲值卡電話的操作機(jī)構(gòu)要復(fù)雜,且由于儲值卡表是預(yù)付費(fèi),無需抄表,這對能耗公司每個(gè)月的能耗量及管網(wǎng)漏損等無法統(tǒng)計(jì)和考核;有線抄表方式布線復(fù)雜,且功能單一;無線抄表方式抗干擾能力薄弱,使系統(tǒng)的可靠性受到威脅。
本文介紹了一種多功能煤氣管道遠(yuǎn)程自動抄表系統(tǒng),該系統(tǒng)由主控端和客戶多功能煤氣表端組成,主控端與客戶端通過電話線網(wǎng)實(shí)現(xiàn)自動抄表。介紹了整個(gè)系統(tǒng)的組成框圖及各部分功能,著重介紹了客戶多功能煤氣表端數(shù)據(jù)采集控制模塊和通信模塊的組成框圖、硬件設(shè)計(jì)、軟件流程;主控端Modem芯片模塊的硬件設(shè)計(jì)、程序流程和主控端的抄表管理系統(tǒng)的軟件設(shè)計(jì)。
1 系統(tǒng)總體設(shè)計(jì)
為保證多功能煤氣管道抄表系統(tǒng)的準(zhǔn)確性和可靠性,提高能源管理的科學(xué)性、規(guī)范性,對系統(tǒng)提出以下設(shè)計(jì)要求:客戶多功能煤氣表端采用光電傳感器采集能耗、顯示當(dāng)前的能耗數(shù)量、記憶所用煤氣量、漏氣檢測、熄火檢測、控制通風(fēng)設(shè)備、來電判斷。為保證傳送數(shù)據(jù)的安全性,在主、客端通信中制定密碼協(xié)議,給數(shù)據(jù)庫進(jìn)行加密,同時(shí)對系統(tǒng)管理軟件設(shè)置只有相應(yīng)權(quán)限的管理員才可進(jìn)行相應(yīng)操作。系統(tǒng)總體設(shè)計(jì)框圖(如圖1所示)抄表系統(tǒng)的結(jié)構(gòu)主要由兩大塊組成:主控端和客戶多功能煤氣表端。
主控端與客戶端通過電話線網(wǎng)實(shí)現(xiàn)自動抄表??蛻舳喙δ苊簹獗淼牟杉刂颇K不斷讀取煤氣表的記數(shù)脈沖,記憶并不斷顯示已用煤氣量;同時(shí)煤氣表還有自動漏氣檢測,自動通風(fēng)控制,自動熄火檢測,氣路自動開閉控制,語音報(bào)警等多種功能。當(dāng)客戶多功能煤氣表的通信模塊一旦檢測到為主控端撥號,就將采集控制模塊中所記憶的所用煤氣量數(shù)據(jù)通過電話網(wǎng)傳送到主站,主站計(jì)算機(jī)通過系統(tǒng)管理軟件接收數(shù)據(jù),并對數(shù)據(jù)進(jìn)行自動換算、匯總、統(tǒng)計(jì),計(jì)算出用戶交納的煤氣費(fèi)用的余額,并能根據(jù)用戶余額是否足夠,發(fā)送指令給用戶表,用戶表端根據(jù)主控端下發(fā)的指令判斷并控制煤氣電磁閥的開關(guān)。
2 客戶端多功能煤氣表硬件設(shè)計(jì)
客戶多功能煤氣表端采用光電傳感器采集能耗,采用PS7219顯示當(dāng)前的能耗數(shù)量,采用X25045記憶所用煤氣量,采用QM—N2型氣敏傳感器作為漏氣檢測元件,采用MF58型熱敏電阻作為熄火檢測元件,用光電耦合芯片MOC3061驅(qū)動晶閘管BTA1200控制通風(fēng)通道,采用HT9032C進(jìn)行來電判斷,用Modem芯片MSM7512B通過發(fā)送/接收FSK信號實(shí)現(xiàn)與主控端的通信。通過與門74LS00擴(kuò)展4個(gè)中斷,分別利用P0.0~P0.3實(shí)現(xiàn)采集用氣量數(shù)據(jù)、自動控制煤氣管道、漏氣檢測、振鈴判斷。硬件設(shè)計(jì)如圖2所示。
在圖2中客戶端多功能數(shù)字式煤氣表端的工作過程是:主程序定時(shí)刷顯示和記憶所用煤氣量,通過擴(kuò)展中斷口的方法,實(shí)現(xiàn)4個(gè)外信號的中斷。外部中斷0的中斷來源是P0.0口和P0.1口,P0.0脈沖計(jì)數(shù)所用煤氣量,P0.1控制氣路的開閉開關(guān);外部中斷1的中來源是P0.2口和P0.3口,P0.2口漏氣檢測,P0.3振鈴檢測。通過相中斷程序分別實(shí)現(xiàn)采集、顯示并記憶煤氣用量、控制氣路自動閉、漏氣檢測、撥打報(bào)警電話、通風(fēng)控制、判斷來電號碼和主機(jī)之間的通信等。
3 主控端硬件設(shè)計(jì)
主控端通過一個(gè)標(biāo)準(zhǔn)Modem連到一臺固定電話機(jī),通過抄表管理系統(tǒng)軟件實(shí)現(xiàn)向數(shù)據(jù)庫中的用戶自動撥號;主控端的Modem芯片模塊通過LM567判斷對方是否摘機(jī),用MSM7512B自動接收客戶端發(fā)送來的煤氣量的數(shù)據(jù),并將數(shù)據(jù)準(zhǔn)確的傳送給主控PC機(jī),數(shù)據(jù)經(jīng)過自動換算并保存入庫。主控端硬件設(shè)計(jì)如圖3所示。
4 系統(tǒng)的軟件設(shè)計(jì)
系統(tǒng)的軟件設(shè)計(jì)包括客戶多功能煤氣表的程序和主控端的程序兩大部分,主控端的程序又包含Modem芯片模塊的程序和抄表管理系統(tǒng)軟件??蛻舳喙δ苊簹獗矶说某绦蚬袒诳蛻舳薓CU中,主要由主程序,外部中斷0,外部中斷1程序和定時(shí)器0中斷程序組成。其中,外部中斷0子程序用來計(jì)數(shù)脈沖、記憶所用煤氣量和手動開關(guān)供氣通道;外部中斷1子程序用來檢測漏氣和檢測振鈴;串口中斷用來采集來電號碼;定時(shí)器0中斷程序用來控制通風(fēng)設(shè)備開啟時(shí)間。主控端的Modem芯片模塊程序固化在主控端的MCU中,由主程序和中斷0程序組成。當(dāng)主控端通過L45 67判斷到對方摘機(jī),程序進(jìn)入中斷0程序,并開始接收數(shù)據(jù)。主控端的抄表管理系統(tǒng)采用VB開發(fā)數(shù)據(jù)庫,在VB環(huán)境中通過MSCOMM控制串口,實(shí)現(xiàn)定時(shí)自動撥號和手動撥號,采用DAO,ADO對象模型和SQL語言實(shí)現(xiàn)對Access數(shù)據(jù)庫的訪問,查詢和操作,采用通過數(shù)據(jù)報(bào)設(shè)計(jì)器(Data Rep-ort Designer)與數(shù)據(jù)環(huán)境設(shè)計(jì)器(Data Environment Designer)設(shè)計(jì)打印報(bào)表。
4.1 客戶多功能煤氣表的主程序
客戶端多功能煤氣表的主程序流程圖如圖4所示。它是客戶端程序的主線。硬件上電復(fù)位后,進(jìn)入主程序,先對一系列芯片初始化,再設(shè)置定時(shí)器T0和T1的初始值,然后讀取E2PROM中存儲的煤氣量數(shù)據(jù)并顯示。接著開中斷,循環(huán)進(jìn)行熄火檢測,并等待中斷。
4.2 主控端Moderm芯片模塊主程序
主控端的Moderm芯片模塊硬件電路復(fù)位,軟件進(jìn)入主程序。先設(shè)置一標(biāo)志位Flag,根據(jù)它的值判斷當(dāng)前用戶是否摘機(jī)。若Flag為1,則對方?jīng)]摘機(jī),循環(huán)判斷;若Flag為0,說明對方摘機(jī),不斷接收數(shù)據(jù),直到對方掛機(jī),接收到的數(shù)據(jù)通過MCU的RXD經(jīng)過MAX232傳送給主機(jī)抄表管理系統(tǒng)。抄表系統(tǒng)根據(jù)匯算結(jié)果,即用戶所用煤氣量與所交費(fèi)用核算結(jié)果來發(fā)送指令給MCU,MCU通過MSM7512B發(fā)送指令給對方用戶。流程圖如圖5所示。
5 結(jié)語
實(shí)驗(yàn)證明,該系統(tǒng)布線簡單,數(shù)據(jù)傳輸?shù)目煽啃院桶踩远驾^好。本文方法同樣也適用于抄錄水表、電表數(shù)據(jù)。