WO2022201678A1 - 表示器、表示器の制御方法、情報処理プログラム、および記録媒体 - Google Patents

表示器、表示器の制御方法、情報処理プログラム、および記録媒体 Download PDF

Info

Publication number
WO2022201678A1
WO2022201678A1 PCT/JP2021/046860 JP2021046860W WO2022201678A1 WO 2022201678 A1 WO2022201678 A1 WO 2022201678A1 JP 2021046860 W JP2021046860 W JP 2021046860W WO 2022201678 A1 WO2022201678 A1 WO 2022201678A1
Authority
WO
WIPO (PCT)
Prior art keywords
variable
character string
display
replacement
post
Prior art date
Application number
PCT/JP2021/046860
Other languages
English (en)
French (fr)
Inventor
成彦 兼重
博巳 石原
大輔 ▲高▼橋
Original Assignee
オムロン株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by オムロン株式会社 filed Critical オムロン株式会社
Publication of WO2022201678A1 publication Critical patent/WO2022201678A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring

Definitions

  • the present invention relates to a display or the like that is communicably connected to a control device.
  • HMI Human Machine Interface
  • PLC programmable logic controller
  • the above-described conventional technology has the problem that it is not possible to display a sentence that includes a pre-stored fixed character string and a variable character string whose content changes according to the situation.
  • An object of one aspect of the present invention is to be able to display a sentence containing a pre-stored fixed character string and a variable character string whose contents change depending on the situation.
  • a display device is a display device communicably connected to a control device, and is a sentence including a variable character string and a fixed character string.
  • a storage unit that stores a message in advance, an acquisition unit that acquires the value of a predetermined variable updated by the control device, and a replacement that is a character string obtained by replacing the variable character string with the value acquired by the acquisition unit.
  • a display control unit that displays a post-replacement message that is a sentence including the post-character string and the fixed character string.
  • a control method provides a memory that is communicatively connected to a control device and stores in advance a pre-replacement message that is a sentence containing a variable character string and a fixed character string.
  • a control method for a display unit comprising: an acquisition step of acquiring a value of a predetermined variable updated by the control device; and a character obtained by replacing the variable character string with the value acquired in the acquisition step.
  • FIG. 2 is a block diagram showing a configuration of main parts such as an HMI according to Embodiment 1 of the present invention
  • 2 is a diagram showing an overall overview of a control system including the HMI of FIG. 1
  • FIG. 3 is a diagram illustrating synchronization of variable values between the HMI of FIG. 1 and the PLC of FIG. 2
  • FIG. 3 is a diagram illustrating an example of work for a user to set a condition for displaying a post-replacement message, a pre-replacement message, a specified variable, and a display rule using the development support device shown in FIG. 2
  • FIG. 2 is a diagram for explaining the outline of the flow of processing executed by the HMI in FIG.
  • FIG. 2 is a flow diagram showing an example of processing executed by the HMI of FIG. 1;
  • an HMI Human Machine Interface
  • PLC programmable logic controller
  • FIG. 2 is a diagram showing an overall overview of the control system 1 including the HMI 10.
  • the control system 1 is a master-slave control system including a PLC (Programmable Logic Controller) 20 as a master device and one or more slave devices 40 connected to the master device via a network (field network 60).
  • PLC 20 is called a “master device” in the sense that it manages data transmission via field network 60 .
  • any one PLC 20 may become the master device and the remaining PLCs 20 may become slave devices.
  • a control subject different from both the PLC 20 and the slave device 40 may be the master device. That is, the "master device” and the "slave device” are defined by focusing on the control function of data transmission on the field network 60, and what kind of information is transmitted and received between each device is It is not particularly limited.
  • the PLC 20 controls the entire control system 1. Specifically, the PLC 20 acquires information from the device 50, which is an input device such as a sensor, via the slave device 40 as input data. PLC20 performs the arithmetic processing using the acquired input data according to the user program incorporated previously. The PLC 20 executes the arithmetic processing to determine the control content for the device 50, which is an output device such as an actuator, and outputs control data corresponding to the control content to the device 50 via the slave device 40. do.
  • the field network 60 transmits various data received by the PLC 20 or transmitted by the PLC 20.
  • the field network 60 is, for example, EtherCAT (registered trademark), PROFINET (registered trademark), MECHATROLINK (registered trademark)-III, Powerlink, SERCOS (registered trademark)-III, and CIP Motion.
  • the field network 60 may be, for example, EtherNet/IP (registered trademark), DeviceNet, CompoNet (registered trademark), or the like.
  • the slave device 40 is a slave device in a network (field network 60) with the PLC 20 as a master device, and is a device communication management unit such as a communication coupler that manages communication with the device 50, for example.
  • Slave device 40 may be a servo driver that is directly connected to field network 60 .
  • the device 50 is an input device such as a sensor, and an output device such as an actuator.
  • One or more devices 50 are connected to the slave device 40 via communication cables.
  • the development support device 30 connects to the PLC 20 via a communication cable such as a USB (Universal Serial Bus) cable.
  • the development support device 30 is an information processing device for generating user programs executed by the PLC 20 and various setting information for the control system 1 .
  • the development support device 30 provides, for example, a development environment for the PLC 20, and provides an environment for the user to create (create/edit) a user program according to control purposes (for example, target lines and processes). .
  • a user creates a program code of a control program (user program) to be executed by the PLC 20 using a development environment (programming tool) provided by the development support device 30 .
  • the development support device 30 may have a debug function and a simulation function in order to assist the user in creating and editing a control program to be executed by the PLC 20 .
  • the development support device 30 may calculate and set the timing of acquisition of the state value by the PLC 20 (input refresh) and the timing of the update of the output value by the PLC 20 (output refresh), for example.
  • the development support device 30 may monitor the operating state of the PLC 20, the values of various data, and the like.
  • the development support device 30 may be a device that provides an integrated development environment that supports PLC 20 programming, configuration (configuration setting), debugging, maintenance, and monitoring functions, as well as 3D motion simulation.
  • the development support device 30 may also set and adjust various parameters for the slave device 40 .
  • the development support device 30 is typically composed of a general-purpose computer.
  • the information processing program executed by the development support device 30 may be distributed by being stored in a CD-ROM (Compact Disk-Read Only Memory) (not shown).
  • the program stored in this CD-ROM is read by a CD-ROM drive (not shown) and stored in the hard disk of the development support device 30 or the like.
  • the development support device 30 may be configured to download a program similar to the program stored in the DVD-ROM from a host computer or the like through a network.
  • the HMI 10 is connected to the PLC 20 via a communication cable.
  • the HMI 10 is a means for exchanging information between humans and machines. It is a means to Regarding the HMI 10, means for humans to give instructions to machines include switches, buttons, handles, dials, pedals, remote controllers, microphones, keyboards, mice, and the like.
  • liquid crystal screens, meters, lamps, speakers, and the like are included as means for conveying information about the current state, results, etc. of the machine to humans.
  • the HMI 10 includes a display unit, an operation unit, a communication unit that communicates with the PLC 20, and a control unit that controls each unit.
  • the HMI 10 can change various settings of the control system 1 (for example, the PLC 20) according to user operations on the operation unit.
  • the display unit of the HMI 10 displays predetermined information about the control system 1 .
  • the HMI 10 may be a programmable display.
  • the HMI 10 may change various settings of the communicatively connected PLC 20 and may display predetermined information of the PLC 20 according to an operation received from the user.
  • the HMI 10 may notify the PLC 20 of the instructions received from the user.
  • the HMI 10 may present the data and notification received from the PLC 20 to the user by outputting the data and notification from its own terminal (displaying them on the display unit or outputting an alarm or the like by voice).
  • the HMI 10 is synchronized with the PLC 20. Specifically, the HMI 10 changes various data corresponding to its own device in response to various data changes in the PLC 20. That is, the HMI 10 communicates with the PLC 20 to acquire the values of the variables stored in the PLC storage unit 210 of the PLC 20, and the corresponding variables (synchronization variables) stored in the synchronization variable table 121 of its own device. The value is updated with the value of the variable obtained from the PLC20.
  • the HMI 10 repeatedly executes the updating process as described above at predetermined time intervals (periods) to store the values of the variables (synchronization variables) stored in the synchronization variable table 121 in the PLC storage unit 210 of the PLC 20. Synchronize with the value of the stored variable.
  • the HMI 10 may execute the updating process as described above for each predetermined event such as a change in the value of a variable stored in the PLC storage unit 210 . Details of synchronization of variable values between the HMI 10 and the PLC 20 will be described later with reference to FIG.
  • the development support device 30 is connected to the HMI 10 via a communication cable, for example a USB cable, and reads "pre-replacement message MSB, condition COE (display condition), designated variable VAD, display rule RUE, etc.” set by the user. , to the HMI 10 .
  • a communication cable for example a USB cable
  • pre-replacement message MSB display condition
  • VAD display condition
  • VAD display rule
  • RUE display rule RUE
  • the details of the user's operation of setting the condition COE, the pre-replacement message MSB, the specified variable VAD, the display rule RUE, etc., using the development support device 30 will be described later with reference to FIG.
  • the HMI 10 stores the "pre-replacement message MSB, condition COE, specified variable VAD, display rule RUE, etc.” notified from the development support device 30 in the storage unit 120, and replaces them with the values of the variables acquired from the PLC 20. Generate a post-message MSA. Specifically, the HMI 10 generates the post-replacement character string CSA from the value of the specified variable VAD according to the display rule RUE. Then, the HMI 10 replaces the variable character string CSV of the pre-replacement message MSB with the generated post-replacement character string CSA to generate the post-replacement message MSA. The HMI 10 displays the generated post-replacement message MSA (eg, alarm message).
  • the HMI 10 displays the generated post-replacement message MSA (eg, alarm message).
  • the HMI 10 is a display communicably connected to the PLC 20 (control device).
  • the HMI 10 includes a storage section 120 , an acquisition section 110 and a display control section 150 .
  • the storage unit 120 (especially, the pre-replacement message table 125) stores in advance a "pre-replacement message MSB, which is a sentence containing a variable character string CSV and a fixed character string CSF".
  • Acquisition unit 110 acquires the value of a predetermined variable (variable corresponding to designated variable VAD) updated by PLC 20 .
  • the display control unit 150 generates a replacement character string CSA, which is a character string obtained by replacing the variable character string CSV with the “value of a predetermined variable (a variable corresponding to the designated variable VAD)” acquired by the acquisition unit 110, and a fixed character string CSA. Display the replacement message MSA, which is a sentence containing the columns CSF and CSF.
  • the "predetermined variable (variable corresponding to the designated variable VAD)" stored in the PLC storage unit 210 of the PLC 20 and whose value is updated by the PLC 20 may be referred to as the "designated variable VAD".
  • the designated variable VAD is stored in the PLC storage unit 210 of the PLC 20 and the storage unit 120 of the HMI 10 (in particular, the synchronization variable table 121).
  • the acquisition unit 110 acquires the value of the specified variable VAD stored in the PLC storage unit 210 of the PLC 20, and updates the value of the specified variable VAD stored in the synchronization variable table 121 of the storage unit 120 with the acquired value. do. Acquisition unit 110 executes this update process periodically or at timing when the value of designated variable VAD stored in PLC storage unit 210 is changed. Thereby, the value of the specified variable VAD stored in the synchronization variable table 121 of the storage unit 120 is synchronized with the value of the specified variable VAD stored in the PLC storage unit 210 of the PLC 20 .
  • the HMI 10 pre-stores the "pre-replacement message MSB, which is a sentence containing the variable character string CSV and the fixed character string CSF" in the storage unit 120 (in particular, the pre-replacement message table 125).
  • the HMI 10 obtains the updated value.
  • the HMI 10 displays "a post-replacement message MSA, which is a sentence including a fixed character string CSF and a post-replacement character string CSA, which is a character string obtained by replacing the variable character string CSV with the acquired post-update value". do.
  • the HMI 10 "prestores a fixed character string (that is, a fixed character string CSF) and a variable character string (that is, a post-replacement character string CSA) that changes depending on the situation.
  • a fixed character string that is, a fixed character string CSF
  • a variable character string that is, a post-replacement character string CSA
  • the HMI 10 uses the value of the predetermined variable (variable corresponding to the specified variable VAD) obtained from the PLC 20 based on the pre-replacement message MSB stored in advance in the storage unit 120 to generate the post-replacement message MSA. indicate.
  • the HMI 10 is configured such that "the server obtains the value of a predetermined variable from the PLC 20 (control device), the server generates a message to be displayed on the display, and the display displays the message obtained from the server.”
  • the following effects are obtained in comparison with . That is, in comparison with the configuration described above, the HMI 10 changes the value of the predetermined variable in the PLC 20 according to the change in the value of the predetermined variable. There is an effect that the MSA can be immediately notified to the user.
  • the storage unit 120 further stores in advance the "condition COE that is the display condition of the post-replacement message MSA" set by the user. stored.
  • the HMI 10 has a determination section 130 that determines whether or not the condition COE is satisfied. When the determination unit 130 determines that the condition COE is satisfied, the display control unit 150 of the HMI 10 displays the post-replacement message MSA.
  • the HMI 10 displays the post-replacement message MSA when it determines that "the condition COE set by the user for the HMI 10 to display a message" is satisfied.
  • the post-replacement message MSA is generated from the pre-replacement message MSB. Therefore, in the display condition information 123, the "condition COE that is the display condition of the post-replacement message MSA" is defined for each pre-replacement message MSB.
  • the HMI 10 determines that the condition COE defined for a certain pre-replacement message MSB is satisfied, it generates a post-replacement message MSA corresponding to the certain pre-replacement message MSB. Then, the HMI 10 displays the generated post-replacement message MSA on the display section of its own device.
  • the HMI 10 stores "preliminarily stored fixed character strings and variable character strings whose contents change depending on the situation.”
  • After-replacement message MSA which is a sentence including ",” can be displayed.
  • condition COE may be that the PLC 20 has detected a predetermined state.
  • the HMI 10 displays the post-replacement message MSA when the PLC 20 detects a predetermined state.
  • the HMI 10 displays the post-replacement message MSA, which is a single sentence including a character string specifying the object in which the abnormal state was detected as the post-replacement character string CSA.
  • the HMI 10 outputs a post-replacement message MSA, which is a sentence containing a pre-stored fixed character string and a variable character string whose contents change depending on the situation. ” can be displayed.
  • the storage unit 120 further stores in advance information (specifically, the display setting information 124) specifying the "specified variable VAD set by the user".
  • the HMI 10 acquires the value (in particular, the updated value) of "the specified variable VAD specified by the display setting information 124 stored in the storage unit 120".
  • the HMI 10 displays "a post-replacement message MSA that is a sentence including 'a post-replacement character string CSA obtained by replacing the variable character string CSV with the acquired value of the designated variable VAD' and a fixed character string CSF". Then, the “specified variable VAD specified by the display setting information 124 stored in the storage unit 120” is set by the user.
  • the user can cause the HMI 10 to display the value of the specified variable VAD desired by the user by changing the "display setting information 124 stored in the storage unit 120". That is, the user can change the content of the information that the HMI 10 displays in the post-replacement message MSA message. In other words, the user can cause the HMI 10 to display the information desired by the user (the value of the specified variable VAD) as the post-substitution character string CSA.
  • the HMI 10 displays the "post-replacement message MSA, which is a sentence including the post-replacement character string CSA obtained by replacing the variable character string CSV with the value of the 'specified variable VAD set by the user' and the fixed character string CSF". There is an effect that it can be done.
  • the storage unit 120 further stores the display rule RUE.
  • the display rule RUE is stored as part of the display setting information 124.
  • the display rule RUE is a display rule set by the user.
  • the display rule RUE is a display rule for displaying "the value of the predetermined variable (variable corresponding to the designated variable VAD)" acquired by the acquisition unit 110 as the post-replacement character string CSA.
  • the display control unit 150 displays the “value of the predetermined variable (variable corresponding to the designated variable VAD)” acquired by the acquisition unit 110 as the post-replacement character string CSA according to the display rule RUE.
  • the HMI 10 generates the post-replacement character string CSA from the value of the designated variable VAD according to the "display rule RUE set by the user". Then, the HMI 10 displays "a post-replacement message MSA including the generated post-replacement character string CSA and the fixed character string CSF".
  • the display rule RUE specifies the number of bases to be used when displaying a numerical value, the minimum number of digits in the integer part of the numerical value to be displayed, the number of digits in the decimal part of the numerical value to be displayed, and the number of digits in the decimal part. It may be a combination of the presence or absence of comma delimiters when displaying .
  • the user can change the display format, etc. of the post-replacement character string CSA displayed by the HMI 10.
  • the HMI 10 has the effect of being able to display "a post-replacement message MSA including a post-replacement character string CSA generated according to the display rule RUE set by the user and a fixed character string CSF".
  • FIG. 1 is a block diagram showing the main configuration of the HMI 10 and PLC 20.
  • FIG. 1 In order to ensure the simplicity of the description, configurations of each of the HMI 10 and the PLC 20 that are not directly related to the present embodiment are omitted from the description and block diagrams.
  • the PLC 20 has a PLC storage unit 210, and the PLC storage unit 210 stores one or more variables.
  • the PLC storage unit 210 illustrated in FIG. 1 stores a first variable 211(1), a second variable 211(2), .
  • the PLC 20 communicates with one or more slave devices 40 as the master device of the master-slave control system. Then, the PLC 20 changes the values of the variables stored in the PLC storage unit 210, for example, when it detects that the slave device 40 (or the device 50) has occurred in a predetermined state. The PLC 20 may notify the HMI 10 that the variable values stored in the PLC storage unit 210 have been changed.
  • the HMI 10 includes an acquisition unit 110, a storage unit 120, a determination unit 130, a replacement unit 140, and a display control unit 150 as functional blocks.
  • the HMI 10 may include, in addition to the functional blocks described above, a PLC setting change unit that changes various settings of the PLC 20 according to operations received from the user. However, in order to ensure the simplicity of the description, configurations that are not directly related to this embodiment are omitted from the description and block diagrams. However, the HMI 10 may have this omitted configuration, depending on the actual implementation.
  • the acquisition unit 110 communicates with the PLC 20 to acquire the values of the variables stored in the PLC storage unit 210, and updates the values of the variables stored in the synchronization variable table 121 of the storage unit 120 with the acquired values. .
  • Acquisition unit 110 executes this update process periodically or at timing when the value of the variable stored in PLC storage unit 210 is changed.
  • the variable values stored in the synchronization variable table 121 of the storage unit 120 are synchronized with the variable values stored in the PLC storage unit 210 of the PLC 20 .
  • the determination unit 130 refers to the display condition information 123 in the storage unit 120 and acquires the condition COE defined for each pre-replacement message MSB.
  • the post-replacement message MSA is generated from the pre-replacement message MSB. Therefore, in the display condition information 123, the "condition COE that is the display condition of the post-replacement message MSA" is defined for each pre-replacement message MSB.
  • the determination unit 130 acquires condition COE(1) defined for pre-replacement message MSB(1) and condition COE(2) defined for pre-replacement message MSB(2). Similarly, determination unit 130 acquires condition COE(m) defined for pre-replacement message MSB(m) and condition COE(n) defined for pre-replacement message MSB(n). .
  • pre-replacement message MSBs when it is necessary to distinguish a plurality of pre-substitution message MSBs from each other, the symbols “(1)”, “(2)”, “(3)”, ..., “( n)” or the like to distinguish them. For example, “message before replacement MSB(1)”, “message before replacement MSB(2)”, “message before replacement MSB(3)”, . do. When there is no particular need to distinguish between a plurality of pre-replacement message MSBs, they are simply referred to as "pre-replacement message MSBs".
  • condition COE (1) When it is necessary to distinguish multiple conditional COEs from each other, the symbols "(1)”, “(2)”, “(3)”, ..., “(n )”, etc., to distinguish them. For example, “condition COE (1)”, “condition COE (2)”, “condition COE (3)”, . When there is no particular need to distinguish between a plurality of conditional COEs, they are simply referred to as “conditional COEs”.
  • the determination unit 130 determines whether the acquired condition COE is satisfied, and notifies the replacement unit 140 and the display control unit 150 of the determination result. Determining unit 130 acquires “n” condition COEs from condition COE (1) to condition COE (n), and determines whether each of the acquired “n” condition COEs is “satisfied”. and notifies the replacement unit 140 and the display control unit 150 of the determination result.
  • the determination unit 130 determines whether the condition COE is satisfied, for example, as follows. That is, determination unit 130 confirms whether the value of the variable defined in condition COE is the value defined in condition COE. Upon confirming that the value of the variable defined in the condition COE is the value defined in the condition COE, determination unit 130 determines that "the condition COE is satisfied.” Then, determination section 130 notifies replacement section 140 and display control section 150 of the determination result.
  • the determination unit 130 refers to the synchronization variable table 121 and performs the following checks. That is, the determination unit 130 confirms "whether the value of the first synchronization variable 122(x1) is “True” and the value of the second synchronization variable 122(x2) is "True”". After confirming that "the value of the first synchronization variable 122 (x1) is "True” and the value of the second synchronization variable 122 (x2) is "True”", the determination unit 130 determines the condition COE ( x) is satisfied.
  • determination unit 130 notifies replacement unit 140 and display control unit 150 of the identification information of the pre-replacement message MSB corresponding to the certain condition COE. good. For example, when determining unit 130 determines that “condition COE(x) is satisfied”, the identification information of pre-replacement message MSB(x) corresponding to condition COE(x) is replaced with The unit 140 and the display control unit 150 may be notified. The determination unit 130 may notify the replacement unit 140 and the display control unit 150 of the determination result that "the condition COE(x) of the pre-replacement message MSB(x) is satisfied".
  • the replacement unit 140 executes the following six processes.
  • the replacement unit 140 refers to the pre-replacement message table 125 of the storage unit 120 to acquire the pre-replacement message MSB in which the certain condition COE is defined. For example, when notified of the determination result that “the condition COE(x) is satisfied”, the replacement unit 140 refers to the pre-replacement message table 125 to refer to the replacement message table 125 for which the condition COE(x) is defined. Get the previous message MSB(x). Even if determination unit 130 notifies that "condition COE(x) of pre-replacement message MSB(x) is satisfied" or the identification information of pre-replacement message MSB(x), replacement unit 140 , get the pre-replacement message MSB(x) corresponding to the condition COE(x).
  • the replacing unit 140 refers to the display setting information 124 of the storage unit 120 for the designated variable VAD and the display rule RUE defined for "the pre-replacement message MSB in which a certain condition COE is defined". to obtain. For example, when notified of the determination result that “condition COE(x) is satisfied”, replacement unit 140 defines “pre-replacement message MSB(x) for which condition COE(x) is defined”. Get the designated variable VAD(x) and the display rule RUE(x) specified.
  • determination unit 130 notifies that "condition COE(x) of pre-replacement message MSB(x) is satisfied" or the identification information of pre-replacement message MSB(x), replacement unit 140 , the specified variable VAD(x) and the display rule RUE(x).
  • the replacement unit 140 refers to the synchronization variable table 121 and acquires the value of the designated variable VAD defined for "the pre-replacement message MSB for which a certain condition COE is defined". For example, if the display setting information 124 defines the specified variable VAD(x) as the specified variable VAD for the pre-replacement message MSB(x), the replacement unit 140 refers to the synchronization variable table 121 to refer to the specified variable VAD Get the value of (x).
  • the replacing unit 140 uses the value of the specified variable VAD acquired in the third process to display the defined message MSB for which the certain condition COE is defined.
  • a post-replacement character string CSA is generated according to the rule RUE.
  • the replacing unit 140 replaces the variable character string CSV of the pre-replacement message MSB acquired in the first process with the post-replacement character string CSA generated in the fourth process, and replaces the post-replacement character string CSA with the post-replacement character string CSA. , and the fixed character string CSF.
  • the replacement unit 140 stores the post-replacement message MSA generated in the fifth process in the post-replacement message table 126 . Also, the replacing unit 140 notifies the display control unit 150 that "the post-replacement message MSA has been stored in the post-replacement message table 126".
  • the display control unit 150 acquires the post-replacement message MSA by referring to the post-replacement message table 126 of the storage unit 120 and displays the acquired post-replacement message MSA on the display unit of the HMI 10 .
  • the display control unit 150 displays the post-replacement message MSA at the following timing after being notified of the determination result that "a certain condition COE is satisfied" from the determination unit 130. That is, after the display control unit 150 receives notification of the determination result from the determination unit 130, and is notified from the replacement unit 140 that "the post-replacement message MSA has been stored in the post-replacement message table 126", the display control unit 150 replaces Display the post-message MSA.
  • the storage unit 120 is a storage device that stores various data used by the HMI 10 .
  • the storage unit 120 executes (1) a control program executed by the HMI 10, (2) an OS program, (3) an application program for executing various functions of the HMI 10, and (4) the application program.
  • Various data to be read from time to time may be stored non-temporarily.
  • the above data (1) to (4) are stored in, for example, ROM (read only memory), flash memory, EPROM (Erasable Programmable ROM), EEPROM (registered trademark) (Electrically EPROM), HDD (Hard Disc Drive), and the like.
  • the HMI 10 may have a temporary memory (not shown).
  • the temporary storage unit is a so-called working memory that temporarily stores data used in calculations and calculation results in the course of various processes executed by the HMI 10, and is composed of a volatile storage device such as a RAM (random access memory). be done. Which data is to be stored in which storage device is appropriately determined based on the purpose of use, convenience, cost, physical restrictions, or the like of the PLC 20 .
  • Storage unit 120 further stores synchronization variable table 121 , display condition information 123 , display setting information 124 , pre-replacement message table 125 , and post-replacement message table 126 .
  • the synchronous variable table 121 stores variables corresponding to the variables stored in the PLC storage unit 210 .
  • the PLC storage unit 210 illustrated in FIG. 1 stores a first variable 211(1), a second variable 211(2), .
  • the synchronization variable table 121 stores first synchronization variables corresponding to each of the first variable 211(1), the second variable 211(2), . 122(1), the second synchronization variable 122(2), . . . , the n-th synchronization variable 122(n) are stored.
  • the display condition information 123 as a condition for displaying the post-replacement message MSA, conditions are set for each "pre-replacement message MSB corresponding to the post-replacement message MSA (that is, pre-replacement message MSB on which the post-replacement message MSA is based)."
  • a COE is defined.
  • condition COE(1) is a condition COE(2) are defined.
  • condition COE(m) is a condition COE(m) corresponding to post-replacement message MSA(m) .
  • the condition COE defines the values of variables stored in the synchronous variable table 121 as conditions for displaying the post-replacement message MSA. That is, the condition COE defines the conditions for displaying the post-replacement message MSA as a combination of variables and the values of the variables.
  • the condition COE is set in advance by the user.
  • the HMI 10 acquires the condition COE set by the user using the development support device 30 from the development support device 30, and stores the acquired condition COE as the display condition information 123. Stored in unit 120 .
  • the display setting information 124 defines a designated variable VAD and a display rule RUE for each pre-replacement message MSB. For example, for pre-replacement message MSB(1), designated variable VAD(1) and display rule RUE(1) are used for pre-replacement message MSB(2), designated variable VAD(2) and display rule RUE( 2) is defined. Similarly, the specified variable VAD(m) and the presentation rule RUE(m) for the pre-replacement message MSB(m) are the specified variable VAD(n) and the presentation rule RUE for the pre-replacement message MSB(n). (n) is defined.
  • the display setting information 124 defines the designated variable VAD and the display rule RUE for each variable character string CSV included in the pre-replacement message MSB. good too. For example, if the pre-replacement message MSB(x) includes a variable character string CSV(x1) and a variable character string CSV(x2), for each variable character string CSV(x1) and variable character string CSV(x2), A designation variable VAD and a display rule RUE may be defined.
  • variable character string CSV(x1) of the pre-replacement message MSB(x) the specified variable VAD(x1) and the display rule RUE(x1) are set to the variable character string CSV(x2) as A designation variable VAD(x2) and a display rule RUE(x2) may be defined.
  • variable character string CSV(y1) of the pre-substitution message MSB(y) the specified variable VAD(y1) and the display rule RUE(y1) are applied to the variable character string CSV(y2) by the specified variable A VAD(y2) and a presentation rule RUE(y2) may be defined.
  • the designated variable VAD and display rule RUE are preset by the user.
  • the HMI 10 acquires the specified variable VAD and the display rule RUE set by the user using the development support device 30 from the development support device 30, and stores the acquired specified variable VAD and the display rule RUE as the display setting information 124. Stored in unit 120 .
  • the pre-replacement message table 125 stores in advance one or more "pre-replacement message MSB, which is a sentence containing a variable character string CSV and a fixed character string CSF".
  • the pre-replacement message MSB is preset by the user.
  • the HMI 10 acquires the pre-replacement message MSB set by the user using the development support device 30 from the development support device 30 and stores the acquired pre-replacement message MSB in the pre-replacement message table 125 .
  • the post-replacement message table 126 stores "a post-replacement message MSA that is a sentence containing a post-replacement character string CSA and a fixed character string CSF".
  • the post-replacement message MSA is stored in the post-replacement message table 126 by the replacement section 140 , read out from the post-replacement message table 126 by the display control section 150 , and displayed on the display section of the HMI 10 .
  • FIG. 3 is a diagram illustrating synchronization of variable values between the HMI 10 and the PLC 20. As shown in FIG. The values of corresponding variables are synchronized between HMI 10 and PLC 20 . For example, one or more variables stored in the synchronization variable table 121 of the HMI 10 and one or more variables stored in the PLC storage unit 210 of the PLC 20 are associated with each other, and each value is synchronized. is doing.
  • the synchronization variable table 121 in FIG. 1 stores a first synchronization variable 122(1), a second synchronization variable 122(2), . .
  • the PLC storage unit 210 stores a first variable 211(1), a second variable 211(2), . . . , an n-th variable 211(n).
  • each of the first synchronization variable 122(1), the second synchronization variable 122(2), . 2), . . . , n-th variables 211(n) are associated with each other.
  • the values of the first synchronization variable 122(1), the second synchronization variable 122(2), . (2), . . . are synchronized with each value of the nth variable 211(n).
  • the acquisition unit 110 of the HMI 10 acquires each value of the first variable 211(1), the second variable 211(2), . .
  • the acquisition unit 110 stores the acquired values in the first synchronization variable 122(1), the second synchronization variable 122(2), . . . , the nth synchronization variable 122(n ), that is, the values of the variables stored in the synchronization variable table 121 are updated.
  • the “acquisition of the values of the variables stored in the PLC storage unit 210 and updating of the values of the variables stored in the synchronization variable table 121 with the acquired values” executed by the acquisition unit 110 is also referred to as update processing. called.
  • the acquisition unit 110 periodically or when notified from the PLC 20 that "the value of the variable stored in the PLC storage unit 210 has been changed" (data change on the PLC side), the above update Execute the process.
  • the value of the corresponding variable is synchronized between the HMI 10 and the PLC 20 by the updating process by the acquisition unit 110 periodically or triggered by data change on the PLC side.
  • the first synchronization variable 122(1) and the first variable 211(1) that correspond to each other are both variables with the variable name "ErrRobot1", and this variable reads "When an error occurs in Robot1, the value becomes “True””.
  • the PLC 20 sets the value of "ErrRobot1" to "True", that is, sets the value of the first variable 211(1) to "True".
  • the values of the corresponding variables are synchronized between the HMI 10 and the PLC 20 by the updating process triggered by the acquisition unit 110 periodically or by data change on the PLC side.
  • the PLC 20 sets the value of the first variable 211 (1) (that is, "ErrRobot1”) to "True"
  • the first synchronization variable 122 (1) that is, " ErrRobot1”
  • the second synchronization variable 122(2) and the second variable 211(2) that correspond to each other are both variables with the variable name "AbnormalError", and this variable indicates "An error has occurred that should stop the line.” Then, the value becomes 'True''.
  • the PLC 20 sets the value of "AbnormalError” to "True”, that is, sets the value of the second variable 211(2) to "True”. ”.
  • the values of the corresponding variables are synchronized between the HMI 10 and the PLC 20 by the updating process triggered by the acquisition unit 110 periodically or by data change on the PLC side.
  • the third synchronization variable 122(3) and the third variable 211(3) that correspond to each other are both variables with the variable name "LotNo", and the value of this variable is "currently flowing on the line”. product identification number (lot number)”.
  • the PLC 20 sets the "identification number (lot number) of the product currently flowing through the line” (hereinafter sometimes abbreviated as “current product number”) to the value of "LotNo". "Current product number” is stored as the value of variable 211(2).
  • the values of the corresponding variables are synchronized between the HMI 10 and the PLC 20 by the updating process triggered by the acquisition unit 110 periodically or by data change on the PLC side.
  • the PLC 20 sets the value of the third variable 211(3) (that is, “LotNo”) to “current product number”
  • the third synchronization variable 122(3) that is, “LotNo” stored in the synchronization variable table 121 of the HMI 10 , “LotNo” will also be the “current product number”.
  • FIG. 4 shows an operation (operation) for the user to set the condition COE, the pre-replacement message MSB, the specified variable VAD, and the display rule RUE, which are the display conditions for the HMI 10 to display the post-replacement message MSA, using the development support device 30. It is a figure explaining an example.
  • FIG. 4 is a diagram showing an example in which the user uses the development support device 30 to set the condition COE and the pre-replacement message MSB.
  • the development support device 30 displays the image example illustrated in FIG. 4A and prompts the user to set the condition COE and pre-replacement message MSB.
  • condition COE display condition
  • MSA for example, alarm message
  • condition COE is set in the form of a conditional expression "ErrRobot1 And AbnormalError".
  • This condition COE indicates a condition that "the value of the variable 'ErrRobot1' is 'True' and the value of the variable 'AbnormalError' is 'True'.”
  • the variable "ErrRobot1" is, for example, the first variable 211(1) stored in the PLC storage unit 210, and the first variable 211(1) stored in the synchronization variable table 121. 1 synchronization variable 122(1).
  • the variable "AbnormalError” is, for example, the second variable 211(2) stored in the PLC storage unit 210 and the second synchronization variable 122(2) stored in the synchronization variable table 121.
  • the user further sets "a message to be displayed on the HMI 10 when the condition COE is satisfied (post-replacement message MSA)".
  • the pre-replacement message MSB is a sentence containing a variable character string CSV and a fixed character string CSF.
  • the variable character string CSV is a character string that is replaced by the value of the specified variable VAD, which is a variable set by the user.
  • the fixed character string CSF is a character string preset by the user and displayed, that is, a fixed character string whose display content is predetermined.
  • the pre-replacement message MSB is "LotNo ⁇ %% ⁇ Welding failure".
  • " ⁇ %% ⁇ " in the pre-replacement message MSB is a character string to be replaced with the value in the specified variable VAD, which is a variable set by the user, when the condition COE (display condition) is satisfied. It is a variable character string CSV. Character strings other than " ⁇ %% ⁇ " in the pre-replacement message MSB are fixed character strings CSF.
  • the pre-replacement message MSB “LotNo ⁇ %% ⁇ Welding Defective” has the designated variable VAD “ ⁇ % % ⁇ ” is inserted.
  • the user sets the "condition COE (display condition) for the HMI 10 to display the post-replacement message MSA (for example, alarm message)" to be the basis of the post-replacement message MSA.
  • the condition COE and the pre-replacement message MSB are associated.
  • pre-replacement message MSB(1) is associated with condition COE(1) as its display condition
  • pre-replacement message MSB(2) is associated with condition COE(2) as its display condition
  • message before replacement MSB(m) is associated with condition COE(m) as its display condition
  • message before replacement MSB(n) is associated with condition COE(n) as its display condition.
  • the development support device 30 transmits to the HMI 10 the condition COE and pre-replacement message MSB set by the user using the image example illustrated in FIG.
  • the HMI 10 Upon receiving the condition COE set by the user from the development support device 30 , the HMI 10 stores the received condition COE as the display condition information 123 in the storage unit 120 . Further, upon receiving the pre-replacement message MSB set by the user from the development support device 30 , the HMI 10 stores the received pre-replacement message MSB in the pre-replacement message table 125 of the storage unit 120 .
  • condition COE is the condition for the HMI 10 to display the post-replacement message MSA
  • the pre-replacement message MSB is the positional sentence on which the post-replacement message MSA is displayed by the HMI 10 when the condition COE is satisfied. . Therefore, the condition COE and the pre-replacement message MSB are associated with each other, and in the display condition information 123, the condition COE is associated with the pre-replacement message MSB.
  • the pre-replacement message MSB(1) has condition COE(1) as its display condition
  • the pre-replacement message MSB(2) has condition COE(2) as its display condition
  • the pre-replacement message MSB(m) has condition COE(m) as its display condition
  • the pre-replacement message MSB(n) has condition COE(n) as its display condition.
  • FIG. 4B is a diagram showing an example in which the user uses the development support device 30 to set the designated variable VAD and the display rule RUE.
  • the development support device 30 displays the image example illustrated in FIG. 4B and allows the user to set the designated variable VAD and the display rule RUE for each pre-replacement message MSB.
  • the user stores a value to replace " ⁇ %% ⁇ " (that is, a variable character string CSV) in the pre-replacement message MSB set in (A) of FIG.
  • a designated variable VAD which is a variable to be set, is set.
  • the user has set a variable named "LotNo" as the designated variable VAD.
  • the variable "LotNo” is, for example, the third variable 211(3) stored in the PLC storage unit 210, and the third variable 211(3) stored in the synchronization variable table 121. 3 synchronization variable 122(3).
  • the user selects the designated variable VAD from the variables stored in the synchronous variable table 121 .
  • FIG. 4 shows an example in which the pre-replacement message MSB contains one variable character string CSV.
  • a plurality of variable character strings CSV may be included in the pre-substitution message MSB.
  • the user may set a plurality of designated variables VAD for storing values to be replaced with each of the plurality of variable character strings CSV.
  • the user can specify each of the variable character string CSV(x1) and the variable character string CSV(x2) and A plurality of specified variables VAD may be set to store values to be replaced.
  • the user may set the p-th synchronization variable 122(p) stored in the synchronization variable table 121 as a variable for storing the value to be replaced with the variable character string CSV(x1).
  • the user may set the q-th synchronization variable 122(q) stored in the synchronization variable table 121 as a variable for storing the value to be replaced with the variable character string CSV(x2).
  • the user further sets the display rule RUE (for example, display format) when the HMI 10 replaces the variable character string CSV and displays the value of the designated variable VAD.
  • RUE for example, display format
  • FIG. 4 shows the following as an example of the display rule RUE.
  • “in what base system to display a number (storage format)”, “when displaying a number, how many digits should be the minimum number of digits in the integer part (minimum number of digits in the integer part)", “the number of digits in the decimal part The number of digits (the number of digits in the fractional part)" and “whether or not there is a digit separator" are listed as examples of the display rule RUE.
  • the user selects "decimal notation” as the "storage format".
  • the value of the variable VAD will be a number displayed in decimal notation.
  • the HMI 10 uses "a post-replacement character string CSA that displays the value of the specified variable VAD with 'minimum number of digits in the integer part: 1', 'number of digits in the decimal part: 0', and 'presence/absence of digit separator: none'". Display the post-replacement message MSA in which the variable character string CSV is replaced.
  • FIG. 4B shows an example in which the user sets one display rule RUE for one specified variable VAD value.
  • the user may set the display rule RUE for each of the multiple specified variables VAD, each of which corresponds to each of the multiple variable character strings CSV. good.
  • the user assigns p-th synchronization variable 122(p) and q-th synchronization variable 122(q ), and the following display rule RUE may be set. That is, the user may set the display rule RUE(p) for the pth synchronization variable 122(p) and the display rule RUE(q) for the qth synchronization variable 122(q).
  • the user sets the "designated variable VAD, which is a variable for storing the variable character string CSV in the pre-replacement message MSB and the value to be replaced", for example, for each pre-replacement message MSB. set to In other words, the designated variable VAD and the pre-replacement message MSB are associated with each other.
  • the pre-replacement message MSB(1) is associated with the specified variable VAD(1)
  • the pre-replacement message MSB(2) is associated with the specified variable VAD(2)
  • the pre-replacement message MSB(m) is associated with the specified variable VAD(m)
  • the pre-replacement message MSB(n) is associated with the specified variable VAD(n).
  • the user can set the "display rule RUE (display format) to be applied when replacing the variable character string CSV in the pre-replacement message MSB and displaying the post-replacement character string CSA (that is, the value of the designated variable VAD)". , for example, for each pre-replacement message MSB. In other words, the display rule RUE and the pre-replacement message MSB are associated.
  • one pre-replacement message MSB includes multiple variable character strings CSV
  • the designated variable VAD and display rule RUE may be set for each of the multiple variable character strings CSV.
  • the development support device 30 transmits to the HMI 10 the designated variable VAD and the display rule RUE set by the user using the image example illustrated in FIG. 4B.
  • the HMI 10 receives the specified variable VAD and the display rule RUE set by the user from the development support device 30 , the received specified variable VAD and the display rule RUE are stored in the storage unit 120 as the display setting information 124 .
  • the specified variable VAD and the display rule RUE are set for each pre-replacement message MSB, in the display setting information 124, the specified variable VAD and the display rule RUE are each associated with the pre-replacement message MSB.
  • FIG. 5 is a diagram for explaining the outline of the flow of processing executed when the HMI 10 displays the post-replacement message MSA.
  • the PLC 20 executes, for example, the following three processes. That is, the PLC 20 sets the value of "ErrRobot1” stored in the PLC storage unit 210 to “True”, and sets the value of the first variable 211(1) to “True”, for example. Also, the PLC 20 sets the value of "AbnormalError” stored in the PLC storage unit 210 to “True”, and sets the value of the second variable 211(2) to “True", for example. Furthermore, the PLC 20 stores the "identification number of the product currently flowing through the line ("124456" in the example of FIG. 5)" in "LotNo" of the PLC storage unit 210. For example, the third variable 211 (3) 'the identification number of the product that is currently flowing on the line: 124456' is stored.
  • the HMI 10 (particularly, the acquisition unit 110) obtains from the PLC 20 the first variable 211(1) (that is, "ErrRobot1"), the second variable 211(2) (that is, “AbnormalError”), and the third variable 211(3). (ie, "LotNo"). Then, the acquisition unit 110 uses the acquired values of the first variable 211(1), the second variable 211(2), and the third variable 211(3) to calculate the first synchronization variable 122(1), the second synchronization variable 122(1), and the second synchronization variable 211(3). Update the value of each of variable 122(2) and third synchronization variable 122(3).
  • the first synchronization variable 122(1) that is, "ErrRobot1”
  • the second synchronization variable 122(2) that is, “AbnormalError”
  • the third synchronization variable 122 that is, “AbnormalError”
  • Each value of (i.e., "LotNo") is as follows. That is, the value of "ErrRobot1" stored in the synchronization variable table 121 becomes “True”. Also, the value of "AbnormalError” stored in the synchronization variable table 121 is “True”. Furthermore, the value of "LotNo” stored in the synchronization variable table 121 is "124456". The values of the three variables "ErrRobot1", “AbnormalError”, and “LotNo” are synchronized between the HMI 10 and the PLC 20 ("(2) synchronization of variable values").
  • the HMI 10 (particularly, the determination unit 130) refers to the display condition information 123 of the storage unit 120 and acquires the condition COE.
  • the determination unit 130 recognizes that the condition COE is "ErrRobot1 And AbnormalError" illustrated in FIG.
  • the determination unit 130 recognizes that the condition COE is "the value of 'ErrRobot1' is 'True' and the value of 'AbnormalError' is 'True'".
  • the determination unit 130 refers to the synchronization variable table 121 of the storage unit 120 to determine "ErrRobot1" (that is, the first synchronization variable 122(1)) and "AbnormalError” (that is, the second synchronization variable 122(2)). ) to check each value.
  • the determination unit 130 determines that the condition COE is satisfied. Then, determination unit 130 that has determined that condition COE is satisfied notifies replacement unit 140 and display control unit 150 of the determination result (determination result that condition COE is satisfied).
  • condition COE is defined in the display condition information 123, for example, for each pre-replacement message MSB. That is, in the display condition information 123, the condition COE(n) is defined as the display condition of the pre-replacement message MSB(n) in association with the pre-replacement message MSB(n).
  • the judging unit 130 When judging from the value of the variable stored in the synchronization variable table 121 that "the condition COE(x) is satisfied", the judging unit 130 replaces the pre-replacement message MSB(x) corresponding to the condition COE(x) with The replacement unit 140 and the display control unit 150 may be notified.
  • replacement unit 140 Upon notification of the determination result that “condition COE is satisfied” from determination unit 130, replacement unit 140 refers to pre-replacement message table 125 and acquires pre-replacement message MSB. For example, when the judgment unit 130 notifies the judgment result that “the condition COE(x) is satisfied”, the replacement unit 140 refers to the pre-replacement message table 125 to correspond to the condition COE(x). Get the pre-replacement message MSB(x).
  • the replacing unit 140 refers to the display setting information 124 and asks, “Which variable is specified as the specified variable VAD? (set)”. For example, when the determination unit 130 notifies the determination result that “the condition COE(x) is satisfied”, the replacement unit 140 performs the following process. That is, the replacing unit 140 refers to the display setting information 124 to determine "which variable is specified as the specified variable VAD (setting (Is it being done?)”.
  • the replacement unit 140 refers to the synchronization variable table 121 of the storage unit 120 and acquires the value of "variable set as the designated variable VAD".
  • the replacing unit 140 refers to the display setting information 124 and determines whether the “variable set as the designated variable VAD” is changed.
  • the display rule RUE which is the rule for displaying the value.
  • the replacement unit 140 refers to the display setting information 124 and refers to “the condition COE(x) is satisfied.” Get the display rule RUE defined for the pre-replacement message MSB(x).
  • the replacement unit 140 generates a post-replacement character string CSA from the value of the acquired "variable set as the designated variable VAD" according to the display rule RUE. Then, the replacing unit 140 replaces the variable character string CSV of the pre-replacement message MSB with the generated post-replacement character string CSA to generate the post-replacement message MSA.
  • the replacement unit 140 stores the generated post-replacement message MSA in the post-replacement message table 126 of the storage unit 120 . Also, the replacement unit 140 notifies the display control unit 150 that "the post-replacement message MSA has been stored in the post-replacement message table 126".
  • the replacement unit 140 refers to the pre-replacement message table 125 and acquires the pre-replacement message MSB "LotNo ⁇ %% ⁇ Welding Defective" illustrated in FIG. Further, the replacing unit 140 refers to the display setting information 124 to determine that "the "LotNo” illustrated in FIG. 4 (that is, the third synchronization variable 122(3)) is set as the designated variable VAD". grasp. Then, the replacement unit 140 refers to the synchronization variable table 121 of the storage unit 120 and acquires "124456" which is the value of "LotNo" (that is, the third synchronization variable 122(3)).
  • the replacement unit 140 refers to the display setting information 124 and sets the display rule RUE, which is the rule for displaying the value of "LotNo", to "storage format: decimal number”, “integer “minimum number of digits in part: 1”, “number of digits in decimal part: 0”, and "presence/absence of digit separator: none".
  • the replacing unit 140 generates a post-replacement character string CSA with "124456" from the acquired "124456” according to the display rule RUE described above.
  • the replacing unit 140 replaces the variable character string CSV (that is, “ ⁇ %% ⁇ ”) of the pre-replacement message MSB “LotNo ⁇ %% ⁇ Welding Defective” with the generated post-replacement character string CSA with “124456”. and generate a post-replacement message MSA.
  • the replacing unit 140 generates a post-replacement message MSA of "Lot No. 124456 Welding failure".
  • the post-replacement message MSA is a sentence including the fixed character string CSF of the pre-replacement message MSB and the post-replacement character string CSA obtained by replacing the variable character string CSV with the value of the specified variable VAD.
  • the replacing unit 140 stores the generated post-replacement message MSA of “Lot No. 124456 Welding Defective” in the post-replacement message table 126 and notifies the display control unit 150 that the post-replacement message MSA has been stored in the post-replacement message table 126. .
  • display control unit 150 executes the following processes. That is, the display control unit 150 refers to the post-replacement message table 126 of the storage unit 120 and displays the post-replacement message MSA stored in the post-replacement message table 126 on the display screen of its own device.
  • the display control unit 150 displays, for example, an alert image including the post-replacement message MSA as a popup on the display screen of its own device (“(3) Popup display of alert image”).
  • FIG. 6 is a diagram showing an example in which the HMI 10 displays the post-replacement message MSA in an image different from the alert image illustrated in FIG.
  • FIG. 5 shows an example in which the HMI 10 (particularly, the display control unit 150) pops up the post-replacement message MSA (for example, an alert message) when the condition COE is satisfied.
  • the display control unit 150 may display one or more post-replacement messages MSA in a list format as shown in FIG.
  • FIG. 7 is a flow diagram showing an example of processing executed by the HMI 10.
  • the acquisition unit 110 acquires the value of each variable of the PLC 20 from the PLC 20, that is, acquires the value of each of one or more variables stored in the PLC storage unit 210 of the PLC 20. (S110). Specifically, the acquisition unit 110 obtains the values of the first variable 211(1), the second variable 211(2), . to get
  • the acquisition unit 110 updates the values of the variables of its own device (that is, the synchronization variables stored in the synchronization variable table 121) with the values of the variables acquired from the PLC 20 (S120). That is, the acquisition unit 110 uses the values of the variables acquired from the PLC 20 to obtain the first synchronization variable 122(1), the second synchronization variable 122(2), . Update the value of each of the synchronization variables 122(n). For example, the acquisition unit 110 uses the values of the first variable 211(1), the second variable 211(2), . 1), update the value of each of the second synchronization variables 122(2), . . . , nth synchronization variables 122(n).
  • the determination unit 130 refers to the display condition information 123 in the storage unit 120 and acquires the display condition (condition COE) set for each pre-replacement message MSB. Then, the determination unit 130 determines whether or not the acquired condition COE is satisfied from the values of the variables stored in the synchronization variable table 121 (S130).
  • a condition COE is defined, for example, by the values of one or more variables stored in the synchronization variable table 121, and is defined as a combination of the values of two or more variables stored in the synchronization variable table 121.
  • the condition COE of the message MSB before replacement with "LotNo ⁇ %% ⁇ Welding Defective" is "ErrRobot1 And AbnormalError”.
  • This condition COE is defined as "the value of 'ErrRobot1' (that is, the first synchronization variable 122(1)) is 'True' and the value of 'AbnormalError' (that is, the second synchronization variable 122(2)) is It is “True””.
  • this conditional COE is defined as a combination of the value of the first synchronization variable 122(1) and the value of the second synchronization variable 122(2).
  • the HMI 10 ends the process.
  • determination section 130 executes the following process. That is, determination unit 130 notifies replacement unit 140 and display control unit 150 of pre-substitution message MSB determined to satisfy condition COE.
  • the replacement unit 140 refers to the storage unit 120, and in the display setting information 124, the synchronization variable associated (specified) with the “pre-replacement message MSB determined to satisfy the condition COE”. (ie, the specified variable VAD). Then, replacement unit 140 refers to synchronization variable table 121 for specified variable VAD specified in display setting information 124 for "pre-replacement message MSB determined to satisfy condition COE", The value is acquired (S140).
  • the replacement unit 140 refers to the storage unit 120 and acquires the display rule RUE associated with the "pre-replacement message MSB determined to satisfy the condition COE" in the display setting information 124.
  • the replacing unit 140 generates a post-replacement character string CSA from the value of the specified variable VAD obtained in S140, according to the display rule RUE (S150).
  • the replacing unit 140 replaces the variable character string CSV of the “pre-replacement message MSB determined to satisfy the condition COE” with the post-replacement character string CSA generated in S150 to generate the post-replacement message MSA (S160 ).
  • the replacing unit 140 stores the post-replacement message MSA generated in S160 in the post-replacement message table 126.
  • FIG. Also, the replacing unit 140 notifies the display control unit 150 that the post-replacement message MSA has been stored in the post-replacement message table 126 .
  • the display control unit 150 refers to the post-replacement message table 126 of the storage unit 120, and displays the post-replacement message MSA stored in the post-replacement message table 126 on the display screen of its own device (S170).
  • the processing executed by the HMI 10 (in other words, the control method executed by the HMI 10) described so far with reference to FIG. 7 can be organized as follows. That is, the process (control method) executed by the HMI 10 is communicably connected to the PLC 20 (control device), and pre-stores the "pre-replacement message MSB, which is a sentence containing the variable character string CSV and the fixed character string CSF".
  • the acquisition step acquires the value of the predetermined variable (variable corresponding to the designated variable VAD) updated by the PLC 20 .
  • the display control step includes "a post-replacement message MSA that is a sentence including a fixed character string CSF and a post-replacement character string CSA that is a character string obtained by replacing the variable character string CSV with the value acquired in the acquisition step". display.
  • the control method generates the post-replacement message MSA from the pre-replacement message MSB stored in the storage unit 120 .
  • the control method then displays the generated post-replacement message MSA.
  • the pre-replacement message MSB is a sentence containing a variable character string CSV and a fixed character string CSF.
  • the post-replacement message MSA is a sentence including a post-replacement character string CSA and a fixed character string CSF.
  • the control method generates a post-replacement message MSA from a pre-replacement message MSB as follows. That is, in the control method, when the value of the predetermined variable (variable corresponding to the designated variable VAD) is updated by the PLC 20, the updated value is acquired.
  • the control method displays "a post-replacement message MSA that is a sentence including 'the post-replacement character string CSA that replaces the variable character string CSV with the obtained post-update value' and the fixed character string CSF".
  • control method uses a fixed character string stored in advance (i.e., fixed character string CSF) and a variable character string (i.e., post-replacement character string CSA) whose contents change depending on the situation. It is possible to display the post-replacement message MSA, which is a sentence containing .
  • control method uses the value of the predetermined variable (variable corresponding to the specified variable VAD) obtained from the PLC 20 based on the pre-replacement message MSB stored in the storage unit 120 in advance, and uses the value of the post-replacement message Display MSA.
  • the control method is such that "the server obtains the value of a predetermined variable from the PLC 20 (control device), the server generates a message to be displayed on the display, and the display displays the message obtained from the server.
  • the control method in comparison with the above-described configuration, in accordance with the change in the value of the predetermined variable in the PLC 20, the content is changed corresponding to the change in the value of the predetermined variable. There is an effect that the post-message MSA can be immediately notified to the user.
  • the pre-replacement message MSB includes one variable character string CSV has been described so far, but the pre-replacement message MSB may include a plurality of variable character strings CSV.
  • the functional blocks of the HMI 10 are realized by logic circuits (hardware) formed in an integrated circuit (IC chip) or the like. You may Also, the functional blocks of the HMI 10 may be realized by software using a CPU (Central Processing Unit).
  • CPU Central Processing Unit
  • the HMI 10 includes a CPU that executes the instructions of a program, which is software that implements each function, and a ROM (Read Only Memory) or storage device that stores the program and various data so that they can be read by the computer (or CPU). (these are referred to as “recording media”), RAM (Random Access Memory) for developing the above program, and the like.
  • the object of the present invention is achieved by a computer (or CPU) reading and executing the program from the recording medium.
  • a "non-temporary tangible medium" such as a tape, a disk, a card, a semiconductor memory, a programmable logic circuit, or the like can be used.
  • the program may be supplied to the computer via any transmission medium (communication network, broadcast wave, etc.) capable of transmitting the program.
  • any transmission medium communication network, broadcast wave, etc.
  • the present invention can also be implemented in the form of a data signal embedded in a carrier wave in which the program is embodied by electronic transmission.
  • a display device is a display device communicably connected to a control device, and is a sentence including a variable character string and a fixed character string.
  • a storage unit that stores a message in advance, an acquisition unit that acquires the value of a predetermined variable updated by the control device, and a replacement that is a character string obtained by replacing the variable character string with the value acquired by the acquisition unit.
  • a display control unit that displays a post-replacement message that is a sentence including the post-character string and the fixed character string.
  • the display device pre-stores a pre-replacement message that is a sentence including the variable character string and the fixed character string. Then, when the value of the predetermined variable is updated by the control device, the display acquires the updated value, and replaces the variable character string with the acquired updated value.
  • a post-replacement message which is one sentence including the post-replacement character string and the fixed character string, is displayed.
  • the display unit stores a fixed character string (ie, the fixed character string) stored in advance and a variable character string (ie, the post-replacement character string) whose content changes according to the situation. It is possible to display the post-replacement message, which is a sentence containing .
  • the display device displays the post-replacement message using the predetermined variable value acquired from the control device based on the pre-replacement message stored in advance in the storage unit.
  • the display device has a configuration in which "the server obtains the value of a predetermined variable from the control device, the server generates a message to be displayed on the display device, and the display device displays the message obtained from the server.”
  • the indicator is a single sentence whose contents are changed in accordance with the change in the value of the predetermined variable in the control device. It is effective in being able to promptly notify the user of the post-replacement message.
  • the storage unit further stores in advance a condition for displaying the post-replacement message set by the user, and it is determined whether or not the condition is satisfied.
  • a determination unit may be further provided, and when the determination unit determines that the condition is satisfied, the display control unit may display the post-replacement message.
  • the display device displays the post-replacement message when it determines that "the condition for displaying the post-replacement message set by the user" is satisfied.
  • the display unit stores a fixed character string stored in advance and a variable character string whose contents change depending on the situation. It is possible to display the post-replacement message, which is a sentence containing .
  • the condition may be that the control device has detected a predetermined state.
  • the display displays the post-replacement message when the control device detects a predetermined state.
  • the display displays the post-replacement message, which is a single sentence including, as the post-replacement character string, a character string specifying a target in which the abnormal state is detected.
  • the indicator is a single sentence containing a fixed character string stored in advance and a variable character string whose content changes according to the situation.
  • the effect is that the post-replacement message can be displayed.
  • the storage unit may further store in advance information specifying the predetermined variable set by the user.
  • the display replaces the variable character string with a value (particularly, a value after update) of "the predetermined variable specified by the information stored in the storage unit.”
  • the post-replacement message which is a sentence containing the post-replacement character string and the fixed character string, is displayed.
  • the "predetermined variable specified by the information stored in the storage unit" is set by the user.
  • the user can change the "information stored in the storage unit" to display the value of the "predetermined variable” desired by the user on the display.
  • the user can change the content of the information displayed by the indicator in the post-replacement message.
  • the user can cause the display to display the information desired by the user as the post-replacement character string.
  • the display unit includes a post-replacement character string obtained by replacing the variable character string with the value of "the predetermined variable specified by information that is set by the user and specified by information stored in advance in the storage unit", and the fixed variable character string.
  • the effect is that it is possible to display a sentence containing a character string.
  • the storage unit further includes a display rule set by the user, the display rule for displaying the value acquired by the acquisition unit as the post-replacement character string. is stored in advance, and the display control unit may display the value acquired by the acquisition unit as the post-substitution character string according to the display rule.
  • the display displays the post-replacement message including the post-replacement character string generated from the value of the predetermined variable and the fixed character string according to the display rule set by the user. indicate.
  • the display rules include the number of bases to be used when displaying numerical values, the minimum number of digits in the integer part of numerical values to be displayed, the number of digits in the decimal part of numerical values to be displayed, and the number of digits in the decimal part of numerical values to be displayed. It may be the presence or absence of comma delimiters when displaying .
  • the user can change the display format, etc. of the post-replacement character string displayed by the display device by changing the display rule stored in the storage unit.
  • the display can display the post-replacement message including the post-replacement character string generated according to the display rule set by the user and the fixed character string.
  • a control method provides a memory that is communicatively connected to a control device and stores in advance a pre-replacement message that is a sentence containing a variable character string and a fixed character string.
  • a control method for a display unit comprising: an acquisition step of acquiring a value of a predetermined variable updated by the control device; and a character obtained by replacing the variable character string with the value acquired in the acquisition step.
  • the control method generates the following "post-replacement character string and the fixed character string. That is, in the control method, when the value of the predetermined variable is updated by the control device, the updated value is acquired, and the replaced character string obtained by replacing the variable character string with the acquired updated value. , and the fixed character string.
  • control method includes a pre-stored fixed character string (that is, the fixed character string) and a variable character string (that is, the post-replacement character string) whose contents change depending on the situation. It is possible to display the post-replacement message, which is a sentence containing .
  • control method displays the post-replacement message using the predetermined variable value obtained from the control device based on the pre-replacement message stored in advance in the storage unit.
  • the control method is configured such that "the server obtains the value of a predetermined variable from the control device, the server generates a message to be displayed on the display, and the display displays the message obtained from the server.”
  • the following effects are obtained. That is, in the control method, in comparison with the above-described configuration, in accordance with a change in the value of the predetermined variable in the control device, the contents are changed in accordance with the change in the value of the predetermined variable. It is effective in being able to promptly notify the user of the post-replacement message.
  • HMI display
  • PLC control device
  • acquisition unit 120 storage unit 130 determination unit
  • display control unit COE condition CSA character string after replacement CSV variable character string CSF fixed character string MSA message after replacement MSB message before replacement
  • VAD designated variable (predetermined variable)
  • S110 acquisition step S170 display control step

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Programmable Controllers (AREA)

