摘 è¦ï¼šåˆ†æžäº†åœ¨é›»åŠ›å¸‚å ´ç’°å¢ƒä¸‹ï¼Œç•¶å‰SCADA系統信æ¯é›†æˆçš„局陿€§ï¼Œå°‡åŸºäºŽXML Web serviceçš„é¢å‘æœå‹™æž¶æ§‹ï¼ˆSOA)技術引入其ä¸ï¼Œè¨è¨ˆåŸºäºŽSOAçš„SCADA系統調度端平臺架構,實ç¾åˆ†å¸ƒå¼æœå‹™åŠŸèƒ½äº¤äº’ã€‚
é—œéµè©žï¼šSOA,SCADA系統,XML, Web service
Abstract: With the rapid development of power market , there is limitation when current SCADA system share information with other information systems . In order to solve this problems above , this paper pulls in SOA architecture based on XML Web service , and design the new architecture of SCADA system management platform , in order to comply the distributed function.
Key word: SOA, SCADA system, XML, Web service
0 引言
  調度自動化系統是é‹ç”¨è¨ˆç®—機ã€é€šä¿¡å’ŒæŽ§åˆ¶æŠ€è¡“,å°èª¿åº¦ä¸å¿ƒç®¡è½„çš„è¨å‚™ï¼Œé€²è¡Œæ•¸æ“šé‡‡é›†ã€ç›£è¦–和控制,以實ç¾è‡ªå‹•測é‡ã€è‡ªå‹•信號ã€è‡ªå‹•控制和自動調節ç‰åŠŸèƒ½ã€‚ä¸»è¦ç”±æ•¸æ“šé‡‡é›†åŠç›£æŽ§ã€ç‹€æ…‹ä¼°è¨ˆã€å®‰å…¨åˆ†æžã€æ½®æµå„ªåŒ–å’Œç¶“æ¿Ÿèª¿åº¦ç‰æ¨¡å¡Šçµ„æˆã€‚隨著電網技術和計算機技術的發展,在調度自動化系統ä¸éœ€è¦é›†æˆä¾†è‡ªä¸åŒå» 商的硬件è¨å‚™ã€æ“ä½œç³»çµ±ã€æ•¸æ“šåº«å¹³è‡ºå’Œç¶²çµ¡å”è°ç‰ï¼Œç”±æ¤å¸¶ä¾†çš„異構性給應用軟件的互æ“作性ã€å…¼å®¹æ€§ä»¥åŠå‡ç´šèƒ½åŠ›é€ æˆäº†åš´é‡å•題。形æˆå¤§é‡åˆ†æ•£ç•°æ§‹çš„“信æ¯å¤å³¶â€ï¼Œé‡å°æ¤ç¾è±¡ï¼Œæœ¬æ–‡æå‡ºä¸€ç¨®åŸºäºŽSOAçš„åˆ†å¸ƒå¼æž¶æ§‹åœ¨èª¿åº¦è‡ªå‹•化系統ä¸çš„æ‡‰ç”¨è¨æƒ³ã€‚
1 ç•¶å‰SCADA系統介紹åŠå…¶å±€é™æ€§
  從集ä¸å¼ï¼Œç¶“開放å¼å‘分布å¼ç™¼å±•çš„éŽç¨‹ã€‚到目å‰ç‚ºæ¢ï¼Œé›»ç¶²èƒ½é‡ç®¡ç†ç³»çµ±çš„調度系統的發展已經æ·ç¶“ä¸‰ä»£ï¼Œé€™ä¸‰ä»£ç³»çµ±çš„çµæ§‹å¯ä»¥æ¸ç´ç‚ºä¸»æ©Ÿçµ‚ç«¯çµæ§‹ã€å®¢æˆ¶ä¸€æœå‹™å™¨çµæ§‹ï¼ˆå³C/Sçµæ§‹ï¼‰å’ŒåŠŸèƒ½åˆ†å¸ƒå¼çµæ§‹3種,如圖1-a,圖1-b和圖1-c所示 。
