Time chart generation program, time chart generation device, support system, and time chart generation method

The time chart generation program automatically generates time charts using control programs and trigger information, addressing the complexity of manual input and enhancing productivity by visually depicting operational dependencies.

JP7599616B1Active Publication Date: 2024-12-13MITSUBISHI ELECTRIC CORP
View PDF 10 Cites 0 Cited by

Patent Information

Application Number
JP2024514580
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2023-08-31
Publication Date
2024-12-13
Estimated Expiration
2043-08-31

AI Technical Summary

Technical Problem

Existing techniques for generating time charts in Factory Automation sites require users to input complex temporal context and dependency information, leading to a significant burden in creating these charts.

Method used

A time chart generation program executed by a programmable controller that automatically generates time charts based on control programs, time length information, and trigger information, displaying causal relationships between device operations.

Benefits of technology

Reduces the user burden in creating time charts by automatically generating them, facilitating efficient control processing and improving productivity by visually representing operational dependencies and reducing the complexity of manual input.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007599616000001
    Figure 0007599616000001
  • Figure 0007599616000002
    Figure 0007599616000002
  • Figure 0007599616000003
    Figure 0007599616000003
Patent Text Reader

Abstract

The program causes the support device (10) to function as an acquisition unit (120) that acquires a control program (12) executed by the PLC to control the equipment and time length information (114) regarding the time length of the operation of the equipment defined in the control program, a generation unit (140) that generates a time chart of the operation based on the control program (12) and the time length information (114), and an interface unit (170) that outputs display data for displaying the generated time chart.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present disclosure relates to a time chart generating program, a time chart generating device, a support system, and a time chart generating method. [Background technology]

[0002] In the field of FA (Factory Automation), there is a demand to refer to a time chart in order to improve productivity. However, the work of drawing a time chart is complicated and the workload is large. Therefore, a technology for generating a time chart to some extent automatically has been proposed (for example, see Patent Document 1). [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Patent Publication No. 2021-149609 Summary of the Invention [Problem to be solved by the invention]

[0004] In the technology of Patent Document 1, the user needs to input information necessary for generating a time chart, specifically, the temporal sequence and subordinate relationships of the device operations, in advance. The burden of preparing such information still remains, and there is room for further reduction in the burden.

[0005] The present disclosure has been made in light of the above-mentioned circumstances, and aims to further reduce the burden on the user when generating a time chart. [Means for solving the problem]

[0006] In order to achieve the above-mentioned objective, the time chart generation program of the present disclosure causes a computer to function as an acquisition means for acquiring a control program executed by a programmable controller to control a controlled device and duration information regarding the duration of operation of the controlled device defined in the control program, a generation means for generating a time chart of the operation based on the control program and the duration information, and an output means for outputting display data for displaying the generated time chart. Effect of the Invention

[0007] In order to achieve the above object, the time chart generating program of the present disclosure causes a computer to function as an acquisition means for acquiring a control program executed by a programmable controller to control a controlled device and time length information regarding the time length of an operation of the controlled device defined in the control program, a generation means for generating a time chart of the operation based on the control program and the time length information, and an output means for outputting display data for displaying the generated time chart, and the time chart includes a line having a slope corresponding to the time length. The control program indicates a causal relationship between a predetermined trigger and an operation that occurs in response to the trigger, and the time chart includes a line that indicates the causal relationship. The acquisition means further acquires trigger information that associates the operation with another trigger that occurs due to the operation and indicates the same format as the control program. The generation means generates the time chart based on the control program, the time length information, and the trigger information. . [Brief description of the drawings]

[0008] [Figure 1] FIG. 1 is a diagram showing a first example of the configuration of a support system according to a first embodiment. [Diagram 2] FIG. 2 is a diagram showing a second example of the configuration of the support system according to the first embodiment. [Diagram 3] FIG. 1 is a diagram showing a first example of a facility layout according to the first embodiment; [Figure 4] FIG. 1 is a diagram showing an example of a time chart according to the first embodiment; [Diagram 5] FIG. 1 is a diagram showing an example of a control program according to the first embodiment. [Figure 6] FIG. 1 is a diagram showing a hardware configuration of an assistance device according to a first embodiment. [Figure 7] FIG. 1 is a diagram showing a functional configuration of an assistance device according to a first embodiment; [Figure 8] FIG. 1 is a diagram showing an example of facility data according to the first embodiment; [Figure 9] FIG. 1 is a diagram showing an example of duration information according to the first embodiment; [Figure 10] 1 is a flowchart showing a time chart generation process according to the first embodiment. [Figure 11] FIG. 1 is a diagram showing an example of a screen displayed by the support device according to the first embodiment; [Figure 12] FIG. 13 is a diagram showing an example of displaying variation in behavior according to the first embodiment; [Figure 13] FIG. 1 is a diagram showing an example of displaying a temporal causal relationship according to the first embodiment; [Figure 14] FIG. 1 is a diagram showing an example of displaying a conditional causal relationship according to the first embodiment; [Figure 15] FIG. 1 is a first diagram showing a modified example of the display of a time chart according to the first embodiment; [Figure 16] FIG. 13 shows an example of a modification of the control content according to the first embodiment. [Figure 17] FIG. 1 is a diagram showing a second example of the layout of facilities according to the first embodiment; [Figure 18] FIG. 2 is a second diagram showing a modified example of the display of the time chart according to the first embodiment; [Figure 19] FIG. 1 is a diagram showing an example of an interlock according to the first embodiment. [Figure 20] FIG. 1 is a diagram showing an example of settings related to a control program according to the first embodiment; [Figure 21] FIG. 1 is a diagram showing an example of a unit that groups together actuators according to the first embodiment; [Figure 22] FIG. 13 is a diagram showing a modified example of the control program according to the second embodiment. [Diagram 23] FIG. 13 is a diagram showing a modified example of the time chart according to the second embodiment. [Figure 24] FIG. 11 is a diagram showing a first example of parameter derivation according to the second embodiment; [Diagram 25] FIG. 11 is a diagram showing a second example of parameter derivation according to the second embodiment; [Figure 26] FIG. 11 is a diagram showing a third example of parameter derivation according to the second embodiment; [Figure 27] FIG. 13 is a diagram showing a display example of a time chart according to the second embodiment; [Figure 28] FIG. 13 shows an additional example of an interlock according to the second embodiment. [Figure 29] FIG. 13 is a diagram showing an example of editing a time chart according to the second embodiment; [Diagram 30] FIG. 13 is a diagram showing a first example of a display according to the third embodiment. [Diagram 31] FIG. 13 is a diagram showing a second example of a display according to the third embodiment. [Diagram 32] FIG. 11 is a diagram showing a third example of a display according to the third embodiment. [Diagram 33] FIG. 11 is a diagram showing a fourth example of a display according to the third embodiment. [Diagram 34] FIG. 13 is a diagram showing a display example of a screen according to the third embodiment; [Diagram 35] FIG. 13 is a diagram showing a first example of an improvement measure according to the fourth embodiment. [Diagram 36] FIG. 13 is a diagram showing a second example of an improvement measure according to the fourth embodiment. [Figure 37] FIG. 13 is a diagram showing a third example of an improvement measure according to the fourth embodiment. [Figure 38] FIG. 13 is a diagram showing a fourth example of an improvement measure according to the fourth embodiment. [Figure 39] FIG. 13 is a diagram showing a fifth example of an improvement measure according to the fourth embodiment. [Diagram 40] FIG. 13 is a diagram showing a sixth example of an improvement measure according to the fourth embodiment. [Diagram 41] FIG. 13 is a diagram showing an example of support information according to the fourth embodiment. [Diagram 42] FIG. 13 is a diagram showing a seventh example of an improvement measure according to the fourth embodiment. [Diagram 43] FIG. 13 is a diagram showing an eighth example of an improvement measure according to the fourth embodiment. [Diagram 44] FIG. 13 shows a ninth example of an improvement measure according to the fourth embodiment. [Diagram 45] FIG. 13 is a diagram showing a proposed example of adding a sensor according to the fourth embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0009] Hereinafter, a support system according to an embodiment of the present disclosure will be described in detail with reference to the drawings.

[0010] Embodiment 1 As shown in Fig. 1, the support system 1000 according to the present embodiment is a system that supports the design by a user 40 of a facility including a PLC 20 and equipment 31, 32. The example in Fig. 1 shows a state before the start-up of a facility represented by a factory, and the PLC 20 and equipment 31, 32 are the targets of a simulation. Also, as shown in Fig. 2, the support system 1000 is a system that supports a user 40 who desires to improve a production index represented by a cycle time, for the PLC 20 and equipment 31, 32 that are actually installed and in operation in a facility.

[0011] The assistance system 1000 includes an assistance device 10 that supports a user 40 by presenting various information. The assistance device 10 is a terminal device represented by an IPC (Industrial Personal Computer), or a GOT (Graphic Operation Terminal) or a display device that is connected to a PLC 20 and mainly functions as a UI (User Interface) terminal of the PLC 20.

[0012] The support device 10 may receive a time chart 11 designed by a user 40 and output support information created based on the received time chart 11 to the user 40, or may generate a time chart 11 based on input information input by the user 40 and provide it to the user 40 as support information. The time chart 11 is a chart diagram showing the progress of operations of the equipment 31, 32. Note that in this embodiment, an example in which the support device 10 generates the time chart 11 and provides it to the user 40 will be mainly described. The support device 10 corresponds to an example of a time chart generation device.