Abstract

予め記憶している固定的な文字列と、状況に応じて内容が変化する可変的な文字列とを含む一文を表示する。HMI(10)は、指定変数(VAD)の値から生成した置換後文字列(CSA)によって置換前メッセージ(MSB)の可変文字列(CSV)を置換して、置換後メッセージ(MSA)を生成する。

Description

表示器、表示器の制御方法、情報処理プログラム、および記録媒体
 本発明は、制御装置に通信可能に接続される表示器等に関する。
 従来、プログラマブル・ロジック・コントローラ(Programmable Logic Controller、以下「PLC」と略記する)等の産業用制御装置が検知した情報等を、ユーザに通知するプログラマブル表示器等のHMI(Human Machine Interface)が知られている。例えば、下掲の特許文献1には、文字列を表示する際にユーザにとって視認しやすい表示形式(表示書式)を選択するプログラマブル表示器が開示されている。
日本国特開2009-176178号
 しかしながら、上述のような従来技術は、予め記憶している固定的な文字列と、状況に応じて内容が変化する可変的な文字列とを含む一文を表示することができないという問題がある。
 本発明の一態様は、予め記憶している固定的な文字列と、状況に応じて内容が変化する可変的な文字列とを含む一文を表示できるようにすることを目的とする。
 上記の課題を解決するために、本発明の一態様に係る表示器は、制御装置に通信可能に接続される表示器であって、可変文字列と固定文字列とを含む一文である置換前メッセージを予め格納した記憶部と、前記制御装置にて更新された所定の変数の値を取得する取得部と、前記取得部によって取得された値によって前記可変文字列を置換した文字列である置換後文字列と、前記固定文字列とを含む一文である置換後メッセージを表示する表示制御部と、を備える。
 上記の課題を解決するために、本発明の一態様に係る制御方法は、制御装置に通信可能に接続され、可変文字列と固定文字列とを含む一文である置換前メッセージを予め格納した記憶部を備える表示器の制御方法であって、前記制御装置にて更新された所定の変数の値を取得する取得ステップと、前記取得ステップにて取得された値によって前記可変文字列を置換した文字列である置換後文字列と、前記固定文字列とを含む一文である置換後メッセージを表示する表示制御ステップと、を含む。
 本発明の一態様によれば、予め記憶している固定的な文字列と、状況に応じて内容が変化する可変的な文字列とを含む一文を表示できるとの効果を奏する。