[align=center]

[/align]
  目å‰å»£æ³›ä½¿ç”¨çš„æ˜¯C/Sçµæ§‹ã€‚傳統的C/Sçµæ§‹æ˜¯å°ä»¥å‰å–®æ©Ÿç³»çµ±å¾—æ“´å±•ï¼Œè§£æ±ºäº†åŸ·è¡Œæ•ˆçŽ‡å’Œå¤šç”¨æˆ¶åŒæ™‚使用的å•題,這種模å¼ç›¡ç®¡æœ‰ä»¥ä¸‹å„ªé»žï¼šå¯é€šéŽç¶²çµ¡ç’°å¢ƒç™¼å¸ƒä¿¡æ¯ã€åˆ†å¸ƒæ•¸æ“š;特性良好的人機界é¢;使用分布å¼ç®¡ç†ï¼Œå‡è¡¡äº†è² 載;性價比高ç‰ï¼Œä½†ç¶“éŽä¸€æ®µæ™‚間的使用和推廣åŽï¼Œä¸€äº›ç¼ºé»žä¹Ÿé€æ¼¸é¡¯éœ²ï¼Œå¦‚ä¸åŒæ‡‰ç”¨ä½¿ç”¨ä¸åŒå®¢æˆ¶ç«¯è»Ÿä»¶ï¼Œç¶è·å·¥ä½œé‡å¤§ï¼Œæ¯ä¸€æ¬¡çš„å‡ç´šéƒ½æ„味著è¦å…¨éƒ¨æ›´æ–°æ‰€æœ‰å®¢æˆ¶ç«¯ï¼Œå¤§éƒ¨åˆ†æ‡‰ç”¨ä¾è³´ç‰¹å®šç³»çµ±é–‹ç™¼å¹³è‡ºï¼Œå¯ç§»æ¤æ€§ï¼Œå¯æ“´å±•æ€§å·®å°Žè‡´éˆæ´»åº¦ä¸å¤ ï¼Œç„¡æ³•æ»¿è¶³æ‡‰ç”¨è»Ÿä»¶è¦æ¨¡çš„æ“´å¤§å’Œå„種軟件集æˆçš„è¿«åˆ‡è¦æ±‚,也ä¸èƒ½é©æ‡‰å¾©é›œå¤šè®Šçš„軟ã€ç¡¬ä»¶ç’°å¢ƒã€‚為了解決這些å•題,å°åŽŸæœ‰ç³»çµ±çµæ§‹é€²è¡Œæ”¹é€²ï¼Œå‡ºç¾äº†åˆ†å¸ƒå¼å¤šå±¤æ‡‰ç”¨ç¨‹åºæž¶æ§‹ï¼Œé€™ç¨®æž¶æ§‹æœ€å¤§å„ªé»žå°±æ˜¯å°‡ç”¨æˆ¶è¡¨ç¤ºå±¤ã€æ¥å‹™é‚è¼¯å±¤ã€æ•¸æ“šå±¤å‰é›¢ï¼Œæ¯å±¤ç¨ç«‹ï¼Œè¡¨ç¤ºå±¤è² 責用戶界é¢å’Œå¤–部接å£é‚輯,æ¥å‹™å±¤è² è²¬æ ¸å¿ƒçš„å•†æ¥è¦å‰‡å’Œæ¥å‹™é‚è¼¯ï¼Œæ•¸æ“šå±¤è² è²¬è®€å–和更新å˜å„²å™¨ä¸çš„æ•¸æ“šï¼Œå³é€šå¸¸æ‰€è¬‚的三層架構。
  調度自動化系統ä¸åƒ…è¦èƒ½å¤ 完æˆç›£æŽ§è¦æ±‚,é‚„è¦å’Œå…¶ä»–應用å系統如安全分æžå系統,優化和經濟調度å系統進行互連和互æ“作。å°äºŽé€™ä¸€é»ž,傳統的C/S模型是無能為力的。而分布å¼å°è±¡æ¨¡åž‹å¯ä»¥æä¾›åˆ†å¸ƒå¼ç•°æ§‹ç’°å¢ƒä¸‹æ‡‰ç”¨ç³»çµ±äº’連和互æ“作的標準,ä½¿å¾—ç³»çµ±åœ¨å…·æœ‰å¾ˆå¥½çš„é–‹æ”¾æ€§çš„åŒæ™‚,也æä¾›äº†å¾ˆå¥½çš„坿“´å±•性,便于新的應用模塊的擴展。
