WO2019207679A1 - モニタ支援装置、プログラマブルロジックコントローラ、モニタ支援方法およびモニタ支援プログラム - Google Patents

モニタ支援装置、プログラマブルロジックコントローラ、モニタ支援方法およびモニタ支援プログラム Download PDF

Info

Publication number
WO2019207679A1
WO2019207679A1 PCT/JP2018/016792 JP2018016792W WO2019207679A1 WO 2019207679 A1 WO2019207679 A1 WO 2019207679A1 JP 2018016792 W JP2018016792 W JP 2018016792W WO 2019207679 A1 WO2019207679 A1 WO 2019207679A1
Authority
WO
WIPO (PCT)
Prior art keywords
monitor
data
monitor data
unit
control program
Prior art date
Application number
PCT/JP2018/016792
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 三菱電機株式会社
Priority to CN201880012521.5A priority Critical patent/CN110637263B/zh
Priority to JP2018554798A priority patent/JP6469330B1/ja
Priority to KR1020197023788A priority patent/KR102096595B1/ko
Priority to PCT/JP2018/016792 priority patent/WO2019207679A1/ja
Publication of WO2019207679A1 publication Critical patent/WO2019207679A1/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
    • G05B19/058Safety, monitoring
    • 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
    • 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
    • G05B19/054Input/output
    • 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
    • G05B19/056Programming the PLC
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/13Plc programming
    • G05B2219/13142Debugging, tracing
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/13Plc programming
    • G05B2219/13174Pc, computer connected to plc to simulate machine