本発明の実施形態1に係るHMI等の要部構成を示すブロック図である。 図1のHMIを含む制御システムの全体概要を示す図である。 図1のHMIと図2に示すPLCとの間における変数の値の同期について説明する図である。 ユーザが、図2に示す開発支援装置を用いて、置換後メッセージを表示する条件、置換前メッセージ、指定変数、表示規則を設定する作業の一例を説明する図である。 図1のHMIが置換後メッセージを表示する際に実行する処理などの流れについて、その概要を説明する図である。 図1のHMIが、図5に例示したアラート画像とは別の画像において、置換後メッセージを表示する例を示す図である。 図1のHMIが実行する処理の一例を示すフロー図である。
 〔実施形態1〕
 以下、本発明の一側面に係る実施の形態(以下、「本実施形態」とも表記する)を、図1から図7に基づいて説明する。なお、図中同一または相当部分には同一符号を付してその説明は繰返さない。本実施の形態においては、例えばHMI(Human Machine Interface)10を、プログラマブル・ロジック・コントローラ(Programmable Logic Controller、以下「PLC」と略記する)20(制御装置)に通信可能に接続される表示器の典型例として説明を行う。
 以下の説明において、「m」、「n」、「p」、「q」、「x」、「y」は、各々、「1」以上の整数を示すものとする。また、「m」は「n」以下の整数であり、「p」と「q」とは互いに異なる整数であり、「x」と「y」とは互いに異なる整数であるものとする。
 本発明の一態様に係るHMI10についての理解を容易にするため、先ず、HMI10を含む制御システム1の概要を、図2を用いて説明する。
 §1.適用例
 (制御システムの全体概要)
 図2は、HMI10を含む制御システム1の全体概要を示す図である。制御システム1は、マスタ装置としてのPLC(Programmable Logic Controller)20と、マスタ装置にネットワーク(フィールドネットワーク60)を介して接続される1つ以上のスレーブ装置40とを含むマスタスレーブ制御システムである。PLC20は、フィールドネットワーク60を介したデータ伝送を管理しているという意味で「マスタ装置」と呼ばれる。
 フィールドネットワーク60に複数のPLC20が接続される場合には、いずれか1つのPLC20がマスタ装置となり、残りのPLC20がスレーブ装置になる場合もある。また、PLC20およびスレーブ装置40のいずれとも異なる制御主体がマスタ装置になってもよい。すなわち、「マスタ装置」および「スレーブ装置」は、フィールドネットワーク60上のデータ伝送の制御機能に着目して定義されるものであり、各装置間でどのような情報が送受信されるかについては、特に限定されない。
 PLC20は、制御システム1の全体の制御を行う。具体的には、PLC20は、スレーブ装置40を介して、センサなどの入力機器であるデバイス50からの情報を入力データとして取得する。PLC20は、予め組み込まれたユーザプログラムに従って、取得した入力データを用いた演算処理を実行する。PLC20は、前記演算処理を実行して、アクチュエータなどの出力機器であるデバイス50への制御内容を決定し、その制御内容に対応する制御データを、スレーブ装置40を介して、デバイス50へと出力する。
 フィールドネットワーク60は、PLC20が受信し、またはPLC20が送信する各種データを伝送する。フィールドネットワーク60は、例えば、EtherCAT(登録商標)、PROFINET(登録商標)、MECHATROLINK(登録商標)-III、Powerlink、SERCOS(登録商標)-III、CIP Motionである。また、フィールドネットワーク60は、例えば、EtherNet/IP(登録商標)、DeviceNet、CompoNet(登録商標)などであってもよい。なお、以下では、フィールドネットワーク60上をデータフレームが順次転送されることで、PLC20とスレーブ装置40との間、または、複数のスレーブ装置40の間でデータが送受信される制御システム1について説明を行う。
 スレーブ装置40は、PLC20をマスタ装置とするネットワーク(フィールドネットワーク60)におけるスレーブ装置であり、例えば、デバイス50との通信を管理する通信カプラ等のデバイス通信管理ユニットである。スレーブ装置40は、フィールドネットワーク60に直接接続される、サーボドライバであってもよい。デバイス50は、例えばセンサなどの入力機器であり、また、例えばアクチュエータなどの出力機器である。1つ以上のデバイス50が、通信ケーブルを介して、スレーブ装置40に接続される。
 開発支援装置30は、例えばUSB(Universal Serial Bus)ケーブルである通信ケーブルを介して、PLC20に接続する。開発支援装置30は、PLC20で実行されるユーザプログラム、および、制御システム1に対する各種の設定情報などを生成するための情報処理装置である。
 開発支援装置30は、例えば、PLC20の開発環境を提供し、ユーザが、制御目的(たとえば、対象のラインおよびプロセス)に応じてユーザプログラムを作成する(作成・編集する)ための環境を提供する。ユーザは、開発支援装置30の提供する開発環境(プログラミングツール)を用いて、PLC20で実行させる制御プログラム(ユーザプログラム)のプログラムコードを作成する。開発支援装置30は、PLC20で実行させる制御プログラムをユーザが作成・編集するのを支援するため、デバック機能およびシミュレーション機能を有していてもよい。
 また、開発支援装置30は、例えば、PLC20による状態値の取得(入力リフレッシュ)のタイミング、および、PLC20による出力値の更新(出力リフレッシュ)のタイミングの算出および設定を実行してもよい。開発支援装置30は、PLC20の運転状態、および各種データの値などを監視してもよい。
 つまり、開発支援装置30は、PLC20のプログラミング、コンフィグレーション(構成設定)、デバッグ、メンテナンス、モニタリング機能の他、3Dモーションシミュレーションにも対応した統合開発環境を提供する装置であってもよい。また、開発支援装置30は、スレーブ装置40のための各種のパラメータの設定および調整を行ってもよい。
 開発支援装置30は、典型的には、汎用のコンピュータで構成される。例えば、開発支援装置30で実行される情報処理プログラムは、不図示のCD-ROM(Compact Disk-Read Only Memory)に格納されて流通してもよい。このCD-ROMに格納されたプログラムは、図示しないCD-ROM駆動装置によって読取られ、開発支援装置30のハードディスクなどへ格納される。あるいは、開発支援装置30は、上位のホストコンピュータなどから、ネットワークを通じて、前記DVD-ROMに格納されたプログラムと同様のプログラムをダウンロードするように構成してもよい。
 図2に示すように、HMI10は、通信ケーブルを介して、PLC20に接続されている。HMI10は、人間と機械とが情報をやり取りするための手段であり、具体的には、人間が機械を操作したり(機械に指示を与えたり)、機械が現在の状態・結果を人間に知らせたりする手段である。HMI10について、人間が機械に指示を与える手段としてはスイッチ、ボタン、ハンドル、ダイヤル、ペダル、リモコン、マイク、キーボード、マウスなどが含まれる。また、HMI10について、機械が現在の状態・結果等に係る情報を人間に伝える手段としては液晶画面、メーター、ランプ、スピーカーなどが含まれる。
 HMI10は、表示部と、操作部と、PLC20と通信する通信部と、各部を制御する制御部と、を備える。HMI10は、操作部へのユーザ操作に応じて、制御システム1(例えば、PLC20)の各種の設定を変更することができる。また、HMI10の表示部は、制御システム1についての所定の情報を表示する。
 HMI10は、プログラマブル表示器であってもよい。HMI10は、ユーザから受け付けた操作に応じて、通信可能に接続されたPLC20の各種の設定を変更できてもよく、また、PLC20の所定の情報を表示してもよい。
 すなわち、HMI10は、ユーザから受け付けた指示をPLC20に通知してもよい。また、HMI10は、PLC20から受信したデータおよび通知を、自端末から出力する(表示部に表示させる、またはアラームなどの音声出力を行う)ことで上記データおよび通知をユーザに提示してもよい。
 HMI10はPLC20に同期しており、具体的には、HMI10は、PLC20における各種のデータ変化に対応して、自装置の対応する各種のデータを変更する。すなわち、HMI10は、PLC20と通信を行って、PLC20のPLC記憶部210に格納されている変数の値を取得し、自装置の同期変数テーブル121に格納している対応する変数(同期変数)の値を、PLC20から取得した変数の値で更新する。
 HMI10は、上述のような更新処理を所定の時間間隔(周期)ごとに繰り返し実行することによって、同期変数テーブル121に格納している変数(同期変数)の値を、PLC20のPLC記憶部210に格納されている変数の値に同期させる。HMI10は、上述のような更新処理を、PLC記憶部210に格納されている変数の値の変化など、所定のイベントごとに実行してもよい。HMI10とPLC20との間における変数の値の同期について、詳細は図3を用いて後述する。
 開発支援装置30は、例えばUSBケーブルである通信ケーブルを介して、HMI10に接続し、ユーザによって設定された「置換前メッセージMSB、条件COE(表示条件)、指定変数VAD、表示規則RUEなど」を、HMI10に通知する。ユーザが、開発支援装置30を用いて、条件COE、置換前メッセージMSB、指定変数VAD、表示規則RUEなどを設定する操作について、その詳細は図4を用いて後述する。
 HMI10は、開発支援装置30から通知された「置換前メッセージMSB、条件COE、指定変数VAD、表示規則RUEなど」を記憶部120に格納し、これらとPLC20から取得する変数の値とによって、置換後メッセージMSAを生成する。具体的には、HMI10は、指定変数VADの値から、表示規則RUEに従って、置換後文字列CSAを生成する。そして、HMI10は、生成した置換後文字列CSAによって置換前メッセージMSBの可変文字列CSVを置換して、置換後メッセージMSAを生成する。HMI10は、生成した置換後メッセージMSA(例えば、アラームメッセージ)を、表示する。
 §2.構成例
 これまで、図2を用いて、制御システム1の概要を説明してきた。次に、HMI10について、その詳細を説明する。図1等を用いて以下に詳細を説明するHMI10について、最初に概要を整理しておけば、以下の通りである。
 すなわち、HMI10は、PLC20(制御装置)に通信可能に接続される表示器である。HMI10は、記憶部120と、取得部110と、表示制御部150とを備える。
 記憶部120(特に、置換前メッセージテーブル125)には、「可変文字列CSVと固定文字列CSFとを含む一文である置換前メッセージMSB」が予め格納されている。取得部110は、PLC20にて更新された所定の変数(指定変数VADに対応する変数)の値を取得する。表示制御部150は、取得部110によって取得された「所定の変数(指定変数VADに対応する変数)の値」によって可変文字列CSVを置換した文字列である置換後文字列CSAと、固定文字列CSFとを含む一文である置換後メッセージMSAを表示する。
 以下の説明では、PLC20のPLC記憶部210に格納されており、PLC20によってその値を更新される「所定の変数(指定変数VADに対応する変数)」を、「指定変数VAD」と称することがある。すなわち、指定変数VADは、PLC20のPLC記憶部210と、HMI10の記憶部120(特に、同期変数テーブル121)とに格納されている。
 取得部110は、PLC20のPLC記憶部210に格納されている指定変数VADの値を取得し、取得した値で、記憶部120の同期変数テーブル121に格納されている指定変数VADの値を更新する。取得部110は、この更新処理を、定期的に、または、PLC記憶部210に格納されている指定変数VADの値が変更されたタイミングで、実行する。これによって、記憶部120の同期変数テーブル121に格納されている指定変数VADの値は、PLC20のPLC記憶部210に格納されている指定変数VADの値に同期する。
 前記の構成によれば、HMI10は、「可変文字列CSVと固定文字列CSFとを含む一文である置換前メッセージMSB」を、予め記憶部120(特に、置換前メッセージテーブル125)に格納している。HMI10は、前記所定の変数(指定変数VADに対応する変数)の値がPLC20によって更新されると、更新後の値を取得する。そして、HMI10は、『「取得した更新後の値によって可変文字列CSVを置換した文字列である置換後文字列CSA」と、固定文字列CSFとを含む一文である置換後メッセージMSA』を表示する。
 したがって、HMI10は、「予め記憶している固定的な文字列(すなわち、固定文字列CSF)と、状況に応じて内容が変化する可変的な文字列(すなわち、置換後文字列CSA)とを含む一文である置換後メッセージMSA」を表示できるとの効果を奏する。
 特に、HMI10は、予め記憶部120に格納している置換前メッセージMSBを基に、PLC20から取得した前記所定の変数(指定変数VADに対応する変数)の値を用いて、置換後メッセージMSAを表示する。
 したがって、HMI10は、「サーバがPLC20(制御装置)から所定の変数の値を取得し、サーバが表示器に表示させるべきメッセージを生成して、表示器はサーバから取得したメッセージを表示する」構成と比較して、以下の効果を奏する。すなわち、HMI10は、上述の構成と比較して、PLC20における前記所定の変数の値の変化に応じて、前記所定の変数の値の変化に対応させて内容を変化させた一文である置換後メッセージMSAを、早急にユーザに通知できるとの効果を奏する。
 HMI10において、記憶部120にはさらに、ユーザによって設定された「置換後メッセージMSAの表示条件である条件COE」が予め格納されており、具体的には、表示条件情報123として、条件COEが予め格納されている。HMI10は、条件COEが満たされたか否かを判定する判定部130を備えている。そして、判定部130によって条件COEが満たされたと判定されると、HMI10の表示制御部150は、置換後メッセージMSAを表示する。
 前記の構成によれば、HMI10は、『「ユーザによって設定された、HMI10がメッセージを表示する条件COE」が満たされた』と判定すると、置換後メッセージMSAを表示する。
 置換後メッセージMSAは、置換前メッセージMSBから生成される。そのため、表示条件情報123において、「置換後メッセージMSAの表示条件である条件COE」は、置換前メッセージMSBごとに定義されている。HMI10は、或る置換前メッセージMSBについて定義されている条件COEが満たされていると判定すると、その或る置換前メッセージMSBに対応する置換後メッセージMSAを生成する。そして、HMI10は、生成した置換後メッセージMSAを、自装置の表示部に表示する。
 したがって、HMI10は、「ユーザによって設定された、条件COE」が満たされた場合に、「予め記憶している固定的な文字列と、状況に応じて内容が変化する可変的な文字列とを含む一文である置換後メッセージMSA」を表示できるとの効果を奏する。
 HMI10において、条件COEは、PLC20が所定の状態を検知したことであってもよい。
 前記の構成によれば、HMI10は、PLC20が所定の状態を検知すると、置換後メッセージMSAを表示する。例えば、HMI10は、PLC20が異常状態を検知すると、異常状態が検知された対象を特定する文字列を置換後文字列CSAとして含む一文である置換後メッセージMSAを表示する。
 したがって、HMI10は、PLC20が所定の状態を検知すると、「予め記憶している固定的な文字列と、状況に応じて内容が変化する可変的な文字列とを含む一文である置換後メッセージMSA」を表示することができるとの効果を奏する。
 HMI10において、記憶部120にはさらに、「ユーザによって設定された、指定変数VAD」を特定する情報(具体的には、表示設定情報124)が予め格納されている。
 前記の構成によれば、HMI10は、「記憶部120に格納されている表示設定情報124により特定される指定変数VAD」の値(特に、更新後の値)を取得する。HMI10は、『「取得した指定変数VADの値によって可変文字列CSVを置換した置換後文字列CSA」と、固定文字列CSFとを含む一文である置換後メッセージMSA』を表示する。そして、「記憶部120に格納されている表示設定情報124により特定される指定変数VAD」は、ユーザによって設定される。
 例えば、ユーザは、「記憶部120に格納されている表示設定情報124」を変更することによって、ユーザが所望する指定変数VADの値を、HMI10に表示させることができる。つまり、ユーザは、HMI10が置換後メッセージMSAメッセージにおいて表示する情報の内容を変更することができる。言い換えれば、ユーザは、HMI10に、ユーザが所望する情報(指定変数VADの値)を、置換後文字列CSAとして表示させることができる。
 したがって、HMI10は、『「ユーザによって設定された指定変数VAD」の値によって可変文字列CSVを置換した置換後文字列CSAと、固定文字列CSFとを含む一文である置換後メッセージMSA』を表示することができるとの効果を奏する。
 HMI10において、記憶部120にはさらに、表示規則RUEを格納しており、具体的には、表示設定情報124の一部として、表示規則RUEを格納している。表示規則RUEは、ユーザによって設定された表示規則である。表示規則RUEは、取得部110によって取得された「前記所定の変数(指定変数VADに対応する変数)の値」を置換後文字列CSAとして表示する際の表示規則である。表示制御部150は、取得部110によって取得された「前記所定の変数(指定変数VADに対応する変数)の値」を、表示規則RUEに従って、置換後文字列CSAとして表示する。
 前記の構成によれば、HMI10は、「ユーザによって設定された表示規則RUE」に従って、指定変数VADの値から、置換後文字列CSAを生成する。そして、HMI10は、「生成した置換後文字列CSAと、固定文字列CSFとを含む置換後メッセージMSA」を表示する。
 例えば、表示規則RUEは、数値を表示する際に何進法で表示するかであったり、表示する数値の整数部の最小桁数であったり、表示する数値の少数部の桁数であったり、数値を表示する際のカンマ区切りの有無等の組合せであってもよい。
 ユーザは、記憶部120に格納されている表示規則RUEを変更することによって、HMI10が表示する置換後文字列CSAの表示書式等を変更することができる。
 したがって、HMI10は、『「ユーザによって設定された表示規則RUEに従って生成した置換後文字列CSA」と、固定文字列CSFとを含む置換後メッセージMSA』を表示することができるとの効果を奏する。
 (表示器および制御装置の詳細構成について)
 これまでに概要を説明してきたHMI10について、次に図1等を参照してその詳細を説明していく。
 図1は、HMI10およびPLC20の要部構成を示すブロック図である。記載の簡潔性を担保するため、HMI10およびPLC20の各々について、本実施の形態に直接関係のない構成は、説明およびブロック図から省略している。
  (制御装置の詳細構成)
 PLC20は、PLC記憶部210を備え、PLC記憶部210には、1つ以上の変数が格納されている。図1に例示するPLC記憶部210には、第1変数211(1)、第2変数211(2)、・・・、第n変数211(n)が格納されている。
 PLC20は、マスタスレーブ制御システムのマスタ装置として、1つ以上のスレーブ装置40との間で通信している。そして、PLC20は、例えば、スレーブ装置40(または、デバイス50)に所定の状態が発生したのを検知すると、PLC記憶部210に格納されている変数の値を変更する。PLC20は、PLC記憶部210に格納されている変数の値を変更したことを、HMI10に通知してもよい。
  (表示器の詳細構成)
 図1に示すように、HMI10は、機能ブロックとして、取得部110、記憶部120、判定部130、置換部140、および、表示制御部150を備えている。
 HMI10は、上述の各機能ブロックに加え、ユーザから受け付けた操作に応じてPLC20の各種の設定を変更するPLC設定変更部などを備えていてもよい。しかしながら、記載の簡潔性を担保するため、本実施の形態に直接関係のない構成は、説明およびブロック図から省略している。ただし、実施の実情に則して、HMI10は、当該省略された構成を備えてもよい。
  (記憶部以外の機能ブロックについて)
 取得部110は、PLC20と通信してPLC記憶部210に格納されている変数の値を取得し、取得した値によって、記憶部120の同期変数テーブル121に格納されている変数の値を更新する。取得部110は、この更新処理を、定期的に、または、PLC記憶部210に格納されている変数の値が変更されたタイミングで、実行する。これによって、記憶部120の同期変数テーブル121に格納されている変数の値は、PLC20のPLC記憶部210に格納されている変数の値に同期する。
 判定部130は、記憶部120の表示条件情報123を参照して、置換前メッセージMSBごとに定義されている条件COEを取得する。前述の通り、置換後メッセージMSAは、置換前メッセージMSBから生成される。そのため、表示条件情報123において、「置換後メッセージMSAの表示条件である条件COE」は、置換前メッセージMSBごとに定義されている。
 例えば、判定部130は、置換前メッセージMSB(1)に対して定義されている条件COE(1)、置換前メッセージMSB(2)に対して定義されている条件COE(2)を取得する。同様に、判定部130は、置換前メッセージMSB(m)に対して定義されている条件COE(m)、置換前メッセージMSB(n)に対して定義されている条件COE(n)を取得する。
 以下、複数の置換前メッセージMSBを互いに区別する必要がある場合には、上述のように、符号に「(1)」、「(2)」、「(3)」、・・・、「(n)」等の添え字を付して区別する。例えば、「置換前メッセージMSB(1)」、「置換前メッセージMSB(2)」、「置換前メッセージMSB(3)」、・・・、「置換前メッセージMSB(n)」と記載して区別する。複数の置換前メッセージMSBの各々を特に区別する必要がない場合は単に「置換前メッセージMSB」と称する。
 同様に、複数の条件COEを互いに区別する必要がある場合には、上述のように、符号に「(1)」、「(2)」、「(3)」、・・・、「(n)」等の添え字を付して区別する。例えば、「条件COE(1)」、「条件COE(2)」、「条件COE(3)」、・・・、「条件COE(n)」と記載して区別する。複数の条件COEの各々を特に区別する必要がない場合は単に「条件COE」と称する。
 判定部130は、取得した条件COEが満たされているかを判定し、判定結果を、置換部140および表示制御部150に通知する。判定部130は、条件COE(1)から条件COE(n)までの「n」個の条件COEを取得し、取得した「n」個の条件COEの各々について、「満たされているか」を判定し、判定結果を、置換部140および表示制御部150に通知する。
 判定部130は、例えば以下のようにして、条件COEが満たされているかを判定する。すなわち、判定部130は、条件COEにおいて定義されている変数について、その値が、条件COEにおいて定義されている値となっているかを確認する。判定部130は、条件COEにおいて定義されている変数について、その値が、条件COEにおいて定義されている値となっていることを確認すると、「条件COEが満たされている」と判定する。そして、判定部130は、その判定結果を、置換部140および表示制御部150に通知する。
 具体的には、条件COE(x)が、『第1同期変数122(x1)の値が「True」であり、かつ、第2同期変数122(x2)の値が「True」である』場合、判定部130は、同期変数テーブル121を参照して、以下の確認を実行する。すなわち、判定部130は、『第1同期変数122(x1)の値が「True」であり、かつ、第2同期変数122(x2)の値が「True」であるか』を、確認する。『第1同期変数122(x1)の値が「True」であり、かつ、第2同期変数122(x2)の値が「True」である』ことを確認すると、判定部130は、条件COE(x)が満たされていると判定する。
 判定部130は、「或る条件COEが満たされている」と判定すると、その或る条件COEに対応する置換前メッセージMSBの識別情報を、置換部140および表示制御部150に通知してもよい。例えば、判定部130は、「条件COE(x)が満たされている」と判定すると、条件COE(x)に対応する置換前メッセージMSBである置換前メッセージMSB(x)の識別情報を、置換部140および表示制御部150に通知してもよい。判定部130は、置換部140および表示制御部150に、「置換前メッセージMSB(x)の条件COE(x)が満たされている」との判定結果を通知してもよい。
 置換部140は、判定部130から、「或る条件COEが満たされている」との判定結果を通知されると、以下の6つの処理を実行する。
 第一に、置換部140は、その或る条件COEが定義されている置換前メッセージMSBを、記憶部120の置換前メッセージテーブル125を参照して、取得する。例えば、「条件COE(x)が満たされている」との判定結果を通知されると、置換部140は、置換前メッセージテーブル125を参照して、条件COE(x)が定義されている置換前メッセージMSB(x)を取得する。判定部130から、「置換前メッセージMSB(x)の条件COE(x)が満たされている」旨、または、置換前メッセージMSB(x)の識別情報を通知された場合も、置換部140は、条件COE(x)に対応する置換前メッセージMSB(x)を取得する。
 第二に、置換部140は、「その或る条件COEが定義されている置換前メッセージMSB」について定義されている指定変数VADおよび表示規則RUEを、記憶部120の表示設定情報124を参照して、取得する。例えば、「条件COE(x)が満たされている」との判定結果を通知されると、置換部140は、「条件COE(x)が定義されている置換前メッセージMSB(x)」について定義されている指定変数VAD(x)および表示規則RUE(x)を取得する。判定部130から、「置換前メッセージMSB(x)の条件COE(x)が満たされている」旨、または、置換前メッセージMSB(x)の識別情報を通知された場合も、置換部140は、指定変数VAD(x)および表示規則RUE(x)を取得する。
 以下、複数の指定変数VADを互いに区別する必要がある場合には、上述のように、符号に「(1)」、「(2)」、「(3)」、・・・、「(n)」、「(x)」等の添え字を付して区別する。例えば、「指定変数VAD(1)」、「指定変数VAD(2)」、「指定変数VAD(3)」、・・・、「指定変数VAD(n)」、「指定変数VAD(x)」と記載して区別する。複数の指定変数VADの各々を特に区別する必要がない場合は単に「指定変数VAD」と称する。
 同様に、複数の表示規則RUEを互いに区別する必要がある場合には、上述のように、符号に「(1)」、「(2)」、「(3)」、・・・、「(n)」、「(x)」等の添え字を付して区別する。例えば、「表示規則RUE(1)」、「表示規則RUE(2)」、「表示規則RUE(3)」、・・・、「表示規則RUE(n)」、「表示規則RUE(x)」と記載して区別する。複数の表示規則RUEの各々を特に区別する必要がない場合は単に「表示規則RUE」と称する。
 第三に、置換部140は、「その或る条件COEが定義されている置換前メッセージMSB」について定義されている指定変数VADの値を、同期変数テーブル121を参照して、取得する。例えば、表示設定情報124において、置換前メッセージMSB(x)について指定変数VADとして指定変数VAD(x)が定義されていると、置換部140は、同期変数テーブル121を参照して、指定変数VAD(x)の値を取得する。
 第四に、置換部140は、置換部140は、第三の処理で取得した指定変数VADの値から、「その或る条件COEが定義されている置換前メッセージMSB」について定義されている表示規則RUEに従って、置換後文字列CSAを生成する。
 第五に、置換部140は、第一の処理で取得した置換前メッセージMSBの可変文字列CSVを、第四の処理で生成した置換後文字列CSAで置換し、「置換後文字列CSAと、固定文字列CSFとを含む一文である置換後メッセージMSA」を生成する。
 第六に、置換部140は、第5の処理で生成した置換後メッセージMSAを、置換後メッセージテーブル126に格納する。また、置換部140は、「置換後メッセージMSAを置換後メッセージテーブル126に格納した」ことを、表示制御部150に通知する。
 表示制御部150は、記憶部120の置換後メッセージテーブル126を参照して、置換後メッセージMSAを取得し、取得した置換後メッセージMSAを、HMI10の表示部に表示する。
 例えば、表示制御部150は、判定部130から「或る条件COEが満たされている」との判定結果を通知された後、以下のタイミングで、置換後メッセージMSAを表示する。すなわち、表示制御部150は、判定部130からの上記判定結果の通知を受け取った後、置換部140から「置換後メッセージMSAを置換後メッセージテーブル126に格納した」ことを通知されると、置換後メッセージMSAを表示する。
  (記憶部について)
 記憶部120は、HMI10が使用する各種データを格納する記憶装置である。なお、記憶部120は、HMI10が実行する(1)制御プログラム、(2)OSプログラム、(3)HMI10が有する各種機能を実行するためのアプリケーションプログラム、および、(4)該アプリケーションプログラムを実行するときに読み出す各種データを非一時的に記憶してもよい。上記の(1)~(4)のデータは、例えば、ROM(read only memory)、フラッシュメモリ、EPROM(Erasable Programmable ROM)、EEPROM(登録商標)(Electrically EPROM)、HDD(Hard Disc Drive)等の不揮発性記憶装置に記憶される。HMI10は、図示しない一時記憶部を備えていてもよい。一時記憶部は、HMI10が実行する各種処理の過程で、演算に使用するデータおよび演算結果等を一時的に記憶するいわゆるワーキングメモリであり、RAM(Random Access Memory)等の揮発性記憶装置で構成される。どのデータをどの記憶装置に記憶するのかについては、PLC20の使用目的、利便性、コスト、または、物理的な制約等から適宜決定される。記憶部120はさらに、同期変数テーブル121、表示条件情報123、表示設定情報124、置換前メッセージテーブル125、および、置換後メッセージテーブル126を格納している。
 同期変数テーブル121には、PLC記憶部210に格納されている変数に対応する変数が格納されている。図1に例示するPLC記憶部210には、第1変数211(1)、第2変数211(2)、・・・、第n変数211(n)が格納されている。これに対応して、同期変数テーブル121には、第1変数211(1)、第2変数211(2)、・・・、第n変数211(n)の各々に対応する、第1同期変数122(1)、第2同期変数122(2)、・・・、第n同期変数122(n)が格納されている。
 表示条件情報123には、置換後メッセージMSAを表示する条件として、「置換後メッセージMSAに対応する置換前メッセージMSB(つまり、置換後メッセージMSAの基になる置換前メッセージMSB)」ごとに、条件COEが定義されている。
 例えば、置換後メッセージMSA(1)に対応する置換前メッセージMSB(1)に対して、条件COE(1)が、置換後メッセージMSA(2)に対応する置換前メッセージMSB(2)に対して、条件COE(2)が、定義されている。同様に、置換後メッセージMSA(m)に対応する置換前メッセージMSB(m)に対して、条件COE(m)が、置換後メッセージMSA(n)に対応する置換前メッセージMSB(n)に対して、条件COE(n)が、定義されている。
 条件COEは、置換後メッセージMSAを表示する条件として、同期変数テーブル121に格納されている変数の値を定義している。すなわち、条件COEは、変数と、その変数の値との組合せとして、置換後メッセージMSAを表示する条件を定義している。
 条件COEは、ユーザによって予め設定され、例えば、HMI10は、ユーザが開発支援装置30を用いて設定した条件COEを、開発支援装置30から取得し、取得した条件COEを、表示条件情報123として記憶部120に格納する。
 表示設定情報124には、置換前メッセージMSBごとに、指定変数VADおよび表示規則RUEが定義されている。例えば、置換前メッセージMSB(1)に対して、指定変数VAD(1)および表示規則RUE(1)が、置換前メッセージMSB(2)に対して、指定変数VAD(2)および表示規則RUE(2)が、定義されている。同様に、置換前メッセージMSB(m)に対して、指定変数VAD(m)および表示規則RUE(m)が、置換前メッセージMSB(n)に対して、指定変数VAD(n)および表示規則RUE(n)が、定義されている。
 置換前メッセージMSBに含まれる可変文字列CSVが複数である場合、表示設定情報124には、置換前メッセージMSBに含まれる可変文字列CSVごとに、指定変数VADおよび表示規則RUEが定義されていてもよい。例えば、置換前メッセージMSB(x)が可変文字列CSV(x1)および可変文字列CSV(x2)を含む場合、可変文字列CSV(x1)および可変文字列CSV(x2)の各々に対して、指定変数VADおよび表示規則RUEが定義されていてもよい。
 具体的には、置換前メッセージMSB(x)の可変文字列CSV(x1)に対して、指定変数VAD(x1)および表示規則RUE(x1)が、可変文字列CSV(x2)に対して、指定変数VAD(x2)および表示規則RUE(x2)が、定義されていてもよい。同様に、置換前メッセージMSB(y)の可変文字列CSV(y1)に対して、指定変数VAD(y1)および表示規則RUE(y1)が、可変文字列CSV(y2)に対して、指定変数VAD(y2)および表示規則RUE(y2)が、定義されていてもよい。
 指定変数VADおよび表示規則RUEは、ユーザによって予め設定される。例えば、HMI10は、ユーザが開発支援装置30を用いて設定した指定変数VADおよび表示規則RUEを、開発支援装置30から取得し、取得した指定変数VADおよび表示規則RUEを、表示設定情報124として記憶部120に格納する。
 置換前メッセージテーブル125には、「可変文字列CSVと固定文字列CSFとを含む一文である置換前メッセージMSB」が予め1つ以上格納されている。置換前メッセージMSBは、ユーザによって予め設定される。例えば、HMI10は、ユーザが開発支援装置30を用いて設定した置換前メッセージMSBを、開発支援装置30から取得し、取得した置換前メッセージMSBを、置換前メッセージテーブル125に格納する。
 置換後メッセージテーブル126には、「置換後文字列CSAと、固定文字列CSFとを含む一文である置換後メッセージMSA」が格納される。置換後メッセージMSAは、置換部140によって置換後メッセージテーブル126に格納され、表示制御部150によって置換後メッセージテーブル126から読み出され、HMI10の表示部に表示される。
 (HMIとPLCとの間における変数の値の同期について)
 図3は、HMI10とPLC20との間における変数の値の同期について説明する図である。HMI10とPLC20との間で、対応する変数の値は同期している。例えば、HMI10の同期変数テーブル121に格納されている1つ以上の変数と、PLC20のPLC記憶部210に格納されている1つ以上の変数とは互いに対応付けられており、各々の値は同期している。
 一例を挙げれば、図1の同期変数テーブル121には、第1同期変数122(1)、第2同期変数122(2)、・・・、第n同期変数122(n)が格納されている。また、PLC記憶部210には、第1変数211(1)、第2変数211(2)、・・・、第n変数211(n)が格納されている。ここで、第1同期変数122(1)、第2同期変数122(2)、・・・、第n同期変数122(n)の各々と、第1変数211(1)、第2変数211(2)、・・・、第n変数211(n)の各々とは、互いに対応付けられている。そして、第1同期変数122(1)、第2同期変数122(2)、・・・、第n同期変数122(n)の各々の値と、第1変数211(1)、第2変数211(2)、・・・、第n変数211(n)の各々の値とは、同期している。
 HMI10の取得部110は、PLC記憶部210に格納されている第1変数211(1)、第2変数211(2)、・・・、第n変数211(n)の各々の値を取得する。取得部110は、取得した各々の値を、同期変数テーブル121に格納されている第1同期変数122(1)、第2同期変数122(2)、・・・、第n同期変数122(n)の各々の値とし、つまり、同期変数テーブル121に格納されている変数の値を更新する。取得部110が実行する、「PLC記憶部210に格納されている変数の値の取得、および、取得した値による、同期変数テーブル121に格納されている変数の値の更新」を、更新処理とも称する。
 例えば、取得部110は、周期的に、または、PLC20から「PLC記憶部210に格納されている変数の値が変更された」こと(PLC側のデータ変化)を通知されると、上述の更新処理を実行する。取得部110による周期的またはPLC側のデータ変化を契機とする更新処理によって、HMI10とPLC20との間で、対応する変数の値は同期している。
 図3には、「ErrRobot1」、「AbnormalError」、および、「LotNo」という3つの変数が、HMI10とPLC20との間で値が同期している変数の例として挙げられている。すなわち、図3に示す例では、HMI10の同期変数テーブル121に、「ErrRobot1」、「AbnormalError」、および、「LotNo」という3つの変数が格納されているものとする。また、PLC20のPLC記憶部210にも、同様に、「ErrRobot1」、「AbnormalError」、および、「LotNo」という3つの変数が格納されているものとする。
 例えば、互いに対応する第1同期変数122(1)と第1変数211(1)とは、共に、「ErrRobot1」という変数名の変数であり、この変数は、『Robot1でエラーが発生すると、値が「True」になる』変数である。
 すなわち、PLC20は、デバイス50(1)である「Robot1」でエラーが発生すると、「ErrRobot1」の値を「True」にし、つまり、第1変数211(1)の値を「True」にする。
 ここで、前述の通り、取得部110による周期的またはPLC側のデータ変化を契機とする更新処理によって、HMI10とPLC20との間で、対応する変数の値は同期している。
 そのため、PLC20が第1変数211(1)(つまり、「ErrRobot1」)の値を「True」にすると、HMI10の同期変数テーブル121に格納されている第1同期変数122(1)(つまり、「ErrRobot1」)の値も、「True」になる。
 例えば、互いに対応する第2同期変数122(2)と第2変数211(2)とは、共に、「AbnormalError」という変数名の変数であり、この変数は、『ラインを停止すべきエラーが発生すると、値が「True」になる』変数である。
 すなわち、PLC20は、ラインを停止すべきエラーが発生すると(例えば、Robot1でエラーが発生すると)、「AbnormalError」の値を「True」にし、つまり、第2変数211(2)の値を「True」にする。
 ここで、前述の通り、取得部110による周期的またはPLC側のデータ変化を契機とする更新処理によって、HMI10とPLC20との間で、対応する変数の値は同期している。
 そのため、PLC20が第2変数211(2)(つまり、「AbnormalError」)の値を「True」にすると、HMI10の同期変数テーブル121に格納されている第2同期変数122(2)(つまり、「AbnormalError」)の値も、「True」になる。
 例えば、互いに対応する第3同期変数122(3)と第3変数211(3)とは、共に、「LotNo」という変数名の変数であり、この変数の値は、「現在、ラインを流れている製品の識別番号(ロット番号)」である。
 すなわち、PLC20は、「現在、ラインを流れている製品の識別番号(ロット番号)」(以下、「現在製品番号」と略記することがある)を、「LotNo」の値とし、つまり、第2変数211(2)の値として、「現在製品番号」を格納する。
 ここで、前述の通り、取得部110による周期的またはPLC側のデータ変化を契機とする更新処理によって、HMI10とPLC20との間で、対応する変数の値は同期している。
 そのため、PLC20が第3変数211(3)(つまり、「LotNo」)の値を「現在製品番号」にすると、HMI10の同期変数テーブル121に格納されている第3同期変数122(3)(つまり、「LotNo」)の値も、「現在製品番号」になる。
 (メッセージ表示のための準備作業について)
 図4は、ユーザが、開発支援装置30を用いて、HMI10が置換後メッセージMSAを表示する表示条件である条件COE、置換前メッセージMSB、指定変数VAD、表示規則RUEを設定する作業(操作)の一例を説明する図である。
 図4の(A)は、ユーザが、開発支援装置30を用いて、条件COEおよび置換前メッセージMSBを設定する例を示す図である。例えば、開発支援装置30は、図4の(A)に例示する画像例を表示して、ユーザに、条件COEおよび置換前メッセージMSBを設定させる。
  (表示条件の設定について)
 図4の(A)に例示する画像例において、ユーザは、「条件式」に「HMI10が置換後メッセージMSA(例えば、アラームメッセージ)を表示する条件COE(表示条件)」を設定し、例えば、条件式(式)の形式で、条件COEを設定する。
 図4の(A)には、「ErrRobot1 And AbnormalError」という条件式の形式で、条件COEが設定されている。この条件COEは、『「ErrRobot1」という変数の値が「True」であり、かつ、「AbnormalError」という変数の値が「True」である』との条件を示している。
 図3を用いて説明したように、「ErrRobot1」という変数は、例えば、PLC記憶部210に格納されている第1変数211(1)であり、また、同期変数テーブル121に格納されている第1同期変数122(1)である。「AbnormalError」という変数は、例えば、PLC記憶部210に格納されている第2変数211(2)であり、また、同期変数テーブル121に格納されている第2同期変数122(2)である。
  (表示させたいメッセージの設定について)
 図4の(A)に例示する画像例において、ユーザはさらに、「条件COEが満たされた時にHMI10に表示させたいメッセージ(置換後メッセージMSA)」を設定し、具体的には、置換後メッセージMSAの基になる置換前メッセージMSBを設定する。
 置換前メッセージMSBは、可変文字列CSVと固定文字列CSFとを含む一文である。可変文字列CSVは、ユーザによって設定された変数である指定変数VADの値によって置換される文字列であり、つまり、状況に応じて内容が変化する可変的な文字列である。固定文字列CSFは、ユーザによって予め設定されたまま表示される文字列であり、つまり、予め表示内容が決められている固定的な文字列である。
 図4の(A)に例示する画像例において、置換前メッセージMSBは、「LotNo{%%}溶接不良」である。置換前メッセージMSBにおける「{%%}」は、条件COE(表示条件)が満たされた時に、ユーザの設定する変数である指定変数VADに入っている値に置き換えられる文字列であり、つまり、可変文字列CSVである。置換前メッセージMSBにおいて「{%%}」以外の文字列は、固定文字列CSFである。
 つまり、「LotNo{%%}溶接不良」という置換前メッセージMSBは、「LotNo」という固定文字列CSFと、「溶接不良」という固定文字列CSFとの間に、指定変数VADである「{%%}」が挿入された一文である。
  (表示条件と表示させたいメッセージとの関係について)
 図4の(A)を用いて説明したように、ユーザは、「HMI10が置換後メッセージMSA(例えば、アラームメッセージ)を表示する条件COE(表示条件)」を、置換後メッセージMSAの基になる置換前メッセージMSBごとに設定する。言い換えれば、条件COEと置換前メッセージMSBとは対応付けられている。
 例えば、置換前メッセージMSB(1)には、その表示条件として条件COE(1)が、置換前メッセージMSB(2)には、その表示条件として条件COE(2)が、対応付けられている。同様に、置換前メッセージMSB(m)には、その表示条件として条件COE(m)が、置換前メッセージMSB(n)には、その表示条件として条件COE(n)が、対応付けられている。
  (表示条件および表示させたいメッセージの登録について)
 開発支援装置30は、図4の(A)に例示する画像例を用いてユーザが設定した条件COEおよび置換前メッセージMSBを、HMI10へと送信する。HMI10は、開発支援装置30から、ユーザが設定した条件COEを受信すると、受信した条件COEを、表示条件情報123として記憶部120に格納する。また、HMI10は、開発支援装置30から、ユーザが設定した置換前メッセージMSBを受信すると、受信した置換前メッセージMSBを、記憶部120の置換前メッセージテーブル125に格納する。
 上述の通り、条件COEは、HMI10が置換後メッセージMSAを表示する条件であり、置換前メッセージMSBは、条件COEが満たされた時にHMI10が表示する置換後メッセージMSAの基になる位置文である。そのため、条件COEと置換前メッセージMSBとは互いに対応付けられており、表示条件情報123において、条件COEは、置換前メッセージMSBに対応付けられている。
 表示条件情報123において、例えば、置換前メッセージMSB(1)には、その表示条件として条件COE(1)が、置換前メッセージMSB(2)には、その表示条件として条件COE(2)が、対応付けられている。同様に、表示条件情報123において、例えば、置換前メッセージMSB(m)には、その表示条件として条件COE(m)が、置換前メッセージMSB(n)には、その表示条件として条件COE(n)が、対応付けられている。
  (指定変数および表示規則の設定について)
 図4の(B)は、ユーザが、開発支援装置30を用いて、指定変数VADおよび表示規則RUEを設定する例を示す図である。例えば、開発支援装置30は、図4の(B)に例示する画像例を表示して、ユーザに、置換前メッセージMSBごとに、指定変数VADおよび表示規則RUEを設定させる。
  (指定変数の設定について)
 図4の(B)に例示する画像例において、ユーザは、『図4の(A)において設定した置換前メッセージMSBにおける「{%%}」(つまり、可変文字列CSV)と置き換える値を格納する変数』である指定変数VADを設定する。図4の(B)に示す例において、ユーザは、指定変数VADとして、「LotNo」という変数名の変数を設定している。図3を用いて説明したように、「LotNo」という変数は、例えば、PLC記憶部210に格納されている第3変数211(3)であり、また、同期変数テーブル121に格納されている第3同期変数122(3)である。ユーザは、指定変数VADを、同期変数テーブル121に格納されている変数の中から選択する。
 図4の(B)には、置換前メッセージMSBが含む可変文字列CSVが1つである例が示されている。しかしながら、置換前メッセージMSBが含む可変文字列CSVは複数であってもよい。置換前メッセージMSBが複数の可変文字列CSVを含む場合、ユーザは、複数の可変文字列CSVの各々と置き換えたい値を格納する複数の指定変数VADを設定してもよい。
 例えば、置換前メッセージMSB(x)が可変文字列CSV(x1)および可変文字列CSV(x2)を含む場合、ユーザは、可変文字列CSV(x1)および可変文字列CSV(x2)の各々と置き換えたい値を格納する複数の指定変数VADを設定してもよい。具体的には、ユーザは、可変文字列CSV(x1)と置き換えたい値を格納する変数として、同期変数テーブル121に格納されている第p同期変数122(p)を設定してもよい。同様に、ユーザは、可変文字列CSV(x2)と置き換えたい値を格納する変数として、同期変数テーブル121に格納されている第q同期変数122(q)を設定してもよい。
  (表示規則の設定について)
 図4の(B)に例示する画像例において、ユーザはさらに、HMI10が可変文字列CSVと置き換えて指定変数VADの値を表示する際の表示規則RUE(例えば、表示書式)を設定する。
 図4の(B)には、表示規則RUEの例として、以下のものが挙げられている。すなわち、「数値を何進法で表示するか(格納形式)」、「数値を表示する際、整数部の最小桁数は何桁にするか(整数部最小桁数)」、「少数部の桁数は何桁にするか(少数部桁数)」、「桁区切りの有無」の組合せが、表示規則RUEの例として挙げられている。
 図4の(B)において、ユーザは、「格納形式」として「10進法」を選択しているため、HMI10が可変文字列CSVと置き換えて指定変数VADの値を表示する際には、指定変数VADの値は10進法で表示された数値となる。
 また、図4の(B)において、ユーザは、「整数部最小桁数:1」、「少数部桁数:0」、「桁区切りの有無:無し」を選択している。そこで、HMI10は、『指定変数VADの値を、「整数部最小桁数:1」、「少数部桁数:0」、「桁区切りの有無:無し」で表示した置換後文字列CSA』によって可変文字列CSVを置き換えた置換後メッセージMSAを表示する。
 図4の(B)には、ユーザによって、1つの指定変数VADの値について、1つの表示規則RUEが設定される例が示されている。置換前メッセージMSBが含む可変文字列CSVが複数である場合、ユーザは、各々が複数の可変文字列CSVの各々に対応する、複数の指定変数VADの各々について、表示規則RUEを設定してもよい。
 例えば、ユーザは、置換前メッセージMSB(x)に含まれる可変文字列CSV(x1)および可変文字列CSV(x2)の各々に、第p同期変数122(p)および第q同期変数122(q)の各々を対応付けると共に、以下の表示規則RUEを設定してもよい。すなわち、ユーザは、第p同期変数122(p)について表示規則RUE(p)を設定し、第q同期変数122(q)について表示規則RUE(q)を設定してもよい。
  (指定変数および表示規則と表示させたいメッセージとの関係について)
 図4の(B)を用いて説明したように、ユーザは、「置換前メッセージMSBにおける可変文字列CSVと置き換えたい値を格納する変数である指定変数VAD」を、例えば、置換前メッセージMSBごとに設定する。言い換えれば、指定変数VADと置換前メッセージMSBとは対応付けられている。
 例えば、置換前メッセージMSB(1)には、指定変数VAD(1)が、置換前メッセージMSB(2)には、指定変数VAD(2)が、対応付けられている。同様に、置換前メッセージMSB(m)には、指定変数VAD(m)が、置換前メッセージMSB(n)には、指定変数VAD(n)が、対応付けられている。
 同様に、ユーザは、「置換前メッセージMSBにおける可変文字列CSVと置き換えて置換後文字列CSA(つまり、指定変数VADの値)を表示する際に適用すべき表示規則RUE(表示形式)」を、例えば、置換前メッセージMSBごとに設定する。言い換えれば、表示規則RUEと置換前メッセージMSBとは対応付けられている。
 ただし、1つの置換前メッセージMSBが複数の可変文字列CSVを含む場合、指定変数VADおよび表示規則RUEは、各々、複数の可変文字列CSVの各々に対して設定されてもよい。
  (表示条件および表示させたいメッセージの登録について)
 開発支援装置30は、図4の(B)に例示する画像例を用いてユーザが設定した指定変数VADおよび表示規則RUEを、HMI10へと送信する。HMI10は、開発支援装置30から、ユーザが設定した指定変数VADおよび表示規則RUEを受信すると、受信した指定変数VADおよび表示規則RUEを、表示設定情報124として記憶部120に格納する。
 指定変数VADおよび表示規則RUEが置換前メッセージMSBごとに設定される場合、表示設定情報124において、指定変数VADおよび表示規則RUEは、各々、置換前メッセージMSBに対応付けられている。
 (アラームメッセージを表示する処理の全体概要について)
 図5は、HMI10が置換後メッセージMSAを表示する際に実行する処理などの流れについて、その概要を説明する図である。
  (PLCにおける変数の値の更新)
 PLC20は、デバイス50(1)である「Robot1」でエラーが発生すると(「(1)異常発生!」)、例えば、以下の3つの処理を実行する。すなわち、PLC20は、PLC記憶部210に格納されている「ErrRobot1」の値を「True」にし、例えば、第1変数211(1)の値を「True」にする。また、PLC20は、PLC記憶部210に格納されている「AbnormalError」の値を「True」にし、例えば、第2変数211(2)の値を「True」にする。さらに、PLC20は、PLC記憶部210の「LotNo」に『現在、ラインを流れている製品の識別番号(図5の例では「124456」)』を格納し、例えば、第3変数211(3)に「現在、ラインを流れている製品の識別番号:124456」を格納する。
  (PLCとHMIとの間での変数の値の同期)
 HMI10(特に、取得部110)は、PLC20から、第1変数211(1)(つまり、「ErrRobot1」)、第2変数211(2)(つまり、「AbnormalError」)、第3変数211(3)(つまり、「LotNo」)の各々の値を取得する。そして、取得部110は、取得した第1変数211(1)、第2変数211(2)、第3変数211(3)の各々の値で、第1同期変数122(1)、第2同期変数122(2)、第3同期変数122(3)の各々の値を更新する。
 これによって、同期変数テーブル121に格納されている第1同期変数122(1)(つまり、「ErrRobot1」)、第2同期変数122(2)(つまり、「AbnormalError」)、第3同期変数122(3)(つまり、「LotNo」)の各々の値は、以下のようになる。すなわち、同期変数テーブル121に格納されている「ErrRobot1」の値は、「True」となる。また、同期変数テーブル121に格納されている「AbnormalError」の値は、「True」となる。さらに、同期変数テーブル121に格納されている「LotNo」の値は、「124456」となる。HMI10とPLC20との間で、「ErrRobot1」、「AbnormalError」、「LotNo」という3つの変数の各々の値が同期する(「(2)変数の値の同期」)。
  (表示条件に係る判定)
 HMI10(特に、判定部130)は、記憶部120の表示条件情報123を参照して、条件COEを取得する。例えば、判定部130は、条件COEが、図4に例示した「ErrRobot1 And AbnormalError」であることを把握する。つまり、判定部130は、条件COEが、『「ErrRobot1」の値が「True」であり、かつ、「AbnormalError」の値が「True」である』ことを把握する。
 判定部130は、記憶部120の同期変数テーブル121を参照して、「ErrRobot1」(つまり、第1同期変数122(1))、および、「AbnormalError」(つまり、第2同期変数122(2))の各々の値を確認する。判定部130は、『「ErrRobot1」の値が「True」であり、かつ、「AbnormalError」の値が「True」である』ことを確認すると、条件COEが満たされたと判定する。そして、条件COEが満たされたと判定した判定部130は、その判定結果(条件COEが満たされたとの判定結果)を、置換部140および表示制御部150に通知する。
 前述の通り、表示条件情報123には、条件COEが、例えば置換前メッセージMSBごとに、定義されている。すなわち、表示条件情報123には、置換前メッセージMSB(n)に対応付けられて、置換前メッセージMSB(n)の表示条件として条件COE(n)が定義されている。
 判定部130は、同期変数テーブル121に格納されている変数の値から「条件COE(x)が満たされた」と判定すると、条件COE(x)に対応する置換前メッセージMSB(x)を、置換部140および表示制御部150に通知してもよい。
  (メッセージの生成)
 判定部130から「条件COEが満たされた」との判定結果を通知されると、置換部140は、置換前メッセージテーブル125を参照して、置換前メッセージMSBを取得する。例えば、判定部130から「条件COE(x)が満たされた」との判定結果を通知されると、置換部140は、置換前メッセージテーブル125を参照して、条件COE(x)に対応する置換前メッセージMSB(x)を取得する。
 また、判定部130から「条件COEが満たされた」との判定結果を通知されると、置換部140は、表示設定情報124を参照して、「指定変数VADとして、どの変数が指定されているか(設定されているか)」を把握する。例えば、判定部130から「条件COE(x)が満たされた」との判定結果を通知されると、置換部140は、以下の処理を実行する。すなわち、置換部140は、表示設定情報124を参照して、「条件COE(x)に対応する置換前メッセージMSB(x)」について、「指定変数VADとして、どの変数が指定されているか(設定されているか)」を把握する。
 そして、置換部140は、記憶部120の同期変数テーブル121を参照して、「指定変数VADとして設定されている変数」の値を取得する。
 さらに、判定部130から「条件COEが満たされた」との判定結果を通知されると、置換部140は、表示設定情報124を参照して、「指定変数VADとして設定されている変数」の値を表示する際の規則である表示規則RUEを取得する。例えば、判定部130から「条件COE(x)が満たされた」との判定結果を通知されると、置換部140は、表示設定情報124を参照して、「条件COE(x)に対応する置換前メッセージMSB(x)」について定義されている表示規則RUEを取得する。
 置換部140は、取得した「指定変数VADとして設定されている変数」の値から、表示規則RUEに従って、置換後文字列CSAを生成する。そして、置換部140は、生成した置換後文字列CSAによって置換前メッセージMSBの可変文字列CSVを置換して、置換後メッセージMSAを生成する。
 置換部140は、生成した置換後メッセージMSAを、記憶部120の置換後メッセージテーブル126に格納する。また、置換部140は、「置換後メッセージMSAを、置換後メッセージテーブル126に格納した」ことを、表示制御部150に通知する。
 例えば、置換部140は、置換前メッセージテーブル125を参照して、図4に例示した「LotNo{%%}溶接不良」という置換前メッセージMSBを取得する。また、置換部140は、表示設定情報124を参照して、『指定変数VADとして、図4に例示した「LotNo」(つまり、第3同期変数122(3))が設定されている』ことを把握する。そして、置換部140は、記憶部120の同期変数テーブル121を参照して、「LotNo」(つまり、第3同期変数122(3))の値である「124456」を取得する。さらに、置換部140は、表示設定情報124を参照して、「LotNo」の値を表示する際の規則である表示規則RUEとして、図4に例示した「格納形式:10進法」、「整数部最小桁数:1」、「少数部桁数:0」、「桁区切りの有無:無し」を取得する。
 置換部140は、取得した「124456」から、上述の表示規則RUEに従って、「124456」との置換後文字列CSAを生成する。置換部140は、生成した「124456」との置換後文字列CSAによって、「LotNo{%%}溶接不良」という置換前メッセージMSBの可変文字列CSV(つまり、「{%%}」)を置換し、置換後メッセージMSAを生成する。具体的には、置換部140は、「LotNo124456溶接不良」との置換後メッセージMSAを生成する。置換後メッセージMSAは、置換前メッセージMSBの固定文字列CSFと、可変文字列CSVを指定変数VADの値で置換した置換後文字列CSAとを含む一文である。
 置換部140は、生成した「LotNo124456溶接不良」との置換後メッセージMSAを置換後メッセージテーブル126に格納し、置換後メッセージMSAを置換後メッセージテーブル126に格納したことを表示制御部150に通知する。
  (メッセージの表示)
 判定部130から「条件COEが満たされた」との判定結果を通知された後に、置換部140から「置換後メッセージMSAを、置換後メッセージテーブル126に格納した」ことを通知されると、表示制御部150は、以下の処理を実行する。すなわち、表示制御部150は、記憶部120の置換後メッセージテーブル126を参照して、置換後メッセージテーブル126に格納されている置換後メッセージMSAを、自装置の表示画面に表示する。表示制御部150は、例えば、置換後メッセージMSAを含むアラート画像を、自装置の表示画面にポップアップ表示する(「(3)アラート画像のポップアップ表示」)。
 図5に示す例において、図4に例示した「LotNo{%%}溶接不良」という置換前メッセージMSBの「{%%}」の部分(可変文字列CSV)が、「124456」に置き換えられた置換後メッセージMSAが表示されている。
 (アラームメッセージの表示例について)
 図6は、HMI10が、図5に例示したアラート画像とは別の画像において、置換後メッセージMSAを表示する例を示す図である。
 図5には、条件COEが満たされると、HMI10(特に、表示制御部150)が、置換後メッセージMSA(例えば、アラートメッセージ)をポップアップ表示する例を示した。しかしながら、条件COEが満たされた場合にポップアップ表示として置換後メッセージMSAを表示することは必須ではない。表示制御部150は、例えば、図6に示すように1つ以上の置換後メッセージMSAを一覧形式で表示してもよい。
 §3.動作例
 図7は、HMI10が実行する処理の一例を示すフロー図である。図7に例示するように、取得部110は、PLC20から、PLC20の各変数の値を取得し、つまり、PLC20のPLC記憶部210に格納されている1つ以上の変数の各々の値を取得する(S110)。具体的には、取得部110は、PLC記憶部210に格納されている第1変数211(1)、第2変数211(2)、・・・、第n変数211(n)の各々の値を取得する。
 取得部110は、PLC20から取得した各変数の値で、自装置の各変数(つまり、同期変数テーブル121に格納されている各同期変数)の値を更新する(S120)。すなわち、取得部110は、PLC20から取得した各変数の値で、同期変数テーブル121に格納されている第1同期変数122(1)、第2同期変数122(2)、・・・、第n同期変数122(n)の各々の値を更新する。例えば、取得部110は、PLC20から取得した第1変数211(1)、第2変数211(2)、・・・、第n変数211(n)の各々の値で、第1同期変数122(1)、第2同期変数122(2)、・・・、第n同期変数122(n)の各々の値を更新する。
 判定部130は、記憶部120の表示条件情報123を参照して、置換前メッセージMSBごとに設定されている表示条件(条件COE)を取得する。そして、判定部130は、取得した条件COEが満たされているか否かを、同期変数テーブル121に格納されている変数の値から判定する(S130)。
 条件COEは、例えば、同期変数テーブル121に格納されている1つ以上の変数の値によって定義されており、同期変数テーブル121に格納されている2つ以上の変数の値の組合せとして定義されていてもよい。例えば、図4に例示したように、「LotNo{%%}溶接不良」との置換前メッセージMSBの条件COEは、「ErrRobot1 And AbnormalError」である。この条件COEは、『「ErrRobot1」(つまり、第1同期変数122(1))の値が「True」であり、かつ、「AbnormalError」(つまり、第2同期変数122(2))の値が「True」である』との条件を示している。言い換えれば、この条件COEは、第1同期変数122(1)の値と、第2同期変数122(2)の値との組合せとして定義されている。
 判定部130が、いずれの置換前メッセージMSBについても、「その置換前メッセージMSBに対応する条件COEは満たされていない」と判定すると(S130でNO)、HMI10は処理を終了する。
 判定部130は、いずれかの置換前メッセージMSBについて、「その置換前メッセージMSBに対応する条件COEは満たされている」と判定すると(S130でNO)、以下の処理を実行する。すなわち、判定部130は、条件COEが満たされていると判定した置換前メッセージMSBを、置換部140および表示制御部150に通知する。
 置換部140は、記憶部120を参照して、表示設定情報124において、「条件COEが満たされていると判定された置換前メッセージMSB」に対応付けられている(指定されている)同期変数(すなわち、指定変数VAD)を確認する。そして、置換部140は、「条件COEが満たされていると判定された置換前メッセージMSB」に対して表示設定情報124で指定されている指定変数VADについて、同期変数テーブル121を参照して、その値を取得する(S140)。
 置換部140は、記憶部120を参照して、表示設定情報124において、「条件COEが満たされていると判定された置換前メッセージMSB」に対応付けられている表示規則RUEを取得する。置換部140は、S140で取得した指定変数VADの値から、表示規則RUEに従って、置換後文字列CSAを生成する(S150)。
 置換部140は、「条件COEが満たされていると判定された置換前メッセージMSB」の可変文字列CSVを、S150で生成した置換後文字列CSAで置換した置換後メッセージMSAを生成する(S160)。置換部140は、S160で生成した置換後メッセージMSAを置換後メッセージテーブル126に格納する。また、置換部140は、置換後メッセージMSAを置換後メッセージテーブル126に格納したことを、表示制御部150に通知する。
 表示制御部150は、記憶部120の置換後メッセージテーブル126を参照して、置換後メッセージテーブル126に格納されている置換後メッセージMSAを、自装置の表示画面に表示する(S170)。
 これまでに図7を参照しながら説明してきたHMI10が実行する処理(言い換えれば、HMI10が実行する制御方法)は、以下のように整理することができる。すなわち、HMI10が実行する処理(制御方法)は、PLC20(制御装置)に通信可能に接続され、「可変文字列CSVと固定文字列CSFとを含む一文である置換前メッセージMSB」を予め格納した記憶部を備える表示器の制御方法である。前記制御方法は、取得ステップ(S110)と、表示制御ステップ(S170)とを含む。
 取得ステップは、PLC20にて更新された所定の変数(指定変数VADに対応する変数)の値を取得する。表示制御ステップは、『「取得ステップにて取得された値によって可変文字列CSVを置換した文字列である置換後文字列CSA」と、固定文字列CSFとを含む一文である置換後メッセージMSA』を表示する。
 前記の構成によれば、前記制御方法は、記憶部120に格納されている置換前メッセージMSBから、置換後メッセージMSAを生成する。そして、前記制御方法は、生成した置換後メッセージMSAを表示する。置換前メッセージMSBは、可変文字列CSVと固定文字列CSFとを含む一文である。置換後メッセージMSAは、置換後文字列CSAと、固定文字列CSFとを含む一文である。
 前記制御方法は、以下のように、置換前メッセージMSBから、置換後メッセージMSAを生成する。すなわち、前記制御方法は、前記所定の変数(指定変数VADに対応する変数)の値がPLC20によって更新されると、更新後の値を取得する。前記制御方法は、『「取得した更新後の値によって可変文字列CSVを置換した前記置換後文字列CSA」と、固定文字列CSFとを含む一文である置換後メッセージMSA』を表示する。
 したがって、前記制御方法は、予め記憶している固定的な文字列(すなわち、固定文字列CSF)と、状況に応じて内容が変化する可変的な文字列(すなわち、置換後文字列CSA)とを含む一文である置換後メッセージMSAを表示できるとの効果を奏する。
 特に、前記制御方法は、予め記憶部120に格納されている置換前メッセージMSBを基に、PLC20から取得した前記所定の変数(指定変数VADに対応する変数)の値を用いて、置換後メッセージMSAを表示する。
 したがって、前記制御方法は、「サーバがPLC20(制御装置)から所定の変数の値を取得し、サーバが表示器に表示させるべきメッセージを生成して、表示器はサーバから取得したメッセージを表示する」構成と比較して、以下の効果を奏する。すなわち、前記制御方法は、上述の構成と比較して、PLC20における前記所定の変数の値の変化に応じて、前記所定の変数の値の変化に対応させて内容を変化させた一文である置換後メッセージMSAを、早急にユーザに通知できるとの効果を奏する。
 §4.変形例
 これまで、HMI10がプログラマブル表示器である例を説明してきたが、HMI10がプログラマブル表示器であることは必須ではない。
 また、これまで、置換前メッセージMSBが含む可変文字列CSVが1つである例を説明してきたが、置換前メッセージMSBが含む可変文字列CSVは複数であってもよい。
 〔ソフトウェアによる実現例〕
 HMI10の機能ブロック(具体的には、取得部110、判定部130、置換部140、および、表示制御部150)は、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよい。また、HMI10の機能ブロックは、CPU(CenTral Processing Unit)を用いてソフトウェアによって実現してもよい。
 後者の場合、HMI10は、各機能を実現するソフトウェアであるプログラムの命令を実行するCPU、上記プログラムおよび各種データがコンピュータ(またはCPU)で読み取り可能に記録されたROM(Read Only Memory)または記憶装置(これらを「記録媒体」と称する)、上記プログラムを展開するRAM(Random Access Memory)等を備えている。そして、コンピュータ(またはCPU)が上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路等を用いることができる。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して上記コンピュータに供給されてもよい。なお、本発明は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
 (まとめ)
 上記の課題を解決するために、本発明の一態様に係る表示器は、制御装置に通信可能に接続される表示器であって、可変文字列と固定文字列とを含む一文である置換前メッセージを予め格納した記憶部と、前記制御装置にて更新された所定の変数の値を取得する取得部と、前記取得部によって取得された値によって前記可変文字列を置換した文字列である置換後文字列と、前記固定文字列とを含む一文である置換後メッセージを表示する表示制御部と、を備える。
 前記の構成によれば、前記表示器は、前記可変文字列と前記固定文字列とを含む一文である置換前メッセージを予め格納している。そして、前記表示器は、前記所定の変数の値が前記制御装置によって更新されると、更新後の値を取得し、取得した更新後の値によって前記可変文字列を置換した文字列である前記置換後文字列と、前記固定文字列とを含む一文である置換後メッセージを表示する。
 したがって、前記表示器は、予め記憶している固定的な文字列(すなわち、前記固定文字列)と、状況に応じて内容が変化する可変的な文字列(すなわち、前記置換後文字列)とを含む一文である前記置換後メッセージを表示することができるとの効果を奏する。
 特に、前記表示器は、予め記憶部に格納している前記置換前メッセージを基に、前記制御装置から取得した前記所定の変数の値を用いて、前記置換後メッセージを表示する。
 したがって、前記表示器は、「サーバが制御装置から所定の変数の値を取得し、サーバが表示器に表示させるべきメッセージを生成して、表示器はサーバから取得したメッセージを表示する」構成と比較して、以下の効果を奏する。すなわち、前記表示器は、上述の構成と比較して、前記制御装置における前記所定の変数の値の変化に応じて、前記所定の変数の値の変化に対応させて内容を変化させた一文である前記置換後メッセージを、早急にユーザに通知できるとの効果を奏する。
 本発明の一態様に係る表示器において、前記記憶部にはさらに、ユーザによって設定された、前記置換後メッセージを表示する条件が予め格納されており、前記条件が満たされたか否かを判定する判定部をさらに備え、前記判定部によって前記条件が満たされたと判定されると、前記表示制御部は前記置換後メッセージを表示してもよい。
 前記の構成によれば、前記表示器は、「ユーザによって設定された、前記置換後メッセージを表示する条件」が満たされたと判定すると、前記置換後メッセージを表示する。
 したがって、前記表示器は、「ユーザによって設定された、前記条件」が満たされた場合に、予め記憶している固定的な文字列と、状況に応じて内容が変化する可変的な文字列とを含む一文である前記置換後メッセージを表示することができるとの効果を奏する。
 本発明の一態様に係る表示器において、前記条件は、前記制御装置が所定の状態を検知したことであってもよい。
 前記の構成によれば、前記表示器は、前記制御装置が所定の状態を検知すると、前記置換後メッセージを表示する。例えば、前記表示器は、前記制御装置が異常状態を検知すると、異常状態が検知された対象を特定する文字列を前記置換後文字列として含む一文である前記置換後メッセージを表示する。
 したがって、前記表示器は、前記制御装置が所定の状態を検知すると、予め記憶している固定的な文字列と、状況に応じて内容が変化する可変的な文字列とを含む一文である前記置換後メッセージを表示することができるとの効果を奏する。
 本発明の一態様に係る表示器において、前記記憶部にはさらに、ユーザによって設定された、前記所定の変数を特定する情報が予め格納されていてもよい。
 前記の構成によれば、前記表示器は、「前記記憶部に格納されている情報により特定される前記所定の変数」の値(特に、更新後の値)によって前記可変文字列を置換した置換後文字列と、前記固定文字列とを含む一文である前記置換後メッセージを表示する。そして、「前記記憶部に格納されている情報により特定される前記所定の変数」は、ユーザによって設定される。
 例えば、ユーザは、「前記記憶部に格納されている情報」を変更することによって、ユーザが所望する「前記所定の変数」の値を、前記表示器に表示させることができる。つまり、ユーザは、前記表示器が前記置換後メッセージメッセージにおいて表示する情報の内容を変更することができる。ユーザは、前記表示器に、ユーザが所望する情報を、前記置換後文字列として表示させることができる。
 したがって、前記表示器は、「ユーザによって設定され、前記記憶部に予め格納されている情報により特定される前記所定の変数」の値によって前記可変文字列を置換した置換後文字列と、前記固定文字列とを含む一文を表示することができるとの効果を奏する。
 本発明の一態様に係る表示器において、前記記憶部にはさらに、ユーザによって設定された表示規則であって、前記取得部によって取得された値を前記置換後文字列として表示する際の表示規則が予め格納されており、前記表示制御部は、前記表示規則に従って、前記取得部によって取得された値を前記置換後文字列として表示してもよい。
 前記の構成によれば、前記表示器は、ユーザによって設定された前記表示規則に従って、前記所定の変数の値から生成した前記置換後文字列と、前記固定文字列とを含む前記置換後メッセージを表示する。
 例えば、前記表示規則は、数値を表示する際に何進法で表示するかであったり、表示する数値の整数部の最小桁数であったり、表示する数値の少数部の桁数であったり、数値を表示する際のカンマ区切りの有無等であってもよい。
 ユーザは、前記記憶部に格納されている前記表示規則を変更することによって、前記表示器が表示する前記置換後文字列の表示書式等を変更することができる。
 したがって、前記表示器は、ユーザによって設定された前記表示規則に従って生成した前記置換後文字列と、前記固定文字列とを含む前記置換後メッセージを表示することができるとの効果を奏する。
 上記の課題を解決するために、本発明の一態様に係る制御方法は、制御装置に通信可能に接続され、可変文字列と固定文字列とを含む一文である置換前メッセージを予め格納した記憶部を備える表示器の制御方法であって、前記制御装置にて更新された所定の変数の値を取得する取得ステップと、前記取得ステップにて取得された値によって前記可変文字列を置換した文字列である置換後文字列と、前記固定文字列とを含む一文である置換後メッセージを表示する表示制御ステップと、を含む。
 前記の構成によれば、前記制御方法は、前記記憶部に格納されている、「可変文字列と固定文字列とを含む一文である置換前メッセージ」から生成した、以下の「置換後文字列と、前記固定文字列とを含む一文である置換後メッセージ」を表示する。すなわち、前記制御方法は、前記所定の変数の値が前記制御装置によって更新されると更新後の値を取得し、取得した更新後の値によって前記可変文字列を置換した前記置換後文字列と、前記固定文字列とを含む一文である前記置換後メッセージを表示する。
 したがって、前記制御方法は、予め記憶している固定的な文字列(すなわち、前記固定文字列)と、状況に応じて内容が変化する可変的な文字列(すなわち、前記置換後文字列)とを含む一文である前記置換後メッセージを表示することができるとの効果を奏する。
 特に、前記制御方法は、予め記憶部に格納されている前記置換前メッセージを基に、前記制御装置から取得した前記所定の変数の値を用いて、前記置換後メッセージを表示する。
 したがって、前記制御方法は、「サーバが制御装置から所定の変数の値を取得し、サーバが表示器に表示させるべきメッセージを生成して、表示器はサーバから取得したメッセージを表示する」構成と比較して、以下の効果を奏する。すなわち、前記制御方法は、上述の構成と比較して、前記制御装置における前記所定の変数の値の変化に応じて、前記所定の変数の値の変化に対応させて内容を変化させた一文である前記置換後メッセージを、早急にユーザに通知できるとの効果を奏する。
 本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
  10 HMI(表示器)
  20 PLC(制御装置)
 110 取得部
 120 記憶部
 130 判定部
 150 表示制御部
 COE 条件
 CSA 置換後文字列
 CSV 可変文字列
 CSF 固定文字列
 MSA 置換後メッセージ
 MSB 置換前メッセージ
 RUE 表示規則
 VAD 指定変数(所定の変数)
 S110 取得ステップ
 S170 表示制御ステップ

