The present disclosure relates to a SCADA web HMI client apparatus and a SCADA web HMI system.
A SCADA (Supervisory Control And Data Acquisition) is known as a mechanism supervising and controlling social infrastructure systems. The social infrastructure systems include a steel rolling system, a power transmission and transformation system, a water and sewage treatment system, a building management system, a road system, and the like.
The SCADA is a type of industrial control system, and performs system supervision, process control, and data collection by a computer. The SCADA requires quick responsiveness (real-time property) corresponding to processing performance of the system.
The SCADA generally includes the following sub-systems.
An HMI is a mechanism that presents data on a supervisory object apparatus to an operator, and enables the operator to supervise and control the supervisory object apparatus.
A supervisory control system includes a Programmable Logic Controller (PLC) and the like. The supervisory control system collects data on the supervisory object apparatus, and transmits a control command to the supervisory object apparatus.
A remote input/output apparatus is connected to a sensor installed in the supervisory object apparatus, converts a signal of the sensor into digital data, and transmits the digital data to the supervisory control system.
A communication base connects the supervisory control system and the remote input/output apparatus.
As an example of the SCADA HMI sub-systems, PTL 1 discloses a system comprising an HMI client apparatus and an HMI server apparatus. In the existing SCADA disclosed in PTL 1, the HMI server apparatus transmits data received from the PLC to the HMI client apparatus. The HMI client apparatus includes a computer main body, input devices such as a keyboard and a mouse, and a monitor. The HMI client apparatus displays one HMI screen on the monitor.
Note that the applicant is aware of the following literatures including the above-described literature, as literatures related to the present disclosure.
In the HMI sub-system according to PTL 1 described above, one HMI client apparatus is necessary to display one HMI screen. In terms of reduction in cost, installation space, failure rate, and communication load, it is desirable to simultaneously use a plurality of HMI screens by one HMI client apparatus.
As a result of study and research, the inventor of the present application has developed a browser-based SCADA HMI sub-system. This makes it possible to realize an HMI screen as a web application operating on a web browser. Accordingly, a plurality of web browsers can be executed on one HMI client apparatus, and the HMI screen can be displayed on each of the web browsers.
Application of such a browser-based SCADA HMI sub-system to a production line of an industrial system is studied. A large-scale plant such as the production line of the industrial system is divided into a plurality of sections, and each of the sections includes an operation room (pulpit). An HMI client apparatus that executes the web browser drawing the HMI screen is disposed in each of the operation rooms. An HMI server apparatus that executes a web server communicating with each of the web browsers is disposed in an electric room.
On the web browser of the HMI client apparatus in a first section, a dedicated HMI screen relating to facilities of the first section should be operable. And, on the web browser of the HMI client apparatus in a second section, a dedicated HMI screen relating to facilities of the second section should be operable. In other words, operation authority in an HMI screen unit is basically set to each of the web browsers. This is because there are several thousands of operation signals in the large-scale plant, and it is not possible to manage the operation authority in an operation part unit on the HMI screen.
However, there is a case where an intermediate facility is provided between the first section and the second section. In such a case, a common HMI screen common to a delivery-side facility of the first section, the intermediate facility, and an entry-side facility of the second section is necessary. The common HMI screen is used by the HMI client apparatus in the first section and by the HMI client apparatus in the second section.
In this case, an operation part relating to the facility of the first section on the common HMI screen can be operated from the first section, but an operation part relating to the facility of the second section must not be operated from the first section. In contrast, the operation part relating to the facility of the second section on the common HMI screen can be operated from the second section, but the operation part relating to the facility of the first section must not be operated from the second section. An operation part relating to the intermediate facility may be operated from both of the sections. Accordingly, as for the common HMI screen, definition of the operation authority in the HMI screen unit is insufficient, and it is necessary to impart appropriate operation authority in an operation part unit.
The present invention is to solve the above-described issues, and an object of the present invention is to provide a SCADA web HMI client apparatus and a SCADA web HMI system in which operation authority in an HMI screen unit can be set to each of web browsers in principle, and operation authority of a specific operation part on the HMI screen can be exceptionally set to each of the web browsers in an operation part unit.
A first aspect relates to a SCADA web HMI client apparatus.
The SCADA web HMI client apparatus executes at least one web browser communicating with a web server.
The SCADA web HMI client apparatus comprises a processor, a memory, and a monitor.
The memory stores image data on an HMI screen to supervise an industrial plant, screen operation authority information, and exception information that are received from the web server. Here, the screen operation authority information defines operation permission/prohibition of the HMI screen for each web browser. The exception information defines operation permission/prohibition of each of specific operation parts on the HMI screen for each web browser. The specific operation parts are a part of a plurality of operation parts on the HMI screen.
The processor is configured to execute the web browser displayed on the monitor and to execute screen drawing processing.
In the screen drawing processing, operation permission/prohibition defined in the exception information is preferentially applied to each of the specific operation parts on the HMI screen, operation permission/prohibition (non-permission) defined in the screen operation authority information is applied to each of operation parts other than the specific operation parts on the HMI screen, and the HMI screen is drawn on the web browser.
A second aspect relates to a SCADA web HMI system.
The SCADA web HMI system comprises an HMI server apparatus configured to execute a web server; and an HMI client apparatus configured to execute at least one web browser communicating with the web server.
The HMI server apparatus includes a server processor and a server memory.
The server memory stores: image data on an HMI screen to supervise an industrial plant; screen operation authority information; and exception information. Here, the screen operation authority information defines operation permission/prohibition (non-permission) of the HMI screen for each web browser. The exception information defines operation permission/prohibition (non-permission) of each of specific operation parts on the HMI screen for each web browser. The specific operation parts are a part of a plurality of operation parts on the HMI screen.
The server processor is configured to execute the web server, the web server being capable of transmitting the image data, the screen operation authority information, and the exception information to the web browser.
The HMI client apparatus includes a client processor, a client memory, and a monitor.
The client memory stores the image data, the screen operation authority information, and the exception information received from the web server.
The client processor is configurated to execute the web browser displayed on the monitor and to execute screen drawing processing.
In the screen drawing processing, operation permission/prohibition defined in the exception information is preferentially applied to each of the specific operation parts on the HMI screen, operation permission/prohibition defined in the screen operation authority information is applied to each of operation parts other than the specific operation parts among the plurality of operation parts on the HMI screen, and the HMI screen is drawn on the web browser.
According to the present disclosure, it is possible to set the operation authority to each of the web browsers in the HMI screen unit in principle. As an exception, the operation authority of the specific operation part(s) on the HMI screen can be set to each of the web browsers in the operation part unit. Accordingly, it is possible to efficiently manage the operation authority of each of the web browsers in the HMI screen unit, and to exceptionally manage the operation authority of each of the web browsers in the operation part unit as necessary.
An embodiment of the present invention is described in detail below with reference to drawings. Note that elements common to the drawings are denoted by the same reference numerals, and repetitive descriptions are omitted.
An example of a production line of an industrial system that is an application target of a SCADA web HMI system is described with reference to
A metal material to be rolled 1 is rolled while being processed by the hot rolling line, and a size and a temperature of the material are controlled to respective desired target values. The hot rolling line includes a heating furnace 2, a roughing mill 3, an intermediate facility 4, a finishing mill 5, a water-cooling apparatus 6, a coiler 7, and a roller table (not illustrated) conveying the material to be rolled 1 among these apparatuses.
The heating furnace 2 increases the temperature of the material to be rolled 1. The material to be rolled 1 increased in temperature is extracted onto the roller table. When delivered from the heating furnace 2, the material to be rolled 1 is a shaped metal block called a slab.
The roughing mill 3 is provided on a downstream of the heating furnace 2. The roughing mill 3 includes a single rolling stand or a plurality of rolling stands. The roughing mill 3 rolls the material to be rolled 1 a plurality of times in a forward direction (from upstream toward downstream) and an opposite direction (from downstream toward upstream).
The intermediate facility 4 is provided on the downstream of the roughing mill 3. The intermediate facility 4 includes an edge heater, a bar heater, a coil box, and the like.
The finishing mill 5 is provided on the downstream of the intermediate facility 4. The finishing mill 5 includes a plurality of rolling stands, and rolls the material to be rolled 1 in one direction from the upstream toward the downstream. Final quality of the material to be rolled 1 relating to the size such as a plate thickness and a plate width is determined by the finishing rolling.
The water-cooling apparatus 6 is provided on the downstream of the finishing mill 5. The water-cooling apparatus 6 injects water to the rolled material to be rolled 1. The material to be rolled 1 is cooled to a target temperature by the water-cooling apparatus 6.
The coiler 7 is provided on the downstream of the water-cooling apparatus 6. The material to be rolled 1 cooled by the water-cooling apparatus 6 is coiled by the coiler 7 while being guided downward by a pinch roll, and thereby turning into a coil-shaped product.
The above-described apparatuses (2 to 7) are connected to a PLC 8 through an electric motor and a drive apparatus. The PLC 8 is connected to a computer 10 disposed in a computer room through a control LAN 9. The computer 10 calculates setting values of the respective apparatuses (2 to 7) based on a rolling plan for the material to be rolled 1, and transmits the setting values to the PLC 8. The PLC 8 controls the apparatuses (2 to 7) based on the respective setting values.
Further, the PLC 8 is connected to an HMI server apparatus 12 disposed in an electric room through an information LAN 11 such as Ethernet (R). The PLC 8 periodically transmits a packet including block data to the information LAN 11 by multicast or broadcast. The block data is a set of PLC signals. One piece of block data includes several tens to several hundred PLC signals. The PLC signals include input/output signals (including actuator control signals and sensor detection signals) and alarm signals. Further, the PLC 8 receives control signals for the apparatuses from the HMI server apparatus 12.
A large-scale plant such as the above-described hot rolling line is divided into a plurality of sections. Each of the sections includes an operation room (pulpit). An RM (Roughing Mills) pulpit 13 is an operation room for a section including the roughing mill 3. An FM (Finishing Mills) pulpit 14 is an operation room for a section including the finishing mill 5. A DC (Down Coiler) pulpit 15 is an operation room for a section including the coiler 7.
Each of the operation rooms includes an HMI client apparatus 16 in which an HMI screen is operable on a web browser. On a web browser of an HMI client apparatus 16a in the RM pulpit 13, a dedicated HMI screen for the roughing mill 3 can be operated. On a web browser of an HMI client apparatus 16b in the FM pulpit 14, a dedicated HMI screen for the finishing mill 5 can be operated. On a web browser of an HMI client apparatus 16c in the DC pulpit 15, a dedicated HMI screen for the coiler 7 can be operated. In other words, operation authority in an HMI screen unit is basically set to each of the web browsers. This is because there are several thousands of operation signals in the large-scale plant, and it is not possible to manage the operation authority in an operation part unit on the HMI screen. Note that, in the present specification, in a case where the HMI client apparatuses (16a, 16b, and 16c) are not distinguished from one another, each of the HMI client apparatuses is simply referred to as the HMI client apparatus 16.
The intermediate facility 4 is provide between the roughing mill 3 and the finishing mill 5. In such a case, a common HMI screen 17 as exemplified in
In this case, an operation part 18 for the roughing mill 3 on the common HMI screen 17 can be operated from the RM pulpit 13, but an operation part 19 for the finishing mill 5 must not be operated from the RM pulpit 13. In contrast, the operation part 19 for the finishing mill 5 on the common HMI screen 17 can be operated from the FM pulpit 14, but the operation part 18 for the roughing mill 3 must not be operated from the FM pulpit 14. An operation part 20 for the intermediate facility 4 may be operated from both pulpits. For example, a coil box as the intermediate facility 4 is operated for coiling from the RM pulpit 13, and is operated for payout from the FM pulpit 14. Therefore, as for the common HMI screen 17, definition of operation authority in the HMI screen unit is insufficient, and it is necessary to impart appropriate operation authority in the operation part unit.
Thus, in the SCADA web HMI system according to the present embodiment, operation authority in the HMI screen unit can be set to each of the web browsers in principle, and operation authority of a specific operation part on the HMI screen can be exceptionally set to each of the web browsers in the operation part unit.
The SCADA web HMI system according to the present embodiment is described with reference to
The HMI server apparatus 12 illustrated in
The PLC signal processing unit 21 transmits the PLC signals periodically received from the PLC 8, to each of web browsers 36 (each of web browser processing units 31) through the web server processing unit 22. Further, the PLC signal processing unit 21 transmits the control signals received from the web browsers 36 through the web server processing unit 22, to the PLC 8.
The web server processing unit 22 can communicate with the web browsers 36 (web browser processing units 31) of the respective HMI client apparatuses 16 by using HTTP (Hypertext Transfer Protocol), HTTPS (Hypertext Transfer Protocol Secure), and WebSocket. The web server processing unit 22 transmits contents in response to a request from each of the web browsers 36 (each of web browser processing units 31). The contents include an HTML file (not illustrated), an SVG (Scalable Vector Graphics) file 25 that is image data for each HMI screen (HMI Screen), a parts library 26 in which operation for each type of part is described, an operation authority table 27, and an exception table 28.
The parts library 26 includes a set of scripts in which operation for each type of part is described. Each of the scripts is a JavaScript (R) program defined for each type of part. Each of the scripts is given a parameter value (for example, presence/absence of operation authority defined in operation authority table 27 and exception table 28) as necessary, and can be executed on each of the web browsers 36.
The operation authority table 27 includes screen operation authority information defining operation permission/prohibition (whether operation authority is given (whether operation is permitted) and whether operation authority is not given (whether operation is not permitted)) of each of HMI screens 37 of the web browsers 36.
As described above, the operation authority is set in the HMI screen unit as defined in the operation authority table 27 in principle. However, as for the specific HMI screen (common HMI screen 17 (
In other words, in the exception table 28, it is defined that only the operation part 18 (1_PL) for the roughing mill 3 and the operation part 20 (2_PL) for the intermediate facility 4 are operable from the web browser 36a (RM1_1) in the RM pulpit, and only the operation part 19 (3_PL) for the finishing mill 5 and the operation part 20 (2_PL) for the intermediate facility 4 are operable from the web browser 36b (FM1_1) in the FM pulpit. Note that operation authority of the operation part not defined (including blank) in the exception table 28 follows definition in the operation authority table 27.
Referring back to
The web browser processing units 31 are performed by the respective web browsers 36. Each of the web browsers 36 draws the HMI screen 37 to supervise and control the industrial plant. The HMI screen 37 is switched to another HMI screen 37 by operation by an operator. A plurality of parts are arranged in the HMI screen 37. The parts include, for example, operation parts to transmit the control signal to the PLC 8 in response to operation by the operator, display parts changed in display state (numerical value, characters, color, and shape) in response to the received PLC signal, and screen transition parts to switch the HMI screen to another HMI screen.
At startup, each of the web browsers 36 (each of web browser processing units 31) receives the HTML file, the SVG file 25, the parts library 26, the operation authority table 27, the exception table 28, and the like described above from the web server processing unit 22, and stores these data in the memory 72. Each of the web browsers 36 draws the HMI screen 37 in which the parts are arranged, based on these data. Further, at startup, each of the web browsers 36 is executed in a mode not using a cache in order to constantly acquire latest files from the web server processing unit 22.
Each of the web browser processing units 31 reads the operation authority table 27 received from the HMI server apparatus 12, and determines operation permission/prohibition (non-permission) (presence/absence of operation authority) of each of the HMI screens 37 of the respective web browsers 36. Further, each of the web browser processing units 31 reads the exception table 28 received from the HMI server apparatus 12, and determines operation permission/prohibition (non-permission) of each of specific operation buttons on the HMI screen 37 (common HMI screen 17) of the corresponding web browser 36.
Further, each of the web browser processing units 31 performs screen drawing processing 32. In the screen drawing processing 32, operation permission/prohibition (non-permission) determined in the exception table 28 is preferentially applied to each of the specific operation parts in the HMI screen 37, operation permission/prohibition (non-permission) defined in the operation authority table 27 is applied to each of operation parts other than the specific operation parts among the plurality of operation parts in the HMI screen 37, and the HMI screen 37 is then drawn on each of the web browsers 36.
More specifically, the web browser processing unit 31 executes the script for each type of part included in the above-described parts library 26, based on the type of each of the parts arranged in the HMI screen 37. Here, among the types of part, operation parts changed in operation based on presence/absence of the operation authority (parameter value) passed to the script are described.
In a case where the web browser 36 is not permitted to operate the HMI screen 37 in the operation authority table 27, all of the operation parts arranged in the HMI screen 37 of the web browser 36 are drawn in an inoperable state in principle. In a case where the web browser 36 is permitted to operate the HMI screen 37 in the operation authority table 27, all of the operation parts arranged in the HMI screen 37 of the web browser 36 are drawn in an operable state in principle.
As an exception, in a case where operation authority of each of the specific operation parts in the specific HMI screen 37 (common HMI screen 17) is defined in the exception table 28, the operation authority defined in the exception table 28 is preferentially applied to each of the specific operation parts. As for each of the operation parts not defined in the exception table 28, operation authority defined in the operation authority table 27 is applied.
In the inoperable state, each of the operation parts does not accept execution operation (for example, mouse click) by the operator. In the operable state, each of the operation parts accepts the execution operation by the operator, and transmits a control signal corresponding to the operation to the HMI server apparatus 12.
Drawing of the HMI screen 37 on each of the web browsers 36 based on presence/absence of operation authority is specifically described with reference to
In step S100 in
In step S110, the web browser 36 acquires contents from the HMI server apparatus 12. The contents include the HTML file, the SVG file 25, the parts library 26, the operation authority table 27, and the exception table 28 described above. Note that it is sufficient to acquire the parts library 26, the operation authority table 27, and the exception table 28 only at startup of the web browser 36.
In steps S120 to S220, the web browser processing unit 31 draws the designated HMI screen 37 on the web browser 36 based on the operation authority table 27 and the exception table 28.
The web browser processing unit 31 determines whether the web browser 36 has operation authority of the HMI screen 37, with reference to the operation authority table 27 (step S120). In a case where the web browser 36 has the operation authority, it is determined whether exception information on the HMI screen 37 is present in the exception table 28 (step S130). In a case where no exception information is present, the web browser processing unit 31 draws all of the operation parts in the HMI screen 37 in the operable state (step S140).
As an example of step S140, an example in which the HMI screen 37a (G10) is displayed on the web browser 36a (RM1_1) is described. In the operation authority table 27 in
In contrast, in a case where it is determined in step S130 that the exception information on the HMI screen 37 is present in the exception table 28, processing in step S150 is performed. In step S150, the web browser processing unit 31 determines operation permission/prohibition of each of the specific operation parts on the HMI screen 37. Each of the specific operation parts, operation of which is permitted, is drawn in the operable state (step S160). In contrast, each of the specific operation parts, operation of which is not permitted, is drawn in the inoperable state (step S170). Note that each of the operation parts not defined in the exception table 28 is drawn in the operable state based on definition in the operation authority table 27.
Referring back to step S120 in
As an example of step S200, an example in which the HMI screen 37a (G12) is displayed on the web browser 36a (RM1_1) is described. In the operation authority table 27 in
In contrast, in a case where it is determined in step S180 that the exception information on the HMI screen 37 is present in the exception table 28, processing in step S190 is performed. In step S190, the web browser processing unit 31 determines operation permission/prohibition (non-permission) of each of the specific operation parts on the HMI screen 37. Each of the specific operation parts, operation of which is permitted, is drawn in the operable state (step S210). In contrast, each of the specific operation parts, operation of which is not permitted, is drawn in the inoperable state (step S220). Note that each of the operation parts not defined in the exception table 28 is drawn in the inoperable state based on definition in the operation authority table 27.
For example, in the operation authority table 27 in
As described above, in the case where the web browser 36 is permitted to operate the HMI screen 37 in the operation authority table 27 and the web browser 36 is not permitted to operate the specific operation parts on the HMI screen 37 in the exception table 28, the web browser processing unit 31 draws the specific operation parts in the inoperable state on the web browser 36, and draws the operation parts other than the specific operation parts in the operable state on the web browser 36.
Further, in a case where the web browser 36 is not permitted to operate the HMI screen 37 in the operation authority table 27 and where the web browser 36 is permitted to operate the specific operation parts on the HMI screen 37 in the exception table 28, the web browser processing unit 31 draws the specific operation parts in the operable state on the web browser 36, and draws the operation parts other than the specific operation parts in the inoperable state on the web browser 36.
In the above-described flowchart in
As described above, in the SCADA web HMI system according to the present embodiment, the operation authority in the HMI screen unit can be set to each of the web browsers in principle. Accordingly, when the dedicated HMI screen is created for each of the sections and operation authority of the dedicated HMI screen is set to the web browser of each of the sections, it is possible to efficiently manage the operation authority of several thousands of operation signals in the large-scale plant, in the of HMI screen unit.
Further, operation authority of the specific operation parts on the HMI screen can be exceptionally set to each of the web browsers 36 in the operation part unit. Accordingly, in a case where the same HMI screen is displayed on the web browser of a first section and the web browser of a second section, different operation authority of the specific operation parts can be set to the web browser of the first section and the web browser of the second section. Accordingly, one HMI screen can be shared with appropriate operation authority corresponding to each of the sections.
The processing of the above-described HMI server apparatus 12 is realized by a processing circuit. The processing circuit includes the processor 61, the memory 62, and a network interface 63 that are connected to one another. The processor 61 realizes the functions of the HMI server apparatus 12 by executing various kinds of programs stored in the memory 62. The memory 62 includes a main storage device and an auxiliary storage device. The memory 62 previously stores the HTML file, the SVG file 25, the parts library 26, the operation authority table 27, and the exception table 28 described above. The network interface 63 is communicably connected to other apparatus(es) in the same network through the information LAN 11.
The processing of the above-described HMI client apparatus 16 is realized by a processing circuit. The processing circuit includes the processor 71, the memory 72, a network interface 73, an input interface 74, and the monitor 35 that are connected to one another. The processor 71 realizes the functions of the HMI client apparatus 16 by executing various kinds of programs stored in the memory 72. The memory 72 includes a main storage device and an auxiliary storage device. The network interface 73 is communicably connected to other apparatus(es) in the same network through the information LAN 11. The input interface 74 is a set of input devices including a keyboard, a mouse, a touch panel, and the like.
Although the embodiment of the present invention is described above, the present invention is not limited to the above-described embodiment, and can be variously modified and implemented without departing from the spirit of the present invention. When numerals of the number, the quantity, the amount, the range, and the like of each of the elements are mentioned in the above-described embodiment, the present invention is not limited to the mentioned numerals except for the case of being particularly clearly mentioned and the case of being obviously specified to the numerals in principle. Further, the structure and the like described in the above-described embodiment are not necessarily essential for the present invention except for the case of being particularly clearly mentioned and the case of being obviously specified to the structure and the like in principle.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/JP2021/048631 | 12/27/2021 | WO |