WO2022180801A1 - シミュレーション装置、制御システム及びモデリング方法 - Google Patents

シミュレーション装置、制御システム及びモデリング方法 Download PDF

Info

Publication number
WO2022180801A1
WO2022180801A1 PCT/JP2021/007415 JP2021007415W WO2022180801A1 WO 2022180801 A1 WO2022180801 A1 WO 2022180801A1 JP 2021007415 W JP2021007415 W JP 2021007415W WO 2022180801 A1 WO2022180801 A1 WO 2022180801A1
Authority
WO
WIPO (PCT)
Prior art keywords
model
simulation
dimensional
actual shape
virtual
Prior art date
Application number
PCT/JP2021/007415
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 JP2023501964A priority Critical patent/JPWO2022180801A1/ja
Priority to CN202180094494.2A priority patent/CN116917093A/zh
Priority to PCT/JP2021/007415 priority patent/WO2022180801A1/ja
Publication of WO2022180801A1 publication Critical patent/WO2022180801A1/ja
Priority to US18/450,406 priority patent/US20230390921A1/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1671Programme controls characterised by programming, planning systems for manipulators characterised by simulation, either to verify existing program or to create and verify new program, CAD/CAM oriented, graphic oriented programming systems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40311Real time simulation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40607Fixed camera to observe workspace, object, workpiece, global