[0013] The support device 10 may also receive a control program 12 created by a user 40 and output support information created based on the received control program 12 to the user 40, or may generate a control program 12 based on input information input by the user 40 and provide it to the user 40 as support information, or have the PLC 20 execute it. The control program 12 is a program executed by the PLC 20 to control the equipment 31, 32, and is, for example, a sequence program written in a ladder language. The control processing defined in the control program 12 is usually executed repeatedly by the PLC 20 to perform the same process on multiple workpieces.

[0014] The support device 10 also has a 3D (3-dimensions) simulator 13 that simulates the operation of the equipment 31, 32 controlled by the PLC 20 in a three-dimensional space. The 3D simulator 13 receives information from the user 40 indicating the details of the operation, such as the model, model number, size, shape, position and posture in the facility of the equipment 31, 32, and the size, distance, direction, speed, range, time, pressure, temperature and strength of the operation when an operation command specified by the control program 12 is given. In detail, the user 40 selects the equipment 31, 32 to be placed in the facility from a library of various devices prepared in advance, and places the equipment 31, 32 in a three-dimensional virtual space corresponding to the facility. Then, the 3D simulator simulates the operation of the equipment 31, 32 in the three-dimensional virtual space by virtually executing the control program 12 provided by the user 40 or the control program 12 generated by the support device 10. Furthermore, the 3D simulator 13 receives settings of the operation, including the placement and movement, of the walls, floors, ceilings, pillars, foundations, workers, AGVs (Automated Guided Vehicles), and other elements not controlled by the control program 12, in addition to the equipment 31 and 32, of the facility, and simulates the operation in the above-mentioned virtual space. The 3D simulator 13 is primarily used by a user 40 to consider the operation and production index of the facility before the user 40 sets up the facility, but may also be used to support a user 40 who desires to improve the production index even after the facility shown in FIG. 2 has been set up.

[0015] When starting up a facility, the mechanical engineer who designs the equipment and the SW (Software) engineer who designs the software are often different. The mechanical engineer provisionally decides on the equipment and creates a time chart, the SW engineer creates the basic model of the software, and then it is desirable for the two engineers to work together to brush up on these creations and start actual operation when it is certain that a production index exceeding a certain level can be achieved. However, in actual work sites, due to various circumstances, actual operation is often started without such preparation. For example, as a result of starting operation without creating a time chart, improvement measures are proposed after it is found that the production index is low, and the SW engineer is forced to create a time chart instead of the mechanical engineer, which results in an excessive workload. In response to this, the support device 10 according to the present embodiment supports the user 40 by creating a time chart, thereby contributing to the early realization of efficient control processing by the PLC 20.

[0016] The PLC 20 is a control device that controls the equipment 31, 32 in a facility by executing a control program 12 that is written in advance. The PLC 20 may be connected to the equipment 31, 32 by a signal line that transmits a voltage signal or a current signal, or may be connected to the equipment 31, 32 via a field network. Although one PLC 20 and two pieces of equipment 31, 32 are representatively shown in FIGS. 1 and 2, there may be a plurality of PLCs 20, or more than two pieces of equipment may be controlled. In the following, the equipment 31, 32 may be referred to as equipment 30 without distinction. The PLC 20 corresponds to an example of a programmable controller, and the equipment 30 corresponds to an example of a controlled device. The equipment 31, 32 each have an axis 31a, 32a as an operating unit.

[0017] FIG. 3 shows an example in which equipment 301-303, 311-313 are installed in a facility. In the example of FIG. 3, equipment 301, which is a servo motor, rotates a shaft, which is a ball screw, to move a support table on which a workpiece 41 is placed, from point A to point C via point B in the figure, and transports the workpiece 41 to a point directly below equipment 303, which is an air chuck. Then, equipment 302, which is an air cylinder, lowers a piston rod by air drive, and equipment 303 attached to the piston rod grips the workpiece 41. Also, equipment 311 as a sensor that detects that the piston rod of equipment 302 is at the lowering end, equipment 312 as a sensor that detects that equipment 303 is in a gripping state, and equipment 313 as a sensor that detects that the piston rod of equipment 302 is at the upper end are arranged. In addition, these pieces of equipment 30 also operate according to the control program 12 in the process before the workpiece 41 is placed on the support table and in the process after the workpiece 41 is grasped by the equipment 303, but details of these processes will be omitted.

[0018] FIG. 4 shows an example of a time chart showing the operation of the equipment shown in FIG. 3 described above. As shown in FIG. 4, the time chart is a graph showing the transition of the machine position of the equipment 30 or each of its operation axes, with the horizontal axis representing time and the vertical axis representing the equipment 30 or each of its operation axes. The time chart includes lines showing the causal relationship between the operation of the equipment 30 and an event that triggers the operation. In FIG. 4, the causal relationship is shown by a dashed arrow. For example, dashed arrow 501 shows that a trigger occurs in which the device value "M0" corresponding to the operation command for "grasping a workpiece" turns ON, and as a result, the device value "Y0" turns ON and the air cylinder executes the operation of pushing out the piston. Similarly, dashed arrow 502 shows that a trigger occurs in which the device value "X0" corresponding to the detection result of the equipment 311, which is a sensor, turns ON, and as a result, the device value "Y1" turns ON and the air chuck starts the operation of gripping the workpiece. Then, when the air chuck grips the workpiece, a trigger is generated in which the device value "X1" corresponding to the detection result of the equipment 312, which is a sensor, turns ON, which causes the device value "Y2" to turn ON and the air cylinder to perform the operation of returning the piston, as shown by the dashed arrow 503. Furthermore, when the piston of the air cylinder returns, a trigger is generated in which the device value "X2" corresponding to the detection result of the equipment 313, which is a sensor, turns ON, which causes the PLC 20 to determine that gripping of the workpiece has been completed based on the device value "M3", as shown by the dashed arrow 504.

[0019] 4, the time chart shows device values ​​X0, X1, X2, Y0, Y1, Y2, M0, M1, and M2 written in the control program 12. These device values ​​correspond to variables used in the control program 12 and are values ​​stored in the memory of the PLC 20. Some or all of the device values ​​are shared with the equipment 30, and signals are transmitted between the PLC 20 and the equipment 30 using these device values.

[0020] As illustrated in FIG. 5, the control program 12 includes input variables X0, X1, and X2, each of which is named by combining "X", which indicates that the signal is input to the PLC 20, with a numerical value that identifies the input signal; output variables Y0, Y1, and Y2, each of which is named by combining "Y", which indicates that the signal is output from the PLC 20 to the equipment 30, with a numerical value that identifies the output signal; and intermediate variables M0, M1, and M2, each of which is named by combining "M", which indicates that the variable is used within the control program 12, with a numerical value that identifies the value. Line 511 of the control program 12 is a description for turning on the device value "Y0" by using the device value "M0" being turned on as a trigger, and corresponds to the arrow 501 in FIG. 4. Similarly, line 512 in FIG. 5 corresponds to the starting point side of the arrow 502 in FIG. 4, and line 513 in FIG. 5 corresponds to the end point side of the arrow 502 in FIG. 4. Furthermore, line 514 in Fig. 5 corresponds to the starting point side of arrow 503 in Fig. 4, and line 515 in Fig. 5 corresponds to the ending point side of arrow 503 in Fig. 4. In this manner, the causal relationships expressed in control program 12 are represented by arrows in the time chart. That is, control program 12 shows the causal relationships between predetermined triggers and operations that occur in response to the triggers, and the time chart includes lines that represent the causal relationships.

[0021] In FIG. 5, the control processes corresponding to the arrows 501 to 504 in FIG. 4 are representatively shown, and other control processes are omitted. For example, the description for operating the servo motor as shown in FIG. 4 is omitted in FIG. 5. The control program 12 may include a description for manual operation and a description for automatic operation. In manual operation, it is desirable to specify a large number of interlock conditions to ensure safe operation. In contrast, in automatic operation, the minimum necessary interlock conditions that meet a predetermined standard are left, and other conditions are excluded from the calculation target during program execution by Assert, thereby speeding up the scan period of the PLC 20. If the scan is slow, the sensor output may not be read when the ON / OFF of the sensor output is switched instantaneously, so speeding up the scan period can reduce the risk of errors due to such reading errors. In addition, as a result of speeding up the scan period, it can also contribute to shortening the cycle time.

[0022] The support device 10 is configured with hardware elements for functioning as a computer. In detail, as shown in Fig. 6, the support device 10 has a processor 101, a main memory unit 102, an auxiliary memory unit 103, an input unit 104, an output unit 105, and a communication unit 106. The main memory unit 102, the auxiliary memory unit 103, the input unit 104, the output unit 105, and the communication unit 106 are all connected to the processor 101 via an internal bus 107.

[0023] The processor 101 includes a CPU (Central Processing Unit) or an MPU (Micro Processing Unit) as a processing circuit. The processor 101 executes a program P1 stored in the auxiliary storage unit 103 to realize various functions and execute processes described below. The program P1 may be a software application equivalent to a so-called engineering tool. The program P1 corresponds to an example of a time chart generation program.

[0024] The main memory unit 102 includes a RAM (Random Access Memory). A program P1 is loaded into the main memory unit 102 from the auxiliary memory unit 103. The main memory unit 102 is used as a working area for the processor 101.