Definitions

  • the present invention relates to a monitor support device, a programmable logic controller, a monitor support method, and a monitor support program having a function of monitoring the state of a programmable logic controller (PLC).
  • PLC programmable logic controller
  • An industrial controller generally called PLC is used to control production equipment in a factory.
  • the storage area of the PLC stores values such as data input from the outside to the PLC, data output from the PLC to the outside, and data used when executing the control program.
  • the control program executed by the PLC can use the data stored in each storage area.
  • the user may check the values stored in the storage area.
  • Patent Document 1 discloses a technique of displaying a history of values stored in a storage area in a graph along with a control program in order to improve the control program modification work efficiency.
  • values stored in each storage area are periodically collected, and history information is generated in association with the collection time.
  • the present invention has been made in view of the above, and an object of the present invention is to obtain a monitor support device capable of easily confirming the operation of a control program.
  • the monitor support apparatus executes an instruction each time a plurality of instructions included in a control program executed by a programmable logic controller is executed.
  • the monitor support device has an effect that the operation of the control program can be easily confirmed.
  • the figure which shows an example of the control program which PLC shown in FIG. 1 uses The figure which shows the monitor range designation
  • movement of the data acquisition part shown in FIG. The flowchart which shows operation
  • movement of the monitor data management part shown in FIG. The figure which shows the structure for implement
  • monitor support device a programmable logic controller, a monitor support method, and a monitor support program according to an embodiment of the present invention will be described in detail with reference to the drawings. Note that the present invention is not limited to the embodiments.
  • FIG. 1 is a diagram showing a configuration of a monitor support system 100 according to the first embodiment of the present invention.
  • the monitor support system 100 includes a PLC 10 and a monitor support device 20.
  • the PLC 10 is a control device used to control production equipment such as a factory, and can control a machine tool (not shown) by executing a control program.
  • the monitor support device 20 is a program creation device that creates a control program executed by the PLC 10, and has a function of monitoring the state of the PLC 10.
  • the PLC 10 includes a program execution unit 1, a storage unit 2, a monitor data management unit 3, and a monitor data storage unit 4.
  • the program execution unit 1 executes a control program and controls a machine tool and the like.
  • the program execution unit 1 can update the value stored in the storage area of the storage unit 2 when executing the control program.
  • the program execution unit 1 Each time the program execution unit 1 executes an instruction included in the control program, the program execution unit 1 notifies the monitor data management unit 3 of information for specifying the executed instruction.
  • the storage unit 2 has a plurality of storage areas to which the types of data to be stored are assigned in advance.
  • the program execution unit 1 can write data to each storage area of the storage unit 2 and read data from each storage area by using the address of the storage unit 2. This storage area can be written to and read from the outside of the PLC 10, thereby enabling data transmission / reception with the outside of the PLC 10.
  • the storage unit 2 can also store data values used when the program execution unit 1 is executing a control program.
  • the storage area of the storage unit 2 can be described using characters indicating data types and addresses. For example, the character indicating input data is defined as X, the character indicating output data as Y, the character indicating internally used bit data as M, the character indicating word data as D, and the like. In this case, the address 0 in the storage area for storing the input data is expressed as “X0”.
  • FIG. 2 is a diagram showing an example of a control program used by the PLC 10 shown in FIG.
  • the control program used by the PLC 10 is also called a sequence program, and is described using variables, addresses of storage areas of the storage unit 2, numerical values, instructions, and the like.
  • the control program includes a plurality of instructions.
  • the first line of the control program shown in FIG. 2 shows an operation of copying the value “1” to the storage area D0 when the value of the storage area M0 is “ON”.
  • the second line of the control program shows an operation of copying the value “2” to the storage area D0 when the value of the storage area M1 is “ON”.
  • the third line of the control program shows an operation of copying the value “3” to the storage area D0 when the value of the storage area M2 is “ON”.
  • the fourth line of the control program shows an operation of adding “1” to the value stored in the storage area D1 when the value of the storage area M3 is “ON”.
  • the fifth line of the control program shows an operation of copying the value “1” to the storage area D0 when the value of the storage area M0 is “ON”.
  • the sixth line of the control program shows an operation of copying the value “2” to the storage area D0 when the value of the storage area M1 is “ON”.
  • the control program shown in FIG. 2 includes a plurality of instructions, an execution condition for each instruction, and an address of a storage area updated by the instruction.
  • the command indicates the minimum unit of contents to be controlled by the PLC 10.
  • the instruction is “add”
  • the execution condition of the instruction is “the value of the storage area M3 is ON”
  • the address of the storage area updated by the instruction Is the storage area D1.
  • the monitor data management unit 3 generates monitor data that is a value stored in a storage area to be monitored when an instruction included in the control program is executed in accordance with an instruction from the monitor support device 20.
  • the storage area to be monitored is a storage area used by the instruction. Specifically, the storage area in which the result of executing the instruction is stored, and the storage that is referred to for determining whether or not to execute the instruction are stored. Area.
  • the monitor data management unit 3 stores the generated monitor data in the monitor data storage unit 4 and transmits it to the monitor support device 20.
  • the monitor data management unit 3 obtains a value stored in the storage area of the storage unit 2 in accordance with the timing at which the information for specifying the executed instruction is notified from the program execution unit 1, thereby controlling the monitor data management unit 3.
  • the monitor data can be generated in accordance with the timing when the instructions included in the program are executed.
  • the monitor data management unit 3 associates the executed instruction with the monitor data, which is a value stored in the storage area used by the instruction, and stores it in the monitor data storage unit 4, and also monitors the monitor support device 20. Send to.
  • the monitor data management unit 3 can also associate the monitor data with the time information when the monitor data is acquired.
  • the monitor data storage unit 4 stores the monitor data input from the monitor data management unit 3 in association with information for specifying an instruction and the time when the monitor data is acquired. Since the value stored in the storage area of the storage unit 2 is rewritten by execution of an instruction or input data from the outside of the PLC 10 and the like, the monitor data storage unit 4 has a control function. The timing value at which the instruction included in the program is executed is held.
  • the monitor support device 20 is provided as a software tool that operates on a personal computer, and the PLC 10 supports editing of a control program for controlling the facility, or the PLC 10 is connected to the monitor support device 20 to control the control program. It has a function of confirming the operating state and transferring the edited control program to the PLC 10.
  • the monitor support device 20 includes a data acquisition unit 5, a display data storage unit 6, and a display control unit 7.
  • the data acquisition unit 5 acquires monitor data for confirming the operation of the PLC 10 from the PLC 10.
  • the data acquisition unit 5 includes a range specification unit 51 that specifies a range for acquiring monitor data in the control program, and a storage area that is a monitor target included in the range specified by the range specification unit 51.
  • a monitoring target information specifying unit 52 for specifying an address.
  • the range specification unit 51 specifies a range to be monitored in the control program.
  • the monitor function of the monitor support device 20 is used to check whether the control program is operating as expected, for example, during debugging.
  • the range specifying unit 51 can narrow down the range to be monitored as necessary. it can.
  • FIG. 3 is a diagram showing a monitor range designation screen 511 displayed on the screen by the range designation unit 51 shown in FIG.
  • the range specifying unit 51 can acquire data that the user inputs to the monitor range specifying screen 511 and specify the monitor range using this input data.
  • the method of specifying the monitor target range by the range specifying unit 51 is not limited to the example using the monitor range specifying screen 511.
  • the range designation unit 51 is not limited to the value input by the user, and may use a range derived using an arbitrary algorithm. For example, the range specifying unit 51 may use a range derived using machine learning.
  • the monitoring target information specifying unit 52 specifies a storage area to be monitored from the range specified by the range specifying unit 51 in the control program. For example, when the second to fourth lines are specified as the monitor target range by the range specifying unit 51, the monitor target information specifying unit 52 uses the command from the second to fourth lines of the control program. The storage area that is being used is specified.
  • FIG. 4 is a diagram showing the monitor target information specified by the monitor target information specifying unit 52 shown in FIG.
  • the monitoring target information specifying unit 52 includes the storage area M1 and the storage area D0 in the second line of the control program, the storage area M2 and the storage area D0 in the third line, and the storage area M3 and the storage area D1 in the fourth line. Can be identified as a monitoring target.
  • the monitoring target information specifying unit 52 associates the instruction to be monitored, the storage area in which the result of executing the instruction is stored, and the storage area to be referred to for determining whether to execute the instruction, This is monitored information.
  • the monitoring target information specifying unit 52 transmits the monitoring target information to the PLC 10.
  • the data acquisition unit 5 receives the monitor data created by the PLC 10 according to the monitor target information, information indicating an instruction associated with the monitor data, and the time when the monitor data was acquired, and stores it in the display data storage unit 6 To do.
  • FIG. 5 is a diagram showing display data stored in the display data storage unit 6 shown in FIG.
  • the display data includes the number of lines in the control program, which is information indicating an instruction, monitor data acquired in association with the instruction, and time when the monitor data is acquired.
  • the monitor data management unit 3 of the PLC 10 acquires monitor data every time an instruction is executed and transmits the monitor data to the monitor support device 20, the data acquisition unit 5 acquires monitor data every time an instruction is executed. become. Since the data acquisition unit 5 stores the monitor data in the display data storage unit 6 every time monitor data is acquired from the PLC 10, the monitor data stored in the display data storage unit 6 is updated each time an instruction is executed. It will be.
  • the display control unit 7 can display the control program and the value of the monitor data when the command included in the control program is executed on the screen.
  • the display control unit 7 includes a program display unit 71, a monitor data update unit 72, a history display unit 73, and a highlight display unit 74.
  • the display control unit 7 includes a display device, and may display a control program, monitor data, and the like on the screen of the display device.
  • the display control unit 7 is connected to an external display device and is externally connected. Control programs, monitor data, and the like may be displayed on the screen of the display device.
  • the program display unit 71 displays the control program on the screen. As shown in FIG. 2, the program display unit 71 can display the control program in the form of a ladder diagram simulating a relay circuit.
  • the monitor data update unit 72 can display the monitor data on the screen by superimposing it on the control program displayed by the program display unit 71 using the monitor data stored in the display data storage unit 6. At this time, the monitor data update unit 72 displays the instruction included in the control program in association with the monitor data acquired in association with this instruction. The monitor data update unit 72 can display the latest value for each combination of instruction and storage area on the screen among the monitor data stored in the display data storage unit 6.
  • FIG. 6 is a diagram showing a screen displayed by the monitor data update unit 72 superimposed on the control program displayed by the program display unit 71 shown in FIG.
  • the monitor data values are displayed superimposed on the second to fourth lines of the control program.
  • Monitor data which is a value stored in the storage area, is displayed superimposed on a display indicating the storage area in the control program. The user viewing this screen confirms that the value of the storage area M1 is “ON” and the value “2” is copied to the storage area D0 when the second line of the control program is executed last. be able to.
  • the display control unit 7 has a function of displaying history information of monitor data on the screen.
  • the history display unit 73 When a plurality of values of the same monitor data associated with the same command are stored in the display data storage unit 6 when the history display instruction 73 detects a history display instruction, the history display unit 73 outputs a plurality of monitor data as history information. Can be displayed.
  • FIG. 7 is a diagram showing history information displayed by the history display unit 73 shown in FIG.
  • the history display unit 73 detects a selection operation for a storage area described for each instruction in the control program, the history display unit 73 can display a history of values stored in the selected storage area on the screen.
  • the method of displaying history information by the history display unit 73 is not limited to the example shown in FIG.
  • the history display unit 73 may display histories in a plurality of storage areas at the same time, and the number of histories is not limited to three, but can be an arbitrary number. Displaying the history of values stored in the storage area for each combination of the instruction and the storage area makes it easy to grasp the relationship between the instruction and the value stored in the storage area used by the instruction.
  • the highlighting unit 74 has a function of highlighting the monitor data displayed on the control program. Using the time information stored in the display data storage unit 6, the highlight display unit 74 can sequentially change the monitor data to be highlighted in accordance with the order in which the storage areas are used. At this time, the order of changing the monitor data to be highlighted may be the order from the newest to the oldest based on the order in which the storage areas were used, or the order from the oldest to the newest. May be.
  • FIG. 8 is a diagram for explaining the operation of the highlight display unit 74 shown in FIG.
  • the highlighting unit 74 highlights the portion of the storage area M3 in the fourth row, and then displays the storage area M2 in the third row as shown in FIG. 8B.
  • the portion is changed to the highlighted state, and then the portion of the storage area D0 in the second row is highlighted as shown in FIG. 8C, and the second row is shown in FIG. 8D.
  • the storage area M1 is changed to a highlighted state.
  • the highlighting unit 74 highlights the monitor data in order from the newest to the oldest.
  • the value of the storage area M2 in the third row is “OFF”, and in the third row, the process of copying the value “3” to the storage area D0 is omitted. Therefore, highlighting is also omitted.
  • the monitor support device 20 will be described separately for an operation of acquiring monitor data and an operation of displaying.
  • FIG. 9 is a flowchart showing the operation of the data acquisition unit 5 shown in FIG.
  • the range specifying unit 51 of the data acquiring unit 5 displays an input screen as shown in FIG. 3, for example, and acquires information indicating the range specified as a monitoring target by detecting an input operation on the input screen. (Step S101).
  • the monitoring target information specifying unit 52 of the data acquisition unit 5 is a result of execution of a monitoring target command from a control program within the monitoring target range based on the information indicating the monitoring target range acquired by the range specifying unit 51. Is stored, and the storage area referred to in order to determine whether or not to execute the instruction to be monitored is extracted, and monitoring target information specifying the monitor data to be acquired is generated (step S102).
  • the monitoring target information is, for example, information corresponding to a state where the time and value columns in the table shown in FIG. 5 are blank.
  • the monitoring target information specifying unit 52 transmits the generated monitoring target information to the PLC 10 (step S103). Subsequently, the data acquisition unit 5 determines whether or not monitor data is received from the PLC 10 that is the transmission destination of the monitor target information (step S104). When the monitor data is not received (step S104: No), the data acquisition unit 5 repeats the process of step S104 until the monitor data is received.
  • the data acquisition unit 5 stores the received monitor data in the display data storage unit 6 as display data (step S105).
  • FIG. 10 is a flowchart showing the operation of the display control unit 7 shown in FIG.
  • the program display unit 71 of the display control unit 7 displays the control program on the screen.
  • the monitor data update unit 72 determines whether or not a predetermined display data update time has elapsed (step S201). When the display data update time has not elapsed (step S201: No), the monitor data update unit 72 repeats the process of step S201 until the display data update time has elapsed.
  • the monitor data update unit 72 displays the latest value of the monitor data on the screen for each command included in the control program (step S202).
  • the highlighting unit 74 determines whether or not a highlighting operation for instructing highlighting has been detected (step S203). When the highlighting operation is detected (step S203: Yes), the highlighting unit 74 moves the highlighting position based on the order in which the storage areas are used (step S204). When the highlight operation is not detected (step S203: No), the process of step S204 is omitted.
  • the history display unit 73 determines whether or not a history display operation for instructing history display has been detected (step S205). When a history display operation is detected (step S205: Yes), the history display unit 73 generates history information from the data stored in the display data storage unit 6 and displays it on the screen (step S206). When the history display operation is not detected (step S205: No), the process of step S206 is omitted.
  • the monitor data update unit 72 updates the monitor data to be displayed at a fixed cycle. However, if the timing at which the value of the display data storage unit 6 is updated is known, the monitor data update unit 72 displays the data for each update. Monitor data to be updated may be updated.
  • the order in which the display control unit 7 operates is not limited to the example shown in FIG. The processing of step S201 and step S202, the processing of step S203 and step S204, and the processing of step S205 and step S206 may be performed at the same time, and the order of execution may be switched.
  • FIG. 11 is a flowchart showing the operation of the monitor data management unit 3 shown in FIG.
  • the monitor data management unit 3 receives the monitoring target information (step S301).
  • the monitor data management unit 3 secures a storage area for storing the monitor data in the monitor data storage unit 4 based on the received monitoring target information (step S302).
  • the monitor data management unit 3 determines whether or not the information command for specifying the executed command has been executed based on the presence / absence of information for specifying the executed command notified from the program execution unit 1 (Step S303).
  • step S303: No If the command is not executed (step S303: No), the monitor data management unit 3 repeats the process of step S303.
  • step S303: Yes the monitor data management unit 3 records the value stored in the storage area in the storage unit 2 based on the monitoring target information to generate monitor data (step S303). S304).
  • the monitor data management unit 3 transmits the generated monitor data to the monitor support device 20 (step S305).
  • the monitor data management unit 3 determines whether or not the execution of the control program has ended (step S306). When the execution of the control program ends (step S306: Yes), the monitor data management unit 3 ends the process. If the execution of the control program has not ended (step S306: No), the monitor data management unit 3 returns to the process of step S303 and repeats the processes of step S303 to step S306 until the execution of the control program ends.
  • the functions of the PLC 10 and the monitor support device 20 may be realized using software, or dedicated hardware may be used.
  • FIG. 12 is a diagram showing a configuration for realizing the functions of the PLC 10 and the monitor support apparatus 20 shown in FIG. 1 using software.
  • Each function of the PLC 10 and the monitor support device 20 can be realized by the processor 91 reading and executing the computer program stored in the memory 92.
  • the processor 91 is a CPU (Central Processing Unit) and is also called a central processing unit, a processing unit, an arithmetic unit, a microprocessor, a microcomputer, a DSP (Digital Signal Processor), or the like.
  • CPU Central Processing Unit
  • DSP Digital Signal Processor
  • the memory 92 is, for example, a nonvolatile or volatile semiconductor memory such as RAM (Random Access Memory), ROM (Read Only Memory), flash memory, EPROM (Erasable Programmable ROM), EEPROM (registered trademark) (Electrically EPROM), Magnetic disks, flexible disks, optical disks, compact disks, mini disks, DVDs (Digital Versatile Disks), etc.
  • RAM Random Access Memory
  • ROM Read Only Memory
  • flash memory EPROM (Erasable Programmable ROM), EEPROM (registered trademark) (Electrically EPROM), Magnetic disks, flexible disks, optical disks, compact disks, mini disks, DVDs (Digital Versatile Disks), etc.
  • EPROM Erasable Programmable ROM
  • EEPROM registered trademark
  • Magnetic disks Magnetic disks
  • flexible disks flexible disks
  • optical disks compact disks
  • mini disks mini disks
  • DVDs Digital Versatile Disks
  • FIG. 13 is a diagram showing a configuration of dedicated hardware for realizing the functions of the PLC 10 and the monitor support device 20 shown in FIG.
  • the functions of the PLC 10 and the monitor support device 20 can also be realized by using a processing circuit 93 that is dedicated hardware.
  • the processing circuit 93 is, for example, a single circuit, a composite circuit, a programmed processor, a parallel programmed processor, an ASIC (Application Specific Integrated Circuit), an FPGA (Field-Programmable Gate Array), or a combination thereof.
  • the computer program for realizing the functions of the PLC 10 and the monitor support device 20 can be provided via a communication medium, or can be provided in the form of a recording medium on which the computer program is recorded. .
  • the monitor support apparatus 20 As described above, each time the PLC 10 executes an instruction included in the control program, the monitor support apparatus 20 according to the present embodiment is stored in the storage area in which the execution result of the executed instruction is stored. The monitor value is recorded and the monitor data is generated. The monitor data is stored in association with the executed command, and the display control unit 7 displays the monitor data together with the corresponding command. For this reason, it is possible to reliably display the value stored in the storage area when the instruction is executed, and the user can easily confirm the operation of the control program.
  • the value stored in the same storage area in the control program is used multiple times, or when the control program is repeatedly executed, the value of the storage area is acquired at regular time intervals. It may be difficult to understand the correspondence with. Even in such a case, it is necessary to pause the processing of the control program for each instruction when confirming the value stored in the storage area in the control program debugging work or the like by using the above technique. Thus, when the instruction is executed, the value stored in the storage area can be easily confirmed, and the working efficiency is improved.
  • the monitor support device 20 has a range specifying unit 51 for specifying a range for acquiring monitor data. For this reason, the amount of data handled by the PLC 10 and the monitor support device 20 can be reduced, which leads to a reduction in processing load and a necessary storage capacity. In addition, since the monitor data to be displayed can be narrowed down to the necessary range, the monitor data displayed on the screen is easy to see, and even when the number of data handled by the control program is large, the user can control the operation of the control program. It becomes easy to confirm.
  • the configuration described in the above embodiment shows an example of the contents of the present invention, and can be combined with another known technique, and can be combined with other configurations without departing from the gist of the present invention. It is also possible to omit or change the part.
  • each of the plurality of instructions included in the control program and the monitor data indicating the value stored in the storage area used by each instruction are the lines in which the instructions are described in the control program. It is directly associated using a number.
  • the information for associating the command with the monitor data is not limited to such an example. For example, whenever the data acquisition unit 5 acquires monitor data in association with time each time an instruction is executed and the program execution unit 1 records the time at which each instruction is executed, the instruction and monitor are indirectly monitored. Data can be associated.
  • 1 program execution unit 2 storage unit, 3 monitor data management unit, 4 monitor data storage unit, 5 data acquisition unit, 6 display data storage unit, 7 display control unit, 10 PLC, 20 monitor support device, 51 range specification unit, 52 monitor target information specifying part, 71 program display part, 72 monitor data update part, 73 history display part, 74 highlight display part, 91 processor, 92 memory, 93 processing circuit, 100 monitor support system, 511 monitor range designation screen.

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Abstract

