本發(fā)明涉及通訊
技術(shù)領(lǐng)域:
,特別是涉及一種基于DCS系統(tǒng)的對(duì)等通訊方法及裝置。
背景技術(shù):
:在DCS(DistributedControlSystem,分布式控制系統(tǒng))中,系統(tǒng)網(wǎng)是實(shí)現(xiàn)監(jiān)控級(jí)與控制級(jí)之間通訊的網(wǎng)絡(luò),一般為工業(yè)以太網(wǎng),包含至少有兩類站點(diǎn):過程控制站和操作站。其中,過程控制站通過控制器對(duì)現(xiàn)場(chǎng)數(shù)據(jù)進(jìn)行采集、運(yùn)算以及控制,操作站用于對(duì)現(xiàn)場(chǎng)數(shù)據(jù)的監(jiān)視、操作和管理??刂破骱筒僮髡局g相互通訊完成數(shù)據(jù)交互。目前,多采用傳統(tǒng)的對(duì)等P-P模式作為控制器和操作站之間通訊的通訊模式。傳統(tǒng)的P-P模式是把操作站與控制器看作通訊的發(fā)起方和響應(yīng)方,操作站為保證來自操作員的任何數(shù)據(jù)需求,把有可能需要的數(shù)據(jù)均向控制器進(jìn)行請(qǐng)求,并且每臺(tái)操作站均需要獲得控制器的數(shù)據(jù),需要與其進(jìn)行通訊。傳統(tǒng)的P-P模式從表象上看,實(shí)現(xiàn)了控制器與操作站之間的數(shù)據(jù)直接交換,但是存在以下幾個(gè)問題:首先,系統(tǒng)規(guī)模難以做大,當(dāng)系統(tǒng)規(guī)模變大后,其通訊效率變得低下,數(shù)據(jù)更新緩慢。由于各個(gè)站點(diǎn)均需要通訊,網(wǎng)絡(luò)負(fù)荷變得很大,造成系統(tǒng)不穩(wěn)定。其次,這種通訊模式對(duì)控制器的網(wǎng)絡(luò)性能要求較高,一般的嵌入式的控制器難以滿足要求,只能配置高檔的處理器芯片,增加了系統(tǒng)成本。技術(shù)實(shí)現(xiàn)要素:為解決上述技術(shù)問題,本發(fā)明提供一種基于DCS系統(tǒng)的對(duì)等通訊方法及裝置。一種基于DCS系統(tǒng)的對(duì)等通訊方法,應(yīng)用于操作站,所述操作站與多個(gè)控制器通信連接;每個(gè)控制器中均設(shè)置有若干個(gè)相互獨(dú)立的操作站通訊管道,每個(gè)操作站通訊管道均包含若干個(gè)相互獨(dú)立的頁面通訊管道;每個(gè)操作站通訊管道在同一時(shí)刻僅為一個(gè)操作站服務(wù),每個(gè)頁面通訊管道在同一時(shí)刻僅為一個(gè)頁面服務(wù);針對(duì)每個(gè)操作站通訊管道,該操作站通訊管道的每個(gè)頁面通訊管道均可訪問到該操作站通訊管道對(duì)應(yīng)的數(shù)據(jù)區(qū)的全部?jī)?nèi)容;所述方法包括:根據(jù)要打開的目標(biāo)頁面的每個(gè)數(shù)據(jù)點(diǎn)的屬性,確定要連接的所有控制器;針對(duì)要連接的每個(gè)控制器,向該控制器發(fā)送通訊請(qǐng)求,并占用該控制器根據(jù)所述通訊請(qǐng)求分配的操作站通訊管道;在打開所述目標(biāo)頁面時(shí),向該控制器發(fā)送針對(duì)該操作站通訊管道包含的頁面通訊管道的申請(qǐng);在接收到該控制器針對(duì)該申請(qǐng)的響應(yīng)信息后,通過該頁面通訊管道從相應(yīng)數(shù)據(jù)區(qū)獲得相應(yīng)數(shù)據(jù)點(diǎn)的數(shù)據(jù)。在本發(fā)明的一種具體實(shí)施方式中,所述方法還包括:在達(dá)到設(shè)定的管道拆除觸發(fā)條件時(shí),向已連接的每個(gè)控制器發(fā)送針對(duì)操作站通訊管道的拆除請(qǐng)求,以使相應(yīng)的控制器根據(jù)所述拆除請(qǐng)求,拆除相應(yīng)的操作站通訊管道。在本發(fā)明的一種具體實(shí)施方式中,每個(gè)操作站通訊管道均包含若干個(gè)相互獨(dú)立的大頁面通訊管道和若干個(gè)相互獨(dú)立的小頁面通訊管道,所述在打開所述目標(biāo)頁面時(shí),向該控制器發(fā)送針對(duì)該操作站通訊管道包含的頁面通訊管道的申請(qǐng),包括:在打開所述目標(biāo)頁面時(shí),根據(jù)所述目標(biāo)頁面上與該控制器對(duì)應(yīng)的數(shù)據(jù)點(diǎn)的大小,確定申請(qǐng)大頁面通訊管道還是小頁面通訊管道;如果確定申請(qǐng)大頁面通訊管道,則向該控制器發(fā)送針對(duì)大頁面通訊管道的申請(qǐng);如果確定申請(qǐng)小頁面通訊管道,則向該控制器發(fā)送針對(duì)小頁面通訊管道的申請(qǐng)。在本發(fā)明的一種具體實(shí)施方式中,在打開所述目標(biāo)頁面時(shí),在所述向該控制器發(fā)送針對(duì)該操作站通訊管道包含的頁面通訊管道的申請(qǐng)之前,所述方法還包括:確定通訊列表中是否包含所述目標(biāo)頁面的頁面標(biāo)識(shí)號(hào),所述通訊列表中記錄有當(dāng)前處于通訊模式的頁面的頁面標(biāo)識(shí)號(hào);如果是,則直接通過具有與所述目標(biāo)頁面的頁面標(biāo)識(shí)號(hào)相同的管道號(hào)的頁面通訊管道從相應(yīng)數(shù)據(jù)區(qū)獲得相應(yīng)數(shù)據(jù)點(diǎn)的數(shù)據(jù)。在本發(fā)明的一種具體實(shí)施方式中,在確定所述通訊列表中不包含所述目標(biāo)頁面的頁面標(biāo)識(shí)號(hào)時(shí),所述向該控制器發(fā)送針對(duì)該操作站通訊管道包含的頁面通訊管道的申請(qǐng),包括:向該控制器發(fā)送用于詢問是否存在空閑的頁面通訊管道的通訊詢問信息;如果確定該控制器中存在空閑的頁面通訊管道,則向該控制器發(fā)送通訊連接建立請(qǐng)求,所述通訊連接建立請(qǐng)求中攜帶所述目標(biāo)頁面的的頁面標(biāo)識(shí)號(hào)和變量表,所述變量表包含所述目標(biāo)頁面的每個(gè)數(shù)據(jù)點(diǎn)的數(shù)據(jù)點(diǎn)項(xiàng)名、數(shù)據(jù)長(zhǎng)度和數(shù)據(jù)地址指針,以使該控制器根據(jù)所述通訊連接建立請(qǐng)求,分配相應(yīng)的頁面通訊管道,并根據(jù)所述目標(biāo)頁面的頁面標(biāo)識(shí)號(hào),標(biāo)記該頁面通訊管道的管道號(hào)。在本發(fā)明的一種具體實(shí)施方式中,所述通過該頁面通訊管道從相應(yīng)數(shù)據(jù)區(qū)獲得相應(yīng)數(shù)據(jù)點(diǎn)的數(shù)據(jù),包括:向該控制器發(fā)送針對(duì)目標(biāo)數(shù)據(jù)包的數(shù)據(jù)請(qǐng)求,所述目標(biāo)數(shù)據(jù)包的編號(hào)與所述目標(biāo)頁面的頁面標(biāo)識(shí)號(hào)相同;接收該控制器通過具有與所述目標(biāo)頁面的頁面標(biāo)識(shí)號(hào)相同的管道號(hào)的頁面通訊管道返回的數(shù)據(jù)。一種基于DCS系統(tǒng)的對(duì)等通訊裝置,應(yīng)用于操作站,所述操作站與多個(gè)控制器通信連接;每個(gè)控制器中均設(shè)置有若干個(gè)相互獨(dú)立的操作站通訊管道,每個(gè)操作站通訊管道均包含若干個(gè)相互獨(dú)立的頁面通訊管道;每個(gè)操作站通訊管道在同一時(shí)刻僅為一個(gè)操作站服務(wù),每個(gè)頁面通訊管道在同一時(shí)刻僅為一個(gè)頁面服務(wù);針對(duì)每個(gè)操作站通訊管道,該操作站通訊管道的每個(gè)頁面通訊管道均可訪問到該操作站通訊管道對(duì)應(yīng)的數(shù)據(jù)區(qū)的全部?jī)?nèi)容;所述裝置包括:控制器確定模塊,用于根據(jù)要打開的目標(biāo)頁面的每個(gè)數(shù)據(jù)點(diǎn)的屬性,確定要連接的所有控制器;操作站通訊管道占用模塊,用于針對(duì)要連接的每個(gè)控制器,向該控制器發(fā)送通訊請(qǐng)求,并占用該控制器根據(jù)所述通訊請(qǐng)求分配的操作站通訊管道;頁面通訊管道申請(qǐng)模塊,用于在打開所述目標(biāo)頁面時(shí),向該控制器發(fā)送針對(duì)該操作站通訊管道包含的頁面通訊管道的申請(qǐng);數(shù)據(jù)第一獲取模塊,用于在接收到該控制器針對(duì)該申請(qǐng)的響應(yīng)信息后,通過該頁面通訊管道從相應(yīng)數(shù)據(jù)區(qū)獲得相應(yīng)數(shù)據(jù)點(diǎn)的數(shù)據(jù)。在本發(fā)明的一種具體實(shí)施方式中,所述裝置還包括:操作站通訊管道拆除模塊,用于在達(dá)到設(shè)定的管道拆除觸發(fā)條件時(shí),向已連接的每個(gè)控制器發(fā)送針對(duì)操作站通訊管道的拆除請(qǐng)求,以使相應(yīng)的控制器根據(jù)所述拆除請(qǐng)求,拆除相應(yīng)的操作站通訊管道。在本發(fā)明的一種具體實(shí)施方式中,每個(gè)操作站通訊管道均包含若干個(gè)相互獨(dú)立的大頁面通訊管道和若干個(gè)相互獨(dú)立的小頁面通訊管道,所述頁面通訊管道申請(qǐng)模塊,具體用于:在打開所述目標(biāo)頁面時(shí),根據(jù)所述目標(biāo)頁面上與該控制器對(duì)應(yīng)的數(shù)據(jù)點(diǎn)的大小,確定申請(qǐng)大頁面通訊管道還是小頁面通訊管道;如果確定申請(qǐng)大頁面通訊管道,則向該控制器發(fā)送針對(duì)大頁面通訊管道的申請(qǐng);如果確定申請(qǐng)小頁面通訊管道,則向該控制器發(fā)送針對(duì)小頁面通訊管道的申請(qǐng)。在本發(fā)明的一種具體實(shí)施方式中,所述裝置還包括:通訊列表查詢模塊,用于在打開所述目標(biāo)頁面時(shí),在所述向該控制器發(fā)送針對(duì)該操作站通訊管道包含的頁面通訊管道的申請(qǐng)之前,確定通訊列表中是否包含所述目標(biāo)頁面的頁面標(biāo)識(shí)號(hào),所述通訊列表中記錄有當(dāng)前處于通訊模式的頁面的頁面標(biāo)識(shí)號(hào),如果是,則觸發(fā)數(shù)據(jù)第二獲取模塊;所述數(shù)據(jù)第二獲取模塊,用于直接通過具有與所述目標(biāo)頁面的頁面標(biāo)識(shí)號(hào)相同的管道號(hào)的頁面通訊管道從相應(yīng)數(shù)據(jù)區(qū)獲得相應(yīng)數(shù)據(jù)點(diǎn)的數(shù)據(jù)。在本發(fā)明的一種具體實(shí)施方式中,所述頁面通訊管道申請(qǐng)模塊,具體用于:在確定所述通訊列表中不包含所述目標(biāo)頁面的頁面標(biāo)識(shí)號(hào)時(shí),向該控制器發(fā)送用于詢問是否存在空閑的頁面通訊管道的通訊詢問信息;如果確定該控制器中存在空閑的頁面通訊管道,則向該控制器發(fā)送通訊連接建立請(qǐng)求,所述通訊連接建立請(qǐng)求中攜帶所述目標(biāo)頁面的的頁面標(biāo)識(shí)號(hào)和變量表,所述變量表包含所述目標(biāo)頁面的每個(gè)數(shù)據(jù)點(diǎn)的數(shù)據(jù)點(diǎn)項(xiàng)名、數(shù)據(jù)長(zhǎng)度和數(shù)據(jù)地址指針,以使該控制器根據(jù)所述通訊連接建立請(qǐng)求,分配相應(yīng)的頁面通訊管道,并根據(jù)所述目標(biāo)頁面的頁面標(biāo)識(shí)號(hào),標(biāo)記該頁面通訊管道的管道號(hào)。在本發(fā)明的一種具體實(shí)施方式中,所述數(shù)據(jù)第一獲取模塊,具體用于:向該控制器發(fā)送針對(duì)目標(biāo)數(shù)據(jù)包的數(shù)據(jù)請(qǐng)求,所述目標(biāo)數(shù)據(jù)包的編號(hào)與所述目標(biāo)頁面的頁面標(biāo)識(shí)號(hào)相同;接收該控制器通過具有與所述目標(biāo)頁面的頁面標(biāo)識(shí)號(hào)相同的管道號(hào)的頁面通訊管道返回的數(shù)據(jù)。應(yīng)用本發(fā)明實(shí)施例所提供的技術(shù)方案,在控制器中預(yù)先設(shè)置若干個(gè)相互獨(dú)立的操作站通訊管道,每個(gè)操作站通訊管道包含若干個(gè)頁面通訊管道,且每個(gè)操作站通訊管道在同一時(shí)刻僅為一個(gè)操作站服務(wù),每個(gè)頁面通訊管道在同一時(shí)刻僅為一個(gè)頁面服務(wù),操作站針對(duì)要連接的每個(gè)控制器,可以占用該控制器為其分配的操作站通訊管道,在打開目標(biāo)頁面時(shí),通過申請(qǐng)得到的該操作站通訊管道包含的頁面通訊管道獲取相應(yīng)數(shù)據(jù)區(qū)的數(shù)據(jù)。各操作站以及操作站上的最小通訊單元,頁面之間相互獨(dú)立,互不影響,通訊效率較高,合理的通訊量使得控制器的性能得到保證,能夠滿足大規(guī)模DCS系統(tǒng)的高效、高速對(duì)等通訊要求。附圖說明為了更清楚的說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單的介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1為本發(fā)明實(shí)施例中控制器通訊管道的劃分示意圖;圖2為本發(fā)明實(shí)施例中控制器的通訊管道與數(shù)據(jù)區(qū)的映射關(guān)系示意圖;圖3為本發(fā)明實(shí)施例中一種基于DCS系統(tǒng)的對(duì)等通訊方法的實(shí)施流程圖;圖4為本發(fā)明實(shí)施例中操作站和控制器之間通訊的示意圖;圖5為本發(fā)明實(shí)施例中一種基于DCS系統(tǒng)的對(duì)等通訊裝置的結(jié)構(gòu)示意圖。具體實(shí)施方式為了使本
技術(shù)領(lǐng)域:
的人員更好地理解本發(fā)明方案,下面結(jié)合附圖和具體實(shí)施方式對(duì)本發(fā)明作進(jìn)一步的詳細(xì)說明。顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。本發(fā)明的核心是提供一種基于DCS系統(tǒng)的對(duì)等通訊方法,該方法可以應(yīng)用于操作站,操作站與多個(gè)控制器通信連接。在實(shí)際應(yīng)用中,操作站可以通過HMI(HumanMachineInterface,人機(jī)界面)與控制器通訊。在本發(fā)明實(shí)施例中,操作站為DCS系統(tǒng)中的任意一臺(tái)操作站,控制器為DCS系統(tǒng)中用于控制現(xiàn)場(chǎng)裝置的一種可編程設(shè)備,是一種資源有限、處理能力有限、嵌入式的可編程設(shè)備。在本發(fā)明實(shí)施例中,每個(gè)控制器中均設(shè)置有若干個(gè)相互獨(dú)立的操作站通訊管道,每個(gè)操作站通訊管道在同一時(shí)刻僅為一個(gè)操作站服務(wù),即在同一時(shí)刻,一個(gè)操作站通訊管道僅可被一個(gè)操作站占用。操作站通訊管道也即通訊緩沖區(qū)。每個(gè)操作站通訊管道均包含若干個(gè)相互獨(dú)立的頁面通訊管道,每個(gè)頁面通訊管道在同一時(shí)刻僅為一個(gè)頁面服務(wù)。具體的,每個(gè)操作站通訊管道可以包含若干個(gè)相互獨(dú)立的大頁面通訊管道和若干個(gè)相互獨(dú)立的小頁面通訊管道。各個(gè)頁面通訊管道之間相互獨(dú)立,非獨(dú)占式運(yùn)行,可以復(fù)用,但在同一時(shí)刻,最多為一個(gè)頁面所使用。如圖1所示,為一個(gè)控制器通訊管道的劃分示意圖。該控制器設(shè)置有16個(gè)操作站通訊管道,最多同時(shí)容納16個(gè)操作站與其通訊。每個(gè)操作站通訊管道包含3個(gè)大頁面通訊管道和20個(gè)小頁面通訊管道。每個(gè)大頁面通訊管道能夠同時(shí)容納1000個(gè)數(shù)據(jù)點(diǎn)項(xiàng)進(jìn)行通訊,小頁面通訊管道能同時(shí)容納300個(gè)數(shù)據(jù)點(diǎn)項(xiàng)進(jìn)行通訊。在圖1所示的通訊管道的左側(cè)是對(duì)操作站的HMI的訪問接口,可以響應(yīng)來自于操作站通過HMI發(fā)送的數(shù)據(jù)連接請(qǐng)求;通訊管道的右側(cè)與控制器的數(shù)據(jù)區(qū)連接,實(shí)際上是控制器的某個(gè)數(shù)據(jù)區(qū)的映射,可以直接訪問控制器的相應(yīng)數(shù)據(jù)區(qū)??刂破鞯臄?shù)據(jù)區(qū)以地址指針形式向外暴露訪問接口。針對(duì)每個(gè)操作站通訊管道,該操作站通訊管道的每個(gè)頁面通訊管道均可訪問到該操作站通訊管道對(duì)應(yīng)的數(shù)據(jù)區(qū)的全部?jī)?nèi)容,訪問的方式是提供所需要訪問的數(shù)據(jù)地址指針,如圖2所示。控制器的操作站通訊管道采用預(yù)分配的設(shè)計(jì)模式,保證控制器不會(huì)受到操作站的數(shù)量、HMI發(fā)起通訊連接的數(shù)量等的影響,控制器的資源分配不會(huì)受到外界負(fù)荷變化的影響,使得系統(tǒng)具有較高的可靠性和穩(wěn)定性。在本發(fā)明實(shí)施例中,采用以頁面為單位的通訊管道的通訊技術(shù),使得HMI通訊建立和通訊響應(yīng)速度較快。有效優(yōu)化了通訊效率,使得在資源和處理能力有限的、低成本控制器上實(shí)現(xiàn)了大規(guī)模DCS系統(tǒng)的通訊,使得控制器資源具有復(fù)用性,以及達(dá)到操作站上各個(gè)進(jìn)程之間、各個(gè)操作站之間通訊的解耦性的目的。參見圖3所示,為本發(fā)明實(shí)施例所提供的一種基于DCS系統(tǒng)的對(duì)等通訊方法的實(shí)施流程圖,該方法可以包括以下步驟:S110:根據(jù)要打開的目標(biāo)頁面的每個(gè)數(shù)據(jù)點(diǎn)的屬性,確定要連接的所有控制器。操作站要打開的目標(biāo)頁面包含多個(gè)數(shù)據(jù)點(diǎn),每個(gè)數(shù)據(jù)點(diǎn)均具有各自的屬性,代表每個(gè)數(shù)據(jù)點(diǎn)的數(shù)據(jù)位于哪個(gè)控制器上。針對(duì)要打開的目標(biāo)頁面的每個(gè)數(shù)據(jù)點(diǎn),根據(jù)該數(shù)據(jù)點(diǎn)的屬性,可以確定該數(shù)據(jù)點(diǎn)對(duì)應(yīng)的控制器,該控制器即為操作站要連接的控制器。如圖4所示,操作站要連接的控制器分別為10#控制器和N#控制器。針對(duì)要連接的每個(gè)控制器,均可以執(zhí)行步驟S120至步驟S140的操作。S120:針對(duì)要連接的每個(gè)控制器,向該控制器發(fā)送通訊請(qǐng)求,并占用該控制器根據(jù)通訊請(qǐng)求分配的操作站通訊管道。在實(shí)際應(yīng)用中,針對(duì)每個(gè)操作站,在該操作站加入DCS系統(tǒng)時(shí),可以預(yù)先配置該操作站對(duì)于操作站通訊管道的占用模式。其占用模式可以是靜態(tài)占用,還可以是動(dòng)態(tài)占用。如果操作站的占用模式為靜態(tài)占用,則在其啟動(dòng)時(shí)即向要連接的每個(gè)控制器發(fā)送通訊請(qǐng)求,控制器響應(yīng)后即可一直占用控制器分配的操作站通訊管道,直到操作站退出運(yùn)行時(shí)注銷,如果操作站的占用模式為動(dòng)態(tài)占用,則在其需要時(shí)申請(qǐng),不需要時(shí)注銷。S130:在打開目標(biāo)頁面時(shí),向該控制器發(fā)送針對(duì)該操作站通訊管道包含的頁面通訊管道的申請(qǐng)。操作站向該控制器發(fā)送通訊請(qǐng)求后,可以占用該控制器為其分配的操作站通訊管道。該操作站通訊管道包含若干個(gè)相互獨(dú)立的頁面通訊管道。操作站在打開目標(biāo)頁面時(shí),可以向該控制器發(fā)送針對(duì)該操作站通訊管道包含的頁面通訊管道的申請(qǐng)。在本發(fā)明的一種具體實(shí)施方式中,每個(gè)操作站通訊管道均包含若干個(gè)相互獨(dú)立的大頁面通訊管道和若干個(gè)相互獨(dú)立的小頁面通訊管道,步驟S130可以包括以下步驟:步驟一:在打開目標(biāo)頁面時(shí),根據(jù)目標(biāo)頁面上與該控制器對(duì)應(yīng)的數(shù)據(jù)點(diǎn)的大小,確定申請(qǐng)大頁面通訊管道還是小頁面通訊管道;步驟二:如果確定申請(qǐng)大頁面通訊管道,則向該控制器發(fā)送針對(duì)大頁面通訊管道的申請(qǐng);步驟三:如果確定申請(qǐng)小頁面通訊管道,則向該控制器發(fā)送針對(duì)小頁面通訊管道的申請(qǐng)。為便于描述,將上述三個(gè)步驟結(jié)合起來進(jìn)行說明。操作站在打開目標(biāo)頁面時(shí),可以根據(jù)目標(biāo)頁面上與該控制器對(duì)應(yīng)的數(shù)據(jù)點(diǎn)的大小,確定申請(qǐng)大頁面通訊管道還是小頁面通訊管道,即申請(qǐng)一個(gè)大小合適的頁面通訊管道。如果確定要申請(qǐng)大頁面通訊管道,則可以向該控制器發(fā)送針對(duì)大頁面通訊管道的申請(qǐng),如果確定要申請(qǐng)小頁面通訊管道,則可以向該控制器發(fā)送針對(duì)小頁面通訊管道的申請(qǐng)。每個(gè)頁面的每個(gè)數(shù)據(jù)點(diǎn)的數(shù)據(jù)量較小,因此通訊的建立過程和通訊過程資源開銷較小,速度較快。在本發(fā)明的一種具體實(shí)施方式中,在打開目標(biāo)頁面時(shí),在向該控制器發(fā)送針對(duì)該操作站通訊管道包含的頁面通訊管道的申請(qǐng)之前,該方法還可以包括以下步驟:第一個(gè)步驟:確定通訊列表中是否包含目標(biāo)頁面的頁面標(biāo)識(shí)號(hào),通訊列表中記錄有當(dāng)前處于通訊模式的頁面的頁面標(biāo)識(shí)號(hào),如果是,則執(zhí)行第二個(gè)步驟;第二個(gè)步驟:直接通過具有與目標(biāo)頁面的頁面標(biāo)識(shí)號(hào)相同的管道號(hào)的頁面通訊管道從相應(yīng)數(shù)據(jù)區(qū)獲得相應(yīng)數(shù)據(jù)點(diǎn)的數(shù)據(jù)。為便于描述,將上述兩個(gè)步驟結(jié)合起來進(jìn)行說明。在本發(fā)明實(shí)施例中,操作站可以維護(hù)一個(gè)通訊列表,該通訊列表是一張數(shù)據(jù)表,其中記錄有當(dāng)前處于通訊模式的頁面的頁面標(biāo)識(shí)號(hào),即頁面ID。在打開目標(biāo)頁面時(shí),操作站可以先確定通訊列表中是否包含目標(biāo)頁面的頁面標(biāo)識(shí)號(hào)。如果包含,則表明該目標(biāo)頁面當(dāng)前處于通訊模式,一定存在為其服務(wù)的頁面通訊管道,此時(shí),可以直接通過具有與該目標(biāo)頁面的頁面標(biāo)識(shí)號(hào)相同的管道號(hào)的頁面通訊管道從相應(yīng)數(shù)據(jù)區(qū)獲得相應(yīng)數(shù)據(jù)點(diǎn)的數(shù)據(jù)。在本發(fā)明的一種具體實(shí)施方式中,在確定通訊列表中不包含目標(biāo)頁面的頁面標(biāo)識(shí)號(hào)時(shí),向該控制器發(fā)送針對(duì)該操作站通訊管道包含的頁面通訊管道的申請(qǐng)的步驟,可以包括以下步驟:步驟一:向該控制器發(fā)送用于詢問是否存在空閑的頁面通訊管道的通訊詢問信息;步驟二:如果確定該控制器中存在空閑的頁面通訊管道,則向該控制器發(fā)送通訊連接建立請(qǐng)求,通訊連接建立請(qǐng)求中攜帶目標(biāo)頁面的的頁面標(biāo)識(shí)號(hào)和變量表,變量表包含目標(biāo)頁面的每個(gè)數(shù)據(jù)點(diǎn)的數(shù)據(jù)點(diǎn)項(xiàng)名、數(shù)據(jù)長(zhǎng)度和數(shù)據(jù)地址指針,以使該控制器根據(jù)通訊連接建立請(qǐng)求,分配相應(yīng)的頁面通訊管道,并根據(jù)目標(biāo)頁面的頁面標(biāo)識(shí)號(hào),標(biāo)記該頁面通訊管道的管道號(hào)。為便于描述,將上述兩個(gè)步驟結(jié)合起來進(jìn)行說明。在實(shí)際應(yīng)用中,操作站要從控制器獲取某個(gè)數(shù)據(jù)點(diǎn)的數(shù)據(jù),需要向該控制器提供該數(shù)據(jù)點(diǎn)的每個(gè)數(shù)據(jù)點(diǎn)項(xiàng)的數(shù)據(jù)地址指針,一個(gè)數(shù)據(jù)點(diǎn)有若干個(gè)數(shù)據(jù)點(diǎn)項(xiàng),每個(gè)數(shù)據(jù)點(diǎn)項(xiàng)可視為該數(shù)據(jù)點(diǎn)的一個(gè)屬性。操作站和控制器都預(yù)存有一個(gè)符號(hào)表,符號(hào)表可以是在工程編譯時(shí)由工程師組態(tài)控制器程序時(shí)生成的。該符號(hào)表記錄有每個(gè)數(shù)據(jù)點(diǎn)的點(diǎn)項(xiàng)名和數(shù)據(jù)地址指針的對(duì)應(yīng)關(guān)系。從操作站角度而言,操作站不知道數(shù)據(jù)地址指針,只知道數(shù)據(jù)點(diǎn)項(xiàng)名,通過符號(hào)表可以獲知每個(gè)數(shù)據(jù)點(diǎn)項(xiàng)名對(duì)應(yīng)的數(shù)據(jù)地址指針。符號(hào)表的結(jié)構(gòu)示意如表1所示:數(shù)據(jù)點(diǎn)項(xiàng)名數(shù)據(jù)類型數(shù)據(jù)地址指針表1每個(gè)數(shù)據(jù)點(diǎn)都是一種結(jié)構(gòu)體,它的成員是實(shí)際的數(shù)據(jù),為了壓縮符號(hào)表的大小以及提高符號(hào)表檢索效率,符號(hào)表的實(shí)際結(jié)構(gòu)可以如表2所示:表2如果操作站確定通訊列表中不包含目標(biāo)頁面的頁面標(biāo)識(shí)號(hào),則表明該目標(biāo)頁面當(dāng)前未處于通訊模式,還沒有獲得為其服務(wù)的頁面通訊管道。操作站可以先進(jìn)行變量表的收集,即將目標(biāo)頁面所需的數(shù)據(jù)點(diǎn)項(xiàng)讀出,解析符號(hào)表生成數(shù)據(jù)地址指針的信息,形成變量表,變量表包含目標(biāo)頁面的每個(gè)數(shù)據(jù)點(diǎn)的數(shù)據(jù)點(diǎn)項(xiàng)名、數(shù)據(jù)長(zhǎng)度和數(shù)據(jù)地址指針。當(dāng)操作站檢測(cè)到目標(biāo)頁面剛打開,且已經(jīng)生成了變量表時(shí),可以向該控制器發(fā)起通訊連接建立請(qǐng)求,該通訊連接建立請(qǐng)求中攜帶目標(biāo)頁面的頁面標(biāo)識(shí)號(hào)和變量表。該控制器接收到操作站發(fā)送的通訊連接建立請(qǐng)求后,可以根據(jù)該通訊連接建立請(qǐng)求,為操作站分配相應(yīng)的頁面通訊管道。并根據(jù)目標(biāo)頁面的頁面標(biāo)識(shí)號(hào),標(biāo)記該頁面通訊管道的管道號(hào),具體的,可以將目標(biāo)頁面的頁面標(biāo)識(shí)號(hào)作為該頁面通訊管道的管道號(hào)。S140:在接收到該控制器針對(duì)該申請(qǐng)的響應(yīng)信息后,通過該頁面通訊管道從相應(yīng)數(shù)據(jù)區(qū)獲得相應(yīng)數(shù)據(jù)點(diǎn)的數(shù)據(jù)。控制器接收到操作站發(fā)送的針對(duì)該操作站通訊管道包含的頁面通訊管道的申請(qǐng)后,如果有空閑的頁面通訊管道,則可以響應(yīng)該申請(qǐng),將相應(yīng)頁面通訊管道分配給操作站。操作站在接收到該控制器針對(duì)該申請(qǐng)的響應(yīng)信息后,可以通過該頁面通訊管道從相應(yīng)數(shù)據(jù)區(qū)獲得相應(yīng)數(shù)據(jù)點(diǎn)的數(shù)據(jù)。在本發(fā)明的一種具體實(shí)施方式中,步驟S140可以包括以下步驟:第一個(gè)步驟:向該控制器發(fā)送針對(duì)目標(biāo)數(shù)據(jù)包的數(shù)據(jù)請(qǐng)求,目標(biāo)數(shù)據(jù)包的編號(hào)與目標(biāo)頁面的頁面標(biāo)識(shí)號(hào)相同;第二個(gè)步驟:接收該控制器通過具有與目標(biāo)頁面的頁面標(biāo)識(shí)號(hào)相同的管道號(hào)的頁面通訊管道返回的數(shù)據(jù)。為便于描述,將上述兩個(gè)步驟結(jié)合起來進(jìn)行說明。操作站確定了目標(biāo)頁面所使用的頁面通訊管道,通過該頁面通訊管道可以向該控制器發(fā)送針對(duì)目標(biāo)數(shù)據(jù)包的數(shù)據(jù)請(qǐng)求,目標(biāo)數(shù)據(jù)包的編號(hào)可以與目標(biāo)頁面的頁面標(biāo)識(shí)號(hào)相同。從控制器角度而言,目標(biāo)頁面的頁面標(biāo)識(shí)號(hào)就是頁面通訊管道的管道號(hào)。所以,該控制器接收到數(shù)據(jù)請(qǐng)求后,可以通過相應(yīng)頁面通訊管道返回相應(yīng)數(shù)據(jù),完成一次數(shù)據(jù)交互過程。在本發(fā)明實(shí)施例中,操作站可以向控制器發(fā)起周期通訊數(shù)據(jù)請(qǐng)求,同樣使用目標(biāo)頁面的頁面標(biāo)識(shí)號(hào)表示請(qǐng)求數(shù)據(jù)包的編號(hào)。之后控制器可以每周期,比如500ms,通過具有與目標(biāo)頁面的頁面標(biāo)識(shí)號(hào)相同的管道號(hào)的頁面通訊管道向操作站返回相應(yīng)的數(shù)據(jù),完成多次數(shù)據(jù)交互過程。當(dāng)操作站向控制器發(fā)出周期通訊停止指令時(shí),控制器停止相應(yīng)數(shù)據(jù)的周期發(fā)送動(dòng)作。在實(shí)際應(yīng)用中,操作站與控制站的通訊是通過一張通訊數(shù)據(jù)表對(duì)應(yīng)的,控制站按照通訊數(shù)據(jù)表向操作站發(fā)送數(shù)據(jù),操作站根據(jù)這張通訊數(shù)據(jù)表解析數(shù)據(jù)。應(yīng)用本發(fā)明實(shí)施例所提供的方法,在控制器中預(yù)先設(shè)置若干個(gè)相互獨(dú)立的操作站通訊管道,每個(gè)操作站通訊管道包含若干個(gè)頁面通訊管道,且每個(gè)操作站通訊管道在同一時(shí)刻僅為一個(gè)操作站服務(wù),每個(gè)頁面通訊管道在同一時(shí)刻僅為一個(gè)頁面服務(wù),操作站針對(duì)要連接的每個(gè)控制器,可以占用該控制器為其分配的操作站通訊管道,在打開目標(biāo)頁面時(shí),通過申請(qǐng)得到的該操作站通訊管道包含的頁面通訊管道獲取相應(yīng)數(shù)據(jù)區(qū)的數(shù)據(jù)。各操作站以及操作站上的最小通訊單元,頁面之間相互獨(dú)立,互不影響,通訊效率較高,合理的通訊量使得控制器的性能得到保證,能夠滿足大規(guī)模DCS系統(tǒng)的高效、高速對(duì)等通訊要求。在本發(fā)明的一種具體實(shí)施方式中,該方法還可以包括以下步驟:在達(dá)到設(shè)定的管道拆除觸發(fā)條件時(shí),向已連接的每個(gè)控制器發(fā)送針對(duì)操作站通訊管道的拆除請(qǐng)求,以使相應(yīng)的控制器根據(jù)拆除請(qǐng)求,拆除相應(yīng)的操作站通訊管道。在本發(fā)明實(shí)施例中,在達(dá)到設(shè)定的管道拆除觸發(fā)條件時(shí),操作站可以向已連接的每個(gè)控制器發(fā)送針對(duì)操作站通訊管道的拆除請(qǐng)求,以使相應(yīng)的控制器根據(jù)該拆除請(qǐng)求,拆除相應(yīng)的操作站通訊管道,以復(fù)用給其他有需要的操作站。操作站與控制器通訊的拆除有兩種模式:一種是操作站發(fā)出的主動(dòng)拆除請(qǐng)求,控制器響應(yīng)該請(qǐng)求,拆除相應(yīng)的操作站通訊管道;另一種是超時(shí)被動(dòng)拆除,當(dāng)控制器在預(yù)設(shè)的一段時(shí)間內(nèi),收不到來自操作站的活動(dòng)信息時(shí),回收相應(yīng)的操作站通訊管道的使用??刂破鞑鸪僮髡就ㄓ嵐艿赖膭?dòng)作具體可以是對(duì)在用的操作站通訊管道的標(biāo)志進(jìn)行清除,以使它可以被其他操作站再次使用?;谏鲜鰧?duì)本發(fā)明實(shí)施例的技術(shù)方案的說明,本發(fā)明實(shí)施例的技術(shù)方案至少存在以下優(yōu)點(diǎn):在控制器中預(yù)先靜態(tài)分配操作站通訊管道和頁面通訊管道,資源靜態(tài)分配提高了系統(tǒng)響應(yīng)速度,克服了動(dòng)態(tài)分配的不確定性;頁面通訊管道與控制器的數(shù)據(jù)區(qū)之間是映射關(guān)系,操作站對(duì)控制器的相應(yīng)頁面通訊管道的訪問本質(zhì)上是對(duì)相應(yīng)數(shù)據(jù)區(qū)的直接訪問,沒有中間數(shù)據(jù)代理層,數(shù)據(jù)訪問速度快;基于頁面的通訊數(shù)據(jù)量較小,可以快速生成通訊子表,并通過頁面通訊管道進(jìn)行通訊,使得上下層的通訊量較??;各個(gè)操作站通訊管道、各個(gè)頁面通訊管道相互獨(dú)立,各個(gè)通訊任務(wù)之間相互無耦合性,系統(tǒng)可靠性高;控制器對(duì)各個(gè)通訊管道按照一定規(guī)則進(jìn)行響應(yīng),系統(tǒng)最大規(guī)模約束僅限于設(shè)定數(shù)量的操作站,而對(duì)控制器的個(gè)數(shù)沒有限制,適用于大型DCS系統(tǒng)的通訊連接。相應(yīng)于上面的方法實(shí)施例,本發(fā)明實(shí)施例還提供了一種基于DCS系統(tǒng)的對(duì)等通訊裝置,應(yīng)用于操作站,操作站與多個(gè)控制器通信連接;每個(gè)控制器中均設(shè)置有若干個(gè)相互獨(dú)立的操作站通訊管道,每個(gè)操作站通訊管道均包含若干個(gè)相互獨(dú)立的頁面通訊管道;每個(gè)操作站通訊管道在同一時(shí)刻僅為一個(gè)操作站服務(wù),每個(gè)頁面通訊管道在同一時(shí)刻僅為一個(gè)頁面服務(wù);針對(duì)每個(gè)操作站通訊管道,該操作站通訊管道的每個(gè)頁面通訊管道均可訪問到該操作站通訊管道對(duì)應(yīng)的數(shù)據(jù)區(qū)的全部?jī)?nèi)容。下文描述的一種基于DCS系統(tǒng)的對(duì)等通訊裝置與上文描述的一種基于DCS系統(tǒng)的對(duì)等通訊方法可相互對(duì)應(yīng)參照。參見圖5所示,該裝置可以包括以下模塊:控制器確定模塊210,用于根據(jù)要打開的目標(biāo)頁面的每個(gè)數(shù)據(jù)點(diǎn)的屬性,確定要連接的所有控制器;操作站通訊管道占用模塊220,用于針對(duì)要連接的每個(gè)控制器,向該控制器發(fā)送通訊請(qǐng)求,并占用該控制器根據(jù)通訊請(qǐng)求分配的操作站通訊管道;頁面通訊管道申請(qǐng)模塊230,用于在打開目標(biāo)頁面時(shí),向該控制器發(fā)送針對(duì)該操作站通訊管道包含的頁面通訊管道的申請(qǐng);數(shù)據(jù)第一獲取模塊240,用于在接收到該控制器針對(duì)該申請(qǐng)的響應(yīng)信息后,通過該頁面通訊管道從相應(yīng)數(shù)據(jù)區(qū)獲得相應(yīng)數(shù)據(jù)點(diǎn)的數(shù)據(jù)。應(yīng)用本發(fā)明實(shí)施例所提供的裝置,在控制器中預(yù)先設(shè)置若干個(gè)相互獨(dú)立的操作站通訊管道,每個(gè)操作站通訊管道包含若干個(gè)頁面通訊管道,且每個(gè)操作站通訊管道在同一時(shí)刻僅為一個(gè)操作站服務(wù),每個(gè)頁面通訊管道在同一時(shí)刻僅為一個(gè)頁面服務(wù),操作站針對(duì)要連接的每個(gè)控制器,可以占用該控制器為其分配的操作站通訊管道,在打開目標(biāo)頁面時(shí),通過申請(qǐng)得到的該操作站通訊管道包含的頁面通訊管道獲取相應(yīng)數(shù)據(jù)區(qū)的數(shù)據(jù)。各操作站以及操作站上的最小通訊單元,頁面之間相互獨(dú)立,互不影響,通訊效率較高,合理的通訊量使得控制器的性能得到保證,能夠滿足大規(guī)模DCS系統(tǒng)的高效、高速對(duì)等通訊要求。在本發(fā)明的一種具體實(shí)施方式中,該裝置還包括:操作站通訊管道拆除模塊,用于在達(dá)到設(shè)定的管道拆除觸發(fā)條件時(shí),向已連接的每個(gè)控制器發(fā)送針對(duì)操作站通訊管道的拆除請(qǐng)求,以使相應(yīng)的控制器根據(jù)拆除請(qǐng)求,拆除相應(yīng)的操作站通訊管道。在本發(fā)明的一種具體實(shí)施方式中,每個(gè)操作站通訊管道均包含若干個(gè)相互獨(dú)立的大頁面通訊管道和若干個(gè)相互獨(dú)立的小頁面通訊管道,頁面通訊管道申請(qǐng)模塊230,具體用于:在打開目標(biāo)頁面時(shí),根據(jù)目標(biāo)頁面上與該控制器對(duì)應(yīng)的數(shù)據(jù)點(diǎn)的大小,確定申請(qǐng)大頁面通訊管道還是小頁面通訊管道;如果確定申請(qǐng)大頁面通訊管道,則向該控制器發(fā)送針對(duì)大頁面通訊管道的申請(qǐng);如果確定申請(qǐng)小頁面通訊管道,則向該控制器發(fā)送針對(duì)小頁面通訊管道的申請(qǐng)。在本發(fā)明的一種具體實(shí)施方式中,該裝置還包括:通訊列表查詢模塊,用于在打開目標(biāo)頁面時(shí),在向該控制器發(fā)送針對(duì)該操作站通訊管道包含的頁面通訊管道的申請(qǐng)之前,確定通訊列表中是否包含目標(biāo)頁面的頁面標(biāo)識(shí)號(hào),通訊列表中記錄有當(dāng)前處于通訊模式的頁面的頁面標(biāo)識(shí)號(hào),如果是,則觸發(fā)數(shù)據(jù)第二獲取模塊;數(shù)據(jù)第二獲取模塊,用于直接通過具有與目標(biāo)頁面的頁面標(biāo)識(shí)號(hào)相同的管道號(hào)的頁面通訊管道從相應(yīng)數(shù)據(jù)區(qū)獲得相應(yīng)數(shù)據(jù)點(diǎn)的數(shù)據(jù)。在本發(fā)明的一種具體實(shí)施方式中,頁面通訊管道申請(qǐng)模塊230,具體用于:在確定通訊列表中不包含目標(biāo)頁面的頁面標(biāo)識(shí)號(hào)時(shí),向該控制器發(fā)送用于詢問是否存在空閑的頁面通訊管道的通訊詢問信息;如果確定該控制器中存在空閑的頁面通訊管道,則向該控制器發(fā)送通訊連接建立請(qǐng)求,通訊連接建立請(qǐng)求中攜帶目標(biāo)頁面的的頁面標(biāo)識(shí)號(hào)和變量表,變量表包含目標(biāo)頁面的每個(gè)數(shù)據(jù)點(diǎn)的數(shù)據(jù)點(diǎn)項(xiàng)名、數(shù)據(jù)長(zhǎng)度和數(shù)據(jù)地址指針,以使該控制器根據(jù)通訊連接建立請(qǐng)求,分配相應(yīng)的頁面通訊管道,并根據(jù)目標(biāo)頁面的頁面標(biāo)識(shí)號(hào),標(biāo)記該頁面通訊管道的管道號(hào)。在本發(fā)明的一種具體實(shí)施方式中,數(shù)據(jù)第一獲取模塊240,具體用于:向該控制器發(fā)送針對(duì)目標(biāo)數(shù)據(jù)包的數(shù)據(jù)請(qǐng)求,目標(biāo)數(shù)據(jù)包的編號(hào)與目標(biāo)頁面的頁面標(biāo)識(shí)號(hào)相同;接收該控制器通過具有與目標(biāo)頁面的頁面標(biāo)識(shí)號(hào)相同的管道號(hào)的頁面通訊管道返回的數(shù)據(jù)。本說明書中各個(gè)實(shí)施例采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說明的都是與其它實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同或相似部分互相參見即可。對(duì)于實(shí)施例公開的裝置而言,由于其與實(shí)施例公開的方法相對(duì)應(yīng),所以描述的比較簡(jiǎn)單,相關(guān)之處參見方法部分說明即可。專業(yè)人員還可以進(jìn)一步意識(shí)到,結(jié)合本文中所公開的實(shí)施例描述的各示例的單元及算法步驟,能夠以電子硬件、計(jì)算機(jī)軟件或者二者的結(jié)合來實(shí)現(xiàn),為了清楚地說明硬件和軟件的可互換性,在上述說明中已經(jīng)按照功能一般性地描述了各示例的組成及步驟。這些功能究竟以硬件還是軟件方式來執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計(jì)約束條件。專業(yè)技術(shù)人員可以對(duì)每個(gè)特定的應(yīng)用來使用不同方法來實(shí)現(xiàn)所描述的功能,但是這種實(shí)現(xiàn)不應(yīng)認(rèn)為超出本發(fā)明的范圍。結(jié)合本文中所公開的實(shí)施例描述的方法或算法的步驟可以直接用硬件、處理器執(zhí)行的軟件模塊,或者二者的結(jié)合來實(shí)施。軟件模塊可以置于隨機(jī)存儲(chǔ)器(RAM)、內(nèi)存、只讀存儲(chǔ)器(ROM)、電可編程ROM、電可擦除可編程ROM、寄存器、硬盤、可移動(dòng)磁盤、CD-ROM、或
技術(shù)領(lǐng)域:
內(nèi)所公知的任意其它形式的存儲(chǔ)介質(zhì)中。以上對(duì)本發(fā)明所提供的一種基于DCS系統(tǒng)的對(duì)等通訊方法及裝置進(jìn)行了詳細(xì)介紹。本文中應(yīng)用了具體個(gè)例對(duì)本發(fā)明的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想。應(yīng)當(dāng)指出,對(duì)于本
技術(shù)領(lǐng)域:
的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以對(duì)本發(fā)明進(jìn)行若干改進(jìn)和修飾,這些改進(jìn)和修飾也落入本發(fā)明權(quán)利要求的保護(hù)范圍內(nèi)。當(dāng)前第1頁1 2 3