[0025] The auxiliary storage unit 103 includes a non-volatile memory represented by an Electrically Erasable Programmable Read-Only Memory (EEPROM) and a Hard Disk Drive (HDD). In addition to the program P1, the auxiliary storage unit 103 stores various data used in the processing of the processor 101. The auxiliary storage unit 103 supplies the data used by the processor 101 to the processor 101 according to an instruction from the processor 101. The auxiliary storage unit 103 also stores data supplied from the processor 101.

[0026] The input unit 104 includes input devices typified by a hardware switch, an input key, a keyboard, a pointing device, and a microphone. The input unit 104 acquires information input by a user and notifies the acquired information to the processor 101. The user may input information via a GUI (Graphical User Interface) or by voice input.

[0027] The output unit 105 includes output devices such as a light emitting diode (LED), a liquid crystal display (LCD), and a speaker. The output unit 105 presents various information to the user in accordance with instructions from the processor 101.

[0028] The communication unit 106 includes a communication interface circuit for communicating with an external device. The communication unit 106 receives a signal from the outside and outputs data indicated by the signal to the processor 101. The communication unit 106 also transmits a signal indicating the data output from the processor 101 to the external device.

[0029] The above-mentioned hardware configurations work together to allow the support device 10 to perform various functions. In detail, as shown in Fig. 7, the support device 10 has a storage unit 110 for storing various data, an acquisition unit 120 for acquiring information from the outside, a 3D simulator 13 for simulating the operation of the equipment 30 in a three-dimensional virtual space, a generation unit 140 for generating support information including a time chart, a correction unit 150 for appropriately correcting the data in the storage unit 110, an analysis unit 160 for analyzing the data in the storage unit 110, an interface unit 170 for relaying the exchange of information with the outside, and a display unit 180 for presenting information to the user 40.

[0030] The storage unit 110 is mainly realized by at least one of the main storage unit 102 and the auxiliary storage unit 103. The data stored in the storage unit 110 includes data written in advance in the support device 10 and data acquired by the acquisition unit 120. In detail, as shown in FIG. 7, the storage unit 110 stores an equipment library 111 indicating specifications including details of models, shapes, and operations of a large number of pieces of equipment that can be arranged in a virtual space, time chart data 112 indicating a time chart generated by the generation unit 140, equipment data 113 regarding the equipment 30 arranged in the virtual space, time length information 114 indicating the time length of the operation of the equipment 30, and the control program 12. The equipment library 111 is data written in advance in the storage unit 110, and the control program 12 is data provided by the user 40.

[0031] 8 is a schematic diagram illustrating an example of the equipment data 113. The equipment data 113 includes simulation data 1131 for executing a simulation regarding the equipment 30 selected by the user 40 from the equipment library 111, and an auxiliary program 1132 that represents a causal relationship not represented in the control program 12 among relationships between a plurality of operations of the equipment 30.

[0032] The simulation data 1131 is data that associates the model number of the equipment 30, the arrangement of the equipment 30, parameters set for the equipment 30, and device values ​​corresponding to the equipment 30, and is generated according to the settings of the user 40. The model number is information that specifies the size, shape, and details of the operation. By searching the equipment library 111 for a model number that is the same as the model number of the simulation data 1131, it is possible to refer to the specifications of the equipment 30 of the model number. The arrangement represents the position and the posture. The parameters are information that specifies the operation of the equipment 30. For example, the parameter "A→B: sine wave" in FIG. 8 indicates that the transition of the machine position from point A to point B is sinusoidal as shown in FIG. 4. The device value represents the name of the device value shared with the equipment 30. For example, for the air cylinder in FIG. 8, the parameter "out" is associated with the device value "Y0", which indicates that when the device value Y0 is ON, the air cylinder executes the operation of pushing out the piston rod. The simulation data 1131 corresponds to an example of device information related to the controlled devices, and corresponds to an example of placement information indicating the placement of the controlled devices.

[0033] Note that the contents of the simulation data 1131 shown in Fig. 8 are an example, and the simulation data 1131 may include information different from that shown in Fig. 8. For example, as will be described later, the stroke length of an air cylinder may be set as a parameter, and the simulation data 1131 may include so-called configuration data for the 3D simulator 13.

[0034] The auxiliary program 1132 is information showing the relationship between the equipment 30 and the relationship between the operations of the equipment 30 in the same format as the control program 12. In the example of FIG. 3, the equipment 311, which is a sensor, detects that the piston rod of the equipment 302 has reached the lower end. Such a relationship between the equipment 302 and the equipment 311 is necessary to generate a time chart, but is not shown in the control program 12. The relationship is shown by the auxiliary program 1132. For example, line 517 of the auxiliary program 1132 indicates that when the device value Y0 corresponding to the equipment 302 becomes ON, the device value X0 corresponding to the equipment 311 becomes ON. The auxiliary program 1132 corresponds to an example of trigger information showing the association between the operation of the controlled device and another trigger generated by the operation.

[0035] It should be noted that the detection by the equipment 311 that the equipment 302 has operated can be simulated by the 3D simulator 13. In this manner, the information indicated by the auxiliary program 1132 can be included in the simulation data 1131. When the auxiliary program 1132 is substantially included in the simulation data 1131, the auxiliary program 1132 may be omitted from the equipment data 113.

[0036] As illustrated in FIG. 9, the time length information 114 indicates the length of time required for each operation of each equipment 30. The time length information 114 may be directly input by the user 40 and acquired by the acquisition unit 120. In addition, the parameters of the equipment 30 set by the user 40 may substantially define the time length of the operation of the equipment 30. In this case, the acquisition unit 120 may acquire the parameters for operating the equipment 30 as time length information, and the time length corresponding to the parameters may be determined by the generation unit 140 by a calculation using the parameters or by referring to a database that stores the parameters and the time length in correspondence with each other. For example, when the stroke length and speed of an air cylinder are specified as parameters by the user 40, the time length is calculated by dividing the stroke length by the speed. In such a case, since the simulation data 1131 substantially includes the time length information 114, the time length information 114 stored separately from the simulation data 1131 in the storage unit 110 may be omitted.

[0037] Moreover, the operation log when the equipment 30 is actually operated and the operation log when the operation of the equipment 30 is simulated can be said to be time length information indicating the time length of each operation of the equipment 30. The acquisition unit 120 may acquire and process such an operation log as time length information 114, thereby storing the time length information 114 indicating the time length of each operation in the storage unit 110 as shown in FIG. 9. In detail, a representative value of various operations of the equipment 30 repeatedly recorded together with time in the operation log is adopted as the time length. The representative value may be, for example, any one sample, or may be a value that is statistically determined such as an average value or a median value. The acquisition unit 120 corresponds to an example of an acquisition means that acquires log information when the control program is executed by the programmable controller or when the execution of the control program by the programmable controller is simulated as time length information, and the generation unit 140 corresponds to an example of a generation means that obtains the time length from the log information and generates a time chart.

[0038] Returning to Fig. 7, the acquisition unit 120 is mainly realized by the input unit 104 and the communication unit 106. The acquisition unit 120 acquires information from outside the assistance device 10 and stores the acquired information in the storage unit 110. For example, the acquisition unit 120 acquires parameters set by the user 40, as well as the control program 12, the auxiliary program 1132, and time length information 114 provided by the user 40. The acquisition unit 120 corresponds to an example of an acquisition means that acquires a control program executed by the programmable controller to control the controlled device, time length information related to the time length of the operation of the controlled device defined in the control program, and trigger information.

[0039] The 3D simulator 13 is mainly realized by the processor 101. The 3D simulator 13 simulates the operation of the equipment 30 based on the simulation data 1131. If the simulation cannot be continued due to insufficient data after the start of the simulation of the operation, the 3D simulator 13 may supplement the data by prompting the user 40 to input, and simulate the operation of the equipment 30. The 3D simulator 13 corresponds to an example of a simulation means that simulates the control of a controlled device by a programmable controller that executes a control program.

[0040] The generating unit 140 is mainly realized by the processor 101. The generating unit 140 generates the time chart data 112 based on the equipment data 113, the time length information 114, and the control program 12, and stores the generated data in the storage unit 110. For example, by referring to the control program 12 in FIG. 5, the causal relationship shown by the dashed arrow in FIG. 4 can be understood as described above. This allows the generating unit 140 to determine that, for example, the air cylinder in FIG. 4 starts the gripping operation of the air chuck at the same time as the air cylinder reaches the "extended" state. Furthermore, by referring to the auxiliary program 1132 of the equipment data 113, it can be understood that, for example, the air cylinder in FIG. 4 starts the pushing operation of the piston rod, and the completion of the operation is detected by a sensor. This allows the generating unit 140 to connect the solid line indicating the pushing operation of the air cylinder, which connects "Y0" to "X0" in FIG. 4, to the arrow 502. Furthermore, by referring to the time length information 114, the length of time required for the pushing operation of the air cylinder can be understood. This allows the generating unit 140 to determine the slope of the solid line. In the same manner, the generating unit 140 generates a time chart showing the operation of each piece of equipment 30. The generating unit 140 corresponds to an example of a generating means that generates a time chart based on a control program, time length information, and trigger information.

[0041] 7, the corrector 150 and the analyzer 160 are mainly realized by the processor 101. Details of the corrector 150 and the analyzer 160 will be described in other embodiments.

[0042] The interface unit 170 is mainly realized by the processor 101, the input unit 104, and the communication unit 106. The interface unit 170 functions as a UI interface that receives information input by the user 40, and provides the received information to the acquisition unit 120. The interface unit 170 also outputs display data indicating information to be displayed to the user to the display unit 180. The interface unit 170 corresponds to an example of an output means that outputs display data for displaying the generated time chart. Furthermore, the interface unit 170 functions as a communication interface that communicates with an external device.

