WO2020031333A1 - シミュレーション方法およびシミュレーションシステム - Google Patents

シミュレーション方法およびシミュレーションシステム Download PDF

Info

Publication number
WO2020031333A1
WO2020031333A1 PCT/JP2018/029942 JP2018029942W WO2020031333A1 WO 2020031333 A1 WO2020031333 A1 WO 2020031333A1 JP 2018029942 W JP2018029942 W JP 2018029942W WO 2020031333 A1 WO2020031333 A1 WO 2020031333A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
module
simulation
module data
work
Prior art date
Application number
PCT/JP2018/029942
Other languages
English (en)
French (fr)
Inventor
明洋 東田
児玉 誠吾
政利 藤田
Original Assignee
株式会社Fuji
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 株式会社Fuji filed Critical 株式会社Fuji
Priority to US17/258,663 priority Critical patent/US20210271791A1/en
Priority to PCT/JP2018/029942 priority patent/WO2020031333A1/ja
Priority to JP2020535429A priority patent/JP7160923B2/ja
Priority to CN201880096426.8A priority patent/CN112543695A/zh
Priority to EP18929337.6A priority patent/EP3835005A4/en
Publication of WO2020031333A1 publication Critical patent/WO2020031333A1/ja
Priority to JP2022114473A priority patent/JP7373028B2/ja

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total 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], computer integrated manufacturing [CIM]
    • G05B19/41885Total 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], computer integrated manufacturing [CIM] characterised by modeling, simulation of the manufacturing system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • 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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B17/00Systems involving the use of models or simulators of said systems
    • G05B17/02Systems involving the use of models or simulators of said systems electric
    • 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/40099Graphical user interface for robotics, visual robot user interface
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/02CAD in a network environment, e.g. collaborative CAD or distributed simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/10Numerical modelling
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Definitions

  • This specification discloses a simulation method and a simulation system.
  • Patent Document 1 a simulation method for simulating an operation of a robot having a robot hand for gripping a work has been disclosed (for example, see Patent Document 1).
  • a shape model that models a shape of a work, a robot hand, a robot, a surrounding environment, position information indicating a positional relationship between them, an operation model of a robot, and the like are fetched, and each shape of the robot hand is taken. Is calculated. Then, the control parameters of the robot hand at the time of gripping the workpiece, such as the operation speed and the stop time of the robot hand, are changed based on the calculated grip possibility.
  • a process of setting a shape model, an operation model, and the like in association with each other may be required every time the simulation is performed. In that case, a long preparation work is required to execute the simulation, and the preparation work becomes cumbersome.
  • the present disclosure mainly aims to simplify simulation preparation work and efficiently execute a simulation.
  • This disclosure employs the following means to achieve the above-mentioned main object.
  • a simulation method is a simulation method of executing, using a computer, a simulation of a work system including a plurality of modules, and various data including data on the shapes of the plurality of modules are collected for each of the modules.
  • an execution step of executing a simulation is a simulation method of executing, using a computer, a simulation of a work system including a plurality of modules, and various data including data on the shapes of the plurality of modules are collected for each of the modules.
  • the simulation method acquires module data in which various data including data on the shapes of a plurality of modules are collected for each module, and integrates the acquired module data to construct a model of a work system in a virtual space. Then, a simulation is performed using the constructed model.
  • the simulation can be started immediately by acquiring the module data and constructing the model without performing the operation of collecting and summarizing the data of each module each time the simulation is executed. Therefore, the simulation preparation work can be simplified, and the simulation can be executed efficiently.
  • FIG. 1 is a configuration diagram illustrating a schematic configuration of a simulation system 10;
  • FIG. 1 is a configuration diagram illustrating an outline of a configuration of a work system.
  • Explanatory drawing which shows an example of the module data 21 contained in the module DB20.
  • Explanatory drawing which shows an example of a structure of module data 21E.
  • FIG. 4 is an explanatory view showing an image of a chuck type end effector.
  • 9 is a flowchart illustrating an example of module data registration processing.
  • 9 is a flowchart illustrating an example of a model construction process.
  • 9 is a flowchart illustrating an example of a simulation execution process.
  • FIG. 1 is a configuration diagram schematically illustrating a configuration of a simulation system 10 of the present embodiment
  • FIG. 2 is a configuration diagram illustrating a schematic configuration of a work system 50. 2 is the X direction, the front and rear direction is the Y direction, and the up and down direction is the Z direction.
  • the simulation system 10 includes a cloud server 11 in which various data necessary for executing the simulation are registered, and a plurality of computers 41 connected to the cloud server 11 via the network 19 and performing various processes such as simulation of the work system 50. , 41B,...
  • the work system 50 is configured as a system that picks up a work by the operation of a robot 60 fixed to a work table 51 and performs a predetermined work.
  • the work include various parts such as mechanical parts and electronic parts.
  • the predetermined work there is a mounting work in which the robot 60 arranges and mounts the work on the substrate S.
  • the work table 51 is provided with a substrate transfer device 52 for transferring the substrate S and a feeder 54 for supplying components as a work.
  • the substrate transport device 52 has a pair of belt conveyors spanned in the left-right direction (X-axis direction) with a space in the front-rear direction (Y-axis direction), and transports the substrate S from left to right by the belt conveyor. I do.
  • the feeder 54 is configured as a tape feeder that feeds a tape containing a plurality of works at predetermined intervals backward (in the Y-axis direction).
  • the feeder 54 is not limited to a tape feeder, and may be a tray feeder that supplies a tray on which a plurality of works are arranged.
  • the robot 60 includes a vertically articulated robot arm 62 in which a plurality of links are rotatably connected via joints, and a control device 68 that controls the entire system including the robot 60.
  • the robot arm 62 is provided with a servomotor (not shown) and an encoder for detecting a rotation angle at each joint.
  • An end effector as a work tool can be attached to and detached from the distal end link of the robot arm 62. Examples of the end effector include an electromagnetic chuck, a mechanical chuck, a suction nozzle, and the like, and an end effector selected according to the shape and material of the work is attached.
  • a mechanical chuck (hereinafter, chuck) 64 having a pair of openable and closable chuck claws 64a is attached.
  • the pressure from a pressure supply source (not shown) is supplied to the chuck 64 via a pipe (not shown) provided along each link, a pipe 65 shown in FIG. 2, and the like.
  • the work is gripped and released by opening and closing the claws 64a.
  • a camera 66 and a light 67 are attached to the distal end link of the robot arm 62.
  • the camera 66 includes a lens and an image sensor that generates electric charges by receiving light, generates image data based on the electric charges of the image sensor, and outputs the image data to the control device 68.
  • the camera 66 captures an image for recognizing the position and posture of the work supplied by the feeder 54, for example.
  • the illumination 67 is a ring light in which light sources such as LEDs are arranged in a ring shape, and is arranged coaxially with the lens of the camera 66.
  • the control device 68 includes a CPU, a ROM, an HDD, a RAM, and the like, and stores a system program for managing the entire operation system 50 in addition to the operation program of the robot 60.
  • the operation program of the substrate transfer device 52 is stored in a PLC (Programmable Logic Controller) of the substrate transfer device 52
  • the operation program of the feeder 54 is stored in the PLC of the feeder 54.
  • a detection signal from an encoder of the robot 60, image data from the camera 66, operation signals from the substrate transfer device 52 and the feeder 54, and the like are input.
  • the control device 68 outputs a control signal to the servo motor of the robot 60 and the chuck 64 as an end effector, a control signal to the camera 66 and the illumination 67, a control signal to the substrate transfer device 52 and the feeder 54, and the like.
  • the substrate transfer device 52, the feeder 54, the robot 60 (robot arm 62), the end effector (chuck 64), the camera 66, the illumination 67, and the like that constitute the work system 50 may be referred to as modules. .
  • the simulation system 10 can execute a simulation for operating various work systems including the work system 50 thus configured in a virtual space.
  • the cloud server 11 communicates with a control unit 12 having a CPU, a ROM, a RAM, and the like, a storage unit 15 such as an HDD for storing various application programs and various data, and an external device such as a computer 41 connected to the network 19 and the like. And a communication unit 16 for performing the following.
  • the control unit 12 includes a module editor 13 that generates module data 21 in which various data necessary for the simulation are compiled for each module.
  • the storage unit 15 has a module database (module DB) 20 in which a plurality of module data 21 are stored. Note that the module data 21 includes not only data of each module constituting the work system but also data of a work to be worked in the work system.
  • FIG. 3 is an explanatory diagram showing an example of the module data 21 included in the module DB 20.
  • a plurality of module data 21 is registered in the module DB 20 for each type of module.
  • the plurality of module data 21 are registered separately in the form of robot data 20A, end effector data 20B, peripheral device data 20C, and work data 20D.
  • the robot data 20A includes module data 21A that summarizes data of the robot arm 62 (also referred to as robot A) of the work system 50, and module data 21B to module data that summarizes data of other various robots (robots B to D). 21D are registered.
  • the various robots may be of a horizontal articulated type, a parallel link type, or the like in addition to the vertical articulated type.
  • the module data 21A includes three-dimensional CAD data (hereinafter, 3DCAD data) relating to the shape of the robot A, program data relating to an operation program for causing the robot A to perform a predetermined operation, and the like, and each data is referred to as configuration data.
  • the module data 21B to 21D also include 3D CAD data of the robots B to D and program data of the robots B to D, respectively.
  • the end effector data 20B includes module data 21E that summarizes data of an end effector (chuck 64) that can be attached to and detached from the robot A, and other types of end effectors and robots B to D that can be attached to and detached from the robot A. Registered are module data 21F to 21H each of which summarizes data of each possible type of end effector.
  • the peripheral device data 20C includes module data 21I that summarizes data of the feeder 54 (peripheral device A), module data 21J that summarizes data of the camera 66 (peripheral device B), and illumination 67 (peripheral device C). Registered are module data 21K that summarizes data, module data 21L that summarizes data of a conveyor (peripheral device D) as the substrate transfer device 53, and the like.
  • module data in which data of peripheral devices in a work system other than the work system 50 are put together is also registered in the peripheral device data 20C. Further, in the work data 20D, module data 21M to 21P in which data of various works A to D to be worked are collected are registered.
  • FIG. 4 is an explanatory diagram showing an example of the configuration of the module data 21E
  • FIG. 5 is an explanatory diagram showing an image of the chuck type end effector
  • FIG. 6 is an explanatory diagram showing an example of the configuration of the module data 21L.
  • the module data 21E of the chuck 64 includes 3D CAD data 30A relating to the shape and dimensions of the chuck 64, program data 30B relating to an operation program such as a cycle diagram in opening and closing operations of the chuck 64, and And characteristic data 30C relating to the characteristic.
  • 3D CAD data 30A relating to the shape and dimensions of the chuck 64
  • program data 30B relating to an operation program such as a cycle diagram in opening and closing operations of the chuck 64
  • And characteristic data 30C relating to the characteristic.
  • the 3D CAD data 30A is simplified in shape so that the maximum external shape (dimension) can be grasped while eliminating unnecessary components for the simulation of the piping 65 (see FIG. 2) of the chuck 64 and the like.
  • the registered data is registered.
  • the characteristic data 30C the area of the gripping surface of the work on the claw 64a of the chuck 64, the friction coefficient, the material of the claw 64a, and the like are registered.
  • the module data 21L of the conveyor includes 3D CAD data 30D relating to the shape and dimensions of the conveyor and a mechanism relating to contents that can be set for the mechanism such as an operation speed (transport speed) and an operation direction (transport direction).
  • setting data 30E is
  • the module data 21I of the feeder 54 includes 3D CAD data relating to the shape and dimensions of the feeder 54 and program data relating to an operation program such as a ladder program of the feeder 54.
  • the module data 21J of the camera 66 includes 3D CAD data relating to the shape and dimensions of the camera 66 and characteristic data such as the viewing angle and the focal length of the camera 66.
  • the module data 21K of the lighting 67 (peripheral device C) includes 3D CAD data relating to the shape and dimensions of the lighting 67, and characteristic data such as the type of light source such as a parallel light source and a point light source and the illuminance. ing.
  • each module data 21 is provided with an interface (I / F) 22 for mutually connecting with other module data 21 in the virtual space.
  • I / F 22 an input / output I / F (I / O_I / F) 22a illustrated by a circle, a soft I / F 22b illustrated by a square, and a mechanical I / F 22c illustrated by a triangle are parallel.
  • a wiring pipe I / F 22d illustrated as a quadrilateral and a physical operation I / F 22e illustrated as a pentagon are provided.
  • the I / O_I / F 22a is used for input of an on / off signal for instructing operation or stop of the module, input / output of various data, and the like.
  • the software I / F 22b is used for input and output of various control signals such as a set value of an operation speed.
  • the mechanical I / F 22c is used for mechanical connection between the modules.
  • the wiring piping I / F is used for connection of wiring such as a motor, connection of piping such as air and gas, and the like.
  • the physical operation I / F 22e is used for input / output of values required for calculation of a coefficient of friction, gripping force, operation speed, and the like, and input / output of calculation results.
  • the mechanical I / F 22c is used for mechanical connection to the distal end link of the robot arm 62, and the chuck 64 is turned on / off by inputting an ON / OFF control signal using the I / O_I / F 22a.
  • the pawl 64a opens and closes, and the gripping state of the work is determined from various values input using the physical operation I / F 22e. For example, when the pressure value supplied to the chuck 64 is input from the physical operation I / F 22e, the gripping force is calculated from the area of the gripping surface of the claw 64a, and the possibility of gripping the workpiece is determined by comparing with the weight of the workpiece. .
  • each configuration data 30 in the module data 21 is also provided with an interface (I / F) 32. That is, each configuration data 30 includes an input / output I / F (I / O_I / F) 32a, a software I / F 32b, a mechanical I / F 32c, a wiring piping I / F 32d, and a physical operation I / F 32e. Is provided. These I / Fs 32a to 32e have the same functions as the I / Fs 22a to 22e, and are illustrated by the same figures. As shown in the drawing, the corresponding I / Fs of the I / Fs 22a to 22e and the I / Fs 32a to 32e are connected to each other. For example, in FIG.
  • the I / O_I / F 22a of the module data 21E is connected to the I / O_I / F 32a of the 3D CAD data 30A, the program data 30B, and the characteristic data 30C, respectively. Is also connected. It should be noted that the same type of I / Fs 22 and 32 have corresponding address information added thereto, and the I / Fs 22 and 32 corresponding to the address information are mutually connectable.
  • the computer 41 includes a control unit 42 having a CPU, a ROM, a RAM, and the like, a storage unit 45 such as an HDD that stores various application programs and various data, and a communication that is connected to the network 19 and communicates with the cloud server 11 and the like.
  • the communication unit 46 may communicate with the control device 68 of the work system 50 via the network 19 or the like.
  • Various instructions from the operator are input to the computer 41 from an input unit 47 such as a keyboard and a mouse.
  • the computer 41 displays various information such as a simulation model M, setting information, and execution results on a display unit 48 such as a display.
  • another computer such as the computer 41B has the same configuration as the computer 41, and is communicably connected to the cloud server 11 via the network 19. Further, another computer such as the computer 41B also constructs a simulation model M using the module data 21 while accepting an input from the input unit 47B and displaying various information on the display unit 48B. Execution is possible.
  • FIG. 7 is a flowchart illustrating an example of the module data registration process. This process is executed by the control unit 12 of the cloud server 11.
  • the control unit 12 firstly obtains the shape data, program data, mechanism setting data, characteristic data, and the like for each module such as the robot 60, the substrate transfer device 52, and the feeder 54 that constitute the work system 50.
  • the various data are collected (S100).
  • the control unit 12 may collect data input from a storage medium (not shown) in which data is stored, or may be generated by a device capable of executing a simulation such as a computer 41 and input via the network 19.
  • the control unit 12 collectively converts the data acquired for each module as configuration data 30 into module data and creates module data 21 to which the I / Fs 22 and 32 are connected (S110).
  • the connection setting of the I / Fs 22 and 32 may be performed by an operator or the like using an input unit or a display unit (not shown).
  • the control unit 12 assigns an identification name to the created module data 21 and registers the module data 21 in a corresponding category of any of the robot data 20A, the end effector data 20B, the peripheral device data 20C, and the work data 20D.
  • the data is stored in the module DB 20 (S120), and the module data registration process ends. As a result, as shown in FIG.
  • the module data 21 for each module is stored in the module DB 20, and each computer 41 acquires the module data 21 via the network 19 and can use it.
  • the control unit 12 collects each data and collects it in the module data 21, it is also possible to input the module data 21 that has already been collected and store it in the module DB 20.
  • FIG. 8 is a flowchart illustrating an example of the model construction process.
  • This process is executed by the control unit 42 of the computer 41.
  • the control unit 42 first selects, from the module data 21 stored in the module DB 20, the module data 21 necessary for constructing the simulation model M and acquires it via the network 19. (S200).
  • the control unit 42 displays, for example, a selection screen in which icons of the module data 21 in the module DB 20 are selectably arranged on the display unit 48, and accepts the selection of the worker using the input unit 47, and the like. Processing may be performed.
  • the control unit 42 may select necessary module data 21 and automatically acquire the module data 21 based on information such as a work system to be simulated or a work to be worked.
  • the control unit 42 determines whether or not the acquired module data 21 includes module data 21 that includes mechanism setting data and does not include program data (S210).
  • the control unit 42 determines whether or not operation setting is necessary (S220).
  • the setting is received from the worker (S230).
  • the control unit 42 makes an affirmative determination in S210 if there is any data including the 3D CAD data 30D and the mechanism setting data 30E but not including the program data, such as the conveyor module data 21L illustrated in FIG. .
  • the control unit 42 determines in S220 that the operation setting is necessary, and performs a process of setting any one of the operation speeds in S230.
  • control unit 42 may perform processing for setting the trajectory of the robot arm in S230 if there is, for example, the module data 21 of the robot that includes the mechanism setting data but does not include the program data.
  • the control unit 42 skips the process of S230 when determining in S210 that there is no module data 21 including mechanism setting data and not including program data, or determining in S220 that operation setting is not necessary.
  • the control unit 42 constructs a model M in the virtual space in which the module data 21 is integrated by interconnecting the I / Fs 22 of the selected module data 21 (S240), and performs a model construction process.
  • the control unit 42 receives the selection of the I / F 22 to be connected by the operator using the input unit 47, and connects the received I / Fs 22 to each other to integrate the module data 21. It is assumed that the constructed model M is displayed on the display unit 48 or the like.
  • FIG. 9 is an explanatory diagram illustrating an example of a model M to which each module data 21 is connected, and illustrates the model M of the work system 50. In FIG.
  • the module data 21 stored in the module DB 20 the module data 21A of the robot A, the module data 21E of the chuck 64, the module data 21I of the feeder 54, the module data 21M of the work A, the camera
  • the module data 21J of 66, the module data 21K of the lighting 67, and the module data 21L of the conveyor are acquired and connected.
  • the model M can be quickly constructed by acquiring and connecting the module data 21 stored in the cloud server 11, so that the simulation can be started immediately.
  • the connection of the wiring pipe I / F 22 d is omitted for convenience of illustration, but the connection may be appropriately made according to the supply of air, electricity, or the like.
  • control unit 42 can store the module data 21 once obtained and the constructed model M in the storage unit 45. Therefore, when performing a similar simulation next time, the control unit 42 can omit the process of reacquiring the module data 21 and the process of reconstructing the model M, and can start the simulation quickly.
  • FIG. 10 is a flowchart illustrating an example of the simulation execution process.
  • the control unit 42 executes a simulation using the constructed model M (S300), and displays the simulation result on the display unit 48 (S310). Then, the control unit 42 determines whether or not the current simulation result needs to be modified (S320). In S320, it is determined whether correction is necessary based on an instruction from an operator who has checked the simulation result of this time. Alternatively, the control unit 42 may automatically determine whether correction is necessary based on the result of the current simulation.
  • the control unit 42 determines that the correction is necessary when the trajectory of the robot A in the model M interferes with another module.
  • the control unit 42 accepts the correction from the operator and corrects the configuration data 30 of the corresponding module data 21 (S330).
  • the operation program, operation settings, characteristics, and the like of each module can be corrected on a correction screen displayed on the display unit 48.
  • the control unit 42 receives a correction made by the operator on the correction screen, and corrects the configuration data 30 based on the received correction. Therefore, the modification of the operator performed on the simulation result is reflected in the configuration data 30 of each module data 21.
  • the control unit 42 corrects the operation setting value for the mechanism setting data 30E of the conveyor module data 21L.
  • the control unit 42 corrects the characteristic data that is the configuration data 30 of the module data 21E of the end effector A.
  • the control unit 42 corrects the program data that is the configuration data 30 of the module data 21A of the robot A.
  • the control unit 42 corrects the program data that is the configuration data 30 of the module data 21I of the feeder 54.
  • the operator can also instruct replacement of the module (module data 21) when correction cannot be performed due to restrictions such as shape and size.
  • the control unit 42 may perform processing of reacquiring the module data 21 to replace the module, replacing the module data 21 in the model M, and reconstructing the model M, or the like. Then, the control unit 42 determines whether or not to re-execute the simulation based on an instruction from the worker (S340). If it is determined that the simulation is to be re-executed, the control unit 42 returns to S300 and re-executes the simulation using the corrected configuration data. Execute.
  • control unit 42 determines in S320 that it is not necessary to correct the current simulation result, or determines in S340 that the simulation is not to be re-executed, the control unit 42 stores the module It is determined whether to update and register the data 21 (S350). When the control unit 42 determines that update registration is not to be performed, the simulation execution process ends. When the control unit 42 determines to perform update registration, the control unit 42 updates and registers the module data 21 including the configuration data 30 reflecting the correction result of S330 (S360), and ends the simulation execution process.
  • the control unit 42 is not limited to the unit that updates and registers the module data 21 in the storage unit 45, and may register the new module data 21 associated with the correction history in the storage unit 45. Further, the control unit 42 may register the module data 21 associated with such a correction history in the module DB 20 of the cloud server 11 or the like. This makes it possible for a third party to use the corrected module data 21 on another computer to execute a simulation.
  • the robot 60 of the present embodiment corresponds to a robot
  • the work system 50 corresponds to a work system
  • the computer 41 (41B) corresponds to a computer
  • S200 of the model construction process in FIG. 8 corresponds to an acquisition step
  • S240 corresponds to a construction step
  • S300 of the simulation execution processing in FIG. 10 corresponds to an execution step.
  • S330 and S360 in the same process correspond to an update step.
  • the control unit 42 executing S200 of the model construction process in FIG. 8 corresponds to an acquisition unit
  • the control unit 42 executing S240 of the process corresponds to a construction unit
  • the control unit 42 corresponding to the execution unit corresponds to the execution unit.
  • the simulation system 10 described above acquires module data 21 in which various data including 3D CAD data are compiled for each module, integrates the acquired module data 21 to construct a model M in a virtual space, and executes a simulation. I do. Therefore, the preparation work can be simplified and the simulation can be efficiently executed.
  • the configuration data 30 relating to the operation program of the module and the configuration data 30 relating to the mechanism setting are included in the module data 21, it is not necessary to set the operation program and the mechanism setting every time the simulation is executed, and the preparation work is further simplified. be able to.
  • the simulation result can be appropriately reflected in the next and subsequent simulations. It is not necessary to modify 30 and the preparation work can be further simplified.
  • the module data 21 includes the program data 30B and the characteristic data 30C.
  • the present invention is not limited to this, and it is sufficient if the module data 21 includes at least the shape data such as the 3D CAD data 30A.
  • the module data 21 is connected via the I / F 22.
  • the present invention is not limited to this. It may be connected.
  • the configuration data 30 is modified and the module data 21 is updated and registered.
  • the present invention is not limited to this, and the module data 21 may not be updated and registered. However, it is preferable that the module data 21 be updated in order to appropriately reflect the correction and save the trouble of the next correction.
  • the computer 41 stores the acquired module data 21 in the storage unit 45.
  • the present invention is not limited to this.
  • an individual work area that can be used by each computer 41 may be provided in the cloud server 11, and each computer 41 may store the acquired module data 21 in the work area and perform simulation.
  • the module data is stored in the cloud server 11 and the computer 41 is operated as a simulator.
  • the present invention is not limited to this.
  • the application of the simulator itself exists on the cloud server 11
  • the simulator is operated on the cloud server 11
  • the computer 41 accesses the cloud server 11 using the communication unit 46 and the input unit 47 to obtain the simulation result. May be used.
  • the work system 50 including a plurality of modules including the robot 60 is illustrated.
  • the work system may include the robot 60 as long as the system includes a plurality of modules. It may not be.
  • the simulation system of the present disclosure may be configured as follows.
  • the module data may include, as the various data, at least one of data relating to an operation program of the module and data relating to a mechanism setting of the module.
  • the operation program includes a ladder program and a cycle diagram.
  • the setting related to the operation of the module is performed as necessary. It may be performed. In this way, even if the module data does not include the data related to the operation program, the simulation can be executed by performing the setting related to the operation in addition to the data related to the mechanism setting.
  • the setting relating to the operation for example, in the case of a module such as a conveyor having a plurality of operation speed patterns, the operation speed is set, and in the case of a module such as a robot in which mechanism settings are set, the operation is set. For example, a trajectory may be set.
  • the module data is provided with an interface corresponding to a function of each of the modules, and in the building step, the module data is connected to each other via the interface.
  • the module data may be integrated. In this way, the module data can be easily integrated, so that the preparation work can be further simplified.
  • the simulation method according to the present disclosure may include an update step of updating the module data by modifying the various data included in the module data based on a modification performed on a simulation performed in the execution step. Good. By doing so, the simulation result can be appropriately reflected in the next and subsequent simulations, so that it is not necessary to correct data in the preparation work, and the preparation work can be further simplified.
  • a simulation system is a simulation system that executes a simulation of a work system including a plurality of modules, and includes module data in which various data including data on the shapes of the plurality of modules are collected for each module.
  • An acquisition unit for acquiring, a construction unit for integrating the module data acquired by the acquisition unit to construct a model of the work system in a virtual space, and executing a simulation using the model constructed by the construction unit And an execution unit that performs the processing.
  • the simulation system acquires module data and constructs a model without performing an operation of collecting or collecting data of each module each time a simulation is executed.
  • the simulation can be started immediately. Therefore, the simulation preparation work can be simplified, and the simulation can be executed efficiently.
  • a function that realizes each step of the above-described simulation method may be added.
  • the present invention can be used in the manufacturing industry of a simulation system and the like.