モニタ支援装置(20)は、プログラマブルロジックコントローラ(PLC10)に実行させる制御プログラムに含まれる複数の命令のそれぞれが実行される毎に、命令が実行された結果が記憶される記憶領域に記憶されている値をモニタデータとして、命令と対応づけて取得するデータ取得部(5)と、制御プログラムに含まれる複数の命令と、データ取得部によって取得されたモニタデータとを画面上に表示する表示制御部(7)と、を備えることを特徴とする。

Description

モニタ支援装置、プログラマブルロジックコントローラ、モニタ支援方法およびモニタ支援プログラム
 本発明は、プログラマブルロジックコントローラ(Programmable Logic Controller:PLC)の状態をモニタする機能を有するモニタ支援装置、プログラマブルロジックコントローラ、モニタ支援方法およびモニタ支援プログラムに関する。
 工場の生産設備の制御には、一般的にPLCと呼ばれる産業用コントローラが用いられている。PLCの記憶領域には、外部からPLCへ入力されるデータ、PLCから外部へ出力するデータ、制御プログラムの実行時に使用するデータなどの値が記憶される。それぞれのデータを記憶する記憶領域を予め割り当てておき、この記憶領域のアドレスを使用することで、PLCが実行する制御プログラムは、それぞれの記憶領域に記憶されたデータを使用することができる。制御プログラムが期待した通りに動作するかを検証するために、ユーザは、記憶領域に記憶された値を確認することがある。
 特許文献1には、制御プログラムの修正作業を効率化するために、制御プログラムと並べて、記憶領域に記憶されている値の履歴をグラフ表示する技術が開示されている。この技術では、各記憶領域に記憶された値を定期的に収集して、収集時刻と対応づけて履歴情報を生成している。