[0043] The display unit 180 is mainly realized by the output unit 105. The display unit 180 displays the time chart indicated by the time chart data 112 to the user in accordance with an instruction from the user. Note that the display unit 180 may be omitted in the support device 10, and the support device 10 may exchange information with the user through communication with an external UI device.

[0044] FIG. 10 shows the procedure of the time chart generation process executed by the support device 10. This time chart generation process corresponds to an example of a time chart generation method, and is started by a specific operation of the user 40. In the time chart generation process, the acquisition unit 120 acquires the control program 12, the equipment data 113, and the time length information 114 (step S1). When acquiring the equipment data 113, the acquisition unit 120 may search and read information on the equipment 30 corresponding to the model number specified by the user 40 from the equipment library 111. Next, the generation unit 140 generates a time chart based on the control program 12, the equipment data 113, and the time length information 114 (step S2). Then, the interface unit 170 outputs display data of the time chart, and the time chart is displayed by the display unit 180 (step S3).

[0045] An example of a screen including the time chart displayed in step S3 is shown in Fig. 11. As shown in Fig. 11, the support device 10 may support the review work by the user 40 by displaying the cycle time as a production index together with the time chart.

[0046] As described above, the support device 10 generates a time chart by using the control program 12. The control program 12 is essential data for causing the PLC 20 to execute control processing regardless of the presence or absence of a time chart, and the time chart is generated by using information on causal relationships included in the control program 12. This can reduce the burden on the user 40 in generating the time chart.

[0047] The acquiring unit 120 may also acquire parameters to be set in the facility 30 as the duration information 114. This can reduce the burden of the task of determining the duration on the part of the user 40. Furthermore, the acquiring unit 120 may acquire an operation log of the facility 30 as the duration information 114. This can reduce the burden of the task of preparing the duration information.

[0048] The support device 10 may also be a GOT. Conventionally, it was necessary to operate an engineering tool on a PC to check the control program, and if the user 40 was not skilled in operating the PC and the engineering tool, it was difficult to even grasp the current situation. In contrast, if a time chart is displayed on the support device 10 as a GOT, it becomes possible for on-site workers to point out problems using the same indicator, i.e., the time chart.

[0049] Also, as shown in FIGS. 8, 9, and 11, the machine positions of the equipment 301, which is a servo motor, are given names "A", "B", and "C". These names may be specified not only as the stop positions of the servo motor but also when passing through them. In the case where the positions of the servo motors are indicated by numerical values ​​in the time chart, when the positions of the servo motors that are the starting points for commanding the operations of two different axes are close to each other, the user 40 viewing the time chart may misinterpret which of the two points affects which axis. In contrast, if names can be given to the machine positions of the servo motors, it is possible to avoid misinterpretation of the time chart.

[0050] In addition, the generating unit 140 generates a time chart from the simulation data 1131 including the configuration. Conventionally, a mechanical designer creates a 3D model to design equipment, constructs an operating procedure in the configuration, and creates a time chart after confirming the configuration. However, this is a time-consuming process, and when rework occurs, both the configuration and the time chart need to be corrected. In contrast, if a time chart is generated based on the configuration as described above, it is possible to reduce the number of design steps and avoid mistakes caused by overlooking one of them.

[0051] Moreover, the generation and display of the time chart are not limited to the above-mentioned example, and may be arbitrarily changed. For example, as shown in FIG. 12, when there is a variation in the operation time of each piece of equipment 30, regions 518-521 showing the variation may be displayed on the time chart. Furthermore, as shown in FIG. 12, when the magnitude of the variation is smaller than a threshold, the regions may be displayed without hatching as in regions 518-519, and when the magnitude of the variation exceeds the threshold, the regions may be highlighted by hatching as in regions 520-521. Instead of hatching, coloring according to the magnitude of the variation may be performed. Also, as can be seen from FIG. 12, the variation in region 520 occurs due to the variation in region 521. Such two regions having a causal relationship may be displayed in different ways, or only the region corresponding to the cause may be highlighted. The generating unit 140 corresponds to an example of a generating means for generating a time chart showing the variation.

[0052] The variation information indicating the variation may be acquired by the acquisition unit 120 from the user 40, or may be obtained by a statistical method from an operation log when the control process defined in the control program 12 is repeatedly executed. The variation may be, for example, a standard deviation or a range defined by an upper limit value and a lower limit value.

[0053] Understanding variation is fundamentally difficult in normal FA work sites, and there are many cases where it is not obtained, or where it is not effectively utilized even if it is obtained. However, a display like that in Fig. 12 makes it easy to analyze the causes of variation, and can contribute to stabilizing cycle time by eliminating hidden causes. In addition, if the variation is caused by the mechanism, it can encourage reselection of the mechanism, so it is expected that efficient facility design will be carried out by arranging equipment with sufficient capacity in the facility.

[0054] Also, the method of displaying the causal relationship in the time chart may be changed. For example, the temporal causal relationship may be displayed as shown in FIG. 13. Here, the temporal causal relationship means the relationship between the cause that directly affected the result among the causes that contribute to the result, and the result. In other words, it can be said to be the relationship between the cause that occurred last and the result that appeared at the same time as the occurrence of the cause. In the example of FIG. 13, a dashed arrow is drawn only from the device value X20 that last contributed to the device value M200 among the device values ​​X10 and X20 that correspond to the cause, to the device value M200 that corresponds to the result as described in the control program.

[0055] On the other hand, FIG. 14 shows an example in which a time chart displays a conditional causal relationship. A conditional causal relationship means a relationship between all causes that contribute to a result and the result. In other words, it can be said to be a relationship between all causes that occur and the result, regardless of order and time. In the example of FIG. 14, dashed arrows are drawn from both device values ​​X10 and X20 corresponding to causes to device value M200 corresponding to the result. Note that the display of the temporal causal relationship as shown in FIG. 13 and the display of the conditional causal relationship as shown in FIG. 14 may be switched by a user operation.

[0056] Previously, SW designers had to adjust the causal relationships of operation timing while looking at the control program, mechanical designers at 3D models or time charts they created, and on-site personnel at the actual equipment operation. Because each worker used different tools, there was a large discrepancy in information, and it took a long time from the occurrence of a problem to its resolution. In contrast, by displaying the above-mentioned temporal causal relationships and conditional causal relationships, it becomes possible to easily grasp the points to improve the control program and the cycle time. It is also expected that mechanical designers and on-site personnel other than SW designers will be able to easily grasp the flow of processing defined in the control program.

[0057] Also, as shown in Fig. 15, the lines representing the operation of each piece of equipment 30 in the time chart may be changed to blocks. A time chart such as a Gantt chart may be more suitable for some users 40 or for some of the investigation work performed by the users 40. Furthermore, as shown in Fig. 15, the blocks may be colored according to the type of operation.

[0058] 15, the generation unit 140 may include in the time chart a display component 522 that displays the power consumption or the amount of power consumption when the servo motor operates. The amount of power consumption is calculated from the simulation data 1131 and the equipment library 111. Conventionally, since it is complicated to grasp the power consumption at the design stage, a breaker and a power supply with a relatively large capacity are often selected without calculating the accurate power consumption. In contrast, if the power consumption is displayed as in FIG. 15, it becomes possible to select an appropriate breaker and power supply.

[0059] 15, the generating unit 140 may include in the time chart a display component 523 that displays the air consumption flow rate or the amount of air consumed when the air cylinder operates. The air consumption flow rate and the amount of air consumed are calculated from the simulation data 1131 and the equipment library 111. Conventionally, the air consumption flow rate was often over-designed. A shortage of air caused variations in the operation time of the equipment, leading to an extension of the start-up period and operational problems. In contrast, if the air consumption flow rate is predicted and displayed along the time axis as in FIG. 15, the amount of air consumed at peak times can be understood, and the design of stable equipment can be supported.

[0060] Also, as shown in FIG. 15, the generating unit 140 may include a display component 524 in the time chart, which indicates that the peak value in the cycle time of the acceleration / deceleration of the servo motor exceeds a predetermined threshold and is excessive. The peak value of the acceleration / deceleration is calculated from the simulation data 1131 and the equipment library 111. Conventionally, since there is no such display, an operator often presses an emergency stop button when the servo motor is suddenly accelerated or decelerated, and the servo motor may not be able to stop even if the button is pressed, and the mechanical position of the servo motor may reach outside the normal range. That is, the servo motor may have to be stopped by a mechanical stopper instead of a limit switch. In contrast, if the display is as shown in FIG. 15, the user 40 can determine in advance that the servo motor may not be able to stop. This can prevent equipment failure. The user 40 may be notified that the servo motor is suddenly accelerated or decelerated by an alarm when compiling the control program 12, instead of or together with the display on the time chart.

[0061] 15, the generation unit 140 may include a display component 525 indicating the torque value of the servo motor in the time chart. The torque value is calculated from the simulation data 1131 and the equipment library 111. Conventionally, a designer would select a servo motor by separately calculating the acceleration / deceleration value for the timing when it is predicted in advance that the acceleration / deceleration of the servo motor will be the most intense. In contrast, if the torque value is displayed as in FIG. 15, it is expected that it will be easier to design a servo motor so that the acceleration / deceleration of the servo motor is leveled out over the entire cycle time.