Abstract

複数のモジュールで構成された作業システムのシミュレーションをコンピュータを用いて実行するシミュレーション方法は、複数のモジュールの形状に関するデータを含む各種データがモジュール毎にまとめられたモジュールデータを取得する取得ステップと、取得ステップで取得されたモジュールデータを統合して仮想空間上の作業システムのモデルを構築する構築ステップと、構築ステップで構築されたモデルを用いてシミュレーションを実行する実行ステップと、を含むものである。

Description

シミュレーション方法およびシミュレーションシステム
 本明細書は、シミュレーション方法およびシミュレーションシステムを開示する。
 従来、ワークを把持するロボットハンドを有するロボットなどの動作をシミュレーションするシミュレーション方法が開示されている(例えば、特許文献1参照)。この特許文献1では、ワークやロボットハンド、ロボット、周辺環境などの形状をモデル化した形状モデルと、それらの位置関係を示す位置情報と、ロボットの動作モデルなどを取り込んで、ロボットハンドの形状毎の把持可能性を演算する。そして、演算された把持可能性に基づいて、ロボットハンドの動作速度や停止時間など、ワークを把持する際のロボットハンドの制御パラメータを変更するものとしている。
特開2015-100866号公報
 上述したようなシミュレーション方法では、シミュレーションを実行する度に、形状モデルや動作モデルなどを関連付けて設定する処理が必要となる場合がある。その場合、シミュレーションを実行するために長時間の準備作業が必要となり、準備作業が煩わしいものとなってしまう。
 本開示は、シミュレーションの準備作業を簡略化して、シミュレーションを効率よく実行することを主目的とする。
 本開示は、上述の主目的を達成するために以下の手段を採った。
 本開示のシミュレーション方法は、複数のモジュールで構成された作業システムのシミュレーションをコンピュータを用いて実行するシミュレーション方法であって、前記複数のモジュールの形状に関するデータを含む各種データが前記モジュール毎にまとめられたモジュールデータを取得する取得ステップと、前記取得ステップで取得された前記モジュールデータを統合して仮想空間上の前記作業システムのモデルを構築する構築ステップと、前記構築ステップで構築されたモデルを用いてシミュレーションを実行する実行ステップと、を含むことを要旨とする。
 本開示のシミュレーション方法は、複数のモジュールの形状に関するデータを含む各種データがモジュール毎にまとめられたモジュールデータを取得し、取得したモジュールデータを統合して仮想空間上の作業システムのモデルを構築し、構築したモデルを用いてシミュレーションを実行する。これにより、シミュレーションを実行する度に各モジュールのデータをそれぞれ収集したりまとめたりする作業を行わなくても、モジュールデータを取得してモデルを構築することでシミュレーションを速やかに開始することができる。このため、シミュレーションの準備作業を簡略化して、シミュレーションを効率よく実行することができる。
