王慶勝 黃文強 鄭娜
【摘 要】本文闡述了一種運營協(xié)調(diào)中心(OCC)發(fā)送數(shù)據(jù)到緊急應急中心(COCC)的協(xié)議轉(zhuǎn)換方法,包括以下步驟:向列車自動監(jiān)控系統(tǒng)(ATS)服務器訂閱設備屬性信息;將從列車自動監(jiān)控系統(tǒng)ATS服務器收到的通用事件通知結(jié)構GENA協(xié)議*數(shù)據(jù)轉(zhuǎn)換為COCC協(xié)議格式的數(shù)據(jù);最后將轉(zhuǎn)換后的數(shù)據(jù)發(fā)送到COCC。本文說明了ATS服務器端的數(shù)據(jù)無損的轉(zhuǎn)換到COCC側(cè),實現(xiàn)了COCC側(cè)統(tǒng)一顯示線路信息的目的,可以根據(jù)COCC側(cè)對具體數(shù)據(jù)的要求,方便地從OCC側(cè)訂閱數(shù)據(jù)的內(nèi)容。
【關鍵詞】協(xié)議轉(zhuǎn)換;ATS;GENA協(xié)議;COCC協(xié)議
【Abstract】This paper introduces a protocol conversion method of send data from the Operator Control Center to the emergency center. It includes the following steps: Subscribe device attribute information from Automatic Train Supervision server; Convert this information from GENA protocol to COCC protocol; Send emergency COCC data sent to the emergency COCC.
【Key words】Protocol conversion;ATS;GENA Protocol;COCC Protocol
0 引言
在地鐵的信號系統(tǒng)中,各信號提供商對外的接口都有自己的協(xié)議類型。這樣導致地鐵運營公司很難統(tǒng)一管理和維護這些不同廠商的信號設備。而隨著交通預警和統(tǒng)一調(diào)度的需求越來越急迫的環(huán)境下,需要各廠商將各自的信號系統(tǒng)的對外協(xié)議統(tǒng)一為一個通用的協(xié)議,以滿足地鐵運營公司的上述需求。
1 轉(zhuǎn)換內(nèi)容
本文所要解決的技術問題是提供一種控制中心發(fā)送數(shù)據(jù)到緊急應急中心的協(xié)議轉(zhuǎn)換方法,它可以實現(xiàn)了ATS服務器端的數(shù)據(jù)無損的轉(zhuǎn)換到COCC側(cè)。如圖1所示,緊急應急中心的數(shù)據(jù)根據(jù)不同類型可以劃分為四類數(shù)據(jù):線路運行監(jiān)控數(shù)據(jù),設備監(jiān)控數(shù)據(jù),電力監(jiān)控數(shù)據(jù)及防火/防淹監(jiān)控數(shù)據(jù)。
不同類型下的屬性具體內(nèi)容如表1所示。
表1 不同類型下的屬性內(nèi)容
圖1 緊急應急中心的數(shù)據(jù)內(nèi)容
2 實現(xiàn)方式
本文主要解決軌道交通中從線路的控制中心發(fā)送數(shù)據(jù)到緊急應急中心,為了實現(xiàn)數(shù)據(jù)轉(zhuǎn)換的目的,緊急應急中心獲得控制中心數(shù)據(jù)的網(wǎng)絡架構圖如圖2所示。
圖2 網(wǎng)絡架構圖
整個處理流程可以分三個階段:
第一階段是OCC FEP向列車自動監(jiān)控系統(tǒng)ATS服務器訂閱設備屬性信息。其中包含了列車自動監(jiān)控系統(tǒng)ATS端可以發(fā)送的14類對象,具體內(nèi)容如下表一所示。采用GENA協(xié)議,訂閱信息發(fā)送成功后,從列車自動監(jiān)控系統(tǒng)ATS將返回對應設備的狀態(tài)信息,并采用XML語言描述。
第二階段是OCC FEP將從列車自動監(jiān)控系統(tǒng)ATS服務器收到的數(shù)據(jù)轉(zhuǎn)換為COCC協(xié)議格式的數(shù)據(jù)。這部分也是本方法的關鍵,即如何實現(xiàn)不同協(xié)議間數(shù)據(jù)內(nèi)容的相互轉(zhuǎn)換。具體處理對象及內(nèi)容如圖3所示。本文的GENA協(xié)議中的列車信息及進路信息需要結(jié)合起來處理才能生成COCC協(xié)議中的列車信息。
第三階段是OCC FEP將COCC數(shù)據(jù)發(fā)送給COCC端。
以上三個階段中,最關鍵的部分就是通用事件通知結(jié)構GENA協(xié)議數(shù)據(jù)轉(zhuǎn)換為COCC協(xié)議數(shù)據(jù)。處理步驟如下:
1)程序從配置文件中加載固定數(shù)據(jù),形成設備列表,并對列表中的每個對象進行初始化;
2)啟動通用事件通知結(jié)構GENA訂閱服務,從運營協(xié)調(diào)中心OCC側(cè)訂閱設備的狀態(tài),接收到設備狀態(tài)后更新設備列表中的對象狀態(tài)值;
3)如果從運營協(xié)調(diào)中心OCC側(cè)接收到動態(tài)對象,則生成動態(tài)對象并添加到設備列表中,并保存相應的狀態(tài)值;
4)根據(jù)當前設備列表中的對象狀態(tài)值,按照COCC協(xié)議進行BITMAP的組包,發(fā)送給COCC側(cè);
5)接收運營協(xié)調(diào)中心OCC側(cè)的訂閱消息,并根據(jù)消息包更新對應的對象狀態(tài)值,并按照COCC協(xié)議進行STATUS_CHANGE的組包,發(fā)送給COCC側(cè);
6)如果接收到動態(tài)對象被刪除,則按照COCC協(xié)議中的REMOVE進行組包,發(fā)送給COCC側(cè)。
其中針對兩種協(xié)議的不同之處有如下特殊的處理:
1)該方法中列車對象及進路對象都是動態(tài)產(chǎn)生信息的,也就是說列車和進路都是可以增加,更改和刪除的。而其他對象都是在程序初始化時就已經(jīng)產(chǎn)生,后續(xù)的狀態(tài)都是進行更新。
2)站臺對象需要和區(qū)域控制對象進行綁定,也就是說通過站臺對象可以找到對應的區(qū)域控制對象,這樣當站臺的控制狀態(tài)發(fā)生變化時就可以更新相應的區(qū)域控制對象。
3)進路對象需要和列車對象進行綁定,當程序從OCC側(cè)接收到一條進路對象時,需要通過進路所處的位置綁定到相應的列車上,這樣當進路信息發(fā)生變化時(例如進路延伸、回退,總之任何導致進路發(fā)生變化的情況),就可以通過對應的列車對象發(fā)送更新信息到COCC側(cè)。
使用本方法實現(xiàn)了ATS服務器端的數(shù)據(jù)無損的轉(zhuǎn)換到COCC側(cè),實現(xiàn)了COCC側(cè)統(tǒng)一顯示線路信息的目的。可以根據(jù)COCC側(cè)需要的具體數(shù)據(jù)要求,方便地定制從OCC側(cè)接收數(shù)據(jù)的內(nèi)容。
3 結(jié)論
從以上的網(wǎng)絡架構圖可以看出,COCC-ATS接口采用通用事件通知結(jié)構(GENA)協(xié)議。ATS系統(tǒng)作為某些外部系統(tǒng)的數(shù)據(jù)服務器,同時又作為其它一些外部系統(tǒng)的客戶端訂閱者,這時外部系統(tǒng)作為數(shù)據(jù)服務器。通用事件通知結(jié)構GENA結(jié)構允許發(fā)送與服務器事件相關的實時更新數(shù)據(jù),從而通知客戶端系統(tǒng)狀態(tài)變化。超文本傳輸協(xié)議(HTTP)和簡單對象獲取協(xié)議(SOAP)協(xié)議都被用來在服務器和客戶端間傳輸報文。該方法最終通過程序編程,已在上海緊急應急中心進行了實現(xiàn)和部署,并取得了很好效果。
【參考文獻】
[1]UPnP Forum, About UPnP[EB]. http://www.UPnP.org.
[2]W3C, Extensible Markup Language (XML) [EB]. http://www.w3.org/XML/, 2010/03/14.
[3]王政軍.基于Intel UPnP SDK的UPnP協(xié)議編程[EB].http://www.cqvip.com/qk/92317A/200507/18013100. html,2007/3/18.
[責任編輯:湯靜]
【摘 要】本文闡述了一種運營協(xié)調(diào)中心(OCC)發(fā)送數(shù)據(jù)到緊急應急中心(COCC)的協(xié)議轉(zhuǎn)換方法,包括以下步驟:向列車自動監(jiān)控系統(tǒng)(ATS)服務器訂閱設備屬性信息;將從列車自動監(jiān)控系統(tǒng)ATS服務器收到的通用事件通知結(jié)構GENA協(xié)議*數(shù)據(jù)轉(zhuǎn)換為COCC協(xié)議格式的數(shù)據(jù);最后將轉(zhuǎn)換后的數(shù)據(jù)發(fā)送到COCC。本文說明了ATS服務器端的數(shù)據(jù)無損的轉(zhuǎn)換到COCC側(cè),實現(xiàn)了COCC側(cè)統(tǒng)一顯示線路信息的目的,可以根據(jù)COCC側(cè)對具體數(shù)據(jù)的要求,方便地從OCC側(cè)訂閱數(shù)據(jù)的內(nèi)容。
【關鍵詞】協(xié)議轉(zhuǎn)換;ATS;GENA協(xié)議;COCC協(xié)議
【Abstract】This paper introduces a protocol conversion method of send data from the Operator Control Center to the emergency center. It includes the following steps: Subscribe device attribute information from Automatic Train Supervision server; Convert this information from GENA protocol to COCC protocol; Send emergency COCC data sent to the emergency COCC.
【Key words】Protocol conversion;ATS;GENA Protocol;COCC Protocol
0 引言
在地鐵的信號系統(tǒng)中,各信號提供商對外的接口都有自己的協(xié)議類型。這樣導致地鐵運營公司很難統(tǒng)一管理和維護這些不同廠商的信號設備。而隨著交通預警和統(tǒng)一調(diào)度的需求越來越急迫的環(huán)境下,需要各廠商將各自的信號系統(tǒng)的對外協(xié)議統(tǒng)一為一個通用的協(xié)議,以滿足地鐵運營公司的上述需求。
1 轉(zhuǎn)換內(nèi)容
本文所要解決的技術問題是提供一種控制中心發(fā)送數(shù)據(jù)到緊急應急中心的協(xié)議轉(zhuǎn)換方法,它可以實現(xiàn)了ATS服務器端的數(shù)據(jù)無損的轉(zhuǎn)換到COCC側(cè)。如圖1所示,緊急應急中心的數(shù)據(jù)根據(jù)不同類型可以劃分為四類數(shù)據(jù):線路運行監(jiān)控數(shù)據(jù),設備監(jiān)控數(shù)據(jù),電力監(jiān)控數(shù)據(jù)及防火/防淹監(jiān)控數(shù)據(jù)。
不同類型下的屬性具體內(nèi)容如表1所示。
表1 不同類型下的屬性內(nèi)容
圖1 緊急應急中心的數(shù)據(jù)內(nèi)容
2 實現(xiàn)方式
本文主要解決軌道交通中從線路的控制中心發(fā)送數(shù)據(jù)到緊急應急中心,為了實現(xiàn)數(shù)據(jù)轉(zhuǎn)換的目的,緊急應急中心獲得控制中心數(shù)據(jù)的網(wǎng)絡架構圖如圖2所示。
圖2 網(wǎng)絡架構圖
整個處理流程可以分三個階段:
第一階段是OCC FEP向列車自動監(jiān)控系統(tǒng)ATS服務器訂閱設備屬性信息。其中包含了列車自動監(jiān)控系統(tǒng)ATS端可以發(fā)送的14類對象,具體內(nèi)容如下表一所示。采用GENA協(xié)議,訂閱信息發(fā)送成功后,從列車自動監(jiān)控系統(tǒng)ATS將返回對應設備的狀態(tài)信息,并采用XML語言描述。
第二階段是OCC FEP將從列車自動監(jiān)控系統(tǒng)ATS服務器收到的數(shù)據(jù)轉(zhuǎn)換為COCC協(xié)議格式的數(shù)據(jù)。這部分也是本方法的關鍵,即如何實現(xiàn)不同協(xié)議間數(shù)據(jù)內(nèi)容的相互轉(zhuǎn)換。具體處理對象及內(nèi)容如圖3所示。本文的GENA協(xié)議中的列車信息及進路信息需要結(jié)合起來處理才能生成COCC協(xié)議中的列車信息。
第三階段是OCC FEP將COCC數(shù)據(jù)發(fā)送給COCC端。
以上三個階段中,最關鍵的部分就是通用事件通知結(jié)構GENA協(xié)議數(shù)據(jù)轉(zhuǎn)換為COCC協(xié)議數(shù)據(jù)。處理步驟如下:
1)程序從配置文件中加載固定數(shù)據(jù),形成設備列表,并對列表中的每個對象進行初始化;
2)啟動通用事件通知結(jié)構GENA訂閱服務,從運營協(xié)調(diào)中心OCC側(cè)訂閱設備的狀態(tài),接收到設備狀態(tài)后更新設備列表中的對象狀態(tài)值;
3)如果從運營協(xié)調(diào)中心OCC側(cè)接收到動態(tài)對象,則生成動態(tài)對象并添加到設備列表中,并保存相應的狀態(tài)值;
4)根據(jù)當前設備列表中的對象狀態(tài)值,按照COCC協(xié)議進行BITMAP的組包,發(fā)送給COCC側(cè);
5)接收運營協(xié)調(diào)中心OCC側(cè)的訂閱消息,并根據(jù)消息包更新對應的對象狀態(tài)值,并按照COCC協(xié)議進行STATUS_CHANGE的組包,發(fā)送給COCC側(cè);
6)如果接收到動態(tài)對象被刪除,則按照COCC協(xié)議中的REMOVE進行組包,發(fā)送給COCC側(cè)。
其中針對兩種協(xié)議的不同之處有如下特殊的處理:
1)該方法中列車對象及進路對象都是動態(tài)產(chǎn)生信息的,也就是說列車和進路都是可以增加,更改和刪除的。而其他對象都是在程序初始化時就已經(jīng)產(chǎn)生,后續(xù)的狀態(tài)都是進行更新。
2)站臺對象需要和區(qū)域控制對象進行綁定,也就是說通過站臺對象可以找到對應的區(qū)域控制對象,這樣當站臺的控制狀態(tài)發(fā)生變化時就可以更新相應的區(qū)域控制對象。
3)進路對象需要和列車對象進行綁定,當程序從OCC側(cè)接收到一條進路對象時,需要通過進路所處的位置綁定到相應的列車上,這樣當進路信息發(fā)生變化時(例如進路延伸、回退,總之任何導致進路發(fā)生變化的情況),就可以通過對應的列車對象發(fā)送更新信息到COCC側(cè)。
使用本方法實現(xiàn)了ATS服務器端的數(shù)據(jù)無損的轉(zhuǎn)換到COCC側(cè),實現(xiàn)了COCC側(cè)統(tǒng)一顯示線路信息的目的。可以根據(jù)COCC側(cè)需要的具體數(shù)據(jù)要求,方便地定制從OCC側(cè)接收數(shù)據(jù)的內(nèi)容。
3 結(jié)論
從以上的網(wǎng)絡架構圖可以看出,COCC-ATS接口采用通用事件通知結(jié)構(GENA)協(xié)議。ATS系統(tǒng)作為某些外部系統(tǒng)的數(shù)據(jù)服務器,同時又作為其它一些外部系統(tǒng)的客戶端訂閱者,這時外部系統(tǒng)作為數(shù)據(jù)服務器。通用事件通知結(jié)構GENA結(jié)構允許發(fā)送與服務器事件相關的實時更新數(shù)據(jù),從而通知客戶端系統(tǒng)狀態(tài)變化。超文本傳輸協(xié)議(HTTP)和簡單對象獲取協(xié)議(SOAP)協(xié)議都被用來在服務器和客戶端間傳輸報文。該方法最終通過程序編程,已在上海緊急應急中心進行了實現(xiàn)和部署,并取得了很好效果。
【參考文獻】
[1]UPnP Forum, About UPnP[EB]. http://www.UPnP.org.
[2]W3C, Extensible Markup Language (XML) [EB]. http://www.w3.org/XML/, 2010/03/14.
[3]王政軍.基于Intel UPnP SDK的UPnP協(xié)議編程[EB].http://www.cqvip.com/qk/92317A/200507/18013100. html,2007/3/18.
[責任編輯:湯靜]
【摘 要】本文闡述了一種運營協(xié)調(diào)中心(OCC)發(fā)送數(shù)據(jù)到緊急應急中心(COCC)的協(xié)議轉(zhuǎn)換方法,包括以下步驟:向列車自動監(jiān)控系統(tǒng)(ATS)服務器訂閱設備屬性信息;將從列車自動監(jiān)控系統(tǒng)ATS服務器收到的通用事件通知結(jié)構GENA協(xié)議*數(shù)據(jù)轉(zhuǎn)換為COCC協(xié)議格式的數(shù)據(jù);最后將轉(zhuǎn)換后的數(shù)據(jù)發(fā)送到COCC。本文說明了ATS服務器端的數(shù)據(jù)無損的轉(zhuǎn)換到COCC側(cè),實現(xiàn)了COCC側(cè)統(tǒng)一顯示線路信息的目的,可以根據(jù)COCC側(cè)對具體數(shù)據(jù)的要求,方便地從OCC側(cè)訂閱數(shù)據(jù)的內(nèi)容。
【關鍵詞】協(xié)議轉(zhuǎn)換;ATS;GENA協(xié)議;COCC協(xié)議
【Abstract】This paper introduces a protocol conversion method of send data from the Operator Control Center to the emergency center. It includes the following steps: Subscribe device attribute information from Automatic Train Supervision server; Convert this information from GENA protocol to COCC protocol; Send emergency COCC data sent to the emergency COCC.
【Key words】Protocol conversion;ATS;GENA Protocol;COCC Protocol
0 引言
在地鐵的信號系統(tǒng)中,各信號提供商對外的接口都有自己的協(xié)議類型。這樣導致地鐵運營公司很難統(tǒng)一管理和維護這些不同廠商的信號設備。而隨著交通預警和統(tǒng)一調(diào)度的需求越來越急迫的環(huán)境下,需要各廠商將各自的信號系統(tǒng)的對外協(xié)議統(tǒng)一為一個通用的協(xié)議,以滿足地鐵運營公司的上述需求。
1 轉(zhuǎn)換內(nèi)容
本文所要解決的技術問題是提供一種控制中心發(fā)送數(shù)據(jù)到緊急應急中心的協(xié)議轉(zhuǎn)換方法,它可以實現(xiàn)了ATS服務器端的數(shù)據(jù)無損的轉(zhuǎn)換到COCC側(cè)。如圖1所示,緊急應急中心的數(shù)據(jù)根據(jù)不同類型可以劃分為四類數(shù)據(jù):線路運行監(jiān)控數(shù)據(jù),設備監(jiān)控數(shù)據(jù),電力監(jiān)控數(shù)據(jù)及防火/防淹監(jiān)控數(shù)據(jù)。
不同類型下的屬性具體內(nèi)容如表1所示。
表1 不同類型下的屬性內(nèi)容
圖1 緊急應急中心的數(shù)據(jù)內(nèi)容
2 實現(xiàn)方式
本文主要解決軌道交通中從線路的控制中心發(fā)送數(shù)據(jù)到緊急應急中心,為了實現(xiàn)數(shù)據(jù)轉(zhuǎn)換的目的,緊急應急中心獲得控制中心數(shù)據(jù)的網(wǎng)絡架構圖如圖2所示。
圖2 網(wǎng)絡架構圖
整個處理流程可以分三個階段:
第一階段是OCC FEP向列車自動監(jiān)控系統(tǒng)ATS服務器訂閱設備屬性信息。其中包含了列車自動監(jiān)控系統(tǒng)ATS端可以發(fā)送的14類對象,具體內(nèi)容如下表一所示。采用GENA協(xié)議,訂閱信息發(fā)送成功后,從列車自動監(jiān)控系統(tǒng)ATS將返回對應設備的狀態(tài)信息,并采用XML語言描述。
第二階段是OCC FEP將從列車自動監(jiān)控系統(tǒng)ATS服務器收到的數(shù)據(jù)轉(zhuǎn)換為COCC協(xié)議格式的數(shù)據(jù)。這部分也是本方法的關鍵,即如何實現(xiàn)不同協(xié)議間數(shù)據(jù)內(nèi)容的相互轉(zhuǎn)換。具體處理對象及內(nèi)容如圖3所示。本文的GENA協(xié)議中的列車信息及進路信息需要結(jié)合起來處理才能生成COCC協(xié)議中的列車信息。
第三階段是OCC FEP將COCC數(shù)據(jù)發(fā)送給COCC端。
以上三個階段中,最關鍵的部分就是通用事件通知結(jié)構GENA協(xié)議數(shù)據(jù)轉(zhuǎn)換為COCC協(xié)議數(shù)據(jù)。處理步驟如下:
1)程序從配置文件中加載固定數(shù)據(jù),形成設備列表,并對列表中的每個對象進行初始化;
2)啟動通用事件通知結(jié)構GENA訂閱服務,從運營協(xié)調(diào)中心OCC側(cè)訂閱設備的狀態(tài),接收到設備狀態(tài)后更新設備列表中的對象狀態(tài)值;
3)如果從運營協(xié)調(diào)中心OCC側(cè)接收到動態(tài)對象,則生成動態(tài)對象并添加到設備列表中,并保存相應的狀態(tài)值;
4)根據(jù)當前設備列表中的對象狀態(tài)值,按照COCC協(xié)議進行BITMAP的組包,發(fā)送給COCC側(cè);
5)接收運營協(xié)調(diào)中心OCC側(cè)的訂閱消息,并根據(jù)消息包更新對應的對象狀態(tài)值,并按照COCC協(xié)議進行STATUS_CHANGE的組包,發(fā)送給COCC側(cè);
6)如果接收到動態(tài)對象被刪除,則按照COCC協(xié)議中的REMOVE進行組包,發(fā)送給COCC側(cè)。
其中針對兩種協(xié)議的不同之處有如下特殊的處理:
1)該方法中列車對象及進路對象都是動態(tài)產(chǎn)生信息的,也就是說列車和進路都是可以增加,更改和刪除的。而其他對象都是在程序初始化時就已經(jīng)產(chǎn)生,后續(xù)的狀態(tài)都是進行更新。
2)站臺對象需要和區(qū)域控制對象進行綁定,也就是說通過站臺對象可以找到對應的區(qū)域控制對象,這樣當站臺的控制狀態(tài)發(fā)生變化時就可以更新相應的區(qū)域控制對象。
3)進路對象需要和列車對象進行綁定,當程序從OCC側(cè)接收到一條進路對象時,需要通過進路所處的位置綁定到相應的列車上,這樣當進路信息發(fā)生變化時(例如進路延伸、回退,總之任何導致進路發(fā)生變化的情況),就可以通過對應的列車對象發(fā)送更新信息到COCC側(cè)。
使用本方法實現(xiàn)了ATS服務器端的數(shù)據(jù)無損的轉(zhuǎn)換到COCC側(cè),實現(xiàn)了COCC側(cè)統(tǒng)一顯示線路信息的目的。可以根據(jù)COCC側(cè)需要的具體數(shù)據(jù)要求,方便地定制從OCC側(cè)接收數(shù)據(jù)的內(nèi)容。
3 結(jié)論
從以上的網(wǎng)絡架構圖可以看出,COCC-ATS接口采用通用事件通知結(jié)構(GENA)協(xié)議。ATS系統(tǒng)作為某些外部系統(tǒng)的數(shù)據(jù)服務器,同時又作為其它一些外部系統(tǒng)的客戶端訂閱者,這時外部系統(tǒng)作為數(shù)據(jù)服務器。通用事件通知結(jié)構GENA結(jié)構允許發(fā)送與服務器事件相關的實時更新數(shù)據(jù),從而通知客戶端系統(tǒng)狀態(tài)變化。超文本傳輸協(xié)議(HTTP)和簡單對象獲取協(xié)議(SOAP)協(xié)議都被用來在服務器和客戶端間傳輸報文。該方法最終通過程序編程,已在上海緊急應急中心進行了實現(xiàn)和部署,并取得了很好效果。
【參考文獻】
[1]UPnP Forum, About UPnP[EB]. http://www.UPnP.org.
[2]W3C, Extensible Markup Language (XML) [EB]. http://www.w3.org/XML/, 2010/03/14.
[3]王政軍.基于Intel UPnP SDK的UPnP協(xié)議編程[EB].http://www.cqvip.com/qk/92317A/200507/18013100. html,2007/3/18.
[責任編輯:湯靜]