[0062] Instead of the torque value, the generating unit 140 may include a display component showing the average load or operating load of the servo motor in the time chart, similar to the display component 525 in FIG. 15. The average load is calculated from the simulation data 1131 including information about the workpiece and the equipment library 111. In the past, when selecting a bearing or ball screw, the average load was often overestimated without accurate calculation because the calculation of the average load in a complex operation is complicated. For this reason, a large-sized part was selected, and an even larger motor was required, which resulted in a tendency for the equipment to become larger overall. In contrast, if the average load is displayed on the time chart, appropriate parts can be selected, and the equipment can be expected to become smaller.

[0063] Furthermore, the support device 10 may derive and propose control contents that achieve a target value of the cycle time while leveling out the acceleration and deceleration of the servo motor. For example, in the operation according to the time chart in the upper part of FIG. 16, as shown in the middle part of FIG. 16, the torque value of the servo motor has a margin up to the allowable value in section 541, and the torque value exceeds the allowable value in section 542. In this case, it is proposed that the length of section 541 is shortened by increasing the torque value to the vicinity of the allowable value, and that the torque value of section 542 is kept within the allowable range. The allowable range of the torque may be provided as the equipment library 111 or the simulation data 1131, or may be input by the user 40 as the rated torque and allowable torque of the servo motor. According to such a proposal, the selection criteria for the servo motor are relaxed, and a further shortening of the cycle time can be expected.

[0064] Furthermore, the generating unit 140 may generate time charts at multiple stages before the start-up of the facility and store them in the storage unit 110, or may generate time charts at multiple stages after the start-up or periodically and store them in the storage unit 110. That is, the storage unit 110 may store a log of the time chart as the time chart data 112. For example, if the time chart at the time of the start-up of the facility is used as a reference, it is possible to observe the changes over time and predict the lifespan of actuators including servo motors and air cylinders, which contributes to predictive maintenance.

[0065] Furthermore, the support device 10 may display both a normal time chart and a time chart when an abnormality occurs, and the user 40 may compare these time charts. Conventionally, the user 40 has acquired a log of the operation of the equipment 30 and created a time chart himself, which is used to investigate the cause of a malfunction and shorten the takt time. In contrast, if it becomes possible to compare time charts created by the support device 10, for example, by comparing a time chart created at the design stage with a time chart created from the log, it becomes possible to identify bugs at an early stage, which can contribute to shortening the takt time. Similarly, by comparing a time chart created by a mechanical engineer with a time chart generated by the generation unit 140, it is possible to contribute to early start-up of the facility and shortening the takt time.

[0066] FIG. 17 shows another example of equipment arranged in a facility. In the example of FIG. 17, the order of operation of the equipment 30 is shown by the numbers in parentheses attached to the dashed arrow indicating the direction of operation. First, the first operation is an operation in which the equipment 321, which is a servo motor, rotates a ball screw to move a support table on which the workpiece 42 is placed from point D to point A via points C and B in this order, thereby transporting the workpiece 42 to directly below the equipments 322 and 323. The second operation is an operation in which the equipment 322, which is an air cylinder, pushes out a piston rod, and the third operation is an operation in which the equipment 323, which is an air chuck attached to the tip of the piston rod, grips the workpiece 42. The fourth operation is an operation in which the equipment 322 returns the piston rod, thereby raising the air chuck gripping the workpiece. The fifth operation is an operation in which the equipment 324, which is a servo motor, moves the support table to which the equipment 322 is attached, thereby transporting the workpiece 42 beyond the wall 332 to directly above the pallet 333.

[0067] Fig. 18 shows a time chart corresponding to the operation of Fig. 17. The numbers along the vertical axis in Fig. 18 correspond to the reference numerals of the equipment 321 to 324 shown in Fig. 17. The numbers in parentheses along the horizontal axis in Fig. 18 correspond to the numbers attached to the dashed arrows shown in Fig. 17.

[0068] 18, it is determined from a simulation by the 3D simulator 13 that the equipment 323, which is an air cylinder, approaches the wall member in period (5). In this manner, the generating unit 140 may indicate, on a time chart, the timing at which the equipment 30 approaches the other equipment based on the simulation. Here, the approach between the equipment 30 and the other equipment means that the distance between the equipment 30 and the other equipment becomes shorter than a predetermined threshold value.

[0069] Conventionally, when making adjustments in the start-up stage of a facility, two or more operations are overlapped while the equipment 30 is actually operated to make the cycle time fall within a target value. Here, overlap means that at least a part of two or more operations are simultaneously performed, and all of these two or more operations are completed sooner than in the case of sequential execution. However, there are many cases where overlapping of operations is difficult due to interference at unexpected places. In contrast, if the timing at which the equipment 30 approaches other devices is displayed as shown in FIG. 18, it is possible to easily create a control program 12 that overlaps operations in a desk-top adjustment work without actually preparing the equipment 30. This makes it possible to shorten the adjustment period in the start-up stage on site. Also, if it is known which parts interfere during operation, the shape of the parts can be reconsidered and made into a shape that avoids interference, thereby further shortening the cycle time.

[0070] FIG. 18 also shows that when the device value Y10 is ON, the equipment 322 starts the operation of pushing out the piston rod, and when the device value Y20 is ON, the equipment 324 starts the operation of returning the support base. When these operations are performed simultaneously, as can be seen from FIG. 17, the piston rod of the equipment 322 comes into contact with the wall member and interferes with it. In order to avoid such interference, the control program 12 usually includes an interlock description as shown in FIG. 19. Specifically, a b-contact of the device value Y20 is inserted as a condition for the device value Y10 to be ON, and a b-contact of the device value Y10 is inserted as a condition for the device value Y20 to be ON. This prevents both the device values ​​Y10 and Y20 from being ON at the same time. When the control program 12 includes such an interlock description, the generating unit 140 may include a block 531 indicating an interlock in a portion where the operation is restricted by the interlock, as shown in FIG. 18. In addition, the generating unit 140 may color a portion corresponding to the block 531 instead of the block 531. This allows the user 40 to easily determine from the time chart the state in which the operation is restricted by the interlock. The generating unit 140 corresponds to an example of a generating means for generating a time chart that highlights the period in which the operation of the controlled device is restricted by the interlock in the control program.

[0071] In addition, when the acquiring unit 120 acquires the control program 12 by accepting an editing operation by the user 40, the acquiring unit 120 may provide, as a UI, a function for setting a block from input to completion of the operation of one actuator. FIG. 20 shows an example of setting such a block. Specifically, a description over multiple lines with the name "air chuck: work grip" is set as one block. The set block may be reused like a so-called routine or function without being separated. Conventionally, the configuration of a control program was dependent on the creator of the program, and there were many cases where the control program was not configured as a block from input to completion of the operation for each actuator. In that case, even if the operation was within the same actuator, the description of the actuator appeared at a distant position in the control program, resulting in very low readability. In addition, when a time chart is generated based on a control program with such a configuration, it is presumed that the control program itself is difficult to handle, and the time chart is not utilized, making it difficult to improve productivity. On the other hand, if it becomes easy for a third party to compile a description of the operation of the actuators inside the control program 12, as shown in FIG. 20, it is believed that the operability of the control program 12 as an input terminal can be improved, and the operation rate of the time chart and the penetration rate within an organization can be improved.

[0072] In addition, in FIG. 20, an example in which the operation of one facility 30 is treated as a block has been described, but a UI for setting sequential operations by multiple facilities 30 as a block may be provided. Then, the generating unit 140 may generate a time chart showing the operation of a facility unit that combines multiple facilities 30 whose operations are set as a block. FIG. 21 shows an example of a time chart showing the operation of a chuck unit composed of the facilities 322 and 323 from gripping to releasing a workpiece by these facilities 322 and 323. Conventionally, even for actuator units composed of multiple actuators, descriptions were often scattered within a control program, and especially when the number of motion axes to be handled increased, the readability of the control program and the readability of the time chart derived from the control program were low. In contrast, if the operations of the actuator units can be combined as shown in FIG. 21, the time chart can be hierarchically organized to improve readability, and an appealing effect of improving the maintainability of the control program 12 is expected.

[0073] In addition, in the examples shown in Figures 20 and 21, the user 40 manually set the chunks, but the generation unit 140 may also use a pattern recognition technique to extract descriptions of sequential processes that appear repeatedly in the control program 12 as chunks.

[0074] Furthermore, the generating unit 140 may add comments added by the user 40 to the control program 12 as shown in FIG. 20 to a time chart as shown in FIG.

[0075] Also, an example has been described in which the generating unit 140 generates a time chart based on the control program 12, the equipment data 113, and the time length information 114, but the user 40 may directly input missing information as appropriate, or the time chart may be generated using additional information provided by the user 40. For example, the relationship between events and the relationship between events and triggers that do not appear in the control program 12 and the auxiliary program 1132 may be specified by the user 40.

[0076] Also, a description has been given of generating a time chart based on the simulation data 1131 for executing a simulation by the 3D simulator 13. Here, the time chart may be generated based on a constraint condition of the 3D model indicated by the simulation data 1131. For example, in a case where two parts connected by a hinge operate in a correlated manner, the correlation between the operations may be detected by the 3D simulator 13, and the operations of these parts may be accurately synchronized on the time chart.

[0077] Embodiment 2 Next, the second embodiment will be described, focusing on the differences from the first embodiment. Note that the same or equivalent configurations as those in the first embodiment will be denoted by the same reference numerals. In this embodiment, the functions of the support device 10 after the time chart is provided by the user 40 or generated by the support device 10 will be described.

