Operation system
The actuation system uses a simulator and action control unit to manage the positional relationship between a virtual actuation body and regulation part, addressing the issue of arbitrary user inputs and preventing interference, thereby ensuring controlled movements.
Patent Information
- Application Number
- JP2024024874
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-02-21
- Publication Date
- 2025-09-02
- Estimated Expiration
- 2044-02-21
AI Technical Summary
Existing technologies fail to appropriately control the movement of robots or actuation systems when users input arbitrary trajectories, leading to potential interference with obstacles.
An actuation system that includes a simulator unit to simulate the positional relationship between a virtual actuation body and a virtual regulation part, determining and correcting movements to prevent interference, and an action control part to adjust the actuation body's actions based on these simulations.
Enables precise control of actuation systems to avoid unexpected trajectories, ensuring safe and controlled movements even with user-inputted arbitrary operations.
Smart Images

Figure 2025127886000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to an actuation system. [Background technology]
[0002] Conventionally, techniques have been proposed for preventing inconveniences such as interference with obstacles when a working device, such as a robot that performs work on behalf of a human, performs a task (see, for example, Patent Document 1). The interference prevention device described in Patent Document 1 is configured to calculate the motion trajectory of the robot before the robot starts to operate based on the contents previously taught to the robot, determine whether the robot will interfere with an obstacle based on the calculation results, and, if it is determined that the robot will interfere with an obstacle, to perform control such as issuing a standby command to the robot. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Application Publication No. 8-36410 Summary of the Invention [Problem to be solved by the invention]
[0004] However, the technology described in Patent Document 1 controls movements along a predetermined trajectory based on teaching. Therefore, if a user controls a robot to move along an arbitrary trajectory via an operating device, the technology described in Patent Document 1 may not be able to appropriately control the robot's movements. Specifically, if a user controls a robot to move along an arbitrary trajectory via an operating device, the robot may move along an unexpected trajectory. Therefore, the technology described in Patent Document 1 may not be able to appropriately control the robot's movements, for example, the robot may interfere with an obstacle during work.
[0005] In view of the above problems, the present invention aims to provide an actuation system that makes it possible to appropriately control the movement of an actuation body even if there is a possibility that the actuation body will move in an unexpected trajectory due to arbitrary operation by the user. [Means for solving the problem]
[0006] The actuation system of the present invention is an actuation system comprising: a simulator unit that simulates, in a virtual space, a positional relationship between a virtual actuation body corresponding to the actuation body and a first virtual regulation part that is virtually provided to regulate the movement of the virtual actuation body, in order to simulate the action of the actuation body that performs a predetermined action in response to an input operation from an operating device by a user; and an action control part that controls the action of the actuation body in response to the positional relationship simulated by the simulator unit, wherein, when an input operation is performed on the actuation body, the simulator unit operates the virtual actuation body in the virtual space with content corresponding to the input operation in parallel with the input operation, and determines the positional relationship between the virtual actuation body and the first virtual regulation part at predetermined time intervals, and the action control part is configured to operate the actuation body in parallel with an action command based on the input operation based on the result of the determination by the simulator unit, and the simulator unit determines whether the distance between the virtual actuation body and the first virtual regulation part is within a predetermined range. When the distance between the virtual operating body and the first virtual regulating portion is determined to be within the predetermined range and the movement direction of the virtual operating body corresponding to the input operation includes a component in a direction toward the surface of the first virtual regulating portion and a component in a direction along the surface of the first virtual regulating portion, the simulator corrects the movement direction of the virtual operating body corresponding to the input operation based on the shape of the first virtual regulating portion, thereby (i) determining the movement direction of the virtual operating body for moving the virtual operating body along the surface of the first virtual regulating portion, and the operation control portion is configured to move the operating body in the determined movement direction, or (ii) stopping the virtual operating body against the surface of the first virtual regulating portion, and the operation control portion is configured to stop the operating body against the first virtual regulating portion, or (iii) repelling the virtual operating body against the surface of the first virtual regulating portion, and the operation control portion is configured to repel the operating body against the first virtual regulating portion. [Effects of the Invention]
[0007] According to the present invention, it is possible to provide an actuation system that makes it possible to appropriately control the movement of an actuation body even if there is a possibility that the actuation body will move in an unexpected trajectory due to arbitrary operation by the user. [Brief explanation of the drawings]
[0008] [Figure 1] 1 is a perspective view schematically illustrating an example of an actuation system according to an embodiment of the present invention. [Figure 2] FIG. 2 is a block diagram showing the configuration of the operating system shown in FIG. [Figure 3] FIG. 2 is a diagram showing a schematic diagram of a simulating section of the actuation system shown in FIG. 1; [Figure 4] FIG. 4 is a diagram showing a simulation image displayed on the display unit shown in FIG. 3. [Figure 5] 2 is a perspective view schematically illustrating an example of an actuating body and a destination position of the actuating system shown in FIG. 1. FIG. [Figure 6] 6 is a perspective view schematically showing a state in which a virtual acting body corresponding to the acting body shown in FIG. 5 is guided to a virtual destination position by a first virtual restricting portion. FIG. [Figure 7] FIG. 2 is a diagram showing a schematic example of a method for determining the direction in which a virtual actuator moves when the simulator of the actuation system shown in FIG. 1 moves the virtual actuator along the surface of a first virtual regulating portion while abutting the virtual actuator against the first virtual regulating portion. [Figure 8] FIG. 6 is a perspective view schematically illustrating a state in which a virtual acting body corresponding to the acting body shown in FIG. 5 is guided to a virtual destination position by a first virtual restricting portion, in which the virtual acting body is tilted. [Figure 9] FIG. 6 is a perspective view schematically illustrating a state in which a virtual acting body corresponding to the acting body shown in FIG. 5 is inserted into a hole that is a virtual target position, in which the virtual acting body is inclined with respect to the hole. [Figure 10]FIG. 6 is a perspective view schematically illustrating a state in which a virtual operating body corresponding to the operating body shown in FIG. 5 is inserted into a hole that is a virtual target position, and is pressed against the wall surface of the hole. [Figure 11] FIG. 10 is a diagram schematically illustrating a state in which the positional relationship between a virtual work object and a virtual destination position is displayed on the screen of a display. [Figure 12] 10 is a diagram schematically illustrating a state in which the positional relationship between the tip surface of a virtual work object and a virtual target position is displayed on a display screen. FIG. [Figure 13] 10 is a diagram schematically illustrating a state in which the positional relationship between the tip surface of a virtual work object and a virtual target position is displayed on a display screen. FIG. [Figure 14] 10 is a diagram schematically illustrating a state in which the positional relationship between the tip surface of a virtual work object and a virtual target position is displayed on a display screen. FIG. [Figure 15] 6 is a perspective view showing a state in which a virtual acting body corresponding to the acting body shown in FIG. 5 passes through a side wall of a first virtual restricting portion from the outside to the inside. FIG. [Figure 16] 10 is a perspective view schematically showing a state in which a prismatic imaginary operating body is guided to an imaginary target position by a first imaginary restricting portion. FIG. [Figure 17] FIG. 10 is a perspective view showing a schematic example of an actuation system according to another embodiment of the present invention, in which the insertion target portion of the virtual actuation body is guided in an oblique direction relative to the axis of the hole portion, which is the virtual destination position. [Figure 18] 18 is a perspective view schematically showing a state in which the tip of the insertion target part shown in FIG. 17 is inserted into a hole part. FIG. [Figure 19] FIG. 19 is a perspective view showing a state in which the first imaginary restricting portion has disappeared in the embodiment shown in FIG. 18. [Figure 20] FIG. 20 is a partial cross-sectional view showing a state in which the tip of the insertion target portion is inserted into the hole portion in the embodiment shown in FIG. 19. [Figure 21] 21 is a partial cross-sectional view schematically illustrating a state in which the insertion target portion shown in FIG. 20 is in contact with the periphery of the opening of the hole portion. FIG. [Figure 22]22 is a perspective view schematically showing a state in which first imaginary restricting portions are generated so as to sandwich the insertion target portion shown in FIG. 21 from both radial sides. FIG. [Figure 23] 23 is a partial cross-sectional view schematically illustrating a state in which the insertion target portion shown in FIG. 22 is swung and comes into contact with the periphery of the opening of the hole at a plurality of positions. FIG. [Figure 24] 24 is a partial cross-sectional view schematically showing a state in which the insertion target portion shown in FIG. 23 has moved in a direction to be removed from the hole portion. FIG. [Figure 25] 25 is a partial cross-sectional view schematically illustrating a state in which the insertion target portion shown in FIG. 24 is swung and comes into contact with the periphery of the opening of the hole at a plurality of positions. FIG. [Figure 26] 10 is a partial cross-sectional view schematically illustrating a state in which the insertion enabling condition of the insertion target portion is satisfied. FIG. [Figure 27] FIG. 10 is a perspective view schematically illustrating an example of an actuation system according to another embodiment of the present invention, showing a manner in which a work object is gripped by an actuation body. [Figure 28] FIG. 28 is a perspective view schematically showing a virtual acting body corresponding to the acting body shown in FIG. 27 and a virtual work object to be gripped by the virtual acting body. [Figure 29] FIG. 29 is a perspective view schematically showing how the virtual operating body shown in FIG. 28 is positioned at a target position for gripping a virtual work object. [Figure 30] FIG. 29 is a perspective view schematically showing a state in which a virtual work object is gripped by the virtual operating body shown in FIG. 28. [Figure 31] This is a diagram schematically showing the positional relationship between the first virtual regulating portion and the second virtual regulating portion when, in a mode in which a work object is grasped by an actuating body, the direction connecting the two first virtual regulating portions does not match the direction connecting the two second virtual regulating portions before the first virtual regulating portion and the second virtual regulating portion are aligned. [Figure 32] FIG. 10 is a perspective view schematically illustrating an example of an actuation system according to another embodiment of the present invention, showing how a virtual actuation object is guided along a predetermined movement path. [Figure 33]FIG. 10 is a schematic diagram showing an example of an actuation system according to another embodiment of the present invention, and is an oblique view showing an embodiment having a ring-shaped second imaginary regulating portion and a linear first imaginary regulating portion that guides the second imaginary regulating portion. [Figure 34] FIG. 34 is a perspective view showing a modification of the embodiment shown in FIG. 33, illustrating a configuration in which the second imaginary restriction portion cannot rotate in the direction around the axis of the first imaginary restriction portion. [Figure 35] FIG. 10 is a schematic diagram illustrating an example of an actuation system according to another embodiment of the present invention, and is an oblique view showing a configuration in which the virtual regulating portion is formed in a plate shape and a rod-shaped virtual actuation body can enter the virtual regulating portion in the thickness direction. [Figure 36] FIG. 10 is a perspective view showing a schematic example of an actuation system according to another embodiment of the present invention, in which a virtual restriction portion is disposed inside a virtual work object. [Figure 37] FIG. 37 is a perspective view showing a modified example of the embodiment shown in FIG. 36, showing a configuration in which a virtual operating body comes into surface contact with a virtual restricting portion. [Figure 38] FIG. 10 is a perspective view showing a schematic diagram of an example of an actuation system according to another embodiment of the present invention, illustrating a mode in which, when work is performed by a plurality of actuating bodies, contact between the actuating bodies is suppressed by a virtual regulating portion provided between the plurality of virtual actuating bodies. [Figure 39] FIG. 39 is a perspective view showing a state in which the imaginary restricting portion has been eliminated in the embodiment shown in FIG. 38. [Figure 40] FIG. 10 is a perspective view schematically illustrating an example of an actuation system according to another embodiment of the present invention, showing how, when work is performed by a plurality of actuation bodies, virtual restricting portions are provided to surround each virtual actuation body to prevent the actuation bodies from coming into contact with each other. [Figure 41] FIG. 41 is a perspective view showing a state in which imaginary restricting portions are in contact with each other in the embodiment shown in FIG. 40. [Figure 42] FIG. 41 is a perspective view showing a state in which the size of the imaginary restricting portion is reduced in the embodiment shown in FIG. 40. [Figure 43] FIG. 41 is a perspective view showing a state in which the imaginary restricting portion has been eliminated in the embodiment shown in FIG. 40. [Figure 44] FIG. 10 is a perspective view schematically illustrating an example of an actuation system according to another embodiment of the present invention, showing a mode in which an actuation body is caused to follow the movement of a work object by a virtual regulating portion. [Figure 45] FIG. 45 is a perspective view showing a state in which a virtual working body is brought into contact with a virtual restricting portion in the embodiment shown in FIG. 44. [Figure 46] FIG. 45 is a perspective view showing a state in which the imaginary restricting portion has been eliminated in the embodiment shown in FIG. 44. [Figure 47] FIG. 10 is a schematic diagram illustrating an example of an actuation system according to another embodiment of the present invention, and is a perspective view illustrating an aspect in which the movement of a virtual actuation body is restricted within the range inside a first virtual restriction portion by a frame-shaped virtual restriction portion. DETAILED DESCRIPTION OF THE INVENTION
[0009] An actuation system according to an embodiment of the present invention will be described below with reference to the drawings. Note that the embodiment described below is merely an example, and the actuation system of the present invention is not limited to the following embodiment.
[0010] The actuation system WS described below enables appropriate control of the action of an actuating body by simulating the action of the actuating body, which performs a predetermined action in response to an input operation from a user via an operating device. In this specification, the actuating body refers to any structure that performs a predetermined action in response to an input operation from a user via an operating device OD (see FIG. 1). In the embodiment described below, the actuating body is configured as a working device WD (see FIG. 1) such as a robot, but the actuating body is not limited to a working device such as a robot. Note that the actuating body may be configured as a single structure such as the working device WD, or may include a single structure and other elements that move in conjunction with the structure. For example, when a predetermined work object OB1 (see FIG. 1) is operated by the working device WD (when a part of the working device WD and the work object OB1 move integrally), the working device WD, which is a first operating element, and the work object OB1, which is a second operating element, are treated as a single actuating body.
[0011] The actuation system WS (see FIG. 2) according to this embodiment is a system that performs work on a work object OB1 using a work device WD, such as a robot that performs work in place of a person, as shown in FIG. 1. Specifically, for example, the work device WD is configured to perform a predetermined operation in response to an input operation by a user via an operating device OD. In this embodiment, the work device WD is configured to perform a predetermined operation in various facilities such as production facilities in response to an operation command that indicates the content of the operation to be performed by the work device WD.
[0012] In this specification, the "operation of the work device WD" is not limited to, but includes at least one of, for example, transporting the work object OB1, positioning the work object OB1, moving relative to the work object OB1, and following the work object OB1. An example of an operation that includes transporting the work object OB1 is, but is not limited to, pick-and-place (grabbing the work object OB1 and transporting it to a target position). An example of an operation that includes positioning the work object OB1 is fitting (grabbing the work object OB1 and fitting it into a hole). An example of an operation that includes movement relative to the work object OB1 is, but is not limited to, painting, polishing, writing, scooping gravel, etc. In this embodiment, the work device WD is configured to guide the work object OB1 to a target location, as described below. In other embodiments described below, the work device WD is configured to prevent interference with other work devices WD, surrounding structures, and the work device WD itself when performing a target operation. In yet another embodiment, the work device WD is configured to control the distance of the work device WD relative to the work object OB1, and in yet another embodiment, the work device WD is configured to follow the moving work object OB1.
[0013] In this embodiment, the working device WD is configured to be operable in manual mode. The working device WD may be a device that operates in semi-automatic mode or automatic mode in addition to manual mode. The manual mode is a mode in which the working device is always operated by the user. In semi-automatic mode, only some predetermined operations are performed automatically, and other operations are operated by the user. In automatic mode, all operations are performed automatically using sensors or the like. In this specification, an "operation command" is a command that indicates the content of an operation to be performed by the working device WD. The operation to be performed by the working device WD is, for example, an operation that the user wants the working device WD to perform via the operating device OD, or an operation that a program of a computer (a computer for executing operations in automatic mode or semi-automatic mode) that causes the working device WD to perform an automatic operation is wanting the working device WD to perform. The operation to be performed by the working device WD can be corrected by interference prevention control and / or tracking control, which will be described later, based on the results of simulation by the simulator 1.
[0014] The working device WD is configured to operate based on an operation command based on an input operation from the operating device OD. The operation command is generated by a program that generates an operation command based on an input operation from the operating device OD. The program has a function of converting the operation request into an operation command by performing calculations based on an operation request for operating the working device WD according to the content of the operation to be performed by the working device WD. The program is stored, for example, in a memory unit of a computer or the like (a computer other than the simulator 1 described below) used to operate or run the working device WD. In the manual mode shown in FIG. 1, the computer is provided, for example, in the operating device OD. In the automatic mode, the computer is provided, for example, in the computer that causes the working device WD to perform an automatic operation. In the semi-automatic mode, the computer is provided, for example, in the computer that causes the operating device OD and the working device WD to perform an automatic operation. The program is configured to perform calculations that convert an operation request (for example, an operation request by a user's operation or a predetermined operation request in an automatic operation) for operating the working device WD according to the content of the operation to be performed by the working device WD into an operation command.
[0015] The operation request is converted into an operation command for each component of the working device WD (e.g., the arm unit WD2, etc.) based on the calculation result. The operation command is operation information for the components of the working device WD to realize the operation of the working device WD corresponding to the operation request. Specifically, the operation information is, for example, parameter values for realizing the operation of the components of the working device WD corresponding to the operation request, such as one or more of the movement speed, acceleration / deceleration, movement direction, movement distance, joint rotation angle, rotation speed, and rotation acceleration / deceleration of the components of the working device WD. When the working device WD operates in manual mode, the operation command is, for example, operation information (parameter values) for realizing the movement of the components of the working device WD corresponding to the operation given by the user to the operating device OD. In this case, the operating device OD converts the content of the operation given by the user to the operating device OD into operation information for realizing the movement of the components of the working device WD. When the working device WD operates in automatic mode, the operation command is, for example, operation information for realizing the movement of the components of the working device WD corresponding to the operation that a computer that automatically operates the working device WD intends the working device WD to perform. In this case, the computer converts the content of the operation that the computer intends the working device WD to perform into operation information for realizing the movement of the components of the working device WD. When the working device WD operates in semi-automatic mode, the operation command is a command corresponding to both manual mode and automatic mode. As will be described later, in this embodiment, the above-mentioned calculations and converted operation commands by a program stored in a predetermined computer are transmitted to a simulator 1, which will be described later. The simulator 1 receives and uses the converted operation commands, eliminating the need for the simulator 1 to perform the above-mentioned calculations and conversion processes.
[0016] The structure of the working device WD may be modified as appropriate depending on the type of work required, and is not limited to the structure shown in the drawings. In this embodiment, the working device WD is shown as an articulated robot, but is not limited to a robot and may be a construction machine such as a crane. The working device WD may be a device that is operated (remotely controlled) from a location distant from the working device WD, or may be a device that is not remotely controlled but is operated in the vicinity of the working device WD (for example, by on-site operation). The following description will be given assuming that the working device WD is a working device that operates in manual mode and is a robot that is remotely controlled by a user. The following description is also applicable to automatic mode and semi-automatic mode.
[0017] The working device WD shown in FIG. 1 is a device that performs work by applying a predetermined operation to a work object OB1. In the example shown in FIG. 1, the working device WD is configured to be movable in a predetermined direction in response to a user's operation and to perform a predetermined task. The working device WD includes a base unit WD1, an arm unit WD2 having multiple joints and rotatably fixed to the base unit WD1, and a tool unit WD3 attached to the tip of the arm unit WD2. The tool unit WD3 corresponds to a tool or machine tool that performs work on the work object OB1 and performs an operation on the work object OB1 according to the type of work to be performed by the working device WD. In this embodiment, the tool unit WD3 includes fingers WD31 that grip the work object OB1. In this embodiment, the working device WD is configured to be movable in a first direction D1, which is one horizontal direction (X direction), a second direction D2, which is a horizontal direction (Y direction) perpendicular to the first horizontal direction D1, and a third vertical direction D3. Specifically, the base unit WD1 rotates around an axis extending in the third direction D3, and the arm unit WD2 and tool unit WD3, which have multiple joints, move, thereby enabling movement in the first direction D1, the second direction D2, and the third direction D3. Note that the direction and method of movement of the working device WD may be different from those shown in the figure. For example, the working device itself may not be fixed to the installation surface, but may move horizontally in the first direction D1 and the second direction D2 relative to the installation surface, or may be configured to move along a beam or pillar.
[0018] As shown in FIG. 1 , the task tool WD may further include a measuring device WD4 for measuring the position of the task object OB1. The measuring device WD4 may include, for example, a camera WD41 for capturing an image of the task object OB1 and a measuring unit (not shown) such as a sensor for measuring the position of the task object OB1 based on the captured image. In this embodiment, the measuring device WD4 is provided on a base WD5 on which the task tool WD is supported. However, the location of the measuring device WD4 is not particularly limited as long as it can measure the position of any part of the task object OB1. In this embodiment, the position (or angle or orientation) of the task object OB1 measured by the measuring device WD4 is associated with the outer shape of the task object OB1 and stored in a memory unit (not shown). This information is used when forming a virtual operating body (a portion in virtual space corresponding to an operating body formed by the task tool WD and the task object OB1, as described below). Note that the measuring device WD4 is not limited to a device with a camera, as long as it can measure the position of the task object OB1. It may also be a sensor other than a camera that can measure the position of the task object OB1. Furthermore, the measuring device WD4 may be a device capable of measuring both the position (angle, posture) and the outer shape of the work object OB1. In this case, the position and the outer shape measured by the measuring device WD4 are associated with each other and stored in a memory unit (not shown). The outer shape of the work object OB1 may be stored in advance in a predetermined memory device. Note that the virtual operating body may be formed based on information from a source other than the measuring device WD4.
[0019] The operating device WD is communicatively connected to an operating device OD that accepts user operations. The operating device WD is configured to receive operation information indicating the content of the user's operation input to the operating device OD and perform an operation corresponding to the operation information. The configuration of the operating device OD is not particularly limited as long as it can instruct the operating device WD to perform the content of the operation, including the movement of the tool unit WD3. In the example shown in FIG. 1, the operating device OD is configured to instruct the tool unit WD3 to move in any three-dimensional direction in the workspace in which the operating device WD is actually installed. The operating device OD can be, for example, a 3D mouse, a joystick, or a tablet.
[0020] In this embodiment, as shown in FIG. 1 , the tool unit WD3 is a gripping device that grips a transport object (described later), which is an example of a work object OB1. The gripping device includes multiple fingers WD31 that grip the work object OB1 and a drive unit (not shown), such as a motor, that drives the fingers WD31. The gripping device is configured to perform a gripping operation by narrowing the gap between the fingers WD31 and to perform a release operation by widening the gap between the fingers WD31. The gripping device may be configured to adjust the orientation (inclination) of the fingers WD31 to a direction that facilitates gripping, depending on the outer shape and posture of the work object OB1, when gripping the work object OB1. In this case, the gripping device can appropriately grip the work object OB1 depending on the outer shape and posture of the work object OB1. In the example shown in FIG. 1 , the work device WD performs pick-and-place of the work object OB1. Specifically, the work device WD performs a series of operations: picking up (grasping and lifting) the work object OB1 at the start point of the pick-and-place, moving the work object OB1 to the end point of the pick-and-place, and releasing the work object OB1 at the end point.
[0021] 1, the work object OB1 is an object that is gripped by a tool unit (gripping device) WD3 and moved by the work device WD. In the example shown in Fig. 1, the work object OB1 is a columnar object such as a cylindrical or rectangular columnar object, but is not limited to this.
[0022] In the example shown in FIGS. 1 and 2 , the actuation system WS includes a simulator 1 that simulates, in a virtual space, the positional relationship between a virtual actuation body VW corresponding to the actuation body W and a virtual regulating unit (corresponding to a first virtual regulating unit) VB1 virtually provided to regulate the movement of the virtual actuation body VW, in order to simulate the movement of an actuation body W (in this embodiment, a portion formed by the actuation body WD and the work object OB1 when the work object OB1 is gripped by the actuation body WD) that performs a predetermined action in response to an input operation from the operating device OD by a user. The simulator 1 and the action control unit 2 control the movement of the actuation body W in accordance with the positional relationship simulated by the simulator 1. Note that, in this embodiment, the simulator 1 and the action control unit 2 are shown schematically as separate units, but the simulator 1 and the action control unit 2 may be provided in the same device or in separate devices. The simulator 1 and the action control unit 2 may also be realized as different functions of a single control unit. In this specification, the "first virtual restriction portion" is prefixed with "first" to distinguish it from the "second virtual restriction portion" described later, but even if it is described as a "first virtual restriction portion," it is not necessarily the case that a "second virtual restriction portion" is provided. Hereinafter, the first virtual restriction portion will also be referred to simply as the virtual restriction portion.
[0023] Before the working device WD is operated by the operation control unit 2, the simulator 1 simulates the positional relationship between the virtual operating body VW corresponding to the operating body W and the virtual regulating unit VB1 in the virtual space VS, as shown in Fig. 4. More specifically, when an arbitrary operation input is made to the operation device OD, as will be described later, the simulator 1 performs a simulation to determine whether to operate the operating body as is, stop the operating body, or cause the operating body to perform a different operation, based on the operation input to the operation device OD. As will be described in detail later, the virtual regulating unit VB1 regulates the movement of the virtual operating body VW in the virtual space VS, thereby regulating the movement of the operating body W in the real space RS to a predetermined direction and range.
[0024] In this specification, a "virtual operating body" is a virtual object generated in a virtual space and corresponding to the operating body, specifically, corresponding to the shape and size of the operating body. The virtual operating body may correspond to the entire operating body or a part of the operating body. If the working device WD is not associated with the work object OB1, the virtual operating body may be a virtual object corresponding to the working device WD (or a part thereof). If the working device WD moves together with the work object OB1, such as when gripping the work object OB1, the virtual operating body may be a virtual object corresponding to an object (or a part thereof) formed by the working device WD and the work object OB1. A "part of an object formed by the working device WD and the work object OB1" is a part of the object formed by the working device WD and the work object OB1 that serves as a reference for determining the positional relationship with the virtual regulating portion VB1. The part in question may be, for example, the work object OB1 or a part of the work object OB1. Specifically, the "part of the object in which the work device WD and the work object OB1 are integrated" is, for example, the tip of the work object OB1 (in the example shown in FIG. 1, the tip (e.g., the tip surface) of the cylindrical work object OB1). The "positional relationship between the virtual operating body VW and the virtual regulating part VB1" refers to the three-dimensional positional relationship between the virtual operating body VW and the virtual regulating part VB1. More specifically, the "positional relationship between the virtual operating body VW and the virtual regulating part VB1" refers to the positional relationship between the virtual operating body VW and the virtual regulating part VB1 in the virtual space VS, and may be, but is not limited to, one or more of the following: the distance between the virtual operating body VW and the virtual regulating part VB1; the direction in which the virtual operating body VW is arranged relative to the virtual regulating part VB1; whether the virtual operating body VW is in contact with the virtual regulating part VB1; and whether the virtual operating body VW is within a predetermined range (distance) of the virtual regulating part VB1.
[0025] In this embodiment, the simulator 1 is communicatively connected to the operating device OD and the operation control unit 2 as shown in FIGS. 1 and 2. The simulator 1 is configured to receive, from the operating device OD, an operation command corresponding to operation information indicating the content of a user's operation input to the operating device OD, and to simulate the content corresponding to the operation command (in this embodiment, the content of the operation corresponding to the operation information). More specifically, the simulator 1 simulates the above-mentioned positional relationship by a computer simulation (computer simulation in a virtual space VS simulating a real space RS) based on form information of the virtual operating body VW corresponding to the form (shape and size) of the operating body W stored in a storage unit (not shown), form information (shape and size) of the virtual regulating unit VB1 stored in the storage unit, relative position information relative to each other at a certain point in time, and the content of the above-mentioned operation command (in this embodiment, the operation information, the movement of the components of the working device WD corresponding to the operation, or parameter values for realizing the movement of the components).
[0026] The simulator 1 operates a virtual operating body VW (in this embodiment, a virtual object combining a virtual operating device VD and a virtual work object VOB1) corresponding to the operating body W in the virtual space VS in accordance with the operation command. Specifically, the simulator 1 operates the virtual operating device VD and the virtual work object VOB1 in accordance with the operation command in the virtual space VS. For example, when the virtual operating device VD grasps and transports the virtual work object VOB1, the virtual work object VOB1 grasped by the tool unit (gripping device) WD3 of the virtual operating device VD also moves in accordance with the movement of the tool unit WD3. Therefore, the simulator 1 simulates not only the movement of the virtual operating device VD but also the movement of the virtual work object VOB1. Note that if the work object OB1 does not exist or if the work object OB1 does not move together with the working device WD, the simulator 1 operates only the virtual operating device VD in the virtual space VS in accordance with the operation command.
[0027] When operating the virtual operating body, the simulator 1 receives an operation command from the outside (the operating device OD in the example shown in FIG. 1 ) and determines the positional relationship between the virtual operating body and the virtual regulating unit VB1 based on the received operation command. In this embodiment, the simulator 1 does not generate the operation command, but acquires it from the outside (the operating device OD in the example shown in FIG. 1 ). That is, the simulator 1 does not calculate the operation command, which is operation information for the operation of the virtual operating device VD in the virtual space VS, but calculates the coordinates of the components of the virtual operating device VD based on the received calculated and converted operation command, and calculates the relative position information. Therefore, the simulator 1 does not require calculation and conversion time, enabling high-speed simulation. The simulator 1 can notify the operation control unit 2 of the simulation results. The simulator 1 can be configured using, for example, a known central processing unit (CPU) generally installed in a computer.
[0028] As shown in FIG. 3 , the simulator 1 may be communicatively connected to an operation input unit 3 and an output unit 4. The operation input unit 3 accepts user operation inputs to operate the simulator 1 and transmits the contents of the user operation inputs to the simulator 1. By including the operation input unit 3, the operating system WS can execute a simulation by the simulator 1 in response to the user's input and change the conditions of the simulation by the simulator 1. The operation input unit 3 can be embodied by a known input means such as a keyboard, mouse, or controller. The output unit 4 is configured to output the results of the simulation by the simulator 1. The simulator 1 can notify the user of the results of the simulation through the output unit 4. The output unit 4 can be embodied by a known data output means such as a display, printer, or speaker. Note that the simulation information by the simulator 1 does not necessarily have to be output to the output unit 4.
[0029] As shown in FIGS. 3 and 4 , the simulator 1 is capable of operating a virtual operating body VW (in this embodiment, a virtual operating device VD and / or a virtual work object VOB1) corresponding to the operating body W (in this embodiment, a work device WD and a work object OB1) in a virtual space VS in which the virtual operating body VW and the virtual regulating unit VB1 are arranged. In this specification, the term "virtual operating body VW corresponding to the operating body W" refers not only to a virtual operating body VW that is completely identical to or similar in shape and size to the operating body W, which is a real object, but also to a virtual operating body VW that has a simplified shape or a slightly different size. In addition, in the simulator 1, the virtual operating body VW is arranged to correspond to the shape and position of the operating body W in the real space RS. In addition, the virtual regulating unit VB1 in the simulator 1 is determined according to the movement path and range of the operating body W in order to regulate the movement of the operating body W. In this embodiment, a virtual regulating unit VB1 is provided to guide the effector W to the destination position OP1, and the virtual regulating unit VB1 is disposed in a predetermined positional relationship with respect to a virtual destination position VOP1 provided in the virtual space VS. The simulator 1 can cause the virtual effector to perform an action corresponding to a user's operation in the virtual space VS. In the example shown in FIG. 3, a virtual space VS is displayed on the screen of the display serving as the output unit 4, in which the virtual effector VW (the virtual work device VD and the virtual work object VOB1) is disposed to correspond to the shape and position of the effector W (the work device WD and the work object OB1), and the virtual destination position VOP1 is disposed to correspond to the shape and position of the destination position OP1. In addition, the virtual regulating unit VB1 is disposed in the virtual space VS in a predetermined positional relationship with respect to the virtual destination position VOP1. The shape information (shape and size) of the virtual effector VW and the virtual regulating unit VB1 and their relative position information in the virtual space VS are stored in advance in a storage unit (not shown). When the real effector W operates, the position information of the virtual effector VW is updated and stored. Position information due to the movement of the real acting body W is acquired by the measuring device WD4 at a predetermined time interval (for example, within 1 to 10 milliseconds), and each time new position information is acquired, the position information of the virtual acting body VW is updated and stored.
[0030] The simulator 1 receives an operation command when the operation command is given to the working device WD, and in parallel with the operation command, operates a virtual operating body VW in the virtual space VS with content corresponding to the operation command, and determines the positional relationship between the virtual operating body VW and the virtual regulating unit VB1 at predetermined time intervals T. In this embodiment, when the working device WD is operated by a user, the simulator 1 operates the virtual operating body VW in the virtual space VS in parallel with the arbitrary operation in response to the arbitrary operation, and determines the positional relationship between the virtual operating body VW and the virtual regulating unit VB1 at predetermined time intervals T.
[0031] The phrase "in parallel with an action command" means that when the simulator 1 receives an action command to operate the effector W (in this embodiment, when the action command is received from the operation device OD), the action of the effector W is performed in accordance with the action command from the operation device OD. In other words, the action of the virtual effector VW (and the determination of the positional relationship) can be performed almost simultaneously with the action command, i.e., synchronously, in real time. Furthermore, the phrase "in parallel with an arbitrary operation" means that when an arbitrary operation to operate the effector W is performed, the action of the virtual effector VW is performed in accordance with the user's operation. In other words, the action of the virtual effector VW (and the determination of the positional relationship) can be performed almost simultaneously with the user's operation, i.e., synchronously, in real time. In this embodiment, the action of the virtual effector VW corresponding to the user's operation is started in the virtual space VS immediately after the operation (for example, within 1 to 10 milliseconds). By operating the virtual effector VW in parallel with the user's operation in this way, the user's operation is quickly reflected in the action of the virtual effector VW. Therefore, the positional relationship between the virtual operating body VW and the virtual regulating section VB1 is determined instantly by the simulator 1, and based on the positional relationship determined by the simulator 1, the operation of the operating body W by the operation control section 2 can be executed with a short time lag.
[0032] Furthermore, "determining the positional relationship at a predetermined time interval T" means that the determination of the positional relationship is repeated multiple times at the predetermined time interval T. Therefore, for example, if the working device WD is operated continuously for a certain period of time (e.g., 10 seconds), the positional relationship between the virtual operating body VW and the virtual regulating unit VB1 is determined multiple times at each predetermined time interval T (e.g., within 1 to 10 milliseconds). At each time interval T, the positional relationship between the virtual operating body VW and the virtual regulating unit VB1 is determined in the virtual space VS. If there is no problem such as interference if the operating body continues to operate as is, the operation control unit 2 operates the operating body W in the real space RS. On the other hand, if the simulator 1 determines that the operating body W should be stopped or that the operating body W should perform a different operation, control is performed to stop the operating body W or to cause the operating body W to perform a different operation in accordance with the determination. Note that the "predetermined time interval T" is not particularly limited, but is a time that does not cause a delay or the like when a person operates the operating body, for example, within 1 to 10 milliseconds.
[0033] The simulator 1 is configured to determine whether the distance between the virtual operating body VW and the virtual regulating portion VB1 is within a predetermined range. In this embodiment, the simulator 1 determines whether the virtual operating body VW and the virtual regulating portion VB1 are in contact with each other (whether the distance between the virtual operating body VW and the virtual regulating portion VB1 is zero) based on the distance between the virtual operating body VW and the virtual regulating portion VB1. If it is determined that the virtual operating body VW and the virtual regulating portion VB1 are in contact with each other and the movement direction D4 (see FIG. 7) of the virtual operating body VW corresponding to the input operation includes a component toward the surface of the virtual regulating portion VB1 (e.g., a component perpendicular to the surface of the virtual regulating portion VB1) and a component along the surface of the virtual regulating portion VB1 (e.g., a component parallel to the surface of the virtual regulating portion VB1), the simulator 1 is configured to correct the movement direction of the virtual operating body VW corresponding to the input operation based on the shape of the virtual regulating portion VB1.
[0034] The term "the distance is within a predetermined range" is not particularly limited, but may mean, for example, as shown in FIG. 6, that the virtual actuator and the virtual regulating section VB1 are in contact (i.e., the distance between the virtual actuator and the virtual regulating section VB1 is 0), that they are slightly spaced apart (the distance between the virtual actuator and the first virtual regulating section VB1 is less than a predetermined value), or that they are spaced apart by more than a predetermined distance (the distance is greater than a predetermined value).
[0035] In the example shown in FIG. 6, the surface of the virtual restriction portion VB1 and the virtual operating body VW (specifically, the virtual work object VOB1 corresponding to the work object OB1) are in contact with each other.
[0036] Furthermore, when it is determined that the distance between the virtual operating body VW and the virtual regulating portion VB1 is within a predetermined range, the simulator 1 may be configured to calculate a movement direction D5 of the virtual operating body VW for moving the virtual operating body VW along the surface of the virtual regulating portion VB1 (see FIG. 6) by correcting (correcting the trajectory) a movement direction D4 of the virtual operating body VW corresponding to the operation command (in this embodiment, operation information of the components of the working device WD for realizing the operation of the working device WD in response to an operation by the user) based on the shape of the virtual regulating portion VB1, as shown in FIG. 7. The operation controller 2 may be configured to move the operating body W in the calculated movement direction D5.
[0037] Furthermore, when it is determined that the distance between the virtual operating body VW and the virtual regulating portion VB1 is within a predetermined range, the simulator 1 may be configured to stop the virtual operating body VW against the surface of the virtual regulating portion VB1. The operation control portion 2 may be configured to stop the operating body W against the virtual regulating portion VB1. The meaning of "stopping the virtual operating body VW against the surface of the virtual regulating portion VB1" includes both the case where the virtual operating body VW is stopped in a state where it is in contact with the surface of the virtual regulating portion VB1, and the case where the virtual operating body VW is stopped in a state where it is spaced apart to a certain extent from the surface of the virtual regulating portion VB1.
[0038] Furthermore, when the distance between the virtual operating body VW and the virtual regulating portion VB1 is determined to be within a predetermined range, the simulator 1 may be configured to repel the virtual operating body VW against the surface of the virtual regulating portion VB1. "Repelling the virtual operating body VW against the surface of the virtual regulating portion VB1" means bouncing the virtual operating body VW against the surface of the virtual regulating portion VB1. "Stopping the virtual operating body VW against the surface of the virtual regulating portion VB1" includes both cases where the virtual operating body VW is repelled after contacting the surface of the virtual regulating portion VB1 and where the virtual operating body VW is repelled at a position some distance away from the surface of the virtual regulating portion VB1. The angle of incidence and the angle of reflection when repelling the virtual operating body VW against the surface of the virtual regulating portion VB1 can be set to, for example, equal values. The angle of incidence here refers to the angle between the approach direction of the virtual operating body VW toward the surface of the virtual regulating portion VB1 and the normal to the surface of the virtual regulating portion VB1. The reflection angle here means the angle formed by the direction in which the imaginary actuating body VW bounces off the surface of the imaginary restriction portion VB1 and the normal to the surface of the imaginary restriction portion VB1.
[0039] The virtual operating body VW (specifically, the virtual work target VOB1) is configured to perform a predetermined task by moving along the surface of the virtual regulating portion VB1 while contacting the virtual regulating portion VB1 or while maintaining a fixed distance from the virtual regulating portion VB1. For example, as shown in FIG. 7, the simulator 1 corrects the trajectory of the moving direction D4 of the virtual operating body VW based on the shape information of the virtual regulating portion VB1 stored in a storage unit (not shown), the operation command received from the operating device OD (specifically, the movement vector F1 corresponding to the moving direction D4 of the virtual operating body VW), and the positional relationship information between the virtual operating body VW and the virtual regulating portion VB1. That is, until the virtual operating body VW contacts the virtual regulating portion VB1, the simulator 1 moves the virtual operating body VW in the moving direction D4 based on the input operation information, and when it is determined that the virtual operating body VW has contacted the virtual regulating portion VB1, it corrects the trajectory of the virtual operating body VW to follow the surface shape of the virtual regulating portion VB1.
[0040] More specifically, in the example shown in FIG. 7 , the movement vector F1 can be corrected based on a movement vector F1 corresponding to the movement direction D4 of the virtual operating body VW (the virtual work device VD and the virtual work target VOB1) and a normal vector N starting from a collision point P1 when the virtual operating body VW collides with the virtual regulating portion VB1 while moving in the movement direction D4. This correction determines a corrected movement vector F2. More specifically, with the end point of the movement vector F1 aligned with the collision point P1, a straight line parallel to the surface of the virtual regulating portion VB1 at the collision point P1 is drawn from the start point of the movement vector F1, and an intersection point P2 between this line and the normal vector N is determined. The vector extending from the start point of the movement vector F1 to the intersection point P2 is the corrected movement vector F2. The direction in which the corrected movement vector F2 extends is the corrected movement direction D5 of the virtual operating body VW for moving the virtual operating body VW along the surface of the virtual regulating portion VB1. Furthermore, the dot product a (=F1·N) of the movement vector F1 and the normal vector N is calculated, and then the sum (F1+aN) of the movement vector F1 and the vector (aN) obtained by multiplying the normal vector N by the dot product a is calculated, thereby obtaining a corrected movement vector F2 (=F1+aN). The simulator 1 calculates the corrected movement vector F2 at predetermined time intervals. By moving the virtual acting body VW using the calculated movement vector F2, the virtual acting body VW can be moved along the surface of the virtual regulating portion VB1 while contacting the surface. Note that the method for correcting (trajectory correction) the movement direction D4 of the virtual acting body VW based on the surface shape of the virtual regulating portion VB1 is not limited to the above description, and other methods may be used.
[0041] The simulator 1 moves the virtual operating body VW in the corrected movement direction D5 determined by the simulator 1, thereby moving the virtual operating body along the surface of the first virtual regulating portion VB1 while keeping it in contact with the surface. The operation control portion 2 moves the operating body W in the corrected movement direction D5 determined by the simulator 1, thereby moving the operating body W along the surface of the first virtual regulating portion VB1. The surface of the virtual regulating portion VB1 may be curved or flat. Whether the surface is curved or flat, as long as the movement direction D4 of the virtual operating body VW due to the user's operation includes a component toward the surface of the virtual regulating portion VB1 and a component along the surface of the virtual regulating portion VB1, the simulator 1 can determine the corrected movement direction D5 (in this embodiment, movement vector F2) by performing trajectory correction (movement direction correction) as shown in FIG. 6. Therefore, the user can move the virtual operating body VW along the surface of the virtual regulating section VB1 while keeping it in contact with the surface of the virtual regulating section VB1 by simply performing a rough operation that includes a component directed toward the surface of the virtual regulating section VB1 and a component along the surface.
[0042] In the example shown in FIG. 6, the virtual regulating unit VB1 is configured to guide the virtual operating body VW corresponding to the operating body W (see FIG. 5) to a virtual destination position VOP1 corresponding to a predetermined destination position OP1 (see FIG. 5). In this specification, the "predetermined destination position OP1" refers to a position according to the purpose of the work of the working device WD, and is a position corresponding to the destination of the operating body W. In the example shown in FIG. 1, the purpose of the work of the working device WD is to move the work target OB1 to a predetermined position (for example, an opening (see FIG. 5) in a floor surface, etc.) OP1 and place it at the predetermined position OP1. In the example shown in FIG. 6, the virtual regulating unit VB1 has a virtual guide surface VB11 configured so that the movement range of the virtual operating body VW narrows as the virtual operating body VW approaches the virtual destination position VOP1 corresponding to the predetermined destination position OP1. The virtual guide surface VB11 is configured so that the movement range of the virtual operating body VW narrows as the virtual operating body VW approaches the virtual destination position VOP1, thereby enabling the virtual operating body VW to be smoothly guided toward the virtual destination position VOP1. For ease of explanation, FIG. 5 shows only the work object OB1 of the operating body W, and does not show the working device WD (finger WD31). Similarly, for ease of explanation, FIGS. 6 and 8 show only the virtual work object VOB1 of the virtual operating body VW, and does not show the virtual operating device VD (virtual finger VD31). A similar correction to the above may also be performed when the virtual operating device VD (virtual finger VD31) of the virtual operating body VW comes into contact with the virtual restrictor VB1. Alternatively, the simulation unit 1 and the motion control unit 2 may be configured so that the moving direction of only the virtual work object VOB1 of the virtual operating body VW is corrected by the virtual restrictor VB1.
[0043] In this embodiment, the virtual guide surface VB11 is formed in a cone shape with an opening at the bottom BO (the end with a larger diameter in the axial direction of the cone) and the top TO (the end with a smaller diameter in the axial direction of the cone), and the inner space narrows as it approaches the virtual destination position VOP1. That is, the virtual regulating member VB1 has a cone-shaped side wall SW with openings at the bottom BO and the top TO. The type of cone is not particularly limited, but in the example shown in FIG. 6, it is a circular cone (frustum of a cone). The simulator 1 is configured to determine a movement direction D5 of the virtual work object VOB1 for moving the virtual operating body VW along the inner surface of the side wall SW of the virtual regulating member VB1 from the bottom BO side to the top TO side, and to move the virtual work object VOB1 in the determined movement direction D5 to eject the virtual work object VOB1 from the opening at the top TO. The operation controller 2 is configured to move the work object OB1 (see FIG. 5) in the determined direction D5 to move the work object OB1 to the target position OP1. The opening of the top TO is set to a size that allows the portion of the actuator W to be placed at the destination position OP1 (the work object OB1 in the example shown in FIG. 1 ) to easily pass through. The "size that allows easy passage" refers to a size that provides a predetermined radial clearance between the opening and the virtual work object VOB1, allowing easy passage even when the user performs rough operations on the operating device OD. In the example shown in FIG. 6 , the diameter of the opening of the top TO is larger than the diameter of the columnar work object OB1. The virtual guide surface VB11 is preferably set to have an inclination angle (inclination angle with respect to the vertical direction) that smoothly guides the virtual work object VOB1 to the virtual destination position VOP1. Such an inclination angle is set according to the respective shapes and sizes of the virtual work object VOB1 and the bottom BO. If the inclination angle of the virtual guide surface VB11 is too small (i.e., the diameter of the bottom OB is close to the diameter of the top TO), the opening of the bottom BO will be small, which may make it difficult to insert the virtual work object VOB1 into the opening of the bottom BO. If the inclination angle of the imaginary guide surface VB11 is too large (the diameter of the bottom OB is too large compared to the diameter of the top TO), the work object OB1 may assume a posture close to lying on its side.If the work object OB1 falls into a position close to lying on its side, it may not be possible to smoothly guide the work object OB1 to the destination position OP1. Note that the side walls SW of the imaginary control member VB1 may have a substantially constant inclination angle (inclination angle with respect to the vertical direction) from the bottom BO to the top TO (see FIG. 6), or may be configured so that the inclination angle (inclination angle with respect to the vertical direction) gradually decreases (so as to become inwardly convex) as it approaches the top TO from the bottom BO.
[0044] In the example shown in FIG. 6, the simulator 1 determines a movement direction D5 of the virtual actuator VW (virtual work object VOB1) for moving the virtual actuator VW from the bottom BO side to the top TO side along the virtual guide surface VB11 of the virtual regulating portion VB1, and the operation control unit 2 is configured to move the actuator (work object OB1) in the determined movement direction D5. The actuator W moves along the inclination direction of the virtual guide surface VB11 in the real space RS. When the simulator 1 determines that the virtual actuator VW has reached or passed the top TO, it stops the movement of the virtual actuator VW. The operation control unit 2 stops the movement of the actuator W (work object OB1, see FIG. 5) based on the results of the simulation. After the actuator W has stopped, the user can perform an operation to release the work object OB1. When the user performs this operation, the simulator 1 releases the virtual work object VOB1 (see FIG. 6). This allows the virtual work object VOB1 to be placed at the virtual destination position VOP1. The simulator 1 may be configured to stop the movement of the virtual work object VOB1 and adjust the orientation of the virtual work object VOB1 when it determines that the virtual working body VW has reached or passed the top TO. Specifically, the simulator 1 is configured to cause the virtual work device VD to adjust the orientation of the virtual work object VOB1 so that it is suitable for placement at the virtual destination position VOP1. An "orientation suitable for placement at the virtual destination position VOP1" is, for example, an orientation that allows the virtual work object VOB1 to stand on its own at the virtual destination position VOP1 (a position that does not tip over). Furthermore, if a hole (the cylindrical portion indicated by the dashed line in FIG. 6) is provided in the virtual destination position VOP1, the orientation is an orientation that allows the virtual work object VOB1 to be inserted into the hole. The virtual destination position VOP1 may be a hole (see FIG. 6) into which the virtual work object VOB1 is inserted, or may be a surface (for example, a plane) on which the virtual work object VOB1 is placed.
[0045] In the example shown in FIG. 6, the actuation system WS is configured to use a virtual restrictor VB1 to insert (including engage) a work object OB1 (see FIG. 5) into a hole formed at a predetermined position OP1. Specifically, the hole is formed on the top surface of a member FL placed in a real space RS (see FIG. 5). The measuring device WD4 measures the position of the hole in the member FL based on a captured image. The position measured by the measuring device WD4 is associated with the shape and position of the hole and stored in a memory unit (not shown). The shape and position of the hole (target position OP1) formed in the member FL may also be stored in advance in association with the position of the work device WD. As shown in FIG. 6, the simulator 1 places a virtual member VFL corresponding to the member FL in a virtual space VS. As shown in FIG. 6, the simulator 1 sets the virtual restrictor VB1 in the virtual space VS so that the position of the top TO coincides with the position of the opening of the hole (virtual target position VOP1). The simulator 1 determines a movement direction D5 of the virtual actuator VW (virtual work object VOB1) for moving the virtual actuator VW from the bottom BO side to the top TO side along the virtual guide surface VB11 of the virtual regulating portion VB1. The operation controller 2 moves the actuator W (work object OB1) in the determined movement direction D5. The actuator W moves along the virtual guide surface VB11. When the simulator 1 determines that the virtual actuator VW has reached the top TO, it stops the movement of the virtual actuator VW.
[0046] When the virtual operating body VW reaches the top TO, the center line CL2 of the virtual work object VOB1 may be inclined relative to the center line CL1 of the hole (virtual destination position VOP1) (see FIG. 8 ). In such a case, the user can insert the tip of the work object OB1 into the hole and change the tilt angle of the work object OB1 (shake the work object OB1) by operating the operating device OD. When the user performs this operation, the simulator 1 inserts the tip of the virtual work object VOB1 into the hole based on the user's operation, and inserts the virtual work object VOB1 into the hole while changing the tilt angle of the virtual work object VOB1 (shake the virtual work object VOB1). By changing the tilt angle of the virtual work object VOB1, the posture of the virtual work object VOB1 can be changed to one that allows it to be inserted into the hole. Based on the results of the simulation, the operation control unit 2 inserts the tip of the work object OB1 into the hole, and inserts the work object OB1 into the hole while changing the tilt angle of the work object OB1 (while swinging the work object OB1). By changing the tilt angle of the work object OB1, the tilt angle of the work object OB1 (which may be zero or a value greater than zero) can be adjusted to an angle that allows the work object OB1 to be inserted into the hole.
[0047] After the tip of the work object OB1 is inserted into the hole, the user can perform an operation to insert the work object OB1 to a predetermined depth into the hole. Specifically, for example, the user can perform an operation to insert the work object OB1 to a predetermined depth into the hole (destination position OP1) while the center line of the work object OB1 is tilted relative to the center line of the hole (a state in which the tilt angle is greater than zero) (see FIG. 9). When the user performs this operation, the simulator 1 inserts the virtual work object VOB1 to a predetermined depth into the hole while the virtual work object VOB1 is tilted relative to the hole. Alternatively, for example, the user can perform an operation to move the inserted portion of the work object OB1 to one radial side of the hole (destination position OP1) and press the side of the inserted portion against the inner circumferential surface of the hole along the length of the hole (see FIG. 10). This allows the user to perform an operation to insert the work object OB1 to a predetermined depth into the hole while the work object OB1 is not tilted relative to the hole (a state in which the tilt angle is approximately zero). When the user performs this operation, the simulator 1 shifts the inserted portion of the virtual work object VOB1 toward one radial side of the hole and changes the posture of the virtual work object VOB1 so that the side of the inserted portion is pressed against the inner circumferential surface of the hole along the length of the hole. Furthermore, the simulator 1 inserts the virtual work object VOB1 into the hole to a predetermined depth while the work object OB1 is not tilted relative to the hole.
[0048] The simulator 1 may be configured to adjust the orientation of the virtual work object VOB1 so that the center line CL2 substantially coincides with the center line CL1. By adjusting the orientation of the virtual work object VOB1 by the simulator 1, the work object OB1 can be more easily inserted into the hole (target position OP1). Even if the center line CL2 of the virtual work object VOB1 is inclined with respect to the center line CL1 of the hole (virtual target position VOP1), if the opening of the hole (virtual target position VOP1) is large enough that the virtual work object VOB1 can be inserted as is, the simulator 1 does not need to adjust the orientation of the virtual work object VOB1.
[0049] The actuation system WS according to this embodiment simulates the positional relationship between the effector VW (working device WD and work object OB1), which performs a predetermined action in response to input operations from the operating device OD by the user, and a virtual restriction unit VB1 virtually provided to restrict the movement of the effector VW, and corrects the movement direction of the effector VW based on the results of the simulation. As a result, even if the effector WD may perform an unexpected action in response to an arbitrary operation by the user in the real space RS, the effector W is guided to the destination position OP1, allowing the effector WD to smoothly perform its task (e.g., transporting the work object OB1). Furthermore, the effector W is stopped or repelled as necessary. Therefore, even if the user is unable to perform fine movements using the operating device OD, the user can easily perform the necessary operations on the work object OB1 using the effector WD. In particular, when a user remotely operates the work device WD while visually checking the operation of the work device WD by operating the work device OD, in the past it was necessary to check the positional relationship between the work device WD and the object OB in detail from a distance, which could impose a heavy burden on the user. However, with the operating system WS of this embodiment, the operation of the work device WD can be appropriately controlled even with rough operations, so it is possible to protect equipment and perform advanced trajectory operations of the work device WD while reducing the burden on the user.
[0050] The actuation system WS may be configured to display the positional relationship between the virtual actuating body VW (virtual work object VOB1 in the example shown in FIG. 11) and the virtual destination position VOP1, which is a hole, on the screen of a display, which is the output unit 4, as shown in FIG. 11. In the example shown in FIG. 11, the positional relationship between the virtual work object VOB1 and the virtual destination position VOP1 is displayed on the display screen. The virtual work object VOB1 is shown moving from right to left in FIG. 11. As the virtual work object VOB1 moves from right to left in FIG. 11, it gradually approaches the virtual destination position VOP1. By displaying the positional relationship between the virtual actuating body VW and the virtual destination position VOP1 on the display screen, the user can visually recognize this positional relationship on the screen. This allows the user to operate the operating device OD (see FIG. 1) based on the visually recognized positional relationship and cause the working device WD to perform a predetermined task. Therefore, compared to operating the operating device OD while looking directly at the operating device WD and the work object OB1, the user can operate the operating device WD more accurately and easily. Furthermore, if the work object OB1 and the destination position OP1, captured by a camera or the like, are displayed on a display, the view of the camera or the like of the work object OB1 and the destination position OP1 may be partially or completely blocked by the operating device WD or the like. In this case, even if the work object OB1 and the destination position OP1 are displayed on a display, the user may not be able to fully grasp the positional relationship between the work object OB1 and the destination position OP1. In contrast, if the positional relationship between the virtual work object VOB1 and the virtual destination position VOP1 is displayed on the display screen, the virtual work object VOB1 and the virtual destination position VOP1 can be displayed so that the view of the virtual work object VOB1 and the virtual destination position VOP1 is not blocked by the virtual operating device VD or the like. This makes it easier for the user to grasp the positional relationship between the work object OB1 and the destination position OP1. This allows the user to easily perform operations to make the working device WD perform work accurately.
[0051] 12 to 14, the actuation system WS may be configured to display the positional relationship between a predetermined portion of the virtual work object VOB1 (in the example shown in FIGS. 12 to 14, the tip portion (specifically the tip surface)) and the virtual destination position VOP1 on the screen of the display, which is the output unit 4. In the example shown in FIGS. 12 to 14, the tip surface of the virtual work object VOB1 and the virtual destination position VOP1 are displayed as viewed from the axial direction D6 (see FIG. 11) of the virtual destination position VOP1. The virtual work object VOB1 is shown as it is positioned on the right, center, and left sides of Fig. 11, as viewed from the axial direction D6 of the virtual destination position VOP1. In the example shown in Figs. 12 to 14, the user's operation causes the simulator 1 to move the virtual work object VOB1 so that the inclination angle of the virtual work object VOB1 relative to the virtual destination position VOP1 gradually decreases while gradually bringing the virtual work object VOB1 closer to the virtual destination position VOP1. The display shows the movement of the virtual work object VOB1.
[0052] Furthermore, in this embodiment, the simulator 1 can be configured to determine whether the distance between a predetermined portion of the virtual operating body VW and the first virtual regulating portion VB1 is within a predetermined range (e.g., whether the predetermined portion and the first virtual regulating portion VB1 are in contact), but not to determine whether the distance between another portion of the virtual operating body VW (a portion other than the predetermined portion) and the first virtual regulating portion VB1 is within the predetermined range. That is, the simulator 1 can limit the object for determining the distance to the first virtual regulating portion VB1 to a predetermined portion of the virtual operating body VW. In this case, since the "other portion" is not subject to distance determination, even if the "other portion" is in a positional relationship that causes it to come into contact with the first virtual regulating portion VB1, that positional relationship is not involved in the processing of the simulator 1 and the operation control unit 2. Therefore, the simulator 1 can omit determination of positional relationships that are less relevant to the task purpose and perform positional determination that is more relevant to the task purpose. This allows the simulator 1 to appropriately and quickly determine positional relationships according to the task purpose. The "predetermined portion of the virtual operating body VW" is a portion highly relevant to the task objective of the operating system WS. Specifically, for example, the "predetermined portion of the virtual operating body VW" is part or all of the virtual work object VOB1 (i.e., the virtual operating device VD is not subject to position determination). In the example shown in FIGS. 11 to 14, the "predetermined portion of the virtual operating body VW" is the tip or tip surface of the virtual work object VOB1. The simulator 1 determines whether the distance between the tip or tip surface of the virtual work object VOB1 and the first virtual regulating portion VB1 is within a predetermined range (e.g., whether the tip or tip surface is in contact with the first virtual regulating portion VB1), but does not determine whether the distance between other portions of the virtual operating body VW (portions other than the predetermined portion) and the first virtual regulating portion VB1 is within the predetermined range. This allows for an appropriate and prompt simulation to achieve the task objective of placing the work object OB1 at the destination position OP1.In other words, for example, when the virtual work device VD comes into contact with the virtual regulating portion VB1, the movement of the virtual work device VD is restricted by the virtual regulating portion VB1, which can prevent the inconvenience of the virtual regulating portion VB1 impeding the guidance of the virtual work object VOB1.
[0053] In this embodiment, as shown in FIG. 15, the virtual regulating portion VB1 may be configured so that the virtual operating body (only the virtual work object VOB1 is shown in FIG. 15) can pass through the virtual guide surface VB11 from the opposite side to the virtual guide surface VB11 toward the virtual guide surface VB11, but the virtual operating body cannot pass through the virtual guide surface VB11 from the virtual guide surface VB11 side to the opposite side to the virtual guide surface VB11. Specifically, as shown in FIG. 15, the virtual regulating portion VB1 may be configured so that the virtual operating body can pass through the virtual guide surface VB11 from the outside to the inside of the virtual regulating member VB1, but the virtual operating body cannot pass through the virtual guide surface VB11 from the inside to the outside of the virtual regulating member VB1. With this configuration, the virtual work object VOB1 can enter the virtual regulating portion VB1 from a portion other than the bottom portion BO of the virtual regulating portion VB1. This allows the user to more easily place the virtual work object VOB1 inside the virtual restriction section VB1, and once the virtual work object VOB1 is inside the virtual restriction section VB1, it cannot leave the virtual restriction section VB1, improving the operational efficiency when the user places the virtual work object VOB1 inside the virtual restriction section VB1.
[0054] As shown in FIG. 16 , the virtual regulating portion VB1 may be formed in a pyramidal shape with openings at the bottom BO and top TO. The type of pyramid of the virtual regulating portion VB1 can be set according to the shape of the virtual work object VOB1. Because the virtual work object VOB1 shown in FIG. 16 is formed in a rectangular prism shape, the virtual regulating portion VB1 is formed in a rectangular pyramidal shape. The shapes of the openings at the bottom OB and top TO can also be set according to the shape of the virtual work object VOB1. Because the virtual work object VOB1 shown in FIG. 16 is formed in a rectangular prism shape, the shapes of the openings at the bottom OB and top TO are also rectangular. The opening at the top TO is set to a size that allows the portion of the actuator W to be placed at the destination position OP1 (the work object OB1 in the example shown in FIG. 1 ) to easily pass through. By setting the shape of the side wall WS according to the shape of the virtual work object VOB1, it becomes easier to guide the virtual work object VOB1 in a stable posture. Furthermore, by forming the openings of the top and bottom portions TO and BO in a shape that corresponds to the shape of the virtual work object VOB1, it becomes easier to put the virtual work object VOB1 in and take it out of the virtual restriction portion VB1.
[0055] Next, another embodiment of the actuation system will be described with reference to FIGS. 17 to 26. In the embodiment shown in FIGS. 17 to 26, the actuation system is configured to use a virtual regulating unit VB1 to perform an operation of inserting (including fitting) a work object into a hole provided at a predetermined destination position. The virtual regulating unit VB1 is configured to guide the virtual actuating body VW to a hole (hereinafter also referred to as hole VOP1), which is a virtual destination position VOP1. In this embodiment, the virtual regulating unit VB1 is configured to guide the virtual work object VOB1, which is the insertion target of the virtual actuating body VW, to the hole VOP1. In the example shown in FIG. 17, the virtual work object VOB1 is a columnar object such as a cylindrical or prismatic object, but is not limited to this. Also, in the example shown in FIG. 17, the hole VOP1 is a hole with a columnar space such as a cylindrical or prismatic shape, but is not limited to this. The hole VOP1 may have any shape and size that allows the virtual work object VOB1 to be inserted therein. The diameter of the hole VOP1 is larger than the diameter of the work object OB1. As will be described later, in this embodiment, even if the difference in diameter between the hole VOP1 and the work object OB1 is small, the work object OB1 can be easily inserted into the hole VOP1.
[0056] In this embodiment, the imaginary restricting portion VB1 has a guide restricting portion VBG (see FIGS. 17 and 18). Also, in this embodiment, the imaginary restricting portion VB1 further has a swing restricting portion VBS (see FIG. 22). The guide restricting portion VBG is a portion that guides the insertion target portion VOB1 of the imaginary operating body VW (hereinafter also referred to as the insertion target portion VOB1) so that a portion of the tip of the insertion target portion VOB1 is inserted into the hole VOP1 and the center line CL2 of the insertion target portion VOB1 is inclined with respect to the depth direction of the hole VOP1 (see FIGS. 18 to 20). In this embodiment, the depth direction of the hole VOP1 is the direction along the center line CL1 of the hole VOP1. The depth direction of the hole VOP1 is approximately parallel to the center line CL1 of the hole VOP1. As shown in Fig. 20, "a part of the tip of the insertion target portion VOB1" refers to a part of the region of the end of the insertion target portion VOB1 in the length direction (the direction along the center line CL2) that is closer to the hole VOP1. Specifically, for example, assume that the insertion target portion VOB1 is cylindrical and the center line CL2 is inclined relative to the center line CL1 of the hole VOP1 (see Fig. 20). In this case, "a part of the tip of the insertion target portion VOB1" refers to a region of one end of the insertion target portion (cylinder) VOB1 that is closer to the hole VOP1 (a part of the circumferential direction of the circular edge). The configuration of the guide and restrictor VBG is not particularly limited, as long as it guides the insertion target portion VOB1 so that a part of the tip of the insertion target portion VOB1 of the imaginary actuating body VW is inserted into the hole VOP1 and the center line CL2 of the insertion target portion VOB1 is inclined relative to the depth direction of the hole VOP1. 17, the guide and restricting portion VBG is configured to have a substantially V-shaped cross section formed by combining two flat portions. The intersection line of the two flat portions is inclined with respect to the depth direction of the hole VOP1 (the direction along the center line CL1). In this embodiment, the guide and restricting portion VBG is configured so that a part of the tip of the insertion target portion VOB1 is inserted inside the opening periphery PE of the hole VOP1 (see FIG. 20). In this embodiment, the guide and restricting portion VBG is configured to guide the insertion target portion VOB1 into the hole VOP1 so that the center line CL2 of the insertion target portion VOB1 and the center line CL1 of the hole VOP1 intersect or are close to each other.This makes it easier for the guide restricting portion VBG to insert a portion of the tip of the insertion target portion VOB1 inside the opening periphery PE of the hole VOP1. Furthermore, in this embodiment, the simulator 1 is configured to generate the guide restricting portion VBG when the distance between the insertion target portion VOB1 and the hole VOP1 becomes equal to or less than a predetermined distance. Furthermore, the simulator 1 is configured to eliminate the guide restricting portion VBG after a portion of the tip of the insertion target portion VOB1 is inserted inside the opening periphery PE of the hole VOP1.
[0057] The swing restriction unit VBS (see FIG. 22) is configured to restrict the swing direction D9 (see FIG. 23) of the insertion target portion VOB1, with a portion of its tip inserted into the hole VOP1 and in contact with the opening periphery PE of the hole VOP1, around the contact position with the opening periphery PE. Specifically, the swing restriction unit VBS is configured to restrict the swing direction D9 so that the inclination angle θ of the center line CL2 of the insertion target portion VOB1 relative to the depth direction of the hole VOP1 becomes smaller. In the example shown in FIGS. 21 and 23, the swing restriction unit VBS restricts the swing direction D9 so that the inclination angle θ shown in FIG. 23 is smaller than the inclination angle θ shown in FIG. 21. In the state shown in FIG. 21, the side surface (outer peripheral surface) of the insertion target portion VOB1 is in contact with the opening periphery PE at one location (one contact position CP). In this state, the insertion target portion VOB1 can swing in a direction that reduces the inclination angle θ. The insertion target portion VOB1 transitions to the state shown in FIG. 23 as a result of swinging in the swing direction D9. The swing regulation portion VBS is not particularly limited in configuration as long as it can regulate the swing direction D9 of the insertion target portion VOB1 about the contact position with the opening periphery PE when the insertion target portion VOB1, with a portion of its tip inserted into the hole VOP1, is in contact with the opening periphery PE of the hole VOP1. In the example shown in FIG. 22, the swing regulation portion VBS is composed of two flat plate-like portions arranged to sandwich the insertion target portion VOB1 from both radial sides. The two flat plate-like portions are arranged parallel to each other. The distance between the two flat plate-like portions is approximately the same as the diameter of the insertion target portion VOB1. The two flat plate-like portions are arranged parallel to the center line CL1 of the hole VOP1 and the center line CL2 of the insertion target portion VOB1. This allows the swing control portion VBS to guide the insertion target portion VOB1 so that the insertion target portion VOB1 swings in a direction in which the center line CL2 of the insertion target portion VOB1 is approximately parallel to the center line CL1 of the hole portion VOP1 (a direction in which the inclination angle θ described below becomes smaller).
[0058] 23, the insertion target portion VOB1 is in contact with the opening periphery PE at three locations (three contact positions CP). In the example shown in FIG. 23, the side surface of the insertion target portion VOB1 is in contact with the opening periphery PE at one contact position CP (hereinafter also referred to as the first contact position CP1). In addition, in this embodiment, the periphery of one end (the end on the hole VOP1 side) of the insertion target portion VOB1 is in contact with the opening periphery PE at two contact positions CP (hereinafter also referred to as the second contact positions CP2). The two contact positions CP (two second contact positions CP2) are spaced apart from each other in the circumferential direction on the periphery of one end of the insertion target portion VOB1. Of the two second contact positions CP2, the second contact position CP2 on the near side in the direction perpendicular to the paper surface is shown in FIG. When the insertion target portion VOB1 and the opening periphery PE are in contact at three points (see FIG. 23), the insertion target portion VOB1 cannot swing in a direction that reduces the tilt angle θ. Furthermore, in this state, the insertion target portion VOB1 cannot be inserted deeper into the hole VOP1. To insert the insertion target portion VOB1 deeper into the hole VOP1, the tilt angle θ of the insertion target portion VOB1 must be reduced. To reduce the tilt angle θ of the insertion target portion VOB1, simply move the insertion target portion VOB1 in the direction D10 (see FIG. 24) to remove it from the hole VOP1 (but do not remove it completely). Moving the insertion target portion VOB1 in the direction D10 to remove it from the hole VOP1 transitions to a state in which the insertion target portion VOB1 contacts the opening periphery PE at one point (one contact position CP) (see FIG. 24).
[0059] In the state shown in Fig. 24, the insertion target part VOB1 can be swung in a direction that reduces the tilt angle θ (see Fig. 25). By swung in the swing direction D9, the insertion target part VOB1 transitions to the state shown in Fig. 25. The tilt angle θ shown in Fig. 25 is smaller than the tilt angle θ shown in Fig. 23. This means that the posture of the insertion target part VOB1 shown in Fig. 25 is closer to the posture that allows insertion into the hole VOP1 than the posture of the insertion target part VOB1 shown in Fig. 23.
[0060] Specifically, when the tilt angle θ exceeds a certain value, it becomes difficult to insert the entire tip of the insertion target portion VOB1 (for example, the entire circumferential direction of the circular edge) into the hole VOP1 while the side surface (outer peripheral surface) of the insertion target portion VOB1 is in contact with the opening periphery PE. The tilt angle at this point can be called the critical angle θa. The critical angle θa can be expressed by the following equation (1): where R is the radius of the hole VOP1, and r is the radius of the insertion target portion VOB1. cos(θa)=r / R (1)
[0061] When the insertion target part VOB1 is in a position where it can be inserted into the hole part VOP1 (hereinafter also referred to as the insertable position), the following formula (2) holds: The insertable position is a position where the entire tip of the insertion target part VOB1 can be inserted into the hole part VOP1 with the outer peripheral surface of the insertion target part VOB1 in contact with the opening periphery PE (see FIG. 26). θ<θa (2)
[0062] The tilt angle θ shown in FIG. 25 is larger than the critical angle θa. However, the tilt angle θ shown in FIG. 25 is closer to the critical angle θa than the tilt angle θ shown in FIG. 23. In the state shown in FIG. 25, the insertion target portion VOB1 is in contact with the opening periphery PE at three locations (three contact positions CP). In FIG. 25, two second contact positions CP2 (only one second contact position CP2 is shown in FIG. 25) are spaced apart from each other in the circumferential direction on the periphery of one end of the insertion target portion VOB1. However, the distance between the first contact position CP1 and the second contact position CP2 in FIG. 25 is smaller than the distance between the first contact position CP1 and the second contact position CP2 in FIG. 23. In the state shown in FIG. 25 where the insertion target portion VOB1 and the opening periphery PE are in contact at three locations, the insertion target portion VOB1 cannot swing in a direction that reduces the tilt angle θ. Therefore, the insertion target portion VOB1 is moved again in the direction D10 to be pulled out from the hole portion VOP1.
[0063] 23 to 25 are repeated. At some point, the entire tip of the insertion target portion VOB1 (for example, the entire circumferential direction of the circular edge) is inserted into the hole VOP1 (see FIG. 26). In the state shown in FIG. 26, the tilt angle θ satisfies the above-mentioned formula (2). In the state shown in FIG. 26, the side of the insertion target portion VOB1 contacts the opening periphery PE at one point (one first contact position CP1), and a part of the tip of the insertion target portion VOB1 contacts the inner circumferential surface of the hole VOP1 at a third contact position CP3. This allows the insertion target portion VOB1 to be inserted deeper by adjusting the orientation of the insertion target portion VOB1 within the hole VOP1. For example, the insertion target portion VOB1 is swung around the contact position (third contact position CP3 in FIG. 26) between the tip of the insertion target portion VOB1 and the inner circumferential surface of the hole VOP1 so that the center line CL2 becomes approximately parallel to the center line CL1 of the hole VOP1. This makes the center line CL2 approximately parallel to the center line CL1 of the hole VOP1, allowing the insertion target portion VOB1 to be inserted even deeper (even completely inserted).
[0064] By operating the operating device OD, the user can perform an operation to bring the tip of the insertion target portion of the operating body closer to the hole in order to insert the insertion target portion into the hole. When the user performs this operation, the simulator 1 generates a guide restrictor VBG based on the user's operation when the distance between the insertion target portion VOB1 and the hole VOP1 in the virtual operating body VW becomes equal to or less than a predetermined distance, as shown in FIG. 17. The simulator 1 calculates a movement direction D5 (see FIG. 18) of the insertion target portion VOB1 for moving the insertion target portion VOB1 along the virtual guide surface VB11 of the guide restrictor VBG in a direction approaching the hole VOP1. The operation controller 2 moves the insertion target portion VOB1 in the calculated movement direction D5 (see FIG. 18). Based on the results of the simulation, the operation controller 2 moves the insertion target portion of the operating body along the inclination direction of the virtual guide surface VB11. When the simulator 1 determines that a portion of the tip of the insertion target portion VOB1 has been inserted into the hole portion VOP1, it stops the movement of the virtual actuator VW (see FIG. 20). The operation controller 2 stops the movement of the actuator based on the results of the simulation. After the actuator has stopped, the user can perform an operation to move the insertion target portion on the inclined side of the insertion target portion in a direction approaching the opening periphery PE (movement direction D11, see FIG. 21). When the user performs this operation, the simulator 1 moves the insertion target portion VOB1 in the movement direction D11 based on this operation. This allows the side surface (outer peripheral surface) of the insertion target portion VOB1 to come into contact with the opening periphery PE (see FIG. 21). The simulator 1 can determine that the side surface (outer peripheral surface) of the insertion target portion VOB1 has come into contact with the opening periphery PE based on the distance between the insertion target portion VOB1 and the opening periphery PE. 21, the first contact position CP1, the center line CL1 of the hole VOP1, and the center line CL2 of the insertion target portion VOB1 are preferably on approximately the same plane. In this case, it is easy to swing the insertion target portion VOB1 in a direction in which the center line CL2 of the insertion target portion VOB1 is approximately parallel to the center line CL1 of the hole VOP1 (a direction in which the tilt angle θ, described below, becomes smaller) (see swing direction D9 in FIG. 23).In this embodiment, the actuation system WS may include a contact detection unit (not shown) that detects contact between the insertion target portion and the periphery of the opening of the hole in real space. The configuration of the contact detection unit is not particularly limited as long as it can detect contact between the insertion target portion and the periphery of the opening of the hole. Specifically, the contact detection unit may be, for example, a force sensor or a device that detects electrical conduction between the insertion target portion and the periphery of the opening of the hole when the insertion target portion comes into contact with the periphery of the opening. The device that detects electrical conduction may be configured to detect, for example, a change in the potential difference between the insertion target portion and the periphery of the opening.
[0065] The simulator 1 stops the movement of the virtual operating body VW (insertion target body VOB1) when it determines that the insertion target body VOB1 in the virtual space VS has come into contact with the opening periphery PE (see FIG. 21), or when the contact detector detects contact between the insertion target body in the real space and the opening periphery. The operation controller 2 stops the movement of the operating body (insertion target body) based on the results of the simulation.
[0066] After the movement of the actuating body stops, the simulator 1 generates a swing restriction member VBS (see FIG. 22). After the swing restriction member VBS is generated, the user can perform an operation to swing the insertion target portion toward the central axis of the hole. When the user performs this operation, the simulator 1 determines the movement direction (swing direction D9, see FIG. 23) of the insertion target portion VOB1 for swinging the insertion target portion VOB1 toward the central axis CL1 of the hole VOP1 along the virtual guide surface VB11 of the swing restriction member VBS. The operation controller 2 moves (swings) the insertion target portion VOB1 in the determined movement direction (swing direction D9) (see FIG. 23). Based on the results of the simulation, the operation controller 2 moves (swings) the insertion target portion of the actuating body toward the central axis of the hole along the virtual guide surface VB11.
[0067] When the simulator 1 determines that the tip of the insertion target part VOB1 has come into contact with the opening periphery PE of the hole VOP1 based on the positional relationship between the tip of the insertion target part VOB1 and the opening periphery PE of the hole VOP1, it determines that the insertion target part VOB1 has come into contact with the opening periphery PE of the hole VOP1 at three points (see FIG. 23). When the simulator 1 determines that the insertion target part VOB1 has come into contact with the opening periphery PE of the hole VOP1 at three points, it stops the movement (swing) of the virtual operating body VW (insertion target part VOB1). The operation controller 2 stops the movement (swing) of the operating body (insertion target part) based on the results of the simulation.
[0068] After the movement of the actuator stops, the user can move the insertion target part in a direction to pull it out of the hole. When the user performs this operation, the simulator 1 moves the insertion target part VOB1 in the direction D10 to pull it out of the hole VOP1 based on the operation (see FIG. 24). The operation controller 2 moves the insertion target part in the direction D10 to pull it out of the hole based on the results of the simulation. As a result, the insertion target part VOB1 transitions to a state in which it is in contact with the opening periphery PE of the hole VOP1 at one point (first contact position CP1). In the state shown in FIG. 24, the insertion depth of the insertion target part VOB1 into the hole VOP1 is shallower than the state shown in FIG. 23 (the state before movement in the pull-out direction D10). The simulator 1 stops the movement of the insertion target part VOB1 in the pull-out direction D10 when the insertion depth of the insertion target part VOB1 has become shallower to a certain extent and the insertion target part VOB1 has transitioned to a state in which it is in contact with the opening periphery PE at one point. The operation control unit 2 stops the movement of the insertion target part based on the result of the simulation.
[0069] After the movement of the insertion target part has stopped, the user can again perform an operation to swing the insertion target part toward the central axis of the hole. When the user performs this operation, the simulator 1 determines the movement direction (swing direction D9, see FIG. 25) of the insertion target part VOB1 for swinging the insertion target part VOB1 toward the central axis CL1 of the hole VOP1 along the virtual guide surface VB11 of the swing regulation part VBS. The simulator 1 moves (swings) the insertion target part VOB1 in the determined movement direction (swing direction D9) (see FIG. 25). Based on the results of the simulation, the operation controller 2 moves (swings) the insertion target part of the actuator along the virtual guide surface VB11 toward the central axis of the hole.
[0070] Thereafter, the user can repeatedly move the insertion target part in the pull-out direction D11 and swing the insertion target part in the swing direction D9. When the user performs this operation, the simulator 1 repeats the same procedures as those shown in FIGS. 23 to 25 based on the operation. Then, at a certain point, the entire tip of the insertion target part VOB1 (for example, the entire circumferential direction of the circular edge) is inserted into the hole VOP1 (see FIG. 26). In the state shown in FIG. 26, the side of the insertion target part VOB1 contacts the opening periphery PE at one point (one first contact position CP1), and a part of the tip of the insertion target part VOB1 contacts the inner circumferential surface of the hole VOP1 at a third contact position CP3. In this state, the user can perform an operation to adjust the posture of the insertion target part within the hole. For example, the user can perform an operation to swing the insertion target portion around the contact position between the tip of the insertion target portion and the inner circumferential surface of the hole so that the center line of the insertion target portion is approximately parallel to the center line of the hole. Based on this operation, the simulator 1 swings the insertion target portion VOB1 around the contact position between the tip of the insertion target portion VOB1 and the inner circumferential surface of the hole VOP1 (contact position CP on the left side in FIG. 26) so that the center line CL2 is approximately parallel to the center line CL1 of the hole VOP1. As a result, the center line CL2 becomes approximately parallel to the center line CL1 of the hole VOP1, allowing the insertion target portion VOB1 to be inserted even deeper (even completely inserted). Based on the result of the determination by the simulator 1, the operation controller 2 swings the insertion target portion so that the center line of the insertion target portion is approximately parallel to the center line of the hole.
[0071] In this embodiment, as described above, a portion of the tip of the insertion target portion VOB1 is inserted into the hole VOP1, and this insertion serves as an opportunity to insert the insertion target portion VOB1 deeper, so the user can easily insert the insertion target portion into the hole even if the difference in diameter between the hole and the insertion target portion is slight. Moreover, by using the above-described guide and restricting portion VBG and swing restricting portion VBS, the insertion target portion is guided into the hole so that it can be easily inserted, making the insertion operation even easier.
[0072] In this embodiment, the simulator 1 is configured to generate a virtual regulating portion VB1 when the distance between the virtual effector VW corresponding to the effector and the virtual destination position VOP1 becomes equal to or less than a predetermined distance (see FIGS. 17 and 22). The simulator 1 is also configured to eliminate the virtual regulating portion VB1 when the distance between the virtual effector VW corresponding to the effector and the virtual destination position VOP1 exceeds a predetermined distance (see FIG. 19). By appropriately generating or eliminating the virtual regulating portion VB1 according to the distance between the virtual effector VW and the virtual destination position VOP1, the virtual regulating portion VB1 does not exist when it is not necessary, and the virtual regulating portion VB1 can be prevented from interfering with the operation of the effector. In other embodiments, the simulator 1 can also appropriately generate or eliminate a virtual regulating portion according to the distance between the virtual effector VW corresponding to the effector and the virtual destination position VOP1. The posture and trajectory of the effector determined by the operation control unit 2 may be stored in a memory unit, and the working device may be caused to operate in semi-automatic mode or automatic mode based on the stored posture and trajectory of the effector.
[0073] Next, another embodiment of the actuation system will be described with reference to FIGS. 27 to 30. In the embodiment shown in FIGS. 27 to 30, the actuating body W (see FIG. 27) is a manipulator WD that applies a predetermined operation to a predetermined work object OB1. In the above-described embodiment (see FIGS. 1 to 26), the actuating body W was described as an integrated part of the manipulator WD and the work object OB1. However, in this embodiment, the actuating body W is configured to position the manipulator WD before grasping the work object OB1, and the actuating body W is composed of only the manipulator WD. In this embodiment, the manipulator WD is configured to grasp the work object OB1, as shown in FIG. 30. In this embodiment, as shown in FIGS. 28 and 29, a virtual manipulator VD corresponding to the manipulator WD and a virtual work object VOB1 corresponding to the work object OB1 are shown in the virtual space VS. The virtual operating body VW corresponding to the operating body W has a main body portion (virtual operating device VD in the example shown in FIG. 28) corresponding to the operating body W (see the operating device WD shown in FIG. 1) and a second virtual regulating portion VB2 provided on at least a part of the main body portion and moving relatively to the first virtual regulating portion VB1. In the example shown in FIG. 28, the main body portion (virtual operating device VD) has an outer shape and size corresponding to the outer shape and size of the operating body W. In the example shown in FIG. 28, the second virtual regulating portion VB2 is provided with a virtual tool portion VD3 corresponding to the tool portion WD3 of the operating device WD (see FIG. 1). Specifically, the second virtual regulating portion VB2 is provided in a portion (virtual finger VD31) corresponding to the finger WD31 of the tool portion WD3. The first virtual regulating portion VB1 is configured to guide the operating body W to a virtual destination position VOP2 corresponding to a predetermined destination position OP2. Specifically, the first virtual regulating portion VB1 is configured to guide the second virtual regulating portion VB2 to a virtual destination position VOP2. The first virtual regulating portion VB1 has a virtual guide surface VB11 configured so that the movement range of the virtual operating body VW narrows as it approaches the virtual destination position VOP2. In this embodiment, the destination position OP2 is a position where the operating body W should be positioned in order to apply a predetermined operation to the work object OB1, and can be set depending on the size, shape, position, etc. of the work object OB1.For example, the position, size, angle, attitude, etc. of the work object OB1 can be measured by the above-mentioned measuring device WD4, and a target position OP2 can be set based on the position information and shape information of the work object OB1. The position of the virtual regulating portion VB1 is set based on a virtual target position VOP2 that is set in advance or determined by judgment by the simulating portion 1. Note that, as long as the first virtual regulating portion VB1 and the second virtual regulating portion VB2 move relative to each other, only one of the first virtual regulating portion VB1 and the second virtual regulating portion VB2 may move (the other may not move), or both the first virtual regulating portion VB1 and the second virtual regulating portion VB2 may move.
[0074] In this embodiment, the first imaginary regulating portion VB1 has a shape similar to that of the first imaginary regulating portion VB1 shown in FIG. 6. However, the shape of the first imaginary regulating portion VB1 is not particularly limited and may be a shape different from that shown in FIG. 6. The first imaginary regulating portion VB1 is determined based on the position of the work object OB1. Specifically, the first imaginary regulating portion VB1 is provided at a position facing the tool portion WD3 when the tool portion WD3 grips the work object OB1. The number of first imaginary regulating portions VB1 is not particularly limited as long as the tool portion WD3 is provided at a position facing the tool portion WD3 when the tool portion WD3 grips the work object OB1. In the example shown in FIG. 28, the number of first imaginary regulating portions VB1 is two, but the number of first imaginary regulating portions VB1 is not limited to two and may be one or more (e.g., three or more), and can be changed appropriately depending on the operation applied to the work object OB1 by the work device WD. Furthermore, the position of the first virtual regulating portion VB1 can be changed as appropriate depending on the operation applied to the work object OB1 by the work device WD. For example, in this embodiment, since the work object OB1 is gripped by the work device WD, the first virtual regulating portion VB1 is provided at positions on both sides of the virtual work object VOB1 in a direction perpendicular to the longitudinal direction of the virtual work object VOB1, as shown in FIG. 28. In this embodiment, the number of first virtual regulating portions VB1 and the number of second virtual regulating portions VB2 are set to be the same. In the example shown in FIG. 28, the number of first virtual regulating portions VB1 and the number of second virtual regulating portions VB2 are each two. In the example shown in FIG. 28, the second virtual regulating portion VB2 is provided at a position corresponding to the virtual finger VD31. By providing the second virtual regulating portion VB2 at a position corresponding to the virtual finger VD31, the position of the finger WD31 when gripping the work object OB1 can be reliably determined. The size of the first imaginary regulating portion VB1 may be substantially the same as or larger than the second imaginary regulating portion VB2. For example, the first imaginary regulating portion VB1 may have substantially the same slope of the sidewall and a larger bottom BO than the second imaginary regulating portion VB2.By having a larger bottom portion BO, the first imaginary restriction portion VB1 has a larger area that can accommodate the second imaginary restriction portion VB2, making it easier for the user to insert the second imaginary restriction portion VB2 into the first imaginary restriction portion VB1.
[0075] The shape of the second imaginary restricting portion VB2 is not particularly limited as long as it can be guided to the destination position OP2 by the first imaginary restricting portion VB1. In this embodiment, the second imaginary restricting portion VB2 has substantially the same shape and size as the first imaginary restricting portion VB1. Since the first imaginary restricting portion VB1 and the second imaginary restricting portion VB2 have substantially the same shape and size, the first imaginary restricting portion VB1 can smoothly guide the second imaginary restricting portion VB2 to the destination position OP2.
[0076] The simulator 1 is configured to determine the positional relationship between the first virtual regulating portion VB1 and the second virtual regulating portion VB2, thereby determining the positional relationship between the virtual operating body VW and the first virtual regulating portion VB1. Specifically, the simulator 1 determines the positional relationship between the inner surface of the first virtual regulating portion VB1 and the outer surface of the second virtual regulating portion VB2, thereby determining the positional relationship between the virtual operating body VW (specifically, the virtual tool portion VD3 of the virtual work device VD) and the first virtual regulating portion VB1. In response to an operation command from the operating device OD, the simulator 1 moves the second virtual regulating portion VB2 to a position where the second virtual regulating portion VB2 and the first virtual regulating portion VB1 coincide with each other while bringing the outer surface of the side wall of the second virtual regulating portion VB2 into contact with the inner surface of the side wall of the first virtual regulating portion VB1 (the virtual guide surface VB11) (see FIG. 29). The second virtual regulating member VB2 is guided along the virtual guide surface VB11, thereby guiding the acting body W to the destination position OP2. By guiding the second virtual regulating member VB2 along the virtual guide surface VB11, the acting body W can be easily and reliably moved to the destination position OP2 even if the user performs a rough operation. Once the acting body W has been guided to the destination position OP2, the simulator 1 causes the virtual tool member VD3 of the virtual working device VD to grasp the virtual work object VOB1. Specifically, the simulator 1 causes the virtual finger VD31 corresponding to the finger WD31 to grasp the virtual work object VOB1. The simulator 1 then lifts up the virtual work object VOB1 (see FIG. 30) and transports the virtual work object VOB1 to the destination location.
[0077] Here, when the number of first virtual regulating portions VB1 and the number of second virtual regulating portions VB2 are each plural (two in the examples shown in FIGS. 28 and 29), assume a state before the first virtual regulating portions VB1 and the second virtual regulating portions VB2 are matched. In this state, there may be cases where the direction D7 connecting one first virtual regulating portion VB1 (for example, the first virtual regulating portion VB1 on the left in FIG. 31) of the plural (for example, two) first virtual regulating portions VB1 and another first virtual regulating portion VB1 (for example, the first virtual regulating portion VB1 on the right in FIG. 31) does not match the direction D8 connecting one second virtual regulating portion VB2 (for example, the second virtual regulating portion VB2 on the left in FIG. 31) of the plural (for example, two) second virtual regulating portions VB2 and another second virtual regulating portion VB2 (for example, the second virtual regulating portion VB2 on the right in FIG. 31) (see FIG. 31). In the example shown in FIG. 31, before the first imaginary regulating portion VB1 and the second imaginary regulating portion VB2 are aligned, the positions of one first imaginary regulating portion VB1 (hereinafter also referred to as one first imaginary regulating portion VB1) and one second imaginary regulating portion VB2 (hereinafter also referred to as one second imaginary regulating portion VB2) are approximately the same when viewed from the vertical direction (direction D3). In contrast, the positions of the other first imaginary regulating portion VB1 (hereinafter also referred to as the other first imaginary regulating portion VB1) and the other second imaginary regulating portion VB2 (hereinafter also referred to as the other second imaginary regulating portion VB2) are shifted from each other when viewed from the vertical direction (direction D3) (they are shifted in the directions D1 and D2). Specifically, for example, the center positions of the other first imaginary regulating portion VB1 and the other second imaginary regulating portion VB2 are shifted from each other when viewed from the direction D3 (only a portion of each of them overlap). In this embodiment, the simulator 1 is configured so that, in the process of inserting one second virtual regulating portion VB2 and the other second virtual regulating portion VB2 into one first virtual regulating portion VB1 and the other first virtual regulating portion VB1, respectively, a rotational moment that rotates the other second virtual regulating portion VB2 around one second virtual regulating portion VB2 acts on the other second virtual regulating portion VB2.When the other second virtual regulating portion VB2 moves along the inclined direction of the virtual guide surface VB11 of the other first virtual regulating portion VB1, a rotational moment is generated in the other second virtual regulating portion VB2 due to the force received from the other first virtual regulating portion VB1. This rotational moment causes the other second virtual regulating portion VB2 to rotate around the one second virtual regulating portion VB2 (see the arrow in FIG. 31). This allows the other second virtual regulating portion VB2 to rotate in a direction that matches the other first virtual regulating portion VB1. This rotation allows the simulator 1 to match the one second virtual regulating portion VB2 and the other second second virtual regulating portion VB2 with the one first virtual regulating portion VB1 and the other first first virtual regulating portion VB1, respectively. The operation controller 2 rotates the operating body W (work object OB1) according to the results of the simulation, and moves the operating body W to the destination position OP2.
[0078] Furthermore, in this embodiment, the position of the first virtual regulating portion VB1 in the virtual space VS is determined by the simulator 1 according to the shape and position of the work object OB1. As a result, the first virtual regulating portion VB1 is generated at an appropriate position that makes it easy to operate the work object OB1 according to the shape and position of the work object OB1. Therefore, by guiding the second virtual regulating portion VB2 by the first virtual regulating portion VB1, the working device WD can operate the work object OB1 at an appropriate position in the real space RS according to the shape and position of the work object OB1. More specifically, in this embodiment, the first virtual regulating portion VB1 is generated for the rod-shaped work object OB1 at the center of the work object OB1 in the longitudinal direction and at a position symmetrical with respect to the axis of the work object OB1. As a result, the rod-shaped work object OB1 can be grasped in a well-balanced position, making it possible to easily operate the work object OB1.
[0079] In another embodiment shown in FIG. 32, an actuation system is configured to guide a task device along a predetermined movement path. In this embodiment, the effecting body is a task device that applies a predetermined operation to a predetermined task object, and the task object is grasped by the task device. In this embodiment, the task device is configured to transport a task object (e.g., a container such as a cup filled with liquid) along a predetermined movement path. In the example shown in FIG. 32, a virtual task device VD corresponding to the task device is grasping a virtual task object VOB1 corresponding to the task object. A virtual task device VW corresponding to the effecting body has a main body portion (the virtual task device VD and the virtual task object VOB1 in the example shown in FIG. 32) corresponding to the outer shape and size of the effecting body, and a second virtual regulating portion VB2 provided on at least a portion of the main body portion. In the example shown in FIG. 32, the second virtual regulating portion VB2 is provided on a virtual tool portion VD3 corresponding to the tool portion WD3 (see FIG. 1) of the task device WD. The first virtual regulating portion VB1 is configured to guide the effecting body to a predetermined destination position. Specifically, the first imaginary regulating portion VB1 is configured to guide the second imaginary regulating portion VB2 to a predetermined destination position. The first imaginary regulating portion VB1 has an imaginary guide surface VB11 along a predetermined movement path to the destination position. The shape of the first imaginary regulating portion VB1 is not particularly limited and can be any shape suited to the purpose of the work tool. In the example shown in FIG. 32, the first imaginary regulating portion VB1 has a shape formed by combining three flat portions VB1a, VB1b, and VB1c into a roughly U-shape.
[0080] The shape of the second virtual regulating portion VB2 is not particularly limited as long as it can be guided to the target position by the first virtual regulating portion VB1. In the example shown in FIG. 32, the second virtual regulating portion VB2 is configured to ensure a predetermined distance between the virtual working device VD and the first virtual regulating portion VB1. Specifically, the second virtual regulating portion VB2 includes three rod-shaped portions VB21 extending in different directions. The three rod-shaped portions VB21 each have a length corresponding to the distance to be ensured between the three planar portions VB1a, VB1b, and VB1c and the virtual working device VD. The lengths of the three rod-shaped portions VB21 may be the same or different. The simulating unit 1 is configured to determine the positional relationship between the first virtual regulating portion VB1 and the second virtual regulating portion VB2, thereby determining the positional relationship between the virtual operating body VW and the first virtual regulating portion VB1. Specifically, the simulator 1 determines the positional relationship between the virtual operating body VW (specifically, the virtual tool member VD3 of the virtual working device VD) and the first virtual operating body VB1, for example, by determining the positional relationship between the first virtual operating body VB1 and the tip of the second virtual operating body VB2. The simulator 1 receives an operation command from the operating device OD and moves the second virtual operating body VB2 and the virtual tool member VD3 to a target position while bringing the tip of the second virtual operating body VB2 into contact with the inner surface (virtual guide surface VB11) of the first virtual operating body VB1 (see FIG. 32). The second virtual operating body VB2 is guided by the virtual guide surface VB11, so that the operating body is guided along a predetermined movement path to the target position. This allows the work object (e.g., a container such as a cup filled with liquid) to be transported along the predetermined movement path to the target position.
[0081] In the modified example shown in FIG. 33, the first imaginary regulating portion VB1 is linear, and the second imaginary regulating portion VB2 is ring-shaped. Furthermore, the second imaginary regulating portion VB2 is configured to be movable along the first imaginary regulating portion VB1 with the first imaginary regulating portion VB1 inserted inside. The shape of the first imaginary regulating portion VB1 is not particularly limited, and may be, for example, linear or curved (see FIG. 33). When the first imaginary regulating portion VB1 is linear, the second imaginary regulating portion VB2 can be moved to the target position via the shortest route. When the first imaginary regulating portion VB1 is curved, the second imaginary regulating portion VB2 can be moved to the target position via a route that avoids obstacles, for example.
[0082] In another embodiment shown in FIG. 33, the actuation system includes a first virtual regulating portion VB1 configured linearly and a second virtual regulating portion VB2 configured ring-shaped in a virtual space VS. The second virtual regulating portion VB2 is configured to be movable along the first virtual regulating portion VB1 with the first virtual regulating portion VB1 inserted therethrough, thereby guiding the working device WD along a predetermined path along the extension direction of the linear first virtual regulating portion VB1. In this embodiment, the second virtual regulating portion VB2 is provided on a virtual tool portion VD3 corresponding to the tool portion WD3 (see FIG. 1) of the working device WD. This configuration allows the virtual tool portion VD3 to move along a linear movement path. In the example shown in FIG. 33, the second virtual regulating portion VB2 has a ring-shaped portion VB22 and a connecting portion VB23. The ring-shaped portion VB22 is provided on the virtual tool portion VD3 via the connecting portion VB23. With this configuration, the virtual tool part VD3 can be moved while maintaining a constant distance between the virtual tool part VD3 and the first virtual regulating part VB1. The first virtual regulating part VB1 may be linear, curved, or bent. When the first virtual regulating part VB1 has a curved or bent shape, the virtual tool part VD3 can be moved along a complex movement path.
[0083] In the example shown in FIG. 33, the cross-sectional shape of the first imaginary regulating portion VB1 is a shape (circular) that allows the first imaginary regulating portion VB1 to rotate in the axial direction relative to the second imaginary regulating portion VB2, but is not limited to this. In the modified example shown in FIG. 34, the cross-sectional shape of the first imaginary regulating portion VB1 has a shape that prevents the first imaginary regulating portion VB1 from rotating in the axial direction relative to the second imaginary regulating portion VB2. Specifically, the cross-sectional shape of the first imaginary regulating portion VB1 is an angular shape (a square shape in the example shown in FIG. 34). Furthermore, the cross-sectional shape of the second imaginary regulating portion VB2 is formed in a square cylindrical shape (a square cylindrical shape in the example shown in FIG. 34) having a cross-sectional shape that follows the outer periphery of the first imaginary regulating portion VB1. By configuring the first imaginary regulating portion VB1 so that it cannot rotate in the axial direction relative to the second imaginary regulating portion VB2, the posture of the imaginary operating body VW is stabilized. Therefore, for example, when transporting a container such as a cup filled with liquid, the container can be transported in a stable position so that the liquid does not spill out of the container during transport.
[0084] Furthermore, the second imaginary regulating portion VB2 may be in point contact with the first imaginary regulating portion VB1 (see FIG. 33), but is not limited thereto. The second imaginary regulating portion VB2 may be in line contact or surface contact with the first imaginary regulating portion VB1 (see FIG. 34), thereby reducing the degree of freedom of its orientation relative to the first imaginary regulating portion VB1. By reducing the degree of freedom of the orientation of the second imaginary regulating portion VB2 relative to the first imaginary regulating portion VB1, the orientation of the second imaginary regulating portion VB2 is stabilized. Therefore, the orientation of the imaginary operating body can be stabilized. Specifically, in the example shown in FIG. 33, the linear first imaginary regulating portion VB1 and the ring-shaped portion VB22 of the second imaginary regulating portion VB2 are in point contact. Therefore, the ring-shaped portion VB22 can move along the length of the first imaginary regulating portion VB1 and can rotate around the first imaginary regulating portion VB1. Therefore, in the example shown in FIG. 33, the second imaginary regulating portion VB2 has a high degree of freedom in its orientation. In contrast, in the example shown in FIG. 34, the linear first imaginary regulating portion VB1 having a rectangular cross section and the rectangular cylindrical second imaginary regulating portion VB2 are in surface contact on four surfaces. Therefore, the second imaginary regulating portion VB2 can move along the length of the first imaginary regulating portion VB1 but cannot rotate around the first imaginary regulating portion VB1. Therefore, in the example shown in FIG. 34, the second imaginary regulating portion VB2 has a low degree of freedom in its orientation.
[0085] In another embodiment shown in FIG. 35, the virtual regulating portion VB1 is formed in a plate shape with a predetermined thickness. The actuation system of this embodiment can be used when drawing letters or pictures on a sheet-like work object using an actuating body (working device WD, for example, a writing implement such as a brush). The shape of the actuating body in this embodiment is not particularly limited as long as it can draw letters or pictures on the work object. In this embodiment, the actuating body is configured in a rod shape. The virtual regulating portion VB1 is configured so that a virtual tool portion VD3 (hereinafter also referred to as a rod-shaped portion VD3), which is a part of the virtual actuating body VW, can enter the virtual regulating portion VB1 from its tip in the thickness direction. In the example shown in FIG. 35, the virtual tool portion VD3 is configured in a rod shape. In this embodiment, the tip of the rod-shaped actuating body is flexibly deformable in the real space RS, but in the virtual space VS, the tip of the rod-shaped virtual actuating body VW is configured to enter the virtual regulating portion VB1 without deforming. FIG. 35 shows three rod-shaped portions VD3 with different penetration depths into the virtual regulating portion VB1. The rod-shaped portion VD3 is a portion, like a writing implement (e.g., a brush), whose tip is pressed against the surface of a predetermined work object (e.g., a sheet-like member such as paper; provided on the surface of the imaginary regulating portion VB1 (the upper surface in FIG. 35)), and the thickness of the line drawn on the surface of the work object can change depending on the pressure of the pressure. The rod-shaped portions VD3 on the left, center, and right sides in FIG. 35 have progressively greater penetration depths in this order. The rod-shaped portion VD3 is configured to gradually become thicker from the tip side to the base end side (a cone-shaped portion in the example shown in FIG. 35). As the depth of the rod-shaped portion VD3 penetrating the imaginary regulating portion VB1 from the tip side to the base end side increases, the existence region RE of the rod-shaped portion VD3 on the surface of the imaginary regulating portion VB1 (the region where the surface of the imaginary regulating portion VB1 and the rod-shaped portion VD3 intersect; the elliptical region in FIG. 35) becomes larger (see FIG. 35). As the rod-shaped portion VD3 moves along the surface of the work object VOB1, the existence region RE can trace a trajectory TR corresponding to the characters, etc. The top surface of the virtual work object corresponding to the work object, such as paper, is set to coincide with the top surface of the virtual regulating portion VB1 or to a position slightly shifted in the thickness direction.In the real space RS, the thickness of the lines drawn on the paper increases as the pressure of a writing implement such as a brush against the paper increases. Therefore, by using the size of the existence region RE described above, a simulation is performed to control the penetration depth of the rod-shaped portion VD3 within a predetermined range, and based on the results of the simulation, the movement control unit 2 controls the movement of the operating body (for example, a writing implement), thereby adjusting the thickness of the lines drawn on the paper or the like.
[0086] The embodiment shown in FIG. 36 enables the application of a predetermined pressure to a work object (e.g., an object to which a coating such as putty is to be applied) by determining the positional relationship between the virtual work object VW and the virtual work object VOB1 when pressing an operating body (e.g., a tool (working device) such as a spatula) against the work object. In this embodiment, the virtual work device VD corresponding to the working device has a virtual tool part VD3 corresponding to the tool part (e.g., a spatula). The virtual restraining part VB1 is provided along the surface of the virtual work object VOB1 corresponding to the work object to be worked on by the operating body, but is located inside the virtual work object VOB1 (inside the surface of the virtual work object VOB1). The depth at which the virtual work object VOB1 is located is set to a depth corresponding to the pressure with which the tool part is pressed against the work object. The operating body (e.g., a spatula) bends a predetermined amount when a predetermined pressure is applied, but the virtual operating body VW is configured not to bend. When the tip of the virtual operating body VW contacts the virtual regulating portion VB1 located inside the virtual work object VOB1, the operating body in the real space RS contacts the work object with a predetermined pressure. This makes it possible to control the pressure with which the operating body is pressed against the work object using the virtual regulating portion VB1 in the virtual space VS. To increase the pressure with which the tool portion presses against the work object VOB1, simply increase the depth at which the virtual work object VOB1 is located. The simulator 1 operates the virtual operating body VW (specifically, the virtual work device VD) so that the virtual operating body VW contacts the virtual regulating portion VB1. The operation controller 2 enables work to be performed while applying pressure to the surface of the work object OB1 by operating the virtual operating body VW. When the virtual operating body VW contacts the virtual regulating portion VB1 inside the virtual work object VOB1, the tool portion, such as a spatula, bends in the real space RS due to the pressing pressure. Therefore, the putty can be applied to the workpiece with an appropriate pressure, and damage to the spatula and the workpiece can be prevented. In application work using a spatula, the spatula and the workpiece are in line contact, but this is not limited to this. For example, if the tool part is a grinder, the same principle can be applied to polishing work in which the grinder makes surface contact with the workpiece (see Figure 37).
[0087] The embodiment shown in FIG. 38 suppresses contact between multiple actuating bodies (e.g., multiple work devices WD) when work is being performed by these bodies. The simulator 1 is configured to provide virtual regulating portions VB1 between multiple virtual actuating bodies VW corresponding to the multiple actuating bodies when the distance between the multiple actuating bodies becomes equal to or less than a predetermined distance. Specifically, when the distance between the multiple actuating bodies (e.g., multiple work devices) becomes equal to or less than a predetermined distance (a distance at which mutual interference may occur), the simulator 1 is configured to provide virtual regulating portions VB1 between multiple virtual work devices VD corresponding to the multiple actuating bodies (see FIG. 38). The virtual regulating portions VB1 are arranged to separate the multiple actuating bodies. Specifically, the virtual regulating portions VB1 are arranged to separate the multiple virtual work devices VD corresponding to the multiple actuating bodies (see FIG. 38). The shape and size of the virtual regulating portions VB1 are not particularly limited as long as they can prevent interference between the actuating bodies by separating the multiple actuating bodies. In the example shown in FIG. 38, the virtual regulating portion VB1 is configured in a plate shape (e.g., a flat plate shape), but it may also be configured in a planar shape (e.g., a flat or curved surface shape). When the virtual working device VD comes into contact with the virtual regulating portion VB1, the simulator 1 prevents the virtual working device VD from moving beyond the virtual regulating portion VB1. This prevents interference between the virtual working devices VD. The simulator 1 may also be configured to eliminate the virtual regulating portion VB1 when the distance between multiple acting bodies exceeds a predetermined distance (see FIG. 39). Specifically, the simulator 1 eliminates the virtual regulating portion VB1 when the distance between multiple virtual acting bodies VW corresponding to multiple acting bodies exceeds a predetermined distance (a distance at which mutual interference is unlikely to occur). This configuration prevents interference between the acting bodies and increases the degree of freedom in the work.
[0088] In another embodiment shown in FIGS. 40 to 43, a first virtual regulating portion VB1 is provided to individually surround a portion of one of the multiple acting bodies (see FIG. 40). Specifically, the first virtual regulating portion VB1 is provided to individually surround a virtual tool portion VD3 corresponding to a portion (e.g., a tool portion) of one of the multiple acting bodies (e.g., a working device). Furthermore, a second virtual regulating portion VB2 is provided to individually surround a portion of another of the multiple acting bodies (see FIG. 40). Specifically, the second virtual regulating portion VB2 is provided to individually surround a virtual tool portion VD3 corresponding to a portion (e.g., a tool portion) of another of the multiple acting bodies (e.g., a working device). The simulator 1 simulates the positional relationship between the first virtual regulating portion VB1 and the second virtual regulating portion VB2. The operation controller 2 is configured to prevent the distance between the multiple acting bodies from becoming equal to or smaller than a predetermined distance based on the simulated positional relationship. Specifically, the simulator 1 is configured to prevent the distance between the virtual work devices VD corresponding to the multiple operating bodies from becoming equal to or smaller than the distance at which mutual interference may occur, based on the simulated positional relationships. For example, when the distance between the multiple virtual operating bodies (virtual work devices VD) becomes a predetermined distance, the simulator 1 temporarily stops the operation of both of them (see FIG. 41). With this configuration, it is possible to prevent interference between the multiple operating bodies.
[0089] It is preferable that the simulator 1 is configured to change the size and / or shape of at least one of the first virtual regulating portion VB1 and the second virtual regulating portion VB2 depending on the positional relationship between the first virtual regulating portion VB1 and the second virtual regulating portion VB2 (see FIG. 42). In the example shown in FIG. 42, the simulator 1 is configured to reduce the size of at least one of the first virtual regulating portion VB1 and the second virtual regulating portion VB2 when the first virtual regulating portion VB1 and the second virtual regulating portion VB2 approach each other and the distance between the first virtual regulating portion VB1 and the second virtual regulating portion VB2 becomes a predetermined distance. In the example shown in FIG. 42 , the simulator 1 is configured to narrow the shape of at least one of the first virtual regulating portion VB1 and the second virtual regulating portion VB2 when the first virtual regulating portion VB1 and the second virtual regulating portion VB2 approach each other and the distance between the first virtual regulating portion VB1 and the second virtual regulating portion VB2 reaches a predetermined distance. Specifically, the simulator 1 is configured to reduce the size of at least one of the first virtual regulating portion VB1 and the second virtual regulating portion VB2 so that work can be performed in order starting with the actuating body with the highest work priority. This configuration allows work to be performed in order starting with the actuating body with the highest work priority. For example, in the example shown in FIG. 42 , by reducing the size of the first virtual regulating portion VB1 and the second virtual regulating portion VB2, the left virtual actuating portion VW can perform work first. The simulator 1 causes the virtual actuating portion VW that has completed work to retreat from the work position. Then, when the distance between the two virtual effectors VW becomes large enough that there is no possibility of interference, the simulator 1 eliminates the first virtual regulating portion VB1 and the second virtual regulating portion VB2 (see FIG. 43).
[0090] The simulator 1 may be configured to increase the size of at least one of the first virtual regulating portion VB1 and the second virtual regulating portion VB2 when the first virtual regulating portion VB1 and the second virtual regulating portion VB2 approach each other and the distance between the first virtual regulating portion VB1 and the second virtual regulating portion VB2 reaches a predetermined distance. In this case, interference between multiple actuating bodies can be more reliably prevented. The simulator 1 may be configured to change the shape of at least one of the first virtual regulating portion VB1 and the second virtual regulating portion VB2 to an arbitrary shape that makes it easier for the actuating body to perform work when the first virtual regulating portion VB1 and the second virtual regulating portion VB2 approach each other and the distance between the first virtual regulating portion VB1 and the second virtual regulating portion VB2 reaches a predetermined distance. In addition, when changing the size and / or shape of at least one of the first virtual regulating portion VB1 and the second virtual regulating portion VB2, the simulator 1 may be configured to eliminate the virtual regulating portion whose size and / or shape is to be changed, and then generate a virtual regulating portion whose size and / or shape has been changed.
[0091] In the embodiment shown in FIGS. 44 to 46, the operating body is a work device that applies a predetermined operation to a moving work object, allowing the work device to follow the moving work object. In this embodiment, as an example, the operating body is placed on a transport device such as a conveyor and follows the moving work object to perform a predetermined task. In this embodiment, the virtual regulating part VB1 is determined based on the position of the moving work object. The virtual regulating part VB1 may be generated so as to overlap with a part of the moving virtual work object VOB1, or may be generated at a position slightly separated from the moving virtual work object VOB1. The virtual regulating part VB1 is generated so as to maintain a constant distance from the moving virtual work object VOB1. Therefore, the virtual regulating part VB1 is configured to move together with the virtual work object VOB1 within the virtual space SV (see FIGS. 45 and 46). In this case, the working device is moved toward the moving work object, and when the virtual working device VD hits the moving virtual restriction portion VB1 in the virtual space VS, the virtual working device VD stops at the position of the moving virtual work object VOB1. This allows the working device in the real space RS to be stopped at the part of the moving work object by the operation control unit 2 and perform a predetermined task on the moving work object (see Figures 44 to 46).
[0092] In the embodiment shown in FIG. 47, the virtual restriction portion VB1 is configured to restrict the movement of the acting body within the inner range of the virtual restriction portion VB1. The shape of the virtual restriction portion VB1 is not particularly limited as long as it can restrict the movement of the acting body within the inner range of the virtual restriction portion VB1, and it may be, for example, frame-shaped or container-shaped. In the example shown in FIG. 47, the virtual restriction portion VB1 is configured in a frame shape. For example, when the virtual acting body VW corresponding to the acting body hits the inner circumferential surface of the frame-shaped virtual restriction portion VB1, the simulator 1 corrects the movement direction along the virtual restriction portion VB1. This allows the movement of the acting body to be restricted within the inner range of the virtual restriction portion VB1. [Explanation of symbols]
[0093] 1. Simulation section 2. Operation control section 3 Operation input section 4 Output section CL1 Center line of virtual target position (hole) CL2 Center line of virtual work object CP contact position CP1 First contact position CP2 Second contact position CP3 Third contact point OB1 Workpiece OD operating device OP1 Target position P1 Collision point PE opening perimeter RS Real Space VB1 First virtual control unit VB11 Virtual guideway VB1a, VB1b, VB1c flat section VB2 Second virtual regulation unit VB21 Rod part VB22 ring-shaped part VB23 connection part VBG Guidance and Regulation Section VBS swing control part VD Virtual Work Device VD3 Virtual Tools VD31 Virtual Finger VOB1 Virtual Work Object VOP1 Virtual destination position VS Virtual Space VW Virtual Actuator W Working body WS operating system WD Work Equipment WD1 base WD2 arm part WD3 Tool Section WD31 Finger WD4 measuring device WD41 Camera θ Tilt angle
Claims
1. a simulating unit that simulates, in a virtual space, a positional relationship between a virtual operating body corresponding to the operating body that performs a predetermined action in response to an input operation from a user via an operating device, and a first virtual restricting unit that is virtually provided to restrict movement of the virtual operating body; a motion control unit that controls the motion of the effector in accordance with the positional relationship simulated by the simulation unit; An actuation system comprising: when an input operation is performed on the operating body, the simulator operates the virtual operating body in the virtual space in accordance with the input operation, and determines a positional relationship between the virtual operating body and the first virtual restricting portion at predetermined time intervals; the operation control unit is configured to operate the operating body in parallel with the operation command based on the input operation, based on a result of the determination by the simulating unit; the simulator determines whether a distance between the virtual actuator and the first virtual restrictor is within a predetermined range; When it is determined that the distance between the virtual operating body and the first virtual regulating portion is within the predetermined range, and when the moving direction of the virtual operating body corresponding to the input operation includes a component in a direction toward the surface of the first virtual regulating portion and a component in a direction along the surface of the first virtual regulating portion, the simulating portion corrects the moving direction of the virtual operating body corresponding to the input operation based on the shape of the first virtual regulating portion, thereby (i) determining a movement direction of the virtual operating body for moving the virtual operating body along the surface of the first virtual restriction portion, and the operation control unit is configured to move the operating body in the determined movement direction, or (ii) the virtual operating body is stopped against a surface of the first virtual restricting portion, and the motion control unit is configured to stop the operating body against the first virtual restricting portion, or (iii) An actuation system configured to repel the virtual actuating body against a surface of the first virtual restriction portion, and the motion control portion configured to repel the actuating body against the first virtual restriction portion.
2. the simulating unit determines whether the virtual operating body and the first virtual restricting portion are in contact with each other based on a distance between the virtual operating body and the first virtual restricting portion; 2. The actuation system according to claim 1, wherein when it is determined that the virtual actuating body and the first virtual regulating portion are in contact with each other, the simulating portion is configured to correct the movement direction of the virtual actuating body corresponding to the input operation based on the shape of the first virtual regulating portion.
3. the first virtual restriction portion has a virtual guide surface configured to guide the operating body to a predetermined target position, 2. The actuation system according to claim 1, wherein the first virtual regulating portion is configured to allow the virtual operating body to pass through the virtual guide surface from an opposite side to the virtual guide surface to the virtual guide surface side, and is configured to prevent the virtual operating body from passing through the virtual guide surface from the virtual guide surface side to the opposite side to the virtual guide surface.
4. the first virtual restriction portion is configured to guide the operating body to a predetermined target position, the simulating unit is configured to generate the first virtual restricting portion when a distance between the operating body and the target position becomes equal to or less than a predetermined distance; The actuation system according to claim 1 , wherein the simulator is configured to eliminate the first virtual restrictor when the distance between the actuating body and the target position exceeds the predetermined distance.
5. the first virtual restriction portion is configured to guide the operating body to a hole portion that is a predetermined destination position, The first virtual restriction portion is 2. The actuation system according to claim 1, further comprising a guide and restriction portion that guides the insertion target portion so that a portion of a tip of the insertion target portion of the virtual actuation body is inserted into the hole portion and a center line of the insertion target portion is inclined with respect to a depth direction of the hole portion.
6. The first virtual restriction portion is a swing regulating portion that regulates a swing direction of the insertion target portion about a contact position with the periphery of the opening portion when the insertion target portion, with a part of the tip inserted into the hole portion, is in contact with the periphery of the opening portion of the hole, The actuation system according to claim 5 , wherein the swinging restriction portion restricts the swinging direction so that an inclination angle of a center line of the insertion target portion relative to a depth direction of the hole portion becomes small.
7. the virtual operating body has a main body portion corresponding to the operating body, and a second virtual restricting portion provided on at least a part of the main body portion and moving relatively to the first virtual restricting portion, The actuation system of claim 1, wherein the simulator is configured to determine the positional relationship between the virtual actuating body and the first virtual regulating portion by determining the positional relationship between the first virtual regulating portion and the second virtual regulating portion.
8. the first virtual restriction portion is configured to guide the operating body to a predetermined target position, the first virtual restriction portion has a virtual guide surface configured so that the movement range of the virtual operating body becomes narrower as the first virtual restriction portion approaches the target position, The actuation system according to claim 7 , wherein the second imaginary restriction portion is guided by the imaginary guide surface, thereby guiding the actuation body to the target position.
9. the first imaginary restriction portion has a predetermined thickness, and the first imaginary restriction portion is configured so that a part of the imaginary operating body can enter from a tip end thereof in a thickness direction of the first imaginary restriction portion, The part is configured to gradually become thicker from the distal end side toward the proximal end side, The actuation system of claim 1, wherein the area of the portion on the surface of the first imaginary restricting portion increases as the depth of the portion entering the first imaginary restricting portion from the tip side to the base side increases.
10. the actuating body is a work device that applies a predetermined operation to a predetermined work object, the first virtual restriction portion is disposed inside the work object, the simulating unit operates the virtual operating body so that the virtual operating body comes into contact with the first virtual restricting portion; The actuation system according to claim 1 , wherein the action control unit enables the virtual actuation body to perform work while applying pressure to a surface of the work object by the action of the virtual actuation body.
11. The actuation system of claim 7, wherein the simulator is configured to change the size and / or shape of at least one of the first virtual regulating portion and the second virtual regulating portion depending on the positional relationship between the first virtual regulating portion and the second virtual regulating portion.
12. the actuating body is a work device that applies a predetermined operation to a moving work target, the first virtual regulating portion is determined based on the position of the moving work object and is configured to move together with the work object in the virtual space. The actuation system of claim 1 .
13. The actuation system according to claim 1 , wherein the first virtual restriction portion is configured to restrict movement of the actuating body within an inner range of the first virtual restriction portion.
Citation Information
Patent Citations
Master-slave type robot arm device and arm positioning / guiding method
JP1996025254A
Remote operation support device for robot
JP1998264065A
Robot device, orbit simulation device for articulated robot and orbit creation method
JP2014065098A
Work support system and work support method of remote control robot
JP2020163511A
Method and device for preventing interfernece between robots
JP1996036410A