国際公開第2014/167726号
 しかしながら、上記特許文献1に記載の技術では、各記憶領域に記憶されている値を一定の周期で収集しているため、収集した値は、各命令が実行されたときの値とは限らない。このため、制御プログラムの各命令と、記憶領域に記憶されている値との関係を把握することが困難であり、ユーザが制御プログラムの動作を確認することが困難であるという問題があった。
 本発明は、上記に鑑みてなされたものであって、制御プログラムの動作を容易に確認することが可能なモニタ支援装置を得ることを目的とする。
 上述した課題を解決し、目的を達成するために、本発明にかかるモニタ支援装置は、プログラマブルロジックコントローラに実行させる制御プログラムに含まれる複数の命令のそれぞれが実行される毎に、命令が実行された結果が記憶される記憶領域に記憶されている値をモニタデータとして、命令と対応づけて取得するデータ取得部と、制御プログラムに含まれる複数の命令と、データ取得部によって取得されたモニタデータとを画面上に表示する表示制御部と、を備えることを特徴とする。
 本発明にかかるモニタ支援装置は、制御プログラムの動作を容易に確認することが可能になるという効果を奏する。
本発明の実施の形態1にかかるモニタ支援システムの構成を示す図 図1に示すPLCが使用する制御プログラムの一例を示す図 図1に示す範囲指定部が画面上に表示するモニタ範囲指定画面を示す図 図1に示すモニタ対象情報特定部が特定するモニタ対象情報を示す図 図1に示す表示データ記憶部へ記憶される表示データを示す図 図1に示すプログラム表示部が表示した制御プログラムにモニタデータ更新部がモニタデータを重畳して表示した画面を示す図 図1に示す履歴表示部が表示する履歴情報を示す図 図1に示す強調表示部の動作を説明するための図 図1に示すデータ取得部の動作を示すフローチャート 図1に示す表示制御部の動作を示すフローチャート 図1に示すモニタデータ管理部の動作を示すフローチャート 図1に示すPLCおよびモニタ支援装置の機能をソフトウェアを用いて実現するための構成を示す図 図1に示すPLCおよびモニタ支援装置の機能を実現するための専用のハードウェアの構成を示す図
 以下に、本発明の実施の形態にかかるモニタ支援装置、プログラマブルロジックコントローラ、モニタ支援方法およびモニタ支援プログラムを図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