[0078] The storage unit 110 according to the present embodiment stores, in association with each other, a time chart indicated by the time chart data 112 and the control program 12. In detail, the storage unit 110 stores, in association with each other, lines indicated by arrows 501 to 504 in the time chart of Fig. 4 and descriptions indicating causal relationships appearing in the control program 12.

[0079] 22 shows an example in which the control program 12 stored in the storage unit 110 is changed by an operation of the user 40. For example, the device value Y0 included in the control program 12 is changed to the device value Y2, the device value X0 is changed to the device value X2, the device value Y2 is changed to the device value Y0, and the device value X2 is changed to the device value X0.

[0080] The correction unit 150 of the support device 10 corrects the time chart indicated by the time chart data 112 stored in the storage unit 110 in accordance with the change in the control program 12, as shown in Fig. 23. The correction of the time chart by the correction unit 150 is executed by generating chart components of the time chart for the change in the control program 12 by the same method as that of the generation unit 140 according to the first embodiment.

[0081] Furthermore, when the time chart shown in FIG. 4 is changed by the user 40 as shown in FIG. 23, the correction unit 150 corrects the control program 12 to indicate the causal relationship according to the changed time chart. For example, as shown by the arrow 601 in FIG. 23, it can be seen from the changed time chart that the device value Y2 changes according to the device value M0. Therefore, the correction unit 150 corrects the device value that changes according to the device value M0 from Y0 to Y2 as shown in FIG. 22. Similarly, the correction unit 150 corrects the rows 612, 613, and 614 in FIG. 22 according to the causal relationships shown by the arrows 602, 603, and 604 in FIG. 23. The correction unit 150 corresponds to an example of a correction means.

[0082] As described above, when one of the control program and the time chart is changed, the correction unit 150 corrects the part of the other corresponding to the change. This eliminates the need for the user 40 to correct the other when one of the time chart and the control program is changed, thereby reducing the burden on the user.

[0083] Further, the analysis unit 160 according to the present embodiment analyzes parameters to be set in the equipment 30 in order to realize the operation shown by the time chart. For example, the acquisition unit 120 acquires data indicating the model number, stroke, payload, load rate, and shape of the cam curve of the motor as detailed information indicating the details of the operation shown by the time chart via an input screen exemplified in FIG. 24. Then, the analysis unit 160 derives parameters to be set in the equipment 30 by a predetermined calculation for the operation shown by the time chart and the detailed information, or by referring to data stored in a storage device in association with the operation shown by the time chart and the detailed information. The interface unit 170 outputs the derived parameters to the display unit 180, and the display unit 180 displays an output screen as shown in FIG. 24. In this output screen, PG1 representing a model control gain for adjusting the gain of the motor and PG2 representing a position control gain are shown as parameters. Note that the parameters are not limited to these, and other parameters may be displayed.

[0084] Fig. 25 shows a second example of parameters derived by the analysis unit 160. In the example of Fig. 25, a pipe diameter is derived as a parameter from a time chart showing the operation of an air cylinder and the cylinder model number, stroke, work weight, throttle opening rate, and air pressure specified by the user 40. Fig. 26 shows another example of analysis by the analysis unit 160. In the example of Fig. 26, a recommended combination of motors is shown from a time chart showing the operation of two servo motors and information specified by the user 40 on the input screen.

[0085] As described above, the analysis unit 160 analyzes the parameters to be set in the equipment 30. Conventionally, when there are many parameters and an error occurs, it is difficult to determine whether the cause of the error is in the control program 12 itself or in the parameters, and debugging time tends to be long. In contrast, if the analysis unit 160 analyzes the parameters to be set in the equipment 30, the debugging time can be shortened. The analysis unit 160 corresponds to an example of an analysis means.

[0086] Furthermore, the analysis unit 160 may analyze a load such as an average load as shown in FIG. 15 and an operating load or a rated load based on the operation shown by the time chart and a simulation by the 3D simulator 13.

[0087] Furthermore, when an error occurs during execution of the control program 12, the interface unit 170 outputs display data that highlights the element in the time chart that corresponds to the error to the display unit 180. For example, as shown in Fig. 27, when an error occurs in timer T3 that counts time according to device values ​​Y2 and X2, the line connecting device values ​​Y2 and X2 is highlighted in the time chart.

[0088] A timer like that shown in FIG. 27 is introduced for the purpose of allowing a SW person to output an error if device value X2 does not turn ON within a specific length of time because equipment 30 does not hold movement information for a certain axis (device value X2 turns ON after a specific length of time has elapsed since device value Y2 turned ON). The length of time for the movement information is calculated from the load and axis output specifications, just as when designing a time chart, and an allowable level of error is set for that length of time. If equipment 30 holds axis movement information, it is also possible to set it all at once to output an error when the equipment behaves differently from expected, and it is also possible to exclude program parts that cause unnecessary errors from being subject to error output.

[0089] Although a silent stop does not usually occur with a timer such as that shown in Fig. 27, an error highlighted as shown in Fig. 27 may be a silent stop. For example, even if there is no particular error output, when the equipment 30 stops unexpectedly, an unreacted sensor output value or device value may be displayed and a notification of the possibility of a silent stop may be issued. Then, when the user presses a button on the notification screen, the support device 10 may add error processing for the silent stop.

[0090] Moreover, the generating unit 140 according to this embodiment generates a return-to-origin procedure for the multiple pieces of equipment 30. This procedure is generated, for example, by a brute force simulation or by a genetic algorithm. Then, the correcting unit 150 adds to the control program 12 a program part that causes the multiple pieces of equipment 30 to execute the generated return-to-origin procedure. Furthermore, when a simulation using the simulation data 1131 indicates that interference occurs when the multiple pieces of equipment 30 operate simultaneously, the correcting unit 150 adds an interlock description to the program part as exemplified in FIG. 28, thereby realizing a return-to-origin that does not cause interference between the pieces of equipment 30.

[0091] Conventionally, when a return to origin is performed, the state of the equipment is often in a state that does not occur at any time in the automatic operation mode. Therefore, there is a risk of interference during debugging and damage to the equipment, and it is necessary for the user 40 to set multiple interlocks. However, in equipment with a large number of axes and in a positional relationship where they may interfere with each other, countless interlock conditions are required, and the settings by the user 40 are often insufficient. For this reason, in order to avoid damage to the equipment, it was necessary to carefully consider a procedure that would reliably prevent interference. In contrast, if the return to origin procedure is generated by the generation unit 140 as described above and the description of the interlock is added by the correction unit 150, it can contribute to shortening the software production period, shortening the debugging time, and suppressing equipment interference troubles due to insufficient interlocks.

[0092] In addition, since the number of interlock conditions increases exponentially as the number of axes increases, machine learning may be used to compress the dimensions, and appropriate interlock conditions may be set by the user 40 inputting minimal parameters.

[0093] The acquisition unit 120 according to the present embodiment acquires detection results from sensors that detect the position of the motion axis when the equipment 30 is manually operated and the timing at which the motion axis moves. For example, a test run may be performed by manually performing a series of operations on the equipment group using JOG operation and single cylinder action. The support device 10 records point information and interlock information while an operator manually operates the equipment using a servo motor. The correction unit 150 then creates a program part that operates the equipment 30 in the same manner as the sensor detection result and adds it to the control program 12, or creates a chart part when the equipment 30 operates in the same manner as the sensor detection result and adds it to the time chart. In this case, the equipment 311 to 313, which are sensors, correspond to an example of a detection means.

[0094] In the design stage of the facility, there are cases where a time chart is not created, but rather the automatic operation control program 12 is created after appropriate operations are considered while operating the actual machine in jog operation and biliary operation. In contrast, if the correction unit 150 creates program parts or chart parts corresponding to manual operations as described above, the number of steps can be reduced.

[0095] Furthermore, the interface unit 170 according to this embodiment accepts intuitive operations by the user to modify the time chart. For example, the thick solid line 621 in FIG. 29 may be drawn by tracing with a finger. Furthermore, a dashed line 624 connecting points 622 and 623 may be drawn by tapping these points 622 and 623. Furthermore, an operation may be performed to select any one of the sensors from a list of sensors and associate the point on the time chart with the device value. Furthermore, an operation to rearrange the axes aligned along the vertical axis of the time chart may be accepted.

[0096] Conventionally, spreadsheet software or CAD (Computer Aided Design) software has been used to create time charts, but creating a time chart is a complicated task and requires a large workload. On the other hand, if the operation shown in Figure 29 is possible, the work time and man-hours can be reduced.

[0097] Embodiment 3 Next, the third embodiment will be described, focusing on the differences from the first embodiment. Note that the same or equivalent components as those in the first embodiment will be denoted by the same reference numerals. In this embodiment, the functions of the support device 10 that utilizes the 3D simulator 13 will be described.

[0098] The generation unit 140 in this embodiment generates and outputs display data for displaying an image including a first image showing the operation history of the equipment 30 from an operation log when the equipment 30 was actually controlled, and a second image showing a simulated operation history of the equipment 30 when the control over the equipment 30 was simulated by the 3D simulator 13.

[0099] For example, the generating unit 140 generates a first image showing a time chart of a planning stage based on a simulation and a second image showing a time chart as a result based on an operation log, as shown in Fig. 30. Different parts of these time charts are highlighted as shown by a line 701.

