TWI793420B - Scada網路hmi系統 - Google Patents
Scada網路hmi系統 Download PDFInfo
- Publication number
- TWI793420B TWI793420B TW109115713A TW109115713A TWI793420B TW I793420 B TWI793420 B TW I793420B TW 109115713 A TW109115713 A TW 109115713A TW 109115713 A TW109115713 A TW 109115713A TW I793420 B TWI793420 B TW I793420B
- Authority
- TW
- Taiwan
- Prior art keywords
- server
- aforementioned
- hmi
- network
- client
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/4155—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by programme execution, i.e. part programme or machine function execution, e.g. selection of a programme
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/32—Operator till task planning
- G05B2219/32404—Scada supervisory control and data acquisition
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Manufacturing & Machinery (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本發明的SCADA網路HMI系統係按照考慮到負荷分散的分派順序將伺服端連接優先順序名單從網路HMI伺服端動態地配送給HMI用戶端。因此,在HMI用戶端係不需要預先進行與連接優先順序相關的設定。此外,伺服端連接優先順序名單係按照考慮到負荷分散的分派順序分派給各HMI用戶端,故連接至各網路HMI伺服端的用戶端的數目形成為均等,從而謀求負荷分散。SCADA網路HMI系統係既謀求伺服端的冗餘化與負荷分散,又能夠降低用戶端設定所需的運用成本。
Description
本發明係有關具備冗餘化構成的SCADA網路(web)HMI系統(system)。
SCADA(Supervisory Control And Data Acquisition;監控與資料收集系統)係作為監控社會基礎設施系統的架構而為人所知。社會基礎設施系統乃係鋼鐵壓延系統、電力供電變電系統、自來水及污水處理系統、大樓管理系統、道路系統等系統。
SCADA乃產業控制系統的一種,係進行藉由電腦(computer)而進行的系統監視與程序(process)控制。SCADA係必須具有與系統的處理性能配合的立即反應性(即時(real time)性)。
一般而言,SCADA由如下述的子(sub)系統構成。
(1)HMI(Human Machine Interface;人機介面)
HMI乃係將對象程序(監視對象裝置)的資料(data)提示給操作人員(operator),俾使操作人員能夠對程序進行監視、控制的機構。例如在下述之專利文獻1揭示了一種具備在SCADA用戶端(client)上動作的HMI畫面的SCADA HMI。
(2)監控系統
監控系統係收集程序上的信號資料,對程序送出控制指令(command)。係由PLC(Programmable Logic Controller;可程式邏輯控制器)等構成。
(3)遠端輸入輸出裝置(Remote Input Output:RIO)
遠端輸入輸出裝置係與程序內設置的感測器(sensor)連接,將感測器的信號轉換成數位(digital)資料,將該數位資料送出給監控系統。
(4)通信基礎建設
通信基礎建設係將遠端輸入輸出裝置與監控系統連接。
(先前技術文獻)
(專利文獻)
專利文獻1:日本國特開2017-27211號公報
上述之專利文獻1的HMI子系統的用戶端程式係以依存於機器(machine)環境的程式(program)所建構。為了實現SCADA HMI子系統的低成本(cost)化,本申請案發明人係進行了不依存於機器環境的基於瀏覽器(browser)的HMI子系統的開發。
當將SCADA HMI子系統以在網路瀏覽器上動作的網路應用程式(web application)的形式建構時,有下述優點。
(1)網路瀏覽器係搭載於個人電腦(personal computer)、平板(tablet)
PC等多種終端機器上,故能夠利用各式的終端機器作為SCADA HMI子系統。
(2)網路瀏覽器係擁有強大的提供(rendering)功能,易於打造出以動畫(animation)為首的高度GUI(Graphical User Interface;圖形化使用者介面)互動功能。
然而,在SCADA HMI子系統中,為了實現高可靠度,必須具有伺服端(server)的冗餘化(redundancy)構成。所謂的冗餘化構成,係指將伺服端多重化,當連接優先順位高的伺服端故障時,執行由連接優先順位低的伺服端接手處理的容錯移轉(failover)而繼續運用的架構。
冗餘化構成係有主動/備援(active/standby)構成及主動/主動(active/active)構成。主動/備援構成係具備工作系統伺服端(主(primary)伺服端)與待機系統伺服端(副(secondary)伺服端),當主伺服端故障時,副伺服端工作而接手處理。
主動/主動構成係讓全部的系統一直工作著,令處理分散而減輕各伺服端的負荷。係按每一個用戶端個別設定主伺服端與副伺服端。
本發明係有關主動/主動構成。該構成的問題點在於,按每一個用戶端設定主伺服端與副伺服端,就系統全體而言,必須以使各伺服端的負荷成為均等的方式進行管理。
例如,以2台伺服端(S1、S2)與6台用戶端(C1至C6)的系統構成為例進行說明。在C1至C3係進行規定S1為主伺服端、規定S2為副伺服端的設定。在C4至C6係進行規定S2為主伺服端、規定S1為副伺
服端的設定。當2台伺服端與6台用戶端全體機器皆工作時,2台伺服端的負荷係分別各負擔3台用戶端,負荷是均等的。
然而,或有部分用戶端(C5、C6)沒被運用的時候。此時,S1的負荷為3台用戶端的量、S2的負荷變為1台用戶端的量,伺服端的負荷平衡(balance)失衡。儘管如此,若是配合用戶端的運用狀況,每次都變更用戶端的設定,會使得運用成本增加。
亦可想到配合伺服端的負荷平衡,動態地切換用戶端的連接目標伺服端的方式。然而,容錯移轉是一種高負荷的動作,有操作人員的操作被暫時中斷的問題。因此,連接目標伺服端的切換應當限定只在伺服端故障時進行。
本發明乃係為了解決上述課題而研創。本發明的目的為提供既謀求伺服端的冗餘化與負荷分散,又能夠降低用戶端設定所需的運用成本的SCADA網路HMI系統。
為了達成上述目的,本發明的SCADA網路HMI系統係構成如下述。
本發明的SCADA網路HMI系統係具備複數台HMI用戶端、及複數台網路HMI伺服端。各HMI用戶端係執行顯示人機介面(HMI)畫面的網路瀏覽器,該HMI畫面配置有顯示設備之狀態的物件(parts)。各網路HMI伺服端係連接至可程式邏輯控制器,而相應於從前述可程式邏輯控制器接收到的PLC信號將更新前述物件的狀態的顯示信號發送給前述網路瀏覽器。前述複數台網路HMI伺服端其中至少兩台係隸屬於同一個伺
服端群(group)。
各前述網路HMI伺服端係具備至少一個處理器(processor)、及記憶程式的記憶體(memory)。前述程式係藉由前述至少一個處理器而執行,藉此,令前述至少一個處理器執行含有下述處理的處理。
表(table)共用處理,係將伺服端連接優先順序名單(list)表共用在隸屬於前述伺服端群的全部的前述網路HMI伺服端間。
連接優先順序名單發送處理,係當從前述HMI用戶端接收到名單請求信號時,按照規定在前述伺服端連接優先順序名單表的分派順序發送伺服端連接優先順序名單,該伺服端連接優先順序名單係規定隸屬於前述伺服端群的全部的前述網路HMI伺服端的連接優先順序。
前述伺服端連接優先順序名單表係針對複數個前述伺服端連接優先順序名單的各者,以使與隸屬於前述伺服端群的各前述網路HMI伺服端連接的前述HMI用戶端的數目接近均等的方式規定前述分派順序。
各前述HMI用戶端係具備至少一個處理器、及記憶程式的記憶體。前述程式係藉由前述至少一個處理器而執行,藉此,令前述至少一個處理器執行含有下述處理的處理。
死活監視處理,係監視隸屬於前述伺服端群的全部的前述網路HMI伺服端的工作狀態。
連接優先順序名單請求處理,係將供請求前述伺服端連接優先順序名單之用的前述名單請求信號,發送給隸屬於前述伺服端群的任一個前述網路HMI伺服端。
伺服端連接處理,係當接收到前述伺服端連接優先順序名單
時,與隸屬於前述伺服端群的至少一個工作中的前述網路HMI伺服端當中,規定在前述伺服端連接優先順序名單的連接優先順位為最高的前述網路HMI伺服端建立連線(connection)。
容錯移轉處理,係當目前連接中的前述網路HMI伺服端變成非工作狀態時,將連線切換至隸屬於前述伺服端群的至少一個工作中的前述網路HMI伺服端當中,規定在前述伺服端連接優先順序名單的連接優先順位為最高的前述網路HMI伺服端。
較佳為,各前述HMI用戶端係復執行下述處理。
伺服端群資訊請求處理,係將供請求規定有前述伺服端群的伺服端群資訊之用的伺服端群資訊請求信號發送給對象網路HMI伺服端,該對象網路HMI伺服端為藉由含有對象伺服端名稱的URL而指定的前述網路HMI伺服端。
用戶端認證資訊發送處理,係發送含有前述HMI用戶端的帳戶(account)名與密碼(password)的用戶端認證資訊。
安裝器(installer)執行確認處理,係從前述對象網路HMI伺服端下載(download)類精簡型用戶端安裝器至前述網路瀏覽器,並顯示供執行前述類精簡型用戶端安裝器之用的通知欄。
權限提高處理,係當對前述通知欄進行了允許前述類精簡型用戶端安裝器的執行的操作時,顯示供授予前述HMI用戶端的管理員權限之用的權限提高對話框(dialog box)。
共用資料夾(folder)創建處理,係當對前述權限提高對話框進行了允許權限提高的操作時,創建藉由從前述網路HMI伺服端輸入前述
用戶端認證資訊而能夠從前述網路HMI伺服端進行存取(access)的共用資料夾。
常駐程序設定處理,係從前述網路HMI伺服端複製用戶端常駐程式至前述共用資料夾,使用寫入到前述共用資料夾的前述用戶端認證資訊而將前述用戶端常駐程式設定為常駐程序。
較佳為,各前述網路HMI伺服端係復執行下述處理。
伺服端群資訊寫入處理,係當接收到前述伺服端群資訊請求信號時,直到規定有前述對象網路HMI伺服端所隸屬的前述伺服端群的全部伺服端名稱之前述伺服端群資訊寫入至前述共用資料夾為止,反覆進行前述伺服端群資訊的寫入。
用戶端認證資訊寫入處理,係當接收到前述用戶端認證資訊時,直到前述用戶端認證資訊寫入至前述共用資料夾為止,反覆進行前述用戶端認證資訊的寫入。
依據本發明,係按照分派順序將伺服端連接優先順序名單從網路HMI伺服端動態地分派給HMI用戶端。因此,在HMI用戶端係不需要預先進行與連接優先順序相關的設定。此外,伺服端連接優先順序名單係按照考慮到負荷分散的分派順序分派給各HMI用戶端,故連接至各網路HMI伺服端的用戶端的數目形成為均等,從而謀求負荷分散。本發明的SCADA網路HMI系統係既謀求伺服端的冗餘化與負荷分散,又能夠降低用戶端設定所需的運用成本。
1:HMI(人機介面)
2:PLC
10:網路HMI伺服端
11:網路伺服端
13:伺服端資訊配送程式
14:安裝用HTML檔案
15:類精簡型用戶端安裝器
16:伺服端群資訊表
17:用戶端常駐程式
18:伺服端連接優先順序名單表
19:伺服端安裝器
20:HMI用戶端
21:網路瀏覽器
22:HMI控制處理
23:用戶端控制處理
24:網路伺服端
25:常駐程序
26:用戶端資源
28:伺服端群資訊
29:用戶端認證資訊
30:伺服端群資訊寫入處理
31:表共用處理
32:連接優先順序名單發送處理
33:死活監視處理
34:連接優先順序名單請求處理
35:伺服端連接處理
36:容錯移轉處理
37:容錯回復處理
38:伺服端群資訊請求處理
39:安裝器執行確認處理
40:權限提高處理
41:PLC資訊收集處理
42:共用資料夾創建處理
43:常駐程序設定處理
44:表管理處理
45:用戶端認證資訊發送處理
46:用戶端認證資訊寫入處理
71:網址欄
81:通知欄
91:權限提高對話框
100a,200a:處理器
100b,200b:記憶體
100c,200c:網路介面
100d,200d:輸入介面
100e,200e:顯示器
121,122:虛線
123:實線
C1~C9:HMI用戶端
S1~S3:HMI伺服端
S100~S114,S200~S208:步驟
圖1係供說明本發明的實施型態1的SCADA的系統構成之用的圖。
圖2係顯示本發明的實施型態1的伺服端群資訊表的一例之圖。
圖3係供針對在本發明的實施型態1的HMI用戶端及網路HMI伺服端中執行的處理進行說明之用的方塊圖(block chart)。
圖4係供針對本發明的實施型態1的類精簡型用戶端的安裝(install)進行說明之用的圖。
圖5係供針對本發明的實施型態1的類精簡型用戶端的安裝處理的流程(flow)進行說明之用的流程圖(flowchart)。
圖6係供針對本發明的實施型態1的類精簡型用戶端的安裝處理的流程進行說明之用的流程圖。
圖7係在安裝本發明的實施型態1的類精簡型用戶端的過程中顯示於HMI用戶端的監視器(monitor)的畫面的一例。
圖8係在安裝本發明的實施型態1的類精簡型用戶端的過程中顯示於HMI用戶端的監視器的畫面的一例。
圖9係在安裝本發明的實施型態1的類精簡型用戶端的過程中顯示於HMI用戶端的監視器的畫面的一例。
圖10(A)及(B)係顯示本發明的實施型態1的伺服端連接優先順序名單表的具體例之圖。
圖11係供針對本發明的實施型態1的伺服端連接優先順序名單的配送處理的流程進行說明之用的流程圖。
圖12係供說明本發明的實施型態1的伺服端連接優先順序名單的分派例之用的圖。
圖13係顯示本發明的實施型態1的伺服端群資訊表的一例之圖。
圖14(A)至(C)係顯示本發明的實施型態1的容錯移轉處理與容錯回復(failback)處理的一例之圖。
圖15係顯示HMI用戶端及網路HMI伺服端所具有的硬體(hardware)構成例之方塊圖。
針對本發明的實施型態,按照添附圖式進行說明。另外,在各圖中,相同或相當的部分係賦予相同的元件符號。該部分的重複說明係適當簡化或省略。
實施型態1.
<全體構成>
圖1係供說明SCADA的系統構成之用的圖。SCADA係就子系統而言具備:人機介面(HMI)1、作為監控系統的可程式邏輯控制器(以下,記為PLC 2)、通信基礎建設(省略圖示)、及RIO(省略圖示)。SCADA係透過PLC 2或RIO而連接至監視對象裝置(省略圖示)。
有關PLC 2(監控系統)、通信基礎建設、RIO的說明係如同在前述的先前技術中所說明,故予以省略。監視對象裝置乃係構成監控對象之設備(plant)的感測器、致動器(actuator)等。
HMI 1(SCADA網路HMI系統)係具備複數台SCADA網路
HMI伺服端裝置(以下,記為網路HMI伺服端)10、及複數台HMI用戶端終端裝置(以下,記為HMI用戶端)20。
複數台網路HMI伺服端10係透過電腦網路(network)而連接至複數個PLC 2。當不需要區分各網路HMI伺服端時係僅稱為網路HMI伺服端10。複數台網路HMI伺服端10係透過電腦網路而連接至複數台HMI用戶端20。當不需要區分各HMI用戶端時係僅稱為HMI用戶端20。HMI用戶端20係執行網路瀏覽器21。網路瀏覽器21係顯示配置有顯示設備之狀態的物件之HMI畫面。
如後述的圖15所示,網路HMI伺服端10係具備:至少一個處理器100a、及記憶針對網路伺服端11所執行的處理進行記載的程式之記憶體100b。程式係藉由處理器100a而執行,藉此,令處理器100a執行程式所記載的處理。記憶體100b係含有ROM(Read Only Memory;唯讀記憶體)、RAM(Random Access Memory;隨機存取記憶體)、HDD(Hard Disk Drive;硬碟)、SSD(Solid State Drive;固態硬碟)等。
網路HMI伺服端10係執行HMI伺服端應用程式之形式的網路伺服端11。網路HMI伺服端10係相應於從PLC 2接收到的PLC信號,將供更新HMI畫面中所配置的物件的狀態之用的顯示信號發送給網路瀏覽器21。此外,網路HMI伺服端10係從網路瀏覽器21接收控制指令並發送給PLC 2。
如後述的圖15所示,HMI用戶端20係具備:至少一個處理器200a、及記憶針對HMI用戶端20所執行的處理進行記載的程式之記憶體200b。程式係藉由處理器200a而執行,藉此,令處理器200a執行程
式所記載的處理。記憶體200b係含有ROM、RAM、HDD、SSD等。程式係含有供執行網路瀏覽器21、HMI控制處理22、用戶端控制處理23、網路伺服端24、常駐程序25之用的資料。
<類精簡型用戶端>
在一般的網路應用程式中,在網路瀏覽器動作的網路內容(web content)係從網路伺服端動態地載入(load)後動作。因此,在用戶端並不需要軟體(software)的安裝。因此,網路應用程式的用戶端係稱為精簡型用戶端。然而,在本實施型態的SCADA HMI的網路應用程式中係難以運用在精簡型用戶端。以下具體進行說明。
從安全性(security)的觀點來看,動作在網路瀏覽器21上的程式係有動作限制。允許的動作係僅有與網路伺服端之間的通信及在網路瀏覽器21上的顯示。亦即,對記憶體200b(例如硬碟)上的檔案(file)和用戶端資源(resource)26(例如印表機(printer))等HMI用戶端20上的裝置(device)的直接存取並沒有被允許。
另一方面,SCADA HMI卻需要下述功能。
(1)用於保養的對執行記錄檔(log)的磁碟檔案(disc file)的寫入
(2)對印表機的存取
(3)執行機器名稱的取得
(4)Windows(註冊商標)應用程式的啟動
為了實現如上述需要對用戶端裝置進行存取的功能,HMI用戶端20係在網路伺服端24上執行常駐程序25(Windows(註冊商標)服務(service))。網路瀏覽器21係經由常駐程序25而能夠存取網路應用程式無
法直接存取的HMI用戶端20的裝置。
在動作在HMI用戶端20上的網路瀏覽器21上,係執行HMI控制處理22與用戶端控制處理23。HMI控制處理22乃係HMI控制程式的動作中的執行個體(instance)。HMI控制程式係從網路HMI伺服端10的網路伺服端11載入,並動作在網路HMI伺服端10的網路伺服端11的定義域(domain)。用戶端控制處理23乃係用戶端控制程式的動作中的執行個體。用戶端控制程式係從HMI用戶端的網路伺服端24載入,並動作在HMI用戶端20的網路伺服端24的定義域。
該些程式係動作在不同的定義域,故彼此無法直接存取其他定義域的資料。因此,係使用定義域間通信來進行資料的交換。HMI控制程式乃係對PLC 2進行監控的SCADA HMI的主(main)程式。用戶端控制程式乃係經由常駐程序25而對用戶端裝置(磁碟、印表機等)進行存取的程式,係藉由HMI控制程式的指示而動作。
常駐程序25與用戶端控制處理23乃係從HMI用戶端20的儲存裝置(storage)(記憶體200b)讀入的程式的執行個體。因此,在基於瀏覽器的HMI子系統的情形中,雖然為網路應用程式,仍必須將部分程式安裝至HMI用戶端20。因此,為了與完全不需要進行安裝的精簡型用戶端區別,將本實施型態的用戶端稱為類精簡型用戶端(pseudo thin client)。
HMI用戶端20的台數係比網路HMI伺服端10的台數多。因此,在進行類精簡型用戶端的安裝時,較佳為不用有按每一台HMI用戶端20的固有的設定作業。
因此,在本實施型態的SCADA網路HMI系統中,係在實
現伺服端的冗餘化與負荷分散的前提下,謀求用戶端設定所需的運用成本的降低。具體而言,係實現:(1)類用戶端安裝時的伺服端群資訊的自動配送、及(2)HMI用戶端啟動時的伺服端連接優先順序名單的動態配送。
<(1)類精簡型用戶端安裝時的伺服端群資訊的自動配送>
首先,針對伺服端群進行說明。伺服端群乃係供實現伺服端冗餘化之用的伺服端的集合。隸屬於同一個伺服端群的伺服端彼此係擁有主伺服端與副伺服端的關係。伺服端群係以如圖2所示的伺服端群資訊表來定義。
在圖2中,擁有相同SERVER GROUP ID的伺服端構成一個伺服端群。HMI用戶端20係與其中任一個伺服端群建立關聯。HMI用戶端20係能夠與建立起關聯的伺服端群內的任一網路HMI伺服端10連接。HMI用戶端20係當連接中的網路HMI伺服端10故障時,能夠將連接切換至伺服端群內的別的伺服端而繼續運用(容錯移轉)。
接著,針對類精簡型用戶端的安裝進行說明。基於瀏覽器的SCADA網路HMI系統的用戶端並非精簡型用戶端,而是類精簡型用戶端,因此需要安裝作業。本實施型態的安裝處理係在將伺服端群資訊自動配送給各HMI用戶端這點具有特徵。
在本實施型態的系統中,係使用網路瀏覽器21來安裝類精簡型用戶端。就安裝類精簡型用戶端的機器而言,例如設想為預裝(pre-install)Windows(註冊商標)的機器。在預裝Windows(註冊商標)的機器中係已安裝有OS(operating system;作業系統)及網路瀏覽器(Internet Explorer(註冊商標)或Microsoft Edge(註冊商標)等)。在HMI用戶端20,藉由網路瀏覽器21連入(access)指定URL,使類精簡型用戶端的安裝處理
開始。
參照圖3至圖9,針對類精簡型用戶端的安裝處理進行說明。圖3係供針對在HMI用戶端20及網路HMI伺服端10中執行的處理進行說明之用的方塊圖。圖4係供針對類精簡型用戶端的安裝進行說明之用的圖。圖5及圖6係供針對類精簡型用戶端的安裝處理的流程進行說明之用的流程圖。圖7至圖9係在安裝類精簡型用戶端的過程中顯示於HMI用戶端的監視器的畫面的一例。
首先,在圖5的步驟S100,使用者(user)係在網路瀏覽器21的網址欄(address bar)71(圖7)輸入URL(Uniform Resource Locator;統一資源定位符)。該URL係含有對象伺服端名稱、與安裝用HTML檔案14(圖4)的名稱「install.html」。在圖7的例子中,對象伺服端名稱為「SVR1」。URL係發送至與對象伺服端名稱對應的網路HMI伺服端10。
在步驟S101,網路HMI伺服端10係將「install.html」檔案發送給HMI用戶端20。
在步驟S102,網路瀏覽器21係讀入「install.html」檔案,然後顯示圖7中所示的畫面。
在步驟S103,使用者係輸入用戶端認證資訊,然後按下顯示於網路瀏覽器21的「是」按鈕(button)。用戶端認證資訊係含有HMI用戶端20的帳戶名與密碼。
在步驟S104,網路瀏覽器21係將伺服端群資訊請求信號發送給網路HMI伺服端10。具體而言,伺服端群資訊請求處理38(圖3)係將請求規定有伺服端群的伺服端群資訊之伺服端群資訊請求信號發送給對象
網路HMI伺服端,該對象網路HMI伺服端為藉由含有對象伺服端名稱的URL而指定的網路HMI伺服端10。
此外,在步驟S104,用戶端認證資訊發送處理45(圖3)係將用戶端認證資訊發送給網路HMI伺服端10。
在步驟S105,網路HMI伺服端10係接收伺服端群資訊請求信號與用戶端認證資訊。用戶端認證資訊29係寫入記憶體100b(圖4)。伺服端群資訊寫入處理30(圖3)係從伺服端群資訊表16(圖4)抽出伺服端群資訊,該伺服端群資訊係規定有本身伺服端(對象網路HMI伺服端)所隸屬的伺服端群的全部伺服端名稱。
圖2為伺服端群資訊表16的一例。在如圖7的例子所示在URL指定的是對象網路HMI伺服端「SVR1」的情形中,伺服端群資訊28(圖4)係含有隸屬於與SVR1同一個伺服端群(SERVER GROUP ID=1)的SVR1與SVR2。
在步驟S106,伺服端群資訊寫入處理30係嘗試進行將在步驟S105抽出的伺服端群資訊28寫入至HMI用戶端20的記憶體200b(例如硬碟)的處理。要使該寫入處理成功,係需要在記憶體200b備妥從網路HMI伺服端10能夠進行存取的共用資料夾。當共用資料夾尚未備妥而寫入處理失敗時,係於一定時間後再次執行步驟S106的處理(步驟S107)。亦即,伺服端群資訊寫入處理30係直到在步驟S105抽出的伺服端群資訊28寫入至共用資料夾為止,反覆進行伺服端群資訊28的寫入。
此外,在步驟S107,用戶端認證資訊寫入處理46係直到在步驟S105接收到的用戶端認證資訊29寫入至共用資料夾為止,反覆進行
用戶端認證資訊29的寫入。
在步驟S104的處理後,在步驟S108,安裝器執行確認處理39(圖3)係從對象網路HMI伺服端下載類精簡型用戶端安裝器15(圖4)至網路瀏覽器21。然後,安裝器執行確認處理39係顯示供執行類精簡型用戶端安裝器15之用的通知欄(bar)81(圖8)。在顯示於網路瀏覽器21的通知欄81係配置有執行按鈕。圖8中的「clientInstaller.exe」乃係類精簡型用戶端安裝器15的檔案名稱。類精簡型用戶端安裝器15乃係執行檔(副檔名「.exe」)。
在步驟S109,使用者係按下顯示於通知欄81的執行按鈕。
在圖6的步驟S110,在HMI用戶端20上執行類精簡型用戶端安裝器15。
在步驟S111,當執行類精簡型用戶端安裝器15,便顯示圖8中所示的與使用者帳戶控制有關的對話框。類精簡型用戶端安裝器15係必須以管理員權限執行。因此,當對通知欄81進行了允許類精簡型用戶端安裝器15的執行的操作時,權限提高處理40(圖3)係顯示供授予HMI用戶端20的管理員權限之用的權限提高對話框91(圖9)。當按下顯示於權限提高對話框91的「是」按鈕,便執行安裝。
在步驟S112,當在權限提高對話框91中進行了允許權限提高的操作時,共用資料夾創建處理42(圖3)係創建從網路HMI伺服端10能夠進行存取的共用資料夾。共用資料夾創建處理42係藉由類精簡型用戶端安裝器15而執行。
藉由從網路HMI伺服端10輸入用戶端認證資訊29,共用
資料夾便能夠從網路HMI伺服端10進行存取。當設定了共用資料夾,在上述的步驟S106,伺服端群資訊28與用戶端認證資訊29便寫入至HMI用戶端20的記憶體200b。藉此,步驟S107的判定條件成立,將伺服端群資訊28與用戶端認證資訊29寫入共用資料夾的處理係結束。
在步驟S113,常駐程序設定處理43(圖3)係從網路HMI伺服端10複製(copy)用戶端常駐程式17(圖4)至共用資料夾。常駐程序設定處理43係藉由類精簡型用戶端安裝器15而執行。類精簡型用戶端安裝器15係開始用戶端常駐程式17的安裝。
在步驟S114,常駐程序設定處理43係將用戶端常駐程式17設定為常駐程序25(圖1)。用戶端常駐程式17係設定為一直在背景(background)執行的Windows(註冊商標)服務。然而,在將用戶端常駐程式17登錄為Windows(註冊商標)服務時,係需要HMI用戶端20的帳戶名與密碼。因此,常駐程序設定處理43係使用寫入到共用資料夾的用戶端認證資訊29,將用戶端常駐程式17設定為常駐程序25。
依據本實施型態,在步驟S103輸入的用戶端認證資訊係用在:(1)供網路HMI伺服端10存取HMI用戶端20的共用資料夾之用、及(2)供HMI用戶端20將用戶端常駐程式17設定為常駐程序25(圖1)之用的兩個用途。亦即,在步驟S114,使用者不需重新輸入用戶端認證資訊,故能夠降低運用成本。
藉由上述的處理流程,類精簡型用戶端的安裝作業係完成。在上述的安裝作業中,除了在URL含有對象伺服端名稱以外,HMI用戶端20就沒有進行任何伺服端固有的設定。此外,伺服端固有的資訊並沒有
含有在類精簡型用戶端安裝器15中。在本實施型態的系統中,伺服端固有的資訊(伺服端群資訊)係視在HMI用戶端20設定共用資料夾的狀況而自動配送。因此,不需要準備內含按每一台HMI用戶端20而異的伺服端群資訊的安裝器。
然而,類精簡型用戶端安裝器15從網路HMI伺服端10複製到HMI用戶端20的檔案係必須適切地配備在網路HMI伺服端10。因此,為了讓類精簡型用戶端安裝器15適切地動作,伺服端安裝器19係將必要的檔案配備在記憶體100b(例如硬碟)。
伺服端安裝器19係將伺服端資訊配送程式13、安裝用HTML檔案14、類精簡型用戶端安裝器15、伺服端群資訊表16、用戶端常駐程式17、伺服端連接優先順序名單表18配備在記憶體100b。伺服端資訊配送程式13係在網路伺服端11上作為圖3中所示的伺服端群資訊寫入處理30、表共用處理31、連接優先順序名單發送處理32、表管理處理44而執行。此外,伺服端資訊配送程式13係含有載入至網路瀏覽器21的上述的HMI控制程式。
<(2)HMI用戶端啟動時的伺服端連接優先順序名單的動態配送>
接著,針對安裝後的用戶端-伺服端連接處理、及伺服端連接優先順序名單的動態配送處理進行說明。
首先,針對伺服端連接優先順序名單進行說明。各用戶端的伺服端連接優先順位並不會在類精簡型用戶端的安裝完成的時點決定。亦即,對於各HMI用戶端20,還未決定哪個網路HMI伺服端10為主伺服
端、哪個網路HMI伺服端10為副伺服端。伺服端連接優先順位係在HMI用戶端20啟動HMI應用程式時,藉由取得伺服端連接優先順序名單而動態地決定。
表共用處理31(圖3)係將伺服端連接優先順序名單表18共用在隸屬於伺服端群的全部的網路HMI伺服端10間。伺服端連接優先順序名單表18(圖4)係針對複數個伺服端連接優先順序名單各者,以使與隸屬於伺服端群的各網路HMI伺服端10連接的HMI用戶端20的數目接近均等的方式規定分派順序。伺服端連接優先順序名單係規定隸屬於伺服端群的全部的網路HMI伺服端10的連接優先順序。在伺服端連接優先順序名單係依優先順序記載HMI用戶端20連接的網路HMI伺服端。
圖10(A)為伺服端數目為2時的伺服端連接優先順序名單表。
伺服端連接優先順序名單表18乃係儲存有複數筆將分派順序、伺服端連接優先順序名單、分派目標用戶端、連接中旗標(flag)、最後連接時刻建立起關聯的資訊之表(圖13)。在圖10中係僅顯示當中的分派順序與伺服端連接優先順序名單。
兩台網路HMI伺服端10乃係第1網路HMI伺服端(SVR1)與第2網路HMI伺服端(SVR2)。伺服端連接優先順序名單表18係至少含有分派給第1個進行連接的HMI用戶端20之第1伺服端連接優先順序名單、與分派給第2個進行連接的HMI用戶端20之第2伺服端連接優先順序名單。對自第3個起進行連接的HMI用戶端20係交替分派第1伺服端連接優先順序名單與第2伺服端連接優先順序名單。
第1伺服端連接優先順序名單係按SVR1、SVR2的順序規定有連接優先順序。第2伺服端連接優先順序名單係按SVR2、SVR1的順序規定有連接優先順序。
圖10(B)為伺服端數目為3時的伺服端連接優先順序名單表。三台網路HMI伺服端10乃係第1網路HMI伺服端(SVR1)、第2網路HMI伺服端(SVR2)、與第3網路HMI伺服端(SVR3)。伺服端連接優先順序名單表18係至少含有分派給第1個進行連接的HMI用戶端20之第1伺服端連接優先順序名單、分派給第2個進行連接的HMI用戶端20之第2伺服端連接優先順序名單、分派給第3個進行連接的HMI用戶端20之第3伺服端連接優先順序名單、分派給第4個進行連接的HMI用戶端20之第4伺服端連接優先順序名單、分派給第5個進行連接的HMI用戶端20之第5伺服端連接優先順序名單、與分派給第6個進行連接的HMI用戶端20之第6伺服端連接優先順序名單。對自第7個起進行連接的HMI用戶端20係依序分派第1至第6伺服端連接優先順序名單。
第1伺服端連接優先順序名單係按SVR1、SVR2、SVR3的順序規定有連接優先順序。第2伺服端連接優先順序名單係按SVR2、SVR3、SVR1的順序規定有連接優先順序。第3伺服端連接優先順序名單係按SVR3、SVR1、SVR2的順序規定有連接優先順序。第4伺服端連接優先順序名單係按SVR1、SVR3、SVR2的順序規定有連接優先順序。第5伺服端連接優先順序名單係按SVR2、SVR1、SVR3的順序規定有連接優先順序。第6伺服端連接優先順序名單係按SVR3、SVR2、SVR1的順序規定有連接優先順序。
生成伺服端連接優先順序名單表的演算法(algorithm)係如下述。
令設伺服端台數為n時的伺服端為SVR(i)(i=0、1、…、n-1)。
此處,將i稱為該伺服端的伺服端索引(index)。伺服端SVR的伺服端索引係表示為index(SVR)。
成立下式。
index(SVR(i))=i
令設伺服端台數為n時的第k個伺服端連接優先順序名單的第i個伺服端為S(n,k,i)。
此處,
n>=2
k=0、1、…、n!-1
i=0、1、…、n-1
之所以k<=n!-1,係因當k為n!以上時,只要重複使用k為n!以下時的伺服端連接優先順序名單即可的緣故。
當m=(n!-1)×q+r(q為0以上的整數,r=0、1、…、n!-1)時,也就是S(n,m,i)=S(n,r,i)。
當n=2時,如下述。
S(2,0,0)=SVR(0)
S(2,0,1)=SVR(1)
S(2,1,0)=SVR(1)
S(2,1,1)=SVR(0)
為了將伺服端台數擴張至n+1,設想P(n,k,i,b)。這表示當伺服端台數為n+1時,以伺服端SVR(b)為起點,移位(shift)達S(n,k,i)的伺服端索引量後的伺服端。嚴格來說係定義如下。
P(n,k,i,b)=SVR((b+index(S(n,k,i))+1)%(n+1))
式中,x%y表示以y為除數對x進行模除的餘數。例如,4%3=1。
此外,各個變數的範圍係如下述。
n>=2
k=0、1、…、n!-1
i=0、1、…、n-1
b=0、1、…、n
例如,當n=2時係如下述。
P(2,0,0,0)=SVR((0+0+1)%3)=SVR(1)
P(2,0,1,0)=SVR((0+1+1)%3)=SVR(2)
P(2,1,0,0)=SVR((0+1+1)%3)=SVR(2)
P(2,1,1,0)=SVR((0+0+1)%3)=SVR(1)
P(2,0,0,1)=SVR((1+0+1)%3)=SVR(2)
P(2,0,1,1)=SVR((1+1+1)%3)=SVR(0)
P(2,1,0,1)=SVR((1+1+1)%3)=SVR(0)
P(2,1,1,1)=SVR((1+0+1)%3)=SVR(2)
P(2,0,0,2)=SVR((2+0+1)%3)=SVR(0)
P(2,0,1,2)=SVR((2+1+1)%3)=SVR(1)
P(2,1,0,2)=SVR((2+1+1)%3)=SVR(1)
P(2,1,1,2)=SVR((2+0+1)%3)=SVR(0)
S(n+1,k,i)係能夠使用P(n,k,i,b)來表示。
此處,k的範圍係如下述。
k=0、1、…、(n+1)!-1
因此,能夠表示為k=(n+1)×q+r。
此處,q、r的範圍係如下述。
q=0、1、…、n!-1
r=0、1、…、n
當i=0時,S(n+1,k,i)=SVR(r)
當i=1、2、…、n時,S(n+1,k,i)=P(n,q,i-1,r)
從P(n,k,i,b)的定義,S(n+1,k,i)係能夠以下述的遞迴關係式表示。
當n>=2時,
若設k=(n+1)×q+r,則
當i=0時,S(n+1,k,i)=SVR(r)
當i=1、2、…、n時,S(n+1,k,i)=SVR((r+index(S(n,q,i-1))+1)%(n+1))
當n=1時,
S(n+1,0,0)=S(2,0,0)=SVR(0)
S(n+1,0,1)=S(2,0,1)=SVR(1)
S(n+1,1,0)=S(2,1,0)=SVR(1)
S(n+1,1,1)=S(2,1,1)=SVR(0)
藉由該遞迴關係式,能夠求得伺服端台數為2以上時的全部的伺服端連接優先順序名單。
伺服端數目為n時的伺服端連接優先順序名單表,係能夠以
伺服端數目為n-1時的伺服端連接優先順序名單表為基礎來生成,因此,能夠從伺服端數目為2時的伺服端連接優先順序名單表,依序生成伺服端數目為3、4、5、…時的伺服端連接優先順序名單表。
名單的數目k為n!以上時的伺服端連接優先順序名單表,係從k為n!時的伺服端連接優先順序名單表生成。將k為n!時的伺服端連接優先順序名單表定義為基本優先順序名單表。
當基本優先順序名單表使用過一輪,便將基本優先順序名單表從最初再次開始使用,藉此,無論用戶端台數多麼地多都能夠生成出名單。
當伺服端台數為n時,基本優先順序名單的數目為n!。當n=2時,2!=2。當n=3時,3!=6,與圖10所示的結果一致。
當伺服端台數為n時,位於名單的第1個的伺服端有n種,第2個至第n個的伺服端係使用前述的遞迴關係式而令伺服端台數為n-1時的基本優先順序名單分別對應,藉此,能夠生成n×((n-1)!)=n!個的基本優先順序名單。
然而,當伺服端群內的複數個伺服端同時存取伺服端連接優先順序名單表18時,有對不同的HMI用戶端20分派同一個伺服端連接優先順序名單的可能性。為了防止這樣的誤動作發生,伺服端連接優先順序名單表18的更新權係由伺服端群內的一個伺服端持有。當HMI用戶端20請求伺服端連接優先順序名單時,當該伺服端持有伺服端連接優先順序名單表的更新權時,係立即分派新的伺服端連接優先順序名單,將伺服端連接優先順序名單發送給HMI用戶端20。另一方面,當伺服端未持有連接優先順序名單表的更新權時,該伺服端係向持有伺服端連接優先順序名單
表的更新權的伺服端請求伺服端連接優先順序名單表的更新權。接著,在獲得伺服端連接優先順序名單表的更新權後,分派伺服端連接優先順序名單發送給HMI用戶端20。
參照圖3、圖11至圖13,針對取得伺服端連接優先順序名單的步驟順序進行說明。圖3係供針對在HMI用戶端20及網路HMI伺服端10中執行的處理進行說明之用的方塊圖。圖11係供針對伺服端連接優先順序名單的配送處理的流程進行說明之用的流程圖。圖12係供說明伺服端連接優先順序名單的分派例之用的圖。圖13係顯示伺服端群資訊表的一例之圖。
HMI用戶端20係當一啟動,便進行在安裝時取得的伺服端群資訊28(圖4)中所記載的全部的網路HMI伺服端10的生死確認。死活監視處理33(圖3)係監視隸屬於伺服端群的全部的網路HMI伺服端10的工作狀態。該監視係使用無連線(connectionless)型通信(例如,REST協定(protocol))進行。
在圖11的步驟S200,連接優先順序名單請求處理34(圖3)係將請求伺服端連接優先順序名單之用的名單請求信號發送給隸屬於伺服端群的任一個網路HMI伺服端10。名單請求信號要發送給哪個網路HMI伺服端10係週期性地變更。名單請求信號係以無連線型通信(例如,REST協定)進行發送。
在步驟S201,網路HMI伺服端10係從請求來源用戶端接收名單請求信號。請求來源用戶端乃係發送出名單請求信號的HMI用戶端20。
在步驟S202,網路HMI伺服端10係判定本身伺服端是否擁有伺服端連接優先順序名單表18的更新權。如前述,伺服端連接優先順序名單表18係共用在隸屬於伺服端群的全部的網路HMI伺服端10間(表共用處理31)。
當擁有更新權時,係前進至步驟S203的處理。當沒有擁有更新權時,係對擁有更新權的網路HMI伺服端10請求更新權,在取得更新權後前進至步驟S203的處理。
在步驟S203至步驟S206,連接優先順序名單發送處理32係按照規定在伺服端連接優先順序名單表18的分派順序發送伺服端連接優先順序名單。伺服端連接優先順序名單係規定隸屬於伺服端群的全部的網路HMI伺服端10的連接優先順序。
首先,在步驟S203,連接優先順序名單發送處理32係判定在伺服端連接優先順序名單表18中是否存在與請求來源用戶端對應的項目(entry)。連接優先順序名單發送處理32係當在伺服端連接優先順序名單表18的「分派目標用戶端」欄登錄有請求來源用戶端時,判定為存在項目。當存在項目時係前進至步驟S204的處理。當不存在項目時係前進至步驟S205的處理。
在步驟S204,連接優先順序名單發送處理32係重覆利用在步驟S203找到的項目的伺服端連接優先順序名單。圖13係伺服端連接優先順序名單表18的一例。在圖13的例子中,在2nd client已分派CLIENT E。因此,當請求來源用戶端為CLIENT E時,重覆利用2nd client的伺服端連接優先順序名單。
在步驟S205,連接優先順序名單發送處理32係將未分配(assigned)的項目當中分派順序為最前面的項目分派給請求來源用戶端。
在步驟S206,連接優先順序名單發送處理32係將伺服端連接優先順序名單發送給請求來源用戶端。發送時刻係記錄至伺服端連接優先順序名單表18的「最後連接時刻」欄。
在步驟S207,請求來源用戶端係接收伺服端連接優先順序名單。
在步驟S208,伺服端連接處理35係與隸屬於伺服端群的至少一個工作中的網路HMI伺服端10當中,規定在伺服端連接優先順序名單的連接優先順位為最高的網路HMI伺服端10建立連線。另外,網路HMI伺服端10的工作狀態係藉由屬於副常式(sub-routine)的死活監視處理33持續地監視。
藉由步驟S208的處理而建立起連線的網路HMI伺服端10係將伺服端連接優先順序名單表18的「最後連接時刻」欄清除(clear)。
於圖12顯示取得伺服端連接優先順序名單的一例。圖12係顯示用戶端A至D連接至SVR1與SVR2所隸屬的伺服端群的例子。虛線121係表示給SVR1的名單請求信號及其回應信號。虛線122係表示給SVR2的名單請求信號及其回應信號。HMI用戶端20係每數秒切換名單請求信號的發送目標伺服端。因此,用戶端A與B是將名單請求信號發送給SVR1,用戶端C與D是將發送名單請求信號發送給SVR2。
當最初從用戶端A接收到名單請求信號,SVR1便將分派順序設定為第1位的伺服端連接優先順序名單分派給用戶端A。用戶端A係
在與優先順序最高的SVR1之間建立能夠進行雙向通信的連線(實線123)。就協定而言,例如使用WebScoket。
當接著從用戶端B接收到名單請求信號,SVR1便將分派順序設定為第2位的伺服端連接優先順序名單分派給用戶端B。用戶端B係在與優先順序最高的SVR2之間建立能夠進行雙向通信的連線。
當接著從用戶端C接收到名單請求信號,SVR2便將分派順序設定為第3位的伺服端連接優先順序名單分派給用戶端C。用戶端C係在與優先順序最高的SVR1之間建立能夠進行雙向通信的連線。
當接著從用戶端D接收到名單請求信號,SVR2便將分派順序設定為第4位的伺服端連接優先順序名單分派給用戶端D。用戶端D係在與優先順序最高的SVR2之間建立能夠進行雙向通信的連線。
如上述說明,依據圖11所示的用戶端啟動時的處理,HMI用戶端20係能夠從網路HMI伺服端10動態地取得伺服端連接優先順序名單。因此,在HMI用戶端20不需要有與伺服端連接優先順序相關的事先設定。
此外,由於係按照考慮到負荷分散的分派順序來對HMI用戶端20配送伺服端連接優先順序名單,故在HMI用戶端20不需要有供冗餘化及負荷分散之用的事先設定。此外,由於不需要事先設定,故在使用評價終端裝置和為了暫時性的監視而使用行動式(mobile)終端裝置時,仍能夠連接至本系統。
此外,伺服端連接優先順序名單係在HMI用戶端20連接至伺服端群時動態地配送,故停止動作的HMI用戶端20係排除在負荷分散
的對象之外,系統全體中有在工作的用戶端的總負荷係均等地分散在伺服端間。
另外,網路HMI伺服端10係執行對伺服端連接優先順序名單表18的項目進行管理的表管理處理44。表管理處理44係相應於用戶端-伺服端間的連接狀態,而更新伺服端連接優先順序名單表18(圖13)中的「連接中旗標」欄與「最後連接時刻」欄。表管理處理44係當HMI用戶端20連接到網路HMI伺服端10時,將連接中旗標設定為「連接中」。表管理處理44係當HMI用戶端20與網路HMI伺服端10的連接斷掉,便將連接旗標設定為「未連接」並且記錄「最後連接時刻」。此外,表管理處理44係週期性地檢查(check)伺服端連接優先順序名單表18的各項目的最後連接時刻,確認是否已經過了一定時間。當已經過了一定時間時係將該項目刪除。具體而言係清除該項目的「分派目標用戶端」欄、「連接中旗標」欄、及「最後連接時刻」欄的資料。
<容錯移轉處理>
當目前連接中的網路HMI伺服端10故障,HMI用戶端20便執行容錯移轉處理36,連接至其他網路HMI伺服端10繼續運用。容錯移轉處理36係當目前連接中的網路HMI伺服端10變成非工作狀態時,將連線切換至隸屬於伺服端群的至少一個工作中的網路HMI伺服端10當中,規定在伺服端連接優先順序名單的連接優先順位為最高的網路HMI伺服端10。HMI用戶端20係藉由死活監視處理33而一直掌握著各網路HMI伺服端10的工作狀態。因此,容錯移轉處理36係能夠即刻容錯移轉至工作中的伺服端,能夠將因伺服端故障造成的對作業(operation)的影響抑制在最小
限度。
<容錯回復處理>
當網路HMI伺服端10恢復時,HMI用戶端20係執行容錯回復處理37。容錯回復處理37係當有比HMI用戶端20目前所連接的網路HMI伺服端10高連接優先順位的網路HMI伺服端10在工作時,將連線切換至高連接優先順位的網路HMI伺服端10。HMI用戶端20係藉由死活監視處理33而一直掌握著各網路HMI伺服端10的工作狀態。因此,能夠知道之前故障的伺服端已經恢復。當已經恢復的伺服端的連接優先順位比目前所連接的伺服端高時,能夠即刻容錯回復至已經恢復的伺服端。藉此,在伺服端恢復時仍能夠維持最佳的負荷分散。
圖14(A)至(C)係顯示容錯移轉處理與容錯回復處理的一例之圖。圖14(A)係顯示隸屬於伺服端群的全部的網路HMI伺服端(S1至S3)為工作中,HMI用戶端(C1至C9)連接到主伺服端的狀態。圖14(B)係顯示S2故障而執行容錯移轉處理36的狀態。C2係重新連接至屬於副伺服端的S1,C5與C8係重新連接至屬於副伺服端的S3。圖14(C)係顯示S2恢復而執行容錯回復處理37的狀態。C2、C5、C8係重新連接至屬於主伺服端的S2。
此外,HMI用戶端20係當執行容錯移轉處理36或容錯回復處理37時,執行PLC資訊收集處理41。PLC資訊收集處理41係以從PLC 2收集切換連線前顯示在網路瀏覽器21的HMI畫面中所配置的物件的狀態資訊的方式,對切換連線後的網路HMI伺服端10提出請求。藉此,網路瀏覽器21係能夠再次取得在容錯移轉或容錯回復即將進行之前開啟
(open)的HMI畫面所含的PLC 2的信號資料。此外,能夠再次取得在容錯移轉中成為發送錯誤(error)的訊息(message)。操作人員便能夠在切換後繼續進行容錯移轉或容錯回復前的作業。
如上述說明,依據本實施型態的SCADA網路HMI系統,既謀求伺服端的冗餘化與負荷分散,又能夠降低用戶端設定所需的運用成本。
<硬體構成例>
圖15係顯示網路HMI伺服端10及HMI用戶端20所具有的硬體構成例之方塊圖。
上述的網路HMI伺服端10的各處理係藉由處理電路而實現。處理電路係由處理器100a、記憶體100b、網路介面(network interface)100c、輸入介面100d、至少一個顯示器(display)100e連接而構成。處理器100a係執行記憶在記憶體100b的各種程式,藉此而實現網路HMI伺服端10的各功能。記憶體100b係含有ROM、RAM、HDD、SSD等。網路介面100c乃係透過電腦網路而與PLC 2及HMI用戶端20連接,能夠發送/接收PLC信號及控制指令的裝置。輸入介面100d乃係鍵盤(keyboard)、滑鼠(mouse)、觸控面板(touch panel)等輸入裝置。
上述的HMI用戶端20的各處理係藉由處理電路而實現。處理電路係由處理器200a、記憶體200b、網路介面200c、輸入介面200d、至少一個顯示器200e連接而構成。處理器200a係執行記憶在記憶體200b的各種程式,藉此而實現HMI用戶端20的各功能。記憶體200b係含有ROM、RAM、HDD、SSD等。網路介面200c乃係連接至網路HMI伺服
端10,能夠發送/接收PLC信號及控制指令的裝置。輸入介面200d乃係鍵盤、滑鼠、觸控面板等輸入裝置。另外,HMI用戶端20係亦可為平板等可攜式終端裝置。
以上,針對本發明的實施型態進行了說明,但本發明並不受上述的實施型態所限定,在不脫離本發明主旨的範圍內,能夠進行各種變形而實施。
Claims (6)
- 一種SCADA網路HMI系統,係具備:複數台HMI用戶端,係執行顯示人機介面(HMI)畫面的網路瀏覽器,該HMI畫面配置有顯示設備之狀態的物件;及複數台網路HMI伺服端,係連接至可程式邏輯控制器,相應於從前述可程式邏輯控制器接收到的PLC信號將更新前述物件的狀態的顯示信號發送給前述網路瀏覽器;前述複數台網路HMI伺服端其中至少兩台係隸屬於同一個伺服端群;其中,前述複數台網路HMI伺服端的各網路HMI伺服端係具備:至少一個處理器;及記憶程式的記憶體;前述程式係藉由前述至少一個處理器而執行,藉此,令前述至少一個處理器執行含有下述處理的處理:表共用處理,係將伺服端連接優先順序名單表共用在隸屬於前述伺服端群的全部的前述網路HMI伺服端間;及連接優先順序名單發送處理,係當從前述HMI用戶端接收到名單請求信號時,按照規定在前述伺服端連接優先順序名單表的分派順序發送伺服端連接優先順序名單,該伺服端連接優先順序名單係規定隸屬於前述伺服端群的全部的前述網路HMI伺服端的連接優先順序;前述伺服端連接優先順序名單表係針對複數個前述伺服端連接優先順序名單的各者,以使與隸屬於前述伺服端群的各前述網路HMI伺服端連接 的前述HMI用戶端的數目接近均等的方式規定前述分派順序;前述複數台HMI用戶端的各HMI用戶端係具備:至少一個處理器;及記憶程式的記憶體;前述程式係藉由前述至少一個處理器而執行,藉此,令前述至少一個處理器執行含有下述處理的處理:死活監視處理,係監視隸屬於前述伺服端群的全部的前述網路HMI伺服端的工作狀態;連接優先順序名單請求處理,係將供請求前述伺服端連接優先順序名單之用的前述名單請求信號,發送給隸屬於前述伺服端群的任一個前述網路HMI伺服端;伺服端連接處理,係當接收到前述伺服端連接優先順序名單時,與隸屬於前述伺服端群的至少一個工作中的前述網路HMI伺服端當中,規定在前述伺服端連接優先順序名單的連接優先順位為最高的前述網路HMI伺服端建立連線;及容錯移轉處理,係當目前連接中的前述網路HMI伺服端變成非工作狀態時,將連線切換至隸屬於前述伺服端群的至少一個工作中的前述網路HMI伺服端當中,規定在前述伺服端連接優先順序名單的連接優先順位為最高的前述網路HMI伺服端。
- 如請求項1所述之SCADA網路HMI系統,其中,前述複數台網路HMI伺服端係含有隸屬於前述伺服端群的第1網路HMI伺服端與第2網路HMI伺服端; 前述伺服端連接優先順序名單表係含有:分派給第1個進行連接的前述HMI用戶端之第1伺服端連接優先順序名單、及分派給第2個進行連接的前述HMI用戶端之第2伺服端連接優先順序名單;前述第1伺服端連接優先順序名單係按前述第1網路HMI伺服端、前述第2網路HMI伺服端的順序規定有連接優先順序;前述第2伺服端連接優先順序名單係按前述第2網路HMI伺服端、前述第1網路HMI伺服端的順序規定有連接優先順序。
- 如請求項1所述之SCADA網路HMI系統,其中,前述複數台網路HMI伺服端係含有隸屬於前述伺服端群的第1網路HMI伺服端、第2網路HMI伺服端與第3網路HMI伺服端;前述伺服端連接優先順序名單表係含有:分派給第1個進行連接的前述HMI用戶端之第1伺服端連接優先順序名單、分派給第2個進行連接的前述HMI用戶端之第2伺服端連接優先順序名單、分派給第3個進行連接的前述HMI用戶端之第3伺服端連接優先順序名單、分派給第4個進行連接的前述HMI用戶端之第4伺服端連接優先順序名單、分派給第5個進行連接的前述HMI用戶端之第5伺服端連接優先順序名單、及分派給第6個進行連接的前述HMI用戶端之第6伺服端連接優先順序名單;前述第1伺服端連接優先順序名單係按前述第1網路HMI伺服端、前述第2網路HMI伺服端、前述第3網路HMI伺服端的順序規定有連接優先順序;前述第2伺服端連接優先順序名單係按前述第2網路HMI伺服端、前述第3網路HMI伺服端、前述第1網路HMI伺服端的順序規定有連接優 先順序;前述第3伺服端連接優先順序名單係按前述第3網路HMI伺服端、前述第1網路HMI伺服端、前述第2網路HMI伺服端的順序規定有連接優先順序;前述第4伺服端連接優先順序名單係按前述第1網路HMI伺服端、前述第3網路HMI伺服端、前述第2網路HMI伺服端的順序規定有連接優先順序;前述第5伺服端連接優先順序名單係按前述第2網路HMI伺服端、前述第1網路HMI伺服端、前述第3網路HMI伺服端的順序規定有連接優先順序;前述第6伺服端連接優先順序名單係按前述第3網路HMI伺服端、前述第2網路HMI伺服端、前述第1網路HMI伺服端的順序規定有連接優先順序。
- 如請求項1至3中任一項所述之SCADA網路HMI系統,其中,前述HMI用戶端的前述程式係令前述至少一個處理器執行含有下述處理的處理:伺服端群資訊請求處理,係將供請求規定有前述伺服端群的伺服端群資訊之用的伺服端群資訊請求信號發送給對象網路HMI伺服端,該對象網路HMI伺服端為藉由含有對象伺服端名稱的URL而指定的前述網路HMI伺服端;用戶端認證資訊發送處理,係發送含有前述HMI用戶端的帳戶名與密碼的用戶端認證資訊; 安裝器執行確認處理,係從前述對象網路HMI伺服端下載類精簡型用戶端安裝器至前述網路瀏覽器,並顯示供執行前述類精簡型用戶端安裝器之用的通知欄;權限提高處理,係當對前述通知欄進行了允許前述類精簡型用戶端安裝器的執行的操作時,顯示供授予前述HMI用戶端的管理員權限之用的權限提高對話框;共用資料夾創建處理,係當對前述權限提高對話框進行了允許權限提高的操作時,創建藉由從前述網路HMI伺服端輸入前述用戶端認證資訊而能夠從前述網路HMI伺服端進行存取的共用資料夾;及常駐程序設定處理,係從前述網路HMI伺服端複製用戶端常駐程式至前述共用資料夾,使用寫入到前述共用資料夾的前述用戶端認證資訊而將前述用戶端常駐程式設定為常駐程序;前述網路HMI伺服端的前述程式係令前述至少一個處理器執行含有下述處理的處理:伺服端群資訊寫入處理,係當接收到前述伺服端群資訊請求信號時,直到規定有前述對象網路HMI伺服端所隸屬的前述伺服端群的全部伺服端名稱之前述伺服端群資訊寫入至前述共用資料夾為止,反覆進行前述伺服端群資訊的寫入;及用戶端認證資訊寫入處理,係當接收到前述用戶端認證資訊時,直到前述用戶端認證資訊寫入至前述共用資料夾為止,反覆進行前述用戶端認證資訊的寫入。
- 如請求項1至3中任一項所述之SCADA網路HMI系統, 其中,前述HMI用戶端的前述程式係令前述至少一個處理器執行含有下述處理的處理:容錯回復處理,係當有比目前所連接中的前述網路HMI伺服端高連接優先順位的前述網路HMI伺服端在工作時,將連線切換至前述高連接優先順位的前述網路HMI伺服端。
- 如請求項5所述之SCADA網路HMI系統,其中,前述HMI用戶端的前述程式係令前述至少一個處理器執行含有下述處理的處理:PLC資訊收集處理,係當執行前述容錯移轉處理或前述容錯回復處理時,以從前述可程式邏輯控制器收集切換連線前顯示在前述網路瀏覽器的前述HMI畫面中所配置的前述物件的狀態資訊的方式,對切換連線後的前述網路HMI伺服端提出請求。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2019/039967 WO2021070315A1 (ja) | 2019-10-10 | 2019-10-10 | Scadaウェブhmiシステム |
WOPCT/JP2019/039967 | 2019-10-10 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202116045A TW202116045A (zh) | 2021-04-16 |
TWI793420B true TWI793420B (zh) | 2023-02-21 |
Family
ID=75438112
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW109115713A TWI793420B (zh) | 2019-10-10 | 2020-05-12 | Scada網路hmi系統 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11720082B2 (zh) |
JP (1) | JP6888739B1 (zh) |
CN (1) | CN113039540B (zh) |
PH (1) | PH12021550876A1 (zh) |
TW (1) | TWI793420B (zh) |
WO (1) | WO2021070315A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023248339A1 (ja) * | 2022-06-21 | 2023-12-28 | 東芝三菱電機産業システム株式会社 | Scadaウェブhmiシステム |
IT202200015996A1 (it) * | 2022-07-28 | 2024-01-28 | Mtm S R L | Sistema di monitoraggio e controllo di produzione di componenti metallici di medie e grandi dimensioni |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6182139B1 (en) * | 1996-08-05 | 2001-01-30 | Resonate Inc. | Client-side resource-based load-balancing with delayed-resource-binding using TCP state migration to WWW server farm |
US20040172466A1 (en) * | 2003-02-25 | 2004-09-02 | Douglas Christopher Paul | Method and apparatus for monitoring a network |
US20050155043A1 (en) * | 2004-01-08 | 2005-07-14 | Schulz Kurt S. | Human-machine interface system and method for remotely monitoring and controlling a machine |
US20120124203A1 (en) * | 2010-11-15 | 2012-05-17 | Vardr Pty Ltd | Group Monitoring System and Method |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2216033C (en) * | 1997-11-19 | 2000-03-14 | Amsc Subsidiary Corporation | Satellite communication network system |
JP2006031063A (ja) * | 2004-07-12 | 2006-02-02 | Hitachi Ltd | 優先制御装置 |
US20080271305A1 (en) | 2005-01-19 | 2008-11-06 | Tosoh Smd Etna, Llc | Automated Sputtering Target Production |
JP4811364B2 (ja) * | 2007-07-02 | 2011-11-09 | 日本電気株式会社 | 端末装置、システム、端末制御方法および端末プログラム |
JP5352635B2 (ja) * | 2011-07-19 | 2013-11-27 | 日本電信電話株式会社 | 情報処理システム、情報処理方法およびプログラム |
CN103718566B (zh) * | 2012-05-18 | 2017-07-18 | 株式会社东芝 | 社会基础设施控制系统、控制方法、控制装置及服务器 |
US9870545B2 (en) | 2013-10-08 | 2018-01-16 | General Electric Company | System and method for providing user interface cards |
CN107548475B (zh) | 2015-03-27 | 2020-04-14 | 布勒有限公司 | 自适应跨设备控制和操纵系统及其对应的方法 |
JP6477319B2 (ja) | 2015-07-17 | 2019-03-06 | 東芝三菱電機産業システム株式会社 | プラント制御システム |
WO2018087864A1 (ja) * | 2016-11-10 | 2018-05-17 | 三菱電機株式会社 | 情報表示装置及び情報表示システム並びに表示画面制御方法 |
CN109936587B (zh) * | 2017-12-15 | 2022-02-22 | 北京京东乾石科技有限公司 | 控制方法、控制装置、电子设备及存储介质 |
-
2019
- 2019-10-10 US US16/958,761 patent/US11720082B2/en active Active
- 2019-10-10 WO PCT/JP2019/039967 patent/WO2021070315A1/ja active Application Filing
- 2019-10-10 CN CN201980005820.0A patent/CN113039540B/zh active Active
- 2019-10-10 JP JP2020513675A patent/JP6888739B1/ja active Active
-
2020
- 2020-05-12 TW TW109115713A patent/TWI793420B/zh active
-
2021
- 2021-04-20 PH PH12021550876A patent/PH12021550876A1/en unknown
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6182139B1 (en) * | 1996-08-05 | 2001-01-30 | Resonate Inc. | Client-side resource-based load-balancing with delayed-resource-binding using TCP state migration to WWW server farm |
US20040172466A1 (en) * | 2003-02-25 | 2004-09-02 | Douglas Christopher Paul | Method and apparatus for monitoring a network |
US20050155043A1 (en) * | 2004-01-08 | 2005-07-14 | Schulz Kurt S. | Human-machine interface system and method for remotely monitoring and controlling a machine |
US20120124203A1 (en) * | 2010-11-15 | 2012-05-17 | Vardr Pty Ltd | Group Monitoring System and Method |
Also Published As
Publication number | Publication date |
---|---|
US20230145367A1 (en) | 2023-05-11 |
CN113039540A (zh) | 2021-06-25 |
JP6888739B1 (ja) | 2021-06-16 |
US11720082B2 (en) | 2023-08-08 |
CN113039540B (zh) | 2023-11-07 |
PH12021550876A1 (en) | 2021-10-18 |
JPWO2021070315A1 (ja) | 2021-10-21 |
TW202116045A (zh) | 2021-04-16 |
WO2021070315A1 (ja) | 2021-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5624655B2 (ja) | 分散型サーバーシステムにおいてバックアップマネージャを転送するメッセージ | |
JP5335948B2 (ja) | 複数のコンピュータシステムによるプログラムの実行を管理するシステム | |
JP5459800B2 (ja) | サーバクラスタ、データ媒体および対応するサーバクラスタの初期化および管理データベースの操作リクエストを生成するための方法 | |
US11334408B2 (en) | Big data distributed processing and secure data transferring with fault handling | |
CN101689169B (zh) | 分布式操作系统中外部硬件装置的管理 | |
TWI793420B (zh) | Scada網路hmi系統 | |
WO2012050224A1 (ja) | コンピュータリソース制御システム | |
KR20160136489A (ko) | 클라우드 서비스를 위한 가상화 기반 자원 관리 방법 | |
CN109313577A (zh) | 分布式计算网络中的数据平面api | |
US8301773B2 (en) | Server management program, server management method, and server management apparatus | |
US11363029B2 (en) | Big data distributed processing and secure data transferring with hyper fencing | |
US11321430B2 (en) | Big data distributed processing and secure data transferring with obfuscation | |
WO2006054401A1 (ja) | フィールド機器及びこれを用いたシステム | |
US11314874B2 (en) | Big data distributed processing and secure data transferring with resource allocation and rebate | |
CN112714022A (zh) | 多套集群的控制处理方法、装置及计算机设备 | |
JP2007221364A (ja) | コントローラ、制御システム及び制御装置の拡張方法 | |
CN114579250A (zh) | 一种构建虚拟集群的方法、装置及存储介质 | |
JP5734421B2 (ja) | 管理情報生成方法、管理情報生成プログラムおよび管理情報生成装置 | |
JP4337747B2 (ja) | ハードウェア資源提供システム | |
JP4140014B2 (ja) | クライアントサーバシステムおよびクライアントサーバシステムのデータ処理方法 | |
CN112287017A (zh) | 一种基于OpenSSH的Impala集群可视化管理方法 | |
KR102038802B1 (ko) | 웹 페이지의 통합관리 방법 및 장치 | |
US20210209244A1 (en) | Big Data Distributed Processing and Secure Data Transferring with Fallback Control | |
JP2004054855A (ja) | 並列処理システム、サーバ、処理端末装置、並列処理方法、プログラム、及び、記録媒体 | |
Rao et al. | Analysis and Implementation of a Parallel Computing Cluster for Solving Computational Problems in Data Analytics |