Definitions

  • the present disclosure relates to simulation devices, control systems, and modeling methods.
  • Japanese Laid-Open Patent Publication No. 2004-100001 describes a model storage unit that stores model information about a robot and obstacles, and a model of a path that allows the tip of the robot to move from a start position to an end position while avoiding collisions between the robot and obstacles.
  • a robot simulator is disclosed that includes an information processing unit that generates information based on the information.
  • the present disclosure provides a simulation device that is effective in improving the reliability of simulation.
  • a simulation apparatus includes an actual shape model generation unit that generates an actual shape model representing a three-dimensional actual shape of a machine system including a robot based on measured data, a simulation model of the machine system, and an actual shape model. a model corrector for correcting the simulation model based on the comparison with the model.
  • a control system includes the simulation device further including a simulator that simulates the operation of the machine system based on the simulation model, a control device that controls the machine system based on the simulation results of the simulator, Prepare.
  • a modeling method includes generating an actual shape model representing a three-dimensional actual shape of a machine system including a robot based on measured data, a simulation model of the machine system, and an actual shape model. and calibrating the simulation model based on the comparison of .
  • FIG. 1 is a schematic diagram illustrating the configuration of an automation system
  • FIG. 1 is a schematic diagram illustrating the configuration of a robot
  • FIG. 3 is a block diagram illustrating the functional configuration of the simulation device
  • FIG. FIG. 3 is a diagram illustrating an object to be photographed by a three-dimensional camera
  • 5 is a diagram illustrating a three-dimensional image of the object in FIG. 4
  • FIG. 4 is a diagram illustrating an actual shape model obtained by synthesizing three-dimensional images; It is a figure which illustrates a real shape model.
  • FIG. 4 is a diagram illustrating a simulation model
  • FIG. 4 illustrates matching
  • FIG. 4 illustrates matching
  • FIG. 4 illustrates matching
  • FIG. 4 illustrates matching
  • FIG. 4 illustrates matching
  • FIG. 4 illustrates matching
  • FIG. 4 illustrates matching
  • FIG. 4 illustrates matching
  • FIG. 4 illustrates matching
  • FIG. 4 illustrates matching
  • FIG. 4 illustrates matching
  • FIG. 4 illustrates matching
  • FIG. 4 illustrates matching;
  • FIG. 4 illustrates matching;
  • FIG. 11 is a diagram illustrating a corrected simulation model;
  • FIG. 3 is a diagram illustrating an object to be photographed by a three-dimensional camera;
  • FIG. 18 is a diagram exemplifying a real shape model of an imaging target in FIG. 17;
  • 18 is a diagram illustrating a preprocessed model of the imaging target in FIG. 17;
  • FIG. It is a block diagram which illustrates the hardware constitutions of a simulation apparatus.
  • 4 is a flow chart illustrating a modeling procedure;
  • 4 is a flow chart illustrating a modeling procedure;
  • the automation system 1 shown in FIG. 1 is a system for operating at least a robot in a machine system including at least a robot.
  • a specific example of the automation system 1 is a production system that operates at least a robot to produce products in the machine system, but the use of the machine system is not necessarily limited to production of products.
  • the automation system 1 includes a machine system 2 and a control system 50.
  • Machine system 2 includes a plurality of objects 3 .
  • Each of the plurality of objects 3 is a substantial object that occupies part of the three-dimensional real space.
  • the multiple objects 3 include at least one controlled object 4 to be controlled and at least one peripheral object 5 .
  • At least one controlled object 4 includes at least one robot.
  • FIG. 1 shows two robots 4A and 4B as at least one controlled object 4, and shows a main stage 5A, substages 5B and 5C, and a frame 5D as at least one peripheral object 5. It is
  • FIG. 2 is a schematic diagram illustrating the schematic configuration of the robots 4A and 4B.
  • the robots 4A and 4B are 6-axis vertical articulated robots, and include a base portion 11, a swivel portion 12, a first arm 13, a second arm 14, a third arm 17, a tip portion 18, and an actuator. 41, 42, 43, 44, 45, 46.
  • the base 11 is installed around the conveyor 3A.
  • the swivel part 12 is provided on the base part 11 so as to swivel around a vertical axis 21 .
  • the first arm 13 is connected to the swivel portion 12 so as to swing about an axis 22 that intersects (for example, is perpendicular to) the axis 21 .
  • Crossing includes a twisted relationship such as a so-called overpass.
  • the second arm 14 is connected to the tip of the first arm 13 so as to swing about an axis 23 substantially parallel to the axis 22 .
  • the second arm 14 includes an arm base 15 and an arm end 16 .
  • the arm base 15 is connected to the tip of the first arm 13 and extends along an axis 24 that intersects (for example, orthogonally) the axis 23 .
  • Arm end 16 is connected to the tip of arm base 15 so as to pivot about axis 24 .
  • the third arm 17 is connected to the tip of the arm end 16 so as to swing about an axis 25 that intersects (for example, is perpendicular to) the axis 24 .
  • the distal end portion 18 is connected to the distal end portion of the third arm 17 so as to pivot about an axis 26 that intersects (for example, is perpendicular to) the axis 25 .
  • the robots 4A and 4B include the joint 31 connecting the base 11 and the turning section 12, the joint 32 connecting the turning section 12 and the first arm 13, the first arm 13 and the second arm 14. , a joint 34 that connects the arm base 15 and the arm end 16 in the second arm 14, a joint 35 that connects the arm end 16 and the third arm 17, and the third arm 17 It has a joint 36 that connects with the tip 18 .
  • the actuators 41, 42, 43, 44, 45, 46 include, for example, electric motors and speed reducers, and drive the joints 31, 32, 33, 34, 35, 36, respectively.
  • the actuator 41 pivots the pivot 12 about the axis 21
  • the actuator 42 pivots the first arm 13 about the axis 22
  • the actuator 43 pivots the second arm 14 about the axis 23
  • the actuator 44 Pivoting arm end 16 about axis 24
  • actuator 45 swinging third arm 17 about axis 25 and actuator 46 pivoting tip 18 about axis 26 .
  • the robots 4A and 4B can be changed as appropriate.
  • the robots 4A and 4B may be 7-axis redundant robots obtained by adding 1-axis joint to the 6-axis vertical articulated robots, or may be so-called scalar type articulated robots.
  • the main stage 5A supports robots 4A, 4B, substages 5B, 5C, and frame 5D.
  • the substage 5B supports an object to be worked by the robot 4A.
  • the substage 5C supports an object to be worked by the robot 4B.
  • the frame 5D holds various objects (not shown) in the upper space of the main stage 5A. Specific examples of objects held by the frame 5D include environmental sensors such as laser sensors, tools used by the robots 4A and 4B, and the like.
  • the configuration of the machine system 2 shown in FIG. 1 is an example.
  • the configuration of the machine system 2 can be changed as appropriate as long as it includes at least one robot.
  • machine system 2 may include three or more robots.
  • the control system 50 controls at least one controlled object 4 included in the machine system 2 based on an operation program prepared in advance.
  • the control system 50 may include a plurality of controllers that respectively control the plurality of controlled objects 4 and a higher-level controller that outputs control commands to the plurality of controllers so as to coordinate the plurality of controlled objects 4 .
  • FIG. 1 shows controllers 51 and 52 that control the robots 4A and 4B, respectively, and a host controller 53 .
  • the host controller 53 outputs control commands to the controllers 51 and 52 so as to coordinate the robots 4A and 4B.
  • the control system 50 further includes a simulation device 100.
  • a simulation device 100 simulates the state of the machine system 2 .
  • Simulating the state of the machine system 2 includes simulating static arrangement relationships of the plurality of objects 3 .
  • Simulating the state of the machine system 2 may further include simulating the dynamic positional relationship of the plurality of objects 3 that changes according to the motion of the controlled objects 4 such as the robots 4A and 4B.
  • the simulation is useful for evaluating the adequacy of motions of the robots 4A, 4B based on the motion program before actually operating the robots 4A, 4B. However, if the reliability of the simulation is low, even if the motion is evaluated as appropriate according to the simulation results, when the robots 4A and 4B are actually caused to execute the motion, problems such as collisions between the objects 3 may occur. obtain.
  • the motions of the robots 4A and 4B are obtained by comparing the motion results of the robots 4A and 4B with respect to the simulation model including the arrangement information of the plurality of objects 3 including the robots 4A and 4B and the structure/dimension information of each of the plurality of objects 3. is simulated by kinematic operations that reflect
  • the simulation device 100 In order to improve the reliability of the simulation, it is important to improve the accuracy of the simulation model.
  • the simulation device 100 generates an actual shape model representing the three-dimensional actual shape of the machine system 2 based on the measured data, and compares the simulation model of the machine system 2 with the actual shape model. , correcting the simulation model; and This makes it possible to easily improve the accuracy of the simulation model.
  • the simulation apparatus 100 has a simulation model storage unit 111, an actual shape model generation unit 112, and a model correction unit 113 as functional configurations, as shown in FIG.
  • a simulation model storage unit 111 stores a simulation model of the machine system 2 .
  • the simulation model includes at least location information of the plurality of objects 3 and structure/dimension information of each of the plurality of objects 3 .
  • a simulation model is prepared in advance based on design data of the machine system 2 such as three-dimensional CAD data.
  • the simulation model may include multiple object models respectively corresponding to multiple objects 3 .
  • Each of the plurality of object models includes layout information and structure/dimension information of the corresponding object 3 .
  • the placement information of the object 3 includes the position/orientation of the object 3 in a predetermined simulation coordinate system.
  • the actual shape model generation unit 112 generates an actual shape model representing the three-dimensional actual shape of the machine system 2 based on actual measurement data.
  • Actual measurement data is data obtained by actually measuring the machine system 2 in real space.
  • a specific example of the measured data is a three-dimensional actual image of the machine system 2 captured by a three-dimensional camera.
  • Specific examples of the three-dimensional camera include a stereo camera, a TOF (Time of Flight) camera, and the like.
  • the three-dimensional camera may be a three-dimensional laser displacement meter.
  • control system 50 has at least one three-dimensional camera 54, and the real shape model generator 112 generates a real shape model based on the three-dimensional real image of the machine system 2 captured by the three-dimensional camera 54. do.
  • the real shape model generation unit 112 may generate a real shape model representing the three-dimensional shape of the surface of the machine system 2 by a point group.
  • the real shape model generation unit 112 may generate a real shape model representing the three-dimensional shape of the surface of the machine system 2 with a group of fine polygons.
  • the control system 50 may have a plurality of three-dimensional cameras 54, and the real shape model generation unit 112 acquires a plurality of three-dimensional real images from the plurality of three-dimensional cameras 54 and generates a plurality of three-dimensional real images.
  • a real shape model may be generated by combining them.
  • the actual shape model generation unit 112 acquires a plurality of three-dimensional real images including an image of a common object for synthesis from a plurality of three-dimensional cameras 54, and each of the plurality of real images corresponds to the object for synthesis.
  • Multiple real three-dimensional images may be combined to generate a real shape model so that the part is matched to the known shape of the object for compositing.
  • FIG. 4 is a schematic diagram exemplifying an object to be photographed by the two three-dimensional cameras 54.
  • the machine system 2 is represented by objects 6A and 6B with simplified shapes.
  • a 3D image 221 is acquired by the 3D camera 54A on the upper left in FIG. 4
  • a 3D image 222 is acquired by the 3D camera 54B on the lower right of FIG.
  • the three-dimensional image 221 includes the three-dimensional shape of at least the portion of the machine system 2 facing the three-dimensional camera 54A.
  • Three-dimensional image 222 includes the three-dimensional shape of at least the portion of machine system 2 facing three-dimensional camera 54B.
  • the real shape model generation unit 112 generates the real shape model 220 by combining the three-dimensional image 221 and the three-dimensional image 222 with the object 6B as the object for synthesis described above.
  • the real shape model generation unit 112 matches the three-dimensional shape of the object 6B included in the three-dimensional images 221 and 222 with the known three-dimensional shape of the object 6B. Matching here means moving each of the three-dimensional images 221 and 222 so that the three-dimensional shape of the object 6B included in the three-dimensional images 221 and 222 fits the known three-dimensional shape of the object 6B. do.
  • the actual shape model generation unit 112 uses any one of the robots 4A and 4B, the main stage 5A, the sub-stage 5B, the sub-stage 5C, and the frame 5D as an object for synthesis, and generates a three-dimensional image from a plurality of three-dimensional cameras 54. may be synthesized.
  • the model correction unit 113 corrects the simulation model based on comparison between the simulation model stored in the simulation model storage unit 111 and the actual shape model generated by the actual shape model generation unit 112 .
  • the model correction unit 113 may individually match a plurality of object models to the actual shape model to correct the simulation model. Matching here means correcting the position/orientation of each of a plurality of object models so as to fit the actual shape model.
  • the model correction unit 113 may correct the simulation model by repeating matching processing including selecting one matching target model from a plurality of object models and matching the matching target model to the actual shape model. good.
  • the model correction unit 113 may match the matching target model with the actual shape model by excluding from the actual shape model a portion that has already matched another object model. In the matching process, the model correction unit 113 may select, as the matching target model, the largest object model among the one or more object models that have not been selected as the matching target model.
  • the placement of multiple object models is corrected individually.
  • the actual shape model may include portions that do not correspond to any of the multiple object models.
  • any one of a plurality of object models may include a portion that does not correspond to the actual shape model.
  • the simulation device 100 may further include an object addition unit 114 and an object deletion unit 115.
  • the object addition unit 114 extracts from the actual shape model a portion that does not match any object model, and adds a new object based on the extracted portion. Add the model to the simulation model.
  • the object deletion unit 115 extracts portions that do not match the actual shape model from the simulation model, and deletes the extracted portions from the simulation model.
  • FIG. 7 is a diagram illustrating an actual shape model of the machine system 2
  • FIG. 8 is a diagram illustrating a simulation model of the machine system 2.
  • FIG. The actual shape model 210 shown in FIG. 7 includes a portion 211 corresponding to the robot 4A, a portion 212 corresponding to the robot 4B, a portion 213 corresponding to the main stage 5A, a portion 214 corresponding to the substage 5B, and a substage. It includes a portion 215 corresponding to frame 5C and a portion 216 corresponding to frame 5D.
  • the simulation model 310 shown in FIG. 8 includes a robot model 312A corresponding to the robot 4A, a robot model 312B corresponding to the robot 4B, a main stage model 313A corresponding to the main stage 5A, and a substage model corresponding to the substage 5B. 313B and a frame model 313D corresponding to frame 5D. Simulation model 310 does not include substage model 313C (see FIG. 15) corresponding to substage 5C.
  • the model correction unit 113 first selects the largest main stage model 313A from among the robot model 312A, robot model 312B, main stage model 313A, sub-stage model 313B, and frame model 313D. "Large” here means that the occupied area in the three-dimensional space is large.
  • the model correction unit 113 matches the main stage model 313A with the actual shape model 210, as shown in FIGS. As shown by the hatched portion in FIG. 10, the main stage model 313A matches the portion 213 of the actual shape model 210 corresponding to the main stage 5A.
  • the model correction unit 113 excludes from the actual shape model 210 the portion 213 that already matches the main stage model 313A.
  • the portion 213 is deleted in FIG. 11 , excluding the portion 213 from the actual shape model 210 does not mean deleting the portion 213 from the actual shape model 210 .
  • the portion 213 can be left in the actual shape model 210 without being deleted, and the portion 213 can be excluded from matching targets in subsequent matching processes. is.
  • the model correction unit 113 selects the largest substage model 313B from among the robot model 312A, the robot model 312B, the substage model 313B, and the frame model 313D. is matched to the real shape model 210 .
  • the sub-stage model 313B matches the portion 214 of the actual shape model 210 corresponding to the sub-stage 5B.
  • Sub-stage model 313B includes a portion 313b that does not match portion 214, as indicated by the dot-patterned portion in FIG.
  • the model correction unit 113 excludes from the actual shape model 210 the portion 214 that already matches the substage model 313B.
  • the model correction unit 113 selects the largest robot model 312B from among the robot model 312A, the robot model 312B, and the frame model 313D, and matches the robot model 312B with the actual shape model 210.
  • FIG. As shown by the hatched portion in FIG. 13, the robot model 312B matches the portion 212 of the real shape model 210 corresponding to the robot 4B.
  • the model correction unit 113 excludes from the actual shape model 210 the portion 212 that already matches the robot model 312B.
  • the model correction unit 113 selects the largest robot model 312A from the robot model 312A and the frame model 313D, and matches the robot model 312A with the actual shape model 210.
  • FIG. As indicated by the hatched portion in FIG. 14, the robot model 312A matches the portion 211 of the real shape model 210 corresponding to the robot 4A.
  • the model correction unit 113 excludes from the actual shape model 210 the portion 211 that already matches the robot model 312A. Next, the model correction unit 113 selects the frame model 313D and matches the frame model 313D with the actual shape model 210. FIG. As shown by the hatched portion in FIG. 15, the frame model 313D matches the portion 216 of the actual shape model 210 corresponding to the frame 5D.
  • the object adding unit 114 extracts the part 215 and adds a substage model 313C corresponding to the substage 5C to the simulation model 310 based on the part 215, as shown in FIG.
  • the object addition unit 114 extracts the portion 313b and deletes the portion 313b from the simulation model 310.
  • the correction of the simulation model by the model correction unit 113, the addition of the object model by the object addition unit 114, and the deletion of unnecessary parts by the object deletion unit 115 are completed.
  • the real shape model when generating a real shape model based on a three-dimensional real image of the machine system 2 captured by the three-dimensional camera 54, the real shape model may include hidden parts that are not captured by the three-dimensional camera 54. Even in the case where the actual shape model is generated based on a plurality of three-dimensional real images of the machine system 2 photographed by the plurality of three-dimensional cameras 54, the actual shape model is captured by any one of the plurality of three-dimensional cameras 54. may include overlapping hidden parts that are not captured.
  • FIG. 17 is a schematic diagram exemplifying an object to be photographed by the two three-dimensional cameras 54.
  • FIG. 17 the machine system 2 is represented by objects 7A, 7B, 7C, and 7D with simplified shapes.
  • FIG. 18 shows an actual shape model 230 generated based on a three-dimensional image taken by the left three-dimensional camera 54A in FIG. 17 and a three-dimensional image taken by the right three-dimensional camera 54B in FIG. show.
  • the actual shape model 230 includes a hidden portion 230a that is not captured by the three-dimensional camera 54A, a hidden portion 230b that is not captured by the three-dimensional camera 54B, and an overlapping hidden portion 230c that is not captured by either of the three-dimensional cameras 54A and 54B.
  • An overlapping hidden portion 230c is a portion where the hidden portion 230a and the hidden portion 230b overlap.
  • the simulation apparatus 100 If the simulation model does not include hidden parts even though the actual shape model includes hidden parts, the accuracy of matching the object model to the actual shape model may decrease.
  • the simulation apparatus 100 generates a preprocessed model by excluding virtual hidden portions corresponding to hidden portions not captured by the three-dimensional camera 54 from the simulation model, and compares the preprocessed model with the actual shape model. The simulation model may be corrected based on the comparison.
  • the simulation device 100 When generating a real shape model based on the three-dimensional real images of the machine system 2 photographed by a plurality of three-dimensional cameras 54, the simulation device 100 generates images in overlapping hidden portions that are not captured by any of the plurality of three-dimensional cameras 54.
  • a preprocessed model may be generated by excluding the corresponding virtual overlapping hidden portions from the simulation model, and the simulation model may be corrected based on a comparison between the preprocessed model and the actual shape model.
  • the simulation apparatus 100 may further include a camera position calculation unit 121, a preprocessing unit 122, a resegmentation unit 123, and a preprocessed model storage unit 124.
  • the camera position calculation unit 121 calculates the position of the 3D virtual camera so as to match the 3D virtual image obtained by photographing the simulation model with the 3D virtual camera corresponding to the 3D camera 54 to the 3D real image. do.
  • the camera position calculator 121 calculates the position of the 3D virtual camera so as to match the portion of the 3D virtual image corresponding to the predetermined calibration object with the portion of the 3D real image corresponding to the calibration object. may be calculated.
  • the camera position calculation unit 121 may set any one of the plurality of objects 3 as an object for calibration, or may set two or more of the plurality of objects 3 as objects for calibration.
  • the camera position calculator 121 may use the robot 4A or the robot 4B as the calibration object.
  • the camera position calculation unit 121 calculates a three-dimensional virtual image under the condition that the three-dimensional virtual camera is placed at a predetermined initial position, and then calculates the calibration object and the three-dimensional real image in the three-dimensional virtual image.
  • the position of the 3D virtual camera is calculated by repeating the evaluation of the difference from the calibration object and changing the position of the 3D virtual camera until the evaluation result of the difference falls below a predetermined level.
  • the position of the 3D virtual camera also includes the attitude of the 3D virtual camera.
  • the camera position calculation unit 121 matches a plurality of 3D virtual images obtained by photographing the simulation model with a plurality of 3D virtual cameras respectively corresponding to the plurality of 3D cameras 54 to a plurality of 3D real images. , the positions of a plurality of three-dimensional virtual cameras may be calculated.
  • the preprocessing unit 122 calculates a virtual hidden portion based on the position of the three-dimensional virtual camera and the simulation model, generates a preprocessed model by excluding the virtual hidden portion from the simulation model, and stores the preprocessed model storage unit. 124. For example, the preprocessing unit 122 extracts a visible surface facing the three-dimensional virtual camera from the simulation model, and calculates a portion located behind the visible surface as a virtual hidden portion.
  • the preprocessing unit 122 calculates virtual overlapping hidden portions based on the positions of the plurality of three-dimensional virtual cameras and the simulation model, generates a preprocessed model in which the virtual overlapping hidden portions are excluded from the simulation model, and performs preprocessing. It may be stored in the completed model storage unit 124 .
  • FIG. 19 is a diagram exemplifying the preprocessed model 410 generated for the machine system 2 of FIG.
  • Preprocessing unit 122 calculates virtual hidden portion 410a corresponding to hidden portion 230a based on the position of three-dimensional virtual camera 321A corresponding to three-dimensional camera 54A in FIG. 17 and the simulation model. Also, the preprocessing unit 122 calculates a virtual hidden portion 410b corresponding to the hidden portion 230b based on the position of the three-dimensional virtual camera 321B corresponding to the three-dimensional camera 54B in FIG. 17 and the simulation model. Furthermore, the preprocessing unit 122 calculates a virtual overlapping hidden portion 410c that is not captured by any of the three-dimensional virtual cameras 321A and 321B. A virtual overlapping hidden portion 410c is a portion where the virtual hidden portion 410a and the virtual hidden portion 410b overlap.
  • the preprocessing unit 122 may generate a preprocessed model in the same data format as the actual shape model. For example, when the real shape model generation unit 112 generates a real shape model representing the three-dimensional shape of the surface of the machine system 2 as a point group, the preprocessing unit 122 converts the three-dimensional shape of the surface of the machine system 2 into a point group. You may generate a preprocessed model denoted by . When the real shape model generation unit 112 generates a real shape model that expresses the three-dimensional shape of the surface of the machine system 2 with a group of fine polygons, the preprocessing unit 122 finely reproduces the three-dimensional shape of the surface of the machine system 2. A preprocessed model represented by a group of polygons may be generated.
  • the re-dividing unit 123 divides the preprocessed model into multiple preprocessed object models respectively corresponding to the multiple objects 3 .
  • the re-dividing unit 123 divides the preprocessed model into a plurality of preprocessed object models based on comparison between each of the plurality of object models stored in the simulation model storage unit 111 and the preprocessed object model. .
  • the re-dividing unit 123 sets the part of the preprocessed model 410 corresponding to the object model of the object 7A as the preprocessed object model 411 of the object 7A, and the part of the preprocessed model 410 corresponding to the object model of the object 7B.
  • a preprocessed object model 412 of the object 7B is defined as a preprocessed object model 412 of the object 7B.
  • a portion corresponding to the object model of the object 7D is defined as a preprocessed object model 414 of the object 7D.
  • the model correction unit 113 stores the preprocessed model storage unit 124 corrects the simulation model based on the comparison between the preprocessed model stored by and the actual shape model generated by the actual shape model generation unit 112 .
  • the model correction unit 113 matches each of the plurality of object models to the actual shape model based on comparison between the corresponding preprocessed object model and the actual shape model.
  • the real shape model does not include hidden parts, or if the effect of the hidden parts on the matching accuracy of the object model with respect to the real shape model can be ignored, the virtual hidden parts are excluded from the simulation model. It is not mandatory to generate a preprocessed model. Even in such a case, preprocessing may be performed to match the data format of the simulation model with the data format of the actual shape model.
  • the simulation device 100 may further have a simulator 125 .
  • the simulator 125 simulates the operation of the machine system 2 based on the simulation model corrected by the model corrector 113 .
  • the simulator 125 simulates the operation of the machine system 2 by kinematics calculation (for example, forward kinematics calculation) that reflects the action results of the controlled objects 4 such as the robots 4A and 4B in the simulation model.
  • the simulation device 100 may further include a program generator 126.
  • the program generation unit 126 (planning support device) supports operation planning of the machine system 2 based on the simulation result by the simulator 125 .
  • the program generation unit 126 repeatedly evaluates an operation program for controlling the control target object 4 such as the robots 4A and 4B based on the simulation result by the simulator 125 and corrects the operation program based on the evaluation result. to generate an operating program.
  • the program generation unit 126 may transmit the generated operation program to the host controller 53 so that the control target object 4 is controlled based on the generated operation program.
  • the host controller 53 controls the machine system based on the simulation results from the simulator 125 .
  • FIG. 20 is a block diagram illustrating the hardware configuration of the simulation device 100.
  • simulation device 100 has circuit 190 .
  • Circuitry 190 includes one or more processors 191 , memory 192 , storage 193 , input/output ports 194 and communication ports 195 .
  • the storage 193 has a computer-readable storage medium such as a non-volatile semiconductor memory.
  • the storage 193 generates at least an actual shape model representing the three-dimensional actual shape of the machine system 2 based on actual measurement data, and generates a simulation model based on comparison between the simulation model of the machine system 2 and the actual shape model.
  • a program for causing the simulation apparatus 100 to correct and to execute is stored.
  • the storage 193 stores a program for causing the simulation apparatus 100 to construct the functional configuration described above.
  • the memory 192 temporarily stores the program loaded from the storage medium of the storage 193 and the calculation result by the processor 191 .
  • the processor 191 configures each functional block of the simulation device 100 by executing the above program in cooperation with the memory 192 .
  • the input/output port 194 inputs and outputs information to and from the three-dimensional camera 54 according to instructions from the processor 191 .
  • the communication port 195 communicates with the host controller 53 according to instructions from the processor 191 .
  • circuit 190 is not necessarily limited to configuring each function by a program.
  • the circuit 190 may configure at least part of its functions by a dedicated logic circuit or an ASIC (Application Specific Integrated Circuit) integrating this.
  • ASIC Application Specific Integrated Circuit
  • Simulation model correction procedure executed by the simulation apparatus 100 will be illustrated.
  • This procedure includes generating an actual shape model representing the three-dimensional actual shape of the machine system 2 based on actual measurement data, and correcting the simulation model based on comparison between the simulation model of the machine system 2 and the actual shape model. including doing and
  • the simulation apparatus 100 first sequentially executes steps S01, S02, S03, S04, S05, S06, S07, and S08.
  • step S ⁇ b>01 the real shape model generation unit 112 acquires a plurality of three-dimensional real images of the machine system 2 photographed by a plurality of three-dimensional cameras 54 .
  • step S02 the real shape model generation unit 112 recognizes the portion corresponding to the synthesis object described above in each of the plurality of three-dimensional real images acquired in step S01.
  • the actual shape model generation unit 112 generates a plurality of three-dimensional real images so that the portions corresponding to the synthesis objects in each of the plurality of three-dimensional real images match the known shape of the synthesis object. Combine them to generate an actual shape model.
  • step S04 the camera position calculation unit 121 recognizes the portion corresponding to the calibration object in each of the plurality of three-dimensional real images.
  • step S05 the camera position calculation unit 121 moves the 3D virtual camera so as to match the portion of the 3D virtual image that corresponds to the calibration object with the portion of the 3D real image that corresponds to the calibration object. , is executed for each of a plurality of three-dimensional virtual cameras.
  • step S06 the preprocessing unit 122 calculates a virtual hidden part of the simulation model that is not captured by the three-dimensional virtual camera, based on the position of the three-dimensional virtual camera and the simulation model. Execute for each virtual camera.
  • step S07 the preprocessing unit 122 creates a preprocessed model in which virtual overlapping hidden portions that are not captured by any of the plurality of three-dimensional virtual cameras are excluded from the simulation model, based on the calculation result of the virtual hidden portions in step S06. It is generated and stored in the preprocessed model storage unit 124 .
  • step S ⁇ b>08 the re-dividing unit 123 divides the preprocessed model stored in the preprocessed model storage unit 124 into a plurality of preprocessed object models respectively corresponding to the plurality of objects 3 .
  • step S11 the model correction unit 113 selects, as a matching target model, the largest object model among the one or more object models that have not been selected as matching target models from among the plurality of object models.
  • step S12 the model correction unit 113 matches the matching target model with the actual shape model based on the comparison between the preprocessed object model corresponding to the matching target model and the actual shape model.
  • step S13 the model correction unit 113 excludes the portion of the actual shape model that matches the matching target model from the target of the matching process from the next time onward.
  • step S14 the model correction unit 113 confirms whether or not the matching process for all object models has been completed.
  • step S14 If it is determined in step S14 that there remains an object model for which matching processing has not been completed, the simulation device 100 returns the processing to step S11. Thereafter, selection of a matching target model and matching of the matching target model with the actual shape model are repeated until matching is completed for all object models.
  • step S15 the object adding section 114 extracts from the real shape model a portion that does not match any object model, and adds a new object model to the simulation model based on the extracted portion. Also, the object deletion unit 115 extracts portions that do not match the actual shape model from the simulation model, and deletes the extracted portions from the simulation model. This completes the procedure for correcting the simulation model.
  • the simulation apparatus 100 includes the actual shape model generation unit 112 that generates the actual shape model 210 representing the three-dimensional actual shape of the machine system 2 including the robots 4A and 4B based on the measured data, and the machine system 2 simulation model 310 and a model correction unit 113 that corrects the simulation model 310 based on comparison with the actual shape model 210 .
  • this simulation device 100 the accuracy of the simulation model 310 can be easily improved. Therefore, this simulation apparatus 100 is effective in improving the reliability of simulation.
  • the machine system 2 includes a plurality of objects 3 including robots 4A and 4B, the simulation model 310 includes a plurality of object models respectively corresponding to the plurality of objects 3, and the model correction unit 113 separates the plurality of object models.
  • the simulation model 310 may be corrected by matching the actual shape model 210 immediately. In this case, the simulation model 310 can be corrected with higher accuracy by matching the actual shape model 210 for each of a plurality of object models.
  • the model correction unit 113 corrects the simulation model 310 by repeating matching processing including selecting one matching target model from a plurality of object models and matching the matching target model to the actual shape model 210. may In this case, it is possible to easily and reliably perform matching for each of a plurality of objects.
  • the model correction unit 113 may match the matching target model with the actual shape model 210 by excluding from the actual shape model 210 a portion already matched with another object model.
  • the new matching target model can be matched with the actual shape model 210 without being affected by the parts already matched with other object models. Therefore, the simulation model 310 can be corrected with higher accuracy.
  • the model correction unit 113 may select, as a matching target model, the largest object model among one or more object models that have not yet been selected as matching target models in the matching process. In this case, matching is performed in order from the largest object model, and by excluding the portion matched with the object model from the actual shape model 210, it becomes easier to narrow down the portion to be matched with the matching target model in each matching process. Therefore, the simulation model 310 can be corrected with higher accuracy.
  • the simulation apparatus 100 extracts from the actual shape model 210 a portion that does not match any object model, and creates a new object based on the extracted portion.
  • An object adder 114 that adds models to the simulation model 310 may also be provided. In this case, the simulation model 310 can be corrected with higher accuracy.
  • the simulation apparatus 100 extracts from the simulation model 310 portions that do not match the actual shape model 210, and deletes the extracted portions from the simulation model 310.
  • a deletion unit 115 may be further provided. In this case, the simulation model 310 can be corrected with higher accuracy.
  • the actual shape model generation unit 112 generates the actual shape model 230 based on the three-dimensional actual image of the machine system 2 photographed by the three-dimensional camera 54, and the simulation device 100 generates the hidden part that is not captured by the three-dimensional camera 54.
  • 230a, 230b corresponding to 230a, 230b are removed from the simulation model 310 to generate a preprocessed model 410.
  • Simulation model 310 may be corrected based on the comparison with model 210 .
  • a preprocessed model 410 obtained by excluding from the simulation model 310 portions of the plurality of objects 3 that cannot be represented by the real shape model 210 because they are not captured by the three-dimensional camera 54 is compared with the real shape model 230.
  • the simulation model 310 can be corrected with higher accuracy.
  • the actual shape model generation unit 112 generates the actual shape model 230 based on the three-dimensional actual image of the machine system 2 photographed by the three-dimensional camera 54 , and the simulation device 100 uses the three-dimensional camera 54 of the machine system 2 .
  • a preprocessing unit 122 that generates a preprocessed model 410 by excluding virtual hidden parts 410a and 410b corresponding to hidden parts 230a and 230b that are not shown in the simulation model 310 from the simulation model 310, and a subdivision unit 123 that divides each of the plurality of object models into a plurality of preprocessed object models respectively corresponding to the respective preprocessed object models and the actual shape model may be matched to the actual shape model 210 based on comparison with . In this case, by improving the accuracy of matching for each of the plurality of object models, the simulation model 310 can be corrected with higher accuracy.
  • the simulation apparatus 100 uses the three-dimensional virtual cameras 321A and 321B corresponding to the three-dimensional camera 54 to match the three-dimensional virtual image obtained by photographing the simulation model 310 with the three-dimensional real image.
  • a camera position calculation unit 121 that calculates the position of 321B is further provided, and the preprocessing unit 122 calculates virtual hidden portions 410a and 410b based on the positions of the three-dimensional virtual cameras 321A and 321B and the simulation model 310. good.
  • the simulation model 310 can be corrected with higher accuracy.
  • the camera position calculation unit 121 controls the 3D virtual camera 321A, 321A, and 321A so as to match a portion of the 3D virtual image that corresponds to a predetermined calibration object with a portion of the 3D real image that corresponds to the calibration object. 321B may be calculated. In this case, the positions of the three-dimensional virtual cameras 321A and 321B can be more easily corrected by performing matching between the three-dimensional virtual image and the three-dimensional real image, limited to the portion corresponding to the calibration object. can.
  • the real shape model generation unit 112 acquires a plurality of three-dimensional real images from a plurality of three-dimensional cameras 54 including the three-dimensional cameras 54A and 54B, combines the plurality of three-dimensional real images to generate a real shape model 210,
  • the preprocessing unit 122 may generate the preprocessed model 410 by excluding from the simulation model 310 the virtual overlapping hidden portion 410c corresponding to the overlapping hidden portion 230c that is not captured by any of the three-dimensional cameras 54A and 54B. . In this case, the simulation model 310 can be corrected with higher accuracy by reducing the virtual overlapping hidden portion 410c.
  • the real shape model generating unit 112 acquires a plurality of 3D real images including a common object for synthesis from a plurality of 3D cameras 54 including the 3D cameras 54A and 54B, and generates a plurality of 3D real images.
  • the actual shape model 210 may be generated by combining a plurality of three-dimensional real images such that the portion corresponding to the object for synthesis in each matches the known shape of the object for synthesis. In this case, a plurality of three-dimensional real images can be easily combined to generate the real shape model 210 with few hidden parts.
  • the simulation apparatus 100 converts a plurality of three-dimensional virtual images obtained by photographing the simulation model 310 with a plurality of three-dimensional virtual cameras 321A and 321B corresponding to the plurality of three-dimensional cameras 54A and 54B to a plurality of three-dimensional real images.
  • the preprocessing unit 122 calculates the positions of the three-dimensional virtual cameras 321A and 321B and the simulation model 310 A virtual overlapping hidden portion 410c may be calculated based on .
  • the simulation model 310 can be corrected with higher accuracy by associating the virtual overlapping hidden portion 410c with the overlapping hidden portion 230c with higher accuracy.
  • the real shape model generation unit 112 generates a real shape model 210 representing the three-dimensional real shape of the machine system 2 with a point group, and the preprocessing unit 122 represents the three-dimensional virtual shape of the simulation model 310 with a virtual point group.
  • a processed model 410 may be generated. In this case, the difference between the actual shape model 210 and the preprocessed model 410 can be easily evaluated.
  • the real shape model generating unit 112 generates a real shape model 210 that represents the three-dimensional real shape of the machine system 2 as a point group, and the simulation device 100 performs preprocessing that represents the three-dimensional virtual shape of the simulation model 310 as a virtual point group. and a preprocessing unit that generates the finished model 410 , and the model correction unit 113 may correct the simulation model 310 based on a comparison between the preprocessed model 410 and the actual shape model 210 . In this case, the difference between the actual shape model 210 and the preprocessed model 410 can be easily evaluated.

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Robotics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Graphics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Manipulator (AREA)
  • Geometry (AREA)
  • Computer Vision & Pattern Recognition (AREA)

Abstract

シミュレーション装置100は、ロボット4A,4Bを含むマシンシステム2の三次元実形状を表す実形状モデルを実測データに基づいて生成する実形状モデル生成部112と、マシンシステム2のシミュレーションモデル310と、実形状モデル210との比較に基づいて、シミュレーションモデル310を補正するモデル補正部113と、を備える。

Description

シミュレーション装置、制御システム及びモデリング方法
 本開示は、シミュレーション装置、制御システム及びモデリング方法に関する。
 特許文献1には、ロボット及び障害物に関するモデル情報を記憶したモデル記憶部と、ロボットと障害物との衝突を回避しつつ、ロボットの先端部を開始位置から終了位置まで移動させ得るパスをモデル情報に基づいて生成する情報処理部と、を備えるロボットシミュレータが開示されている。
:特開2018-134703号公報
 本開示は、シミュレーションの信頼性向上に有効なシミュレーション装置を提供する。
 本開示の一側面に係るシミュレーション装置は、ロボットを含むマシンシステムの三次元実形状を表す実形状モデルを実測データに基づいて生成する実形状モデル生成部と、マシンシステムのシミュレーションモデルと、実形状モデルとの比較に基づいて、シミュレーションモデルを補正するモデル補正部と、を備える。
 本開示の他の側面に係る制御システムは、シミュレーションモデルに基づいて、マシンシステムの動作をシミュレーションするシミュレータを更に備える上記シミュレーション装置と、シミュレータによるシミュレーション結果に基づいてマシンシステムを制御する制御装置と、を備える。
 本開示の更に他の側面に係るモデリング方法は、ロボットを含むマシンシステムの三次元実形状を表す実形状モデルを実測データに基づいて生成することと、マシンシステムのシミュレーションモデルと、実形状モデルとの比較に基づいて、シミュレーションモデルを補正することと、を含む。
 本開示によれば、シミュレーションの信頼性向上に有効なシミュレーション装置を提供することができる。
オートメーションシステムの構成を例示する模式図である。 ロボットの構成を例示する模式図である。 シミュレーション装置の機能的な構成を例示するブロック図である。 三次元カメラによる撮影対象を例示する図である。 図4中のオブジェクトの三次元画像を例示する図である。 三次元画像の合成により得られる実形状モデルを例示する図である。 実形状モデルを例示する図である。 シミュレーションモデルを例示する図である。 マッチングを例示する図である。 マッチングを例示する図である。 マッチングを例示する図である。 マッチングを例示する図である。 マッチングを例示する図である。 マッチングを例示する図である。 マッチングを例示する図である。 補正済みのシミュレーションモデルを例示する図である。 三次元カメラによる撮影対象を例示する図である。 図17中の撮影対象の実形状モデルを例示する図である。 図17中の撮影対象の前処理済みモデルを例示する図である。 シミュレーション装置のハードウェア構成を例示するブロック図である。 モデリング手順を例示するフローチャートである。 モデリング手順を例示するフローチャートである。
 以下、実施形態について、図面を参照しつつ詳細に説明する。説明において、同一要素又は同一機能を有する要素には同一の符号を付し、重複する説明を省略する。
〔オートメーションシステム〕
 図1に示すオートメーションシステム1は、少なくともロボットを含むマシンシステムにおいて、少なくともロボットを動作させるシステムである。オートメーションシステム1の具体例としては、マシンシステムにおいて製品を生産するように、少なくともロボットを動作させる生産システムが挙げられるが、マシンシステムの用途は必ずしも製品の生産に限られない。
 オートメーションシステム1は、マシンシステム2と、制御システム50とを備える。マシンシステム2は、複数のオブジェクト3を含む。複数のオブジェクト3のそれぞれは、三次元実空間の一部を占める実体的なオブジェクトである。複数のオブジェクト3は、制御の対象となる少なくとも一つの制御対象オブジェクト4と、少なくとも一つの周辺オブジェクト5とを含む。
 少なくとも一つの制御対象オブジェクト4は、少なくとも一つのロボットを含む。図1には、少なくとも一つの制御対象オブジェクト4として、二つのロボット4A,4Bが示されており、少なくとも一つの周辺オブジェクト5として、メインステージ5Aと、サブステージ5B,5Cと、フレーム5Dが示されている。
 図2は、ロボット4A,4Bの概略構成を例示する模式図である。例えばロボット4A,4Bは、6軸の垂直多関節ロボットであり、基部11と、旋回部12と、第1アーム13と、第2アーム14と、第3アーム17と、先端部18と、アクチュエータ41,42,43,44,45,46とを有する。基部11は、コンベヤ3Aの周囲に設置されている。旋回部12は、鉛直な軸線21まわりに旋回するように基部11上に設けられている。第1アーム13は、軸線21に交差(例えば直交)する軸線22まわりに揺動するように旋回部12に接続されている。交差は、所謂立体交差のようにねじれの関係にある場合も含む。第2アーム14は、軸線22に実質的に平行な軸線23まわりに揺動するように第1アーム13の先端部に接続されている。第2アーム14は、アーム基部15とアーム端部16とを含む。アーム基部15は、第1アーム13の先端部に接続され、軸線23に交差(例えば直交)する軸線24に沿って延びている。アーム端部16は、軸線24まわりに旋回するようにアーム基部15の先端部に接続されている。第3アーム17は、軸線24に交差(例えば直交)する軸線25まわりに揺動するようにアーム端部16の先端部に接続されている。先端部18は、軸線25に交差(例えば直交)する軸線26まわりに旋回するように第3アーム17の先端部に接続されている。
 このように、ロボット4A,4Bは、基部11と旋回部12とを接続する関節31と、旋回部12と第1アーム13とを接続する関節32と、第1アーム13と第2アーム14とを接続する関節33と、第2アーム14においてアーム基部15とアーム端部16とを接続する関節34と、アーム端部16と第3アーム17とを接続する関節35と、第3アーム17と先端部18とを接続する関節36とを有する。
 アクチュエータ41,42,43,44,45,46は、例えば電動モータ及び減速機を含み、関節31,32,33,34,35,36をそれぞれ駆動する。例えばアクチュエータ41は軸線21まわりに旋回部12を旋回させ、アクチュエータ42は軸線22まわりに第1アーム13を揺動させ、アクチュエータ43は軸線23まわりに第2アーム14を揺動させ、アクチュエータ44は軸線24まわりにアーム端部16を旋回させ、アクチュエータ45は軸線25まわりに第3アーム17を揺動させ、アクチュエータ46は軸線26まわりに先端部18を旋回させる。
 なお、ロボット4A,4Bの具体的な構成は適宜変更可能である。例えばロボット4A,4Bは、上記6軸の垂直多関節ロボットに更に1軸の関節を追加した7軸の冗長型ロボットであってもよく、所謂スカラー型の多関節ロボットであってもよい。
 メインステージ5Aは、ロボット4A,4B、サブステージ5B,5C及びフレーム5Dを支持する。サブステージ5Bは、ロボット4Aによる作業対象物を支持する。サブステージ5Cは、ロボット4Bによる作業対象物を支持する。フレーム5Dは、図示が省略された様々なオブジェクトをメインステージ5Aの上部空間に保持する。フレーム5Dが保持するオブジェクトの具体例としては、レーザセンサ等の環境センサ、又はロボット4A,4Bが用いるツール等が挙げられる。
 なお、図1に示されるマシンシステム2の構成は一例である。少なくとも一つのロボットを含む限りにおいて、マシンシステム2の構成は適宜変更可能である。例えば、マシンシステム2は三つ以上のロボットを含んでいてもよい。
 制御システム50は、予め準備された動作プログラムに基づいて、マシンシステム2が含む少なくとも一つの制御対象オブジェクト4を制御する。制御システム50は、複数の制御対象オブジェクト4をそれぞれ制御する複数のコントローラと、複数の制御対象オブジェクト4を協調させるように複数のコントローラに制御指令を出力する上位コントローラとを含んでいてもよい。図1には、ロボット4A,4Bをそれぞれ制御するコントローラ51,52と、上位コントローラ53とが示されている。上位コントローラ53は、ロボット4A,4Bを協調させるように、コントローラ51,52に制御指令を出力する。
 制御システム50は、シミュレーション装置100を更に含む。シミュレーション装置100は、マシンシステム2の状態をシミュレーションする。マシンシステム2の状態をシミュレーションすることは、複数のオブジェクト3の静的な配置関係をシミュレーションすることを含む。マシンシステム2の状態をシミュレーションすることは、ロボット4A,4B等の制御対象オブジェクト4の動作によって変化する複数のオブジェクト3の動的な配置関係をシミュレーションすることを更に含んでいてもよい。
 シミュレーションは、ロボット4A,4Bを実際に動作させる前に、動作プログラムに基づくロボット4A,4Bの動作の適切さを評価するのに有用である。
しかしながら、シミュレーションの信頼性が低いと、シミュレーション結果によれば適切と評価された動作であっても、その動作を実際にロボット4A,4Bに実行させると、オブジェクト3同士の衝突等の不具合が生じ得る。
 ロボット4A,4Bの動作は、ロボット4A,4Bを含む複数のオブジェクト3の配置情報と、複数のオブジェクト3のそれぞれの構造・寸法情報とを含むシミュレーションモデルに対して、ロボット4A,4Bの動作結果を反映させる運動学演算によってシミュレーションされる。
 シミュレーションの信頼性を向上させるためには、シミュレーションモデルの精度を向上させることが重要である。これに対し、シミュレーション装置100は、マシンシステム2の三次元実形状を表す実形状モデルを実測データに基づいて生成することと、マシンシステム2のシミュレーションモデルと、実形状モデルとの比較に基づいて、シミュレーションモデルを補正することと、を実行するように構成されている。これにより、シミュレーションモデルの精度を容易に向上させることができる。
 例えばシミュレーション装置100は、図3に示すように、機能上の構成として、シミュレーションモデル記憶部111と、実形状モデル生成部112と、モデル補正部113とを有する。
 シミュレーションモデル記憶部111は、マシンシステム2のシミュレーションモデルを記憶する。シミュレーションモデルは、少なくとも複数のオブジェクト3の配置情報と、複数のオブジェクト3のそれぞれの構造・寸法情報とを含む。
