WO2023203604A1 - シミュレーション用プログラム、シミュレーション装置及び制御方法 - Google Patents

シミュレーション用プログラム、シミュレーション装置及び制御方法 Download PDF

Info

Publication number
WO2023203604A1
WO2023203604A1 PCT/JP2022/018042 JP2022018042W WO2023203604A1 WO 2023203604 A1 WO2023203604 A1 WO 2023203604A1 JP 2022018042 W JP2022018042 W JP 2022018042W WO 2023203604 A1 WO2023203604 A1 WO 2023203604A1
Authority
WO
WIPO (PCT)
Prior art keywords
mechanical device
simulation
controller
model
program
Prior art date
Application number
PCT/JP2022/018042
Other languages
English (en)
French (fr)
Inventor
真充 服部
敦生 葉石
亙 小坂
将哉 木村
恭介 浅木
Original Assignee
三菱電機株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 三菱電機株式会社 filed Critical 三菱電機株式会社
Priority to JP2022562824A priority Critical patent/JP7258246B1/ja
Priority to PCT/JP2022/018042 priority patent/WO2023203604A1/ja
Publication of WO2023203604A1 publication Critical patent/WO2023203604A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts

Definitions

  • the present disclosure relates to a simulation program, a simulation device, and a control method.
  • Verification of the operation of the user system which is an FA system to which multiple types of FA (Factory Automation) devices are connected, is performed by running a simulation of the operation of the FA devices via an engineering setting tool.
  • the engineering setting tool is a setting tool realized by executing software on a computer device such as a personal computer.
  • the engineering setting tool can support the creation of a user program by the user by providing a user interface to the user, and can also start a simulator that executes a simulation of the operation of the FA equipment described above.
  • the engineering setting tool can start a simulator that executes the user program of the controller. Therefore, the engineering setting tool can simulate the operation of the FA equipment while simulating the control of the controller. As a result, the engineering setting tool checks whether the controller correctly executes processes such as setting user program execution conditions, starting and stopping execution, data processing, and calculating movement positions of FA equipment axes. You can check it.
  • Patent Document 1 discloses a simulation performed by a cell controller of a sheet metal processing automation system.
  • the cell controller of Patent Document 1 is a computer device that is connected to a machine installed in a sheet metal processing line that manufactures sheet metal products and controls the sheet metal processing line.
  • a sheet metal processing line model created by a CAD/CAM system connected to the cell controller is installed in order to simulate the operation of the sheet metal processing line.
  • Patent Document 1 has a problem in that it must rely on a dedicated CAD/CAM system provided in the sheet metal processing automation system to simulate the operation of the sheet metal processing line.
  • the present disclosure has been made in view of the above circumstances, and aims to simulate the control of a controller and the operation of a mechanical device without relying on a device that generates a model of the mechanical device controlled by the controller. .
  • a simulation program includes a simulation device that simulates control of a mechanical device by a controller, a controller control simulation section that simulates control of a controller by executing a controller program, It functions as a mechanical device operation simulation unit that simulates the operation of a mechanical device using a mechanical device model that is a model of a mechanical device stored in a library file.
  • the mechanical device operation simulation unit simulates the operation of a mechanical device using a mechanical device model that is a model converted into a library file.
  • the simulation program according to the present disclosure can simulate the control of the controller and the operation of the mechanical device without depending on the device that generates the model of the mechanical device controlled by the controller.
  • FIG. 1 A diagram showing the functional configuration of the engineering setting tool according to Embodiment 1
  • Block diagram showing the hardware configuration of the engineering setting tool according to Embodiment 1 A diagram illustrating display example 1 of a mechanical device model allocation screen according to Embodiment 1 A diagram showing a second display example of the mechanical device model allocation screen according to the first embodiment
  • Explanatory diagram of simulation of operation of mechanical device according to Embodiment 1 Flowchart of simulation result output processing according to Embodiment 1
  • Flowchart of simulation processing according to Embodiment 1 Explanatory diagram of simulation of operation of mechanical device according to Embodiment 2
  • FIG. 3 A diagram showing a display example of a mechanical device model allocation screen according to Embodiment 3
  • the user system 1 according to Embodiment 1 of the present disclosure is, for example, an FA (Factory Automation) system constructed by a user.
  • the user system 1 includes a mechanical device 10 that performs an operation, and a controller 20 that is connected to the mechanical device 10 and controls the mechanical device 10.
  • the user system 1 also includes an engineering setting tool 100 as an example of a simulation device that is connected to the controller 20 and performs simulation of control of the mechanical device 10 by the controller 20.
  • the mechanical device 10 is, for example, FA equipment.
  • the mechanical device 10 includes a motor 11 provided on each axis of the mechanical device 10, and a motor driver 12 that drives the motor 11.
  • the controller 20 is, for example, a computer device such as a programmable logic controller (PLC), an industrial personal computer, or a servo system controller.
  • PLC programmable logic controller
  • the controller 20 controls the drive of the motor 11 by controlling the motor driver 12 .
  • the engineering setting tool 100 is a computer device in which an engineering setting tool program 110, which is a program for realizing the function of a setting tool used by a user who is an engineer, is installed.
  • the engineering setting tool 100 is, for example, a computer device in which the engineering setting tool program 110 is installed on a notebook-type personal computer or a tablet-type personal computer that the user can carry.
  • a simulation program 120 is also installed in the engineering setting tool 100 to realize a function as a simulator that simulates the control of the mechanical device 10 by the controller 20.
  • the engineering setting tool 100 generates the source code of a controller program, which is a program for the controller 20, based on input from the user, and also compiles the controller program into object code, which is data in a format executable by the controller 20. Convert.
  • the controller program is, for example, a program for controlling the controller 20 to perform calculations for positioning the mechanical device 10 and output position-related commands to the mechanical device 10.
  • the engineering setting tool 100 is connected to the controller 20 by, for example, a USB (Universal Serial Bus) standard cable. Therefore, the engineering setting tool 100 is capable of transmitting a controller program converted into an object code to the controller 20 and storing the controller program in a memory (not shown) included in the controller 20. As a result, the controller 20 can execute a controller program using the object code stored in the memory, for example, perform calculations for positioning the mechanical device 10, or It is possible to control the output of commands.
  • a USB Universal Serial Bus
  • the engineering setting tool 100 includes a controller program editing section 111 that edits a controller program, and a parameter setting section 112 that sets parameters used for simulation.
  • the engineering setting tool 100 also includes a mechanical device model acquisition unit 113 that acquires a mechanical device model 140 that is a model of the mechanical device 10, and a mechanical device model acquisition unit 113 that acquires a mechanical device model 140 that is a model of the mechanical device 10; It includes a device model allocation section 114.
  • the engineering setting tool 100 also includes a simulator communication interface 115 that exchanges information with a simulator based on the simulation program 120.
  • the engineering setting tool 100 also includes a simulation result output unit 116 that outputs simulation result information that is information indicating simulation results, and a controller program output unit 117 that outputs a controller program to the controller 20.
  • a controller program editing section 111 a parameter setting section 112
  • a mechanical device model acquisition section 113 a mechanical device model allocation section 114
  • a simulator communication interface 115 a simulation result output
  • the unit 116 and the controller program output unit 117 are functions that can be realized by, for example, installing the engineering setting tool program 110 in the engineering setting tool 100.
  • the engineering setting tool 100 also includes a controller control simulation section 121 that simulates control of the controller, and a mechanical device operation simulation section 122 that simulates the operation of the mechanical device 10.
  • the engineering setting tool 100 also includes an information management unit 123 that manages information regarding simulation.
  • the engineering setting tool 100 includes an information storage unit 130 that stores information.
  • the information storage unit 130 includes a controller program storage unit 131 that stores a controller program, a parameter storage unit 132 that stores parameters used for simulation, and a mechanical device model storage unit 133 that stores a mechanical device model 140.
  • the information storage unit 130 also includes a control-related information storage unit 134 that stores control-related information that is information related to control of the controller 20, and a simulation program storage unit 135 that stores the simulation program 120.
  • the engineering setting tool 100 includes a control unit 51 that executes processing according to a control program 59 such as a simulation program.
  • the control unit 51 includes a CPU (Central Processing Unit).
  • the control unit 51 includes a controller program editing unit 111, a parameter setting unit 112, a mechanical device model allocation unit 114, a simulator communication interface 115, a simulation result output unit 116, and a controller control simulation unit 121 shown in FIG. , functions as a mechanical device operation simulation section 122 and an information management section 123.
  • the engineering setting tool 100 includes a main storage section 52 that loads a control program 59 and is used as a work area for the control section 51.
  • the main storage unit 52 includes a RAM (Random Access Memory).
  • the engineering setting tool 100 includes an external storage section 53 that stores a control program 59 in advance.
  • the external storage section 53 supplies the data stored by this program to the control section 51 according to instructions from the control section 51, and stores the data supplied from the control section 51.
  • the external storage unit 53 includes volatile and nonvolatile semiconductor memories such as ROM (Read Only Memory), flash memory, EPROM (Erasable Programmable Read Only Memory), and EEPROM (Electrically Erasable Programmable Read-Only Memory), magnetic disks, and flexible disks. , optical discs, compact discs, mini discs, DVDs (Digital Versatile Discs), HDDs (Hard Disk Drives), SSDs (Solid State Drives), and other non-volatile recording media.
  • the external storage section 53 functions as the information storage section 130 shown in FIG.
  • the engineering setting tool 100 includes an operation section 54 operated by the user.
  • the input information is supplied to the control section 51 via the operation section 54 .
  • the operation unit 54 includes information input components such as a keyboard, a mouse, and a touch panel.
  • the engineering setting tool 100 also includes a display section 55 that displays information input via the operation section 54 and information output from the control section 51.
  • the display unit 55 includes a display device such as an LCD (Liquid Crystal Display) or an OLED (Organic Light Emitting Diode) display.
  • the engineering setting tool 100 includes a transmitting/receiving section 56 that transmits and receives information.
  • the transmitting/receiving unit 56 includes information communication components such as a communication network termination device and a wireless communication device connected to the network.
  • the transmitting/receiving section 56 functions as the mechanical device model acquisition section 113 and the controller program output section 117 shown in FIG.
  • the main storage section 52, external storage section 53, operation section 54, display section 55, and transmission/reception section 56 are all connected to the control section 51 via the internal bus 50.
  • the control section 51 uses the main storage section 52, the external storage section 53, the operation section 54, the display section 55, and the transmission/reception section 56 as resources, so that the above-mentioned sections 111 to 117, 121 shown in FIG. ⁇ Achieve functions of 123 and 130.
  • the engineering setting tool 100 executes a controller program editing step performed by the controller program editing section 111.
  • the engineering setting tool 100 executes a parameter setting step performed by the parameter setting section 112, a mechanical device model allocation step performed by the mechanical device model allocation section 114, and a simulator communication step performed by the simulator communication interface 115.
  • the engineering setting tool 100 executes a simulation result output step performed by the simulation result output unit 116 and a controller program output step performed by the controller program output unit 117. Further, for example, the engineering setting tool 100 executes a controller control simulation step performed by the controller control simulation section 121 and a mechanical device operation simulation step performed by the mechanical device operation simulation section 122. Further, for example, the engineering setting tool 100 executes an information management step performed by the information management unit 123 and an information storage step performed by the information storage unit 130.
  • the controller program editing section 111 displays on the display section 55 a program editing screen (not shown) that is a user interface for the user to create a controller program. Further, the controller program editing section 111 edits the source code of the controller program based on input by the user to the program editing screen using the operation section 54.
  • the parameter setting unit 112 sets, as a parameter, for example, a setting value of the control calculation processing cycle, which is the cycle of calculation processing for controlling the controller 20 in the simulation performed by the controller control simulation unit 121. Further, the parameter setting unit 112 sets, as a parameter, for example, a setting value of a motion calculation processing cycle, which is a cycle of calculation processing of the operation of the mechanical device 10 in the simulation performed by the mechanical device motion simulation unit 122.
  • the parameter setting section 112 displays a not-shown parameter setting screen, which is a user interface for setting these parameters, on the display section 55. Further, the parameter setting unit 112 sets these parameters based on input by the user to the parameter setting screen using the operation unit 54.
  • the parameter setting unit 112 when the parameter setting unit 112 sets the set value of the control calculation processing cycle, the parameter setting unit 112 automatically sets the set value of the operation calculation processing cycle to the same value as the set value of the control calculation processing cycle, for example, a value of 4 ms. do.
  • the mechanical device model acquisition unit 113 acquires the mechanical device model 140 by receiving the mechanical device model 140 generated by a device external to the user system 1 from the external device.
  • the external device that transmits the mechanical device model 140 generates the mechanical device model 140, but the device is not limited to this, and as long as the device is external to the user system 1, the mechanical device The device that generates the model 140 and the device that transmits the mechanical device model 140 may be different.
  • the mechanical device model acquisition unit 113 acquires the mechanical device model 140 from a device external to the user system 1, but is not limited to this. A mechanical device model 140 may be obtained.
  • the mechanical device model 140 is a mathematical and logical model of the dynamic system of the mechanical device 10, and specifically includes a definition of the model structure of the mechanical device 10 and a model structure of the mechanical device 10.
  • the software includes an implementation of a function representing the behavior of the model.
  • the definition of the model structure of the mechanical device 10 includes definitions of inputs, outputs, parameters, and other variables of the mechanical device 10.
  • the operation of the model of the mechanical device 10 can be expressed by an equation of motion, and it is possible to calculate how the state of the modeled dynamic system changes over time.
  • the definition of the model structure of the mechanical device 10 is described in an XML (Extensible Markup Language) file format, which is an example of a markup language that is a formal language for describing the meaning and structure of documents and data. has been done.
  • the functions representing the operations of the mechanical device 10 are implemented in the file format of a dynamic link library (DLL), such as a binary file such as a dll file in a Windows (registered trademark) OS (Operating System).
  • DLL dynamic link library
  • the mechanical device model 140 is a mathematical and logical model of the mechanical device 10 that has been converted into a general-purpose library file such as an XML file or a dll file.
  • the mechanical device model allocation unit 114 allocates the mechanical device model 140 to axis variables, which are state variables of the axes that operate the mechanical device 10, and axis group variables, which are state variables of groups of a plurality of mutually related axes.
  • the mechanical device model allocation unit 114 displays on the display unit 55 a mechanical device model allocation screen 200 shown in FIGS. 4 to 6, which is a user interface for allocating the mechanical device model 140 to these state variables. Further, the mechanical device model allocation unit 114 allocates the mechanical device model 140 to these state variables based on the user's input to the mechanical device model allocation screen 200 using the operation unit 54.
  • the mechanical device model allocation screen 200 includes a state variable setting screen 210 shown in FIG. 4 for setting state variables of the mechanical device 10.
  • the mechanical device model allocation screen 200 also includes a mechanical device model input/output setting screen 220 shown in FIG. 6 includes an input/output setting support screen 230 shown in FIG.
  • the mechanical device model allocation unit 114 displays the state variable setting screen 210 shown in FIG. 4 as the mechanical device model allocation screen 200.
  • the state variable setting screen 210 includes, in order from the top, an axis name display field 211 that displays the name of the axis or axis group, a configuration display field 212 that displays the configuration of the axis group, and a mechanical device model 140.
  • a file path setting field 214 for setting the file path of the mechanical device model 140
  • an input/output setting field 215 for setting the input/output of the mechanical device model 140.
  • the input/output setting field 215 is provided with a setting button 216 that can be pressed by the user.
  • axis name display field 211 for example, information such as "AxesGroup001", which is the name of the axis group, is displayed in correspondence with the item "Name”.
  • configuration display field 212 for example, information such as “Axis001”, which is the name of the first configuration axis of the axis group, is displayed in correspondence with the item “Configuration axis 1”.
  • valid/invalid setting column 213 for example, information “valid” is displayed, which is set by the user through input using the operation unit 54, corresponding to the item “mechanical device model valid/invalid”. . In this case, the user's input to the file path setting field 214 and the input/output setting field 215 using the operation unit 54 is enabled.
  • the file path setting field 214 for example, "C: ⁇ ... ⁇ Model001.xxx” set by the user using the operation unit 54 in response to the item "mechanical device model file path” is displayed. information is displayed.
  • the mechanical equipment model allocation unit 114 displays the mechanical equipment model input/output setting screen 220 shown in FIG. .
  • the mechanical device model input/output setting screen 220 includes an input support button 221 provided at the top that the user can press, and a table provided at the bottom for setting input/output details of the mechanical device model 140. It has an input/output setting field 222 for the format.
  • the input/output setting column 222 includes "Name” indicating the name of the input/output of the mechanical device model 140, "Type” indicating the type of input/output, and "Data” indicating the name of the axis variable or axis group variable corresponding to the input/output. Information corresponding to the item “name” and “data type” indicating the data type of the input/output is displayed for each input/output.
  • the input/output setting column 222 for example, for an input whose "name” is “Input1" in the mechanical device model 140 of "Model001", the "type” is “label” and the "data name” is "Axis0001.Md.SetPosition”.
  • the "data type” is "double precision floating point”.
  • the "type” is “label”
  • the "data name” is "Axis0001.Md.ActualPosition”
  • the "data type” is " "Double precision floating point”
  • the user can set information corresponding to these items in the input/output setting field 222 for each input/output of the mechanical device model 140 by inputting using the operation unit 54. Further, when the user presses the input support button 221 while selecting any input or output line in the input/output setting field 222 by input using the operation unit 54, the mechanical device model allocation unit 114 The input/output setting support screen 230 shown in FIG.
  • the input/output setting support screen 230 includes, in order from the top, an axis name selection field 231 for selecting the name of the axis or axis group, and a structure for selecting the type of structure of the axis variable or axis group variable. It has a body type selection field 232 and a data name selection field 233 for selecting the data name of an axis variable or axis group variable.
  • the axis name selection field 231 and the structure type selection field 232 are pull-down menu selection fields.
  • the name of the axis or axis group associated with the mechanical device model 140 by assignment specifically, "AxesGroup001" shown in FIG. 4, Either "Axis0001" or "Axis0002" can be selected. Therefore, in the axis name selection field 231, for example, information such as "Axis0001" selected in correspondence with the item "Axis name" is displayed.
  • the name selected in the axis name selection field 231 is an example of the data format of the axis variables of "Axis0001". It is possible to select one of the types of a certain structure, for example, “parameter data” and “monitor data.” Therefore, in the structure type selection field 232, for example, information about "monitor data” set corresponding to the item "structure type” is displayed.
  • the data name selection field 233 displays the axis variable or axis group variable narrowed down by the axis or axis group selected in the axis name selection field 231 and the structure type selected in the structure type selection field 232.
  • the data name is displayed.
  • "command current position” which indicates the explanation of the axis variable or axis group variable corresponds to the "name” item
  • axis variable or axis group corresponds to the "data name” item.
  • Information such as "*.Md.SetPosition" indicating the data name of the variable is displayed.
  • the mechanical device model allocation unit 114 selects the data name of the axis variable or axis group variable displayed in the data name selection field 233.
  • information corresponding to the items "Type”, “Data Name”, and “Data Type” is automatically added to the selected input or output line on the mechanical device model input/output setting screen 220 shown in FIG. Set the target.
  • the mechanical device model allocation unit 114 can allocate the mechanical device model 140 to an axis variable or an axis group variable.
  • the simulator communication interface 115 starts the simulator by starting the execution of the simulation program 120. Further, the simulator communication interface 115 transmits the controller program, information indicating parameters, the mechanical device model 140, and information regarding allocation to the simulator. Further, the simulator communication interface 115 acquires simulation result information from the simulator after the simulator performs the simulation.
  • the simulation result output unit 116 outputs simulation result information by displaying the simulation result information (not shown) received by the simulator communication interface 115 on the display unit 55.
  • the controller program output unit 117 outputs the controller program by transmitting the controller program whose source code has been edited and converted into object code to the controller 20 based on the simulation results.
  • the information management unit 123 receives the information transmitted from the simulator communication interface 115 and stores it in the information storage unit 130. Specifically, the information management unit 123 stores the acquired controller program in the controller program storage unit 131, stores information indicating the acquired parameters in the parameter storage unit 132, and stores the acquired mechanical device model 140 and the allocation. The information regarding this is stored in the mechanical device model storage unit 133. The information management unit 123 also acquires setting information, which will be described later, output by the controller control simulation unit 121 and stores it in the control-related information storage unit 134. Further, the information management unit 123 reads out the information stored in the information storage unit 130 in response to a request from the mechanical device operation simulation unit 122.
  • the controller control simulation unit 121 simulates the control of the controller 20 by executing a controller program. First, the controller control simulation unit 121 sends the controller program stored in the controller program storage unit 131 and the set value of the control calculation processing cycle stored in the parameter storage unit 132 via the information management unit 123, respectively. read out. Then, the controller control simulation unit 121 executes the controller program with the set value of the control calculation processing cycle being one cycle of the control calculation processing cycle. At this time, the controller control simulation unit 121 calculates setting values related to control of the controller 20 and outputs setting information that is information indicating the setting values to the information management unit 123. Note that the setting values related to the control of the controller 20 are, for example, a value indicating a positioning address used by the simulator, and a value indicating a positioning speed.
  • the mechanical device operation simulation unit 122 simulates the operation of the mechanical device 10 using the mechanical device model 140.
  • the mechanical device operation simulation section 122 sends, via the information management section 123, information regarding the mechanical device model 140 and the allocation stored in the mechanical device model storage section 133, and operation calculation processing stored in the parameter storage section 132.
  • the cycle setting value and the setting information stored in the control-related information storage unit 134 are read out.
  • the mechanical device operation simulation unit 122 simulates the operation of the mechanical device 10 using the mechanical device model 140, with the set value of the operation calculation processing cycle being one cycle of the calculation processing cycle.
  • the mechanical device model 140 is a model that outputs information indicating the state of the mechanical device 10 at the next time when the specified time has elapsed from the current time when a request is made to allow the specified time to elapse.
  • the mechanical device model 140 includes a numerical solver 141 that can solve a series of ordinary differential equations expressing the operation of the model of the mechanical device 10 by numerical calculation.
  • the numerical solver 141 is an arithmetic processing unit that inputs values indicating time and a continuous state into the mechanical device model 140 and obtains a differential value of the continuous state from the mechanical device model 140 as an output.
  • the mechanical device operation simulation unit 122 specifies the current time and the communication step size, which is the time interval from the current time, to the mechanical device model 140.
  • the communication step size is a set value of the operation calculation processing cycle.
  • the mechanical device operation simulation unit 122 inputs input values set based on information regarding allocation and setting information to the mechanical device model 140.
  • the input value includes, for example, the value indicated by the axis variable whose "data name" is "Axis0001.Md.SetPosition".
  • the numerical solver 141 inputs into the mechanical device model 140 a value indicating the continuous state of the mechanical device 10 based on the current time and the time based on the communication step size and the input value, and obtains the differential value of the continuous state as an output. . Then, the mechanical device model 140 outputs an output value based on the differential value of the continuous state to the mechanical device operation simulation unit 122.
  • the output value includes, for example, the value indicated by the axis variable whose "data name" is "Axis0001.Md.ActualPosition".
  • the mechanical device operation simulation unit 122 is able to simulate the operation of the mechanical device 10 using the mechanical device model 140 with the setting value of the operation calculation processing period set as one cycle of calculation processing period, that is, the communication step size. can.
  • the set value of the operation calculation processing cycle is the same value as the set value of the control calculation processing cycle. Therefore, the simulation of the operation of the mechanical device 10 performed by the mechanical device operation simulation section 122 can be synchronized with the simulation of the control of the controller 20 performed by the controller control simulation section 121.
  • the mechanical device operation simulation unit 122 causes the control-related information storage unit 134 to store simulation result information, which is information indicating an output value, via the information management unit 123.
  • the simulator communication interface 115 can acquire simulation result information by reading the simulation result information stored in the control-related information storage unit 134.
  • the controller program editing section 111 displays a program editing screen (not shown), and edits the source code of the controller program based on the user's input to the program editing screen using the operation section 54 (step S101).
  • the parameter setting unit 112 displays a parameter setting screen (not shown), and based on the user's input to the parameter setting screen using the operation unit 54, the set value of the control calculation processing cycle and the set value of the operation calculation processing cycle are set. The following parameters are set (step S102).
  • the mechanical device model allocation unit 114 displays the mechanical device model allocation screen 200 shown in FIGS. , the mechanical device model 140 is assigned to state variables such as axis group variables (step S103). For example, the mechanical device model allocation unit 114 may determine whether the mechanical device is Set the inputs and outputs of the model 140. Specifically, the mechanical device model allocation unit 114 sets the axis variable whose “data name” is “Axis0001.Md.SetPosition” as an input of the mechanical device model 140, and also sets the axis variable whose “data name” is “Axis0001.Md.SetPosition”. The axis variable “ActualPosition” is set as the output of the mechanical device model 140.
  • the simulator communication interface 115 starts the simulator by starting the execution of the simulation program 120 (step S104).
  • the simulator communication interface 115 transmits the controller program, information indicating parameters, the mechanical device model 140, and information regarding allocation to the simulator (step S105).
  • the simulator communication interface 115 obtains simulation result information from the simulator by obtaining the simulation result information stored in the information storage unit 130 (step 106).
  • the controller program output unit 117 displays simulation result information (not shown) (step S107), and ends the process.
  • the mechanical device model acquisition unit 113 simply receives the mechanical device model 140 generated by a device external to the user system 1 from the external device. Therefore, a detailed explanation using a flowchart will be omitted.
  • the controller control simulation unit 121 reads out the controller program and the set value of the control calculation processing cycle stored in the information storage unit 130 via the information management unit 123 (step S201). Next, the controller control simulation unit 121 starts executing the controller program with the set value of the control calculation processing cycle being one cycle of the control calculation processing cycle (step S202). Next, the controller control simulation unit 121 calculates setting values related to control of the controller 20, such as a value indicating a positioning address and a value indicating a positioning speed, and sends setting information indicating the setting values related to control via the information management unit 123. The information is stored in the information storage unit 134 (step S203).
  • the mechanical device operation simulation unit 122 reads information such as the mechanical device model 140, information regarding allocation, setting values of the operation calculation processing cycle, and setting information stored in the information storage unit 130 via the information management unit 123. (Step S204). Next, the mechanical device operation simulation unit 122 simulates the operation of the mechanical device 10 using the mechanical device model 140 using the set value of the operation calculation processing cycle as the communication step size, that is, the calculation processing cycle of one cycle (step S205 ). For example, the mechanical device operation simulation unit 122 specifies the current time and communication step size for the mechanical device model 140, and then specifies the axis of "Axis0001.Md.SetPosition" set based on the information regarding the allocation and the setting information.
  • the mechanical device operation simulation unit 122 obtains an output value including the value indicated by the axis variable of “Axis0001.Md.ActualPosition” based on the differential value of the continuous state output by the mechanical device model 140.
  • the mechanical device operation simulation unit 122 stores the simulation result information in the control-related information storage unit 134 via the information management unit 123 (step S206), and ends the process.
  • each information acquired by the information management unit 123 is stored in each of the storage units 131 to 133 of the information storage unit 130. It just makes it memorized. Therefore, a detailed explanation using a flowchart will be omitted regarding the above operations performed by the information management unit 123.
  • the simulation program 120 is installed in the engineering setting tool 100. Therefore, by executing the simulation program 120, the engineering setting tool 100 can realize the function of a simulation device that simulates the control of the mechanical device 10 by the controller 20, that is, a simulator.
  • the controller control simulation unit 121 simulates the control of the controller 20 by executing the controller program.
  • the mechanical device operation simulation unit 122 simulates the operation of the mechanical device 10 using the mechanical device model 140.
  • the mechanical device model 140 is a model obtained from an external device by the mechanical device model acquisition unit 113 and converted into a library file.
  • the simulation program 120 can combine the control of the controller 20 and the operation of the mechanical device 10 without depending on the device that generates the model of the mechanical device 10 controlled by the controller 20. Simulations can be performed.
  • the controller control simulation unit 121 executes a controller program to generate a value indicating a positioning address, a value indicating a positioning speed, etc. Calculate setting values for control. Further, the controller control simulation unit 121 causes the control-related information storage unit 134 to store setting information indicating the setting value calculated via the information management unit 123. Then, the mechanical device operation simulation section 122 reads out the setting information via the information management section 123.
  • the controller control simulation section 121 and the mechanical device operation simulation section 122 can transmit and receive information via the information management section 123. Therefore, in the engineering setting tool 100, the mechanical device operation simulation section 122 simulates the operation of the mechanical device 10 using the setting values related to the control of the controller 20 calculated by the controller control simulation section 121 executing the controller program. I can do it. As a result, the simulation program 120 according to the present embodiment can verify the entire user system 1 including the operation of the mechanical device 10 using the controller program actually executed by the controller 20 in the user system 1. can.
  • the mechanical device model 140 is configured such that when a request for elapse of a specified time is made, the mechanical device 10 at the next time when the specified time has elapsed from the current time.
  • This is a model that outputs information indicating the values of axis variables as output values.
  • the mechanical device operation simulation unit 122 specifies the current time and communication step size for the mechanical device model 140, and then inputs input values set based on information regarding allocation and setting information. input.
  • the mechanical device operation simulation unit 122 can obtain an output value based on the differential value of the continuous state output by the mechanical device model 140, and can simulate the operation of the mechanical device 10.
  • the communication step size specified by the mechanical device operation simulation unit 122 is the setting value of the operation calculation processing cycle set by the parameter setting unit 112. It is automatically set to the same value as the control calculation processing cycle setting value. Therefore, the communication step size specified by the mechanical device operation simulation section 122 is the same time as the control calculation processing cycle in which the controller control simulation section 121 executes the controller program.
  • the simulation program 120 can simulate the control of the controller 20 performed by the controller control simulation section 121 and the simulation of the operation of the mechanical device 10 performed by the mechanical device operation simulation section 122. Can be synchronized.
  • the mechanical device model 140 may be able to set an internal calculation cycle within the model that is different from the communication step size. In this case, in the simulation program 120 according to the present embodiment, when the communication step size is set to be an integral multiple of the internal calculation cycle of the mechanical device model 140, the mechanical device The accuracy of calculation of model 140 is improved.
  • the mechanical device model allocation unit 114 assigns state variables such as axis variables and axis group variables of the axes on which the mechanical device 10 operates. Assign model 140.
  • the engineering setting tool 100 according to the present embodiment can more easily associate state variables with the mechanical equipment model 140 than an engineering setting tool that does not include a mechanical equipment model allocation section. The workload of the user who verifies the user system 1 using the simulation program 120 can be reduced.
  • the mechanical device model allocation section 114 determines the state based on the user's input to the mechanical device model allocation screen 200 using the operation section 54. Assign the mechanical device model 140 to the variable. By doing so, the user can visually perform the above-described assignment work.
  • the engineering setting tool 100 according to the present embodiment can more easily associate state variables with the mechanical device model 140 than an engineering setting tool that does not perform allocation using the mechanical device model allocation screen.
  • the engineering setting tool 100 according to the present embodiment can reduce the workload of the operator who uses the simulation program 120 to verify the user system 1.
  • the mechanical device model 140 includes the numerical solver 141, but the mechanical device model 140 does not need to include the numerical solver 141.
  • the user system 1 according to the second embodiment will be described in detail with reference to FIG. 10. Note that in the second embodiment, configurations that are different from those in the first embodiment will be described, and descriptions of the same configurations as in the first embodiment will be omitted because they are redundant.
  • the mechanical device model 140 according to the second embodiment does not include the numerical solver 141, and the numerical solver 141 is included in the mechanical device operation simulation section 122.
  • the mechanical device model 140 according to the present embodiment is a model that can output information indicating the time differential value of the state variable of the mechanical device 10 at a specified time.
  • the mechanical device model 140 provides the numerical solver 141 with a function used to obtain an output value from an input value based on a value indicating a continuous state for a time specified by the mechanical device operation simulation unit 122.
  • This is a model that allows the numerical solver 141 to calculate an output value.
  • the output value is the time differential value of the state variable of the mechanical device 10 at a specified time.
  • the mechanical device operation simulation unit 122 first determines the time step in which the numerical solver 141 is used and the method for calculating the time differential value of the state variable in the next time step.
  • the mechanical device operation simulation unit 122 determines the time step based on the set value of the operation calculation processing cycle, and specifically, the integral step, which is the time step size between the preceding and following time steps, is the operation calculation. Determine the time step that becomes the set value of the processing cycle.
  • the numerical solver 141 acquires the above-mentioned function by specifying to the mechanical device model 140 a value indicating a continuous state based on the current time and the time step and the input value. Then, the numerical solver 141 uses the acquired function to calculate and output an output value from the input value.
  • the mechanical device operation simulation unit 122 can simulate the operation of the mechanical device 10 using the mechanical device model 140 by using the set value of the operation calculation processing cycle as one cycle of the calculation processing cycle, that is, as an integration step. .
  • the set value of the operation calculation processing cycle is the same value as the set value of the control calculation processing cycle. Therefore, the simulation of the operation of the mechanical device 10 performed by the mechanical device operation simulation section 122 can be synchronized with the simulation of the control of the controller 20 performed by the controller control simulation section 121.
  • the mechanical device operation simulation unit 122 includes the numerical solver 141, and the time step in which the numerical solver 141 is used, and the next Determine how to calculate the time derivative of the state variable at the time step.
  • the mechanical device model 140 is a model that outputs information indicating the time differential value of the state variable of the mechanical device 10 at a specified time, and when a value indicating time and continuous state is specified from the numerical solver 141, , provides the numerical solver 141 with a function used to obtain an output value from an input value.
  • the numerical solver 141 can calculate and output an output value from the input value using the acquired function
  • the mechanical device operation simulation unit 122 can simulate the operation of the mechanical device 10.
  • the integral step specified by the mechanical device operation simulation section 122 is the set value of the motion calculation processing cycle set by the parameter setting section 112, and the parameter setting section 112 controls the set value of the motion calculation processing cycle. It is automatically set to the same value as the calculation processing cycle setting. Therefore, the integral step set by the mechanical device operation simulation section 122 is the same time as the control calculation processing cycle in which the controller control simulation section 121 executes the controller program.
  • the simulation program 120 according to the present embodiment can simulate the control of the controller 20 performed by the controller control simulation section 121 and the simulation of the operation of the mechanical device 10 performed by the mechanical device operation simulation section 122. Can be synchronized.
  • the simulation program 120 according to the present embodiment has the same effects as the simulation program 120 according to the first embodiment.
  • the mechanical device model input/output setting screen 240 is provided with an input/output setting field 222 in a table format. is not limited to table format.
  • the user system 1 according to the third embodiment will be described in detail with reference to FIG. 11.
  • Embodiment 3 configurations that are different from Embodiment 1 will be described, and descriptions of the same configurations as Embodiment 1 will be omitted because they are redundant.
  • the mechanical device model allocation screen 200 according to the third embodiment includes a mechanical device model input/output setting screen 240 shown in FIG. 11 instead of the mechanical device model input/output setting screen 240 shown in FIG.
  • the mechanical device model allocation unit 114 A model input/output setting screen 240 is displayed.
  • the mechanical device model input/output setting screen 240 has an import button 241 provided at the top that can be pressed by the user, and an input/output setting section 242 in a block diagram format provided at the bottom.
  • the input/output setting section 242 includes a mechanical device model display section 243 that displays the mechanical device model 140 as a function.
  • the input/output setting section 242 also includes an input display section 244 that displays the set axis variable or axis group variable as an input of the mechanical device model 140, and an input display section 244 that displays the set axis variable or axis group variable as the output of the mechanical device model 140. It includes an output display section 245 for display.
  • the input display section 244 and the output display section 245 are displayed connected to the mechanical device model display section 243.
  • the input/output setting section 242 includes an input support button 221 similar to the first and second embodiments at the top.
  • the input/output setting section 242 displays that the input of "Input1" in the mechanical device model 140 of "Model001” is “Axis0001.Md.SetPosition”. Further, the input/output setting section 242 displays, for example, that the output of "Output1" in the mechanical device model 140 of "Model001” is "Axis0001.Md.ActualPosition”.
  • a mechanical device model selection screen (not shown) is displayed.
  • the mechanical device model allocation section 114 finishes displaying the mechanical device model selection screen and displays the selected mechanical device in the mechanical device model display section 243.
  • Model 140 is displayed.
  • the user can set the input and output of the mechanical device model 140 on the input display section 244 and the output display section 245 by inputting using the operation section 54.
  • the mechanical device model allocation unit 114 displays the input/output setting support screen 230.
  • the data name of the selected axis variable or axis group variable is automatically displayed in the input display section 244 or output display section 245 of the selected input or output on the mechanical device model input/output setting screen 240 shown in FIG. indicate.
  • the mechanical device model allocation unit 114 sets “Axis0001.Md.SetPosition” to the data name selection column 233 of the input “Input1” of the input/output setting unit 242 on the mechanical device model input/output setting screen 240 shown in FIG.
  • the axis variables and axis group variables are automatically set by automatically displaying this information.
  • the mechanical device model allocation unit 114 can allocate the mechanical device model 140 to an axis variable or an axis group variable.
  • the input/output setting section 242 in the block diagram format is provided on the mechanical device model input/output setting screen 240.
  • the engineering setting tool 100 according to the present embodiment can associate state variables with the mechanical device model 140 better than an engineering setting tool that does not perform allocation using an input/output setting section in a block diagram format. can be easily done.
  • the engineering setting tool 100 according to the present embodiment can reduce the workload of the operator who uses the simulation program 120 to verify the user system 1.
  • the simulation program 120 according to the present embodiment has the same effects as the simulation program 120 according to the first embodiment.
  • the engineering setting tool 100 is configured by installing the simulation program 120 on a computer device, but the present invention is not limited to this.
  • it may be configured in the form of a so-called web application.
  • the engineering setting tool 100 as a client may request a web server capable of realizing the functions of the simulation program 120 to perform processing as a simulator from a web browser, and the web server may perform the simulation.
  • the engineering configuration tool 100 stores and distributes each of the programs 110 and 120 to a readable recording medium, for example, a flash memory, and installs each of the programs 110 and 120 to perform the above processing.
  • the setting tool 100 may also be configured.
  • each program 110 and 120 is stored in a storage device of a server device on a communication network such as LAN and the Internet, and the engineering setting tool 100 configures the engineering setting tool 100 by downloading each program 110 and 120. You may.
  • the functions of the engineering setting tool 100 are realized by sharing the OS (Operating System) and application programs, or by cooperating with the OS and application programs, only the application program portion is stored in the recording medium or storage device. You can.
  • OS Operating System
  • the program may be posted on a bulletin board system (BBS) on a communication network and provided via the network. Then, the above process may be executed by starting the program and executing it under the control of the OS in the same way as other application programs.
  • BSS bulletin board system
  • Controller program storage section 132... Parameter storage section, 133... Machine device model storage section, 134... Control related information storage section, 135... Simulation program storage section, 140... Machine Equipment model, 141... Numerical solver, 200... Mechanical device model allocation screen, 210... State variable setting screen, 211... Axis name display field, 212... Configuration display field, 213... Valid/invalid setting field, 214... File path setting field, 215... Input/output setting field, 216... Setting button, 220, 240... Machine device model input/output setting screen, 221... Input support button, 222... Input/output setting field, 230... Input/output setting support screen, 231... Axis name selection Columns, 232... Structure type selection column, 233... Data name selection column, 241... Import button, 242... Input/output setting section, 243... Machine device model display section, 244... Input display section, 245... Output display section.