シミュレーションシステム10の構成の概略を示す構成図。 作業システム50の構成の概略を示す構成図。 モジュールDB20に含まれるモジュールデータ21の一例を示す説明図。 モジュールデータ21Eの構成の一例を示す説明図。 チャックタイプのエンドエフェクタのイメージを示す説明図。 モジュールデータ21Lの構成の一例を示す説明図。 モジュールデータ登録処理の一例を示すフローチャート。 モデル構築処理の一例を示すフローチャート。 各モジュールデータ21を接続したモデルMの一例を示す説明図。 シミュレーション実行処理の一例を示すフローチャート。
 次に、本開示を実施するための形態について図面を参照しながら説明する。
 図1は本実施形態のシミュレーションシステム10の構成の概略を示す構成図であり、図2は作業システム50の構成の概略を示す構成図である。なお、図2の左右方向がX方向であり、前後方向がY方向であり、上下方向がZ方向である。
 シミュレーションシステム10は、シミュレーションの実行に必要な各種データが登録されたクラウドサーバ11と、クラウドサーバ11とネットワーク19を介して接続され作業システム50のシミュレーションなどの各種処理を実行する複数台のコンピュータ41,41B,・・・とを備える。
 ここで、作業システム50について説明する。作業システム50は、作業台51に固定されたロボット60の作動によりワークをピックアップして所定作業を行うシステムとして構成されている。ワークとしては、例えば機械部品や電子部品などの各種の部品などが挙げられる。所定作業の一例としては、ロボット60がワークを基板Sに配置して実装する実装作業などが挙げられる。
 作業台51には、基板Sを搬送する基板搬送装置52と、ワークとしての部品を供給するフィーダ54とが配設されている。基板搬送装置52は、前後方向(Y軸方向)に間隔を空けて左右方向(X軸方向)に架け渡された一対のベルトコンベアを有し、基板Sをベルトコンベアによって左から右へと搬送する。フィーダ54は、複数のワークが所定間隔で収容されたテープを後方(Y軸方向)へ送り出すテープフィーダとして構成されている。フィーダ54は、テープフィーダに限られず、複数のワークが配置されたトレイを供給するトレイフィーダなどであってもよい。
 ロボット60は、複数のリンクが関節を介して回転可能に連結された垂直多関節型のロボットアーム62と、ロボット60を含むシステム全体を制御する制御装置68とを備える。ロボットアーム62は、各関節に図示しないサーボモータや回転角度を検出するエンコーダなどが設けられている。ロボットアーム62の先端リンクには、作業ツールとしてのエンドエフェクタが着脱可能となっている。エンドエフェクタとしては、電磁チャックやメカニカルチャック、吸着ノズルなどを挙げることができ、ワークの形状や材質に合わせて選択されたものが取り付けられる。本実施形態では、開閉可能な一対のチャック爪64aを有するメカニカルチャック(以下、チャック)64が取り付けられている。なお、図示しない圧力供給源からの圧力が、各リンクに沿って配設された図示しない配管や図2に示す配管65などを介してチャック64に供給されており、その圧力を利用してチャック爪64aを開閉してワークの把持及び把持解除を行う。
 また、ロボットアーム62の先端リンクには、カメラ66と、照明67とが取り付けられている。カメラ66は、レンズや受光により電荷を発生させる撮像素子などを備え、撮像素子の電荷に基づいて画像データを生成して制御装置68へ出力する。カメラ66は、例えばフィーダ54により供給されたワークの位置や姿勢を認識するための画像を撮像する。照明67は、LEDなどの発光源が環状に配置されたリングライトであり、カメラ66のレンズと同軸に配置されている。
 制御装置68は、CPUやROM、HDD、RAMなどで構成されており、ロボット60の動作プログラム以外に、作業システム50の全体を管理するシステムプログラムなどを記憶している。また、図示は省略するが、基板搬送装置52の動作プログラムは基板搬送装置52のPLC(Programmable Logic Controller)が記憶しており、フィーダ54の動作プログラムは、フィーダ54のPLCが記憶している。制御装置68には、ロボット60のエンコーダなどからの検知信号やカメラ66からの画像データ、基板搬送装置52やフィーダ54からの動作信号などが入力される。制御装置68からは、ロボット60のサーボモータやエンドエフェクタとしてのチャック64への制御信号、カメラ66や照明67への制御信号、基板搬送装置52やフィーダ54への制御信号などが出力される。なお、以下の説明では、作業システム50を構成する基板搬送装置52やフィーダ54、ロボット60(ロボットアーム62)、エンドエフェクタ(チャック64)、カメラ66、照明67などを、それぞれモジュールという場合がある。
 シミュレーションシステム10は、このようにして構成された作業システム50を含む各種の作業システムを仮想空間上で動作させるシミュレーションを実行可能となっている。クラウドサーバ11は、CPUやROM、RAMなどを有する制御部12と、各種アプリケーションプログラムや各種データなどを記憶するHDDなどの記憶部15と、ネットワーク19などに接続されコンピュータ41などの外部装置と通信を行う通信部16とを備える。制御部12は、シミュレーションに必要な各種データをモジュール毎にまとめたモジュールデータ21を生成するモジュールエディタ13などを有する。また、記憶部15は、複数のモジュールデータ21が記憶されたモジュールデータベース(モジュールDB)20などを有する。なお、モジュールデータ21には、作業システムを構成する各モジュールのデータだけでなく、作業システムで作業対象とされるワークのデータも含む。
 ここで、クラウドサーバ11のモジュールデータ21について説明する。図3はモジュールDB20に含まれるモジュールデータ21の一例を示す説明図である。モジュールDB20には、モジュールの種類別に複数のモジュールデータ21が登録されている。例えば、複数のモジュールデータ21は、ロボットデータ20Aとエンドエフェクタデータ20Bと周辺機器データ20Cとワークデータ20Dとに区分けして登録されている。
 ロボットデータ20Aには、作業システム50のロボットアーム62(ロボットAともいう)のデータをまとめたモジュールデータ21Aや、他の各種ロボット(ロボットB~Dなど)のデータをそれぞれまとめたモジュールデータ21B~21Dなどが登録されている。なお、各種ロボットは、垂直多関節型以外に、水平多関節型やパラレルリンク型などとしてもよい。モジュールデータ21Aには、ロボットAの形状に関する3次元CADデータ(以下、3DCADデータ)や、ロボットAに所定作業を行わせる動作プログラムに関するプログラムデータなどが含まれており、各データを構成データという。モジュールデータ21B~21Dも同様に、それぞれ、ロボットB~Dの3DCADデータと、ロボットB~Dのプログラムデータとが含まれている。
 また、エンドエフェクタデータ20Bには、ロボットAに着脱可能なエンドエフェクタ(チャック64)のデータをまとめたモジュールデータ21Eや、ロボットAに着脱可能な他の種類のエンドエフェクタやロボットB~Dに着脱可能な各種類のエンドエフェクタなどのデータをそれぞれまとめたモジュールデータ21F~21Hなどが登録されている。また、周辺機器データ20Cには、フィーダ54(周辺機器A)のデータをまとめたモジュールデータ21Iや、カメラ66(周辺機器B)のデータをまとめたモジュールデータ21J、照明67(周辺機器C)のデータをまとめたモジュールデータ21K、基板搬送装置53としてのコンベア(周辺機器D)のデータをまとめたモジュールデータ21Lなどが登録されている。なお、図示は省略するが、周辺機器データ20Cには、作業システム50以外の作業システムにおける周辺機器のデータをまとめたモジュールデータも登録されている。また、ワークデータ20Dには、作業対象となる各種のワークA~Dのデータをそれぞれまとめたモジュールデータ21M~21Pなどが登録されている。
 ここで、図4はモジュールデータ21Eの構成の一例を示す説明図であり、図5はチャックタイプのエンドエフェクタのイメージを示す説明図であり、図6はモジュールデータ21Lの構成の一例を示す説明図である。図4に示すように、チャック64のモジュールデータ21Eには、チャック64の形状や寸法に関する3DCADデータ30Aと、チャック64の開閉動作におけるサイクル線図などの動作プログラムに関するプログラムデータ30Bと、チャック64の特性に関する特性データ30Cとが含まれている。図5に示すように、3DCADデータ30Aは、チャック64の配管65(図2参照)などのシミュレーションに不要な構成を削除しつつ、最大の外形形状(寸法)を把握できるように形状を簡素化したデータが登録されている。また、特性データ30Cは、チャック64の爪64aにおけるワークの把持面の面積や摩擦係数、爪64aの材質などが登録されている。図6に示すように、コンベアのモジュールデータ21Lには、コンベアの形状や寸法に関する3DCADデータ30Dと、動作速度(搬送速度)や動作方向(搬送方向)など機構に対して設定可能な内容に関する機構設定データ30Eとが含まれている。以下、図示は省略するが、フィーダ54のモジュールデータ21Iには、フィーダ54の形状や寸法に関する3DCADデータと、フィーダ54のラダープログラムなどの動作プログラムに関するプログラムデータとが含まれている。カメラ66のモジュールデータ21Jには、カメラ66の形状や寸法に関する3DCADデータと、カメラ66の視野角や焦点距離などの特性データとが含まれている。また、照明67(周辺機器C)のモジュールデータ21Kには、照明67の形状や寸法に関する3DCADデータと、平行光源か点光源であるかなどの光源の種類や照度などの特性データとが含まれている。
 また、各モジュールデータ21には、図4,図6に示すように、仮想空間上で他のモジュールデータ21と相互に接続するためのインタフェース(I/F)22が設けられている。I/F22の種類の一例としては、丸で図示した入出力I/F(I/O_I/F)22aと、四角形で図示したソフトI/F22bと、三角形で図示したメカI/F22cと、平行四辺形で図示した配線配管I/F22dと、五角形で図示した物理演算I/F22eとが設けられている。I/O_I/F22aは、モジュールの作動またはその停止を指示するためのオン/オフ信号の入力や各種データの入出力などに用いられる。ソフトI/F22bは、作動速度の設定値などの各種制御信号の入出力などに用いられる。メカI/F22cは、各モジュール同士の機械的な接続などに用いられる。配線配管I/Fは、モータなどの配線の接続やエアやガスなどの配管の接続などに用いられる。物理演算I/F22eは、摩擦係数や把持力、作動速度などの演算に必要な各値の入出力や演算結果の入出力などに用いられる。図5のチャック64のモデルでは、ロボットアーム62の先端リンクへの機械的な接続にメカI/F22cが用いられ、I/O_I/F22aを用いたオン/オフの制御信号の入力によりチャック64の爪64aが開閉し、物理演算I/F22eを用いて入力される各種の値からワークの把持状態が定まる。例えば、物理演算I/F22eからチャック64に供給される圧力値が入力されると、爪64aの把持面の面積から把持力が演算されワークの重量と比較してワークの把持の可否が定められる。
 また、モジュールデータ21内の構成データ30にも、インタフェース(I/F)32が設けられている。即ち、各構成データ30には、入出力I/F(I/O_I/F)32aと、ソフトI/F32bと、メカI/F32cと、配線配管I/F32dと、物理演算I/F32eとが設けられている。これらのI/F32a~32eは、I/F22a~22eと同様な機能を有しており、同じ図形で図示する。また、図示するように、I/F22a~22eとI/F32a~32eとのうち対応するI/F同士が相互に接続されている。例えば、図4では、モジュールデータ21EのI/O_I/F22aが、3DCADデータ30Aとプログラムデータ30Bと特性データ30Cの各I/O_I/F32aにそれぞれ接続されており、その他の対応するI/F同士も接続されている。なお、同じ種類のI/F22,32には、対応するアドレス情報が付加されており、アドレス情報が対応するI/F22,32は相互に接続可能なものとする。
 コンピュータ41は、CPUやROM、RAMなどを有する制御部42と、各種アプリケーションプログラムや各種データなどを記憶するHDDなどの記憶部45と、ネットワーク19などに接続されクラウドサーバ11などと通信を行う通信部46とを備える。なお、通信部46は、ネットワーク19などを介して作業システム50の制御装置68と通信を行うものとしてもよい。コンピュータ41には、キーボードやマウスなどの入力部47から作業者による各種指示などが入力される。また、コンピュータ41は、ディスプレイなどの表示部48にシミュレーションのモデルMや設定情報、実行結果などの各種情報を表示する。なお、コンピュータ41Bなどの他のコンピュータは、コンピュータ41と同様に構成され、ネットワーク19を介してクラウドサーバ11と通信可能に接続されている。また、コンピュータ41Bなどの他のコンピュータも、入力部47Bからの入力を受け付けたり表示部48Bに各種情報を表示したりしながら、モジュールデータ21を用いてシミュレーション用のモデルMを構築してシミュレーションの実行が可能である。
 こうして構成されたシミュレーションシステム10の動作について説明する。まず、クラウドサーバ11に上述したモジュールデータ21が登録される際の処理を説明する。図7はモジュールデータ登録処理の一例を示すフローチャートである。この処理は、クラウドサーバ11の制御部12により実行される。モジュールデータ登録処理では、制御部12は、まず、作業システム50を構成するロボット60や基板搬送装置52、フィーダ54などの各モジュールについて、形状データやプログラムデータ、機構設定データ、特性データなどの必要な各データを収集する(S100)。制御部12は、データが記憶された図示しない記憶媒体などから入力されるものを収集してもよいし、コンピュータ41のようにシミュレーションを実行可能な装置で生成されてネットワーク19を介して入力されるものを収集してもよい。次に、制御部12は、モジュール毎に取得した各データを構成データ30としてまとめてモジュールデータ化すると共に各I/F22,32を接続したモジュールデータ21を作成する(S110)。なお、I/F22,32の接続設定は、図示しない入力部や表示部などを用いて作業者などが行うものとしてもよい。続いて、制御部12は、作成したモジュールデータ21に、識別名称を付してロボットデータ20Aかエンドエフェクタデータ20Bか周辺機器データ20Cかワークデータ20Dのいずれかの該当する区分けに登録することでモジュールDB20に記憶して(S120)、モジュールデータ登録処理を終了する。これにより、図3に示したように、モジュール毎のモジュールデータ21がモジュールDB20に記憶され、各コンピュータ41がネットワーク19を介してモジュールデータ21を取得して利用可能となる。なお、制御部12が各データを収集してモジュールデータ21にまとめるものとしたが、既にまとめられたモジュールデータ21を入力してモジュールDB20に記憶するものとしてもよい。
 次に、コンピュータ41でシミュレーションが実行される際の処理を説明する。図8はモデル構築処理の一例を示すフローチャートである。この処理は、コンピュータ41の制御部42により実行される。モデル構築処理では、制御部42は、まず、モジュールDB20に記憶されているモジュールデータ21のうち、シミュレーションのモデルMを構築するために必要なモジュールデータ21を選択してネットワーク19を介して取得する(S200)。制御部42は、例えば、モジュールDB20内のモジュールデータ21のアイコンが選択可能に並んだ選択画面を表示部48に表示して、入力部47を用いた作業者の選択を受け付けることなどによりS200の処理を行ってもよい。あるいは、制御部42が、シミュレーション対象の作業システムや作業対象のワークなどの情報に基づいて、必要なモジュールデータ21を選択し自動で取得するものなどとしてもよい。
 続いて、制御部42は、取得したモジュールデータ21に機構設定データを含みプログラムデータを含まないモジュールデータ21があるか否かを判定する(S210)。制御部42は、そのようなモジュールデータ21があると判定すると、作動設定の必要があるか否かを判定し(S220)、必要があると判定すると、そのモジュールデータ21に必要な作動内容を作業者から受け付けて設定する(S230)。制御部42は、図6に例示したコンベアのモジュールデータ21Lのように、3DCADデータ30Dと機構設定データ30Eが含まれるものの、プログラムデータが含まれないものがあれば、S210で肯定的に判定する。また、制御部42は、例えばコンベアが複数の動作速度を設定可能な場合には、S220で作動設定の必要があると判定し、S230でいずれかの動作速度を設定する処理を行う。なお、制御部42は、例えばロボットのモジュールデータ21として機構設定データが含まれるもののプログラムデータが含まれないものがあれば、S230でロボットアームの軌道を設定する処理を行うものなどとしてもよい。制御部42は、S210で機構設定データを含みプログラムデータを含まないモジュールデータ21がないと判定したり、S220で作動設定の必要がないと判定したりすると、S230の処理をスキップする。
 次に、制御部42は、選択された各モジュールデータ21のI/F22を相互に接続することで各モジュールデータ21を統合した仮想空間上のモデルMを構築して(S240)、モデル構築処理を終了する。制御部42は、S240では、入力部47を用いた作業者による接続対象のI/F22の選択を受け付け、受け付けたI/F22を相互に接続してモジュールデータ21を統合する。なお、構築されたモデルMは、表示部48に表示されるものなどとする。図9は各モジュールデータ21を接続したモデルMの一例を示す説明図であり、作業システム50のモデルMを例示する。図9では、モジュールDB20に記憶されているモジュールデータ21のうち、ロボットAのモジュールデータ21Aと、チャック64のモジュールデータ21Eと、フィーダ54のモジュールデータ21Iと、ワークAのモジュールデータ21Mと、カメラ66のモジュールデータ21Jと、照明67のモジュールデータ21Kと、コンベアのモジュールデータ21Lとが取得されて接続されている。このように、クラウドサーバ11に記憶されているモジュールデータ21を取得して接続することでモデルMを速やかに構築することができるから、シミュレーションを速やかに開始することができる。なお、図9では、図示の都合上、配線配管I/F22dの接続を省略するが、エアや電気などの供給の必要に応じて適宜接続するものとすればよい。また、制御部42は、一旦取得したモジュールデータ21や構築したモデルMを記憶部45に記憶しておくことができる。このため、制御部42は、次回に同様なシミュレーションを行う際に、モジュールデータ21を再取得する処理やモデルMを再構築する処理を省略して、シミュレーションを速やかに開始することもできる。
 こうしてモデルMを構築し、作業者からシミュレーションの実行が指示されると、制御部42はシミュレーションを実行する。図10はシミュレーション実行処理の一例を示すフローチャートである。シミュレーション実行処理では、制御部42は、構築したモデルMを用いてシミュレーションを実行し(S300)、そのシミュレーション結果を表示部48に表示する(S310)。そして、制御部42は、今回のシミュレーション結果に対して修正が必要か否かを判定する(S320)。S320では、今回のシミュレーション結果を確認した作業者からの指示に基づいて修正が必要か否かが判定される。あるいは、制御部42は、今回のシミュレーション結果から自動的に修正が必要か否かを判定してもよい。例えば、制御部42は、モデルMにおけるロボットAの軌跡が他のモジュールと干渉する場合などに修正が必要と判定する。制御部42は、修正が必要であると判定すると、作業者からの修正を受け付け、対応するモジュールデータ21の構成データ30を修正する(S330)。なお、図示は省略するが、表示部48に表示される修正画面上で各モジュールの動作プログラムや作動設定、特性などを修正可能となっている。制御部42は、修正画面上で作業者によりなされた修正を受け付けて、受け付けた修正に基づいて構成データ30を修正する。このため、シミュレーション結果に対して行われる作業者の修正が、各モジュールデータ21の構成データ30に反映されることになる。例えば、制御部42は、作業者によりコンベアの搬送速度を上げるように修正された場合、コンベアのモジュールデータ21Lの機構設定データ30Eに対する作動設定の設定値を修正する。また、制御部42は、エンドエフェクタAの把持面の面積や摩擦係数などが修正された場合、エンドエフェクタAのモジュールデータ21Eの構成データ30である特性データを修正する。さらに、制御部42は、ロボットAの軌跡が修正された場合、ロボットAのモジュールデータ21Aの構成データ30であるプログラムデータを修正する。制御部42は、フィーダ54のラダープログラムなどの動作プログラムが修正された場合、フィーダ54のモジュールデータ21Iの構成データ30であるプログラムデータを修正する。なお、作業者は、形状やサイズなどの制約により修正で対応できない場合には、モジュール(モジュールデータ21)の入れ替えを指示することもできる。その場合、制御部42は、モジュールを変更するためにモジュールデータ21を再度取得してモデルM内のモジュールデータ21と入れ替えてモデルMを再構築する処理を行うものなどとすればよい。そして、制御部42は、作業者からの指示に基づいてシミュレーションを再実行するか否かを判定し(S340)、再実行すると判定すると、S300に戻り修正後の構成データを用いてシミュレーションを再実行する。
 また、制御部42は、S320で今回のシミュレーション結果に対する修正は必要ないと判定したり、S340でシミュレーションを再実行しないと判定したりすると、作業者からの指示に基づいて記憶部45内のモジュールデータ21を更新登録するか否かを判定する(S350)。制御部42は、更新登録しないと判定すると、シミュレーション実行処理を終了する。また、制御部42は、更新登録すると判定すると、S330の修正結果を反映させた構成データ30を含むモジュールデータ21を更新登録して(S360)、シミュレーション実行処理を終了する。なお、制御部42は、記憶部45内のモジュールデータ21を更新登録するものに限られず、修正履歴を対応付けた新規なモジュールデータ21を記憶部45に登録するものとしてもよい。また、制御部42は、そのような修正履歴を対応付けたモジュールデータ21を、クラウドサーバ11のモジュールDB20に登録するものなどとしてもよい。このようにすれば、修正されたモジュールデータ21を第三者が他のコンピュータで使用してシミュレーションを実行することも可能となる。
 ここで、本実施形態の構成要素と本開示の構成要素との対応関係を明らかにする。本実施形態のロボット60がロボットに相当し、作業システム50が作業システムに相当し、コンピュータ41(41B)がコンピュータに相当し、図8のモデル構築処理のS200が取得ステップに相当し、同処理のS240が構築ステップに相当し、図10のシミュレーション実行処理のS300が実行ステップに相当する。また、同処理のS330,S360が更新ステップに相当する。また、図8のモデル構築処理のS200を実行する制御部42が取得部に相当し、同処理のS240を実行する制御部42が構築部に相当し、図10のシミュレーション実行処理のS300を実行する制御部42が実行部に相当する。
 以上説明したシミュレーションシステム10は、3DCADデータを含む各種データをモジュール毎にまとめたモジュールデータ21を取得し、取得したモジュールデータ21を統合して仮想空間上のモデルMを構築して、シミュレーションを実行する。このため、準備作業を簡略化してシミュレーションを効率よく実行することができる。
 また、モジュールの動作プログラムに関する構成データ30や機構設定に関する構成データ30をモジュールデータ21に含むから、シミュレーションを実行する度に動作プログラムや機構設定を設定する必要がなく、準備作業をより簡略化することができる。
 また、I/F22を介してモジュールデータ21を接続することでモジュールデータ21を容易に統合することができるから、準備作業をより簡略化することができる。
 また、シミュレーション結果に基づく修正に基づいて、構成データ30を修正してモジュールデータ21を更新するから、シミュレーション結果を次回以降のシミュレーションに適切に反映させることができると共に、シミュレーションの準備作業において構成データ30を修正する必要がなく準備作業をより簡略化することができる。
 なお、本発明は上述した実施形態に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の態様で実施し得ることはいうまでもない。
 例えば、上述した実施形態では、モジュールデータ21にプログラムデータ30Bや特性データ30Cなどを含むものとしたが、これに限られず、少なくとも3DCADデータ30Aなどの形状データを含むものであればよい。
 上述した実施形態では、I/F22を介してモジュールデータ21同士が接続されるものとしたが、これに限られず、各モジュールデータ21同士の接続有無の設定をそれぞれ行うことにより各モジュールデータ21を接続するものなどとしてもよい。
 上述した実施形態では、構成データ30を修正してモジュールデータ21を更新登録するものとしたが、これに限られず、モジュールデータ21の更新登録を行わないものとしてもよい。ただし、修正を適切に反映させて次回の修正の手間を省くためにモジュールデータ21の更新を行うものが好ましい。
 上述した実施形態では、コンピュータ41は、取得したモジュールデータ21を記憶部45に保存するものとしたが、これに限られるものではない。例えば、クラウドサーバ11に各コンピュータ41が使用可能な個別の作業領域を設けておき、各コンピュータ41は取得したモジュールデータ21をその作業領域に保存してシミュレーションを行うものなどとしてもよい。また、モジュールデータをクラウドサーバ11に保存しておき、コンピュータ41をシミュレータとして動作させるものとしたが、これに限られるものではない。例えば、シミュレータのアプリーション自体がクラウドサーバ11上に存在し、シミュレータをクラウドサーバ11上で動作させ、コンピュータ41は通信部46、入力部47を利用してクラウドサーバ11にアクセスしてシミュレーションの結果を利用するようにしてもよい。
 上述した実施形態では、ロボット60を含む複数のモジュールで構成された作業システム50を例示したが、これに限られず、作業システムは、複数のモジュールで構成されたシステムであればよくロボット60を含まないものとしてもよい。
 ここで、本開示のシミュレーションシステムは、以下のように構成してもよい。例えば、本開示のシミュレーション方法において、前記モジュールデータは、前記各種データとして、前記モジュールの動作プログラムに関するデータと、前記モジュールの機構設定に関するデータとの少なくともいずれかを含むものとしてもよい。これにより、シミュレーションを実行する度に動作プログラムや機構設定を設定登録する必要がないから、準備作業をより簡略化することができる。なお、動作プログラムには、ラダープログラムやサイクル線図などを含む。
 本開示のシミュレーション方法において、前記構築ステップでは、前記動作プログラムに関するデータが含まれずに前記機構設定に関するデータが含まれた前記モジュールデータが取得された場合、必要に応じて前記モジュールの作動に関する設定を行うものとしてもよい。こうすれば、動作プログラムに関するデータが含まれないモジュールデータであっても、機構設定に関するデータに加えて作動に関する設定を行うことによりシミュレーションを実行することが可能となる。なお、作動に関する設定としては、例えば、複数の動作速度のパターンを有するコンベアなどのモジュールの場合にはその動作速度を設定したり、機構設定が設定されたロボットなどのモジュールの場合にはその作動軌跡を設定したりするものなどとすることができる。
 本開示のシミュレーション方法において、前記モジュールデータには、前記各モジュールが有する機能に応じたインタフェースが設けられており、前記構築ステップでは、前記インターフェースを介して前記モジュールデータ同士が接続されることにより前記モジュールデータを統合するものとしてもよい。こうすれば、モジュールデータを容易に統合することができるから、準備作業をより簡略化することができる。
 本開示のシミュレーション方法において、前記実行ステップで実行されたシミュレーション上で行われる修正に基づいて、前記モジュールデータに含まれる前記各種データを修正して前記モジュールデータを更新する更新ステップを含むものとしてもよい。こうすれば、シミュレーション結果を次回以降のシミュレーションに適切に反映させることができるから、準備作業においてデータを修正する必要がなく準備作業をより簡略化することができる。
 本開示のシミュレーションシステムは、複数のモジュールで構成された作業システムのシミュレーションを実行するシミュレーションシステムであって、前記複数のモジュールの形状に関するデータを含む各種データが前記モジュール毎にまとめられたモジュールデータを取得する取得部と、前記取得部で取得された前記モジュールデータを統合して仮想空間上の前記作業システムのモデルを構築する構築部と、前記構築部で構築されたモデルを用いてシミュレーションを実行する実行部と、を備えることを要旨とする。
 本開示のシミュレーションシステムは、上述したシミュレーション方法と同様に、シミュレーションを実行する度に各モジュールのデータをそれぞれ収集したりまとめたりする作業を行わなくても、モジュールデータを取得してモデルを構築することでシミュレーションを速やかに開始することができる。このため、シミュレーションの準備作業を簡略化して、シミュレーションを効率よく実行することができる。なお、このシミュレーションシステムにおいて、上述したシミュレーション方法の各ステップを実現するような機能を追加してもよい。
   本発明は、シミュレーションシステムの製造産業などに利用可能である。
 10 シミュレーションシステム、11 クラウドサーバ、12 制御部、13 モジュールエディタ、15 記憶部、16 通信部、19 ネットワーク、20 モジュールデータベース(モジュールDB)、20A ロボットデータ、20B エンドエフェクタデータ、20C 周辺機器データ、20D ワークデータ、21,21A~21P モジュールデータ、22,32 I/F、22a,32a I/0_I/F,22b,32b ソフトI/F、22c,32c メカI/F、22d,32d 配線配管I/F、22e,32e 物理演算I/F、30 構成データ、30A,30D 3DCADデータ、30B プログラムデータ、30C 特性データ、30E 機構設定データ、41,41B コンピュータ、42 制御部、45 記憶部、46 通信部、47,47B 入力部、48,48B 表示部、50 作業システム、51 作業台、52 基板搬送装置、54 フィーダ、60 ロボット、62 ロボットアーム、64 チャック、64a 爪、65 配管、66 カメラ、67 照明、68 制御装置、M モデル。

