基于MSP430單片機的智能網(wǎng)絡(luò)水表抄表系統(tǒng)設(shè)計
在遠程集中抄表系統(tǒng)中,集中器起著數(shù)據(jù)中轉(zhuǎn)和總線隔離的作用,負責(zé)上位機和網(wǎng)絡(luò)水表的聯(lián)系。其主要功能有兩項:一是完成與水表的通信,根據(jù)系統(tǒng)下達的指令抄收水表的數(shù)據(jù)或檢測狀態(tài),可以定時抄收也可以實時抄收;二是根據(jù)系統(tǒng)要求完成與上位機的通信,將水表的數(shù)據(jù)信息或狀態(tài)信息傳輸給上位機管理系統(tǒng)。根據(jù)系統(tǒng)需求,集中器主單片機采用Microchip公司的PIC16F84芯片,其內(nèi)部帶有64字節(jié)的EEPROM,用來儲存水表的工作參數(shù),如用水量、狀態(tài)、地址編碼等。這些數(shù)據(jù)在水表工作期間可能不斷變化,而又要求系統(tǒng)斷電之后不能丟失,在系統(tǒng)下次加電工作時自動恢復(fù)原先的數(shù)據(jù)?,F(xiàn)場調(diào)試一般用到安裝了專用測試軟件的便攜機。便攜機接口協(xié)議為RS-232,因此集中器電路設(shè)中需預(yù)留一個RS-232接口,采用MAX232芯片。
2.1 集中器硬件設(shè)計
集中器由主控芯片PIC16F84、上行通信接口電路、下行通信接口電路、電源電路等幾部分組成。集中器硬件電路如圖5所示。
1)上行通信接口電路:集中器通過上行通信接口電路和調(diào)制解調(diào)器MODEM相連,然后再通過電話網(wǎng)和上位機管理系統(tǒng)進行通信,如圖5(a)所示。
2)下行通信接口電路:用來和智能網(wǎng)絡(luò)水表進行通信,采用RS-485總線傳輸方式,如圖5(b)所示。使用MAX485芯片和智能網(wǎng)絡(luò)水表進行通信。
2.2 集中器軟件設(shè)計
集中器的軟件設(shè)計主要包括集中器主程序的設(shè)計、集中器接受命令子程序的設(shè)計、集中器向采集器發(fā)命令子程序軟件的設(shè)計、集中器向PC機應(yīng)答子程序的設(shè)計。集中器主程序流程圖如圖6所示。
2.3 上位機與集中器之間通信協(xié)議的幀格式
上位機與集中器之間通信協(xié)議的幀格式有命令幀格式和應(yīng)答幀格式。通信協(xié)議的幀格式由幀頭、類型碼、地址碼、數(shù)據(jù)碼、校驗碼和幀尾組成,其定義如表1所示。各個部分的具體含義解釋如下:
1)幀頭:一幀的起始字節(jié),代表一個新幀的開始1個字節(jié),命令幀固定為1AH,應(yīng)答幀固定為ICH.
2)類型碼:1個字節(jié),命令幀類型碼用來規(guī)定上位機管理系統(tǒng)下達指令的具體內(nèi)容,不同的內(nèi)容對應(yīng)不同的類型碼。集中器執(zhí)行相應(yīng)指令后上傳相應(yīng)的應(yīng)答幀類型碼,不同的內(nèi)容對應(yīng)不同的類型碼,命令幀和應(yīng)答幀類型碼如表2所示。
3)地址碼:8個字節(jié),本地址碼依次為集中器號(4個字節(jié)),智能網(wǎng)絡(luò)水表號(4個字節(jié))。
規(guī)定前4個字節(jié)全F代表所有集中器,后4個字節(jié)全F代表所有智能網(wǎng)絡(luò)水表。
4)數(shù)據(jù)碼:2~10個字節(jié),包括設(shè)置集中器和水表的號碼、設(shè)置集中器的密碼、設(shè)置的時間、水表的狀態(tài)、水表上傳的數(shù)據(jù)等。
5)校驗碼:1個字節(jié),本設(shè)計采用累加和校驗,對幀頭、類型碼、地址碼和數(shù)據(jù)域進行字節(jié)累加,結(jié)果取1個字節(jié)。集中器接收到指令后,對指令的相應(yīng)字節(jié)進行累加,然后再與校驗字相比較。
6)幀尾:表示一幀的結(jié)束字節(jié),命令幀固定為IBH;應(yīng)答幀固定為DH.
評論