Landscapes

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

Abstract

エンジニアリング設定ツール(100)には、シミュレーション用プログラム(120)がインストールされている。コントローラ制御シミュレーション部(121)は、コントローラ用プログラムを実行することでコントローラ(20)の制御のシミュレーションを行う。機械装置動作シミュレーション部(122)は、機械装置のライブラリファイル化されたモデルである機械装置モデル(140)を用いて機械装置の動作のシミュレーションを行う。

Description

シミュレーション用プログラム、シミュレーション装置及び制御方法
 本開示は、シミュレーション用プログラム、シミュレーション装置及び制御方法に関する。
 複数種類のFA(Factory Automation)機器が接続されたFAシステムであるユーザシステムの動作の検証は、エンジニアリング設定ツールを介してFA機器の動作のシミュレーションを実行することによって行われる。ここで、エンジニアリング設定ツールとは、パーソナルコンピュータといったコンピュータ装置においてソフトウェアを実行することで実現する設定ツールである。エンジニアリング設定ツールは、ユーザに対してユーザインタフェースを提供することで当該ユーザによるユーザプログラムの作成を支援するとともに、上述したFA機器の動作のシミュレーションを実行するシミュレータを起動することができる。
 また、エンジニアリング設定ツールは、上述したユーザシステムがFA機器を制御するコントローラを備える場合、当該コントローラのユーザプログラムを実行するシミュレータを起動することができる。このため、エンジニアリング設定ツールは、コントローラの制御のシミュレーションを実行しつつFA機器の動作のシミュレーションを実行することができる。この結果、エンジニアリング設定ツールでは、例えば、ユーザプログラムの実行条件の設定、実行の開始及び停止の設定、データ処理、FA機器の軸の移動位置の計算といった処理をコントローラが正しく実行するか否かを確認できる。
 なお、エンジニアリング設定ツールのようなコントローラとは異なるコンピュータ装置がシミュレーションを行うものではないが、特許文献1には、板金加工自動化システムのセルコントローラが行うシミュレーションについて開示されている。特許文献1のセルコントローラは、板金製品を製作する板金加工ラインに備えられた機械と接続されて当該板金加工ラインを制御するコンピュータ装置である。特許文献1のセルコントローラは、板金加工ラインの動作のシミュレーションを行うために、当該セルコントローラと接続されたCAD/CAMシステムによって作成された板金加工ラインモデルがインストールされている。