Claims (6)

  1.  複数のモジュールで構成された作業システムのシミュレーションをコンピュータを用いて実行するシミュレーション方法であって、
     前記複数のモジュールの形状に関するデータを含む各種データが前記モジュール毎にまとめられたモジュールデータを取得する取得ステップと、
     前記取得ステップで取得された前記モジュールデータを統合して仮想空間上の前記作業システムのモデルを構築する構築ステップと、
     前記構築ステップで構築されたモデルを用いてシミュレーションを実行する実行ステップと、
     を含むシミュレーション方法。
  2.  請求項1に記載のシミュレーション方法であって、
     前記モジュールデータは、前記各種データとして、前記モジュールの動作プログラムに関するデータと、前記モジュールの機構設定に関するデータとの少なくともいずれかを含む
     シミュレーション方法。
  3.  請求項1または2に記載のシミュレーション方法であって、
     前記構築ステップでは、前記動作プログラムに関するデータが含まれずに前記機構設定に関するデータが含まれた前記モジュールデータが取得された場合、必要に応じて前記モジュールの作動に関する設定を行う
     シミュレーション方法。
  4.  請求項1ないし3のいずれか1項に記載のシミュレーション方法であって、
     前記モジュールデータには、前記各モジュールが有する機能に応じたインタフェースが設けられており、
     前記構築ステップでは、前記インターフェースを介して前記モジュールデータ同士が接続されることにより前記モジュールデータを統合する
     シミュレーション方法。
  5.  請求項1ないし4のいずれか1項に記載のシミュレーション方法であって、
     前記実行ステップで実行されたシミュレーション上で行われる修正に基づいて、前記モジュールデータに含まれる前記各種データを修正して前記モジュールデータを更新する更新ステップを含む
     シミュレーション方法。
  6.  複数のモジュールで構成された作業システムのシミュレーションを実行するシミュレーションシステムであって、
     前記複数のモジュールの形状に関するデータを含む各種データが前記モジュール毎にまとめられたモジュールデータを取得する取得部と、
     前記取得部で取得された前記モジュールデータを統合して仮想空間上の前記作業システムのモデルを構築する構築部と、
     前記構築部で構築されたモデルを用いてシミュレーションを実行する実行部と、
     を備えるシミュレーションシステム。