実施の形態1.
 図1は、本発明の実施の形態1にかかるモニタ支援システム100の構成を示す図である。モニタ支援システム100は、PLC10と、モニタ支援装置20とを有する。
 PLC10は、工場などの生産設備を制御するために用いられる制御装置であり、制御プログラムを実行することにより、図示しない工作機械などを制御することができる。モニタ支援装置20は、PLC10が実行する制御プログラムを作成するプログラム作成装置であり、PLC10の状態をモニタする機能を有する。
 PLC10は、プログラム実行部1と、記憶部2と、モニタデータ管理部3と、モニタデータ記憶部4とを有する。プログラム実行部1は、制御プログラムを実行して、工作機械などを制御する。プログラム実行部1は、制御プログラムを実行する際に、記憶部2の記憶領域に記憶されている値を更新することができる。プログラム実行部1は、制御プログラムに含まれる命令を実行する毎に、実行した命令を特定するための情報をモニタデータ管理部3に通知する。
 記憶部2は、格納するデータの種類が予め割り当てられた複数の記憶領域を有する。プログラム実行部1は、記憶部2のアドレスを使用することで、記憶部2の各記憶領域にデータを書き込んだり、各記憶領域からデータを読み出したりすることができる。この記憶領域は、PLC10の外部からも書き込んだり読み出したりすることができるようになっており、これにより、PLC10の外部とのデータの送受信が可能になっている。また、記憶部2は、プログラム実行部1が制御プログラムを実行しているときに使用するデータの値を格納することもできる。記憶部2の記憶領域は、データ種別を示す文字と、アドレスとを用いて表記することができる。例えば、入力データを示す文字はX、出力データを示す文字はY、内部的に使用するビットデータを示す文字はM、ワードデータを示す文字はDなどと定められている。この場合、入力データを格納する記憶領域のアドレス0のものは「X0」と表記される。
 図2は、図1に示すPLC10が使用する制御プログラムの一例を示す図である。PLC10が使用する制御プログラムは、シーケンスプログラムとも呼ばれ、変数、記憶部2の記憶領域のアドレス、数値、命令などを用いて記述される。制御プログラムには、複数の命令が含まれている。図2に示す制御プログラムの1行目は、記憶領域M0の値が「ON」の場合、記憶領域D0に値「1」をコピーするという動作を示している。制御プログラムの2行目は、記憶領域M1の値が「ON」の場合、記憶領域D0に値「2」をコピーするという動作を示している。制御プログラムの3行目は、記憶領域M2の値が「ON」の場合、記憶領域D0に値「3」をコピーするという動作を示している。制御プログラムの4行目は、記憶領域M3の値が「ON」の場合、記憶領域D1に格納された値に「1」を加算するという動作を示している。制御プログラムの5行目は、記憶領域M0の値が「ON」の場合、記憶領域D0に値「1」をコピーするという動作を示している。制御プログラムの6行目は、記憶領域M1の値が「ON」の場合、記憶領域D0に値「2」をコピーするという動作を示している。
 図2に示す制御プログラムは、複数の命令と、各命令の実行条件と、命令により更新される記憶領域のアドレスとを含んでいる。命令は、PLC10に制御させたい内容の最小単位を示している。例えば上記制御プログラムの4行目の例では、命令は「加算する」であり、命令の実行条件は「記憶領域M3の値がONであること」であり、命令により更新される記憶領域のアドレスは記憶領域D1である。
 図1の説明に戻る。モニタデータ管理部3は、モニタ支援装置20からの指示に従って、制御プログラムに含まれる命令が実行されたときのモニタ対象の記憶領域に記憶されている値であるモニタデータを生成する。モニタ対象の記憶領域は、命令が使用する記憶領域であり、具体的には、命令が実行された結果が記憶される記憶領域と、命令を実行するか否かを判断するために参照する記憶領域とを含む。モニタデータ管理部3は、生成したモニタデータを、モニタデータ記憶部4に記憶させると共に、モニタ支援装置20に送信する。モニタデータ管理部3は、プログラム実行部1から、実行された命令を特定するための情報が通知されたタイミングに合わせて記憶部2の記憶領域に記憶されている値を取得することで、制御プログラムに含まれる命令が実行されたタイミングに合わせて、モニタデータを生成することができる。モニタデータ管理部3は、実行された命令と、当該命令が使用した記憶領域に記憶されている値であるモニタデータとを対応づけて、モニタデータ記憶部4に記憶させると共に、モニタ支援装置20に送信する。モニタデータ管理部3は、モニタデータを、モニタデータが取得された時刻情報と対応づけることもできる。
 モニタデータ記憶部4は、モニタデータ管理部3から入力されるモニタデータを、命令を特定するための情報と、モニタデータが取得された時刻と対応づけて記憶する。記憶部2の記憶領域に記憶されている値は、命令の実行やPLC10の外部からの入力データなどによって書換えられるため、経時的に変化するのに対して、モニタデータ記憶部4には、制御プログラムに含まれる命令が実行されたタイミングの値が保持されることになる。
 モニタ支援装置20は、パーソナルコンピュータ上で動作するソフトウェアツールとして提供され、PLC10が設備の制御を行うための制御プログラムの編集を支援したり、PLC10をモニタ支援装置20に接続して、制御プログラムの稼働状態を確認したり、編集した制御プログラムをPLC10へ転送したりする機能を有している。
 モニタ支援装置20は、データ取得部5と、表示データ記憶部6と、表示制御部7とを有する。データ取得部5は、PLC10の動作を確認するためのモニタデータをPLC10から取得する。具体的には、データ取得部5は、制御プログラム内のモニタデータを取得する範囲を指定する範囲指定部51と、範囲指定部51によって指定された範囲内に含まれるモニタ対象となる記憶領域のアドレスを特定するモニタ対象情報特定部52とを含む。
 範囲指定部51は、制御プログラムの中で、モニタ対象となる範囲を指定する。モニタ支援装置20のモニタ機能は、例えばデバッグ時など制御プログラムが期待通りに動作しているか否かを確認するために用いられる。全ての範囲のモニタデータを取得する場合、処理負荷が大きくなったり、モニタデータの記憶容量が大きくなったりするため、範囲指定部51は、必要に応じて、モニタ対象となる範囲を絞り込むことができる。
 図3は、図1に示す範囲指定部51が画面上に表示するモニタ範囲指定画面511を示す図である。モニタ範囲指定画面511を使用することで、ユーザは、制御プログラムの範囲を行数で指定することができる。範囲指定部51は、ユーザがモニタ範囲指定画面511に入力するデータを取得して、この入力データを用いてモニタ範囲を指定することができる。なお、範囲指定部51がモニタ対象範囲を指定する方法は、モニタ範囲指定画面511を使用する例に限定されない。範囲指定部51は、ユーザが入力した値に限らず、任意のアルゴリズムを用いて導き出された範囲を使用してもよい。例えば、範囲指定部51は、機械学習を用いて導き出された範囲を使用してもよい。
 モニタ対象情報特定部52は、制御プログラムの内、範囲指定部51によって指定された範囲の中から、モニタ対象となる記憶領域を特定する。例えば、範囲指定部51によって、2行目~4行目がモニタ対象範囲として指定された場合、モニタ対象情報特定部52は、制御プログラムの2行目~4行目の中から、命令が使用している記憶領域を特定する。
 図4は、図1に示すモニタ対象情報特定部52が特定するモニタ対象情報を示す図である。この例では、モニタ対象情報特定部52は、制御プログラムの2行目の記憶領域M1および記憶領域D0、3行目の記憶領域M2および記憶領域D0、4行目の記憶領域M3および記憶領域D1がモニタ対象であると特定することができる。
 モニタ対象情報特定部52は、モニタ対象の命令と、命令が実行された結果が記憶される記憶領域と、命令を実行するか否かを判断するために参照する記憶領域とを対応づけて、モニタ対象情報とする。モニタ対象情報特定部52は、モニタ対象情報をPLC10に送信する。
 データ取得部5は、モニタ対象情報に従ってPLC10が作成したモニタデータと、モニタデータに対応づけられた命令を示す情報と、モニタデータが取得された時刻とを受信し、表示データ記憶部6へ記憶する。図5は、図1に示す表示データ記憶部6へ記憶される表示データを示す図である。表示データは、命令を示す情報である制御プログラム内の行数と、この命令に対応づけて取得されたモニタデータと、モニタデータが取得された時刻とを含んでいる。
 PLC10のモニタデータ管理部3は、命令が実行される毎にモニタデータを取得してモニタ支援装置20に送信するため、データ取得部5は、命令が実行される毎にモニタデータを取得することになる。また、データ取得部5は、PLC10からモニタデータを取得する毎に表示データ記憶部6に記憶するため、表示データ記憶部6に記憶されたモニタデータは、命令が実行される毎に更新されることになる。
 表示制御部7は、画面上に、制御プログラムと、制御プログラムに含まれる命令が実行されたときのモニタデータの値とを表示することができる。表示制御部7は、プログラム表示部71と、モニタデータ更新部72と、履歴表示部73と、強調表示部74とを有する。表示制御部7が、表示装置を備えており、表示装置の画面上に制御プログラム、モニタデータなどを表示してもよいし、表示制御部7は、外部の表示装置と接続されており、外部の表示装置の画面上に制御プログラム、モニタデータなどを表示してもよい。
 プログラム表示部71は、画面上に制御プログラムを表示する。プログラム表示部71は、図2に示したように、リレー回路を模したラダー図の形式で制御プログラムを表示することができる。
 モニタデータ更新部72は、表示データ記憶部6に記憶されたモニタデータを使用して、プログラム表示部71が表示した制御プログラムに重畳して、モニタデータを画面上に表示することができる。このときモニタデータ更新部72は、制御プログラムに含まれる命令をこの命令と対応づけて取得されたモニタデータと対応づけて表示する。モニタデータ更新部72は、表示データ記憶部6に記憶されたモニタデータのうち、命令および記憶領域の組み合わせ毎の最新値を画面上に表示することができる。
 図6は、図1に示すプログラム表示部71が表示した制御プログラムにモニタデータ更新部72がモニタデータを重畳して表示した画面を示す図である。ここでは、2行目~4行目がモニタ範囲として指定されているため、制御プログラムの2行目~4行目にモニタデータの値が重畳して表示されている。ここでは、図5に示す表示データが表示データ記憶部6に記憶されている状態のときに、表示制御部7が表示する画面を示している。制御プログラム中の記憶領域を示す表示と重畳して、記憶領域に格納された値であるモニタデータが表示されている。この画面を見るユーザは、制御プログラムの2行目が最後に実行されたときに、記憶領域M1の値が「ON」であり、記憶領域D0に値「2」がコピーされたことを確認することができる。
 最新のモニタデータを表示する以外にも、表示制御部7は、モニタデータの履歴情報を画面上に表示する機能を有する。履歴表示部73は、表示データ記憶部6に、同一の命令と対応づけられた同一のモニタデータの値が複数記憶されている場合、履歴表示指示を検知すると、履歴情報として複数のモニタデータを表示することができる。
 図7は、図1に示す履歴表示部73が表示する履歴情報を示す図である。履歴表示部73は、例えば、制御プログラムに命令毎に記述された記憶領域に対する選択操作を検知すると、選択された記憶領域に格納された値の履歴を画面上に表示することができる。履歴表示部73が履歴情報を表示する方法は、図7に示す例に限定されない。例えば、履歴表示部73は、複数の記憶領域の履歴を同時に表示してもよいし、履歴の数は3回分に限らず、任意の数にすることができる。命令および記憶領域の組み合わせ毎に、記憶領域に格納された値の履歴を表示することで、命令と、この命令が使用した記憶領域に記憶されている値との関係を把握しやすくなる。
 強調表示部74は、制御プログラム上に表示されたモニタデータを強調表示する機能を有する。強調表示部74は、表示データ記憶部6に記憶された時刻情報を用いて、記憶領域が使用された順番に従って、強調表示するモニタデータを順次変化させることができる。このとき、強調表示するモニタデータを変化させる順番は、記憶領域が使用された順番に基づいて、新しいものから古いものへ向かう順番であってもよいし、古いものから新しいものへ向かう順番であってもよい。
 図8は、図1に示す強調表示部74の動作を説明するための図である。強調表示部74は、図8(A)に示すように、4行目の記憶領域M3の部分を強調表示した状態から、図8(B)に示すように、3行目の記憶領域M2の部分を強調表示した状態に変化させて、その後、図8(C)に示すように、2行目の記憶領域D0の部分を強調表示し、図8(D)に示すように、2行目の記憶領域M1の部分を強調表示した状態に変化させる。強調表示部74は、モニタデータを新しいものから古いものに遡って順番に強調表示している。なお、ここでは図8(B)に示すように、3行目の記憶領域M2の値が「OFF」であって、3行目では、記憶領域D0に値「3」をコピーする処理は省略されているため、強調表示も省略される。
 続いて、本実施の形態にかかるモニタ支援システム100の動作について説明する。ここで、モニタ支援装置20は、モニタデータを取得する動作と、表示する動作とに分けて説明する。
 まず、モニタ支援装置20がモニタデータを取得する動作について説明する。図9は、図1に示すデータ取得部5の動作を示すフローチャートである。
 データ取得部5の範囲指定部51は、例えば図3に示すような入力画面を表示して、当該入力画面に対する入力操作を検知することで、モニタ対象として指定された範囲を示す情報を取得する(ステップS101)。
 データ取得部5のモニタ対象情報特定部52は、範囲指定部51が取得したモニタ対象の範囲を示す情報に基づいて、モニタ対象の範囲内の制御プログラムから、モニタ対象の命令が実行された結果が記憶される記憶領域およびモニタ対象の命令実行するか否かを判断するために参照した記憶領域を抽出して、取得する対象のモニタデータを指定するモニタ対象情報を生成する(ステップS102)。モニタ対象情報は、例えば、図5に示す表の時刻および値の欄が空白の状態に対応する情報である。
 モニタ対象情報特定部52は、生成したモニタ対象情報をPLC10に送信する(ステップS103)。続いてデータ取得部5は、モニタ対象情報の送信先のPLC10からモニタデータを受信したか否かを判断する(ステップS104)。モニタデータを受信していない場合(ステップS104:No)、データ取得部5は、モニタデータを受信するまでステップS104の処理を繰り返す。
 モニタデータを受信した場合(ステップS104:Yes)、データ取得部5は、受信したモニタデータを表示データとして表示データ記憶部6に記憶させる(ステップS105)。
 図10は、図1に示す表示制御部7の動作を示すフローチャートである。表示制御部7のプログラム表示部71は、制御プログラムを画面上に表示する。そして、モニタデータ更新部72は、予め定められた表示データ更新時間が経過したか否かを判断する(ステップS201)。表示データ更新時間が経過していない場合(ステップS201:No)、モニタデータ更新部72は、表示データ更新時間が経過するまでステップS201の処理を繰り返す。
 表示データ更新時間が経過した場合(ステップS201:Yes)、モニタデータ更新部72は、制御プログラムに含まれる命令毎にモニタデータの最新値を画面上に表示する(ステップS202)。
 また強調表示部74は、強調表示を指示する強調表示操作を検知したか否かを判断する(ステップS203)。強調表示操作が検知された場合(ステップS203:Yes)、強調表示部74は、記憶領域が使用された順番に基づいて、強調表示する位置を移動させる(ステップS204)。強調表示操作が検知されない場合(ステップS203:No)、ステップS204の処理は省略される。
 履歴表示部73は、履歴表示を指示する履歴表示操作を検知したか否かを判断する(ステップS205)。履歴表示操作が検知された場合(ステップS205:Yes)、履歴表示部73は、表示データ記憶部6に記憶されたデータから履歴情報を生成して、画面上に表示する(ステップS206)。履歴表示操作が検知されない場合(ステップS205:No)、ステップS206の処理は省略される。
 なお、図10に示した動作は一例であり、本実施の形態はかかる例に限定されない。図10に示す例では、モニタデータ更新部72は、一定の周期で表示するモニタデータを更新することとしたが、表示データ記憶部6の値が更新されるタイミングが分かれば、更新毎に表示するモニタデータを更新してもよい。また、表示制御部7が動作する順番は、図10に示す例に限らない。ステップS201およびステップS202の処理と、ステップS203およびステップS204の処理と、ステップS205およびステップS206の処理とは同時に行われてもよいし、実行する順番を入れ替えることも可能である。
 図11は、図1に示すモニタデータ管理部3の動作を示すフローチャートである。モニタデータ管理部3は、モニタ対象情報を受信する(ステップS301)。モニタデータ管理部3は、受信したモニタ対象情報に基づいて、モニタデータ記憶部4にモニタデータを記憶するための記憶領域を確保する(ステップS302)。
 モニタデータ管理部3は、プログラム実行部1から通知される、実行した命令を特定するための情報の有無に基づいて、実行された命令を特定するための情報命令が実行されたか否かを判断する(ステップS303)。
 命令が実行されていない場合(ステップS303:No)、モニタデータ管理部3は、ステップS303の処理を繰り返す。命令が実行された場合(ステップS303:Yes)、モニタデータ管理部3は、モニタ対象情報に基づいて、記憶領域に記憶されている値を記憶部2に記録してモニタデータを生成する(ステップS304)。
 モニタデータを生成すると、モニタデータ管理部3は、生成したモニタデータを、モニタ支援装置20に送信する(ステップS305)。モニタデータ管理部3は、制御プログラムの実行が終了したか否かを判断する(ステップS306)。制御プログラムの実行が終了した場合(ステップS306:Yes)、モニタデータ管理部3は処理を終了する。制御プログラムの実行が終了していない場合(ステップS306:No)、モニタデータ管理部3は、ステップS303の処理に戻り、制御プログラムの実行が終了するまでステップS303~ステップS306の処理を繰り返す。
 ここで、図1に示すPLC10およびモニタ支援装置20の機能を実現するためのハードウェア構成について説明する。PLC10およびモニタ支援装置20の機能は、ソフトウェアを用いて実現されてもよいし、専用のハードウェアを用いることもできる。
 図12は、図1に示すPLC10およびモニタ支援装置20の機能をソフトウェアを用いて実現するための構成を示す図である。PLC10およびモニタ支援装置20の各機能は、プロセッサ91がメモリ92に記憶されたコンピュータプログラムを読み出して実行することにより、実現することができる。
 プロセッサ91は、CPU(Central Processing Unit)であり、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、DSP(Digital Signal Processor)などとも呼ばれる。
 メモリ92は、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリー、EPROM(Erasable Programmable ROM)、EEPROM(登録商標)(Electrically EPROM)などの不揮発性または揮発性の半導体メモリ、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVD(Digital Versatile Disk)などである。メモリ92は、プロセッサ91が実行する各処理における一時メモリとしても用いられる。
 図13は、図1に示すPLC10およびモニタ支援装置20の機能を実現するための専用のハードウェアの構成を示す図である。PLC10およびモニタ支援装置20の機能は、専用のハードウェアである処理回路93を用いて実現することもできる。処理回路93は、例えば、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)またはこれらを組み合わせたものである。
 上記のPLC10およびモニタ支援装置20のそれぞれの機能を実現するためのコンピュータプログラムは、通信媒体を介して提供することも可能であるし、コンピュータプログラムを記録した記録媒体の形式で提供されてもよい。
 以上説明したように、本実施の形態にかかるモニタ支援装置20は、PLC10が制御プログラムに含まれる命令を実行する毎に、実行した命令が実行された結果が記憶される記憶領域に記憶されている値を記録してモニタデータを生成する。モニタデータは、実行した命令と対応づけて記憶され、表示制御部7は、対応する命令と共にモニタデータを表示する。このため、命令が実行されたときに記憶領域に記憶されている値を確実に表示することが可能になり、ユーザが制御プログラムの動作を確認することが容易になる。
 特に、制御プログラム内で同一の記憶領域に記憶された値が複数回使用されている場合や、制御プログラムが繰り返し実行される場合には、一定時間間隔で記憶領域の値を取得すると、各命令との対応関係が分かり難い場合がある。このような場合であっても、上記の技術を用いることで、制御プログラムのデバッグ作業などで記憶領域に記憶された値を確認する際に、命令毎に制御プログラムの処理を一時停止する必要がなくなり、命令が実行された時に記憶領域に記憶されている値を容易に確認することができ、作業効率が向上する。
 また、モニタ支援装置20は、モニタデータを取得する範囲を指定する範囲指定部51を有する。このため、PLC10およびモニタ支援装置20が取り扱うデータ量を低減することができ、処理負荷の低減、必要な記憶容量の低減につながる。また、表示するモニタデータを必要な範囲に絞り込むことができるため、画面上に表示されるモニタデータが見やすくなり、制御プログラムが取り扱うデータ数が多い場合であっても、ユーザが制御プログラムの動作を確認することが容易になる。
 以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
 例えば、上記の実施の形態では、制御プログラムに含まれる複数の命令のそれぞれと、各命令が使用した記憶領域に記憶された値を示すモニタデータとは、制御プログラム中で命令が記述された行数を用いて直接対応づけられている。しかしながら、命令とモニタデータとを対応づけるための情報は、かかる例に限定されない。例えば、データ取得部5が命令が実行される毎にモニタデータを時刻と対応づけて取得し、プログラム実行部1が各命令を実行した時刻を記録していれば、間接的に、命令とモニタデータとを対応づけることができる。
 1 プログラム実行部、2 記憶部、3 モニタデータ管理部、4 モニタデータ記憶部、5 データ取得部、6 表示データ記憶部、7 表示制御部、10 PLC、20 モニタ支援装置、51 範囲指定部、52 モニタ対象情報特定部、71 プログラム表示部、72 モニタデータ更新部、73 履歴表示部、74 強調表示部、91 プロセッサ、92 メモリ、93 処理回路、100 モニタ支援システム、511 モニタ範囲指定画面。