2 SOA與Web service技術概述
  SOA(Service-Oriented Architecture),如圖2所示。它是一種體系架構,它將應用程åºçš„功能單元稱為æœå‹™ï¼Œé€™äº›æœå‹™ä¹‹é–“通éŽå®šç¾©è‰¯å¥½çš„æŽ¥å£å’Œå¥‘ç´„è¯ç³»èµ·ä¾†ã€‚接å£é‡‡ç”¨ä¸ç«‹çš„æ–¹å¼é€²è¡Œå®šç¾©ï¼Œç¨ç«‹äºŽå¯¦ç¾æœå‹™çš„ç¡¬ä»¶å¹³è‡ºã€æ“作系統和編程語言。æœå‹™æ˜ 射到æ¥å‹™åŠŸèƒ½ï¼Œå¯¦ç¾æœå‹™çš„çµ„ä»¶é€šå¸¸æ˜ å°„åˆ°æ¥å‹™å¯¦é«”å’Œæ“作它們的æ¥å‹™è¦å‰‡ã€‚å¯¦ç¾æœå‹™çš„è»Ÿä»¶å¯¦é«”é€šå¸¸æ˜¯ç²—ç²’åº¦çš„ï¼Œæ¾æ•£è—•åˆçš„,基于消æ¯é€šä¿¡æ¨¡åž‹çš„。
  Web Service為分布å¼ç³»çµ±æä¾›äº†æ”¯æŒï¼Œå…¶å¹³è‡ºå’Œèªžè¨€ä¸ç«‹æ€§ä½¿å¾—跨平臺的互æ“ä½œï¼Œç³»çµ±åœ°æ•´åˆæ›´åŠ å®¹æ˜“ï¼Œå…¶æŠ€è¡“çš„æˆç†ŸåŒ–使得SOAæž¶æ§‹æ€æƒ³å¾—到很好的應用。從目å‰ç ”ç©¶æ‡‰ç”¨çš„å¹¾å¤§è»Ÿä»¶å» å•†å…±åŒå”商的標準來看,Web Service技術無疑是最方便的。Web Serviceçš„é—œéµæŠ€è¡“å¦‚ä¸‹ã€‚
[align=center]

圖2 SOA架構[/align]
  2.1 SOAP
  簡單å°è±¡è¨ªå•å”è°SOAP(Simple Object Access Protocol)執行和調用æœå‹™é–“的通信。當Web service建好以åŽï¼Œéœ€è¦èª¿ç”¨å®ƒæ™‚,SOAPæä¾›äº†æ¨™æº–çš„RPC方法調用Web service。SOAPè¦èŒƒå®šç¾©äº†SOAP消æ¯çš„æ ¼å¼ï¼Œä»¥åŠæ€Žæ¨£é€šéŽHTTPå”è°ä¾†ä½¿ç”¨SOAP,它是基于XML的,繼承了XMLçš„é–‹æ”¾æ€§å’Œå¯æ“´å±•性,å¯è§£æ±ºå¤šå€‹æ‡‰ç”¨ä¹‹é–“的一致性å•題。
  2.2XML
  XML是web serivcesçš„æ ¸å¿ƒåŸºç¤ŽæŠ€è¡“,是SOAP實ç¾çš„é—œéµæ‰€åœ¨ï¼Œæ˜¯Webæœå‹™å¹³è‡ºä¸è¡¨ç¤ºæ•¸æ“šçš„åŸºæœ¬æ ¼å¼ï¼Œæ˜¯Webæœå‹™é€šä¿¡å”è°çš„æ•¸æ“šç·¨ç¢¼æ–¹å¼ã€‚主è¦å„ªé»žèˆ‡å¹³è‡ºç„¡é—œã€‚XML解決了數據表示的å•題,但它沒有定義一套標準的數據類型,更沒有說怎么去擴展這套數據類型。W3C制定的XML Schema(XSD)就是專門解決這個å•題的一套標準。它定義了一套標準的數據類型,并給出了一種語言來擴展這套數據類型。
  2.3 WSDL
  WSDL(Web Service Description Language)Webæœå‹™å™¨æè¿°èªžè¨€æ˜¯ç”¨XML文檔來æè¿°Webæœå‹™çš„æ¨™æº–,是Webæœå‹™çš„æŽ¥å£å®šç¾©èªžè¨€ï¼Œç”±Aribaã€Intelã€IBMã€MSç‰å…±åŒæå‡ºï¼Œé€šéŽWSDLï¼Œå¯æè¿°Webæœå‹™çš„三個基本屬性:
  ·æœå‹™åšäº›ä»€ä¹ˆâ€”—æœå‹™æ‰€æä¾›çš„æ“ä½œï¼ˆæ–¹æ³•ï¼‰