PCT/JP2018/029942 2018-08-09 2018-08-09 シミュレーション方法およびシミュレーションシステム WO2020031333A1 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
US17/258,663 US20210271791A1 (en) 2018-08-09 2018-08-09 Simulation method and simulation system
PCT/JP2018/029942 WO2020031333A1 (ja) 2018-08-09 2018-08-09 シミュレーション方法およびシミュレーションシステム
JP2020535429A JP7160923B2 (ja) 2018-08-09 2018-08-09 シミュレーション方法、シミュレーションシステム
CN201880096426.8A CN112543695A (zh) 2018-08-09 2018-08-09 模拟方法及模拟系统
EP18929337.6A EP3835005A4 (en) 2018-08-09 2018-08-09 SIMULATION PROCESS AND SIMULATION SYSTEM
JP2022114473A JP7373028B2 (ja) 2018-08-09 2022-07-19 シミュレーション方法、シミュレーションシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2018/029942 WO2020031333A1 (ja) 2018-08-09 2018-08-09 シミュレーション方法およびシミュレーションシステム

Publications (1)

Publication Number Publication Date
WO2020031333A1 true WO2020031333A1 (ja) 2020-02-13

Family

ID=69414091

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/029942 WO2020031333A1 (ja) 2018-08-09 2018-08-09 シミュレーション方法およびシミュレーションシステム

