WO2025009610A1 - シミュレーションシステム、プログラム、シミュレーション方法、及びシミュレーションシステム構築装置 - Google Patents
シミュレーションシステム、プログラム、シミュレーション方法、及びシミュレーションシステム構築装置 Download PDFInfo
- Publication number
- WO2025009610A1 WO2025009610A1 PCT/JP2024/024413 JP2024024413W WO2025009610A1 WO 2025009610 A1 WO2025009610 A1 WO 2025009610A1 JP 2024024413 W JP2024024413 W JP 2024024413W WO 2025009610 A1 WO2025009610 A1 WO 2025009610A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- output
- virtual
- robot
- simulation system
- simulation
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J19/00—Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Program-controlled manipulators
- B25J9/16—Program controls
- B25J9/1656—Program controls characterised by programming, planning systems for manipulators
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Program-control systems
- G05B19/02—Program-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of program data in numerical form
- G05B19/406—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of program data in numerical form characterised by monitoring or safety
- G05B19/4069—Simulating machining process on screen
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Program-control systems
- G05B19/02—Program-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
Definitions
- the present invention relates to a simulation system, a program, a simulation method, and a simulation system construction device.
- Patent Literature 1 describes a simulation device including a first simulator that simulates control of a first machine by a first controller, a second simulator that simulates control of a second machine by a second controller, and a simulation manager that controls the progress of the simulation by the first simulator and the progress of the simulation by the second simulator so as to correspond to the relationship between the progress of the control by the first controller and the progress of the control by the second controller.
- Patent Literature 2 describes a simulation device that executes a simulation of a robot by a robot program, further using a file separate from the robot program, the separate file including an instruction that sets the state of a signal or an instruction that sets the value of a data register, the instruction being written corresponding to a line of the robot program, and the setting of the state of the signal or the value of the data register, the instruction being changed in synchronization with the execution line of the robot program, during the execution of the simulation.
- Patent document 3 describes a control device for controlling a control object, the control device comprising a PLC engine that cyclically executes a program including sequence instructions, a robot control engine for controlling a robot, an image processing engine that performs image processing on images from a camera, and a simulation module that is constructed according to user settings and that simulates at least a portion of the control object, the robot, and the camera.
- a control device for controlling a control object
- the control device comprising a PLC engine that cyclically executes a program including sequence instructions, a robot control engine for controlling a robot, an image processing engine that performs image processing on images from a camera, and a simulation module that is constructed according to user settings and that simulates at least a portion of the control object, the robot, and the camera.
- a simulation system may simulate the operation of a cell including a robot and a device.
- the simulation system may include a virtual device that simulates the output of the device.
- the simulation system may include a virtual robot controller that simulates the operation of a robot controller that controls the robot according to the output of the virtual device.
- the virtual device may perform output based on a plurality of output histories of the device.
- the virtual device may perform different outputs for each output based on the multiple output histories.
- the simulation system may further include a replanning unit that replans a program based on the operation of the robot controller based on the output of the virtual device and the result of a simulation by the virtual robot controller in response to the output.
- the replanning unit may execute a simulation by the virtual robot controller in response to the output of the virtual device multiple times based on the modified program to confirm that no errors occur.
- the replanning unit may change at least one of the selection of a command that commands the robot to operate, the order of commands, adjustment of command arguments, logic for calling commands, and timing for calling commands in the program based on the output of the virtual device and the result of a simulation by the virtual robot controller based on the program in response to the output.
- the virtual device may perform the output so that the response time differs for each output based on the multiple output histories.
- the output history of the device may include command history data indicating commands to the device and responses from the device at each time
- the simulation system may further include a response time calculation unit that calculates a plurality of response times from the input of a command to the device to the output of a response from the plurality of command history data, and the virtual device may perform the output so that the response time differs for each output based on the plurality of response times calculated by the response time calculation unit.
- the virtual device that simulates the output of a robot hand may perform the output so that the response time differs for each output based on a history of a plurality of opening and closing operations of the robot hand.
- the output history of the device may include output data output by the device to the robot controller, and the virtual device may output different output data for each output based on the plurality of output histories.
- the virtual device that simulates the output of a vision sensor that recognizes a workpiece may output a different recognition result for each output based on a plurality of recognition results of the vision sensor.
- the simulation system may further include an image creation unit that creates a different image for each output based on the plurality of recognition results of the vision sensor, and the virtual device may output the recognition result of the workpiece in the image.
- the virtual device may select and output one output history that is different from the multiple output histories for each output.
- the virtual device may select and output the output history in chronological order from the multiple output histories in time series.
- Two or more of the virtual devices may select and output one output history at a timing corresponding to each other from the multiple output histories of the devices to which the virtual devices respectively correspond.
- the virtual robot controller may perform a simulation based on the operation history of the robot controller, and the virtual device may select and output one output history that corresponds to the timing of the operation history based on the virtual robot controller from the multiple output histories.
- the simulation system may further include an acquisition unit that acquires a trigger condition and an output target when the trigger condition is satisfied, and a creation unit that creates the virtual device that outputs the output target when the trigger condition is satisfied based on the trigger condition and the output target acquired by the acquisition unit.
- the simulation system may further include a communication adjustment unit that adjusts a communication delay between the virtual device and the virtual robot controller based on multiple communication delay histories between the device and the robot controller.
- a program for causing a computer to function as the simulation system.
- a simulation system construction device for constructing a simulation system that simulates the operation of a cell including a robot and a device.
- the simulation system construction device may include a creation unit that creates a virtual device that simulates the output of the device, and that outputs based on a plurality of output histories of the device to a virtual robot controller that simulates the operation of a robot controller that controls the robot according to the output of the virtual device.
- a simulation system for simulating the operation of a cell including a robot and a device.
- the simulation system may include a virtual device for simulating the output of the device.
- the simulation system may include a robot controller for controlling the robot according to the output of the virtual device.
- the virtual device may perform output based on a plurality of output histories of the device.
- FIG. 1 shows a schematic diagram of an example of a simulation system 10.
- the simulation system 10 simulates the operation of a cell 22 that includes robots and devices in a real environment.
- FIG. 1 a real environment is illustrated in which a CC (Cell Controller) 20, an RC (Robot Controller) 30, a robot 40 which is a vertical articulated robot, a robot hand 51 and a vision sensor 52 disposed at the tip of the robot 40, a camera 53, a workpiece 60, a platform 72, a platform 74, a platform 76, and a DB 80 are disposed.
- the real environment targeted by the simulation system 10 is not limited to this, and the simulation system 10 is capable of simulating the operation of a cell 22 including any type of industrial robot and any type of device.
- the CC20 controls the cell 22 according to the program.
- the CC20 may control the coordination between tasks of equipment such as robots and devices, the execution timing, and task transitions.
- the CC20 may coordinate with a higher-level controller.
- the CC20 may coordinate with an HMI (Human Machine Interface).
- the CC20 may coordinate with an engineering tool capable of generating programs for controllers, robots, devices, and the like.
- the CC20 may be, for example, a programmable logic controller.
- the CC20 may be connected to an RC30. In the example shown in FIG. 1, two RC30s are connected to the CC20.
- a device may be connected to the CC20.
- a camera 53 is connected to the CC20.
- the RC 30 controls the robot 40 according to a program. For example, the RC 30 repeatedly executes segment processing, which operates the robot 40, the robot hand 51, and the vision sensor 52 in response to control commands, at a predetermined control period. In this embodiment, the segment processing may be processing assigned per cycle.
- the control command includes, for example, a command to execute a job program.
- the job program is an operation program that includes one or more operation commands in a time series. The job program may be prepared in advance and stored in the RC 30.
- the operation command of the robot 40 may include a target position and posture of the tip of the robot 40 and a target moving speed of the tip to the target position and posture
- the segment processing may include calculating the target position and posture of the tip for each control cycle, calculating the operation target values of each of the actuators for moving the tip to the calculated target position and posture, and operating each of the actuators according to the calculated operation target values.
- the operation command of the robot hand 51 may include, for example, a close command including closing the hand and the time until the hand is closed or the speed at which the hand is closed.
- the operation command of the robot hand 51 may include a close confirmation command for confirming that the hand is closed.
- the operation command of the robot hand 51 may include, for example, an open command including opening the hand and the time until the hand is opened or the speed at which the hand is opened.
- the operation command of the robot hand 51 may include an open confirmation command for confirming that the hand is open.
- the operation command of the vision sensor 52 includes, for example, a recognition command for capturing an image of a workpiece and performing recognition.
- the CC 20 repeatedly executes segment processing at a predetermined control period to coordinate the operations of multiple robots 40.
- the segment processing includes, for example, receiving status information of multiple robots 40 and workpieces 60 from multiple RCs 30, etc., identifying the robot 40 that should start operating based on the program and the status information, and sending a control command to the robot 40 to be controlled to start the operation.
- CC20 may transmit a recognition command to recognize the status of cell 22 to camera 53, which captures an image of the entire cell 22.
- camera 53 may capture an image of the entire cell 22 and transmit the recognition result to CC20.
- CC20 may create or update status information of cell 22, for example, using the recognition result by camera 53 and the measurement results by other sensors in cell 22.
- the CC 20 determines based on the status information that the workpiece 60 has been placed on the platform 72, it transmits a control command to the first RC 30, including a command to execute a job program for the workpiece 60.
- the first RC 30 controls the first robot 40, the first robot hand 51, and the first vision sensor 52 in order to move the workpiece 60 from the platform 72 to the platform 74 in accordance with the control command.
- the first RC 30 transmits to the first robot 40 an operation command including a target position, a target attitude, and a target speed of the tip of the workpiece 60 relative to the platform 72.
- the first RC 30 transmits to the first vision sensor 52 an operation command including capturing an image of the workpiece 60 and recognizing it, and transmits to the first robot hand 51 an operation command including closing the hand and the time until closing, and a closing confirmation command.
- the first robot hand 51 may start the operation of closing the hand according to the operation command, and may transmit a completion report to the first RC 30 in response to the hand being closed.
- the hand may be closed, for example, by a sensor that detects the closed end built into the hand.
- the first RC 30 transmits an operation command to the first robot 40, including a target position, a target posture, and a target speed of the tip portion relative to the platform 74.
- the first RC 30 transmits an operation command to the first robot hand 51, including an instruction to open the hand and a time until the hand is opened, and an open confirmation command.
- the first RC 30 transmits an operation command to the first robot 40, including a target position, a target posture, and a target speed of the tip portion relative to the default position.
- the CC 20 determines based on the status information that the workpiece 60 has been placed on the platform 74, it transmits a control command to the second RC 30, including a command to execute a job program for the workpiece 60.
- the second RC 30 controls the second robot 40, the second robot hand 51, and the second vision sensor 52 in order to move the workpiece 60 from the platform 74 to the platform 76 in accordance with the control command.
- the second RC 30 transmits to the second robot 40 an operation command including a target position, a target attitude, and a target speed of the tip of the workpiece 60 relative to the platform 74.
- the second RC 30 transmits to the second vision sensor 52 an operation command including capturing an image of the workpiece 60 and recognizing it, and transmits to the second robot hand 51 an operation command including closing the hand and the time until closing, and a closing confirmation command.
- the second RC 30 transmits to the second robot 40 an operation command including a target position, a target posture, and a target speed of the tip portion relative to the platform 76.
- the second RC 30 transmits to the second robot hand 51 an operation command including an instruction to open the hand and a time until opening, and an open confirmation command.
- the second RC 30 transmits to the second robot 40 an operation command including a target position, a target posture, and a target speed of the tip portion relative to the default position.
- the CC 20 may also realize an autonomous distributed robot cell.
- the CC 20 may act as an information bulletin board, and multiple RCs 30 may operate autonomously based on information from the information bulletin board.
- the CC 20 may disclose the results of operations performed by each of the multiple RCs 30 as status information, and the multiple RCs 30 may make decisions and perform operations based on the disclosed status information.
- the DB (Database) 80 accumulates various data in the real environment.
- the DB 80 may accumulate the operation history of each device in the real environment.
- the DB 80 may accumulate measurement data from each device in the real environment.
- the DB 80 may accumulate feedback data from each device in the real environment.
- the DB 80 may accumulate measurement data measured by various sensors (not shown) placed in the real environment.
- the DB 80 may accumulate measurement data measured by a sensor that measures the movement of the robot 40 and a sensor that measures the movement of the robot hand 51.
- the DB 80 may accumulate the communication delay history of each device in the real environment.
- DB80 may store command history data including a history of commands, instructions, responses, etc. exchanged within cell 22.
- the command history data may include timestamps for each command, instruction, and response.
- the DB 80 may accumulate the output history of the device.
- the output history includes, for example, the response time of the device to a command or instruction.
- the response time may be the time from when a command or instruction is input to the device until the device outputs a response.
- the response time of the device is the time from when a command from the RC 30 is input to the device until the device outputs a response.
- the operation result of the robot hand 51 includes the response time from when an opening/closing command is input to the robot hand 51 until the robot hand 51 opens and closes the hand and transmits a response.
- the opening and closing operation of the robot hand 51 is not limited to the operation of opening and closing the hand, but may be an operation of simply opening the hand, or may be an operation of simply closing the hand.
- the output history includes, for example, output data output by the device.
- the output data of the device is data output by the device to the RC 30.
- the output history of the vision sensor 52 includes the recognition result of the workpiece 60.
- the recognition result of the workpiece 60 may include at least one of the position, posture, and type of the recognized workpiece 60.
- the DB80 may store the output history of the device in association with environmental information indicating the environment of the device when the device produced the output.
- the environmental information may indicate the environment of the space in which the device is installed.
- the environmental information may be measured, for example, by a sensor placed in the space of cell 22.
- the environment of the space may include the temperature of the space.
- the environment of the space may include the humidity of the space.
- the environmental information may include the operating period of the device.
- the operating period of the device may be the period of time since the device was newly installed and started operating.
- the simulation system 10 may include a virtual environment 101 that is a virtualized version of a real environment, constructed by a simulator 100.
- the virtual environment 101 includes a VD (Virtual Device) 500 that simulates the output of a device.
- the virtual environment 101 includes a VRC (Virtual Robot Controller) 300 that simulates the operation of an RC 30.
- the virtual environment 101 includes a VR (Virtual Robot) 400 that simulates a robot 40.
- the virtual environment 101 may include a VCC (Virtual Cell Controller) 200 that simulates a CC 20.
- the simulator 100 may be an example of a simulation system construction device.
- the VRC300 may simulate the operation of the RC30 according to the output of the VD500. Simulating the operation of the RC30 according to the output of the VD500 may include simulating the operation of the RC30 directly using the output of the VD500, or may include simulating the operation of the RC30 indirectly using the output of the VD500. For example, the VRC300 obtains the result of the output from the VD500 being processed in the VCC200, and simulates the operation of the RC30 using the obtained result. As a specific example, the VRC300 obtains the result of the VCC200 using the output from the VD500 for control, and uses the obtained result to control the VR400, etc. The VCC200 may simulate the operation of the CC20 according to the output of the VRC300. The VCC200 may simulate the operation of the CC20 according to the output of the VD500.
- the simulation system 10 may include a simulator 100. That is, the simulation system 10 may include the simulator 100 and a virtual environment 101 constructed by the simulator 100.
- VCC200 may execute a program that controls segment processing based on production instruction information from a higher-level controller.
- the program used by VCC200 may be created or configured by an engineering tool.
- the VRC 300 may control the VR 400 in the same manner as the RC 30 controls the robot 40.
- the programs used by the VRC 300 may be created or configured by the pendant software.
- the VRC 300 may be capable of creating programs that can be used directly in the robot 40.
- the VD500 performs output based on multiple output histories of the real device to be simulated.
- the VD500 may perform output based on multiple output histories of the real device so that the output varies in the same way as the real device.
- the VD500 may perform output using multiple output histories of the real device stored in the DB80.
- the output of the VD500 can be made closer to the output of the actual device, which contributes to improving the accuracy of the simulation.
- improve the accuracy of the simulation it is possible to improve the possibility that the expected operation will be realized when a program adjusted or created based on the simulation results is reflected in the actual device. For example, when an adjustment is made based on the simulation results to increase the throughput of the cell 22, it is possible to increase the throughput as expected and prevent unexpected errors from occurring due to the adjustment. For example, even when the operation of the cell 22 or the layout of the cell 22 is changed based on the simulation results to realize a variant, it is possible to appropriately process the target item and prevent unexpected errors from occurring.
- VD500 may perform different outputs for each output based on the multiple output histories of the actual device.
- the output of the actual device is often not the same for each output.
- the output of VD500 can be made closer to the output of the actual device, which contributes to improving the accuracy of the simulation.
- the arrangement of the workpiece 60 in the virtual environment 101 may be changed according to the output by the VD500.
- the arrangement of the workpiece 60 in the virtual environment 101 is changed according to the variation.
- the recognition results of the VD500 can be reflected in the variables for the operation of the VCC200 and VRC300, and can also be reflected in the placement of the subject workpiece 60, etc.
- the VD500 selects one output history from a plurality of output histories of the real device for each output and outputs the selected output history. For example, the VD500 selects one response time from a plurality of response times for each output and performs output at the selected response time. For example, the VD500 selects one output data from a plurality of output data for each output and outputs the selected output data. It is also possible to model the output variation from a plurality of output histories and use it, but there is a possibility that an error with the actual data may occur during the modeling process. If an error occurs, the output of the VD500 may differ from the output of the real device, and the accuracy of the simulation may decrease. On the other hand, the VD500 can perform a proven output by the real device by using a plurality of output histories of the real device as they are, which contributes to improving the accuracy of the simulation.
- the output variability of an actual device can depend on the time series. For example, if the response time is delayed relative to a reference time, there are cases where the delayed state continues, and cases where the delay decreases the next time after the delay. As a specific example, if feedback control is performed on the response time, there may be a tendency for the delay to decrease the next time after the delay. In contrast, if a model is used or multiple output histories are selected randomly, it becomes impossible to reproduce the dependency of the time series, but by having the VD500 select output histories in chronological order, it is possible to reproduce the dependency of the variability on the time series.
- the VRC300 may perform a simulation based on the operation history of the RC30, and the VD500 may select and output one output history corresponding to the timing of the operation history based on the VRC300 from multiple output histories of the actual device.
- Table 1 shows a simplified example of a time series relationship between the operation history of the RC30 and the output history of the device to be simulated by the VD500.
- the VRC300 performs a simulation of an operation using the operation history Ra, performs a simulation of an operation using the operation history Rb, and performs a simulation of an operation using the operation history Rc.
- the VD500 selects an output history Da corresponding to the timing of the operation history Ra and performs output using the output history Da.
- the VD500 selects an output history Db corresponding to the timing of the operation history Rb and performs output using the output history Db.
- the VD500 selects an output history Dc corresponding to the timing of the operation history Rc and performs output using the output history Dc.
- Two or more VDs 500 may each select one output history at a corresponding timing from among a plurality of output histories of the actual devices to which the VDs 500 respectively correspond, and output the selected output history.
- the first VD500 and the second VD500 which respectively simulate the robot hand 51 and the vision sensor 52 arranged at the tip of one of the two robots 40 shown in FIG. 1, select and output one output history at a timing corresponding to each other from the multiple output histories of the robot hand 51 and the vision sensor 52.
- Table 2 below shows a simplified example of the chronological relationship between the output history of the vision sensor 52 and the output history of the robot hand 51.
- the first VD500 and the second VD500 first select and output the output history Aa and the output history Ba at a timing corresponding to each other, then select and output the output history Ab and the output history Bb at a timing corresponding to each other in chronological order, and then select and output the output history Ac and the output history Bc at a timing corresponding to each other in chronological order.
- the first VD500 and second VD500 which respectively simulate the first robot hand 51 and the first vision sensor 52 arranged at the tip of the first robot 40 of the two robots 40 shown in FIG. 1, and the third VD500 and fourth VD500, which respectively simulate the second robot hand 51 and the second vision sensor 52 arranged at the tip of the second robot 40, each select and output one output history at a corresponding timing from the multiple output histories of the first robot hand 51, the first vision sensor 52, the second robot hand 51, and the second vision sensor 52.
- VD500 corresponding to two or more related devices use output histories with different timings, it will reproduce variations that differ from the actual environment, which can reduce the accuracy of the simulation. For example, in a case where a first device operates, then a second device operates, and then the first device operates, if an output history unrelated to this order is used, the variations will differ from the real environment, whereas by selecting and using an output history in this order, it is possible to reproduce the same variations as in the real environment, which can contribute to improving the accuracy of the simulation.
- the VD500 may perform output using a probability distribution created based on multiple output histories. By using the probability distribution, values included in the multiple output histories and values not included in the multiple output histories are output according to the occurrence probability of each value in the multiple output histories. By executing a simulation in which the VD500 performs output using the probability distribution, it is possible to confirm an event that occurs only 0.1% or 0.01% in the probability distribution by the simulation. This makes it possible to easily generate an event that is difficult to generate in an actual machine during the start-up period of equipment, for example, by the simulation. In addition, the VD500 may perform output using a learning model that performs output according to the tendency of the multiple output histories, which is created by machine learning using the multiple output histories.
- the VD500 may perform a different output for each output by randomly generating a value for each output within a range from the minimum value to the maximum value of multiple output histories.
- the VD500 identifies the minimum and maximum values of multiple response times and randomly generates a response time for each output within a range from the minimum value to the maximum value.
- the VD 500 may perform output according to an output that is manually set.
- the simulator 100 provides a setting screen on which the output for each output can be set to the user, and accepts the setting of the output for each output.
- the VD 500 performs output for each output set by the user.
- the VD 500 may perform output using a plurality of output histories of the actual device, the plurality of output histories having associated environmental information corresponding to the simulation environment.
- VD500 performs output using, of the multiple output histories, multiple output histories whose associated environmental information matches or approximates the environment of the space being simulated.
- VD500 performs output using, of the multiple output histories of the actual device, multiple output histories whose associated environmental information matches or approximates the specified temperature and humidity. This makes it easier to reproduce the output variation when the actual device operates in the same environment as the environment of the space being simulated, contributing to improved accuracy of the simulation.
- VD500 performs output using, of the multiple output histories, multiple output histories whose associated environmental information corresponds to the operating period of the device to be simulated.
- VD500 when simulating a brand new device, VD500 performs output using, of the multiple output histories, multiple output histories whose associated environmental information indicates that the device is brand new. Brand new may mean, for example, that the operating period is within one year.
- VD500 when simulating a device after five years, VD500 performs output using, of the multiple output histories, multiple output histories whose associated environmental information indicates that the device has been in operation for five years. This makes it easier to reproduce the output variation of a brand new device when simulating a brand new device, and easier to reproduce the output variation of a device after five years, which contributes to improving the accuracy of the simulation.
- the simulation system 10 may include a VD500 that simulates the output of a real device, and a RC30 that controls the robot 40 according to the output of the VD500.
- the simulator 100 may create only the VD500.
- By creating a VD500 that performs output based on a plurality of output histories of the real device according to commands from the RC30 of the real device it is possible to simulate input/output between the RC30 and the device in a form close to a real environment. Furthermore, in order to simulate input/output between the RC30 and various devices, it is possible to perform the simulation without actually preparing the devices.
- FIG. 2 shows an example of a schematic functional configuration of the simulator 100.
- the simulator 100 includes a memory unit 102, an acquisition unit 104, a creation unit 106, a history reference unit 108, a response time calculation unit 110, a simulation execution unit 112, an image creation unit 114, a communication adjustment unit 116, an application unit 118, a re-planning unit 120, a presentation unit 122, and a change acceptance unit 124. Note that it is not essential that the simulator 100 includes all of these.
- the storage unit 102 stores various data. For example, some or all of the data stored in the DB 80 is copied to the storage unit 102.
- the acquisition unit 104 acquires various data. For example, the acquisition unit 104 acquires data input by a user of the simulator 100.
- the storage unit 102 stores the data acquired by the acquisition unit 104.
- the acquisition unit 104 may acquire data for creating the virtual environment 101.
- the acquisition unit 104 acquires layout data of the cell 22.
- the layout data of the cell 22 may include the arrangement of each device in the cell 22.
- the acquisition unit 104 may acquire data for simulating the CC20.
- the data for simulating the CC20 may include data indicating the function of the CC20 and a program for the CC20, etc.
- the acquisition unit 104 may acquire data for simulating the RC30.
- the data for simulating the RC30 may include data indicating the function of the RC30 and a program for the RC30, etc.
- the acquisition unit 104 may acquire data for simulating the robot 40.
- the data for simulating the robot 40 may include data indicating the function of the robot 40 and a program for the robot 40, etc.
- the acquisition unit 104 may acquire data for simulating a device. For example, the acquisition unit 104 acquires a trigger condition and an output target when the trigger condition is satisfied.
- the creation unit 106 creates the virtual environment 101 using the data stored in the storage unit 102. For example, the creation unit 106 creates a VCC 200, a VRC 300, a VR 400, a VD 500, etc., and performs a layout to create the virtual environment 101.
- the creation unit 106 creates a VD 500 that outputs the output target when the trigger condition is satisfied, based on the trigger condition and the output target acquired by the acquisition unit 104.
- the history reference unit 108 references the output history of the actual device that is simulated by the VD500 created by the creation unit 106.
- the creation unit 106 may configure the VD500 to perform output based on the multiple output histories referenced by the history reference unit 108.
- history reference unit 108 when referring to a response time, if DB 80 stores the response times of the actual device, history reference unit 108 refers to the response times stored in DB 80. If the response times of the actual device are stored in memory unit 102, history reference unit 108 may refer to the response times stored in memory unit 102.
- history reference unit 108 when referring to output data, if DB 80 stores output data of a real device, history reference unit 108 refers to the output data stored in DB 80. If output data of a real device is stored in storage unit 102, history reference unit 108 may refer to the output data stored in storage unit 102.
- the creation unit 106 may use multiple output histories referenced by the history reference unit 108 to create a list of the output for each output of the VD500. For example, when the VD500 performs the same operation three times and outputs each time, and the response time is to be varied, the creation unit 106 creates a list including the first response time, the second response time, and the third response time.
- the response time for each operation may be the response time itself, for example, the first response time is 2.9 seconds, the second response time is 3.0 seconds, and the third response time is 3.1 seconds.
- the response time for each operation may be the difference from the default response time, for example, when the default response time is 3.0 seconds, the first response time is -0.1 seconds, the second response time is 0 seconds, and the third response time is +0.1 seconds.
- the VD500 may use the list to make the first response, the second response, and the third response.
- the simulation execution unit 112 executes a simulation using the virtual environment 101 created by the creation unit 106.
- the simulation execution unit 112 simulates the operation of cell 22 by operating VCC200, VRC300, VR400, and VD500 included in the virtual environment 101.
- VD500 By having VD500 output based on multiple output histories of real devices, the output of VD500 can be made closer to the real environment, and the simulation execution unit 112 can execute a highly accurate simulation.
- a user of the simulator 100 can consider program changes based on the operation of each device in the virtual environment 101 while referring to the simulation results by the simulation execution unit 112.
- the simulation execution unit 112 may execute a simulation using the virtual environment 101 created by the creation unit 106 in a state in which a real environment does not exist.
- the creation unit 106 may create a VD500 that performs output according to an output that has been manually set.
- the simulation execution unit 112 executing a simulation using such a virtual environment 101, it is possible to simulate the operation of the entire cell 22 before constructing the real environment, and to verify the feasibility of the cell 22, such as interference and cycle time.
- data in the real environment is accumulated in the DB 80, and the creation unit 106 constructs the virtual environment 101, which is a virtualization of the real environment.
- the image creation unit 114 creates various images in the virtual environment 101. For example, the image creation unit 114 creates images that are the recognition results of the workpiece 60 by the VD500 that simulates the vision sensor 52. The image creation unit 114 creates a different image for each output, for example, based on multiple recognition results of the workpiece 60 by the vision sensor 52.
- the recognition results of the workpiece 60 by the vision sensor 52 may include the position, posture, and type of the workpiece 60, and may also include the image of the workpiece 60 itself.
- the VD500 may output the recognition results of the workpiece 60 in the image. By the VD500 outputting the recognition results of the workpiece 60 in the image that is created to be different for each output, a different recognition result is output for each output.
- the communication adjustment unit 116 adjusts the communication between each device in the virtual environment 101.
- the communication adjustment unit 116 may adjust the communication between each device in the virtual environment 101 based on the communication delay history between each device in the real environment stored in DB80.
- the communication adjustment unit 116 adjusts the communication delay between VRC300 and VD500 based on multiple communication delay histories between RC30 and the device.
- the communication adjustment unit 116 may adjust the communication delay between VRC300 and VD500 based on multiple communication delay histories so that the communication delay between VRC300 and VD500 varies similarly to the real environment.
- the communication adjustment unit 116 selects one communication delay history that is different for each communication from multiple communication delay histories, and reflects the selected communication delay history in the communication between VRC300 and VD500.
- the communication adjustment unit 116 may adjust the communication delay between the VRC300 and the VD500 so that it varies similarly to the real environment by using a probability distribution, a learning model, or the minimum and maximum values of the communication delay history.
- the communication adjustment unit 116 may adjust the communication delay between the VCC200 and the VD500 based on multiple communication delay histories between the CC20 and the device, just as it adjusts the communication delay between the VRC300 and the VD500 based on multiple communication delay histories between the RC30 and the device.
- the application unit 118 applies the program changes of each device in the virtual environment 101, which have been examined by the simulation performed by the simulation execution unit 112, to the real environment. For example, the application unit 118 applies the program changes of the VRC 300 to the RC 30. For example, the application unit 118 applies the program changes of the VCC 200 to the CC 20.
- the re-planning unit 120 re-plans a program based on the operation of the equipment in the real environment, based on the results of the simulation by the simulation execution unit 112.
- the program re-planned by the re-planning unit 120 may be applied to the equipment in the real environment by the application unit 118.
- the re-planning unit 120 re-plans the program based on which the RC30 operates, based on the output of the VD500, which varies based on multiple output histories of the actual device, and the results of a simulation by the VRC300 in response to that output.
- the VD500 whose output varies based on multiple output histories of the actual device
- the re-planning unit 120 changes at least one of the following in the program: selection of commands to instruct the robot's operation, order of commands, adjustment of command arguments, logic for invoking commands, and timing for invoking commands, based on the output of the VD500 and the results of a simulation by the VRC300 based on a program corresponding to the output.
- the re-planning unit 120 modifies the program so as to avoid an error when an error occurs in a simulation performed while varying the output of the VD500.
- an error occurs such as a collision with an obstacle while the robot 40 is operating
- the re-planning unit 120 modifies the teaching points of the robot 40 so as to prevent the collision from occurring.
- the re-planning unit 120 may execute a simulation using the VRC300 according to the output of the VD500 multiple times based on the modified program to confirm that no error occurs.
- the output of the VD500 is fixed, even if it is confirmed that no error occurs, the possibility of an error occurring due to variation in the output of the device in a real environment cannot be denied.
- the VD500 of this embodiment it is possible to reproduce the variation in output that may actually occur, so that it is possible to reduce the possibility of an unexpected error occurring after applying the modified program to a real environment.
- the re-planning unit 120 may re-plan a program based on when the CC20 operates based on the output of the VD500, which varies based on multiple output histories of the actual device, and the results of a simulation by the VRC300 in response to that output, in the same way that the re-planning unit 120 re-plans a program based on when the CC20 operates based on the output of the VD500, which varies based on multiple output histories of the actual device, and the results of a simulation by the VCC200 in response to that output.
- the presentation unit 122 presents to the user information related to the replanning of the program by the replanning unit 120.
- the presentation unit 122 may present the information to the user by displaying the information on a display or transmitting the information to a communication terminal owned by the user.
- the presentation unit 122 presents to the user a program that has been confirmed to cause no errors by performing a simulation multiple times by the VRC300 according to the output of the VD500 based on the modified program as a proposed change to the program of the RC30.
- the presentation unit 122 presents to the user a program that has been confirmed to cause no errors by performing a simulation multiple times by the VCC200 according to the output of the VD500 based on the modified program as a proposed change to the program of the CC20.
- the change acceptance unit 124 accepts a program change instruction from a user who has viewed the proposed change to the program.
- the change acceptance unit 124 accepts a change instruction to change the program of the RC30 according to the proposed change to the program presented by the presentation unit 122, for example.
- the application unit 118 may apply the changed program to the RC 30.
- the change reception unit 124 may, for example, receive a change instruction to change the program of the CC 20 in accordance with the proposed change to the program presented by the presentation unit 122.
- the application unit 118 may apply the changed program to the CC 20.
- FIG. 3 shows a schematic diagram of an example of the virtual environment 101.
- the virtual environment 101 shown in FIG. 3 includes a VCC 200, a VRC 300, a VR 400, a V robot hand 510 that simulates the robot hand 51, a V vision sensor 520 that simulates the vision sensor 52, a V camera 530 that simulates the camera 53, a V work 600, a V stand 720, a V stand 740, a V stand 760, and a VDB (Virtual Database) 800.
- VCC 200 a VRC 300
- VR 400 VR 400
- V robot hand 510 that simulates the robot hand 51
- V vision sensor 520 that simulates the vision sensor 52
- V camera 530 that simulates the camera 53
- V work 600 a V stand 720, a V stand 740, a V stand 760
- VDB Virtual Database
- the VCC200 controls the cells of the virtual environment 101 according to a program.
- the VRC300 controls the VR400 according to a program.
- the V robot hand 510 outputs based on multiple output histories of the robot hand 51.
- the V robot hand 510 may output so as to reproduce the output variability of the robot hand 51.
- the V vision sensor 520 outputs based on multiple output histories of the vision sensor 52.
- the V vision sensor 520 may output so as to reproduce the output variability of the vision sensor 52.
- the V camera 530 outputs based on multiple output histories of the camera 53.
- the V camera 530 may output so as to reproduce the output variability of the camera 53.
- the VDB800 accumulates various data within the virtual environment 101.
- the simulation execution unit 112 may execute a simulation using the virtual environment 101.
- the simulation execution unit 112 executes a simulation in which the first VR 400 grasps the V work 600 placed on the V stand 720 and moves it onto the V stand 740, and the second VR 400 grasps the V work 600 placed on the V stand 740 and moves it to the V stand 760.
- each VD 500 outputs so as to reproduce the variability of the target real machine based on the multiple output histories of the target real machine.
- the V camera 530 varies the response time or the recognition result based on the multiple output histories of the camera 53.
- the V vision sensor 520 varies the recognition result or the response time of the V work 600 based on the multiple output histories of the vision sensor 52.
- the V robot hand 510 varies the response time based on the multiple output histories of the robot hand 51.
- the simulation execution unit 112 may reflect the recognition result in the V work 600.
- the simulation execution unit 112 may change the arrangement of the V work 600 so that it becomes the arrangement indicated by the recognition result output by the V vision sensor 520. This makes it possible to vary the output from the V vision sensor 520 to the VRC 300 in accordance with the variation in the output from the vision sensor 52 to the RC 30, and to change the arrangement of the target V work 600 in accordance with the variation, so that the variation can be reflected in subsequent situations in which the V work 600 is handled, contributing to improved accuracy of the simulation.
- FIG. 4 shows an example of a process flow in the simulation system 10.
- the simulator 100 creates a VD 500 that simulates a target device is described.
- step (sometimes abbreviated to S) 102 the acquisition unit 104 acquires a trigger condition and an output target when the trigger condition is satisfied.
- the acquisition unit 104 acquires the receipt of a command from the VRC 300 as a trigger condition, and acquires, as an output target, a response to be output by executing an operation according to the command.
- the history reference unit 108 references multiple output histories of the target device.
- the creation unit 106 creates a VD500 that outputs the output target when the trigger condition acquired by the acquisition unit 104 in S102 is satisfied.
- the creation unit 106 creates a VD500 that performs output based on the multiple output histories referenced by the history reference unit 108 in S104.
- the creation unit 106 uses the multiple output histories, for example, to create a list including the output for each output of the VD500, and sets the VD500 to perform output according to the list.
- FIG. 5 shows an example of a process flow in the simulation system 10.
- the VD500 receives output settings based on multiple output histories, executes operations according to commands from the VRC300, and executes a task of performing an operation to output to the VRC300 a predetermined number of times.
- the VD500 accepts output settings made by the creation unit 106.
- the creation unit 106 sets the output of the VD500 so that the output of the VD500 varies for each output.
- the creation unit 106 sets the VD500 so that output is performed using a list including multiple output histories of the target device in chronological order.
- the VD500 receives a command from the VRC300.
- the VD500 performs output to the VRC300 according to the output settings received in S202.
- the VD500 performs output using the first output history in the list.
- VD500 receives a command from VRC300.
- VD500 performs output using the second output history in the list. In this way, VD500 selects and uses output history from the first output history in the list for each output. This causes the output of VD500 to vary for each output. Note that while FIG. 5 describes a case in which VD500 performs an operation in response to a command from VRC300 and performs output to VRC300, the same may be true for a case in which VD500 performs an operation in response to a command from VCC200 and performs output to VCC200.
- FIG. 6 shows an example of a process flow in the simulation system 10.
- the re-planning unit 120 re-plans a program based on the operation of the VRC 300 while causing the simulation execution unit 112 to execute a simulation in which the same task is repeatedly executed in the virtual environment 101.
- the simulation execution unit 112 starts executing the task.
- VRC300 operates according to a program
- VR400 operates according to commands from VRC300
- VD500 performs output based on multiple output histories of the actual device in response to commands from VRC300.
- the output of VD500 varies for each output.
- the re-planning unit 120 re-plans the program for the VRC 300.
- the re-planning unit 120 re-plans the program for the VRC 300 so as to avoid the error that has occurred.
- the re-planning unit 120 determines whether or not to end the simulation. If it determines not to end the simulation, the process returns to S302, and if it determines to end the simulation, the process proceeds to S312.
- the re-planning unit 120 determines to end the simulation if the task has been executed a predetermined number of times without an error occurring. For example, if the task has been completed without an error occurring, the re-planning unit 120 counts up the number of times, and if an error occurs, the re-planning unit 120 resets the number of times.
- replanning of the program of VRC300 was executed between the start and end of the simulation (YES in S312), proceed to S314, otherwise terminate the process.
- the application unit 118 applies the finally replanned program of VRC300 to RC30. Note that in FIG. 6, the case where the replanning unit 120 replans a program based on when VRC300 operates has been described, but the replanning unit 120 may similarly replan a program based on when VCC200 operates.
- VCC200 operates according to the program
- VD500 performs output based on multiple output histories of the actual device in response to an instruction from VCC200
- the replanning unit 120 replans the program of VCC200
- the application unit 118 applies the finally replanned program of VCC200 to CC20.
- the re-planning unit 120 may perform re-planning of the VCC 200 program and re-planning of the VRC 300 program together.
- FIG. 7 shows an example of a hardware configuration of a computer 1200 functioning as a simulation system 10 or a simulator 100.
- a program installed on the computer 1200 may cause the computer 1200 to function as a virtual environment 101.
- a program installed on the computer 1200 may cause the computer 1200 to function as a simulator 100.
- Such a program may be executed by the CPU 1212 to cause the computer 1200 to perform specific operations associated with some or all of the blocks of the flowcharts and block diagrams described herein.
- Each of the VCC 200, VRC 300, VR 400, and VD 500 may be realized by one or more CPUs 1212.
- the computer 1200 includes a CPU 1212, a RAM 1214, and a graphics controller 1216, which are interconnected by a host controller 1210.
- the computer 1200 also includes input/output units such as a communication interface 1222, a storage device 1224, a DVD drive, and an IC card drive, which are connected to the host controller 1210 via an input/output controller 1220.
- the storage device 1224 may be a hard disk drive, a solid state drive, or the like.
- the computer 1200 also includes a legacy input/output unit such as a ROM 1230 and a keyboard, which are connected to the input/output controller 1220 via an input/output chip 1240.
- the CPU 1212 operates according to the programs stored in the ROM 1230 and the RAM 1214, thereby controlling each unit.
- the graphics controller 1216 obtains image data generated by the CPU 1212 and causes the image data to be displayed on the display device 1218.
- the communication interface 1222 communicates with other electronic devices via a network.
- the storage device 1224 stores programs and data used by the CPU 1212. The information processing described in the programs is read by the computer 1200, and brings about cooperation between the programs and the various types of hardware resources described above.
- the blocks in the flowcharts and block diagrams in this embodiment may represent stages of a process in which an operation is performed or "parts" of a device responsible for performing the operation. Particular stages and “parts" may be implemented by dedicated circuitry, programmable circuitry provided with computer-readable instructions stored on a computer-readable storage medium, and/or a processor provided with computer-readable instructions stored on a computer-readable storage medium.
- the dedicated circuitry may include digital and/or analog hardware circuitry and may include integrated circuits (ICs) and/or discrete circuits.
- the programmable circuitry may include reconfigurable hardware circuitry including AND, OR, XOR, NAND, NOR, and other logical operations, flip-flops, registers, and memory elements, such as, for example, field programmable gate arrays (FPGAs) and programmable logic arrays (PLAs).
- FPGAs field programmable gate arrays
- PDAs programmable logic arrays
- a computer-readable storage medium may include any tangible device capable of storing instructions that are executed by a suitable device, such that a computer-readable storage medium having instructions stored thereon comprises an article of manufacture that includes instructions that can be executed to create means for performing the operations specified in the flowcharts or block diagrams.
- Examples of computer-readable storage media may include electronic storage media, magnetic storage media, optical storage media, electromagnetic storage media, semiconductor storage media, etc.
- the computer-readable instructions may be provided to a processor or programmable circuit of a general-purpose computer, special-purpose computer, or other programmable data processing device, either locally or via a wide area network (WAN) such as a local area network (LAN), the Internet, etc., so that the processor or programmable circuit of the programmable data processing device, such as a computer, executes the computer-readable instructions to generate means for performing the operations specified in the flowcharts or block diagrams.
- WAN wide area network
- LAN local area network
- the Internet etc.
- processors include computer processors, central processing units, processing units, microprocessors, digital signal processors, controllers, microcontrollers, etc.
- a computer may include one processor or multiple processors.
- each processor executes a part of a program and passes data between processors as necessary during program execution, allowing the multiple processors to collectively execute the program.
- each of the multiple processors may execute a small part of each task by switching tasks for each time slice. In this case, which part of a program each processor executes changes dynamically. Which part of a program each of the multiple processors executes may also be statically determined by programming that takes the multiprocessor into consideration.
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manufacturing & Machinery (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Human Computer Interaction (AREA)
- Manipulator (AREA)
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202480040221.3A CN121311338A (zh) | 2023-07-05 | 2024-07-05 | 模拟系统、程序、模拟方法以及模拟系统构建装置 |
| JP2025531605A JPWO2025009610A1 (https=) | 2023-07-05 | 2024-07-05 |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US202363511895P | 2023-07-05 | 2023-07-05 | |
| US63/511,895 | 2023-07-05 |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US19/433,022 Continuation US20260115916A1 (en) | 2025-12-25 | Simulation system and simulation method |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2025009610A1 true WO2025009610A1 (ja) | 2025-01-09 |
Family
ID=94172051
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2024/024413 Pending WO2025009610A1 (ja) | 2023-07-05 | 2024-07-05 | シミュレーションシステム、プログラム、シミュレーション方法、及びシミュレーションシステム構築装置 |
Country Status (3)
| Country | Link |
|---|---|
| JP (1) | JPWO2025009610A1 (https=) |
| CN (1) | CN121311338A (https=) |
| WO (1) | WO2025009610A1 (https=) |
Citations (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2006092123A (ja) * | 2004-09-22 | 2006-04-06 | Denso Wave Inc | シミュレーションシステム |
| JP2009291540A (ja) * | 2008-06-09 | 2009-12-17 | Hitachi Ltd | 移動ロボットシステム |
| JP2017170584A (ja) * | 2016-03-25 | 2017-09-28 | 株式会社国際電気通信基礎技術研究所 | ロボットの行動シミュレーション装置 |
| JP2018008351A (ja) * | 2016-07-14 | 2018-01-18 | セイコーエプソン株式会社 | シミュレーション装置およびロボット制御装置 |
| JP2018039060A (ja) * | 2016-09-05 | 2018-03-15 | ファナック株式会社 | ロボットシミュレーション装置 |
| JP2020529088A (ja) * | 2017-09-08 | 2020-10-01 | ナイアンティック, インコーポレイテッドNiantic,Inc. | 衝突の検出、推定、および回避 |
| JP2021193543A (ja) * | 2020-06-08 | 2021-12-23 | 株式会社安川電機 | 生産システム、セルコントローラ、ロボットコントローラ及び制御方法 |
| WO2021261018A1 (ja) * | 2020-06-23 | 2021-12-30 | 株式会社安川電機 | シミュレーション装置、制御システム、シミュレーション方法及びプログラム |
-
2024
- 2024-07-05 JP JP2025531605A patent/JPWO2025009610A1/ja active Pending
- 2024-07-05 WO PCT/JP2024/024413 patent/WO2025009610A1/ja active Pending
- 2024-07-05 CN CN202480040221.3A patent/CN121311338A/zh active Pending
Patent Citations (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2006092123A (ja) * | 2004-09-22 | 2006-04-06 | Denso Wave Inc | シミュレーションシステム |
| JP2009291540A (ja) * | 2008-06-09 | 2009-12-17 | Hitachi Ltd | 移動ロボットシステム |
| JP2017170584A (ja) * | 2016-03-25 | 2017-09-28 | 株式会社国際電気通信基礎技術研究所 | ロボットの行動シミュレーション装置 |
| JP2018008351A (ja) * | 2016-07-14 | 2018-01-18 | セイコーエプソン株式会社 | シミュレーション装置およびロボット制御装置 |
| JP2018039060A (ja) * | 2016-09-05 | 2018-03-15 | ファナック株式会社 | ロボットシミュレーション装置 |
| JP2020529088A (ja) * | 2017-09-08 | 2020-10-01 | ナイアンティック, インコーポレイテッドNiantic,Inc. | 衝突の検出、推定、および回避 |
| JP2021193543A (ja) * | 2020-06-08 | 2021-12-23 | 株式会社安川電機 | 生産システム、セルコントローラ、ロボットコントローラ及び制御方法 |
| WO2021261018A1 (ja) * | 2020-06-23 | 2021-12-30 | 株式会社安川電機 | シミュレーション装置、制御システム、シミュレーション方法及びプログラム |
Also Published As
| Publication number | Publication date |
|---|---|
| CN121311338A (zh) | 2026-01-09 |
| JPWO2025009610A1 (https=) | 2025-01-09 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US9836559B2 (en) | Simulation apparatus, simulation method, and simulation program | |
| US9108316B2 (en) | Method and system for in-production optimization of the parameters of a robot used for assembly | |
| US20210018903A1 (en) | Information processing system, information processing method, and recording medium | |
| US10814486B2 (en) | Information processing device, information processing method, and non-transitory computer-readable recording medium | |
| US20160246278A1 (en) | Simulation system, programmable controller, simulation device, and engineering tool | |
| US20150378333A1 (en) | Information processing apparatus, information processing method, and non-transitory computer-readable storage medium | |
| CN109388096B (zh) | 信息处理装置及方法及非易失性的计算机可读记录介质 | |
| JP6895128B2 (ja) | ロボット制御装置、シミュレーション方法、及びシミュレーションプログラム | |
| CN109613880B (zh) | 信息处理装置、信息处理方法及其计算机可读记录介质 | |
| TW202024824A (zh) | 工作機械系統 | |
| JP6900863B2 (ja) | 制御装置、制御方法および制御プログラム | |
| US11467569B2 (en) | Simulation device | |
| US10643009B2 (en) | Simulation apparatus | |
| CN108472808A (zh) | 多个机器人的同步 | |
| CN106363635A (zh) | 一种机器人运行仿真校准方法及装置 | |
| JP7658158B2 (ja) | シミュレーション情報反映装置、方法、プログラム、及びシステム | |
| WO2025009610A1 (ja) | シミュレーションシステム、プログラム、シミュレーション方法、及びシミュレーションシステム構築装置 | |
| US20260115916A1 (en) | Simulation system and simulation method | |
| CN118715492A (zh) | 示教辅助装置、作业系统、示教辅助方法及示教辅助程序 | |
| CN116056842A (zh) | 控制装置、控制系统以及程序 | |
| US12314035B1 (en) | Recording medium, simulation method, and simulation device | |
| US20250298722A1 (en) | Simulation system | |
| JPWO2025009610A5 (https=) |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 24836122 Country of ref document: EP Kind code of ref document: A1 |
|
| ENP | Entry into the national phase |
Ref document number: 2025531605 Country of ref document: JP Kind code of ref document: A |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2025531605 Country of ref document: JP |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |