基于電話網(wǎng)的多功能煤氣管道自動抄表系統(tǒng)
3 主控端硬件設(shè)計
主控端通過一個標準Modem連到一臺固定電話機,通過抄表管理系統(tǒng)軟件實現(xiàn)向數(shù)據(jù)庫中的用戶自動撥號;主控端的Modem芯片模塊通過LM567判斷對方是否摘機,用MSM7512B自動接收客戶端發(fā)送來的煤氣量的數(shù)據(jù),并將數(shù)據(jù)準確的傳送給主控PC機,數(shù)據(jù)經(jīng)過自動換算并保存入庫。主控端硬件設(shè)計如圖3所示。本文引用地址:http://m.butianyuan.cn/article/161841.htm
4 系統(tǒng)的軟件設(shè)計
系統(tǒng)的軟件設(shè)計包括客戶多功能煤氣表的程序和主控端的程序兩大部分,主控端的程序又包含Modem芯片模塊的程序和抄表管理系統(tǒng)軟件??蛻?a class="contentlabel" href="http://m.butianyuan.cn/news/listbylabel/label/多功能">多功能煤氣表端的程序固化在客戶端MCU中,主要由主程序,外部中斷0,外部中斷1程序和定時器0中斷程序組成。其中,外部中斷0子程序用來計數(shù)脈沖、記憶所用煤氣量和手動開關(guān)供氣通道;外部中斷1子程序用來檢測漏氣和檢測振鈴;串口中斷用來采集來電號碼;定時器0中斷程序用來控制通風設(shè)備開啟時間。主控端的Modem芯片模塊程序固化在主控端的MCU中,由主程序和中斷0程序組成。當主控端通過L45 67判斷到對方摘機,程序進入中斷0程序,并開始接收數(shù)據(jù)。主控端的抄表管理系統(tǒng)采用VB開發(fā)數(shù)據(jù)庫,在VB環(huán)境中通過MSCOMM控制串口,實現(xiàn)定時自動撥號和手動撥號,采用DAO,ADO對象模型和SQL語言實現(xiàn)對Access數(shù)據(jù)庫的訪問,查詢和操作,采用通過數(shù)據(jù)報設(shè)計器(Data Rep-ort Designer)與數(shù)據(jù)環(huán)境設(shè)計器(Data Environment Designer)設(shè)計打印報表。
4.1 客戶多功能煤氣表的主程序
客戶端多功能煤氣表的主程序流程圖如圖4所示。它是客戶端程序的主線。硬件上電復位后,進入主程序,先對一系列芯片初始化,再設(shè)置定時器T0和T1的初始值,然后讀取E2PROM中存儲的煤氣量數(shù)據(jù)并顯示。接著開中斷,循環(huán)進行熄火檢測,并等待中斷。
4.2 主控端Moderm芯片模塊主程序
主控端的Moderm芯片模塊硬件電路復位,軟件進入主程序。先設(shè)置一標志位Flag,根據(jù)它的值判斷當前用戶是否摘機。若Flag為1,則對方?jīng)]摘機,循環(huán)判斷;若Flag為0,說明對方摘機,不斷接收數(shù)據(jù),直到對方掛機,接收到的數(shù)據(jù)通過MCU的RXD經(jīng)過MAX232傳送給主機抄表管理系統(tǒng)。抄表系統(tǒng)根據(jù)匯算結(jié)果,即用戶所用煤氣量與所交費用核算結(jié)果來發(fā)送指令給MCU,MCU通過MSM7512B發(fā)送指令給對方用戶。流程圖如圖5所示。
5 結(jié)語
實驗證明,該系統(tǒng)布線簡單,數(shù)據(jù)傳輸?shù)目煽啃院桶踩远驾^好。本文方法同樣也適用于抄錄水表、電表數(shù)據(jù)。
評論