シミュレーションモデルは、三次元CADデータ等のマシンシステム2の設計データに基づいて予め準備されている。シミュレーションモデルは、複数のオブジェクト3にそれぞれに対応する複数のオブジェクトモデルを含んでもよい。複数のオブジェクトモデルのそれぞれは、対応するオブジェクト3の配置情報、及び構造・寸法情報を含む。オブジェクト3の配置情報は、所定のシミュレーション座標系におけるオブジェクト3の位置・姿勢を含む。
 実形状モデル生成部112は、マシンシステム2の三次元実形状を表す実形状モデルを実測データに基づいて生成する。実測データは、実空間においてマシンシステム2を実測することで得られるデータである。実測データの具体例としては、三次元カメラにより撮影されるマシンシステム2の三次元実画像が挙げられる。三次元カメラの具体例としては、ステレオカメラ、又はTOF(Time of Flight)カメラ等が挙げられる。三次元カメラは、三次元レーザ変位計であってもよい。
 一例として、制御システム50は少なくとも一つの三次元カメラ54を有し、実形状モデル生成部112は、三次元カメラ54により撮影されたマシンシステム2の三次元実画像に基づいて実形状モデルを生成する。実形状モデル生成部112は、マシンシステム2の表面の三次元形状を点群で表す実形状モデルを生成してもよい。実形状モデル生成部112は、マシンシステム2の表面の三次元形状を微細なポリゴン群で表す実形状モデルを生成してもよい。
 制御システム50は、複数の三次元カメラ54を有してもよく、実形状モデル生成部112は、複数の三次元カメラ54から複数の三次元実画像を取得し、複数の三次元実画像を組み合わせて実形状モデルを生成してもよい。実形状モデル生成部112は、複数の三次元カメラ54から、共通の合成用オブジェクトの画像を含む複数の三次元実画像を取得し、複数の三次元実画像のそれぞれにおいて合成用オブジェクトに対応する部分を、合成用オブジェクトの既知の形状にマッチングさせるように、複数の三次元実画像を組み合わせて実形状モデルを生成してもよい。
 図4は、二つの三次元カメラ54による撮影対象を例示する模式図である。説明を簡素化するために、図4においては、形状を単純化したオブジェクト6A,6Bによってマシンシステム2を表している。図5に示すように、図4の左上の三次元カメラ54Aによれば三次元画像221が取得され、図4の右下の三次元カメラ54Bによれば三次元画像222が取得される。三次元画像221は、マシンシステム2のうち、少なくとも三次元カメラ54Aに面する部分の三次元形状を含む。三次元画像222は、マシンシステム2のうち、少なくとも三次元カメラ54Bに面する部分の三次元形状を含む。
 例えば実形状モデル生成部112は、オブジェクト6Bを上述の合成用オブジェクトとして、三次元画像221と三次元画像222とを組み合わせて実形状モデル220を生成する。例えば実形状モデル生成部112は、三次元画像221,222が含むオブジェクト6Bの三次元形状を、オブジェクト6Bの既知の三次元形状にマッチングさせる。ここでのマッチングは、三次元画像221,222が含むオブジェクト6Bの三次元形状を、オブジェクト6Bの既知の三次元形状にフィットさせるように、三次元画像221,222のそれぞれを移動させることを意味する。三次元画像221,222が含むオブジェクト6Bの三次元形状を、オブジェクト6Bの既知の三次元形状にフィットさせるように、三次元画像221,222のそれぞれを移動させることによって、図6に示すように三次元画像221,222が組み合わさり、オブジェクト6A,6Bの実形状モデル220が生成される。なお、実形状モデル生成部112は、ロボット4A,4B、メインステージ5A、サブステージ5B、サブステージ5C、及びフレーム5Dのいずれかを合成用オブジェクトとして、複数の三次元カメラ54の三次元画像を合成してもよい。
 モデル補正部113は、シミュレーションモデル記憶部111が記憶するシミュレーションモデルと、実形状モデル生成部112により生成された実形状モデルとの比較に基づいて、シミュレーションモデルを補正する。モデル補正部113は、複数のオブジェクトモデルを個別に実形状モデルにマッチングさせてシミュレーションモデルを補正してもよい。ここでのマッチングは、複数のオブジェクトモデルのそれぞれの位置・姿勢を、実形状モデルにフィットするように修正することを意味する。モデル補正部113は、複数のオブジェクトモデルから、一つのマッチング対象モデルを選択することと、マッチング対象モデルを実形状モデルにマッチングさせることと、を含むマッチング処理を繰り返してシミュレーションモデルを補正してもよい。
 モデル補正部113は、マッチング処理において、他のオブジェクトモデルに既にマッチングしている部分を実形状モデルから除外して、マッチング対象モデルを実形状モデルにマッチングさせてもよい。モデル補正部113は、マッチング処理において、マッチング対象モデルとして選択されていない1以上のオブジェクトモデルのうち最も大きいオブジェクトモデルをマッチング対象モデルとして選択してもよい。
 マッチング処理の繰り返しによって、複数のオブジェクトモデルの配置が個別に補正される。しかしながら、シミュレーションモデルと実形状モデルとの間には、複数のオブジェクトモデルの配置補正だけでは解消されない差異が残る場合がある。例えば、実形状モデルが、複数のオブジェクトモデルのいずれにも対応しない部分を含んでいる場合があり得る。また、複数のオブジェクトモデルのいずれかが、実形状モデルに対応しない部分を含んでいる場合があり得る。
 これに対し、シミュレーション装置100は、オブジェクト追加部114と、オブジェクト削除部115とを更に有してもよい。オブジェクト追加部114は、複数のオブジェクトモデルの全てに対してマッチング処理が完了した後、いずれのオブジェクトモデルにもマッチングしていない部分を実形状モデルから抽出し、抽出した部分に基づいて新たなオブジェクトモデルをシミュレーションモデルに追加する。オブジェクト削除部115は、複数のオブジェクトモデルの全てに対してマッチング処理が完了した後、実形状モデルにマッチングしていない部分をシミュレーションモデルから抽出し、抽出した部分をシミュレーションモデルから削除する。
 以下、図面を参照し、モデル補正部113によるシミュレーションモデルの補正と、オブジェクト追加部114によるオブジェクトモデルの追加と、オブジェクト削除部115によるシミュレーションモデルの不要部分の削除とを具体的に例示する。
 図7は、マシンシステム2の実形状モデルを例示する図であり、図8は、マシンシステム2のシミュレーションモデルを例示する図である。図7に示す実形状モデル210は、ロボット4Aに対応する部分211と、ロボット4Bに対応する部分212と、メインステージ5Aに対応する部分213と、サブステージ5Bに対応する部分214と、サブステージ5Cに対応する部分215と、フレーム5Dに対応する部分216とを含む。
 図8に示すシミュレーションモデル310は、ロボット4Aに対応するロボットモデル312Aと、ロボット4Bに対応するロボットモデル312Bと、メインステージ5Aに対応するメインステージモデル313Aと、サブステージ5Bに対応するサブステージモデル313Bと、フレーム5Dに対応するフレームモデル313Dとを含む。シミュレーションモデル310は、サブステージ5Cに対応するサブステージモデル313C(図15参照)を含んでいない。
 モデル補正部113は、まず、ロボットモデル312A、ロボットモデル312B、メインステージモデル313A、サブステージモデル313B、及びフレームモデル313Dのうち、最も大きいメインステージモデル313Aを選択する。ここでの「大きい」とは、三次元空間における占有領域が大きいことを意味する。
 モデル補正部113は、図9及び図10に示すように、メインステージモデル313Aを実形状モデル210にマッチングさせる。図10においてハッチングされた部分が示すように、メインステージモデル313Aは、実形状モデル210のうちメインステージ5Aに対応する部分213にマッチングする。
 図11に示すように、モデル補正部113は、メインステージモデル313Aに既にマッチングしている部分213を実形状モデル210から除外する。なお、図11では、部分213を消去しているが、部分213を実形状モデル210から除外することは、部分213を実形状モデル210から削除することを意味するわけではない。部分213は、部分213を削除することなく実形状モデル210に残しつつ、次回以降のマッチング処理において部分213をマッチングの対象から除外すればよく、実形状モデル210の他の部分の除外についても同様である。
 次に、モデル補正部113は、ロボットモデル312A、ロボットモデル312B、サブステージモデル313B、及びフレームモデル313Dのうち、最も大きいサブステージモデル313Bを選択し、図12に示すように、サブステージモデル313Bを実形状モデル210にマッチングさせる。図12においてハッチングされた部分が示すように、サブステージモデル313Bは、実形状モデル210のうちサブステージ5Bに対応する部分214にマッチングする。図12においてドットパターンが付された部分が示すように、サブステージモデル313Bは、部分214にマッチングしない部分313bを含む。
 図13に示すように、モデル補正部113は、サブステージモデル313Bに既にマッチングしている部分214を実形状モデル210から除外する。次に、モデル補正部113は、ロボットモデル312A、ロボットモデル312B、及びフレームモデル313Dのうち、最も大きいロボットモデル312Bを選択し、ロボットモデル312Bを実形状モデル210にマッチングさせる。図13においてハッチングされた部分が示すように、ロボットモデル312Bは、実形状モデル210のうちロボット4Bに対応する部分212にマッチングする。
 図14に示すように、モデル補正部113は、ロボットモデル312Bに既にマッチングしている部分212を実形状モデル210から除外する。次に、モデル補正部113は、ロボットモデル312A、及びフレームモデル313Dのうち、最も大きいロボットモデル312Aを選択し、ロボットモデル312Aを実形状モデル210にマッチングさせる。図14においてハッチングされた部分が示すように、ロボットモデル312Aは、実形状モデル210のうちロボット4Aに対応する部分211にマッチングする。
 図15に示すように、モデル補正部113は、ロボットモデル312Aに既にマッチングしている部分211を実形状モデル210から除外する。次に、モデル補正部113は、フレームモデル313Dを選択し、フレームモデル313Dを実形状モデル210にマッチングさせる。図15においてハッチングされた部分が示すように、フレームモデル313Dは、実形状モデル210のうちフレーム5Dに対応する部分216にマッチングする。
 以上で、ロボット4A,4B、メインステージ5A、サブステージ5B、及びフレーム5Dの全てのマッチング処理が完了するが、シミュレーションモデル310にはサブステージ5Cに対応するオブジェクトモデルが含まれていないので、実形状モデル210の部分215は、シミュレーションモデル310に含まれるいずれのオブジェクトモデルにもマッチングせずに残ることとなる。
 これに対し、オブジェクト追加部114は部分215を抽出し、図16に示すように、部分215に基づいてサブステージ5Cに対応するサブステージモデル313Cをシミュレーションモデル310に追加する。
 また、実形状モデル210にマッチングしなかった部分313bは、実形状モデル210のいずれの部分にもマッチングせずに残ることとなる。これに対し、オブジェクト追加部114は部分313bを抽出し、部分313bをシミュレーションモデル310から削除する。以上で、モデル補正部113によるシミュレーションモデルの補正と、オブジェクト追加部114によるオブジェクトモデルの追加と、オブジェクト削除部115による不要部分の削除とが完了する。
 ここで、三次元カメラ54により撮影されたマシンシステム2の三次元実画像に基づいて実形状モデルを生成する場合、実形状モデルは、三次元カメラ54には写らない隠れ部分を含み得る。複数の三次元カメラ54によりそれぞれ撮影されたマシンシステム2の複数の三次元実画像に基づいて実形状モデルを生成する場合であっても、実形状モデルは、複数の三次元カメラ54のいずれにも写らない重複隠れ部分を含み得る。
 図17は、二つの三次元カメラ54による撮影対象を例示する模式図である。説明を簡素化するために、図17においては、形状を単純化したオブジェクト7A,7B,7C,7Dによってマシンシステム2を表している。
 図18は、図17の左の三次元カメラ54Aにより撮影される三次元画像と、図17の右の三次元カメラ54Bにより撮影される三次元画像とに基づいて生成される実形状モデル230を示す。
 実形状モデル230は、三次元カメラ54Aに写らない隠れ部分230aと、三次元カメラ54Bに写らない隠れ部分230bとを含み、三次元カメラ54A,54Bのいずれにも写らない重複隠れ部分230cを含む。重複隠れ部分230cは、隠れ部分230aと隠れ部分230bとが重複する部分である。
 実形状モデルが隠れ部分を含むにも関わらず、シミュレーションモデルが隠れ部分を含まない場合、実形状モデルに対するオブジェクトモデルのマッチングの精度が低下する可能性がある。これに対し、シミュレーション装置100は、三次元カメラ54には写らない隠れ部分に対応する仮想隠れ部分をシミュレーションモデルから除外した前処理済みモデルを生成し、前処理済みモデルと、実形状モデルとの比較に基づいてシミュレーションモデルを補正してもよい。
 複数の三次元カメラ54により撮影されたマシンシステム2の三次元実画像に基づいて実形状モデルを生成する場合、シミュレーション装置100は、複数の三次元カメラ54のいずれにも写らない重複隠れ部分に対応する仮想重複隠れ部分をシミュレーションモデルから除外した前処理済みモデルを生成し、前処理済みモデルと、実形状モデルとの比較に基づいてシミュレーションモデルを補正してもよい。
 例えばシミュレーション装置100は、カメラ位置算出部121と、前処理部122と、再分割部123と、前処理済みモデル記憶部124とを更に有してもよい。
 カメラ位置算出部121は、三次元カメラ54に対応する三次元仮想カメラによりシミュレーションモデルを撮影することで得られる三次元仮想画像を三次元実画像にマッチングさせるように三次元仮想カメラの位置を算出する。カメラ位置算出部121は、三次元仮想画像のうち所定のキャリブレーション用オブジェクトに対応する部分を、三次元実画像のうちキャリブレーション用オブジェクトに対応する部分にマッチングさせるように三次元仮想カメラの位置を算出してもよい。
 カメラ位置算出部121は、複数のオブジェクト3のうちいずれか一つのキャリブレーション用オブジェクトとしてもよく、複数のオブジェクト3のうち二つ以上をキャリブレーション用オブジェクトとしてもよい。例えばカメラ位置算出部121は、ロボット4A又はロボット4Bをキャリブレーション用オブジェクトとしてもよい。
 例えばカメラ位置算出部121は、予め定められた初期位置に三次元仮想カメラが配置された条件にて三次元仮想画像を算出した後、三次元化仮想画像におけるキャリブレーション用オブジェクトと三次元実画像におけるキャリブレーション用オブジェクトとの差異を評価することと、三次元仮想カメラの位置を変更することとを、差異の評価結果が所定レベルを下回るまで繰り返すことで、三次元仮想カメラの位置を算出する。なお、三次元仮想カメラの位置は、三次元仮想カメラの姿勢も含む。
 カメラ位置算出部121は、複数の三次元カメラ54にそれぞれ対応する複数の三次元仮想カメラによりシミュレーションモデルを撮影することで得られる複数の三次元仮想画像を複数の三次元実画像にマッチングさせるように複数の三次元仮想カメラの位置を算出してもよい。
 前処理部122は、三次元仮想カメラの位置と、シミュレーションモデルとに基づいて仮想隠れ部分を算出し、仮想隠れ部分をシミュレーションモデルから除外した前処理済みモデルを生成して前処理済みモデル記憶部124に格納する。例えば前処理部122は、シミュレーションモデルのうち、三次元仮想カメラに対向する視認可能面を抽出し、視認可能面の背後に位置する部分を仮想隠れ部分として算出する。
 前処理部122は、複数の三次元仮想カメラの位置と、シミュレーションモデルとに基づいて仮想重複隠れ部分を算出し、仮想重複隠れ部分をシミュレーションモデルから除外した前処理済みモデルを生成して前処理済みモデル記憶部124に格納してもよい。
 図19は、図17のマシンシステム2に対して生成される前処理済みモデル410を例示する図である。前処理部122は、図17の三次元カメラ54Aに対応する三次元仮想カメラ321Aの位置と、シミュレーションモデルとに基づいて、隠れ部分230aに対応する仮想隠れ部分410aを算出する。また、前処理部122は、図17の三次元カメラ54Bに対応する三次元仮想カメラ321Bの位置と、シミュレーションモデルとに基づいて、隠れ部分230bに対応する仮想隠れ部分410bを算出する。更に、前処理部122は、三次元仮想カメラ321A,321Bのいずれにも写らない仮想重複隠れ部分410cを算出する。仮想重複隠れ部分410cは、仮想隠れ部分410aと仮想隠れ部分410bとが重複する部分である。
 前処理部122は、実形状モデルと同様のデータ形式にて、前処理済みモデルを生成してもよい。例えば、実形状モデル生成部112が、マシンシステム2の表面の三次元形状を点群で表す実形状モデルを生成する場合、前処理部122は、マシンシステム2の表面の三次元形状を点群で表す前処理済みモデルを生成してもよい。実形状モデル生成部112が、マシンシステム2の表面の三次元形状を微細なポリゴン群で表す実形状モデルを生成する場合、前処理部122は、マシンシステム2の表面の三次元形状を微細なポリゴン群で表す前処理済みモデルを生成してもよい。
 前処理済みモデルと実形状モデルとでデータ形式を一致させておくことにより、前処理済みモデルと実形状モデルとの比較が容易となる。前処理済みモデルと実形状モデルとでデータ形式が異なっていても、前処理済みモデルと実形状モデルとの比較は可能なので、前処理済みモデルのデータ形式を実形状モデルのデータ形式に一致させることは必須ではない。
 再分割部123は、前処理済みモデルを、複数のオブジェクト3にそれぞれ対応する複数の前処理済みオブジェクトモデルに分割する。例えば再分割部123は、シミュレーションモデル記憶部111が記憶する複数のオブジェクトモデルのそれぞれと、前処理済みオブジェクトモデルとの比較に基づいて、前処理済みモデルを複数の前処理済みオブジェクトモデルに分割する。
 例えば再分割部123は、前処理済みモデル410のうちオブジェクト7Aのオブジェクトモデルに対応する部分を、オブジェクト7Aの前処理済みオブジェクトモデル411とし、前処理済みモデル410のうちオブジェクト7Bのオブジェクトモデルに対応する部分を、オブジェクト7Bの前処理済みオブジェクトモデル412とし、前処理済みモデル410のうちオブジェクト7Cのオブジェクトモデルに対応する部分を、オブジェクト7Cの前処理済みオブジェクトモデル413とし、前処理済みモデル410のうちオブジェクト7Dのオブジェクトモデルに対応する部分を、オブジェクト7Dの前処理済みオブジェクトモデル414とする。
 シミュレーション装置100が、カメラ位置算出部121と、前処理部122と、再分割部123と、前処理済みモデル記憶部124とを有する場合に、モデル補正部113は、前処理済みモデル記憶部124が記憶する前処理済みモデルと、実形状モデル生成部112が生成した実形状モデルとの比較に基づいてシミュレーションモデルを補正する。例えばモデル補正部113は、複数のオブジェクトモデルのそれぞれを、対応する前処理済みオブジェクトモデルと、実形状モデルとの比較に基づいて実形状モデルにマッチングさせる。
 なお、実形状モデルが隠れ部分を含まない場合、又は、隠れ部分が実形状モデルに対するオブジェクトモデルのマッチング精度に及ぼす影響を無視し得る場合には、シミュレーションモデルから仮想隠れ部分をシミュレーションモデルから除外した前処理済みモデルを生成することは必須ではない。このような場合であっても、シミュレーションモデルのデータ形式を、実形状モデルのデータ形式に一致させる前処理は行ってもよい。
 シミュレーション装置100は、シミュレータ125を更に有してもよい。シミュレータ125は、モデル補正部113により補正されたシミュレーションモデルに基づいて、マシンシステム2の動作をシミュレーションする。例えばシミュレータ125は、シミュレーションモデルに対して、ロボット4A,4B等の制御対象オブジェクト4の動作結果を反映させる運動学演算(例えば順運動学演算)によって、マシンシステム2の動作をシミュレーションする。
 シミュレーション装置100は、プログラム生成部126を更に有してもよい。プログラム生成部126(プランニング支援装置)は、シミュレータ125によるシミュレーション結果に基づいて、マシンシステム2の動作プランニングを支援する。例えばプログラム生成部126は、ロボット4A,4B等の制御対象オブジェクト4を制御するための動作プログラムを、シミュレータ125によるシミュレーション結果に基づいて評価し、評価結果に基づいて動作プログラムを修正することを繰り返して、動作プログラムを生成する。
 プログラム生成部126は、生成した動作プログラムに基づいて制御対象オブジェクト4を制御させるように、当該動作プログラムを上位コントローラ53に送信してもよい。これにより、上位コントローラ53(制御装置)は、シミュレータ125によるシミュレーション結果に基づいてマシンシステムを制御することとなる。
 図20は、シミュレーション装置100のハードウェア構成を例示するブロック図である。図20に示すように、シミュレーション装置100は、回路190を有する。回路190は、一つ又は複数のプロセッサ191と、メモリ192と、ストレージ193と、入出力ポート194と、通信ポート195とを含む。ストレージ193は、例えば不揮発性の半導体メモリ等、コンピュータによって読み取り可能な記憶媒体を有する。ストレージ193は、少なくとも、マシンシステム2の三次元実形状を表す実形状モデルを実測データに基づいて生成することと、マシンシステム2のシミュレーションモデルと、実形状モデルとの比較に基づいて、シミュレーションモデルを補正することと、をシミュレーション装置100に実行させるプログラムを記憶している。例えばストレージ193は、上述した機能上の構成をシミュレーション装置100に構築させるためのプログラムを記憶している。
 メモリ192は、ストレージ193の記憶媒体からロードしたプログラム及びプロセッサ191による演算結果を一時的に記憶する。プロセッサ191は、メモリ192と協働して上記プログラムを実行することで、シミュレーション装置100の各機能ブロックを構成する。入出力ポート194は、プロセッサ191からの指令に従って、三次元カメラ54との間で情報の入出力を行う。通信ポート195は、プロセッサ191からの指令に従って、上位コントローラ53との間で通信を行う。
 なお、回路190は、必ずしもプログラムにより各機能を構成するものに限られない。例えば回路190は、専用の論理回路又はこれを集積したASIC(Application Specific Integrated Circuit)により少なくとも一部の機能を構成してもよい。