Claims (8)

  1.  制御装置に通信可能に接続される表示器であって、
     可変文字列と固定文字列とを含む一文である置換前メッセージを予め格納した記憶部と、
     前記制御装置にて更新された所定の変数の値を取得する取得部と、
     前記取得部によって取得された値によって前記可変文字列を置換した文字列である置換後文字列と、前記固定文字列とを含む一文である置換後メッセージを表示する表示制御部と、
    を備える表示器。
  2.  前記記憶部にはさらに、ユーザによって設定された、前記置換後メッセージを表示する条件が予め格納されており、
     前記条件が満たされたか否かを判定する判定部をさらに備え、
     前記判定部によって前記条件が満たされたと判定されると、前記表示制御部は前記置換後メッセージを表示する
    請求項1に記載の表示器。
  3.  前記条件は、前記制御装置が所定の状態を検知したことである
    請求項2に記載の表示器。
  4.  前記記憶部にはさらに、ユーザによって設定された、前記所定の変数を特定する情報が予め格納されている
    請求項1から3のいずれか1項に記載の表示器。
  5.  前記記憶部にはさらに、ユーザによって設定された表示規則であって、前記取得部によって取得された値を前記置換後文字列として表示する際の表示規則が予め格納されており、
     前記表示制御部は、前記表示規則に従って、前記取得部によって取得された値を前記置換後文字列として表示する
    請求項1から4のいずれか1項に記載の表示器。
  6.  制御装置に通信可能に接続され、可変文字列と固定文字列とを含む一文である置換前メッセージを予め格納した記憶部を備える表示器の制御方法であって、
     前記制御装置にて更新された所定の変数の値を取得する取得ステップと、
     前記取得ステップにて取得された値によって前記可変文字列を置換した文字列である置換後文字列と、前記固定文字列とを含む一文である置換後メッセージを表示する表示制御ステップと、
    を含む制御方法。
  7.  請求項1から5のいずれか1項に記載の表示器としてコンピュータを機能させるための情報処理プログラムであって、前記各部としてコンピュータを機能させるための情報処理プログラム。
  8.  請求項7に記載の情報処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