特開2003-108212号公報
 特許文献1に記載されたセルコントローラは、板金加工自動化システムが備える専用のCAD/CAMシステムの装置に依存して板金加工ラインの動作のシミュレーションを行わなければならないという問題がある。
 本開示は、上記実情に鑑みてなされたものであり、コントローラが制御する機械装置のモデルを生成する装置に依存せずにコントローラの制御と機械装置の動作とのシミュレーションを行うことを目的とする。
 上記目的を達成するため、本開示に係るシミュレーション用プログラムは、コントローラによる機械装置の制御のシミュレーションを行うシミュレーション装置を、コントローラのプログラムを実行することでコントローラの制御のシミュレーションを行うコントローラ制御シミュレーション部、機械装置のライブラリファイル化されたモデルである機械装置モデルを用いて機械装置の動作のシミュレーションを行う機械装置動作シミュレーション部として機能させる。
 本開示によれば、機械装置動作シミュレーション部は、ライブラリファイル化されたモデルである機械装置モデルを用いて機械装置の動作のシミュレーションを行う。この結果、本開示に係るシミュレーション用プログラムは、コントローラが制御する機械装置のモデルを生成する装置に依存せずにコントローラの制御と機械装置の動作とのシミュレーションを行うことができる。
実施の形態1に係るユーザシステムの全体説明図 実施の形態1に係るエンジニアリング設定ツールの機能構成を示す図 実施の形態1に係るエンジニアリング設定ツールのハードウェア構成を示すブロック図 実施の形態1に係る機械装置モデル割付画面の表示例1を示す図 実施の形態1に係る機械装置モデル割付画面の表示例2を示す図 実施の形態1に係る機械装置モデル割付画面の表示例3を示す図 実施の形態1に係る機械装置の動作のシミュレーションの説明図 実施の形態1に係るシミュレーション結果出力処理のフローチャート 実施の形態1に係るシミュレーション処理のフローチャート 実施の形態2に係る機械装置の動作のシミュレーションの説明図 実施の形態3に係る機械装置モデル割付画面の表示例を示す図
 以下、本開示を実施するための形態に係るシミュレーション用プログラム、シミュレーション装置及び制御方法について図面を参照して詳細に説明する。なお、図中同一又は相当する部分には同じ符号を付す。