〔モデリング手順〕
 続いて、モデリング方法の一例として、シミュレーション装置100が実行するシミュレーションモデルの補正手順を例示する。この手順は、マシンシステム2の三次元実形状を表す実形状モデルを実測データに基づいて生成することと、マシンシステム2のシミュレーションモデルと、実形状モデルとの比較に基づいて、シミュレーションモデルを補正することと、を含む。
 図21に示すように、シミュレーション装置100は、まずステップS01,S02,S03,S04,S05,S06,S07,S08を順に実行する。ステップS01では、実形状モデル生成部112が、複数の三次元カメラ54によりそれぞれ撮影されたマシンシステム2の複数の三次元実画像を取得する。ステップS02では、実形状モデル生成部112が、ステップS01において取得した複数の三次元実画像のそれぞれにおいて、上述した合成用オブジェクトに対応する部分を認識する。ステップS03では、実形状モデル生成部112が、複数の三次元実画像のそれぞれにおいて合成用オブジェクトに対応する部分を、合成用オブジェクトの既知の形状にマッチングさせるように、複数の三次元実画像を組み合わせて実形状モデルを生成する。
 ステップS04では、カメラ位置算出部121が、複数の三次元実画像のそれぞれにおいて、上記キャリブレーション用オブジェクトに対応する部分を認識する。ステップS05では、カメラ位置算出部121が、三次元仮想画像のうちキャリブレーション用オブジェクトに対応する部分を、三次元実画像のうちキャリブレーション用オブジェクトに対応する部分にマッチングさせるように三次元仮想カメラの位置を算出することを、複数の三次元仮想カメラごとに実行する。ステップS06では、前処理部122が、三次元仮想カメラの位置と、シミュレーションモデルとに基づいて、シミュレーションモデルのうち三次元仮想カメラには写らない仮想隠れ部分を算出することを、複数の三次元仮想カメラごとに実行する。
 ステップS07では、前処理部122が、ステップS06における仮想隠れ部分の算出結果に基づいて、複数の三次元仮想カメラのいずれにも写らない仮想重複隠れ部分をシミュレーションモデルから除外した前処理済みモデルを生成し、前処理済みモデル記憶部124に格納する。ステップS08では、再分割部123が、前処理済みモデル記憶部124に格納された前処理済みモデルを、複数のオブジェクト3にそれぞれ対応する複数の前処理済みオブジェクトモデルに分割する。
 次に、シミュレーション装置100は、図22に示すように、ステップS11,S12,S13,S14を実行する。ステップS11では、モデル補正部113が、複数のオブジェクトモデルにおいて、マッチング対象モデルとして選択されていない1以上のオブジェクトモデルのうち最も大きいオブジェクトモデルをマッチング対象モデルとして選択する。ステップS12では、モデル補正部113が、マッチング対象モデルに対応する前処理済みオブジェクトモデルと、実形状モデルとの比較に基づいて、マッチング対象モデルを実形状モデルにマッチングさせる。
 ステップS13では、モデル補正部113が、実形状モデルのうち、マッチング対象モデルにマッチングした部分を、次回以降におけるマッチング処理の対象から除外する。ステップS14では、全てのオブジェクトモデルに対するマッチング処理が完了したか否かをモデル補正部113が確認する。
 ステップS14において、マッチング処理が完了していないオブジェクトモデルが残っていると判定した場合、シミュレーション装置100は処理をステップS11に戻す。以後、全てのオブジェクトモデルに対するマッチングが完了するまで、マッチング対象モデルの選択と、実形状モデルに対するマッチング対象モデルのマッチングとが繰り返される。
 ステップS14において全てのオブジェクトモデルに対するマッチング処理が完了したと判定した場合、シミュレーション装置100はステップS15を実行する。ステップS15では、オブジェクト追加部114が、いずれのオブジェクトモデルにもマッチングしていない部分を実形状モデルから抽出し、抽出した部分に基づいて新たなオブジェクトモデルをシミュレーションモデルに追加する。また、オブジェクト削除部115が、実形状モデルにマッチングしていない部分をシミュレーションモデルから抽出し、抽出した部分をシミュレーションモデルから削除する。以上でシミュレーションモデルの補正手順が完了する。
〔本実施形態の効果〕
 以上に説明したように、シミュレーション装置100は、ロボット4A,4Bを含むマシンシステム2の三次元実形状を表す実形状モデル210を実測データに基づいて生成する実形状モデル生成部112と、マシンシステム2のシミュレーションモデル310と、実形状モデル210との比較に基づいて、シミュレーションモデル310を補正するモデル補正部113と、を備える。
 このシミュレーション装置100によれば、シミュレーションモデル310の精度を容易に向上させることができる。従って、このシミュレーション装置100は、シミュレーションの信頼向上に有効である。
 マシンシステム2は、ロボット4A,4Bを含む複数のオブジェクト3を含み、シミュレーションモデル310は、複数のオブジェクト3にそれぞれ対応する複数のオブジェクトモデルを含み、モデル補正部113は、複数のオブジェクトモデルを個別に実形状モデル210にマッチングさせてシミュレーションモデル310を補正してもよい。この場合、実形状モデル210に対するマッチングを複数のオブジェクトモデルごとに行うことで、より高い精度でシミュレーションモデル310を補正することができる。
 モデル補正部113は、複数のオブジェクトモデルから、一つのマッチング対象モデルを選択することと、マッチング対象モデルを実形状モデル210にマッチングさせることと、を含むマッチング処理を繰り返してシミュレーションモデル310を補正してもよい。この場合、複数のオブジェクトごとのマッチングを、容易且つ確実に遂行することができる。
 モデル補正部113は、マッチング処理において、他のオブジェクトモデルに既にマッチングしている部分を実形状モデル210から除外して、マッチング対象モデルを実形状モデル210にマッチングさせてもよい。この場合、他のオブジェクトモデルに既にマッチングした部分の影響を受けることなく、新たなマッチング対象モデルを実形状モデル210にマッチングさせることができる。このため、より高い精度でシミュレーションモデル310を補正することができる。
 モデル補正部113は、マッチング処理において、まだマッチング対象モデルとして選択されていない1以上のオブジェクトモデルのうち最も大きいオブジェクトモデルをマッチング対象モデルとして選択してもよい。この場合、大きいオブジェクトモデルから順にマッチングさせ、オブジェクトモデルにマッチングした部分を実形状モデル210から除外してゆくことで、各マッチング処理において、マッチング対象モデルをマッチングさせるべき部分を絞り込みやすくなる。このため、より高い精度でシミュレーションモデル310を補正することができる。
 シミュレーション装置100は、複数のオブジェクトモデルの全てに対してマッチング処理が完了した後、いずれのオブジェクトモデルにもマッチングしていない部分を実形状モデル210から抽出し、抽出した部分に基づいて新たなオブジェクトモデルをシミュレーションモデル310に追加するオブジェクト追加部114を更に備えていてもよい。この場合、より高い精度でシミュレーションモデル310を補正することができる。
 シミュレーション装置100は、複数のオブジェクトモデルの全てに対してマッチング処理が完了した後、実形状モデル210にマッチングしていない部分をシミュレーションモデル310から抽出し、抽出した部分をシミュレーションモデル310から削除するオブジェクト削除部115を更に備えていてもよい。この場合、より高い精度でシミュレーションモデル310を補正することができる。
 実形状モデル生成部112は、三次元カメラ54により撮影されたマシンシステム2の三次元実画像に基づいて実形状モデル230を生成し、シミュレーション装置100は、三次元カメラ54には写らない隠れ部分230a,230bに対応する仮想隠れ部分410a,410bをシミュレーションモデル310から除外した前処理済みモデル410を生成する前処理部122を更に備え、モデル補正部113は、前処理済みモデル410と、実形状モデル210との比較に基づいてシミュレーションモデル310を補正してもよい。この場合、複数のオブジェクト3のうち、三次元カメラ54に写らないために実形状モデル210で表すことができない部分をシミュレーションモデル310から除外した前処理済みモデル410を、実形状モデル230との比較対象とすることで、シミュレーションモデル310をより高い精度で補正することができる。
 実形状モデル生成部112は、三次元カメラ54により撮影されたマシンシステム2の三次元実画像に基づいて実形状モデル230を生成し、シミュレーション装置100は、マシンシステム2のうち、三次元カメラ54には写らない隠れ部分230a,230bに対応する仮想隠れ部分410a,410bをシミュレーションモデル310から除外した前処理済みモデル410を生成する前処理部122と、前処理済みモデル410を、複数のオブジェクト3にそれぞれ対応する複数の前処理済みオブジェクトモデルに分割する再分割部123と、を更に備え、モデル補正部113は、複数のオブジェクトモデルのそれぞれを、対応する前処理済みオブジェクトモデルと、実形状モデルとの比較に基づいて実形状モデル210にマッチングさせてもよい。この場合、複数のオブジェクトモデルごとのマッチングの精度を向上させることで、より高い精度でシミュレーションモデル310を補正することができる。
 シミュレーション装置100は、三次元カメラ54に対応する三次元仮想カメラ321A,321Bによりシミュレーションモデル310を撮影することで得られる三次元仮想画像を三次元実画像にマッチングさせるように三次元仮想カメラ321A,321Bの位置を算出するカメラ位置算出部121を更に備え、前処理部122は、三次元仮想カメラ321A,321Bの位置と、シミュレーションモデル310とに基づいて仮想隠れ部分410a,410bを算出してもよい。この場合、仮想隠れ部分410a,410bを、より高い精度で隠れ部分230a,230bに対応させることで、より高い精度でシミュレーションモデル310を補正することができる。
 カメラ位置算出部121は、三次元仮想画像のうち所定のキャリブレーション用オブジェクトに対応する部分を、三次元実画像のうちキャリブレーション用オブジェクトに対応する部分にマッチングさせるように三次元仮想カメラ321A,321Bの位置を算出してもよい。この場合、キャリブレーション用オブジェクトに対応する部分に限定して、三次元仮想画像と三次元実画像とのマッチングを行うことで、三次元仮想カメラ321A,321Bの位置を更に容易に補正することができる。
 実形状モデル生成部112は、三次元カメラ54A,54Bを含む複数の三次元カメラ54から複数の三次元実画像を取得し、複数の三次元実画像を組み合わせて実形状モデル210を生成し、前処理部122は、複数の三次元カメラ54A,54Bのいずれにも写らない重複隠れ部分230cに対応する仮想重複隠れ部分410cをシミュレーションモデル310から除外した前処理済みモデル410を生成してもよい。この場合、仮想重複隠れ部分410cの削減によって、より高い精度でシミュレーションモデル310を補正することができる。
 実形状モデル生成部112は、三次元カメラ54A,54Bを含む複数の三次元カメラ54から、共通の合成用オブジェクトの画像を含む複数の三次元実画像を取得し、複数の三次元実画像のそれぞれにおいて合成用オブジェクトに対応する部分を、合成用オブジェクトの既知の形状にマッチングさせるように、複数の三次元実画像を組み合わせて実形状モデル210を生成してもよい。この場合、複数の三次元実画像を容易に合成して、隠れ部分の少ない実形状モデル210を生成することができる。
 シミュレーション装置100は、複数の三次元カメラ54A,54Bにそれぞれ対応する複数の三次元仮想カメラ321A,321Bによりシミュレーションモデル310を撮影することで得られる複数の三次元仮想画像を複数の三次元実画像にマッチングさせるように複数の三次元仮想カメラ321A,321Bの位置を算出するカメラ位置算出部121を更に備え、前処理部122は、複数の三次元仮想カメラ321A,321Bの位置と、シミュレーションモデル310とに基づいて、仮想重複隠れ部分410cを算出してもよい。この場合、仮想重複隠れ部分410cを、より高い精度で重複隠れ部分230cに対応させることで、より高い精度でシミュレーションモデル310を補正することができる。
 実形状モデル生成部112は、マシンシステム2の三次元実形状を点群で表す実形状モデル210を生成し、前処理部122は、シミュレーションモデル310の三次元仮想形状を仮想点群で表す前処理済みモデル410を生成してもよい。この場合、実形状モデル210と、前処理済みモデル410との差異を容易に評価することができる。
 実形状モデル生成部112は、マシンシステム2の三次元実形状を点群で表す実形状モデル210を生成し、シミュレーション装置100は、シミュレーションモデル310の三次元仮想形状を仮想点群で表す前処理済みモデル410を生成する前処理部と、を更に備え、モデル補正部113は、前処理済みモデル410と、実形状モデル210との比較に基づいてシミュレーションモデル310を補正してもよい。この場合、実形状モデル210と、前処理済みモデル410との差異を容易に評価することができる。
 以上、実施形態について説明したが、本開示は必ずしも上述した実施形態に限定されるものではなく、その要旨を逸脱しない範囲で様々な変更が可能である。
 2…マシンシステム、3…オブジェクト、4A,4B…ロボット、50…制御システム、53…上位コントローラ(制御装置)、54,54A,54B…三次元カメラ、100…シミュレーション装置、112…実形状モデル生成部、113…モデル補正部、114…オブジェクト追加部、115…オブジェクト削除部、121…カメラ位置算出部、122…前処理部、123…再分割部、125…シミュレータ、126…プログラム生成部(プランニング支援装置)、210,220,230…実形状モデル、230a,230b…隠れ部分、230c…重複隠れ部分、310…シミュレーションモデル、321A,321B…三次元仮想カメラ、410…前処理済みモデル、410a,410b…仮想隠れ部分、410c…仮想重複隠れ部分、411,412,413,414…前処理済みオブジェクトモデル。