PCT/JP2021/046860 2021-03-25 2021-12-17 表示器、表示器の制御方法、情報処理プログラム、および記録媒体 WO2022201678A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2021-052181 2021-03-25
JP2021052181A JP2022149857A (ja) 2021-03-25 2021-03-25 表示器、表示器の制御方法、情報処理プログラム、および記録媒体

Publications (1)

Publication Number Publication Date
WO2022201678A1 true WO2022201678A1 (ja) 2022-09-29

Family

ID=83396667

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/046860 WO2022201678A1 (ja) 2021-03-25 2021-12-17 表示器、表示器の制御方法、情報処理プログラム、および記録媒体

Country Status (2)

Country Link
JP (1) JP2022149857A (ja)
WO (1) WO2022201678A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000250784A (ja) * 1999-03-03 2000-09-14 Toshiba Corp 遠隔監視システム
WO2012001726A1 (ja) * 2010-06-28 2012-01-05 株式会社 日立製作所 ガスタービンの間隙診断装置およびガスタービンシステム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000250784A (ja) * 1999-03-03 2000-09-14 Toshiba Corp 遠隔監視システム
WO2012001726A1 (ja) * 2010-06-28 2012-01-05 株式会社 日立製作所 ガスタービンの間隙診断装置およびガスタービンシステム