[実施の形態1]
(実施の形態1に係るユーザシステム1について)
 本開示の実施の形態1に係るユーザシステム1は、例えば、ユーザによって構築されたFA(Factory Automation)システムである。図1に示すように、ユーザシステム1は、動作を行う機械装置10、機械装置10に接続されて当該機械装置10を制御するコントローラ20を備える。また、ユーザシステム1は、コントローラ20に接続されて当該コントローラ20による機械装置10の制御のシミュレーションを行うシミュレーション装置の一例としてのエンジニアリング設定ツール100を備える。
(実施の形態1に係る機械装置10について)
 機械装置10は、例えば、FA機器である。機械装置10は、機械装置10の各軸に設けられたモータ11、モータ11を駆動するモータドライバ12を含む。
(実施の形態1に係るコントローラ20について)
 コントローラ20は、例えば、プログラマブルロジックコントローラ(PLC:Programmable Logic Controller)、産業用パーソナルコンピュータ、サーボシステムコントローラといったコンピュータ装置である。コントローラ20は、モータドライバ12を制御することで、モータ11の駆動を制御する。
 (実施の形態1に係るエンジニアリング設定ツール100について)
 図2に示すように、エンジニアリング設定ツール100は、エンジニアであるユーザが使用する設定ツールとしての機能を実現するためのプログラムであるエンジニアリング設定ツール用プログラム110がインストールされたコンピュータ装置である。具体的には、エンジニアリング設定ツール100は、例えば、ユーザが携帯可能なノートタイプのパーソナルコンピュータ、タブレットタイプのパーソナルコンピュータにエンジニアリング設定ツール用プログラム110がインストールされたコンピュータ装置である。なお、エンジニアリング設定ツール100には、コントローラ20による機械装置10の制御のシミュレーションを行うシミュレータとしての機能を実現するためのシミュレーション用プログラム120もインストールされている。
 エンジニアリング設定ツール100は、ユーザからの入力によってコントローラ20のプログラムであるコントローラ用プログラムのソースコードを生成するとともに、当該コントローラ用プログラムをコンパイルしてコントローラ20が実行可能な形式のデータであるオブジェクトコードに変換する。ここで、コントローラ用プログラムとは、例えば、コントローラ20が機械装置10の位置決めのための演算を行い、当該機械装置10に位置に関する指令を出力する制御を行うためのプログラムである。
 また、エンジニアリング設定ツール100は、例えば、USB(Universal Serial Bus)規格のケーブルによってコントローラ20に接続されている。このため、エンジニアリング設定ツール100は、オブジェクトコードに変換されたコントローラ用プログラムをコントローラ20に送信してコントローラ20が備える図示しないメモリに当該コントローラ用プログラムを記憶させることが可能となっている。この結果、コントローラ20は、メモリに記憶しているオブジェクトコードを用いてコントローラ用プログラムを実行することができ、例えば、機械装置10の位置決めのための演算を行ったり、当該機械装置10に位置に関する指令を出力する制御を行ったりすることができる。
 エンジニアリング設定ツール100は、コントローラ用プログラムを編集するコントローラ用プログラム編集部111、シミュレーションに用いるパラメータを設定するパラメータ設定部112を含む。また、エンジニアリング設定ツール100は、機械装置10のモデルである機械装置モデル140を取得する機械装置モデル取得部113、コントローラ用プログラムで使用される機械装置10の状態変数に機械装置モデル140を割り付ける機械装置モデル割付部114を含む。また、エンジニアリング設定ツール100は、シミュレーション用プログラム120に基づくシミュレータと情報を送受信するシミュレータ用通信インタフェース115を含む。また、エンジニアリング設定ツール100は、シミュレーション結果を示す情報であるシミュレーション結果情報を出力するシミュレーション結果出力部116、コントローラ用プログラムをコントローラ20に出力するコントローラ用プログラム出力部117を含む。
 なお、図2の上側の点線の枠で示すように、コントローラ用プログラム編集部111、パラメータ設定部112、機械装置モデル取得部113、機械装置モデル割付部114、シミュレータ用通信インタフェース115、シミュレーション結果出力部116及びコントローラ用プログラム出力部117は、例えば、エンジニアリング設定ツール100にエンジニアリング設定ツール用プログラム110がインストールされることによって実現可能となる機能である。
 また、エンジニアリング設定ツール100は、コントローラの制御のシミュレーションを行うコントローラ制御シミュレーション部121、機械装置10の動作のシミュレーションを行う機械装置動作シミュレーション部122を含む。また、エンジニアリング設定ツール100は、シミュレーションに関する情報を管理する情報管理部123を含む。
 なお、図2の下側の点線の枠で示すように、コントローラ制御シミュレーション部121、機械装置動作シミュレーション部122及び情報管理部123は、例えば、エンジニアリング設定ツール100にシミュレーション用プログラム120がインストールされることによって実現可能となるシミュレータとしての機能である。
 また、エンジニアリング設定ツール100は、情報を記憶する情報記憶部130を含む。情報記憶部130は、コントローラ用プログラムを記憶するコントローラ用プログラム記憶部131、シミュレーションに用いるパラメータを記憶するパラメータ記憶部132、機械装置モデル140を記憶する機械装置モデル記憶部133を含む。また、情報記憶部130は、コントローラ20の制御に関する情報である制御関連情報を記憶する制御関連情報記憶部134、シミュレーション用プログラム120を記憶するシミュレーション用プログラム記憶部135を含む。