ã€€ã€€Â·å¦‚ä½•è¨ªå•æœå‹™â€”—和æœå‹™äº¤äº’çš„æ•¸æ“šæ ¼å¼ä»¥åŠå¿…è¦å”è°
  ·æœå‹™ä½äºŽä½•處——å”è°ç›¸é—œçš„地å€ï¼Œå¦‚URL
  WSDL使得æè¿°æœå‹™æˆç‚ºå¯èƒ½ï¼ŒåŒæ™‚ä¹Ÿè®“å®¢æˆ¶èƒ½å¤ ä»¥æ¨™æº–çš„æ–¹å¼å°é€™äº›æœå‹™é€²è¡Œèª¿ç”¨ï¼Œè€Œä¸éœ€è¦çŸ¥é“更多的底層å”è°ï¼Œå¦‚SOAPå’ŒHTTPç‰ã€‚
  2.4 UDDI
  UDDI(Universal Description , Definition, and Integration,統一æè¿°ã€å®šç¾©å’Œé›†æˆï¼‰ç”¨ä¾†ç™¼å¸ƒã€æŸ¥æ‰¾æœå‹™ã€‚用戶å¯ä»¥åœ¨ä¸Šå°‡å…¶æœå‹™é€²è¡Œæ³¨å†Šï¼Œä»¥ä¾¿å…¶å®ƒç”¨æˆ¶è¨ªå•ã€‚ç›®éŒ„å…¥å£æ˜¯ä¸€å€‹æè¿°äº†æœå‹™åŠå…¶å¦‚何æä¾›æœå‹™çš„禮文件。目錄也包å«äº†ä¸€äº›æœå°‹ç”¨æˆ¶éœ€è¦çš„æœå‹™æ–¹æ³•ï¼Œå¹¶æä¾›ä¿¡æ¯ã€è¯ç³»æ–¹å¼å’ŒéˆæŽ¥çš„æŠ€è¡“數據,以滿足需è¦çš„æœå‹™ã€‚åŒæ™‚ï¼Œé€šéŽæä¾›çš„æ¨™æº–æŽ¥å£ï¼Œç”¨æˆ¶å¯ä»¥ç™¼å¸ƒè‡ªå·±çš„æœå‹™ä¾›å…¶ä»–å¯¦é«”èª¿ç”¨ï¼Œä¹Ÿå¯ä»¥æŸ¥è©¢ç‰¹å®šæœå‹™çš„æè¿°ä¿¡æ¯ï¼Œå¹¶å‹•態地ç¶å®šåˆ°è©²æœå‹™ä¸Šã€‚
3 基于SOA的調度系統總體架構è¨è¨ˆ
  第一層是電力信æ¯ç³»çµ±å±¤ï¼Œæ ¹æ“šæœå‹™å¥‘約從æ¯å€‹ç¾æœ‰çš„ä¿¡æ¯ç³»çµ±ï¼ˆEIS)ä¸åˆ†é›¢å‡ºå¯¦ç¾ä¸€å®šæ¥å‹™åŠŸèƒ½çš„åŸºæœ¬æœå‹™ã€‚在信æ¯ç³»çµ±å±¤,將伿¥ç¾æœ‰çš„EISå°è£æˆä¸€å€‹æˆ–多個Web基本æœå‹™,å°å¤–æä¾›çµ±ä¸€çš„æŽ¥å£ï¼ˆå¦‚一個或多個WSDL)。將它們原來以å„種API形弿š´éœ²çš„æŽ¥å£ç”¨WSDL釿–°æè¿°,ç„¶åŽä½¿ç”¨HTTP +SOAP的消æ¯å‚³è¼¸æ–¹å¼ä½œç‚ºèˆ‡å¤–界交互的橋æ¢ã€‚在SCADA調度系統ä¸å¯ä»¥åŠƒåˆ†çš„ç³»çµ±åŠŸèƒ½æœ‰ï¼šå ±æ–‡è™•ç†ï¼Œæ•¸æ“šé‡‡é›†ï¼Œæ•¸æ“šç¶è·ï¼Œå站和監視ç‰ã€‚ç¬¬äºŒå±¤æ˜¯å‚³è¼¸å±¤ï¼Œé‡‡ç”¨ä¼æ¥æœå‹™ç¸½ç·šï¼ˆESB)作為傳輸連接æœå‹™çš„“橋æ¢â€ã€‚ESB所æä¾›çš„基于標準的連接æœå‹™,å¯å°‡æ‡‰ç”¨ä¸å¯¦ç¾çš„功能或者數據資æºè½‰åŒ–為æœå‹™è«‹æ±‚者能以標準的方å¼ä¾†è¨ªå•çš„æœå‹™ã€‚æœå‹™æä¾›è€…首先把æä¾›çš„Webæœå‹™ç™¼å¸ƒåˆ°ä¼æ¥ç§æœ‰çš„UDDI,åŒæ™‚在ESB上é…置一些基礎的元數據,如Webæœå‹™å®¹å™¨é¡žåž‹ã€èª¿ç”¨æ–¹å¼ï¼ˆå‹•æ…‹/éœæ…‹ï¼‰ç‰ï¼Œç•¶æœ‰ä¸€å€‹è«‹æ±‚Webæœå‹™æ™‚,ESB把該Webæœå‹™ä½œç‚ºä¸€å€‹åŠŸèƒ½æä¾›çµ¦è¦ä½¿ç”¨çš„系統,æ¯å€‹åŠŸèƒ½é€šéŽå”¯ä¸€çš„æ¨™è˜è™Ÿæ¨™è˜,則系統åªéœ€è¦å‘ESB發é€è©²Webæœå‹™çš„æ•¸æ“šæŽ¥å£æ¨™æº–çš„SOAP消æ¯,ESB就會自動的執行該Webæœå‹™,并把處ç†çµæžœç™¼é€çµ¦æœå‹™è«‹æ±‚系統。第三層是æœå‹™å±¤ï¼ŒåŽŸä¼æ¥æ‡‰ç”¨ç³»çµ±æä¾›çš„通常是細粒度的API接å£,ç¶“éŽWebå°è£æ˜¯å°‡API用基于XMLçš„WSDL釿–°æè¿°,æ¤åŸºæœ¬æœå‹™ä¾ç„¶æ˜¯ç´°ç²’度的,而SOAæ€æƒ³ä¸è¦æ±‚æœå‹™å–®å…ƒæ˜¯ç²—粒度的,在æœå‹™å±¤é‡æ–°çµ„åˆåŸºæœ¬æœå‹™,使æœå‹™å…·æœ‰ä¸€å®šç²—粒度。SCADA系統基礎æœå‹™ç¶²ç®¡æœå‹™ã€å®‰å…¨æœå‹™ã€æ•¸æ“šæœå‹™ã€‚第4層是æ¥å‹™å±¤ã€‚在這一層ä¸åˆ©ç”¨å·²ç¶“å°è£å¥½çš„å„種æœå‹™ä¾†æ§‹å»ºé›»åŠ›ç³»çµ±ä¸çš„具體的æ¥å‹™æµç¨‹ã€‚第五層是表示層,這是暴露給客戶或åˆä½œä¼™ä¼´ä½¿ç”¨çš„æœå‹™æŽ¥å£,以Webæœå‹™çš„å½¢å¼æä¾›ã€‚