Country Status (5)

Country Link
US (1) US20210271791A1 (ja)
EP (1) EP3835005A4 (ja)
JP (2) JP7160923B2 (ja)
CN (1) CN112543695A (ja)
WO (1) WO2020031333A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022239544A1 (ja) * 2021-05-10 2022-11-17 オムロン株式会社 シミュレーション情報反映装置、方法、プログラム、及びシステム

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015033744A (ja) * 2013-08-09 2015-02-19 株式会社安川電機 ロボット制御装置及びロボット制御方法
JP2015100866A (ja) 2013-11-22 2015-06-04 三菱電機株式会社 ロボットシミュレーション装置、プログラム、記録媒体及び方法
JP2015148994A (ja) * 2014-02-07 2015-08-20 キヤノン株式会社 動力学計算方法及びプログラム、並びに記録媒体
JP2016093869A (ja) * 2014-11-14 2016-05-26 株式会社クリエイティブマシン 教示データの作成方法、作成装置、及び作成プログラム、並びに、教示データのデータ構造、記録媒体
JP2018020413A (ja) * 2016-08-04 2018-02-08 株式会社トヨタプロダクションエンジニアリング 作業支援装置、作業支援方法およびプログラム
JP2018069367A (ja) * 2016-10-27 2018-05-10 ファナック株式会社 ロボットシステムの動作のシミュレーションを行うシミュレーション装置、シミュレーション方法、およびコンピュータプログラムを記録する記録媒体

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3913666B2 (ja) * 2002-10-30 2007-05-09 本田技研工業株式会社 シミュレーション装置
JP4238256B2 (ja) * 2006-06-06 2009-03-18 ファナック株式会社 ロボットシミュレーション装置
DE102006048166A1 (de) * 2006-08-02 2008-02-07 Daimler Ag Verfahren zur Beobachtung einer Person in einem industriellen Umfeld
JP6015282B2 (ja) * 2012-09-21 2016-10-26 オムロン株式会社 シミュレーション装置、シミュレーション方法、およびシミュレーションプログラム
JP6551184B2 (ja) * 2015-11-18 2019-07-31 オムロン株式会社 シミュレーション装置、シミュレーション方法、およびシミュレーションプログラム
JP6458713B2 (ja) * 2015-11-18 2019-01-30 オムロン株式会社 シミュレーション装置、シミュレーション方法、およびシミュレーションプログラム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015033744A (ja) * 2013-08-09 2015-02-19 株式会社安川電機 ロボット制御装置及びロボット制御方法
JP2015100866A (ja) 2013-11-22 2015-06-04 三菱電機株式会社 ロボットシミュレーション装置、プログラム、記録媒体及び方法
JP2015148994A (ja) * 2014-02-07 2015-08-20 キヤノン株式会社 動力学計算方法及びプログラム、並びに記録媒体
JP2016093869A (ja) * 2014-11-14 2016-05-26 株式会社クリエイティブマシン 教示データの作成方法、作成装置、及び作成プログラム、並びに、教示データのデータ構造、記録媒体
JP2018020413A (ja) * 2016-08-04 2018-02-08 株式会社トヨタプロダクションエンジニアリング 作業支援装置、作業支援方法およびプログラム
JP2018069367A (ja) * 2016-10-27 2018-05-10 ファナック株式会社 ロボットシステムの動作のシミュレーションを行うシミュレーション装置、シミュレーション方法、およびコンピュータプログラムを記録する記録媒体

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022239544A1 (ja) * 2021-05-10 2022-11-17 オムロン株式会社 シミュレーション情報反映装置、方法、プログラム、及びシステム

