專利名稱:污染源監(jiān)測(cè)系統(tǒng)監(jiān)測(cè)子站通信網(wǎng)絡(luò)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及污染源在線監(jiān)測(cè)系統(tǒng),特別涉及污染源監(jiān)測(cè)系統(tǒng)監(jiān)測(cè)子站通信 網(wǎng)絡(luò)數(shù)據(jù)采集控制。 足伎不污染源在線監(jiān)測(cè)系統(tǒng),通常自上而下由決策層、企業(yè)層和監(jiān)測(cè)子站層三個(gè) 層次組成,各層次具有分布式、集散型、廣域化等復(fù)雜系統(tǒng)特征,之間通過(guò)公共通信網(wǎng)絡(luò)(Internet、 PSTN、 GSM/GPRS等)交換數(shù)據(jù)。但在監(jiān)測(cè)子站層, 作為監(jiān)控單元的大多數(shù)水質(zhì)和污染源在線監(jiān)測(cè)儀,只提供RS-232/RS-485通信 接口,故層內(nèi)通信網(wǎng)絡(luò)一般并不使用公共通信網(wǎng)絡(luò),而采用RS485總線通信 網(wǎng)絡(luò),由于RS-485總線僅需要一對(duì)雙絞線即可實(shí)現(xiàn)多站聯(lián)網(wǎng)構(gòu)成分布式系統(tǒng), 且監(jiān)控單元簡(jiǎn)單、價(jià)格低廉,對(duì)線路要求也不是很高,監(jiān)測(cè)數(shù)據(jù)服務(wù)器和在線 監(jiān)測(cè)儀器之間通常使用RS485總線通信網(wǎng)絡(luò)連接,監(jiān)測(cè)數(shù)據(jù)服務(wù)器作為主機(jī), 監(jiān)控單元作為從機(jī),采集數(shù)據(jù)和控制命令均由主機(jī)分別對(duì)各從機(jī)發(fā)出請(qǐng)求,相 應(yīng)從機(jī)響應(yīng)請(qǐng)求。此種方式實(shí)際上是主從架構(gòu)的計(jì)算機(jī)系統(tǒng),整個(gè)總線系統(tǒng)上 只有一個(gè)主機(jī),通信方式也只能以主機(jī)輪詢的方式進(jìn)行,從機(jī)間交換信息必須 由主機(jī)代為轉(zhuǎn)發(fā),該方式的優(yōu)點(diǎn)是信號(hào)比較清晰,無(wú)數(shù)據(jù)碰撞,缺點(diǎn)是通信效 率比較低,系統(tǒng)的實(shí)時(shí)性、可靠性較差。監(jiān)測(cè)子站層層內(nèi)通信網(wǎng)絡(luò)另一種方式是采用現(xiàn)場(chǎng)總線網(wǎng)絡(luò)或工業(yè)以太網(wǎng), 每個(gè)監(jiān)控單元都要增加一個(gè)負(fù)責(zé)協(xié)議解釋的專用協(xié)議解釋芯片,由專用協(xié)議解 釋芯片負(fù)責(zé)與監(jiān)控單元本身的MCU接口和控制外部總線接口,并對(duì)總線通 信協(xié)議進(jìn)行解釋,實(shí)現(xiàn)多主通信,如LonWorks和CAN總線網(wǎng)絡(luò)等,申請(qǐng)?zhí)?為200610134428.0的中國(guó)發(fā)明專利公開(kāi)了 "一種多主機(jī)多從機(jī)總線網(wǎng)絡(luò)",采 用CAN總線驅(qū)動(dòng)器PCA82C250實(shí)現(xiàn)的多主機(jī)系統(tǒng)。采用現(xiàn)場(chǎng)總線和以太網(wǎng)的優(yōu)點(diǎn)是顯而易見(jiàn)的,由專用協(xié)議解釋芯片負(fù)責(zé)總線的接口控制和差錯(cuò)處理, 其通信鏈路穩(wěn)定可靠,速率較高,系統(tǒng)實(shí)時(shí)性較高,并且由于每個(gè)監(jiān)控單元本 身的MCU只需按專用協(xié)議解釋芯片的要求與其單獨(dú)進(jìn)行數(shù)據(jù)交換即可實(shí)現(xiàn) 與外部總線的數(shù)據(jù)交換,并且實(shí)現(xiàn)多主通信,監(jiān)控單元MCU的軟件負(fù)擔(dān)也較小。這種通信網(wǎng)絡(luò),雖然簡(jiǎn)化了監(jiān)控單元MCU的負(fù)擔(dān)和用戶的設(shè)計(jì)復(fù)雜性,但也存在著如下不利之處(1 )專用協(xié)議解釋芯片價(jià)格較高(往往超過(guò)很多監(jiān)控單元本身MCU的價(jià)格),對(duì)于很多成本控制嚴(yán)格的產(chǎn)品來(lái)說(shuō),不可能考 慮該種通信方式,只能選擇其它通信方式;(2 )專用協(xié)議解釋芯片與監(jiān)控單 元MCU的接口一般來(lái)說(shuō)都為并行總線接口方式,而現(xiàn)在的很多監(jiān)控單元里采 用的都是單片運(yùn)行方式(即監(jiān)控單元里的MCU本身具備一定的外設(shè)功能, 不需進(jìn)行總線擴(kuò)展),因此采用該種通信方式將導(dǎo)致監(jiān)控單元內(nèi)部硬件電路的 復(fù)雜化,同時(shí)將導(dǎo)致監(jiān)控單元的體積增大(因?yàn)橐黾覯CU的總線擴(kuò)展電 路和該專用協(xié)議解釋芯片)。(3 )各種現(xiàn)場(chǎng)總線具有各自不同的網(wǎng)絡(luò)協(xié)議和軟、 硬件要求,而且彼此互不兼容,專用協(xié)議解釋芯片廠商均為國(guó)外廠商,部分廠 商甚至要求用戶與其簽定某種協(xié)議后才能供給用戶協(xié)議解釋芯片,因此當(dāng)用戶 在投入大量的精力和金錢開(kāi)發(fā)完這些總線產(chǎn)品后容易受制于協(xié)議芯片廠商,幾 乎不可能再有其它選擇余地;(4 )由于總線通信協(xié)議已經(jīng)固定(選定總線類 型后,總線通信協(xié)議就己固定),并不一定適合于用戶的應(yīng)用需要。 發(fā)明內(nèi)客本發(fā)明所要解決的技術(shù)問(wèn)題是克服上述現(xiàn)有技術(shù)的缺陷,在低成本的 RS485總線通信網(wǎng)絡(luò)中,通過(guò)在每個(gè)通信節(jié)點(diǎn)增加一個(gè)總線監(jiān)聽(tīng)檢測(cè)電路,在 線檢測(cè)總線空閑,在RS485總線上實(shí)現(xiàn)多主機(jī)網(wǎng)絡(luò)系統(tǒng),提高通信效率。本發(fā)明的目的通過(guò)如下技術(shù)方案實(shí)現(xiàn)一種污染源監(jiān)測(cè)系統(tǒng)監(jiān)測(cè)子站通信網(wǎng)絡(luò),包括通過(guò)監(jiān)測(cè)子站數(shù)據(jù)服務(wù)器和 多個(gè)監(jiān)控單元,監(jiān)測(cè)子站數(shù)據(jù)服務(wù)器具有上行通信接口和下行通信接口,上行 通信接口通過(guò)公共通信網(wǎng)絡(luò)與管理方遠(yuǎn)程監(jiān)控軟件交換信息,下行通信接口通 過(guò)RS-485總線與多個(gè)監(jiān)控單元連接;各監(jiān)控單元分別由RS-485收發(fā)器、監(jiān) 控器和總線監(jiān)聽(tīng)檢測(cè)電路組成,RS-485收發(fā)器負(fù)責(zé)與RS-485總線連接,監(jiān)控器由MCU芯片為核心組成,第一和第二輸入與非門接線組成的基本RS觸發(fā)
器構(gòu)成總線監(jiān)聽(tīng)檢測(cè)電路,由第三與非門組成的反相器和RS-485收發(fā)器實(shí)現(xiàn)
TTL電平和RS-485電平之間的相互轉(zhuǎn)換;監(jiān)控器的TXD引腳連接反相器的
輸入端,反相器的輸出端連接RS-485收發(fā)器的DE、 RE端;RS-485收發(fā)器的
RO輸入端連接監(jiān)控器的RXD弓l腳,同時(shí)連接第二與非門的一個(gè)輸入端;監(jiān)
控器的P2.1引腳連接與第一非門的一個(gè)輸入端;監(jiān)控器的P2.0引腳分別連接
第一與非門的輸出端和第二與非門的另一輸入端;第一與非門的另一個(gè)輸入端 與第二與非門的輸出端連接。
所述得監(jiān)控器1為ADuc812型MCU芯片型號(hào)。
所述的第一、第二和第三與非門為一片通用高速CMOS門電路74HC00心片。
所述的RS-485收發(fā)器為MAX485E型RS-485收發(fā)器。 所述通信網(wǎng)絡(luò)還包括連接在RS-485總線上拉電阻和下拉電阻。 本發(fā)明提出了一種改進(jìn)的污染源監(jiān)測(cè)系統(tǒng)監(jiān)測(cè)子站通信網(wǎng)絡(luò),監(jiān)測(cè)子站計(jì) 算機(jī)系統(tǒng)架構(gòu)仍然由監(jiān)測(cè)子站數(shù)據(jù)服務(wù)器和通過(guò)RS-485總線連接的若干個(gè)監(jiān) 控單元組成,但每個(gè)監(jiān)控單元除監(jiān)控器、RS-485收發(fā)器外,還增加一個(gè)總線 監(jiān)聽(tīng)檢測(cè)電路,用于檢測(cè)RS-485是否處于空閑狀態(tài)。監(jiān)控器通過(guò)總線監(jiān)聽(tīng)檢 測(cè)電路測(cè)得RS-485總線處于空閑狀態(tài)達(dá)到一定時(shí)間長(zhǎng)度,說(shuō)明可以發(fā)送數(shù)據(jù), 該監(jiān)控單元向通信總線發(fā)送數(shù)據(jù)包報(bào)文,即可獲得總線使用權(quán),成為總線上的 主機(jī)。連接到RS-485總線上的任何一個(gè)監(jiān)控單元都可以通過(guò)這種方式主動(dòng)獲 得總線使用權(quán),對(duì)RS-485總線上的監(jiān)測(cè)子站數(shù)據(jù)服務(wù)器或者其它的監(jiān)控單元 發(fā)起通信請(qǐng)求。
所述的監(jiān)測(cè)子站數(shù)據(jù)服務(wù)器可以是臺(tái)式計(jì)算機(jī),也可以是32位嵌入式計(jì) 算機(jī),但需要配置RS-485通信接口。配置RS-485通信接口的方法有(1) 在計(jì)算機(jī)的ISA或PCI總線擴(kuò)展槽插入相應(yīng)RS-485通信網(wǎng)卡;(2)使用RS232 轉(zhuǎn)485轉(zhuǎn)換器;(3)采用與監(jiān)考單元類似的RS-485總線收發(fā)器實(shí)現(xiàn)。
所述的監(jiān)控單元包括監(jiān)控器、RS-485收發(fā)器和總線監(jiān)聽(tīng)檢測(cè)電路。監(jiān)控 器是以8位單片機(jī)為核心擴(kuò)展的嵌入式系統(tǒng),也可以是16位或者32位的嵌入
5式系統(tǒng),監(jiān)控器的MCU芯片帶有串行通信接口-通用異步收發(fā)器UART。 RS-485收發(fā)器的功能是將MCU的串行TTL電平和RS-485差分信號(hào)進(jìn)行雙向 轉(zhuǎn)換,即在發(fā)送端,驅(qū)動(dòng)器將TTL電平信號(hào)轉(zhuǎn)換成差分信號(hào)輸出;在接收端, 接收器將差分信號(hào)轉(zhuǎn)換成TTL電平。所述的總線監(jiān)聽(tīng)檢測(cè)電路,是由2個(gè)與 非門構(gòu)成的基本RS觸發(fā)器組成,使用一片零售價(jià)不足1元RMB標(biāo)準(zhǔn)高速 CMOS集成電路74HC00即可實(shí)現(xiàn)。
所述的監(jiān)控單元中的監(jiān)控器含有控制軟件。監(jiān)控單元可以接收監(jiān)測(cè)子站數(shù) 據(jù)服務(wù)器發(fā)來(lái)的命令,將測(cè)得的污染物排放數(shù)據(jù)發(fā)送到監(jiān)測(cè)子站數(shù)據(jù)服務(wù)器, 也可以主動(dòng)將此數(shù)據(jù)發(fā)送到監(jiān)測(cè)子站數(shù)據(jù)服務(wù)器,后者即為多主機(jī)方式。所述
的多主機(jī)方式的點(diǎn)對(duì)點(diǎn)發(fā)送數(shù)據(jù)包的控制軟件按照以下步驟進(jìn)行
a) 按規(guī)定格式組織欲發(fā)送的數(shù)據(jù)包報(bào)文,發(fā)送次數(shù)計(jì)數(shù)器清0;
b) 從監(jiān)控器的輸出口發(fā)一低電平脈沖至總線監(jiān)聽(tīng)檢測(cè)電路置"l"輸入端,
將總線監(jiān)聽(tīng)檢測(cè)電路輸出置"1";
c) 在監(jiān)控器的輸入口檢測(cè)總線監(jiān)聽(tīng)檢測(cè)電路的輸出是否為"l",如為"0", 轉(zhuǎn)到b);
d) 啟動(dòng)定時(shí)器,定時(shí)器的時(shí)間長(zhǎng)度設(shè)為20個(gè)Td (傳遞一位所需時(shí)間), 等待定時(shí)時(shí)間到;
e) 定時(shí)時(shí)間到,在監(jiān)控器的輸入口檢測(cè)總線監(jiān)聽(tīng)檢測(cè)電路的輸出是否為 "1",如為"0",轉(zhuǎn)到b);
f) 發(fā)送數(shù)據(jù)包報(bào)文,發(fā)送時(shí)要求2個(gè)字符之間的空閑間隔不得超過(guò)2個(gè)
Td;
g) 定時(shí)器的時(shí)間長(zhǎng)度設(shè)為10個(gè)Td,等待接收方應(yīng)答;
h) 收到接收方應(yīng)答,轉(zhuǎn)向j);
i) 定時(shí)時(shí)間到,未收到接收方應(yīng)答,發(fā)送次數(shù)計(jì)數(shù)器加l,如發(fā)送次數(shù)計(jì) 數(shù)器小于3,轉(zhuǎn)向f),否則設(shè)置發(fā)送錯(cuò)誤標(biāo)志,轉(zhuǎn)向j);
j)關(guān)閉定時(shí)器,退出控制程序,結(jié)束。
上述過(guò)程中,可以用固定次數(shù)的若干個(gè)循環(huán)査詢替代定時(shí)時(shí)間,則軟件控 制更為簡(jiǎn)單。所述的數(shù)據(jù)包報(bào)文內(nèi)容至少包括發(fā)送方地址碼、接收方地址碼、控制碼、 長(zhǎng)度碼、變長(zhǎng)數(shù)據(jù)體、CRC校驗(yàn)碼。
所述的監(jiān)控單元對(duì)外發(fā)送數(shù)據(jù)前,需在線檢測(cè)總線空閑狀態(tài),如總線空閑
狀態(tài)超過(guò)20個(gè)Td (傳遞一位所需時(shí)間)時(shí),表示可以發(fā)送,監(jiān)控單元將按 照傳輸規(guī)定發(fā)送數(shù)據(jù)包的相應(yīng)的全部數(shù)據(jù)位;發(fā)送結(jié)束后,在點(diǎn)對(duì)點(diǎn)發(fā)送時(shí), 規(guī)定在10個(gè)Td內(nèi),接收方必須返回相應(yīng)的應(yīng)答字節(jié),在10個(gè)Td內(nèi)如無(wú)應(yīng) 答,發(fā)送方將立即重發(fā),最大重發(fā)次數(shù)不超過(guò)三次;但針對(duì)廣播命令,如監(jiān)測(cè) 子站數(shù)據(jù)服務(wù)器發(fā)給各監(jiān)控單元的參數(shù)設(shè)置命令,各接收方不需要應(yīng)答,但廣 播命令將自動(dòng)重發(fā)三次。
本發(fā)明的技術(shù)方案通過(guò)新增的由基本RS觸發(fā)器組成的總線監(jiān)聽(tīng)檢測(cè)電路 可檢測(cè)RS_485總線網(wǎng)絡(luò)上是否有數(shù)據(jù)流,RS-485總線網(wǎng)絡(luò)上任意一個(gè)監(jiān)控單 元均可以在任意時(shí)刻主動(dòng)地向網(wǎng)絡(luò)上其它節(jié)點(diǎn)發(fā)送信息,而不分主從。如果總 線監(jiān)聽(tīng)檢測(cè)電路輸出為"0",說(shuō)明總線正"忙",不能發(fā)送數(shù)據(jù);否則說(shuō)明總 線"空閑",可以開(kāi)始發(fā)送數(shù)據(jù)。每個(gè)監(jiān)控單元自動(dòng)監(jiān)測(cè)各種污染物排放總量, 當(dāng)污染物排放總量變化率超過(guò)規(guī)定值時(shí),才主動(dòng)將測(cè)到的污染物排放數(shù)據(jù)發(fā)送 到監(jiān)測(cè)子站數(shù)據(jù)服務(wù)器,有效的壓縮了網(wǎng)絡(luò)總數(shù)據(jù)流量。該通信網(wǎng)絡(luò)的優(yōu)點(diǎn)是 信號(hào)比較清晰,解決了總線方式下多主機(jī)的數(shù)據(jù)碰撞問(wèn)題,通信效率比較高。 所述的總線監(jiān)聽(tīng)檢測(cè)電路,是由2個(gè)與非門構(gòu)成的基本RS觸發(fā)器組成,使用 一片零售價(jià)不足1元RMB標(biāo)準(zhǔn)集成電路74HC00即可實(shí)現(xiàn),使得網(wǎng)絡(luò)構(gòu)建成 本極低。
相對(duì)于現(xiàn)有技術(shù),本發(fā)明具有如下優(yōu)點(diǎn)和有益效果
在現(xiàn)有的RS-485總線網(wǎng)絡(luò)上即可實(shí)現(xiàn)聯(lián)網(wǎng)多主機(jī)分布式系統(tǒng),且監(jiān)控單 元硬件簡(jiǎn)單、價(jià)格低廉,使用一片零售價(jià)不足1元RMB標(biāo)準(zhǔn)集成電路74HC00 即可實(shí)現(xiàn),對(duì)線路要求也不是很高。監(jiān)測(cè)數(shù)據(jù)服務(wù)器和在線監(jiān)測(cè)儀器之間使用 常用的RS485總線通信網(wǎng)絡(luò)連接,監(jiān)測(cè)數(shù)據(jù)服務(wù)器作為主機(jī),監(jiān)控單元也可 作為主機(jī),通信過(guò)程中各單元互不干擾,可實(shí)現(xiàn)網(wǎng)上任意兩點(diǎn)間的信息交換, 既保障了效率,也使整個(gè)系統(tǒng)的線上信號(hào)變得較為清楚,信號(hào)間的碰撞問(wèn)題也 不會(huì)像無(wú)主從系統(tǒng)那樣復(fù)雜。原通信協(xié)議無(wú)需改變,數(shù)據(jù)包長(zhǎng)度可任意。軟件
7幾乎不要做大的改動(dòng)。
圖1是污染源監(jiān)測(cè)系統(tǒng)結(jié)構(gòu)框圖2是本發(fā)明實(shí)例監(jiān)控器MCU、基本RS觸發(fā)器和RS-485收發(fā)器的電路 原理圖3為異步通信字符傳輸幀格式。
具體實(shí)施例方式
下面結(jié)合附圖和實(shí)例對(duì)本發(fā)明作進(jìn)一步說(shuō)明。
圖1是污染源監(jiān)測(cè)系統(tǒng)結(jié)構(gòu)框圖,該污染源監(jiān)測(cè)系統(tǒng)監(jiān)測(cè)子站通信網(wǎng)絡(luò)包 括通過(guò)監(jiān)測(cè)子站數(shù)據(jù)服務(wù)器和多個(gè)監(jiān)控單元,監(jiān)測(cè)子站數(shù)據(jù)服務(wù)器具有上行通 信接口和下行通信接口 ,上行通信接口通過(guò)公共通信網(wǎng)絡(luò)與管理方遠(yuǎn)程監(jiān)控軟 件交換信息,下行通信接口通過(guò)RS485總線與多個(gè)監(jiān)控單元連接;各監(jiān)控單 元分別由RS485收發(fā)器、監(jiān)控器和總線監(jiān)聽(tīng)檢測(cè)電路組成,RS485收發(fā)器負(fù) 責(zé)與RS485總線連接,各監(jiān)控單元的具體電路見(jiàn)圖2。
圖2是本發(fā)明實(shí)例監(jiān)控器MCU、基本RS觸發(fā)器和RS-485收發(fā)器的電路 原理圖,圖中包括,監(jiān)控器MCU芯片1, 二第一和第二輸入與非門2、 3,反 相器4, RS-485收發(fā)器5,上拉電阻6、下拉電阻7、通信數(shù)據(jù)流8。上拉電阻 6和下拉電阻7連接在RS-485總線上。觸發(fā)器置"1"脈沖9。其中第一和第 二輸入與非門2、3,反相器4為一片標(biāo)準(zhǔn)高速CMOS集成電路74HC00。RS-485 收發(fā)器負(fù)責(zé)與RS-485總線連接,監(jiān)控器1由MCU芯片為核心組成,第一和 第二輸入與非門2、 3接線組成的基本RS觸發(fā)器構(gòu)成總線監(jiān)聽(tīng)檢測(cè)電路,由 第三與非門4組成的反相器和RS-485收發(fā)器5實(shí)現(xiàn)TTL電平和RS-485電平 之間的相互轉(zhuǎn)換。監(jiān)控器1的TXD引腳連接由第三與非門4組成的反相器的 輸入端,由第三與非門4組成的反相器的輸出端連接RS-485收發(fā)器5的DE、 RE端;RS-485收發(fā)器5的RO輸入端連接監(jiān)控器1的RXD引腳;RS-485收 發(fā)器5的RO輸入端同時(shí)連接與非門3的一個(gè)輸入端;監(jiān)控器1的P2.1引腳 連接與非門2的一個(gè)輸入端;監(jiān)控器1的P2.1引腳連接第一與非門2的一個(gè) 輸入端;監(jiān)控器1的P2.0引腳連接與第二非門3的輸出端。由RS-485收發(fā)器5的RO端收到的字符傳輸幀8,監(jiān)控器MCU芯片1的P2.1腳輸出的將觸發(fā) 器Q端置"1"信號(hào)9。 MCU芯片1的引腳5和引腳20所連接電容是濾波電 容,過(guò)濾掉電源的毛刺干擾。
實(shí)例中MCU的型號(hào)為ADuC812,片內(nèi)擴(kuò)展資源有8KB的Flash程序存 儲(chǔ)器、640B Flash數(shù)據(jù)存儲(chǔ)器、256B的RAM數(shù)據(jù)存儲(chǔ)器、8通道的12位A/D 轉(zhuǎn)換器、2通道的12位D/A轉(zhuǎn)換器和通用異步收發(fā)器UART,由于芯片內(nèi)部 包含程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器,PO、 P2接口可全部作為通用I/O接口使用。 MCU芯片內(nèi)部有控制程序,負(fù)責(zé)數(shù)據(jù)采集、處理和傳輸。
第一和第二輸入與非門2、 3按圖2接線組成的基本RS觸發(fā)器構(gòu)成總線 監(jiān)聽(tīng)檢測(cè)電路,與非門2的輸出Q (引腳3)接到MCU的P2.0 (引腳28), Q=0,表示RS-485總線"忙";Q=l,表示RS-485總線"空閑"。MCU中的 控制程序通過(guò)讀取引腳P2.0輸入讀取Q判別總線狀態(tài);在檢測(cè)總線"空閑" 之前,MCU中的控制程序通過(guò)引腳P2.0輸出低電平脈沖9將觸發(fā)器置位Q 二l。
RS-485收發(fā)器5使用的芯片型號(hào)為MAX485E, RS-485收發(fā)器的功能是 將MCU串行通信接口 TTL電平和RS-485差分信號(hào)進(jìn)行雙向轉(zhuǎn)換,即在發(fā)送 端,驅(qū)動(dòng)器將DI (引腳4)輸入TTL電平信號(hào)轉(zhuǎn)換成差分信號(hào)輸出到RS-485 總線,在接收端,接收器將RS-485總線上接收到的差分信號(hào)轉(zhuǎn)換成TTL電平 信號(hào)送到MCU的RxD。需要注意的是,本發(fā)明中,RS-485收發(fā)器5的DI接 地,即直接輸入"O"信號(hào),而MCU芯片1的TxD經(jīng)反相器4反相后接RS-485 收發(fā)器5收發(fā)控制端DE/RE,這種連接方法使得在向RS-485總線發(fā)送數(shù)據(jù)時(shí) 分為兩種狀態(tài)顯性0和隱性1,當(dāng)TxD為0時(shí)經(jīng)反相器4反相,DE/RE=1, RS-485收發(fā)器5處于發(fā)送模式,將收發(fā)器5的DI的輸入"0"轉(zhuǎn)換成差分信 號(hào)輸出到RS-485總線,稱為顯性0;當(dāng)TxD為1時(shí)經(jīng)反相器4反相,DE /RE =0, RS-485收發(fā)器5處于接收模式,這時(shí)RS-485發(fā)送器的輸出端呈現(xiàn)高阻態(tài), RS-485總線的高電平是通過(guò)R1上拉和R2下拉得到的信號(hào)"1",稱為隱形1; 顯性O(shè)和隱性1的優(yōu)點(diǎn)在于當(dāng)總線上"0"和"1"信號(hào)同時(shí)出現(xiàn)時(shí),不至于形 成低阻回路損壞收發(fā)器,此時(shí)"0"有效。圖3為異步通信字符傳輸幀格式,通信雙方以一個(gè)字符(包括特定附加位) 作為數(shù)據(jù)傳輸單位且發(fā)送方傳送字符的間隔時(shí)間是不定的。傳輸以起始位開(kāi) 始,停止位結(jié)束。由1變?yōu)?并持續(xù)1位時(shí)間表明發(fā)送方開(kāi)始傳輸,同時(shí)接受 方收到0開(kāi)始與發(fā)送方同步,并接受隨后來(lái)的數(shù)據(jù)。本實(shí)例利用了異步通信字 符傳輸幀中起始位為"0"的特點(diǎn),只要通信總線上有數(shù)據(jù)流,總線監(jiān)聽(tīng)檢測(cè) 電路在首字符的起始位,即翻轉(zhuǎn)為"0",指示總線處于"忙"狀態(tài)。
本實(shí)例中,上電后MCU芯片1將基本RS觸發(fā)器構(gòu)成總線監(jiān)聽(tīng)檢測(cè)電路 輸出Q置1, MCU芯片1不數(shù)據(jù)發(fā)送時(shí),TxD保持為"1",經(jīng)反相器4反相, DE/RE=0, RS-485收發(fā)器5處于接收模式;如果總線為"l", RS觸發(fā)器輸出 繼續(xù)保持"l",指示總線處于"空閑"狀態(tài)。如果總線上有字符數(shù)據(jù)流,在字 符的起始位將RS觸發(fā)器清"0",指示總線處于"忙"狀態(tài),并保持此狀態(tài)。
MCU芯片1在發(fā)送數(shù)據(jù)之前,首先通過(guò)引腳P2.0輸出低電平脈沖9將二 第一和第二輸入與非門2、 3組成的基本觸發(fā)器置位,使得Q二1。然后MCU 芯片1通過(guò)引腳P2.0讀取Q的狀態(tài),如果Q二1,等待20個(gè)Td后再次讀取Q 的狀態(tài),如果Q二1,說(shuō)明無(wú)其它監(jiān)控單元在發(fā)送數(shù)據(jù),總線空閑,本監(jiān)控單 元可以發(fā)送數(shù)據(jù);如果Q = 0,說(shuō)明其它監(jiān)控單元在發(fā)送數(shù)據(jù),總線忙。本監(jiān) 控單元需等待總線空閑。多主機(jī)方式的點(diǎn)對(duì)點(diǎn)發(fā)送數(shù)據(jù)包的控制軟件按照以下 步驟進(jìn)行
a) 按規(guī)定格式組織欲發(fā)送的數(shù)據(jù)包報(bào)文,發(fā)送次數(shù)計(jì)數(shù)器清O;
b) 從監(jiān)控器的輸出口發(fā)一低電平脈沖至總線監(jiān)聽(tīng)檢測(cè)電路置"1"輸入端, 將總線監(jiān)聽(tīng)檢測(cè)電路輸出置"1";
c) 在監(jiān)控器的輸入口檢測(cè)總線監(jiān)聽(tīng)檢測(cè)電路的輸出是否為"1 ",如為"0", 轉(zhuǎn)到b);
d) 啟動(dòng)定時(shí)器,定時(shí)器的時(shí)間長(zhǎng)度設(shè)為20個(gè)Td (傳遞一位所需時(shí)間), 等待定時(shí)時(shí)間到;
e) 定時(shí)時(shí)間到,在監(jiān)控器的輸入口檢測(cè)總線監(jiān)聽(tīng)檢測(cè)電路的輸出是否為 "r,,如為"0",轉(zhuǎn)到b);
f) 發(fā)送數(shù)據(jù)包報(bào)文,發(fā)送時(shí)要求2個(gè)字符之間的空閑間隔不得超過(guò)2個(gè)Td;
g) 定時(shí)器的時(shí)間長(zhǎng)度設(shè)為10個(gè)Td,等待接收方應(yīng)答;
h) 收到接收方應(yīng)答,轉(zhuǎn)向j);
i) 定時(shí)時(shí)間到,未收到接收方應(yīng)答,發(fā)送次數(shù)計(jì)數(shù)器加l,如發(fā)送次數(shù)計(jì) 數(shù)器小于3,轉(zhuǎn)向f),否則設(shè)置發(fā)送錯(cuò)誤標(biāo)志,轉(zhuǎn)向j);
j)關(guān)閉定時(shí)器,退出控制程序,結(jié)束。
所述的數(shù)據(jù)包報(bào)文內(nèi)容至少包括發(fā)送方地址碼、接收方地址碼、控制碼、 長(zhǎng)度碼、變長(zhǎng)數(shù)據(jù)體、CRC校驗(yàn)碼。
上述過(guò)程中,可以用固定次數(shù)的若干個(gè)循環(huán)查詢替代定時(shí)時(shí)間,則軟件控 制更為簡(jiǎn)單。
在本發(fā)明的通信網(wǎng)絡(luò)中,無(wú)論是監(jiān)測(cè)子站數(shù)據(jù)服務(wù)器,還是每個(gè)監(jiān)控單元 都可以作為主機(jī)主動(dòng)向監(jiān)測(cè)子站通信網(wǎng)絡(luò)發(fā)送數(shù)據(jù)。通常監(jiān)測(cè)子站數(shù)據(jù)服務(wù)器 下載控制參數(shù)到各個(gè)監(jiān)控單元,監(jiān)控單元將所測(cè)量的污染物排放數(shù)據(jù)上傳到監(jiān) 測(cè)子站數(shù)據(jù)服務(wù)器。每個(gè)監(jiān)控單元除每天定時(shí)采集污染物排放數(shù)據(jù)外,還要在 線24小時(shí)不間斷連續(xù)監(jiān)測(cè)各種污染物排放情況,當(dāng)污染物排放總量變化量未 超出規(guī)定變化值時(shí),不發(fā)送數(shù)據(jù)到網(wǎng)絡(luò)。當(dāng)污染物排放總量變化率超過(guò)規(guī)定變 化值時(shí),便主動(dòng)將測(cè)到的污染物排放數(shù)據(jù)通過(guò)網(wǎng)絡(luò)發(fā)送到監(jiān)測(cè)子站數(shù)據(jù)服務(wù) 器。設(shè)在Tn時(shí)刻污染物排放數(shù)據(jù)為Pn,如果設(shè)置控制參數(shù)規(guī)定當(dāng)污染物排放 數(shù)據(jù)每變化1%時(shí)記錄并傳輸,則在Tn+l時(shí)刻,如果IPn+l—Pn|〉| Pn *1%|, 則上傳測(cè)量數(shù)據(jù)。否則不發(fā)送任何信息到網(wǎng)絡(luò)。與主從分布式網(wǎng)絡(luò)比較,該通 信網(wǎng)絡(luò)的優(yōu)點(diǎn)是信號(hào)比較清晰,對(duì)數(shù)據(jù)碰撞不敏感,通信效率顯著提高。另外 也可有效的減少子站現(xiàn)場(chǎng)的數(shù)據(jù)存儲(chǔ)量,降低子站監(jiān)控系統(tǒng)的建設(shè)成本。
權(quán)利要求
1、一種污染源監(jiān)測(cè)系統(tǒng)監(jiān)測(cè)子站通信網(wǎng)絡(luò),包括通過(guò)監(jiān)測(cè)子站數(shù)據(jù)服務(wù)器和多個(gè)監(jiān)控單元,監(jiān)測(cè)子站數(shù)據(jù)服務(wù)器具有上行通信接口和下行通信接口,上行通信接口通過(guò)公共通信網(wǎng)絡(luò)與管理方遠(yuǎn)程監(jiān)控軟件交換信息,下行通信接口通過(guò)RS-485總線與多個(gè)監(jiān)控單元連接;其特征在于,各監(jiān)控單元分別由RS-485收發(fā)器、監(jiān)控器和總線監(jiān)聽(tīng)檢測(cè)電路組成,RS-485收發(fā)器負(fù)責(zé)與RS-485總線連接,監(jiān)控器由MCU芯片為核心組成,第一和第二輸入與非門接線組成的基本RS觸發(fā)器構(gòu)成總線監(jiān)聽(tīng)檢測(cè)電路,由第三與非門組成的反相器和RS-485收發(fā)器實(shí)現(xiàn)TTL電平和RS-485電平之間的相互轉(zhuǎn)換;監(jiān)控器的TXD引腳連接反相器的輸入端,反相器的輸出端連接RS-485收發(fā)器的DE、RE端;RS-485收發(fā)器的RO輸入端連接監(jiān)控器的RXD引腳,同時(shí)連接第二與非門的一個(gè)輸入端;監(jiān)控器的P2.1引腳連接與第一非門的一個(gè)輸入端;監(jiān)控器的P2.0引腳分別連接第一與非門的輸出端和第二與非門的另一輸入端;第一與非門的另一個(gè)輸入端與第二與非門的輸出端連接。
2、 根據(jù)權(quán)利要求1所述的一種污染源監(jiān)測(cè)系統(tǒng)監(jiān)測(cè)子站通信網(wǎng)絡(luò),其特 征在于所述得監(jiān)控器l為ADuc812型MCU芯片型號(hào)。
3、 根據(jù)權(quán)利要求1所述的一種污染源監(jiān)測(cè)系統(tǒng)監(jiān)測(cè)子站通信網(wǎng)絡(luò),其特 征在于所述的第一、第二和第三與非門為一片通用高速CMOS門電路74HC00 心片。
4、 根據(jù)權(quán)利要求1所述的一種污染源監(jiān)測(cè)系統(tǒng)監(jiān)測(cè)子站通信網(wǎng)絡(luò),其特 征在于所述的RS-485收發(fā)器為MAX485E型RS-485收發(fā)器。
5、 根據(jù)權(quán)利要求1所述的一種污染源監(jiān)測(cè)系統(tǒng)監(jiān)測(cè)子站通信網(wǎng)絡(luò),其特 征在于所述通信網(wǎng)絡(luò)還包括連接在RS-485總線上拉電阻和下拉電阻。
全文摘要
本發(fā)明公開(kāi)了一種污染源監(jiān)測(cè)系統(tǒng)監(jiān)測(cè)子站通信網(wǎng)絡(luò)。該網(wǎng)絡(luò)中各監(jiān)控單元分別由RS-485收發(fā)器、監(jiān)控器和總線監(jiān)聽(tīng)檢測(cè)電路組成,RS-485收發(fā)器負(fù)責(zé)與RS-485總線連接,監(jiān)控器由MCU芯片為核心組成,第一和第二輸入與非門接線組成的基本RS觸發(fā)器構(gòu)成總線監(jiān)聽(tīng)檢測(cè)電路,由第三與非門組成的反相器和RS-485收發(fā)器實(shí)現(xiàn)TTL電平和RS-485電平之間的相互轉(zhuǎn)換;在本發(fā)明的通信網(wǎng)絡(luò)中,無(wú)論是監(jiān)測(cè)子站數(shù)據(jù)服務(wù)器,還是每個(gè)監(jiān)控單元都可以作為主機(jī)主動(dòng)向監(jiān)測(cè)子站通信網(wǎng)絡(luò)發(fā)送數(shù)據(jù)。該通信網(wǎng)絡(luò)信號(hào)清晰,對(duì)數(shù)據(jù)碰撞不敏感,通信效率比較高。
文檔編號(hào)H04L12/56GK101262398SQ200710032559
公開(kāi)日2008年9月10日 申請(qǐng)日期2007年12月14日 優(yōu)先權(quán)日2007年12月14日
發(fā)明者齊 張, 張英彬, 朱寧西, 奎 林, 田立彬, 佳 胡 申請(qǐng)人:華南理工大學(xué)