Claims (15)

  1.  プログラマブルロジックコントローラに実行させる制御プログラムに含まれる複数の命令のそれぞれが実行される毎に、前記命令が実行された結果が記憶される記憶領域に記憶されている値をモニタデータとして、前記命令と対応づけて取得するデータ取得部と、
     前記制御プログラムに含まれる複数の命令と、前記データ取得部によって取得された前記モニタデータとを画面上に表示する表示制御部と、
     を備えることを特徴とするモニタ支援装置。
  2.  前記データ取得部は、前記制御プログラム内の前記モニタデータを取得する範囲を指定する範囲指定部を有し、指定された範囲に含まれる前記命令が実行された結果が記憶される記憶領域に記憶されている値を前記モニタデータとして取得することを特徴とする請求項1に記載のモニタ支援装置。
  3.  前記データ取得部は、前記モニタデータを当該モニタデータが取得された時刻と対応づけて取得し、
     前記命令と、前記命令と対応づけて取得されたモニタデータと、当該モニタデータが取得された時刻とを対応づけて記憶する表示データ記憶部、
     をさらに備えることを特徴とする請求項1または2に記載のモニタ支援装置。
  4.  前記表示制御部は、前記表示データ記憶部に記憶されたモニタデータを用いて、前記画面上に表示されたモニタデータの履歴を前記命令毎に前記画面上に表示する履歴表示部を有することを特徴とする請求項3に記載のモニタ支援装置。
  5.  前記表示制御部は、前記制御プログラムを前記画面上に表示し、表示した前記制御プログラムに重畳して、前記モニタデータの履歴を前記画面上に表示することを特徴とする請求項4に記載のモニタ支援装置。
  6.  前記履歴表示部は、前記画面上に表示された複数のモニタデータのうち、選択されたモニタデータの履歴を、前記選択されたモニタデータに重畳して表示することを特徴とする請求項5に記載のモニタ支援装置。
  7.  前記表示制御部は、前記画面上に表示された複数のモニタデータを、当該モニタデータが取得された時刻に従って、順番に強調表示する強調表示部をさらに有することを特徴とする請求項3に記載のモニタ支援装置。
  8.  前記表示制御部は、前記制御プログラムを前記画面上に表示し、表示した前記制御プログラムに重畳して前記モニタデータを前記画面上に表示し、
     前記強調表示部は、前記画面上に表示された複数の前記モニタデータのうち強調表示するモニタデータを順次変化させることを特徴とする請求項7に記載のモニタ支援装置。
  9.  前記表示制御部は、前記表示データ記憶部に記憶されたモニタデータの中から、命令毎の最新値を前記画面上に表示することを特徴とする請求項3に記載のモニタ支援装置。
  10.  前記表示制御部は、表示した前記制御プログラムに重畳して前記最新値を表示することを特徴とする請求項9に記載のモニタ支援装置。
  11.  前記データ取得部は、前記命令を実行するか否かを判断するために参照した記憶領域の値を前記命令と対応づけて前記モニタデータとして取得することを特徴とする請求項1から10のいずれか1項に記載のモニタ支援装置。
  12.  制御プログラムを実行するプログラム実行部と、
     記憶するデータの種類が割り当てられた複数の記憶領域を有する記憶部と、
     前記プログラム実行部が前記制御プログラムに含まれる命令を実行する毎に、前記命令が実行された結果が記憶される前記記憶領域に記憶されている値をモニタデータとして取得し、前記モニタデータを表示するモニタ支援装置に前記モニタデータと前記命令とを対応づけて送信するモニタデータ管理部と、
     を備えることを特徴とするプログラマブルロジックコントローラ。
  13.  前記モニタデータ管理部は、取得する対象のモニタデータを指定するモニタ対象情報を前記モニタ支援装置から受信し、受信した前記モニタ対象情報に基づいて、前記モニタデータを取得することを特徴とする請求項12に記載のプログラマブルロジックコントローラ。
  14.  記憶するデータの種類が割り当てられた複数の記憶領域を有するプログラマブルロジックコントローラと、当該プログラマブルロジックコントローラの前記記憶領域に記憶されている値をモニタするモニタ支援装置とを備えるモニタ支援システムにおいて、
     前記プログラマブルロジックコントローラが実行する制御プログラムに含まれる複数の命令のそれぞれを、前記プログラマブルロジックコントローラが実行する毎に、前記命令が実行された結果が記憶される記憶領域に記憶されている値をモニタデータとして、前記命令と対応づけて取得するステップと、
     前記プログラマブルロジックコントローラが、実行された命令を特定するための情報と、当該命令に対応づけられた前記モニタデータとを前記モニタ支援装置に送信するステップと、
     前記モニタ支援装置が、前記実行された命令を特定するための情報と、当該命令に対応づけられた前記モニタデータとを受信するステップと、
     前記モニタ支援装置が、前記制御プログラムに含まれる複数の命令のそれぞれと、前記複数の命令のそれぞれに対応づけられた前記モニタデータとを画面上に表示するステップと、
     を含むことを特徴とするモニタ支援方法。
  15.  プログラマブルロジックコントローラに実行させる制御プログラムに含まれる複数の命令のそれぞれが実行される毎に、前記命令が実行された結果が記憶される記憶領域に記憶されている値をモニタデータとして、前記命令と対応づけて取得するステップと、
     前記制御プログラムに含まれる複数の命令と、前記複数の命令のそれぞれに対応づけらえた前記モニタデータとを画面上に表示するステップと、
     をコンピュータに実行させることを特徴とするモニタ支援プログラム。