Also Published As

Publication number Publication date
CN112543695A (zh) 2021-03-23
JP2022132506A (ja) 2022-09-08
EP3835005A4 (en) 2021-07-28
JP7373028B2 (ja) 2023-11-01
JP7160923B2 (ja) 2022-10-25
EP3835005A1 (en) 2021-06-16
US20210271791A1 (en) 2021-09-02
JPWO2020031333A1 (ja) 2021-08-02

Similar Documents

Publication Publication Date Title
JP6458713B2 (ja) シミュレーション装置、シミュレーション方法、およびシミュレーションプログラム
EP3272473B1 (en) Teaching device and method for generating control information
US20080013825A1 (en) Simulation device of robot system
US20180243922A1 (en) Remote control robot system
US10635082B2 (en) Robot motion program generating method and robot motion program generating apparatus
US11511415B2 (en) System and method for robotic bin picking
JP2017094406A (ja) シミュレーション装置、シミュレーション方法、およびシミュレーションプログラム
JP2017094407A (ja) シミュレーション装置、シミュレーション方法、およびシミュレーションプログラム
JP2017097426A (ja) シミュレーション装置、シミュレーション方法、およびシミュレーションプログラム
JP2019018272A (ja) モーション生成方法、モーション生成装置、システム及びコンピュータプログラム
JP2001105359A (ja) ロボットシステム用グラフィック表示装置
WO2017130286A1 (ja) ジョブ作成装置および作業システム並びに作業ロボットの制御装置
JP7281349B2 (ja) 遠隔操作システム
CN108627515B (zh) 计算成为检查系统的检查对象外的图像区域的装置及方法
JP7373028B2 (ja) シミュレーション方法、シミュレーションシステム
TW202122225A (zh) 使用先進掃描技術之用於機器人箱揀取的系統及方法
US20210154849A1 (en) Controller for distributed devices
CN112469538B (zh) 数据生成装置及方法、数据生成程序、以及远程操作系统
WO2016151667A1 (ja) ティーチング装置及び制御情報の生成方法
JPWO2020021643A1 (ja) エンドエフェクタの選択方法および選択システム
WO2021149419A1 (ja) シミュレーション装置およびシミュレーションプログラム
JP7171858B2 (ja) 情報提供装置、情報提供方法及びプログラム
JP7447568B2 (ja) シミュレーション装置およびプログラム
WO2023171722A1 (ja) プログラム生成装置、及びプログラム生成方法
WO2022137581A1 (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: 18929337

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2020535429

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2018929337

Country of ref document: EP

Effective date: 20210309