(実施の形態1に係るエンジニアリング設定ツール100のハードウェア構成について)
 図3に示すように、エンジニアリング設定ツール100は、例えば、シミュレーション用プログラムといった制御プログラム59に従って処理を実行する制御部51を備える。制御部51は、CPU(Central Processing Unit)を備える。制御部51は、制御プログラム59に従って、図2に示すコントローラ用プログラム編集部111、パラメータ設定部112、機械装置モデル割付部114、シミュレータ用通信インタフェース115、シミュレーション結果出力部116、コントローラ制御シミュレーション部121、機械装置動作シミュレーション部122及び情報管理部123として機能する。
 図3に戻り、エンジニアリング設定ツール100は、制御プログラム59をロードし、制御部51の作業領域として用いられる主記憶部52を備える。主記憶部52は、RAM(Random Access Memory)を備える。
 図3に戻り、エンジニアリング設定ツール100は、制御プログラム59を予め記憶する外部記憶部53を備える。外部記憶部53は、制御部51の指示に従って、このプログラムが記憶するデータを制御部51に供給し、制御部51から供給されたデータを記憶する。外部記憶部53は、ROM(Read Only Memory)、フラッシュメモリ、EPROM(Erasable Programmable Read Only Memory)、EEPROM(Electrically Erasable Programmable Read-Only Memory)といった揮発性・不揮発性の半導体メモリ、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVD(Digital Versatile Disc)、HDD(Hard Disk Drive)、SSD(Solid State Drive)等の不揮発性の記録媒体を備える。外部記憶部53は、図2に示す情報記憶部130として機能する。
 図3に戻り、エンジニアリング設定ツール100は、ユーザに操作される操作部54を備える。操作部54を介して、入力された情報が制御部51に供給される。操作部54は、キーボード、マウス、タッチパネル等の情報入力部品を備える。
 また、エンジニアリング設定ツール100は、操作部54を介して入力された情報及び制御部51が出力した情報を表示する表示部55を備える。表示部55は、LCD(Liquid Crystal Display)、OLED(Organic Light Emitting Diode)ディスプレイ等の表示装置を備える。
 また、エンジニアリング設定ツール100は、情報を送受信する送受信部56を備える。送受信部56は、ネットワークに接続する通信網終端装置、無線通信装置等の情報通信部品を備える。送受信部56は、図2に示す機械装置モデル取得部113、コントローラ用プログラム出力部117として機能する。
 図3に戻り、エンジニアリング設定ツール100では、主記憶部52、外部記憶部53、操作部54、表示部55及び送受信部56はいずれも内部バス50を介して制御部51に接続されている。
 エンジニアリング設定ツール100は、制御部51が主記憶部52、外部記憶部53、操作部54、表示部55及び送受信部56を資源として用いることによって、図2に示す上記の各部111~117、121~123、130の機能を実現する。例えば、エンジニアリング設定ツール100は、コントローラ用プログラム編集部111が行うコントローラ用プログラム編集ステップを実行する。また、例えば、エンジニアリング設定ツール100は、パラメータ設定部112が行うパラメータ設定ステップ、機械装置モデル割付部114が行う機械装置モデル割付ステップ、シミュレータ用通信インタフェース115が行うシミュレータ用通信ステップを実行する。
 また、例えば、エンジニアリング設定ツール100は、シミュレーション結果出力部116が行うシミュレーション結果出力ステップ、コントローラ用プログラム出力部117が行うコントローラ用プログラム出力ステップを実行する。また、例えば、エンジニアリング設定ツール100は、コントローラ制御シミュレーション部121が行うコントローラ制御シミュレーションステップ、機械装置動作シミュレーション部122が行う機械装置動作シミュレーションステップを実行する。また、例えば、エンジニアリング設定ツール100は、情報管理部123が行う情報管理ステップ、情報記憶部130が行う情報記憶ステップを実行する。
(実施の形態1に係るエンジニアリング設定ツール100の機能構成の詳細について)
 図2に戻り、コントローラ用プログラム編集部111は、ユーザがコントローラ用プログラムを作成するためのユーザインタフェースである図示しないプログラム編集画面を表示部55に表示する。また、コントローラ用プログラム編集部111は、ユーザが操作部54を用いたプログラム編集画面への入力に基づいてコントローラ用プログラムのソースコードを編集する。
 パラメータ設定部112は、例えば、パラメータとしてコントローラ制御シミュレーション部121が行うシミュレーションにおけるコントローラ20の制御の演算処理の周期である制御演算処理周期の設定値を設定する。また、パラメータ設定部112は、例えば、パラメータとして機械装置動作シミュレーション部122が行うシミュレーションにおける機械装置10の動作の演算処理の周期である動作演算処理周期の設定値を設定する。パラメータ設定部112は、これらのパラメータを設定するためのユーザインタフェースである図示しないパラメータ設定画面を表示部55に表示する。また、パラメータ設定部112は、ユーザが操作部54を用いたパラメータ設定画面への入力に基づいてこれらのパラメータを設定する。なお、パラメータ設定部112は、制御演算処理周期の設定値を設定したときに、動作演算処理周期の設定値を制御演算処理周期の設定値と同一の値、例えば4msといった値に自動的に設定する。
 機械装置モデル取得部113は、ユーザシステム1の外部の装置が生成した機械装置モデル140を当該外部の装置から受信することで、機械装置モデル140を取得する。なお、本実施の形態では、機械装置モデル140を送信する外部の装置が機械装置モデル140を生成しているが、これに限定されず、ユーザシステム1の外部の装置である限りにおいて、機械装置モデル140を生成する装置と機械装置モデル140を送信する装置とが異なってもよい。また、本実施の形態では、機械装置モデル取得部113は、機械装置モデル140をユーザシステム1の外部の装置から取得しているが、これに限定されず、例えば、エンジニアリング設定ツール100において自ら生成した機械装置モデル140を取得してもよい。
 ここで、機械装置モデル140とは、機械装置10の動的システムを数学的、論理的にモデル化したものであり、具体低には、機械装置10のモデル構造の定義と、機械装置10のモデルの動作を表す関数の実装とを備えるソフトウェアである。なお、機械装置10のモデル構造の定義には、機械装置10の入力、出力、パラメータ、その他の変数といった定義が含まれる。また、機械装置10のモデルの動作は、運動方程式で表現することができ、モデル化された動的システムの状態が時間の経過とともにどのように変化するかを演算できる。
 本実施の形態では、機械装置10のモデル構造の定義は、文書、データの意味、構造を記述するための形式言語であるマークアップ言語の一例としてのXML(Extensible Markup Language)のファイル形式で記載されている。また、機械装置10の動作を表す関数は、動的リンクライブラリ(DLL:Dynamic Link Library)、例えば、Windows(登録商標)OS(Operating System)におけるdllファイルといったバイナリファイルのファイル形式で実装されている。すなわち、機械装置モデル140は、XMLファイル、dllファイルといった汎用のライブラリファイル化がなされた機械装置10の数学的、論理的なモデルである。
 機械装置モデル割付部114は、機械装置10の動作を行う軸の状態変数である軸変数、互いに関連する複数種類の軸のグループの状態変数である軸グループ変数に機械装置モデル140を割り付ける。機械装置モデル割付部114は、これらの状態変数に機械装置モデル140を割り付けるためのユーザインタフェースである図4~図6に示す機械装置モデル割付画面200を表示部55に表示する。また、機械装置モデル割付部114は、ユーザが操作部54を用いた機械装置モデル割付画面200への入力に基づいてこれらの状態変数に機械装置モデル140を割り付ける。
 機械装置モデル割付画面200は、機械装置10の状態変数を設定する図4に示す状態変数設定画面210を含む。また、機械装置モデル割付画面200は、機械装置モデル140の入出力の詳細な設定を行う図5に示す機械装置モデル入出力設定画面220、機械装置モデル140の入出力の設定の支援を行う図6に示す入出力設定支援画面230を含む。
 まず、機械装置モデル割付部114は、機械装置モデル割付画面200として図4に示す状態変数設定画面210を表示する。図4に示すように、状態変数設定画面210は、上から順番に、軸又は軸グループの名称を表示する軸名称表示欄211、軸グループの構成を表示する構成表示欄212、機械装置モデル140の有効・無効を設定する有効無効設定欄213、機械装置モデル140のファイルパスを設定するファイルパス設定欄214、機械装置モデル140の入出力を設定する入出力設定欄215を有する。また、入出力設定欄215には、ユーザが押下可能な設定ボタン216が設けられている。
 軸名称表示欄211には、例えば、「名称」との項目に対応して軸グループの名称である「AxesGroup001」との情報が表示されている。また、構成表示欄212には、例えば、「構成軸1」との項目に対応して軸グループの第1の構成軸の名称である「Axis001」との情報が表示されている。また、有効無効設定欄213には、例えば、「機械装置モデル有効無効」との項目に対応してユーザが操作部54を用いた入力によって設定された「有効」との情報が表示されている。この場合、ファイルパス設定欄214及び入出力設定欄215に対するユーザの操作部54を用いた入力が有効化される。
 この結果、ファイルパス設定欄214には、例えば、「機械装置モデルファイルパス」との項目に対応してユーザが操作部54を用いた入力によって設定された「C:¥…¥Model001.xxx」との情報が表示されている。この状態において、ユーザが操作部54を用いた入力によって入出力設定欄215の設定ボタン216を押下すると、機械装置モデル割付部114は、図5に示す機械装置モデル入出力設定画面220を表示する。
 図5に示すように、機械装置モデル入出力設定画面220は、上部に設けられたユーザが押下可能な入力支援ボタン221、下部に設けられた機械装置モデル140の入出力の詳細を設定するテーブル形式の入出力設定欄222を有する。
 入出力設定欄222には、機械装置モデル140の入出力の名称を示す「名称」、入出力の種別を示す「種別」、入出力に対応する軸変数又は軸グループ変数の名称を示す「データ名」、入出力のデータ型を示す「データ型」の項目に対応する情報が入出力毎に表示されている。入出力設定欄222には、例えば、「Model001」の機械装置モデル140における「名称」が「Input1」の入力について、「種別」が「ラベル」、「データ名」が「Axis0001.Md.SetPosition」、「データ型」が「倍精度浮動小数」である旨が表示されている。また、入出力設定欄222には、例えば、「名称」が「Output1」の出力について、「種別」が「ラベル」、「データ名」が「Axis0001.Md.ActualPosition」、「データ型」が「倍精度浮動小数」である旨が表示されている。
 ユーザは、操作部54を用いた入力によって入出力設定欄222のこれらの項目に対応する情報を機械装置モデル140の入出力毎に設定することができる。また、ユーザが操作部54を用いた入力によって入出力設定欄222の何れかの入力又は出力の行を選択した状態で入力支援ボタン221を押下すると、機械装置モデル割付部114は、図6に示す入出力設定支援画面230を表示する。
 図6に示すように、入出力設定支援画面230は、上から順番に、軸又は軸グループの名称を選択する軸名称選択欄231、軸変数又は軸グループ変数の構造体の種別を選択する構造体種別選択欄232、軸変数又は軸グループ変数のデータ名を選択するデータ名選択欄233を有する。
 軸名称選択欄231及び構造体種別選択欄232は、プルダウン形式のメニュー選択欄である。ユーザは、操作部54を用いた入力によって軸名称選択欄231を押下すると、割り付けによって機械装置モデル140に関連付けられた軸又は軸グループの名称、具体的には、図4に示す「AxesGroup001」、「Axis0001」、「Axis0002」の何れかを選択できる。よって、軸名称選択欄231には、例えば、「軸名称」との項目に対応して選択された「Axis0001」との情報が表示されている。
 この状態において、ユーザは、操作部54を用いた入力によって構造体種別選択欄232を押下すると、軸名称選択欄231で選択された名称が「Axis0001」の軸変数のうちのデータ形式の一例である構造体の種別、例えば、「パラメータデータ」、「モニタデータ」といった種別から何れかの種別を選択できる。よって、構造体種別選択欄232には、例えば、「構造体種別」との項目に対応して設定された「モニタデータ」との情報が表示されている。
 この場合、データ名選択欄233には、軸名称選択欄231で選択された軸又は軸グループと構造体種別選択欄232で選択された構造体の種別とで絞り込まれた軸変数又は軸グループ変数のデータ名が表示される。データ名選択欄233には、例えば、「名称」の項目に対応して軸変数又は軸グループ変数の説明を示す「指令現在位置」、「データ名」の項目に対応して軸変数又は軸グループ変数のデータ名を示す「*.Md.SetPosition」との情報が表示されている。
 この状態において、ユーザが操作部54を用いた入力によってデータ名選択欄233に表示された軸変数又は軸グループ変数のデータ名を選択すると、機械装置モデル割付部114は、入出力設定支援画面230の表示を終了して図5に示す機械装置モデル入出力設定画面220において選択されていた入力又は出力の行に「種別」、「データ名」、「データ型」の項目に対応する情報を自動的に設定する。
 具体的には、ユーザが図5に示す機械装置モデル入出力設定画面220において入出力設定欄222の「Input1」の入力の行を選択した状態で入力支援ボタン221を押下した場合について考える。この場合において、ユーザが図6に示す入出力設定支援画面230において軸名称選択欄231で「Axis0001」を選択し、構造体種別選択欄232で「モニタデータ」を選択し、データ名選択欄233で「*.Md.SetPosition」を選択したとする。この場合、機械装置モデル割付部114は、図5に示す機械装置モデル入出力設定画面220において入出力設定欄222の「Input1」の入力の行の「種別」との項目に対応して「ラベル」、「データ名」との項目に対応して「Axis0001.Md.SetPosition」、「データ型」との項目に対応して「倍精度浮動小数」との情報を自動的に表示することで、これらの情報を自動的に設定する。この結果、機械装置モデル割付部114は、軸変数又は軸グループ変数に機械装置モデル140を割り付けることができる。
 図2に戻り、シミュレータ用通信インタフェース115は、シミュレーション用プログラム120の実行を開始することで、シミュレータを起動する。また、シミュレータ用通信インタフェース115は、コントロ-ラ用プログラム、パラメータを示す情報、機械装置モデル140及び割り付けに関する情報をシミュレータに送信する。また、シミュレータ用通信インタフェース115は、シミュレータがシミュレーションを行った後、当該シミュレータからシミュレーション結果情報を取得する。
 シミュレーション結果出力部116は、シミュレータ用通信インタフェース115が受信した図示しないシミュレーション結果情報を表示部55に表示することで、シミュレーション結果情報を出力する。
 コントローラ用プログラム出力部117は、シミュレーション結果に基づいてソースコードが編集され、オブジェクトコードに変換されたコントローラ用プログラムをコントローラ20に送信することで、コントローラ用プログラムを出力する。
 情報管理部123は、シミュレータ用通信インタフェース115から送信された情報を受信し、情報記憶部130に記憶させる。具体的には、情報管理部123は、取得したコントローラ用プログラムをコントローラ用プログラム記憶部131に記憶させ、取得したパラメータを示す情報をパラメータ記憶部132に記憶させ、取得した機械装置モデル140及び割り付けに関する情報を機械装置モデル記憶部133に記憶させる。また、情報管理部123は、コントローラ制御シミュレーション部121が出力する後述する設定情報を取得し、制御関連情報記憶部134に記憶させる。また、情報管理部123は、機械装置動作シミュレーション部122からの要求に応じて情報記憶部130が記憶しているこれらの情報を読み出す。
 コントローラ制御シミュレーション部121は、コントローラ用プログラムを実行することでコントローラ20の制御のシミュレーションを行う。まず、コントローラ制御シミュレーション部121は、情報管理部123を介して、コントローラ用プログラム記憶部131が記憶しているコントローラ用プログラム、パラメータ記憶部132が記憶している制御演算処理周期の設定値をそれぞれ読み出す。そして、コントローラ制御シミュレーション部121は、制御演算処理周期の設定値を1サイクルの制御演算処理周期としてコントローラ用プログラムを実行する。このとき、コントローラ制御シミュレーション部121は、コントローラ20の制御に関する設定値を算出し、当該設定値を示す情報である設定情報を情報管理部123に出力する。なお、コントローラ20の制御に関する設定値とは、例えば、シミュレータが利用する位置決めアドレスを示す値、位置決め速度を示す値である。
 機械装置動作シミュレーション部122は、機械装置モデル140を用いて機械装置10の動作のシミュレーションを行う。まず、機械装置動作シミュレーション部122は、情報管理部123を介して、機械装置モデル記憶部133が記憶している機械装置モデル140及び割り付けに関する情報、パラメータ記憶部132が記憶している動作演算処理周期の設定値、制御関連情報記憶部134が記憶している設定情報をそれぞれ読み出す。そして、機械装置動作シミュレーション部122は、動作演算処理周期の設定値を1サイクルの演算処理周期として機械装置モデル140を用いた機械装置10の動作のシミュレーションを行う。