[align=center]

圖3 SOAæž¶æ§‹çš„SCADAèª¿åº¦ç³»çµ±çµæ§‹åœ–[/align]
4 çµè«–
  本文拋磚引玉地介紹了é¢å‘æœå‹™çš„é«”ç³»çµæ§‹ï¼ˆSOA)在SCADA的應用, 采用基于XMLçš„Web Service技術為異構系統之間實ç¾ç„¡ç¸«çš„連接和集æˆï¼Œåœ¨ç³»çµ±å…§éƒ¨ä½¿ç”¨å‚³çµ±çš„緊耦åˆç³»çµ±æž¶æ§‹è€Œåœ¨ç³»çµ±ä¹‹é–“采用æ¾è€¦åˆçš„系統架構,這樣既å¯ä»¥ä¿æŒåŒæ§‹ç³»çµ±å…§éƒ¨çš„體系ç¨ç«‹å®Œæ•´,åˆèƒ½å¯¦ç¾ç•°æ§‹ç³»çµ±äº’相通信集æˆè€Œæ§‹æˆæ•´é«”,實ç¾é›»åŠ›ä¿¡æ¯çš„共享和整åˆï¼Œä¿ƒé€²é›»åŠ›ç³»çµ±ä¿¡æ¯é›†æˆçš„æ‡‰ç”¨èˆ‡ç®¡ç†æ°´å¹³çš„æå‡