[0100] Moreover, the generating unit 140 generates a first image showing a transition of the device value in the planning stage based on the simulation, and a second image showing a time chart as the result based on the operation log, as shown in Fig. 31. Furthermore, the generating unit 140 generates a first image showing the operation of the 3D model in the planning stage based on the simulation, and a second image showing the 3D model as the result based on the operation log, as shown in Fig. 32.

[0101] The display of the time charts, transition of device values, and 3D model shown in Figures 30 to 32 may be switched by a specification from user 40. In addition, by pressing button 702 in Figure 30, pointer 704 indicating the current position on seek bar 703 may move, and the first image and second image may change along with time. In other words, a moving image may be played.

[0102] 30 is divided into sections corresponding to a plurality of control sections. In detail, the control of the equipment 30 is realized by sequentially executing section controls in a plurality of control sections. In addition, when the time length required for one section control of the plan and the actual results is different from the time length required for the other section control, the control section may be highlighted as shown by a hollow line 705.

[0103] 32, the machine position of the equipment having a piston rod that moves up and down is different, and the operation that caused this difference is displayed by message 706. In this way, when the operation of the equipment 30 indicated by the operation log differs from the operation in the simulation of the equipment 30, the generating unit 140 may generate an image indicating that the events corresponding to the triggers are different when the events corresponding to the triggers of each operation are different.

[0104] Furthermore, the generating unit 140 may generate a time chart of the planning stage and a time chart of the actual results in a manner that they are superimposed on each other as shown in FIG.

[0105] Moreover, the storage unit 110 according to the present embodiment corresponds to an example of a storage means that stores measures for reducing an error between the time required for an actual operation of the equipment 30 and the time required for a simulated operation in association with the equipment 30. The generation unit 140 then reads out measures for reducing an error occurring in each of the multiple equipment 30 from the storage unit 110, and generates an image that displays a list of the measures in descending order of the error, as shown in the upper part of Fig. 34. In detail, the storage unit 110 stores the equipment that is the error factor, the factor, the degree of difficulty of the measure for reducing the error, the effect of reducing the error when the measure is implemented, and the measure in association with each other.

[0106] When the user 40 selects the rank "3" in the image at the top of Fig. 34, the generation unit 140 generates the image shown at the bottom of Fig. 34. This image displays the check results of the measures and problems corresponding to the selected rank. Then, when the prototype action button 707 is pressed, the display unit 180 displays the simulation results of the operation when the measure is implemented. In detail, the display unit 180 displays the time charts before and after the implementation of the measure in a format that allows comparison.

[0107] As described above, an image including a first image showing the operation history of the equipment and a second image showing the operation in a simulation is displayed. This makes it possible to easily verify the difference between the simulation and the actual operation.

[0108] Embodiment 4 Next, the fourth embodiment will be described, focusing on the differences from the first embodiment. Note that the same or equivalent components as those in the first embodiment will be denoted by the same reference numerals. In this embodiment, the description will be focused on the function of the support device 10 that outputs support information for improving the production index of the line based on a simulation.

[0109] FIG. 35 shows an example in which the analysis unit 160 proposes an improvement point of the control program 12 from a time chart obtained by simulation. In detail, when the order of the operations of the equipment 30 defined in the control program 12 is changed and the control of the equipment 30 is simulated by the 3D simulator 13, if the cycle time is shortened while avoiding interference caused by the equipment 30 contacting other devices, the analysis unit 160 outputs support information indicating the change in the order as an improvement measure. The change in the order of the operations may be selected randomly or may be performed according to a predefined algorithm. In addition, when the adoption of the improvement measure is decided by the user, the correction unit 150 changes the control program 12 to realize the improvement measure. FIG. 35 shows that a button for deciding to change the order of the operations is pressed by the cursor.

[0110] Furthermore, when components of the equipment 30 interfere with each other in the simulation, the analysis unit 160 may output, as support information, a time chart showing avoidance operations for preventing the components from interfering with each other, as shown in Fig. 36. Such a time chart showing an improvement measure is found, for example, by searching for changes in operations in a brute-force manner.

[0111] The improvement measures are not limited to changes in the operation, and may be changes in the weight or material of the equipment 30 or the workpiece. The constraint conditions for searching for these improvement measures are set by the user. The constraint conditions are, for example, fixing the type of the current drive source to a servo motor or air cylinder, upper and lower stroke limits, and conditions for interference between motion axes.

[0112] 37 shows an example in which the analysis unit 160 presents possible overlapping portions of events defined in the control program 12. In detail, when the analysis unit 160 causes the 3D simulator 13 to simulate simultaneous execution of operations that are to be executed sequentially by the multiple pieces of equipment 30 defined in the control program 12, the analysis unit 160 outputs support information indicating, as an improvement measure, that the operations that are to be executed sequentially are to be executed simultaneously when the cycle time can be shortened while avoiding interference caused by the multiple pieces of equipment 30 coming into contact with each other.

[0113] There is a trade-off between avoiding interference as shown in Fig. 36 and shortening the cycle time by overlapping operations as shown in Fig. 37. Therefore, by using an index value indicating the likelihood of interference, a user 40 may select control content by operating a slider corresponding to the index value on a control content editing screen as shown in Fig. 38. The index value is, for example, a value corresponding to the closest distance between the pieces of equipment 30.

[0114] Furthermore, the analysis unit 160 may propose reducing the speed of the servo motor as an improvement measure. Specifically, the analysis unit 160 may detect a peak value of acceleration / deceleration of the servo motor in a simulation by a 3D simulator, and output support information indicating reducing the acceleration / deceleration of the servo motor at the timing when the peak value is detected as an improvement measure.

[0115] Furthermore, the analysis unit 160 may suggest excluding unused parts from among the program parts constituting the control program 12. For example, the analysis unit 160 may detect a program part that specifies manual operation of the equipment 30 from the control program 12, and output support information indicating, as an improvement measure, excluding the detected program part from the scanning target during automatic operation of the equipment 30. Specifically, as exemplified in Fig. 39, an MC (Master Control) may be inserted into the unused part during automatic operation to switch ON / OFF of execution.

[0116] The analysis unit 160 may also propose an improvement measure such as shifting the peak of power consumption and using regenerative power. Specifically, as shown in FIG. 40, the analysis unit 160 calculates the transition of power consumption based on the operation of the equipment 30 in the cycle time. Then, instead of using power at the peak time from the main power source, the analysis unit 160 may propose using regenerative power from the operation axis of other equipment at the same time, or discharging regenerative power generated and stored at another time at that time. This is expected to level out power consumption over the cycle time, and the rated power required for the main power source can be reduced.

[0117] Furthermore, the analysis unit 160 may calculate the maximum size that does not cause interference for a part specified by the user 40 using the cursor 708 as a change target from the time chart and the simulation result, and present the calculated size, as shown in Fig. 41. Conventionally, the actual operation had to be reproduced in the simulation space, and the designer had to visually check whether there was interference and correct it if there was interference, which took a lot of time. In contrast, if a display such as that shown in Fig. 41 is displayed, the work time can be shortened, interference can be efficiently avoided, and the size of the part can be easily optimized.

[0118] Also, the analysis unit 160 may calculate the load factor of the servo motor and the servo amplifier from the data in the storage unit 110 including the time chart, as shown in FIG. 42, and predict the temperature rise. Then, when the temperature rise exceeds a threshold and is excessive, the analysis unit 160 may propose an operation pattern that keeps the temperature rise within a predetermined allowable range as an improvement measure. Conventionally, the load factor was often calculated from the operation time within one cycle time, but the user had to separately calculate the heat balance that takes into account the temperature rise, that is, the integral value of the load factor and the balance of heat dissipation. In contrast, if an improvement measure such as that in FIG. 42 is proposed, the deterioration of the equipment 30 can be suppressed.

[0119] The analysis unit 160 may also propose parameters for the equipment 30 based on a target value designated as the operation time of the equipment 30. For example, as shown in FIG. 43, the analysis unit 160 may present recommended changes by a predetermined calculation or by referring to a database based on the operation selected by the user 40 and the designated target operation time. In detail, the analysis unit 160 predicts the machine position during operation of the equipment 30 and the vibration damping time after stopping from the physical model and the data stored in the storage unit 110, and proposes changes necessary to realize operation within the target time. The changes include, for example, a reduction in the weight of the equipment 30, a change in the motor output, and a change in the air pressure. The prediction may be made using a prediction model obtained by machine learning from data of existing equipment.

[0120] In the conventional design procedure, the mechanical design and cycle time estimation are performed in the following order: next, creation of a time chart, and creation of a control program. Since the mechanical structure is already determined at the time of creation of the time chart and the control program, the next opportunity to review or modify the mechanical structure is at the start of production or the next machine, which leads to an increase in the number of revisions of drawings and leads to structural differences between the first machine and the next machine and thereafter. In contrast, if a proposal such as that shown in Figure 43 is made, the points to be changed in the mechanical design after the time chart is created are presented, making it possible to modify the mechanical design before the start of production. This is expected to shorten the start-up period, reduce loss costs due to the purchase of unnecessary items, and eliminate machine differences between the first machine and the next machine and thereafter.

[0121] Furthermore, the analysis unit 160 may generate a control program according to the margin and risk level designated by the user, as shown in FIG. 44. In detail, the analysis unit 160 predicts the machine position during operation of the air cylinder and the vibration damping time after stopping from the data stored in the storage unit 110. This predicted value is calculated together with the prediction accuracy and the degree of accuracy. The prediction accuracy represents the range of temporal and spatial variations, and the degree of accuracy represents the qualitative level of the prediction accuracy. Then, the analysis unit 160 corrects and displays the prediction result according to the degree of accuracy required by the user 40. The prediction may be performed by an external application or a model obtained by machine learning from big data.