(実施の形態1に係る機械装置10の動作のシミュレーションについて)
 ここで、機械装置モデル140は、指定された時間を経過させる要求がなされたときに現在時刻から当該時間が経過した次の時刻における機械装置10の状態を示す情報を出力するモデルである。具体的には、図7に示すように、機械装置モデル140は、機械装置10のモデルの動作を表現する一連の常微分方程式を数値計算によって解くことが可能な数値ソルバ141を含む。数値ソルバ141は、時間及び連続状態を示す値を機械装置モデル140に入力して機械装置モデル140から連続状態の微分値を出力として取得する演算処理部である。
 まず、機械装置動作シミュレーション部122は、機械装置モデル140に現在時刻及び現在時刻からの時間の刻み幅であるコミュニケーションステップサイズを機械装置モデル140に指定する。ここで、コミュニケーションステップサイズは、動作演算処理周期の設定値である。また、機械装置動作シミュレーション部122は、割り付けに関する情報及び設定情報に基づいて設定した入力値を機械装置モデル140に入力する。ここで、入力値には、例えば、「データ名」が「Axis0001.Md.SetPosition」の軸変数が示す値が含まれる。このとき、数値ソルバ141は、現在時刻及びコミュニケーションステップサイズに基づく時間、入力値に基づく機械装置10の連続状態を示す値を機械装置モデル140に入力して連続状態の微分値を出力として取得する。そして、機械装置モデル140は、連続状態の微分値に基づく出力値を機械装置動作シミュレーション部122に出力する。ここで、出力値には、例えば、「データ名」が「Axis0001.Md.ActualPosition」の軸変数が示す値が含まれる。
 この結果、機械装置動作シミュレーション部122は、動作演算処理周期の設定値を1サイクルの演算処理周期、すなわち、コミュニケーションステップサイズとして機械装置モデル140を用いた機械装置10の動作のシミュレーションを行うことができる。なお、上述したように、動作演算処理周期の設定値は、制御演算処理周期の設定値と同一の値である。このため、機械装置動作シミュレーション部122が行う機械装置10の動作のシミュレーションは、コントローラ制御シミュレーション部121が行うコントローラ20の制御のシミュレーションと同期を取ることができる。
 また、機械装置動作シミュレーション部122は、情報管理部123を介して、出力値を示す情報であるシミュレーション結果情報を制御関連情報記憶部134に記憶させる。この結果、シミュレータ用通信インタフェース115は、制御関連情報記憶部134に記憶されたシミュレーション結果情報を読み出すことで、シミュレーション結果情報を取得できる。
(実施の形態1に係るシミュレーション結果出力処理について)
 次に、フローチャートを用いてエンジニアリング設定ツール100が編集したコントローラ用プログラムのシミュレーション結果情報を出力する動作について説明する。エンジニアリング設定ツール100は、エンジニアリング設定ツール用プログラム110を起動すると、図8に示すシミュレーション結果出力処理の実行を開始する。
 先ず、コントローラ用プログラム編集部111は、図示しないプログラム編集画面を表示し、ユーザが操作部54を用いたプログラム編集画面への入力に基づいてコントローラ用プログラムのソースコードを編集する(ステップS101)。次に、パラメータ設定部112は、図示しないパラメータ設定画面を表示し、ユーザが操作部54を用いたパラメータ設定画面への入力に基づいて制御演算処理周期の設定値、動作演算処理周期の設定値といったパラメータを設定する(ステップS102)。
 次に、機械装置モデル割付部114は、図4~図6に示す機械装置モデル割付画面200を表示し、ユーザが操作部54を用いた機械装置モデル割付画面200への入力に基づいて軸変数、軸グループ変数といった状態変数に機械装置モデル140を割り付ける(ステップS103)。例えば、機械装置モデル割付部114は、機械装置モデル割付画面200に含まれる状態変数設定画面210、機械装置モデル入出力設定画面220、入出力設定支援画面230を用いたユーザの入力によって、機械装置モデル140の入力及び出力を設定する。具体的には、機械装置モデル割付部114は、「データ名」が「Axis0001.Md.SetPosition」の軸変数を機械装置モデル140の入力として設定するとともに、「データ名」が「Axis0001.Md.ActualPosition」の軸変数を機械装置モデル140の出力として設定する。
 次に、シミュレータ用通信インタフェース115は、シミュレーション用プログラム120の実行を開始することで、シミュレータを起動する(ステップS104)。次に、シミュレータ用通信インタフェース115は、コントロ-ラ用プログラム、パラメータを示す情報、機械装置モデル140及び割り付けに関する情報をシミュレータに送信する(ステップS105)。次に、シミュレータ用通信インタフェース115は、情報記憶部130に記憶されたシミュレーション結果情報を取得することで、シミュレータからシミュレーション結果情報を取得する(ステップ106)。そして、コントローラ用プログラム出力部117は、図示しないシミュレーション結果情報を表示し(ステップS107)、処理を終了する。
 なお、エンジニアリング設定ツール100が機械装置モデル140を取得する動作については、機械装置モデル取得部113がユーザシステム1の外部の装置が生成した機械装置モデル140を当該外部の装置から受信するだけであるため、フローチャートを用いた詳細な説明を省略する。