åƒè€ƒæ–‡ç»
  1 楊樸,游大海ç‰.SCADA系統的XML Webæœå‹™å¯¦ç¾.電力系統åŠå…¶è‡ªå‹•化å¸å ±.2003å¹´8月第15å·ç¬¬4期
  2 麻麗娜,苑津莎ç‰.基于Web servicesçš„é›»åŠ›ä¼æ¥æ‡‰ç”¨é›†æˆæŠ€è¡“ç ”ç©¶èˆ‡å¯¦ç¾.電力系統通信.2005,(11).
  3 æ¡‚å‹æ¦ï¼Œé»ƒç…™æ³¢.用SOA與Web servicesé€²è¡Œä¼æ¥é›†æˆçš„æ¡†æž¶è¨è¨ˆ.ä¿¡æ¯æŠ€è¡“.2007,(10)
  4 許衛兵,å«ä½ï¼Œé™³ç¹¼è».é¢å‘æœå‹™æž¶æ§‹ï¼ˆSOA)的電力系統信æ¯é›†æˆç ”ç©¶.ä¸åœ‹å„€å™¨å„€è¡¨.2007,(6)
  5 董文煒.基于SOA的分布å¼Webæ‡‰ç”¨ç³»çµ±çš„ç ”ç©¶.西北工æ¥å¤§å¸ç¢©å£«è«–æ–‡.2007
  6 å³å®¶èŠï¼ŒåЉ剛ç‰.基于Webæœå‹™çš„é¢å‘æœå‹™ï¼ˆSOAï¼‰æž¶æ§‹ç ”ç©¶.ç¾ä»£é›»å技術.2005,(14)
  7 宋æœé’.利用分布å¼çµ„ä»¶å°è±¡æ¨¡åž‹æ§‹å»ºSCADA系統網絡模型.電力系統自動化.2000,(9)
  8 凌曉æ±.SOA綜述.計算機應用與軟件.2007,(10)