[0122] The user 40 specifies the margin, which is an index of the allowable range of deviation of the actual moving time and the elapsed position with respect to the predicted time of each part, and the risk, which indicates the degree of the impact of an accident that occurs when the machine position deviates significantly from the command value after the operation command is issued. When an operation axis with a high risk is a bottleneck in shortening the cycle time, the analysis unit 160 proposes overlapping the operation of this operation axis to shorten the cycle time. In addition, the analysis unit 160 may present a position where a sensor that detects the operation axis should be added at a certain time. For example, as shown in FIG. 45, in the operation of the simulated air cylinder, it is proposed to add a sensor that detects whether the piston rod is out of the range where it interferes with other axes. Here, the position where the sensor should be added corresponds to the vicinity of the boundary of the interference range.

[0123] Although the embodiments of the present disclosure have been described above, the present disclosure is not limited to the above-described embodiments. The above-described embodiments may be combined in any desired manner.

[0124] The functions of the support device 10 according to the above-described embodiment can be realized by dedicated hardware or by a general computer system.

[0125] For example, the program P1 can be stored and distributed on a computer-readable recording medium such as a flexible disk, a CD-ROM (Compact Disk Read-Only Memory), a DVD (Digital Versatile Disk), or an MO (Magneto-Optical disk), and the program P1 can be installed on a computer to configure an apparatus that executes the above-mentioned processing.

[0126] Also, the program P1 may be stored in a disk device of a server device on a communication network such as the Internet, and may be downloaded to a computer, for example, by being superimposed on a carrier wave.

[0127] The above-mentioned processing can also be achieved by starting and executing the program P1 while transferring it via a network such as the Internet.

[0128] Furthermore, the above-mentioned processing can also be achieved by executing all or part of the program P1 on a server device, and executing the program P1 while the computer transmits and receives information related to the processing via a communications network.

[0129] In addition, when the above-mentioned functions are shared and realized by the OS (Operating System) or by the OS working together with an application, only the parts other than the OS may be stored on a medium and distributed, or may be downloaded to a computer.

[0130] Furthermore, the means for realizing the functions of the support device 10 is not limited to software, and a part or the whole of the functions may be realized by dedicated hardware or circuits.

[0131] Various embodiments and modifications of the present disclosure are possible without departing from the broad spirit and scope of the present disclosure. The above-described embodiments are for explaining the present disclosure and do not limit the scope of the present disclosure. In other words, the scope of the present disclosure is indicated by the claims, not the embodiments. Various modifications made within the scope of the claims and within the scope of the disclosure equivalent thereto are considered to be within the scope of the present disclosure. [Industrial Applicability]

[0132] The present disclosure is suitable for designing a facility in which equipment is placed at a FA site. [Explanation of symbols]

[0133] 10 Support device, 11 Time chart, 12 Control program, 13 3D simulator, 20 PLC, 30~32, 301~303, 311~313, 321~324 Equipment, 31a, 32a Axis, 40 User, 41, 42 Work, 101 Processor, 102 Main memory, 103 Auxiliary memory, 104 Input, 105 Output, 106 Communication, 107 Internal bus, 110 Memory, 111 Equipment library, 112 Time chart data, 113 Equipment data, 114 Time length information, 120 Acquisition, 140 Generation, 150 Correction, 160 Analysis, 170 Interface, 180 Display, 332 Wall, 333 Palette, 511~515, 517 Row, 518~521 Area, 522-525 Display parts, 531 Block, 541,542 Section, 621 Solid line, 622,623 Point, 624 Dashed line, 701,705 Line, 702 Button, 703 Seek bar, 704 Pointer, 706 Message, 707 Prototype operation button, 708 Cursor, 1000 Support system, 1131 Simulation data, 1132 Auxiliary program, P1 program.

Claims

1. Computer, an acquisition means for acquiring a control program executed by a programmable controller to control a controlled device and time length information regarding a time length of an operation of the controlled device defined in the control program; a generating means for generating a time chart of the operation based on the control program and the time length information; an output means for outputting display data for displaying the generated time chart; Functioning as a the time chart includes a line having a slope corresponding to the time length; the control program indicates a causal relationship between a predetermined trigger and the operation that occurs in accordance with the trigger; the time chart includes a line representing the causal relationship; The acquiring means further acquires trigger information indicating the operation and another trigger generated by the operation in a format equivalent to that of the control program; the generating means generates the time chart based on the control program, the time length information, and the trigger information. Time chart generation program.

2. Computer, an acquisition means for acquiring a control program executed by a programmable controller to control a controlled device and time length information regarding a time length of an operation of the controlled device defined in the control program; a generating means for generating a time chart of the operation based on the control program and the time length information; an output means for outputting display data for displaying the generated time chart; Functioning as a the time chart includes a line having a slope corresponding to the time length; The acquisition means acquires a parameter for operating the controlled device as the time length information, the generating means obtains the time length corresponding to the parameter by performing a calculation using the parameter or by referring to a database that stores the parameter and the time length in association with each other, and generates the time chart. Time chart generation program.

3. the acquiring means acquires, as the time length information, log information when the control program is executed by the programmable controller or when execution of the control program by the programmable controller is simulated; the generating means obtains the time length from the log information and generates the time chart.

2. The time chart generating program according to claim 1.

4. The acquisition means acquires variation information indicating a variation in the time length, The generating means generates the time chart indicating the variation.

3. The time chart generating program according to claim 1.

5. the generating means generates the time chart emphasizing a period during which the operation of the controlled device is restricted by an interlock in the control program.

3. The time chart generating program according to claim 1.

6. The computer, a simulation means for simulating, in a three-dimensional virtual space, the operation of the controlled device controlled by the programmable controller that executes the control program; It also functions as the generating means generates the time chart indicating a timing at which the controlled device approaches another device in the simulation by the simulation means.

3. The time chart generating program according to claim 1.

7. The controlled device is a servo motor, The acquiring means further acquires device information related to the servo motor, the generating means generates the time chart indicating peaks in a cycle time of acceleration / deceleration of the servo motor operating according to the control program, based on the device information.

3. The time chart generating program according to claim 1.

8. The acquiring means further acquires device information related to the controlled device, the generating means generates the time chart indicating power consumption when the controlled device operates in accordance with the control program based on the device information.

3. The time chart generating program according to claim 1.

9. The controlled device is an air cylinder, The acquiring means further acquires equipment information related to the air cylinder, the generating means generates the time chart showing the amount of air consumed when the air cylinder operates according to the control program based on the device information.

3. The time chart generating program according to claim 1.

10. an acquisition means for acquiring a control program executed by a programmable controller to control a controlled device and time length information regarding a time length of an operation of the controlled device defined in the control program; a generating means for generating a time chart of the operation based on the control program and the time length information; an output means for outputting display data for displaying the generated time chart; Equipped with the time chart includes a line having a slope corresponding to the time length; the control program indicates a causal relationship between a predetermined trigger and the operation that occurs in accordance with the trigger; the time chart includes a line representing the causal relationship; The acquiring means further acquires trigger information indicating the operation and another trigger generated by the operation in a format equivalent to that of the control program; the generating means generates the time chart based on the control program, the time length information, and the trigger information. Time chart generator.

11. an acquisition means for acquiring a control program executed by a programmable controller to control a controlled device and time length information regarding a time length of an operation of the controlled device defined in the control program; a generating means for generating a time chart of the operation based on the control program and the time length information; an output means for outputting display data for displaying the generated time chart; Equipped with the time chart includes a line having a slope corresponding to the time length; The acquisition means acquires a parameter for operating the controlled device as the time length information, the generating means obtains the time length corresponding to the parameter by performing a calculation using the parameter or by referring to a database that stores the parameter and the time length in association with each other, and generates the time chart. Time chart generator.

12. A time chart generating device according to claim 10 or 11, The programmable controller; A support system comprising:

13. a generation means for generating a time chart of the operation based on a control program executed by a programmable controller to control the controlled device and time length information regarding a time length of the operation of the controlled device defined in the control program; an output means for outputting display data for displaying the generated time chart; Including, the time chart includes a line having a slope corresponding to the time length; the control program indicates a causal relationship between a predetermined trigger and the operation that occurs in accordance with the trigger; the time chart includes a line representing the causal relationship; the generating means generates the time chart based on trigger information, the trigger information being shown in a format equivalent to the control program, the control program, and the time length information, by associating the action with another trigger generated by the action; How to generate a time chart.

14. an acquiring means acquiring a control program executed by a programmable controller to control a controlled device and time length information regarding a time length of an operation of the controlled device defined in the control program; a generating means for generating a time chart of the operation based on the control program and the time length information; an output means for outputting display data for displaying the generated time chart; Including, The time chart includes a line having a slope corresponding to the time length. The acquisition means acquires a parameter for operating the controlled device as the time length information, the generating means obtains the time length corresponding to the parameter by performing a calculation using the parameter or by referring to a database that stores the parameter and the time length in association with each other, and generates the time chart. How to generate a time chart.

Citation Information

Patent Citations

  • Facility fault diagnostic method

    JP1993189026A

  • Device for verifying operation of sequence control program

    JP1996227301A

  • Simulation device and simulation method

    JP2007265238A

  • Sequence control system and sequencer device

    JP2008097282A

  • Time chart generation method, time chart generation program, and spreadsheet cell display method

    JP2010009485A