(実施の形態1に係るシミュレーション処理について)
 次に、フローチャートを用いてエンジニアリング設定ツール100がコントローラ用プログラムに基づいてコントローラ20による機械装置10の動作の制御のシミュレーションを行う動作について説明する。エンジニアリング設定ツール100は、シミュレータ用通信インタフェース115がシミュレーション用プログラム120の実行を開始してシミュレータを起動すると、図9に示すシミュレーション処理の実行を開始する。
 先ず、コントローラ制御シミュレーション部121は、情報管理部123を介して情報記憶部130が記憶しているコントローラ用プログラム、制御演算処理周期の設定値を読み出す(ステップS201)。次に、コントローラ制御シミュレーション部121は、制御演算処理周期の設定値を1サイクルの制御演算処理周期としてコントローラ用プログラムの実行を開始する(ステップS202)。次に、コントローラ制御シミュレーション部121は、位置決めアドレスを示す値、位置決め速度を示す値といったコントローラ20の制御に関する設定値を算出し、情報管理部123を介して当該設定値を示す設定情報を制御関連情報記憶部134に記憶させる(ステップS203)。
 次に、機械装置動作シミュレーション部122は、情報管理部123を介して情報記憶部130が記憶している機械装置モデル140、割り付けに関する情報、動作演算処理周期の設定値、設定情報といった情報を読み出す(ステップS204)。次に、機械装置動作シミュレーション部122は、動作演算処理周期の設定値をコミュニケーションステップサイズすなわち、1サイクルの演算処理周期として機械装置モデル140を用いた機械装置10の動作のシミュレーションを行う(ステップS205)。例えば、機械装置動作シミュレーション部122は、機械装置モデル140に対して、現在時刻とコミュニケーションステップサイズを指定した上で、割り付けに関する情報及び設定情報に基づいて設定した「Axis0001.Md.SetPosition」の軸変数が示す値を含む入力値を入力する。そして、機械装置動作シミュレーション部122は、機械装置モデル140が出力した連続状態の微分値に基づく「Axis0001.Md.ActualPosition」の軸変数が示す値を含む出力値を取得する。次に、機械装置動作シミュレーション部122は、情報管理部123を介してシミュレーション結果情報を制御関連情報記憶部134に記憶させ(ステップS206)、処理を終了する。
 なお、情報管理部123がシミュレータ用通信インタフェース115から送信された情報を情報記憶部130に記憶させる動作については、情報管理部123が取得した各情報を情報記憶部130の各記憶部131~133に記憶させるだけである。このため、情報管理部123が行う上記の動作については、フローチャートを用いた詳細な説明を省略する。
 以上説明したように、本実施の形態に係るユーザシステム1によれば、エンジニアリング設定ツール100には、シミュレーション用プログラム120がインストールされている。よって、エンジニアリング設定ツール100は、シミュレーション用プログラム120を実行することで、コントローラ20による機械装置10の制御のシミュレーションを行うシミュレーション装置、すなわち、シミュレータとしての機能を実現できる。
 また、本実施の形態に係るユーザシステム1によれば、エンジニアリング設定ツール100では、コントローラ制御シミュレーション部121は、コントローラ用プログラムを実行することでコントローラ20の制御のシミュレーションを行う。また、エンジニアリング設定ツール100では、機械装置動作シミュレーション部122は、機械装置モデル140を用いて機械装置10の動作のシミュレーションを行う。ここで、機械装置モデル140は、機械装置モデル取得部113によって外部の装置から取得したライブラリファイル化されたモデルである。
 このようにすることで、本実施の形態に係るシミュレーション用プログラム120は、コントローラ20が制御する機械装置10のモデルを生成する装置に依存せずにコントローラ20の制御と機械装置10の動作とのシミュレーションを行うことができる。
 また、本実施の形態に係るユーザシステム1によれば、エンジニアリング設定ツール100では、コントローラ制御シミュレーション部121は、コントローラ用プログラムを実行して、位置決めアドレスを示す値、位置決め速度を示す値といったコントローラ20の制御に関する設定値を算出する。また、コントローラ制御シミュレーション部121は、情報管理部123を介して算出した設定値を示す設定情報を制御関連情報記憶部134に記憶させる。そして、機械装置動作シミュレーション部122は、情報管理部123を介して設定情報を読み出す。
 このようにすることで、コントローラ制御シミュレーション部121及び機械装置動作シミュレーション部122は、情報管理部123を介して情報を送受信することができる。よって、エンジニアリング設定ツール100では、コントローラ制御シミュレーション部121がコントローラ用プログラムを実行して算出したコントローラ20の制御に関する設定値を用いて機械装置動作シミュレーション部122が機械装置10の動作のシミュレーションを行うことができる。この結果、本実施の形態に係るシミュレーション用プログラム120は、ユーザシステム1においてコントローラ20が実際に実行するコントローラ用プログラムを用いて機械装置10の動作を含むユーザシステム1の全体の検証を行うことができる。
 また、本実施の形態に係るユーザシステム1によれば、機械装置モデル140は、指定された時間を経過させる要求がなされたときに現在時刻から当該時間が経過した次の時刻における機械装置10の軸変数の値を示す情報を出力値として出力するモデルである。また、エンジニアリング設定ツール100では、機械装置動作シミュレーション部122は、機械装置モデル140に対して、現在時刻とコミュニケーションステップサイズを指定した上で、割り付けに関する情報及び設定情報に基づいて設定した入力値を入力する。この結果、機械装置動作シミュレーション部122は、機械装置モデル140が出力した連続状態の微分値に基づく出力値を取得でき、機械装置10の動作のシミュレーションを行うことができる。
 ここで、機械装置動作シミュレーション部122が指定しているコミュニケーションステップサイズは、パラメータ設定部112が設定した動作演算処理周期の設定値であり、パラメータ設定部112は、動作演算処理周期の設定値を制御演算処理周期の設定値と同一の値に自動的に設定している。よって、機械装置動作シミュレーション部122が指定するコミュニケーションステップサイズは、コントローラ制御シミュレーション部121がコントローラ用プログラムを実行する制御演算処理周期と同一の時間である。
 このようにすることで、本実施の形態に係るシミュレーション用プログラム120は、コントローラ制御シミュレーション部121が行うコントローラ20の制御のシミュレーションと機械装置動作シミュレーション部122が行う機械装置10の動作のシミュレーションとを同期することができる。
 なお、機械装置モデル140は、コミュニケーションステップサイズとは異なるモデル内の内部演算周期が設定できてもよい。この場合、本実施の形態に係るシミュレーション用プログラム120では、コミュニケーションステップサイズが機械装置モデル140の内部演算周期の整数倍となる設定を行われたときには当該設定が行われていないときよりも機械装置モデル140の演算の精度が向上する。
 また、本実施の形態に係るユーザシステム1によれば、エンジニアリング設定ツール100では、機械装置モデル割付部114は、機械装置10の動作を行う軸の軸変数、軸グループ変数といった状態変数に機械装置モデル140を割り付ける。
 このようにすることで、本実施の形態に係るエンジニアリング設定ツール100は、機械装置モデル割付部を含まないエンジニアリング設定ツールよりも状態変数と機械装置モデル140との関連付けを容易に行うことができ、シミュレーション用プログラム120を用いてユーザシステム1の検証を行うユーザの作業負担を軽減できる。
 特に、本実施の形態に係るユーザシステム1によれば、エンジニアリング設定ツール100では、機械装置モデル割付部114は、ユーザが操作部54を用いた機械装置モデル割付画面200への入力に基づいて状態変数に機械装置モデル140を割り付ける。
 このようにすることで、ユーザは、上述した割り付けの作業を視覚的に行うことができる。この結果、本実施の形態に係るエンジニアリング設定ツール100は、機械装置モデル割付画面を用いて割り付けを行わないエンジニアリング設定ツールよりも状態変数と機械装置モデル140との関連付けを容易に行うことができる。この結果、本実施の形態に係るエンジニアリング設定ツール100は、シミュレーション用プログラム120を用いてユーザシステム1の検証を行うオペレータの作業負担を軽減できる。
[実施の形態2]
 実施の形態1では、機械装置モデル140に数値ソルバ141が含まれているが、機械装置モデル140に数値ソルバ141が含まれていなくてもよい。以下、図10を参照して、実施の形態2に係るユーザシステム1について、詳細に説明する。なお、実施の形態2では、実施の形態1と異なる構成について説明し、実施の形態1と同一の構成については冗長であるため説明を省略する。
(実施の形態2に係る機械装置10の動作のシミュレーションについて)
 図10に示すように、本実施の形態2に係る機械装置モデル140は、数値ソルバ141を含んでおらず、数値ソルバ141は、機械装置動作シミュレーション部122に含まれる。また、本実施の形態に係る機械装置モデル140は、指定された時刻における機械装置10の状態変数の時間微分の値を示す情報を出力できるモデルである。具体的には、機械装置モデル140は、機械装置動作シミュレーション部122によって指定された時間、連続状態を示す値に基づいて、入力値から出力値を得るときに用いる関数を数値ソルバ141に提供することで、数値ソルバ141に出力値を演算させることができるモデルである。ここで、出力値とは、指定された時刻における機械装置10の状態変数の時間微分の値である。
 本実施の形態では、まず、機械装置動作シミュレーション部122は、数値ソルバ141を使用する時間ステップと、次の時間ステップにおける状態変数の時間微分の値の計算方法を決定する。なお、機械装置動作シミュレーション部122は、動作演算処理周期の設定値に基づいて時間ステップを決定しており、具体的には、前後する時間ステップどうしの時間の刻み幅である積分ステップが動作演算処理周期の設定値となる時間ステップを決定する。また、数値ソルバ141は、現在時刻及び時間ステップに基づく時間、入力値に基づく連続状態を示す値を機械装置モデル140に指定することで、上述した関数を取得する。そして、数値ソルバ141は、取得した関数を用いて入力値から出力値を演算、出力する。
 この結果、機械装置動作シミュレーション部122は、動作演算処理周期の設定値を1サイクルの演算処理周期、すなわち、積分ステップとして機械装置モデル140を用いた機械装置10の動作のシミュレーションを行うことができる。なお、上述したように、動作演算処理周期の設定値は、制御演算処理周期の設定値と同一の値である。このため、機械装置動作シミュレーション部122が行う機械装置10の動作のシミュレーションは、コントローラ制御シミュレーション部121が行うコントローラ20の制御のシミュレーションと同期を取ることができる。
 以上説明したように、本実施の形態に係るユーザシステム1によれば、エンジニアリング設定ツール100では、機械装置動作シミュレーション部122は、数値ソルバ141を含み、数値ソルバ141を使用する時間ステップと、次の時間ステップにおける状態変数の時間微分の値の計算方法を決定する。また、機械装置モデル140は、指定された時刻における機械装置10の状態変数の時間微分の値を示す情報を出力するモデルであり、数値ソルバ141から時間及び連続状態を示す値が指定されると、数値ソルバ141に入力値から出力値を得るときに用いる関数を提供する。この結果、数値ソルバ141は、取得した関数を用いて入力値から出力値を演算、出力でき、機械装置動作シミュレーション部122は、機械装置10の動作のシミュレーションを行うことができる。
 ここで、機械装置動作シミュレーション部122が指定している積分ステップは、パラメータ設定部112が設定した動作演算処理周期の設定値であり、パラメータ設定部112は、動作演算処理周期の設定値を制御演算処理周期の設定値と同一の値に自動的に設定している。よって、機械装置動作シミュレーション部122が設定する積分ステップは、コントローラ制御シミュレーション部121がコントローラ用プログラムを実行する制御演算処理周期と同一の時間である。
 このようにすることで、本実施の形態に係るシミュレーション用プログラム120は、コントローラ制御シミュレーション部121が行うコントローラ20の制御のシミュレーションと機械装置動作シミュレーション部122が行う機械装置10の動作のシミュレーションとを同期することができる。
 その他、本実施の形態に係るシミュレーション用プログラム120は、実施の形態1に係るシミュレーション用プログラム120と同様の作用効果を奏する。
[実施の形態3]
 実施の形態1では、機械装置モデル入出力設定画面240にはテーブル形式の入出力設定欄222が設けられているが、機械装置モデル140の入出力の設定が可能な限りにおいて入出力設定欄222はテーブル形式に限定されない。以下、図11を参照して、実施の形態3に係るユーザシステム1について、詳細に説明する。なお、実施の形態3では、実施の形態1と異なる構成について説明し、実施の形態1と同一の構成については冗長であるため説明を省略する。
(実施の形態3に係るエンジニアリング設定ツール100の機能構成の詳細について)
 実施の形態3に係る機械装置モデル割付画面200は、図5に示す機械装置モデル入出力設定画面240に替えて図11に示す機械装置モデル入出力設定画面240を含む。本実施の形態では、図4に示す状態において、ユーザが操作部54を用いた入力によって入出力設定欄215の設定ボタン216を押下すると、機械装置モデル割付部114は、図10に示す機械装置モデル入出力設定画面240を表示する。
 図11に示すように、機械装置モデル入出力設定画面240は、上部に設けられたユーザが押下可能なインポートボタン241、下部に設けられたブロック線図形式の入出力設定部242を有する。
 入出力設定部242は、関数としての機械装置モデル140を表示する機械装置モデル表示部243を含む。また、入出力設定部242は、設定された軸変数又は軸グループ変数を機械装置モデル140の入力として表示する入力表示部244、設定された軸変数又は軸グループ変数を機械装置モデル140の出力として表示する出力表示部245を含む。入力表示部244及び出力表示部245は、機械装置モデル表示部243に接続された状態で表示されている。また、入出力設定部242は、上部に実施の形態1、2と同様の入力支援ボタン221を含む。
 入出力設定部242には、例えば、「Model001」の機械装置モデル140における「Input1」の入力が「Axis0001.Md.SetPosition」である旨が表示されている。また、入出力設定部242には、例えば、「Model001」の機械装置モデル140における「Output1」の出力が「Axis0001.Md.ActualPosition」である旨が表示されている。
 まず、ユーザは、操作部54を用いた入力によってインポートボタン241を押下すると、図示しない機械装置モデル選択画面を表示する。この状態において、ユーザが操作部54を用いて機械装置モデル140を選択すると、機械装置モデル割付部114は、機械装置モデル選択画面の表示を終了し、機械装置モデル表示部243に選択した機械装置モデル140を表示する。このとき、ユーザは、操作部54を用いた入力によって入力表示部244及び出力表示部245に機械装置モデル140入力及び出力を設定することができる。また、ユーザが操作部54を用いた入力によって入力表示部244又は出力表示部245の何れかの入力又は出力を選択した状態で入力支援ボタン221を押下すると、機械装置モデル割付部114は、図6に示す入出力設定支援画面230を表示する。
 また、入出力設定支援画面230において、ユーザが操作部54を用いた入力によって軸変数又は軸グループ変数のデータ名を選択すると、機械装置モデル割付部114は、入出力設定支援画面230の表示を終了して図11に示す機械装置モデル入出力設定画面240において選択されていた入力又は出力の入力表示部244又は出力表示部245に選択された軸変数又は軸グループ変数のデータ名を自動的に表示する。
 具体的には、ユーザが図5に示す機械装置モデル入出力設定画面240において入出力設定部242の「Input1」の入力の入力表示部244を選択した状態で入力支援ボタン221を押下した場合について考える。この場合において、ユーザが図6に示す入出力設定支援画面230において軸名称選択欄231で「Axis0001」を選択し、構造体種別選択欄232で「モニタデータ」を選択し、データ名選択欄233で「*.Md.SetPosition」を選択したとする。この場合、機械装置モデル割付部114は、図11に示す機械装置モデル入出力設定画面240において入出力設定部242の「Input1」の入力のデータ名選択欄233に「Axis0001.Md.SetPosition」との情報を自動的に表示することで、軸変数及び軸グループ変数を自動的に設定する。この結果、機械装置モデル割付部114は、軸変数又は軸グループ変数に機械装置モデル140を割り付けることができる。
 以上説明したように、本実施の形態に係るユーザシステム1によれば、エンジニアリング設定ツール100では、機械装置モデル入出力設定画面240には、ブロック線図形式の入出力設定部242が設けられている。
 このようにすることで、本実施の形態に係るエンジニアリング設定ツール100は、ブロック線図形式の入出力設定部を用いて割り付けを行わないエンジニアリング設定ツールよりも状態変数と機械装置モデル140との関連付けを容易に行うことができる。この結果、本実施の形態に係るエンジニアリング設定ツール100は、シミュレーション用プログラム120を用いてユーザシステム1の検証を行うオペレータの作業負担を軽減できる。
 その他、本実施の形態に係るシミュレーション用プログラム120は、実施の形態1に係るシミュレーション用プログラム120と同様の作用効果を奏する。