PCT/JP2018/016792 2018-04-25 2018-04-25 モニタ支援装置、プログラマブルロジックコントローラ、モニタ支援方法およびモニタ支援プログラム WO2019207679A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201880012521.5A CN110637263B (zh) 2018-04-25 2018-04-25 监视辅助装置、监视辅助方法及记录介质
JP2018554798A JP6469330B1 (ja) 2018-04-25 2018-04-25 モニタ支援装置、モニタ支援方法およびモニタ支援プログラム
KR1020197023788A KR102096595B1 (ko) 2018-04-25 2018-04-25 모니터 지원 장치, 모니터 지원 방법 및 모니터 지원 프로그램
PCT/JP2018/016792 WO2019207679A1 (ja) 2018-04-25 2018-04-25 モニタ支援装置、プログラマブルロジックコントローラ、モニタ支援方法およびモニタ支援プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2018/016792 WO2019207679A1 (ja) 2018-04-25 2018-04-25 モニタ支援装置、プログラマブルロジックコントローラ、モニタ支援方法およびモニタ支援プログラム

Publications (1)

Publication Number Publication Date
WO2019207679A1 true WO2019207679A1 (ja) 2019-10-31

Family

ID=65356134

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/016792 WO2019207679A1 (ja) 2018-04-25 2018-04-25 モニタ支援装置、プログラマブルロジックコントローラ、モニタ支援方法およびモニタ支援プログラム

Country Status (4)

Country Link
JP (1) JP6469330B1 (ja)
KR (1) KR102096595B1 (ja)
CN (1) CN110637263B (ja)
WO (1) WO2019207679A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113759861B (zh) * 2021-11-10 2022-02-01 西安热工研究院有限公司 一种分散控制系统后台在线命令接收与下发方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08123515A (ja) * 1994-10-25 1996-05-17 Fanuc Ltd シーケンス・プログラムの表示方式
JPH10260864A (ja) * 1997-03-18 1998-09-29 Nec Eng Ltd トレース装置
JP2003228417A (ja) * 2002-02-05 2003-08-15 Toshiba Corp 制御システム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4124976B2 (ja) * 2001-03-21 2008-07-23 株式会社日立産機システム Plcモニタ装置、及びその参照データ・動作プログラム
JP2006209381A (ja) * 2005-01-27 2006-08-10 Digital Electronics Corp 制御用表示装置、そのプログラムおよび記録媒体
KR20070042435A (ko) * 2006-01-05 2007-04-23 한국서부발전 주식회사 디지털 제어용 경보창의 경보 감시방법
JP5434941B2 (ja) * 2011-03-22 2014-03-05 横河電機株式会社 操作監視装置及び操作監視方法
KR101713462B1 (ko) * 2012-11-22 2017-03-07 미쓰비시덴키 가부시키가이샤 프로그램 작성 지원 장치, 방법 및 기록 매체
US9740185B2 (en) * 2013-04-12 2017-08-22 Mitsubishi Electric Corporation Peripheral device for programmable controller and debug support program
JP5996150B2 (ja) * 2014-05-28 2016-09-21 三菱電機株式会社 プログラマブル表示器及び作画ソフトウェア

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08123515A (ja) * 1994-10-25 1996-05-17 Fanuc Ltd シーケンス・プログラムの表示方式
JPH10260864A (ja) * 1997-03-18 1998-09-29 Nec Eng Ltd トレース装置
JP2003228417A (ja) * 2002-02-05 2003-08-15 Toshiba Corp 制御システム

Also Published As

Publication number Publication date
KR102096595B1 (ko) 2020-04-02
JP6469330B1 (ja) 2019-02-13
KR20190125303A (ko) 2019-11-06
CN110637263A (zh) 2019-12-31
CN110637263B (zh) 2022-08-19
JPWO2019207679A1 (ja) 2020-05-07

Similar Documents

Publication Publication Date Title
JP5583305B2 (ja) プログラマブルロジックコントローラ、プログラミングツール及びプログラム・パラメータ編集システム
TWI467472B (zh) 具備可程式顯示器之控制系統、可程式顯示器及屬於其作圖資料作成手段之作圖程式產品
JP5859173B1 (ja) エンジニアリングツール、プログラム編集装置およびプログラム編集システム
US8121709B2 (en) Method for comparing, an automation system and a controller
JP6514252B2 (ja) ロボットのデータ設定システム、データ設定方法及びプログラム
JP2017142794A (ja) プログラマブルコントローラシステム、そのコントローラ、支援装置、hci装置、二重化コントローラシステム
JP6469330B1 (ja) モニタ支援装置、モニタ支援方法およびモニタ支援プログラム
JP2010287034A (ja) 外部機器とPLCとのModbusプロトコル通信アドレス表示方式
CN104956274A (zh) 数控装置
JP6625303B1 (ja) 駆動制御装置
JP5469510B2 (ja) プログラマブルコントローラ、設定値変更システム、演算表示装置及び設定値変更ユニット
WO2016071974A1 (ja) リモート制御装置および制御システム
JP5365875B2 (ja) 産業用コントローラ
JP6599067B1 (ja) 装置状態再現装置、装置状態再現方法および装置状態再現プログラム
JP6051545B2 (ja) Plcシステム、状態表示方法、plc、およびプログラマブル表示器
US10914580B2 (en) Measurement system, measurement program, and control method
JP7010863B2 (ja) 制御装置、プログラム、及び無線通信機器
JP6247542B2 (ja) 監視ポイント定義変更方法およびエンジニアリング装置
JP5287495B2 (ja) プログラマブルコントローラ用ユニット及びプログラマブルコントローラ
JP6645223B2 (ja) 制御システム、および制御装置
JP6437158B1 (ja) エンジニアリングツール
JP2016224600A (ja) 制御装置、記憶装置、および、再現装置
JP2022182160A (ja) 制御システム、システムプログラムおよびデバッグ方法
JP5981477B2 (ja) フラッシュメモリ制御装置、フラッシュメモリ内蔵機器、フラッシュメモリ制御方法、及びそのためのプログラム
JP2020046954A (ja) 制御システム、エンジニアリングツール、およびコントローラ

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2018554798

Country of ref document: JP

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 20197023788

Country of ref document: KR

Kind code of ref document: A

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

Ref document number: 18916953

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: 18916953

Country of ref document: EP

Kind code of ref document: A1