Claims (19)

  1.  ロボットを含むマシンシステムの三次元実形状を表す実形状モデルを実測データに基づいて生成する実形状モデル生成部と、
     前記マシンシステムのシミュレーションモデルと、前記実形状モデルとの比較に基づいて、前記シミュレーションモデルを補正するモデル補正部と、を備えるシミュレーション装置。
  2.  前記マシンシステムは、前記ロボットを含む複数のオブジェクトを含み、
     前記シミュレーションモデルは、前記複数のオブジェクトにそれぞれ対応する複数のオブジェクトモデルを含み、
     前記モデル補正部は、前記複数のオブジェクトモデルを個別に前記実形状モデルにマッチングさせて前記シミュレーションモデルを補正する、請求項1記載のシミュレーション装置。
  3.  前記モデル補正部は、前記複数のオブジェクトモデルから、一つのマッチング対象モデルを選択することと、前記マッチング対象モデルを前記実形状モデルにマッチングさせることと、を含むマッチング処理を繰り返して前記シミュレーションモデルを補正する、請求項2記載のシミュレーション装置。
  4.  前記モデル補正部は、前記マッチング処理において、他のオブジェクトモデルに既にマッチングしている部分を前記実形状モデルから除外して、前記マッチング対象モデルを前記実形状モデルにマッチングさせる、請求項3記載のシミュレーション装置。
  5.  前記モデル補正部は、前記マッチング処理において、まだ前記マッチング対象モデルとして選択されていない1以上のオブジェクトモデルのうち最も大きいオブジェクトモデルを前記マッチング対象モデルとして選択する、請求項4記載のシミュレーション装置。
  6.  前記複数のオブジェクトモデルの全てに対してマッチング処理が完了した後、いずれのオブジェクトモデルにもマッチングしていない部分を前記実形状モデルから抽出し、抽出した部分に基づいて新たなオブジェクトモデルを前記シミュレーションモデルに追加するオブジェクト追加部を更に備える、請求項2~5のいずれか一項記載のシミュレーション装置。
  7.  前記複数のオブジェクトモデルの全てに対してマッチング処理が完了した後、前記実形状モデルにマッチングしていない部分を前記シミュレーションモデルから抽出し、抽出した部分を前記シミュレーションモデルから削除するオブジェクト削除部を更に備える、請求項2~6のいずれか一項記載のシミュレーション装置。
  8.  前記実形状モデル生成部は、三次元カメラにより撮影された前記マシンシステムの三次元実画像に基づいて前記実形状モデルを生成し、
     前記シミュレーション装置は、前記三次元カメラには写らない隠れ部分に対応する仮想隠れ部分を前記シミュレーションモデルから除外した前処理済みモデルを生成する前処理部を更に備え、
     前記モデル補正部は、前記前処理済みモデルと、前記実形状モデルとの比較に基づいて前記シミュレーションモデルを補正する、請求項1~7のいずれか一項記載のシミュレーション装置。
  9.  前記実形状モデル生成部は、三次元カメラにより撮影された前記マシンシステムの三次元実画像に基づいて前記実形状モデルを生成し、
     前記シミュレーション装置は、
     前記マシンシステムのうち、前記三次元カメラには写らない隠れ部分に対応する仮想隠れ部分を前記シミュレーションモデルから除外した前処理済みモデルを生成する前処理部と、
     前記前処理済みモデルを、前記複数のオブジェクトにそれぞれ対応する複数の前処理済みオブジェクトモデルに分割する再分割部と、を更に備え、
     前記モデル補正部は、前記複数のオブジェクトモデルのそれぞれを、対応する前処理済みオブジェクトモデルと、前記実形状モデルとの比較に基づいて前記実形状モデルにマッチングさせる、請求項2~7のいずれか一項記載のシミュレーション装置。
  10.  前記三次元カメラに対応する三次元仮想カメラにより前記シミュレーションモデルを撮影することで得られる三次元仮想画像を前記三次元実画像にマッチングさせるように前記三次元仮想カメラの位置を算出するカメラ位置算出部を更に備え、
     前記前処理部は、前記三次元仮想カメラの位置と、前記シミュレーションモデルとに基づいて前記仮想隠れ部分を算出する、請求項8又は9記載のシミュレーション装置。
  11.  前記カメラ位置算出部は、前記三次元仮想画像のうち所定のキャリブレーション用オブジェクトに対応する部分を、前記三次元実画像のうち前記キャリブレーション用オブジェクトに対応する部分にマッチングさせるように前記三次元仮想カメラの位置を算出する、請求項10記載のシミュレーション装置。
  12.  前記実形状モデル生成部は、前記三次元カメラを含む複数の三次元カメラから複数の三次元実画像を取得し、複数の三次元実画像を組み合わせて前記実形状モデルを生成し、
     前記前処理部は、前記複数の三次元カメラのいずれにも写らない重複隠れ部分に対応する仮想重複隠れ部分を前記シミュレーションモデルから除外した前処理済みモデルを生成する、請求項8又は9記載のシミュレーション装置。
  13.  前記実形状モデル生成部は、前記三次元カメラを含む複数の三次元カメラから、共通の合成用オブジェクトの画像を含む複数の三次元実画像を取得し、前記複数の三次元実画像のそれぞれにおいて前記合成用オブジェクトに対応する部分を、前記合成用オブジェクトの既知の形状にマッチングさせるように、前記複数の三次元実画像を組み合わせて前記実形状モデルを生成する、請求項12記載のシミュレーション装置。
  14.  前記複数の三次元カメラにそれぞれ対応する複数の三次元仮想カメラにより前記シミュレーションモデルを撮影することで得られる複数の三次元仮想画像を前記複数の三次元実画像にマッチングさせるように前記複数の三次元仮想カメラの位置を算出するカメラ位置算出部を更に備え、
     前記前処理部は、前記複数の三次元仮想カメラの位置と、前記シミュレーションモデルとに基づいて、前記仮想重複隠れ部分を算出する、請求項12又は13記載のシミュレーション装置。
  15.  前記実形状モデル生成部は、前記マシンシステムの三次元実形状を点群で表す前記実形状モデルを生成し、
     前記前処理部は、前記シミュレーションモデルの三次元仮想形状を仮想点群で表す前記前処理済みモデルを生成する、請求項8~14のいずれか一項記載のシミュレーション装置。
  16.  前記実形状モデル生成部は、前記マシンシステムの三次元実形状を点群で表す前記実形状モデルを生成し、
     前記シミュレーション装置は、前記シミュレーションモデルの三次元仮想形状を仮想点群で表す前処理済みモデルを生成する前処理部と、を更に備え、
     前記モデル補正部は、前記前処理済みモデルと、前記実形状モデルとの比較に基づいて前記シミュレーションモデルを補正する、請求項1~7のいずれか一項記載のシミュレーション装置。
  17.  前記シミュレーションモデルに基づいて、前記マシンシステムの動作をシミュレーションするシミュレータを更に備える、請求項1~16のいずれか一項記載のシミュレーション装置。
  18.  請求項17記載のシミュレーション装置と、
     前記シミュレータによるシミュレーション結果に基づいて前記マシンシステムを制御する制御装置と、を備える制御システム。
  19.  ロボットを含むマシンシステムの三次元実形状を表す実形状モデルを実測データに基づいて生成することと、
     前記マシンシステムのシミュレーションモデルと、前記実形状モデルとの比較に基づいて、前記シミュレーションモデルを補正することと、を含むモデリング方法。
PCT/JP2021/007415 2021-02-26 2021-02-26 シミュレーション装置、制御システム及びモデリング方法 WO2022180801A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2023501964A JPWO2022180801A1 (ja) 2021-02-26 2021-02-26
CN202180094494.2A CN116917093A (zh) 2021-02-26 2021-02-26 模拟装置、控制系统以及建模方法
PCT/JP2021/007415 WO2022180801A1 (ja) 2021-02-26 2021-02-26 シミュレーション装置、制御システム及びモデリング方法
US18/450,406 US20230390921A1 (en) 2021-02-26 2023-08-16 Simulation model correction of a machine system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/007415 WO2022180801A1 (ja) 2021-02-26 2021-02-26 シミュレーション装置、制御システム及びモデリング方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US18/450,406 Continuation US20230390921A1 (en) 2021-02-26 2023-08-16 Simulation model correction of a machine system

Publications (1)

Publication Number Publication Date
WO2022180801A1 true WO2022180801A1 (ja) 2022-09-01

Family

ID=83048701

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/007415 WO2022180801A1 (ja) 2021-02-26 2021-02-26 シミュレーション装置、制御システム及びモデリング方法

Country Status (4)

Country Link
US (1) US20230390921A1 (ja)
JP (1) JPWO2022180801A1 (ja)
CN (1) CN116917093A (ja)
WO (1) WO2022180801A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024134801A1 (ja) * 2022-12-21 2024-06-27 日本電気株式会社 処理装置、制御装置、シミュレーションシステム、処理方法、制御方法、および記録媒体

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11104984A (ja) * 1997-10-06 1999-04-20 Fujitsu Ltd 実環境情報表示装置及び実環境情報表示処理を実行するプログラムを記録したコンピュータ読み取り可能な記録媒体
JP2003150219A (ja) * 2001-11-12 2003-05-23 Fanuc Ltd 作業機械のシミュレーション装置
WO2007069721A1 (ja) * 2005-12-16 2007-06-21 Ihi Corporation 三次元形状データの記憶・表示方法と装置および三次元形状の計測方法と装置
JP2016221659A (ja) * 2015-06-03 2016-12-28 キヤノン株式会社 ロボットシステム、ロボットシステムの制御方法、プログラム、記録媒体及び物品の製造方法
JP2019089201A (ja) * 2019-03-12 2019-06-13 キヤノン株式会社 教示データ作成装置、教示データ作成装置の制御方法及びロボットシステム
JP2019141943A (ja) * 2018-02-19 2019-08-29 ファナック株式会社 ロボットの動作をシミュレーションするシミュレーション装置
JP2019191989A (ja) * 2018-04-26 2019-10-31 キヤノン株式会社 仮想視点画像を生成するシステム、方法及びプログラム
JP2020075338A (ja) * 2018-11-09 2020-05-21 オムロン株式会社 ロボット制御装置、シミュレーション方法、及びシミュレーションプログラム
WO2020235057A1 (ja) * 2019-05-22 2020-11-26 日本電気株式会社 モデル生成装置、モデル生成システム、モデル生成方法、非一時的なコンピュータ可読媒体

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11104984A (ja) * 1997-10-06 1999-04-20 Fujitsu Ltd 実環境情報表示装置及び実環境情報表示処理を実行するプログラムを記録したコンピュータ読み取り可能な記録媒体
JP2003150219A (ja) * 2001-11-12 2003-05-23 Fanuc Ltd 作業機械のシミュレーション装置
WO2007069721A1 (ja) * 2005-12-16 2007-06-21 Ihi Corporation 三次元形状データの記憶・表示方法と装置および三次元形状の計測方法と装置
JP2016221659A (ja) * 2015-06-03 2016-12-28 キヤノン株式会社 ロボットシステム、ロボットシステムの制御方法、プログラム、記録媒体及び物品の製造方法
JP2019141943A (ja) * 2018-02-19 2019-08-29 ファナック株式会社 ロボットの動作をシミュレーションするシミュレーション装置
JP2019191989A (ja) * 2018-04-26 2019-10-31 キヤノン株式会社 仮想視点画像を生成するシステム、方法及びプログラム
JP2020075338A (ja) * 2018-11-09 2020-05-21 オムロン株式会社 ロボット制御装置、シミュレーション方法、及びシミュレーションプログラム
JP2019089201A (ja) * 2019-03-12 2019-06-13 キヤノン株式会社 教示データ作成装置、教示データ作成装置の制御方法及びロボットシステム
WO2020235057A1 (ja) * 2019-05-22 2020-11-26 日本電気株式会社 モデル生成装置、モデル生成システム、モデル生成方法、非一時的なコンピュータ可読媒体

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024134801A1 (ja) * 2022-12-21 2024-06-27 日本電気株式会社 処理装置、制御装置、シミュレーションシステム、処理方法、制御方法、および記録媒体

Also Published As

Publication number Publication date
CN116917093A (zh) 2023-10-20
JPWO2022180801A1 (ja) 2022-09-01
US20230390921A1 (en) 2023-12-07

Similar Documents

Publication Publication Date Title
CN106873550B (zh) 模拟装置以及模拟方法
US20200338730A1 (en) Trajectory planning device, trajectory planning method and program
US7324873B2 (en) Offline teaching apparatus for robot
JP6576255B2 (ja) ロボット軌道生成方法、ロボット軌道生成装置、および製造方法
JP6585665B2 (ja) 仮想オブジェクト表示システム
CN110298854B (zh) 基于在线自适应与单目视觉的飞行蛇形臂协同定位方法
JP3673749B2 (ja) シミュレーション装置
US7945349B2 (en) Method and a system for facilitating calibration of an off-line programmed robot cell
US20110054685A1 (en) Robot off-line teaching method
US20180036883A1 (en) Simulation apparatus, robot control apparatus and robot
KR101126808B1 (ko) 다축 제어 기계의 오차 평가 방법 및 장치
JP2001105359A (ja) ロボットシステム用グラフィック表示装置
JP5490080B2 (ja) スケルトンモデルの姿勢制御方法,及びプログラム
JP6915441B2 (ja) 情報処理装置、情報処理方法、および情報処理プログラム
JP4553437B2 (ja) 画像検査システム及び制御方法
JP7052250B2 (ja) 情報処理装置、情報処理方法、および情報処理プログラム
US20230390921A1 (en) Simulation model correction of a machine system
JP3415427B2 (ja) ロボットシミュレーションにおけるキャリブレーション装置
JP2021059012A (ja) 情報処理装置、情報処理方法及びロボットシステム
JP2019193975A (ja) ロボット軌道生成方法、ロボット軌道生成装置、および製造方法
JP2001216015A (ja) ロボットの動作教示装置
CN110568818A (zh) 虚拟对象显示系统
JP7249221B2 (ja) センサ位置姿勢キャリブレーション装置及びセンサ位置姿勢キャリブレーション方法
JPWO2022180801A5 (ja)
JP2018132847A (ja) 情報処理装置、情報処理方法、およびプログラム

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

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2023501964

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 202180094494.2

Country of ref document: CN

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21927901

Country of ref document: EP

Kind code of ref document: A1