Also Published As

Publication number Publication date
JP2022149857A (ja) 2022-10-07

Similar Documents

Publication Publication Date Title
JP6874438B2 (ja) スレーブ装置、スレーブ装置の制御方法、情報処理プログラム、および記録媒体
EP3540593B1 (en) Program development assist system, program development assist method, and program development assist program
US11165745B2 (en) Control system, controller, and control method
EP3564767A1 (en) Support apparatus, support program and setting method
JP2010287034A (ja) 外部機器とPLCとのModbusプロトコル通信アドレス表示方式
WO2022201678A1 (ja) 表示器、表示器の制御方法、情報処理プログラム、および記録媒体
US20220197238A1 (en) Development support device, method for controlling development support device, and recording medium
JP2015518618A (ja) フィールド機器の装置記述のアップデート情報を提供する方法およびシステム
JP2007011936A (ja) プログラマブル表示器
WO2019225364A1 (ja) ネットワーク管理装置、ネットワーク管理装置を備えるシステム、ネットワーク管理方法、管理プログラムおよび記録媒体
EP3564766A1 (en) Support apparatus, support program and setting method
JP2004227175A (ja) メンテナンスシステム
CN117136342A (zh) 开发支持装置、开发支持装置的控制方法、信息处理程序以及记录介质
JP7322604B2 (ja) プログラム開発装置、プロジェクト作成方法およびプログラム開発装置を実現するためのプログラム
CN113545013B (zh) 网络管理装置、管理方法以及记录介质
WO2020213129A1 (ja) デバッグ支援装置、デバッグ支援方法、デバッグ支援プログラム
JPWO2019244226A1 (ja) プログラム実行支援装置、プログラム実行支援方法、およびプログラム実行支援プログラム
WO2022185670A1 (ja) 開発支援装置、開発支援装置の制御方法、情報処理プログラム、および記録媒体
JP2019159753A (ja) 制御装置、制御方法、および、制御プログラム
WO2023248548A1 (ja) 制御システム、中継装置および通信方法
JP2019040550A (ja) 制御プログラム変換装置および方法
WO2022249713A1 (ja) 制御システム、システムプログラムおよびデバッグ方法
WO2023248547A1 (ja) 制御システム、中継装置および通信方法
JP2003273875A (ja) データサーバ
US20210109948A1 (en) Method of visualizing screen content on a data visualization system, and data visualization system for visualizing screen content

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21933270

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21933270

Country of ref document: EP

Kind code of ref document: A1