[変更例]
 なお、上記の実施の形態1~3では、エンジニアリング設定ツール100をコンピュータ装置にシミュレーション用プログラム120をインストールすることにより構成したが、これに限定されず、例えば、所謂Webアプリケーションの形態により構成されてもいい。具体的には、クライアントとしてのエンジニアリング設定ツール100がWebブラウザからシミュレーション用プログラム120の機能を実現可能なWEBサーバにシミュレータとしての処理を依頼することで、当該WEBサーバがシミュレーションを行ってもよい。
 なお、制御部51、主記憶部52、外部記憶部53、操作部54、送受信部56、内部バス50を備えるエンジニアリング設定ツール100が処理を行う中心となる部分は、例えば、前記の動作を実行するための各プログラム110、120を、エンジニアリング設定ツール100が読み取り可能な記録媒体、例えば、フラッシュメモリに格納して配布し、各プログラム110、120をインストールすることにより、上記の処理を実行するエンジニアリング設定ツール100を構成してもよい。また、LAN、インターネット等の通信ネットワーク上のサーバ装置が有する記憶装置に各プログラム110、120を格納しておき、エンジニアリング設定ツール100が各プログラムを110、120ダウンロードすることでエンジニアリング設定ツール100を構成してもよい。
 また、エンジニアリング設定ツール100の機能は、OS(Operating System)とアプリケーションプログラムの分担、又はOSとアプリケーションプログラムとの協働により実現する場合には、アプリケーションプログラム部分のみを記録媒体又は記憶装置に格納してもよい。
 また、搬送波にプログラムを重畳し、通信ネットワークを介して提供することも可能である。例えば、通信ネットワーク上の掲示板(BBS、Bulletin Board System)にプログラムを掲示し、ネットワークを介してプログラムを提供してもよい。そして、プログラムを起動し、OSの制御下で、他のアプリケーションプログラムと同様に実行することにより、前記の処理を実行してもよい。
 本開示は、本開示の広義の精神と範囲を逸脱することなく、様々な実施の形態及び変形が可能とされるものである。また、上述した実施の形態は、本開示を説明するためのものであり、本開示の範囲を限定するものではない。つまり、本開示の範囲は、実施の形態ではなく、請求の範囲によって示される。そして、請求の範囲内及びそれと同等の開示の意義の範囲内で施される様々な変形が、本開示の範囲内とみなされる。
1…ユーザシステム、10…機械装置、11…モータ、12…モータドライバ、20…コントローラ、50…内部バス、51…制御部、52…主記憶部、53…外部記憶部、54…操作部、56…送受信部、59…制御プログラム、100…エンジニアリング設定ツール、110…エンジニアリング設定ツール用プログラム、111…コントローラ用プログラム編集部、112…パラメータ設定部、113…機械装置モデル取得部、114…機械装置モデル割付部、115…シミュレータ用通信インタフェース、116…シミュレーション結果出力部、117…コントローラ用プログラム出力部、120…シミュレーション用プログラム、121…コントローラ制御シミュレーション部、122…機械装置動作シミュレーション部、123…情報管理部、130…情報記憶部、131…コントローラ用プログラム記憶部、132…パラメータ記憶部、133…機械装置モデル記憶部、134…制御関連情報記憶部、135…シミュレーション用プログラム記憶部、140…機械装置モデル、141…数値ソルバ、200…機械装置モデル割付画面、210…状態変数設定画面、211…軸名称表示欄、212…構成表示欄、213…有効無効設定欄、214…ファイルパス設定欄、215…入出力設定欄、216…設定ボタン、220,240…機械装置モデル入出力設定画面、221…入力支援ボタン、222…入出力設定欄、230…入出力設定支援画面、231…軸名称選択欄、232…構造体種別選択欄、233…データ名選択欄、241…インポートボタン、242…入出力設定部、243…機械装置モデル表示部、244…入力表示部、245…出力表示部。

Claims (6)

  1.  コントローラによる機械装置の制御のシミュレーションを行うシミュレーション装置を、
     前記コントローラのプログラムを実行することで前記コントローラの制御のシミュレーションを行うコントローラ制御シミュレーション部、
     前記機械装置のライブラリファイル化されたモデルである機械装置モデルを用いて前記機械装置の動作のシミュレーションを行う機械装置動作シミュレーション部、
     として機能させるシミュレーション用プログラム。
  2.  前記機械装置モデルは、指定された時間を経過させる要求がなされたときに現在時刻から当該時間が経過した次の時刻における前記機械装置の状態を示す情報を出力するモデルであり、
     前記機械装置動作シミュレーション部が前記機械装置モデルから出力される情報の読み取りを開始してから次に出力される情報の読み取りを開始するまでの時間の刻み幅であるコミュニケーションステップサイズは、前記コントローラが制御を行う演算処理の周期と同一の時間である、
     請求項1に記載のシミュレーション用プログラム。
  3.  前記機械装置モデルは、指定された時刻における前記機械装置の状態変数の時間微分の値を示す情報を出力するモデルであり、
     前記機械装置モデルにおいて前記時間微分を行う時間ステップから次の時間ステップまでの時間の刻み幅である積分ステップは、前記コントローラが制御を行う演算処理の周期と同一の時間である、
     請求項1に記載のシミュレーション用プログラム。
  4.  前記シミュレーション装置を、
     前記プログラムで使用される前記機械装置の状態変数に前記機械装置モデルを割り付ける機械装置モデル割付部、
     として更に機能させる請求項1に記載のシミュレーション用プログラム。
  5.  コントローラによる機械装置の制御のシミュレーションを行うシミュレーション装置であって、
     前記コントローラのプログラムを実行することで前記コントローラの制御のシミュレーションを行うコントローラ制御シミュレーション部と、
     前記機械装置のライブラリファイル化されたモデルである機械装置モデルを外部の装置から取得する機械装置モデル取得部と、
     前記機械装置モデルを用いて前記機械装置の動作のシミュレーションを行う機械装置動作シミュレーション部と、
     を備えるシミュレーション装置。
  6.  コントローラによる機械装置の制御のシミュレーションを行うシミュレーション装置の制御方法であって、
     前記シミュレーション装置が前記コントローラのプログラムを実行することで前記コントローラの制御のシミュレーションを行うコントローラ制御シミュレーションステップと、
     前記シミュレーション装置が前記機械装置のライブラリファイル化されたモデルである機械装置モデルを用いて前記機械装置の動作のシミュレーションを行う機械装置動作シミュレーションステップと、
     を含む制御方法。
PCT/JP2022/018042 2022-04-18 2022-04-18 シミュレーション用プログラム、シミュレーション装置及び制御方法 WO2023203604A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2022562824A JP7258246B1 (ja) 2022-04-18 2022-04-18 シミュレーション用プログラム、シミュレーション装置及び制御方法
PCT/JP2022/018042 WO2023203604A1 (ja) 2022-04-18 2022-04-18 シミュレーション用プログラム、シミュレーション装置及び制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/018042 WO2023203604A1 (ja) 2022-04-18 2022-04-18 シミュレーション用プログラム、シミュレーション装置及び制御方法

Publications (1)

Publication Number Publication Date
WO2023203604A1 true WO2023203604A1 (ja) 2023-10-26

Family

ID=85980396

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/018042 WO2023203604A1 (ja) 2022-04-18 2022-04-18 シミュレーション用プログラム、シミュレーション装置及び制御方法

Country Status (2)

Country Link
JP (1) JP7258246B1 (ja)
WO (1) WO2023203604A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016185590A1 (ja) * 2015-05-20 2016-11-24 三菱電機株式会社 多軸機械装置シミュレータ、運転指令装置の設計支援装置、電動機制御装置の設計支援装置及び電動機の容量選定装置
WO2018070041A1 (ja) * 2016-10-14 2018-04-19 三菱電機株式会社 シミュレーション装置
CN110764434A (zh) * 2019-10-17 2020-02-07 盐城工学院 一种虚实结合的电气控制及智能控制三维虚拟仿真实验研究平台装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002163020A (ja) * 2000-11-27 2002-06-07 Matsushita Electric Works Ltd プログラマブルコントローラにおける異常検出方法およびその装置
JP2016012191A (ja) * 2014-06-27 2016-01-21 オムロン株式会社 情報処理装置、情報処理方法、およびプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016185590A1 (ja) * 2015-05-20 2016-11-24 三菱電機株式会社 多軸機械装置シミュレータ、運転指令装置の設計支援装置、電動機制御装置の設計支援装置及び電動機の容量選定装置
WO2018070041A1 (ja) * 2016-10-14 2018-04-19 三菱電機株式会社 シミュレーション装置
CN110764434A (zh) * 2019-10-17 2020-02-07 盐城工学院 一种虚实结合的电气控制及智能控制三维虚拟仿真实验研究平台装置

Also Published As

Publication number Publication date
JPWO2023203604A1 (ja) 2023-10-26
JP7258246B1 (ja) 2023-04-14

Similar Documents

Publication Publication Date Title
JP6856768B2 (ja) 設計ツールからのデータおよびデジタルツイングラフからの知識を用いた自律生成設計合成システム
Guerra-Zubiaga et al. An approach to develop a digital twin for industry 4.0 systems: manufacturing automation case studies
EP2946252B1 (en) Automated input simulation for simulated programmable logic controller
JP5619328B1 (ja) シーケンスプログラム作成支援装置
WO2010017835A1 (en) A system and a method for off-line programming of an industrial robot
US10814486B2 (en) Information processing device, information processing method, and non-transitory computer-readable recording medium
CN110609681A (zh) 可视化配置生成web应用的系统、方法、设备及介质
CN104204976A (zh) 信息处理装置、模拟方法及程序
KR20200050885A (ko) 엔지니어링 장치, 엔지니어링 장치의 제어 방법 및 프로그램
US11467569B2 (en) Simulation device
WO2023203604A1 (ja) シミュレーション用プログラム、シミュレーション装置及び制御方法
Li et al. CNC partner: a novel training system for NC machining
CN111880793A (zh) 一种基于二进制文件的hmi组态配置系统和方法
US8666533B2 (en) System, method, and interface for virtual commissioning of press lines
JP2011175351A (ja) 画面データ作成装置、画面データ作成方法、及び画面データ作成プログラム
JP2008033572A (ja) 画面作成装置、画面作成プログラムおよびそれを記録した記録媒体
KR100877572B1 (ko) 공정 시퀀스 변환 장치와 방법 및 이를 구현할 수 있는컴퓨터로 읽을 수 있는 기록 매체
EP4296803A1 (en) Device configuration object template with user interaction for device properties generator
JP2009157534A (ja) プログラム作成支援システム、そのプログラマブルコントローラ支援装置、プログラマブル表示器支援装置
US20240103850A1 (en) Presentation design to background service binding
US11640153B2 (en) Control system, support device, and recording medium
CN111651142B (zh) 一种组态型示教器管理系统
US20230237249A1 (en) Method and system for generating an automation engineering project in a technical installation using multidisciplinary approach
JP5014094B2 (ja) マン・マシン・インターフェイス機器および作画装置
Brattwall et al. Comparison of WinMOD and SIMIT for virtual commissioning of an automotive production line

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 2022562824

Country of ref document: JP

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

Ref document number: 22938407

Country of ref document: EP

Kind code of ref document: A1