Control systems, control methods, and computer programs

The control system adjusts robot posture and position based on acquired information to manage speed changes, addressing the challenge of balancing high-speed operations with contact risks, ensuring efficient and safe robot interactions.

JP7897065B2Active Publication Date: 2026-07-29NIPPON STEEL & SUMIKIN ENGINEERING CO LTD
View PDF 6 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
NIPPON STEEL & SUMIKIN ENGINEERING CO LTD
Filing Date
2022-07-13
Publication Date
2026-07-29

AI Technical Summary

Technical Problem

Existing robot control systems face challenges in balancing high-speed operations with the risk of damaging the working environment or work object due to unexpected contact, leading to reduced efficiency when speed limits are imposed to prevent damage.

Method used

A control system that adjusts the robot's posture, position, and orientation based on acquired information such as posture, position, distance, angle, and reaction force to manage speed changes, reducing impact and excessive loads by tracing arcs or slowing down when necessary.

Benefits of technology

The system effectively reduces impact and excessive loads by dynamically controlling the robot's speed and movement, allowing high-speed operations without damaging the environment or work object, thus maintaining efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007897065000001
    Figure 0007897065000001
  • Figure 0007897065000002
    Figure 0007897065000002
  • Figure 0007897065000003
    Figure 0007897065000003
Patent Text Reader

Abstract

To provide a control system, a control method, and a computer program capable of restricting the speed of a robot according to the action.SOLUTION: A control system controls a robot working on an object. The control system comprises: a changing part which changes a posture of the robot; a posture information acquisition part which acquires posture information indicating the posture of the robot; a posture limit value acquisition part which acquires a limit value of the posture changed by the changing part; and an output part which outputs a speed at which the posture of the robot is changed by the changing part on the basis of predetermined information. The predetermined information includes the posture information acquired by the posture information acquisition part and the limit value acquired by the posture limit value acquisition part.SELECTED DRAWING: Figure 3
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a control system, a control method, and a computer program.

Background Art

[0002] For the purpose of improving human safety and work efficiency, technological development has been carried out to replace human work with robots. As a method of replacing work with a robot, a method of causing the robot to perform work by a human remotely operating the robot or a method of automatically operating the robot can be considered.

[0003] However, in both the method of causing the robot to perform work by a human remotely operating the robot and the method of automatically operating the robot, there is a risk that the robot may unexpectedly come into contact with the working environment around the robot or the work object. If the robot unexpectedly comes into contact with the working environment or the work object, there is a risk of damaging the working environment or the work object. As a cause of damaging the working environment or the work object, there are an impact load generated by contact in a state where the robot is operating at an unnecessarily high speed and an excessive load applied due to not stopping even after contact. It is required to work within a range that does not damage the object by setting limits on the speed and load of the robot.

[0004] Regarding a technique for solving the problem that the robot damages the working environment or the work object, a technique is known that aims to prevent contact between the robot and the environment and between robots, calculates the positional relationship of each object in real time before the objects come into contact, and stops at an optimal position before contact (see, for example, Patent Document 1). Furthermore, when gripping and manipulating an object using an end effector such as a hand, a technique is known that limits the velocity toward the interface according to the distance between the object and the interface, and sets the velocity of the end effector to 0 at the interface, thereby preventing interference with the object and chattering at the interface (see, for example, Patent Document 2). [Prior art documents] [Patent Documents]

[0005] [Patent Document 1] Japanese Patent Publication No. 2004-1217 [Patent Document 2] Patent No. 5869545 [Overview of the project] [Problems that the invention aims to solve]

[0006] In operations that require contact with the workpiece and application of a load, the load must be applied to the workpiece after contact. Therefore, if a speed limit is imposed to stop at the contact interface before or after contact, the desired operation cannot be performed. On the other hand, maintaining high work efficiency requires robots to operate at high speeds. However, if a speed limit is imposed, the robot will have to operate at a reduced speed due to the limit, thus reducing work efficiency.

[0007] The object of the present invention is to provide a control system, control method, and computer program that can limit the speed of a robot according to its operation. [Means for solving the problem]

[0008] (1) A control system according to one aspect of the present invention is a control system for controlling a robot that performs work on an object, comprising: a modification unit for changing the posture of the robot; a posture information acquisition unit for acquiring posture information indicating the posture of the robot; a posture limit value acquisition unit for acquiring a limit value of the posture changed by the modification unit; and an output unit for outputting the speed at which the posture of the robot is changed by the modification unit based on predetermined information, wherein the predetermined information includes the posture information acquired by the posture information acquisition unit and the limit value acquired by the posture limit value acquisition unit.

[0009] According to this invention, the control system changes the posture of the robot, acquires posture information indicating the posture of the robot, acquires the limit value of the changed posture of the robot, and outputs the speed at which the posture of the robot is changed based on predetermined information. The predetermined information includes the acquired posture information and the limit value. By configuring it in this way, the control system can output the speed at which the robot's posture changes, based on posture information and limit values ​​included in predetermined information. Therefore, the robot's posture can be changed based on the outputted speed at which the robot's posture changes. This reduces impact loads caused by contact while the robot is moving at an unnecessarily high speed, and also reduces excessive loads caused by the robot not stopping after contact.

[0010] (2) A control system according to one aspect of the present invention is the control system according to (1) above, wherein the modification unit changes the posture such that a predetermined point of the robot traces an arc centered on the center point, and the predetermined information includes center point position information relating to the position of the center point.

[0011] In the control system, the modification unit changes the robot's posture so that a predetermined point on the robot traces an arc centered on the central point. The predetermined information includes center point position information regarding the position of the central point. By configuring it in this way, the control system can output the speed at which the robot's posture is changed based on the center point position information related to the position of the center point included in the predetermined information. Therefore, based on the speed at which the robot's posture is changed, the robot's posture can be changed so that a predetermined point of the robot traces an arc centered on the center point.

[0012] (3) A control system according to one aspect of the present invention is the control system described in (2) above, wherein the center point position information is information indicating whether or not the center point is located on the side of the object from the tip of the robot.

[0013] Center point position information indicates whether or not the center point is located on the side of the object relative to the robot's tip. By configuring it in this way, the control system can output the speed at which the robot's posture changes based on information indicating whether or not the center point, which is included in the predetermined information, is located on the side of the object relative to the robot's tip. Based on the output speed at which the robot's posture changes, the robot's posture can be changed so that a predetermined point on the robot traces an arc centered on the center point.

[0014] (4) A control system according to one aspect of the present invention is a control system according to any one of the above items (1) to (3), further comprising a position information acquisition unit that acquires position information indicating the position of the robot, wherein the modification unit changes the position of the robot, and the output unit outputs the speed at which the position is changed by the modification unit based on predetermined information, and the predetermined information includes the position information acquired by the position information acquisition unit.

[0015] The control system further includes a position information acquisition unit that acquires position information indicating the robot's position. A modification unit changes the robot's position, and an output unit outputs the speed at which the position is changed by the modification unit, based on predetermined information. The predetermined information includes the position information acquired by the position information acquisition unit. By configuring it in this way, the control system can output the speed at which the robot's position changes based on the position information included in the predetermined information, and therefore the robot's position can be changed based on the outputted speed at which the robot's position changes.

[0016] (5) A control system according to one aspect of the present invention is the control system described in (4) above, wherein the speed at which the output unit outputs the speed at which the position is changed by the modification unit becomes slower when the position indicated by the position information acquired by the position information acquisition unit moves out of a predetermined range including the object.

[0017] In the control system, the output unit outputs the speed at which the position changed by the modification unit becomes slower when the position indicated by the position information acquired by the position information acquisition unit moves out of a predetermined range that includes an object, compared to when it does not move out of the predetermined range. By configuring it in this way, the control system can control the speed at which the robot's position changes to a speed that slows down when the position indicated by the position information acquired by the position information acquisition unit moves outside a predetermined range that includes an object. Therefore, the robot's position can be changed based on the output speed at which the robot's position changes. This reduces the impact load caused by contact while the robot is moving at an unnecessarily high speed, and also reduces the excessive load applied by not stopping after contact.

[0018] (6) A control system according to one aspect of the present invention is a control system according to any one of (1) to (5) above, further comprising a distance information acquisition unit that acquires distance information indicating the distance from the object to the robot, wherein the modification unit changes the position of the robot, and the output unit outputs the speed at which the position is changed by the modification unit, based on predetermined information, and the predetermined information includes the distance information acquired by the distance information acquisition unit.

[0019] The control system further includes a distance information acquisition unit that acquires distance information indicating the distance from an object to the robot. The changing unit changes the position of the robot, and the output unit outputs, based on predetermined information, the speed at which the position is changed by the changing unit, and the predetermined information includes the distance information acquired by the distance information acquisition unit. By configuring it in this way, the control system can output the speed at which the position of the robot is changed based on the distance information indicating the distance from the object to the robot included in the predetermined information. Therefore, the position of the robot can be changed based on the output speed at which the position of the robot is changed.

[0020] (7) The control system according to one aspect of the present invention is the control system described in (6) above, and the speed at which the position is changed by the changing unit and output by the output unit becomes slower when the distance indicated by the distance information acquired by the distance information acquisition unit is less than a predetermined distance.

[0021] In the control system, when the distance indicated by the distance information acquired by the distance information acquisition unit is less than a predetermined distance, the output unit outputs a speed that is slower compared to when the distance does not fall below the predetermined distance, which is the speed at which the position changed by the changing unit. By configuring it in this way, the control system can output a speed at which the position of the robot is changed to be slower when the distance indicated by the distance information acquired by the distance information acquisition unit is less than a predetermined distance. Therefore, the position of the robot can be changed based on the output speed at which the position of the robot is changed. For this reason, it is possible to reduce the impact load generated by contact when the robot is operating at a speed higher than necessary and the excessive load applied due to not stopping even after contact.

[0022] (8) The control system according to one aspect of the present invention is the control system described in (2) above, further comprising an angle information acquisition unit that acquires angle information indicating the angles of the joints of the robot, the changing unit changes the position and the posture of the robot, the output unit outputs, based on the predetermined information, the speed at which the position and the posture are changed by the changing unit, and the predetermined information includes the angle information acquired by the angle information acquisition unit.

[0023] The control system includes an angle information acquisition unit that acquires angle information indicating the angles of the joints of the robot. The changing unit changes the position and the posture of the robot. The output unit outputs, based on the predetermined information, the speed at which the position and the posture are changed by the changing unit. The predetermined information includes the angle information acquired by the angle information acquisition unit. By configuring in this way, the control system can output, based on the angle information included in the predetermined information, the speed at which the position and the posture of the robot are changed, so that the position and the posture of the robot can be changed based on the output speed at which the position and the posture of the robot are changed.

[0024] (9) The control system according to one aspect of the present invention is the control system described in (8) above, wherein the speed output by the output unit at which the position and the posture are changed by the changing unit becomes slower when the angle indicated by the angle information acquired by the angle information acquisition unit approaches the singular point of the joint.

[0025] In the control system, the output unit outputs a speed that becomes slower when the angle indicated by the angle information acquired by the angle information acquisition unit approaches the singular point of the joint, as compared with the case where the angle is far from the singular point of the joint, for the speed of the position and the posture changed by the changing unit. By configuring it in this way, the control system can output the rate at which the robot's position and orientation change, specifically the rate at which the angle indicated by the angle information acquired by the angle information acquisition unit slows down as it approaches a singularity at a joint. Therefore, the robot's position can be changed based on the outputted rate at which the robot's position and orientation change. This makes it less likely for the joint to become a singularity. When a joint approaches a singularity, the robot's joint movement speed increases rapidly (due to mathematical properties), and this can be suppressed.

[0026] (10) A control system according to one aspect of the present invention is the control system described in (2) above, further comprising a movable part distance information acquisition unit that acquires movable part distance information indicating the distance between a plurality of movable parts constituting the robot, wherein the modification unit changes the position and orientation of the robot, and the output unit outputs the speed at which the position and orientation are changed by the modification unit based on predetermined information, the predetermined information includes the movable part distance information acquired by the movable part distance information acquisition unit.

[0027] The control system includes a movable part distance information acquisition unit that acquires movable part distance information indicating the distance between multiple movable parts that make up the robot. The modification unit changes the position and orientation of the robot. The output unit outputs the speed at which the position and orientation are changed by the modification unit, based on predetermined information. The predetermined information includes the movable part distance information acquired by the movable part distance information acquisition unit. By configuring it in this way, the control system can output the speed at which the robot's position and orientation are changed based on the distance information between movable parts included in the predetermined information, and therefore the robot's position and orientation can be changed based on the outputted speed at which the robot's position and orientation are changed.

[0028] (11) A control system according to one aspect of the present invention is the control system described in (10) above, wherein the speed at which the position and orientation are changed by the modification unit is slowed down when the distance indicated by the distance information between movable parts acquired by the distance information acquisition unit between movable parts falls below a predetermined distance.

[0029] In the control system, the output unit outputs the speed of the position and attitude changed by the modification unit, which is slower when the distance indicated by the distance information between movable parts acquired by the distance information acquisition unit between movable parts is less than a predetermined distance, compared to when it is not less than a predetermined distance. By configuring it in this way, the control system can output a speed at which the robot's position and orientation change when the distance indicated by the distance information between movable parts acquired by the movable parts distance information acquisition unit falls below a predetermined distance. Therefore, the robot's position can be changed based on the output speed at which the robot's position and orientation change. This reduces impact loads caused by contact while the robot is moving at an unnecessarily high speed, and also reduces excessive loads applied by the robot not stopping after contact.

[0030] (12) A control system according to one aspect of the present invention is a control system according to any one of the above items (1) to (11), further comprising a reaction force information acquisition unit that acquires reaction force information indicating the force that the robot receives from the object, wherein the modification unit changes the position and orientation of the robot, and the output unit outputs the speed at which the position and orientation are changed by the modification unit based on predetermined information, and the predetermined information includes the reaction force information acquired by the reaction force information acquisition unit.

[0031] The control system further includes a reaction force information acquisition unit that acquires reaction force information indicating the force the robot receives from an object. The modification unit changes the robot's position and orientation, and the output unit outputs the speed at which the position and orientation are changed by the modification unit, based on predetermined information. The predetermined information includes reaction force information acquired by the reaction force information acquisition unit. By configuring it in this way, the control system can output the speed at which the robot's position and orientation are changed, based on reaction force information that indicates the force the robot receives from an object, which is included in the predetermined information. Therefore, the robot's position can be changed based on the output speed at which the robot's position is changed.

[0032] (13) A control system according to one aspect of the present invention is the control system described in (12) above, wherein the reaction force information includes translational force information indicating a translational force that the robot receives from the object, and couple information indicating a couple that is generated on the robot as a result of the robot receiving a force from the object.

[0033] In the control system, reaction force information includes translational force information indicating the translational force the robot receives from an object, and couple information indicating the couple force generated on the robot as a result of the robot receiving a force from an object. By configuring it in this way, the control system can output the speed at which the robot's position and orientation are changed, based on translational force information, which indicates the translational force the robot receives from an object, and couple information, which indicates the couple force generated on the robot as a result of the robot receiving a force from an object, both of which are included in the predetermined information. Therefore, the robot's position can be changed based on the output speed at which the robot's position is changed.

[0034] (14) A control system according to one aspect of the present invention is the control system described in (13) above, wherein the output unit outputs the speed at which the position is changed by the modification unit based on both the translational force information and the couple information, and outputs the speed at which the attitude is changed by the modification unit based on the couple information.

[0035] In the control system, the output unit outputs the speed at which the position is changed by the position change unit based on both translational force information and couple force information. The output unit also outputs the speed at which the attitude is changed by the attitude change unit based on couple force information. By configuring it in this way, the control system can output the rate at which the robot's position changes based on both translational force information and couple information, and therefore the robot's position can be changed based on the outputted rate at which the robot's position changes. The control system can output the rate at which the robot's attitude changes based on couple information, and therefore the robot's position can be changed based on the outputted rate at which the robot's attitude changes.

[0036] (15) A control system according to one aspect of the present invention is a control system for controlling a robot that works on an object, comprising: a modification unit for changing the posture and position of the robot; a posture information acquisition unit for acquiring posture information indicating the posture of the robot; a posture limit value acquisition unit for acquiring the limit value of the posture changed by the modification unit; a position information acquisition unit for acquiring position information indicating the position of the robot; a distance information acquisition unit for acquiring distance information indicating the distance from the object to the robot; a reaction force information acquisition unit for acquiring reaction force information indicating the force the robot receives from the object; an angle information acquisition unit for acquiring angle information indicating the angle of the joints of the robot; a movable part distance information acquisition unit for acquiring movable part distance information indicating the distance between a plurality of movable parts constituting the robot; and an output unit for outputting a position speed indicating the speed at which the position is changed by the modification unit and a posture speed indicating the speed at which the posture is changed by the modification unit. The control system comprises a force unit and an output unit, wherein the output unit determines the following: posture speed based on posture information acquired by the posture information acquisition unit and the limit value acquired by the posture limit value acquisition unit; position speed based on position information acquired by the position information acquisition unit; position speed based on distance information acquired by the distance information acquisition unit; position speed based on reaction force information acquired by the reaction force information acquisition unit; posture speed based on reaction force information acquired by the reaction force information acquisition unit; position speed based on angle information acquired by the angle information acquisition unit; posture speed based on distance information between movable parts acquired by the distance information acquisition unit; and posture speed based on distance information between movable parts acquired by the distance information acquisition unit.

[0037] According to this invention, the control system changes the posture and position of the robot, acquires posture information indicating the posture of the robot, acquires limit values ​​for the posture to be changed, acquires position information indicating the position of the robot, acquires distance information indicating the distance from the object to the robot, acquires reaction force information indicating the force the robot receives from the object, acquires angle information indicating the angles of the robot's joints, acquires inter-movable-part distance information indicating the distances between multiple movable parts constituting the robot, and outputs a position speed indicating the speed at which the position is changed and a posture speed indicating the speed at which the posture is changed. The control system determines the posture speed based on the acquired posture information and the limit values ​​of the posture, the position speed based on the acquired position information, the position speed based on the acquired distance information, the position speed based on the acquired reaction force information, the posture speed based on the acquired reaction force information, the position speed based on the acquired angle information, the posture speed based on the acquired angle information, the position speed based on the acquired inter-movable-part distance information, and the posture speed based on the acquired inter-movable-part distance. By configuring the system in this way, the control system can output position speed, which indicates the speed at which the robot's position changes, and posture speed, which indicates the speed at which the robot's posture changes, based on posture speed, which is determined by posture information and posture limit values ​​included in predetermined information; position speed, which is determined by position information; position speed, which is determined by distance information; position speed, which is determined by reaction force information; posture speed, which is determined by reaction force information; position speed, which is determined by angle information; posture speed, which is determined by angle information; position speed, which is determined by distance between movable parts information; and posture speed, which is determined by distance between movable parts information. As a result, the robot's position and posture can be changed based on the output speed at which the robot's position changes and the speed at which the robot's posture changes.

[0038] (16) A control system according to one aspect of the present invention is the control system described in (15) above, wherein the output unit selects and outputs the slowest of the following: the attitude speed based on the attitude information acquired by the attitude information acquisition unit and the limit value acquired by the attitude limit value acquisition unit; the attitude speed based on the reaction force information acquired by the reaction force information acquisition unit; the attitude speed based on the angle information acquired by the angle information acquisition unit; and the attitude speed based on the distance information between movable parts acquired by the distance information acquisition unit; and selects and outputs the slowest of the following: the position speed based on the position information acquired by the position information acquisition unit; the position speed based on the distance information acquired by the distance information acquisition unit; the position speed based on the reaction force information acquired by the reaction force information acquisition unit; the position speed based on the angle information acquired by the angle information acquisition unit; and the position speed based on the distance information between movable parts acquired by the distance information acquisition unit.

[0039] In the control system, the output unit selects and outputs the slowest of the following: attitude speed based on attitude information acquired by the attitude information acquisition unit and limit values ​​acquired by the attitude limit value acquisition unit; attitude speed based on reaction force information acquired by the reaction force information acquisition unit; attitude speed based on angle information acquired by the angle information acquisition unit; and attitude speed based on distance information between movable parts acquired by the distance information acquisition unit. It also selects and outputs the slowest of the following: position speed based on position information acquired by the position information acquisition unit; position speed based on distance information acquired by the distance information acquisition unit; position speed based on reaction force information acquired by the reaction force information acquisition unit; position speed based on angle information acquired by the angle information acquisition unit; and position speed based on distance information between movable parts acquired by the distance information acquisition unit. By configuring it in this way, the modification unit can change the robot's posture and position based on the slowest of the following: posture speed based on posture information obtained by the posture information acquisition unit output by the output unit and limit values ​​obtained by the posture limit value acquisition unit; posture speed based on reaction force information obtained by the reaction force information acquisition unit; posture speed based on angle information obtained by the angle information acquisition unit; posture speed based on distance information between movable parts obtained by the distance information acquisition unit; position speed based on position information obtained by the position information acquisition unit; position speed based on distance information obtained by the distance information acquisition unit; position speed based on reaction force information obtained by the reaction force information acquisition unit; position speed based on angle information obtained by the angle information acquisition unit; and position speed based on distance information between movable parts obtained by the distance information acquisition unit.

[0040] (17) A control system according to one aspect of the present invention is the control system described in (16) above, comprising: information indicating the attitude speed determined by the output unit based on the attitude information acquired by the attitude information acquisition unit and the limit value acquired by the attitude limit value acquisition unit; information indicating the position speed determined by the output unit based on the position information acquired by the position information acquisition unit; information indicating the position speed determined by the output unit based on the distance information acquired by the distance information acquisition unit; and the position speed determined by the output unit based on the reaction force information acquired by the reaction force information acquisition unit. The system further includes a display control unit that causes the display unit to display information indicating the force, information indicating the attitude speed determined by the output unit based on the reaction force information acquired by the reaction force information acquisition unit, information indicating the position speed based on the angle information acquired by the angle information acquisition unit, information indicating the attitude speed based on the angle information acquired by the angle information acquisition unit, information indicating the position speed based on the distance information between movable parts acquired by the distance information acquisition unit between movable parts, and information indicating the attitude speed based on the distance information between movable parts acquired by the distance information acquisition unit between movable parts.

[0041] The control system further includes a display control unit that causes the display unit to display information indicating the attitude speed determined by the output unit based on attitude information and limit values, information indicating the position speed determined by the output unit based on position information, information indicating the position speed determined by the output unit based on distance information, information indicating the position speed determined by the output unit based on reaction force information, information indicating the attitude speed determined by the output unit based on reaction force information, information indicating the position speed determined by the output unit based on angle information, information indicating the attitude speed determined by the output unit based on angle information, information indicating the position speed determined by the output unit based on distance information between movable parts, and information indicating the attitude speed determined by the output unit based on distance information between movable parts. By configuring it in this way, the display unit can show information indicating the attitude speed based on attitude information and limit values, information indicating the position speed based on position information, information indicating the position speed based on distance information, information indicating the position speed based on reaction force information, information indicating the attitude speed based on reaction force information, information indicating the position speed based on angle information, information indicating the attitude speed based on angle information, information indicating the position speed based on distance information between movable parts, and information indicating the attitude speed based on distance information between movable parts.

[0042] (18) A control system according to one aspect of the present invention is the control system described in (17) above, wherein the display control unit displays in a discriminable manner the information that corresponds to the latest information selected and output by the output unit from among the information displayed on the display unit. By configuring it in this way, it becomes possible to distinguish and inform the user of the information displayed on the display unit that corresponds to the slowest output selected by the output unit. (19) A control system according to one aspect of the present invention is the control system described in (17) above, wherein the information indicating the attitude speed determined by the output unit based on the attitude information acquired by the attitude information acquisition unit and the limit value acquired by the attitude limit value acquisition unit includes first-direction attitude speed information indicating the speed at which the attitude is changed in a first direction by the modification unit, and second-direction attitude speed information indicating the speed at which the attitude is changed in a second direction by the modification unit, and the display control unit causes the first-direction attitude speed information to be displayed on the display unit together with the second-direction attitude speed information.

[0043] In the control system, the information indicating the attitude speed determined by the output unit based on the attitude information acquired by the attitude information acquisition unit and the limit values ​​acquired by the attitude limit value acquisition unit includes first-direction attitude speed information indicating the speed at which the attitude is changed in the first direction by the attitude change unit, and second-direction attitude speed information indicating the speed at which the attitude is changed in the second direction by the attitude change unit. The display control unit causes the first-direction attitude speed information to be displayed on the display unit together with the second-direction attitude speed information. With this configuration, the output unit can obtain information indicating attitude speed, including first-direction attitude speed information indicating the speed at which the attitude changes in the first direction, and second-direction attitude speed information indicating the speed at which the attitude changes in the second direction, based on the attitude information obtained by the attitude information acquisition unit and the limit values ​​obtained by the attitude limit value acquisition unit. The display control unit can display the first-direction attitude speed information together with the second-direction attitude speed information on the display unit.

[0044] (20) A control system according to one aspect of the present invention is the control system described in (18) above, wherein the information indicating the attitude speed determined by the output unit based on the reaction force information acquired by the reaction force information acquisition unit includes third-direction attitude speed information indicating the speed at which the attitude is changed in the third direction by the modification unit, and fourth-direction attitude speed information indicating the speed at which the attitude is changed in the fourth direction by the modification unit, and the display control unit causes the third-direction attitude speed information to be displayed on the display unit together with the fourth-direction attitude speed information.

[0045] In the control system, the information indicating the attitude speed determined by the output unit based on the reaction force information acquired by the reaction force information acquisition unit includes third-direction attitude speed information indicating the speed at which the attitude is changed in the third direction by the attitude change unit, and fourth-direction attitude speed information indicating the speed at which the attitude is changed in the fourth direction by the attitude change unit. The display control unit causes the third-direction attitude speed information to be displayed on the display unit together with the fourth-direction attitude speed information. With this configuration, the output unit can obtain attitude speed information, including third-direction attitude speed information indicating the speed at which the attitude changes in the third direction, and fourth-direction attitude speed information indicating the speed at which the attitude changes in the fourth direction, based on the reaction force information obtained by the reaction force information acquisition unit. The display control unit can display the third-direction attitude speed information together with the fourth-direction attitude speed information on the display unit.

[0046] (21) A control system according to one aspect of the present invention is the control system described in (19) above, wherein the position speed information obtained by the output unit based on the reaction force information obtained by the reaction force information acquisition unit includes fifth-direction position speed information indicating the speed at which the position is changed in the fifth direction by the modification unit, and sixth-direction position speed information indicating the speed at which the position is changed in the sixth direction by the modification unit, and the display control unit causes the fifth-direction position speed information to be displayed on the display unit together with the sixth-direction position speed information.

[0047] In the control system, the position and speed information determined by the output unit based on the reaction force information acquired by the reaction force information acquisition unit includes fifth-direction position and speed information indicating the speed at which the position is changed in the fifth direction by the position changing unit, and sixth-direction position and speed information indicating the speed at which the position is changed in the sixth direction by the position changing unit. The display control unit causes the fifth-direction position and speed information to be displayed on the display unit together with the sixth-direction position and speed information. With this configuration, the output unit can obtain position speed information, which includes fifth-direction position speed information indicating the speed at which the position changes in the fifth direction, and sixth-direction position speed information indicating the speed at which the position changes in the sixth direction, based on the reaction force information obtained by the reaction force information acquisition unit. The display control unit can display the fifth-direction position speed information together with the sixth-direction position speed information on the display unit.

[0048] (22) A control system according to one aspect of the present invention is the control system described in (20) above, wherein the position speed information that the output unit determines based on the distance information acquired by the distance information acquisition unit includes seventh-direction position speed information indicating the speed at which the position is changed in the seventh direction by the modification unit, and eighth-direction position speed information indicating the speed at which the position is changed in the eighth direction by the modification unit, and the display control unit causes the seventh-direction position speed information to be displayed on the display unit together with the eighth-direction position speed information.

[0049] In the control system, the position and speed information determined by the output unit based on distance information acquired by the distance information acquisition unit includes seventh-direction position and speed information indicating the speed at which the position is changed in the seventh direction by the position change unit, and eighth-direction position and speed information indicating the speed at which the position is changed in the eighth direction by the position change unit. The display control unit causes the seventh-direction position and speed information to be displayed on the display unit together with the eighth-direction position and speed information. With this configuration, the output unit can obtain position speed information, which includes seventh-direction position speed information indicating the speed at which the position changes in the seventh direction, and eighth-direction position speed information indicating the speed at which the position changes in the eighth direction, based on the distance information obtained by the distance information acquisition unit. The display control unit can display the seventh-direction position speed information together with the eighth-direction position speed information on the display unit.

[0050] (23) A control system according to one aspect of the present invention is the control system described in (21) above, wherein the position speed information that the output unit determines based on the angle information acquired by the angle information acquisition unit includes ninth-direction position speed information indicating the speed at which the position is changed in the ninth direction by the modification unit, and tenth-direction position speed information indicating the speed at which the position is changed in the tenth direction by the modification unit, and the display control unit causes the ninth-direction position speed information to be displayed on the display unit together with the tenth-direction position speed information.

[0051] In the control system, the position and speed information determined by the output unit based on the angle information acquired by the angle information acquisition unit includes 9th direction position and speed information indicating the speed at which the position is changed in the 9th direction by the position change unit, and 10th direction position and speed information indicating the speed at which the position is changed in the 10th direction by the position change unit. The display control unit causes the 9th direction position and speed information to be displayed on the display unit together with the 10th direction position and speed information. By configuring the system in this way, the output unit can obtain position speed information, which includes 9th-direction position speed information indicating the speed at which the position changes in the 9th direction, and 10th-direction position speed information indicating the speed at which the position changes in the 10th direction, based on the angle information obtained by the angle information acquisition unit. The display control unit can display the 9th-direction position speed information together with the 10th-direction position speed information on the display unit.

[0052] (24) A control system according to one aspect of the present invention is the control system described in (22) above, wherein the information indicating the attitude speed determined by the output unit based on the angle information acquired by the angle information acquisition unit includes 11th direction attitude speed information indicating the speed at which the attitude is changed in the 11th direction by the modification unit, and 12th direction attitude speed information indicating the speed at which the attitude is changed in the 12th direction by the modification unit, and the display control unit causes the 11th direction attitude speed information to be displayed on the display unit together with the 12th direction attitude speed information.

[0053] In the control system, the information indicating the attitude speed determined by the output unit based on the angle information acquired by the angle information acquisition unit includes 11th direction attitude speed information indicating the speed at which the attitude is changed in the 11th direction by the attitude change unit, and 12th direction attitude speed information indicating the speed at which the attitude is changed in the 12th direction by the attitude change unit. The display control unit causes the 11th direction attitude speed information to be displayed on the display unit together with the 12th direction attitude speed information. With this configuration, the output unit can obtain attitude speed information, which includes 11th-direction attitude speed information indicating the speed at which the attitude changes in the 11th direction, and 12th-direction attitude speed information indicating the speed at which the attitude changes in the 12th direction, based on the distance information obtained by the distance information acquisition unit. The display control unit can display the 11th-direction attitude speed information together with the 12th-direction attitude speed information on the display unit.

[0054] (25) A control system according to one aspect of the present invention is the control system described in (23) above, wherein the position speed information obtained by the movable part distance information acquisition unit includes 13th direction position speed information indicating the speed at which the position is changed in the 13th direction by the modification unit, and 14th direction position speed information indicating the speed at which the position is changed in the 14th direction by the modification unit, and the display control unit causes the 13th direction position speed information to be displayed on the display unit together with the 14th direction position speed information.

[0055] In the control system, the position and speed information determined by the output unit based on the distance information between movable parts acquired by the distance information acquisition unit between movable parts includes 13th-direction position and speed information indicating the speed at which the position is changed in the 13th direction by the position change unit, and 14th-direction position and speed information indicating the speed at which the position is changed in the 14th direction by the position change unit. The display control unit causes the 13th-direction position and speed information to be displayed on the display unit together with the 14th-direction position and speed information. By configuring it in this way, the output unit can obtain position speed information, which includes 13th direction position speed information indicating the speed at which the position changes in the 13th direction, and 14th direction position speed information indicating the speed at which the position changes in the 14th direction, based on the distance information between movable parts obtained by the distance information acquisition unit between movable parts. The display control unit can display the 13th direction position speed information together with the 14th direction position speed information on the display unit.

[0056] (26) A control system according to one aspect of the present invention is the control system described in (24) above, wherein the information indicating the attitude speed determined by the output unit based on the distance information between movable parts acquired by the distance information acquisition unit between movable parts includes 15th direction attitude speed information indicating the speed at which the attitude is changed in the 15th direction by the modification unit, and 16th direction attitude speed information indicating the speed at which the attitude is changed in the 16th direction by the modification unit, and the display control unit causes the 15th direction attitude speed information to be displayed on the display unit together with the 16th direction attitude speed information.

[0057] In the control system, the information indicating the attitude speed determined by the output unit based on the distance information between movable parts acquired by the distance information acquisition unit between movable parts includes 15th direction attitude speed information indicating the speed at which the attitude is changed in the 15th direction by the attitude change unit, and 16th direction attitude speed information indicating the speed at which the attitude is changed in the 16th direction by the attitude change unit. The display control unit causes the 15th direction attitude speed information to be displayed on the display unit together with the 16th direction attitude speed information. With this configuration, the output unit can obtain attitude speed information, which includes 15th-direction attitude speed information indicating the speed at which the attitude changes in the 15th direction, and 16th-direction attitude speed information indicating the speed at which the attitude changes in the 16th direction, based on the distance information between movable parts acquired by the distance information acquisition unit between movable parts. The display control unit can display the 15th-direction attitude speed information together with the 16th-direction attitude speed information on the display unit.

[0058] (27) A control system according to one aspect of the present invention is the control system described in (25) above, wherein the display control unit has a first threshold used when the output unit determines the attitude speed based on the attitude information acquired by the attitude information acquisition unit and the limit value acquired by the attitude limit value acquisition unit, a second threshold used when the output unit determines the position speed based on the position information acquired by the position information acquisition unit, a third threshold used when the output unit determines the position speed based on the distance information acquired by the distance information acquisition unit, a fourth threshold used when the output unit determines the position speed based on the reaction force information acquired by the reaction force information acquisition unit, and the reaction force information acquisition unit The display unit displays an input area for the user to input each of the following: a fifth threshold used by the output unit when determining the attitude speed based on the reaction force information obtained; a sixth threshold used by the output unit when determining the position speed based on the angle information obtained by the angle information acquisition unit; a seventh threshold used by the output unit when determining the attitude speed based on the angle information obtained by the angle information acquisition unit; an eighth threshold used by the output unit when determining the position speed based on the distance information between movable parts obtained by the distance information acquisition unit; and a ninth threshold used by the output unit when determining the attitude speed based on the distance information between movable parts obtained by the distance information acquisition unit.

[0059] In the control system, the display control unit has a first threshold used when the output unit determines the attitude speed based on the attitude information acquired by the attitude information acquisition unit and the limit value acquired by the attitude limit value acquisition unit, a second threshold used when the output unit determines the position speed based on the position information acquired by the position information acquisition unit, a third threshold used when the output unit determines the position speed based on the distance information acquired by the distance information acquisition unit, a fourth threshold used when the output unit determines the position speed based on the reaction force information acquired by the reaction force information acquisition unit, and an attitude speed based on the reaction force information acquired by the reaction force information acquisition unit. The display unit displays input fields for the user to input each of the following threshold values: the fifth threshold used by the output unit when determining the output speed, the sixth threshold used by the output unit when determining the position speed based on the angle information acquired by the angle information acquisition unit, the seventh threshold used by the output unit when determining the attitude speed based on the angle information acquired by the angle information acquisition unit, the eighth threshold used by the output unit when determining the position speed based on the distance information between movable parts acquired by the distance information between movable parts acquisition unit, and the ninth threshold used by the output unit when determining the attitude speed based on the distance information between movable parts acquired by the distance information acquisition unit. By configuring it in this way, the user can input each of the following: a first threshold used by the output unit when determining the attitude speed based on attitude information and limit values; a second threshold used by the output unit when determining the position speed based on position information; a third threshold used by the output unit when determining the position speed based on distance information; a fourth threshold used by the output unit when determining the position speed based on reaction force information; a fifth threshold used by the output unit when determining the attitude speed based on reaction force information; a sixth threshold used by the output unit when determining the position speed based on angle information; a seventh threshold used by the output unit when determining the attitude speed based on angle information; an eighth threshold used by the output unit when determining the position speed based on distance information between movable parts; and a ninth threshold used by the output unit when determining the attitude speed based on distance information between movable parts.

[0060] (28) A control method according to one aspect of the present invention is a control method performed by a control system that controls a robot that works on an object, comprising the steps of: changing the posture of the robot; acquiring posture information indicating the posture of the robot; acquiring a limit value of the posture changed in the changing step; and outputting the speed at which the posture of the robot is changed in the changing step, based on predetermined information, wherein the predetermined information includes the posture information acquired in the step of acquiring the posture information and the limit value acquired in the step of acquiring the limit value of the posture.

[0061] According to this invention, the control method is performed by a control system that controls a robot performing work on an object. The control method includes the steps of changing the posture of the robot, acquiring posture information indicating the posture of the robot, acquiring limit values ​​for the changed posture of the robot, and outputting the speed at which the posture of the robot is changed based on predetermined information. The predetermined information includes the acquired posture information and limit values ​​acquired by the posture limit value acquisition unit. By configuring it in this way, the control method can output the speed at which the robot's posture changes based on posture information and limit values ​​included in predetermined information, and thus the robot's posture can be changed based on the outputted speed at which the robot's posture changes.

[0062] (29) A control method according to one aspect of the present invention is a control method performed by a control system that controls a robot that works on an object, comprising the steps of: changing the posture and position of the robot; acquiring posture information indicating the posture of the robot; acquiring limit values ​​of the posture changed in the step of changing; acquiring position information indicating the position of the robot; acquiring distance information indicating the distance from the object to the robot; acquiring reaction force information indicating the force the robot receives from the object; acquiring drive unit angle information indicating the angle of the drive unit constituting the robot; acquiring movable unit distance information indicating the distance between movable parts constituting the robot; and outputting position speed indicating the speed changed in the step of changing the position and posture speed indicating the speed changed in the step of changing the posture, wherein the output step involves acquiring posture information. This control method determines the posture speed based on the posture information obtained in the step and the limit value obtained in the step of obtaining the posture limit value, the position speed based on the position information obtained in the step of obtaining position information, the position speed based on the distance information obtained in the step of obtaining distance information, the position speed based on the reaction force information obtained in the step of obtaining reaction force information, the posture speed based on the reaction force information obtained in the step of obtaining reaction force information, the position speed based on the drive unit angle information obtained in the step of obtaining drive unit angle information, the posture speed based on the drive unit angle information obtained in the step of obtaining drive unit angle information, the position speed based on the movable part distance information obtained in the step of obtaining movable part distance information, and the posture speed based on the movable part distance information obtained in the step of obtaining movable part distance information.

[0063] According to this invention, the control method is a control method executed by a control system that controls a robot performing work on an object. The control method changes the posture and position of the robot, acquires posture information indicating the posture of the robot, acquires limit values ​​for the posture to be changed, acquires position information indicating the position of the robot, acquires distance information indicating the distance from the object to the robot, acquires reaction force information indicating the force the robot receives from the object, acquires drive unit angle information indicating the angle of the drive unit constituting the robot, acquires movable part distance information indicating the distance between the movable parts constituting the robot, and outputs a position speed indicating the speed at which the position is changed and a posture speed indicating the speed at which the posture is changed. The control method determines the posture speed based on the acquired posture information and the limit values ​​of the posture, the position speed based on the acquired position information, the position speed based on the acquired distance information, the position speed based on the acquired reaction force information, the posture speed based on the acquired reaction force information, the position speed based on the acquired drive unit angle information, the posture speed based on the acquired drive unit angle information, the position speed based on the acquired movable part distance information, and the posture speed based on the acquired movable part distance information. By configuring it in this way, the control method determines the position speed, which indicates the speed at which the robot's position changes, and the attitude speed, which indicates the speed at which the robot's attitude changes, based on attitude information and attitude limit values ​​included in predetermined information, position speed based on position information, position speed based on distance information, position speed based on reaction force information, attitude speed based on reaction force information, position speed based on drive unit angle information, attitude speed based on drive unit angle information, and movable unit distance Based on positional speed derived from distance information and attitudeal speed derived from movable part distance information, the system can output positional speed, which indicates the speed at which the position changes, and attitudeal speed, which indicates the speed at which the attitude changes. Therefore, the robot's position and attitude can be changed based on the output speed at which the robot's position changes and the speed at which the robot's attitude changes.

[0064] (30) A computer program according to one aspect of the present invention causes a computer in a control system that controls a robot that works on an object to perform the following steps: change the posture of the robot; acquire posture information indicating the posture of the robot; acquire a limit value of the posture that is changed in the changing step; and output the speed at which the posture of the robot is changed in the changing step, based on predetermined information, wherein the predetermined information includes the posture information acquired in the step of acquiring posture information and the limit value acquired in the step of acquiring the limit value of the posture.

[0065] According to this invention, a computer program is executed by the computer of a control system that controls a robot performing work on an object. The computer program causes the computer of the control system that controls the robot to change the robot's posture, acquire posture information indicating the robot's posture, acquire the limit value of the changed robot posture, and output the speed at which the robot's posture is changed, based on predetermined information. The predetermined information includes the acquired posture information and the limit value. By configuring it in this way, the computer program causes the control system's computer to output the speed at which the robot's posture changes, based on posture information and limit values ​​included in predetermined information. As a result, the robot's posture can be changed based on the outputted speed at which the robot's posture changes.

[0066] (31) A computer program according to one aspect of the present invention causes the computer of a control system that controls a robot that works on an object to perform the following steps: change the posture and position of the robot; acquire posture information indicating the posture of the robot; acquire limit values ​​of the posture changed in the step of changing the posture; acquire position information indicating the position of the robot; acquire distance information indicating the distance from the object to the robot; acquire reaction force information indicating the force the robot receives from the object; acquire drive unit angle information indicating the angle of the drive unit constituting the robot; acquire inter-movable unit distance information indicating the distance between a plurality of movable parts constituting the robot; and output position speed indicating the speed changed in the step of changing the position and posture speed indicating the speed changed in the step of changing the posture, wherein in the output step, the computer is instructed to acquire posture information. This is a computer program that calculates the posture speed based on the posture information obtained in the step and the limit value obtained in the step of obtaining the posture limit value, the position speed based on the position information obtained in the step of obtaining position information, the position speed based on the distance information obtained in the step of obtaining distance information, the position speed based on the reaction force information obtained in the step of obtaining reaction force information, the posture speed based on the reaction force information obtained in the step of obtaining reaction force information, the position speed based on the drive unit angle information obtained in the step of obtaining drive unit angle information, the posture speed based on the distance information between movable parts obtained in the step of obtaining distance information between movable parts, and the posture speed based on the distance information between movable parts obtained in the step of obtaining distance information between movable parts.

[0067] According to this invention, the computer program is executed by the computer of a control system that controls a robot that works on an object. The computer program causes the computer of the control system that controls the robot to change the robot's posture and position, to acquire posture information indicating the robot's posture, to acquire limit values ​​for the posture to be changed, to acquire position information indicating the robot's position, to acquire distance information indicating the distance from the object to the robot, to acquire reaction force information indicating the force the robot receives from the object, to acquire angle information indicating the angles of the robot's joints, to acquire distance information indicating the distances between multiple movable parts that make up the robot, and to output a position speed indicating the speed at which the position is changed and a posture speed indicating the speed at which the posture is changed. The computer program is instructed to calculate the following: attitude speed based on acquired attitude information and attitude limit values; position speed based on acquired position information; position speed based on acquired distance information; position speed based on acquired reaction force information; attitude speed based on acquired reaction force information; position speed based on acquired drive unit angle information; attitude speed based on acquired drive unit angle information; position speed based on acquired distance information between movable parts; and attitude speed based on acquired distance information between movable parts. By configuring the system in this way, the computer program causes the computer of the control system that controls the robot to output position speed, which indicates the speed at which the robot's position changes, and posture speed, which indicates the speed at which the robot's posture changes, based on posture speed, which is based on posture information and posture limit values ​​included in predetermined information; position speed, which is based on position information; position speed, which is based on distance information; position speed, which is based on reaction force information; posture speed, which is based on reaction force information; position speed, which is based on drive unit angle information; posture speed, which is based on drive unit angle information; position speed, which is based on distance between movable parts information; and posture speed, which is based on distance between movable parts information. As a result, the robot's position and posture can be changed based on the output speed at which the robot's position changes and the speed at which the robot's posture changes. [Effects of the Invention]

[0068] According to embodiments of the present invention, the speed of the robot can be limited depending on its operation. [Brief explanation of the drawing]

[0069] [Figure 1] This figure shows a robot control system according to an embodiment of the present invention. [Figure 2] This figure shows an example of a coordinate system set in the robot system according to this embodiment. [Figure 3] This figure shows an example of a control device and a modification device included in the robot control system according to this embodiment. [Figure 4] This figure shows an example of the operation of the robot control system according to this embodiment. [Figure 5] This figure shows an example of the operation of the robot control system according to this embodiment. [Figure 6] This figure shows an example of the operation of the robot control system according to this embodiment. [Figure 7] This figure shows an example of the operation of the robot control system according to this embodiment. [Figure 8] A schematic diagram of an example of a modification device included in the robot control system according to this embodiment. [Figure 9] This is a schematic diagram illustrating an example of operation 1 for a modification device included in the robot control system according to this embodiment. [Figure 10] This is a schematic diagram illustrating an example 2 of operations on a modification device included in the robot control system according to this embodiment. [Figure 11] This figure shows an example of the operation of the robot control system according to this embodiment. [Figure 12] This figure shows an example 1 of the operation of the robot control system according to this embodiment. [Figure 13] This figure shows an example 2 of the operation of the robot control system according to this embodiment. [Figure 14] This figure shows example 3 of the operation of the robot control system according to this embodiment. [Figure 15] This figure shows another example of a modification device included in the robot control system according to this embodiment. [Figure 16] This figure shows an example of a control device and a modification device included in a robot control system according to a modified example of the embodiment 1. [Figure 17A] This figure shows an example of the operation of a robot control system according to a modified example of the embodiment 1. [Figure 17B] This figure shows an example of the operation of a robot control system according to a modified example of the embodiment 1. [Figure 17C] This figure shows an example of the operation of a robot control system according to a modified example of the embodiment 1. [Figure 17D] This figure shows an example of the operation of a robot control system according to a modified example of the embodiment 1. [Figure 17E] This figure shows an example of the operation of a robot control system according to a modified example of the embodiment 1. [Figure 18A] This figure shows an example of the operation of a robot control system according to Modification 1 of this embodiment. [Figure 18B] This figure shows an example of the operation of a robot control system according to Modification 1 of this embodiment. [Figure 18C] This figure shows an example of the operation of a robot control system according to Modification 1 of this embodiment. [Figure 18D] This figure shows an example of the operation of a robot control system according to Modification 1 of this embodiment. [Figure 19] This figure shows an example of the operation of a robot control system according to a modified example of the embodiment 1. [Figure 20A] This figure shows an example of the operation of a robot control system according to a modified example of the embodiment 1. [Figure 20B] This figure shows an example of the operation of a robot control system according to a modified example of the embodiment 1. [Figure 20C] This figure shows an example of the operation of a robot control system according to a modified example of the embodiment 1. [Figure 20D]This figure shows an example of the operation of a robot control system according to a modified example of the embodiment 1. [Figure 20E] This figure shows an example of the operation of a robot control system according to a modified example of the embodiment 1. [Figure 20F] This figure shows an example of the operation of a robot control system according to a modified example of the embodiment 1. [Figure 20G] This figure shows an example of the operation of a robot control system according to a modified example of the embodiment 1. [Figure 21] This is a schematic diagram of an example of a change device included in a robot control system according to a modified example of the embodiment 1. [Figure 22] This figure shows an example of the operation of a robot control system according to a modified example of the embodiment 1. [Modes for carrying out the invention]

[0070] Next, the control system, control method, and computer program of this embodiment will be described with reference to the drawings. The embodiments described below are merely examples, and the embodiments to which the present invention is applied are not limited to the embodiments described below. In all the figures used to illustrate the embodiments, components with the same function are given the same reference numerals, and repeated explanations are omitted. Furthermore, in this application, "based on XX" means "based on at least XX," and includes cases where it is based on another element in addition to XX. Also, "based on XX" is not limited to cases where XX is used directly, but also includes cases where it is based on something that has been calculated or processed from XX. "XX" is any element (for example, any information).

[0071] (Embodiment) (Robot control system) Figure 1 shows a robot control system according to an embodiment of the present invention. The robot control system 1 according to this embodiment comprises a robot 2 and a control system 100. The control system 100 comprises a control device 110 and a change device 120. The control device 110 controls the robot 2. The change device 120 instructs the robot 2 to change its position and orientation. The change device 120 selects either a position change mode, which is an operation mode that instructs the robot 2 to change its position, or an orientation change mode, which is an operation mode that instructs the robot 2 to change its orientation. The change device 120 selects either a position change mode or a posture change mode based on the part of the input section where the user inputs operation information to the robot 2 that the user has touched. If the position change mode is selected, the change device 120 instructs the robot 2 to change its position, and if the posture change mode is selected, it instructs the robot 2 to change its posture.

[0072] An example of robot 2 is a single-arm robot comprising arm A and a support base 4 that supports arm A. A single-arm robot is a robot that has one arm, such as arm A. Note that robot 2 may be a multi-arm robot instead of a single-arm robot. A multi-arm robot is a robot that has two or more arms (for example, two or more arms A). Note that among multi-arm robots, a robot with two arms is also called a twin-arm robot. Robot 2 may be a twin-arm robot with two arms, or a multi-arm robot with three or more arms (for example, three or more arms A).

[0073] Arm A is equipped with an end effector E and a manipulator M. An example of an end effector E is an end effector that can lift an object using air suction, magnetism, a jig, etc., or an end effector equipped with fingers that can grasp an object. A control point TCP is also set on the end effector E. A control point TCP is the origin of the coordinate system set at the part of robot 2 that is to be controlled. An example of a control point TCP is a TCP (Tool Center Point) that is set at the center of gravity of the end effector E and moves as the center of gravity of the end effector E moves. Note that the position where the control point TCP is set may be another position associated with the end effector E, instead of the position of the centroid of the end effector E. In this embodiment, as an example, we will continue the explanation assuming that the position of the centroid of the end effector E is the position of the control point TCP of the end effector E. Note that the position of the control point TCP of the end effector E may be represented by another position associated with the end effector E instead.

[0074] Figure 2 shows an example of a coordinate system set up in the robot system according to this embodiment. The control point TCP is assigned the control point coordinate system TC, which is a three-dimensional local coordinate system representing the position and orientation of the end effector E. The position and orientation of the control point TCP are the position and orientation of the control point TCP in the robot coordinate system. Furthermore, the direction of each coordinate axis in the control point coordinate system TC represents the orientation of the control point TCP, in other words, the orientation of the end effector E. As shown in Figure 2, an example of the control point coordinate system TC is a Cartesian coordinate system with the support base 4 of the robot 2 as the reference (origin). Hereafter, the Cartesian coordinate system with the support base 4 of the robot 2 as the reference (origin) will also be called the first coordinate system. In an example of the control point coordinate system TC, the vertical direction is the Z axis, and the X and Y axes are set in directions perpendicular to the Z axis and mutually orthogonal. The X and Y axes are parallel to the horizontal plane. Below, as an example, we will explain the case where the Z axis and the vertical direction coincide in the control point coordinate system TCP, and the X and Y axes are perpendicular to the Z axis and mutually orthogonal. Return to Figure 1 and continue the explanation. The end effector E is connected to the control device 110 via, for example, a cable (not shown) to enable communication. As a result, the end effector E operates based on control signals received from the control device 110. Wired communication via cable is performed using standards such as Ethernet® or USB. Alternatively, the end effector E may be connected to the control device 110 via wireless communication using a communication standard such as Wi-Fi®.

[0075] The manipulator M has multiple joints, including a joint that rotates the end effector E. Each of the multiple joints is also equipped with an actuator (not shown). An example of an arm A equipped with the manipulator M is a 6-axis vertical articulated arm. This example of arm A performs 6-axis motion with 6 degrees of freedom through the coordinated action of the support base 4, the end effector E, the manipulator M, and the actuators of each of the multiple joints of the manipulator M. However, this example of arm A may also be configured to operate with 5 or fewer degrees of freedom, or with 7 or more degrees of freedom. When arm A operates with 6 degrees of freedom, the number of possible postures it can adopt increases compared to when it operates with 5 or fewer degrees of freedom. This allows arm A to move more smoothly and more easily avoid interference with objects in its vicinity. Furthermore, controlling arm A when it operates with 6 degrees of freedom is easier because it requires less computation compared to when it operates with 7 or more degrees of freedom.

[0076] Each of the actuators located at the multiple joints of the manipulator M is connected to the control device 110 via a cable (not shown) to enable communication. This allows the actuators to operate the manipulator M based on control signals received from the control device 110. Wired communication via the cable is performed using standards such as Ethernet® or USB. Alternatively, some or all of the actuators of the manipulator M may be connected to the control device 110 via wireless communication using a communication standard such as Wi-Fi®. The force detection unit FD is provided in the modification device 120. An example of the force detection unit FD is a force sensor. The force detection unit FD is connected to the control device 110 via a cable (not shown) for communication. Wired communication via the cable is performed using standards such as Ethernet® or USB. Alternatively, the force detection unit FD and the control device 110 may be connected via a force sensor interface unit. Alternatively, the force detection unit FD and the control device 110 may be connected via wireless communication using a communication standard such as Wi-Fi®. The force detection unit FD detects the force or moment (torque) acting on the modification device 120. The force detection unit FD transmits force detection information to the control device 110, which includes a value indicating the magnitude of the detected force or moment as an output value.

[0077] The control device 110 controls arm A based on force detection information. An example of the force detection unit FD may be a sensor that detects values ​​indicating the magnitude of force or moment applied to a torque sensor or the like. The control device 110 operates the robot 2 by transmitting control signals to it. This allows the control device 110 to cause the robot 2 to perform a predetermined task. Specifically, the control device 110 creates control signals to change either or both the position and orientation of the robot 2, based on the change instruction signals output by the change device 120. The control device 110 outputs the created control signals to the robot 2. Note that the control device 110 may be built into the robot 2 instead of being installed externally.

[0078] The change device 120 is an input device that receives user operations on the robot 2. Based on the received operations, the change device 120 creates a change instruction signal to instruct the robot 2 to change its position and orientation. The change device 120 outputs the created change instruction signal to the control device 110. Specifically, the change device 120 includes an input section where the user inputs operation information to the robot 2. Based on the part of the input section that the user has touched, the change device 120 selects either a position change mode or an orientation change mode. The change device 120 generates a change instruction signal to instruct the robot 2 to change its position when the position change mode is selected, and generates a change instruction signal to instruct the robot 2 to change its posture when the posture change mode is selected. The modification device 120 is connected to the control device 110 via a cable (not shown) in a communicative manner. Wired communication via the cable is performed using standards such as Ethernet® or USB. Alternatively, the modification device 120 and the control device 110 may be connected by wireless communication using a communication standard such as Wi-Fi®.

[0079] <Overview of the prescribed tasks performed by Robot 2> The following describes an overview of the predetermined tasks performed by the robot 2 in the robot control system 1 according to this embodiment. In Figure 1, the robot 2 performs a predetermined task on an object (not shown) using the end effector E. The robot 2 may have already grasped the object, or it may be configured to grasp an object placed in a predetermined material feeding area. The object may be, for example, an industrial part, component, or product. A mark is provided to indicate the object coordinate system, which is a three-dimensional local coordinate system representing the position and orientation of the object. Here, the position and orientation of the object are the position and orientation of the object in the robot coordinate system. The origin of the object coordinate system is, for example, the position of the object's center of gravity. Furthermore, the direction of each coordinate axis of the object coordinate system represents the orientation of the object. Furthermore, the mark indicating the object's coordinate system may be any mark that can indicate the object's coordinate system, or it may even be a part of the object itself. Also, the object may be other objects such as parts, materials, or products that are not industrial, or even living organisms, instead of industrial parts. In addition, the shape of the object may be other shapes than those described above.

[0080] When robot 2 performs a predetermined task on an object, the control device 110 reads current coordinate data from robot 2. Coordinate data is information that associates position information and posture information. Here, the position information is information that indicates the relative position between a reference position, which is a reference position, and the position that indicates the point where robot 2 aligns the control point TCP when moving arm A. The posture information is information that indicates the relative posture between a reference posture, which is a reference posture, and the posture of end effector E at the reference position. Here, as an example, the posture of end effector E at the reference position is set in advance. As the posture of robot 2 is changed, a predetermined point on robot 2 traces an arc centered on control point TCP. The control device 110 generates movement coordinate data based on the change instruction signal received from the change device 120 and the currently read coordinate data. By moving arm A at a predetermined speed (operating speed) using position control based on the generated movement coordinate data, the position and posture of control point TCP, i.e., the position and posture of end effector E, are changed, thereby causing robot 2 to perform work on the object.

[0081] Position control is a control method that moves arm A by matching the position of control point TCP to the position indicated by the position information contained in the coordinate data. Specifically, position control is a control method that moves arm A by matching the position of control point TCP to the position indicated by the position information contained in the coordinate data, and also by matching the attitude of control point TCP to the attitude indicated by the attitude information contained in the coordinate data.

[0082] When the position and orientation of the control point TCP during operation coincide with the initial position and orientation of the object, and the position and orientation of the object coincide with the reference position and orientation, the control device 110 moves arm A by position control and orientation control based on the read current coordinate data and movement coordinate data generated from the change instruction signal, thereby changing the position and orientation of the control point TCP, i.e., the position and orientation of the end effector E, and allowing the robot 2 to perform work on the object. The control device 110 and the modification device 120 included in the robot control system 1 will be described in detail below.

[0083] Figure 3 shows an example of a control device and a modification device included in the robot control system according to this embodiment. (Control device 110) The control device 110 includes a first communication unit 180-1, a second communication unit 180-2, a modification unit 190, an attitude information acquisition unit 192, a position information acquisition unit 194, an attitude limit value acquisition unit 196, a distance information acquisition unit 197, an output unit 198, and a storage unit 200. The first communication unit 180-1 is implemented by a communication module. The first communication unit 180-1 communicates with an external communication device. The first communication unit 180-1 may communicate using a communication method such as wired LAN. Alternatively, the first communication unit 180-1 may communicate using a wireless communication method such as wireless LAN, Bluetooth®, or LTE®. The first communication unit 180-1 transmits the control signal output by the modification unit 190 to the robot 2. Specifically, the first communication unit 180-1 transmits the control signal output by the modification unit 190 to at least one of the multiple actuators provided by the manipulator M. The first communication unit 180-1 receives the current coordinate data transmitted by the robot 2. The second communication unit 180-2 is implemented by a communication module. The second communication unit 180-2 communicates with an external communication device. The second communication unit 180-2 may communicate using a communication method such as a wired LAN. Alternatively, the second communication unit 180-2 may communicate using a wireless communication method such as wireless LAN, Bluetooth®, or LTE®. The second communication unit 180-2 receives a change instruction signal output by the change device 120.

[0084] The attitude information acquisition unit 192 acquires attitude information contained in the current coordinate data received by the first communication unit 180-1. The location information acquisition unit 194 acquires location information included in the current coordinate data received by the first communication unit 180-1. The posture limit value acquisition unit 196 acquires the posture limit value (command limit value) of the robot 2 that the modification unit 190 changes from the memory unit 200. The posture limit value acquisition unit 196 acquires the posture limit value based on the posture of the robot 2. The output unit 198 derives the speed at which the posture of robot 2 is changed by the modification unit 190, based on predetermined information. The output unit 198 outputs command limit values, such as information that specifies the speed at which the posture of robot 2 is changed, to the modification unit 190. Here, the speed at which the posture of robot 2 is changed is the speed of movement (operation speed) when the posture of robot 2 is changed. An example of predetermined information is the posture information acquired by the posture information acquisition unit 192 and the posture limit value of robot 2 acquired by the posture limit value acquisition unit 196.

[0085] Figure 4 is a diagram showing an example of the operation of the robot control system according to this embodiment. Referring to Figure 4, the process by which the output unit 198 derives the speed at which the position of the robot 2 is changed by the modification unit 190 based on predetermined information will be described. Figure 4 is a view of the robot control system from the positive Z-axis direction to the negative Z-axis direction. Figure 4 shows the robot 2 and the workpiece WO. The robot control system 1 is set to an operating speed setting range OR, which is a range for setting the speed at which the robot 2 operates. For example, the robot control system 1 is set to a first operating speed setting range OR01, a second operating speed setting range OR02, and a third operating speed setting range OR03. The output unit 198 sets the speed at which the robot 2's position is changed to the normal speed if the acquired position information is included in the first operating speed setting range OR01. The output unit 198 sets the speed at which the robot 2's position is changed to a slower speed than the normal speed if the acquired position information is included in the second operating speed setting range OR02, which is wider than the first operating speed setting range OR01, excluding the first operating speed setting range OR01. If the acquired position information falls within the third operating speed setting range OR03, which is wider than the second operating speed setting range OR02, and excludes the first operating speed setting range OR01 and the second operating speed setting range OR02, the output unit 198 sets the speed at which the robot 2's position is changed to a very slow speed, which is slower than a low speed. If the acquired position information falls within a range wider than the third operating speed setting range OR03, the output unit 198 stops the robot 2 without changing its position. However, in each area (the first operating speed setting range OR01, the range of the second operating speed setting range OR02 excluding the first operating speed setting range OR01, the range of the third operating speed setting range OR03 excluding the first operating speed setting range OR01 and the second operating speed setting range OR02, and a range wider than the third operating speed setting range OR03), movement is restricted only in certain directions in the X, Y, and Z directions. For example, if robot 2 is located in P01 (for example, the range of the second operating speed setting range OR02 excluding the first operating speed setting range OR01, and a position +X side with respect to the first operating speed setting range OR01), the speed in the +X direction will be reduced, and the other directions (-X, ±Y, ±Z) will operate at normal speed. If robot 2 is located in P02 (for example, the range of the second operating speed setting range OR02 excluding the first operating speed setting range OR01, and a position +Y side with respect to the first operating speed setting range OR01), the speed in the +Y direction will be reduced, and the other directions (±X, -Y, ±Z) will operate at normal speed. When robot 2 is located in P03 (for example, the range of the third operating speed setting range OR03 excluding the first operating speed setting range OR01 and the second operating speed setting range OR02, and located +X to the second operating speed setting range OR02 and +Y to the first operating speed setting range OR01), the speed in the +X direction becomes very slow, the speed in the +Y direction becomes low, and the robot operates at normal speeds in other directions (-X, -Y, ±Z).

[0086] Figure 5 shows an example of the operation of the robot control system according to this embodiment. Referring to Figure 5, the process by which the output unit 198 derives the speed at which the position of the robot 2 is changed by the modification unit 190 based on predetermined information will be explained. Figure 5 is a view of the robot control system from the positive direction of the X-axis to the negative direction of the X-axis. Figure 5 shows the robot 2 and the workpiece WO. The robot control system 1 has a first operating speed setting position OP01, a second operating speed setting position OP02, and a third operating speed setting position OP03 set. In the Z-axis direction, the positions are the first operating speed setting position OP01, the second operating speed setting position OP02, and the third operating speed setting position OP03, respectively, as you move from the positive direction to the negative direction. In this example, only the speed in the -Z direction is limited from low speed to very slow speed, and from very slow speed to stop. The distance information acquisition unit 197 acquires the location FFP of the work WO. For example, the distance information acquisition unit 197 acquires the location information of the pre-set location FFP of the work WO. The distance information acquisition unit 197 acquires location information from the location information acquisition unit 194 and derives the face-to-face relative distance RD, which is the distance between the TCP location and the work WO location FFP, based on the acquired location information. The output unit 198 acquires the face-to-face relative distance RD from the distance information acquisition unit 197 and sets the speed to be slowed if the acquired face-to-face relative distance RD falls below a predetermined distance. The output unit 198 obtains the relative distance RD from the distance information acquisition unit 197. If the obtained relative distance RD is longer than the distance between the position of the workpiece WO and the first operating speed setting position OP01, the speed at which the position of the robot 2 is changed is set to the normal speed. The output unit 198 determines that if the derived relative distance RD is longer than the distance between the workpiece WO's position FFP and the second operating speed setting position OP02, and shorter than the distance between the workpiece WO's position and the first operating speed setting position OP01, the speed at which the robot 2's position is changed is slower than the normal speed.

[0087] The output unit 198 determines that if the derived relative distance RD is 0 or greater and shorter than the distance between the position of the workpiece WO and the second operating speed setting position OP02, the speed at which the position of the robot 2 is changed is set to a very slow speed, which is slower than a low speed. The output unit 198, when the position of TCP is in the negative direction in the Z-axis direction compared to the position FFP of the workpiece WO, and the absolute value of the face-to-face relative distance RD is 0 or greater, and is shorter than the distance between the position of the workpiece WO and the third operating speed setting position OP03, sets the speed at which the position of the robot 2 is changed to a very slow speed, which is slower than a low speed. The output unit 198 stops the robot 2 without changing its position if the position of TCP is in the negative direction in the Z-axis direction compared to the position of workpiece WO FFP, and the absolute value of the face-to-face relative distance RD is longer than the distance between the position of workpiece WO and the third operating speed setting position OP03.

[0088] Figure 6 shows an example of the operation of the robot control system according to this embodiment. Here, one axis is shown as an example. The modification unit 190 outputs the position and command limit value (%) based on the current position information (mm) (IN) of the robot 2, one of the positions in the low-speed range (mm) (LL), the very-speed range (mm) (ML), or the stopping range (mm) (HL) of the robot 2, and one of the limit values ​​(%) at low speed (LV), the very-speed range (%) (MV), or the stopping range (%) (HV). For example, as shown on the right side of Figure 6, the command limit value decreases as the position of the robot 2 moves to the low-speed range, the very-speed range, or the stopping range. An example of a command limit value is information for limiting the operating speed. For example, the speed may be limited by a percentage indicated by the command limit value relative to the normal speed. The output unit 198 outputs the created information for limiting the operating speed to the modification unit 190. Figure 7 shows an example of the operation of the robot control system according to this embodiment. The modification unit 190 acquires information from the distance information acquisition unit 197 to identify the face-to-face relative distance RD. Here, as an example, the case for one axis is shown. The modification unit 190 outputs the face-to-face distance (face-to-face relative distance RD) and the command limit value (%) based on the face-to-face distance (face-to-face relative distance RD) of the robot 2 (IN), whether the face-to-face distance (face-to-face relative distance RD) of the robot 2 is in the low-speed range (mm) (LL), the very-speed range (mm) (ML), or the stop range (mm) (HL), and whether the speed limit value is the limit value at low speed (%) (LV), the limit value at very-speed (%) (MV), or the limit value at stop (%) (HV). For example, as shown on the right side of Figure 7, a command limit value is output that increases as the face-to-face distance (face-to-face relative distance RD) moves from the stop range to the low-speed range. An example of a command limit value is information for limiting the operating speed. For example, the speed may be limited by a percentage indicated by the command limit value relative to the normal speed. The output unit 198 outputs the created information for limiting the operating speed to the modification unit 190. Returning to Figure 3, we continue the explanation.

[0089] The modification unit 190 changes the posture of robot 2. The modification unit 190 acquires posture information from posture information acquisition unit 192. The modification unit 190 acquires the change instruction signal received by the second communication unit 180-2. The modification unit 190 acquires information for limiting the operating speed (information that identifies the speed at which the posture of robot 2 is changed) output by the output unit 198. The modification unit 190 acquires the attitude limit value output by the attitude limit value acquisition unit 196. If the acquired change instruction signal includes information that specifies that the attitude of robot 2 should be changed, the modification unit 190 creates a control signal to change the attitude of robot 2 based on the acquired attitude information, the change instruction signal, information that specifies the speed at which the attitude of robot 2 is changed, and the attitude limit value. The modification unit 190 changes the position of robot 2. The modification unit 190 acquires position information received by the first communication unit 180-1 from the position information acquisition unit 194. The modification unit 190 acquires the change instruction signal received by the second communication unit 180-2. The modification unit 190 acquires information for limiting the operating speed (information that identifies the speed at which the position of robot 2 is changed) output by the output unit 198. If the acquired change instruction signal includes information that specifies a change in the position of robot 2, the modification unit 190 creates a control signal to change the position of robot 2 based on the acquired posture information, the change instruction signal, and information that specifies the speed at which the posture of robot 2 is changed.

[0090] The memory unit 200 is implemented using HDD (Hard Disk Drive), flash memory, RAM (Random Access Memory), ROM (Read Only Memory), etc. The memory unit 200 stores teaching point information and command limit values. Teaching point information is position and orientation data that is registered in advance to change the position and orientation of the robot 2. Command limit values ​​are information that identifies the limit values ​​of the position and orientation of the robot 2. For example, the memory unit 200 stores information relating the current position (mm) of the robot 2 and the command limit value (%) at that position, as shown on the right side of Figure 6. For example, the memory unit 200 stores information relating the face-to-face distance (mm) of the robot 2 and the command limit value (%) at that face-to-face distance, as shown on the right side of Figure 7. Returning to Figure 3, we continue the explanation.

[0091] The modification unit 190, attitude information acquisition unit 192, position information acquisition unit 194, attitude limit value acquisition unit 196, distance information acquisition unit 197, and output unit 198 are realized, for example, by a hardware processor such as a CPU (Central Processing Unit) executing a computer program (software) stored in the storage unit 200. Furthermore, some or all of these functional components may be implemented by hardware (including circuitry) such as LSI (Large Scale Integration), ASIC (Application Specific Integrated Circuit), FPGA (Field-Programmable Gate Array), and GPU (Graphics Processing Unit), or by collaboration between software and hardware.

[0092] (Modification device 120) The change device 120 comprises an input unit 130, a communication unit 160, an output unit 165, and a change instruction unit 170. The input unit 130 comprises a selection unit 140, a force sensor 150, a touch sensor TS1, a touch sensor TS2, and a touch sensor TS3. The selection unit 140 comprises a first part P1 and a second part P2. Figure 8 is a schematic diagram of an example of a modification device included in the robot control system according to this embodiment. An example of the change device 120 includes a joystick ST, a base PD, and a force detection unit FD. The joystick ST is composed of a columnar portion and a spherical portion. The spherical portion is formed on the upper part (upper side) of the columnar portion. The joystick ST and base PD have a first part P1 and a second part P2. An example of the first part P1 includes a first part P1-1 formed on the base PD, a first part P1-21 formed on the columnar portion of the joystick ST adjacent to the base, and a first part P1-22 formed on the columnar portion of the joystick ST adjacent to the spherical portion. An example of the second part P2 is formed on the spherical portion of the joystick ST. Return to Figure 3 and continue the explanation.

[0093] The selection unit 140 selects the position change mode when the user touches the first part P1. The position change mode is an operation mode that causes the robot 2 to change its position. The touch sensor TS1 detects when the user touches the first part P1-1. The touch sensor TS2 detects when either the first part P1-21 or the first part P1-22 is touched. The force sensor 150 detects the force applied by the user to the joystick ST or the base PD. The input unit 130 acquires information that the user has touched the first part P1-1 as detected by the touch sensor TS1, information that the user has touched the first part P1-21 as detected by the touch sensor TS2, information that the user has touched the first part P1-22 as detected by the touch sensor TS2, and force information applied to the joystick ST or the base PD by the user as detected by the force sensor 150.

[0094] Figure 9 is a schematic diagram illustrating an example 1 of operations on a modification device included in the robot control system according to this embodiment. The force sensor 150 detects either that the user moves the joystick ST in the X-axis direction by applying a force Fx to the joystick ST after the touch sensor TS1 has detected that the user has made contact with the first part P1-1, or that the user moves the joystick ST in the Y-axis direction by applying a force Fy to the joystick ST, or that the user moves the joystick ST in the Z-axis direction by applying a force Fz to the joystick ST after the touch sensor TS2 has detected that the user has made contact with the first part P1-21 or P1-22. The input unit 130 acquires information that the touch sensor TS1 detected that the user has touched the first part P1-1, information that the touch sensor TS2 detected that the user has touched either the first part P1-21 or the first part P1-22, and information that the force sensor 150 detected that the user has moved the joystick ST in either the X-axis, Y-axis, or Z-axis direction. Return to Figure 3 and continue the explanation.

[0095] The selection unit 140 selects the posture change mode when the user touches the second part P2. The posture change mode is an operation mode that causes the robot 2 to change its posture. The touch sensor TS3 detects that the user has touched the second part P2. The force sensor 150 detects the moment (torque) applied by the user to the joystick ST or the base PD. The input unit 130 acquires information that identifies the user touching the second part P2 as detected by the touch sensor TS3, and information that the user has applied to the joystick ST or the base PD as detected by the force sensor 150. Figure 10 is a schematic diagram illustrating an example 2 of operations on a modification device included in the robot control system according to this embodiment. After the touch sensor TS3 detects that the user has made contact with the second part P2, the force sensor 150 detects one of the following: that the user has rotated the joystick ST around the X-axis by applying a force Mx to the joystick ST; that the user has rotated the joystick ST around the Y-axis by applying a force My to the joystick ST; or that the user has rotated the joystick ST around the Z-axis by applying a force Mz to the joystick ST. The input unit 130 acquires information that identifies the user who has made contact with the second part P2 as detected by the touch sensor TS3, and information that identifies one of the following as detected by the force sensor 150: that the user has rotated the joystick ST around the X-axis, Y-axis, or Z-axis. Return to Figure 3 and continue the explanation.

[0096] The derivation unit 165 acquires information obtained by the input unit 130 that identifies that the user has come into contact with the first part P1-1, or information that identifies that the user has come into contact with the first part P1-21 and / or information that identifies that the user has come into contact with the first part P1-22, or information that identifies that the user has come into contact with the second part P2. If the derivation unit 165 obtains information that identifies the user has made contact with the first part P1-1, it obtains information obtained by the input unit 130 that identifies the user has moved the joystick ST in either the X-axis direction or the Y-axis direction. If the derivation unit 165 obtains information that identifies the user has made contact with the first part P1-21 or information that identifies the user has made contact with the first part P1-22, it obtains information obtained by the input unit 130 that identifies the user has moved the joystick ST in the Z-axis direction. The derivation unit 165 derives the amount of change (movement) in the X-axis direction based on information that identifies that the user moved the joystick ST in the X-axis direction. The derivation unit 165 derives the amount of change (movement) in the Y-axis direction based on information that identifies that the user moved the joystick ST in the Y-axis direction. The derivation unit 165 derives the amount of change (movement) in the Z-axis direction based on information that identifies that the user moved the joystick ST in the Z-axis direction.

[0097] When the change instruction unit 170 obtains information that the user has made contact with the first part P1-1 and information that the user has moved the joystick ST in the X-axis direction, it creates a change instruction signal that specifies that the robot 2 should be moved in the X-axis direction by the amount of change derived by the derivation unit 165 in position change mode. The change instruction unit 170 outputs the created change instruction signal to the communication unit 160. When the change instruction unit 170 obtains information that the user has made contact with the first part P1-1 and information that the user has moved the joystick ST in the Y-axis direction, it creates a change instruction signal that specifies that the robot 2 should be moved in the Y-axis direction by the amount of change derived by the derivation unit 165 in position change mode. The change instruction unit 170 outputs the created change instruction signal to the communication unit 160. When the change instruction unit 170 obtains information that the user has made contact with the first part P1-21 or the first part P1-22, and information that the user has moved the joystick ST in the Z-axis direction, it creates a change instruction signal that specifies that the robot 2 should be moved in the Z-axis direction by the amount of change derived by the derivation unit 165 in position change mode. The change instruction unit 170 outputs the created change instruction signal to the communication unit 160.

[0098] When the derivation unit 165 obtains information that identifies the user has made contact with the second part P2, it obtains information that identifies one of the following, obtained by the input unit 130: that the user rotated the joystick ST around the X axis, around the Y axis, or around the Z axis. The derivation unit 165 derives the amount of attitude change (attitude movement) around the X-axis based on information that identifies that the user rotated the joystick ST around the X-axis. The derivation unit 165 derives the amount of attitude change (attitude movement) around the Y-axis based on information that identifies that the user rotated the joystick ST around the Y-axis. The derivation unit 165 derives the amount of attitude change (attitude movement) around the Z-axis based on information that identifies that the user rotated the joystick ST around the Z-axis. When the change instruction unit 170 obtains information that the user has made contact with the second part P2 and information that the user has rotated the joystick ST around the X-axis, it creates a change instruction signal that includes information specifying that the attitude of the robot 2 should be changed around the X-axis by the amount of attitude change derived by the derivation unit 165 in attitude change mode. The change instruction unit 170 outputs the created change instruction signal to the communication unit 160.

[0099] When the change instruction unit 170 obtains information that the user has made contact with the second part P2 and information that the user has rotated the joystick ST around the Y-axis, it creates a change instruction signal that specifies that the posture of the robot 2 should be changed around the Y-axis by the amount of posture change derived by the derivation unit 165 in posture change mode. The change instruction unit 170 outputs the created change instruction signal to the communication unit 160. When the change instruction unit 170 obtains information that the user has made contact with the second part P2 and information that the user has rotated the joystick ST around the Z-axis, it creates a change instruction signal that includes information specifying that the attitude of the robot 2 should be changed around the Z-axis by the amount of attitude change derived by the derivation unit 165 in attitude change mode. The change instruction unit 170 outputs the created change instruction signal to the communication unit 160. The communication unit 160 is implemented by a communication module. The communication unit 160 communicates with an external communication device. The communication unit 160 may communicate using a communication method such as a wired LAN. Alternatively, the communication unit 160 may communicate using a wireless communication method such as wireless LAN, Bluetooth®, or LTE®. The communication unit 160 transmits the change instruction signal output by the change instruction unit 170 to the control device 110. The selection unit 140, input unit 130, derivation unit 165, and change instruction unit 170 are implemented, for example, by a hardware processor such as a CPU executing a computer program (software) stored in a memory unit (not shown). Furthermore, some or all of these functional units may be implemented by hardware (including circuitry) such as LSIs, ASICs, FPGAs, and GPUs, or by the cooperation of software and hardware.

[0100] Figure 11 shows an example of the operation of the robot control system according to this embodiment. Here, as an example, we will explain the cases of (1) changing the position of the robot 2 in the Y-axis direction, (2) changing the position of the robot 2 in the Z-axis direction, and (3) changing the posture of the robot 2 around the Z-axis direction. (1) The case of changing the position of robot 2 in the Y-axis direction will be explained. The touch sensor TS1 detects when the user touches the first part P1-1. The input unit 130 acquires information that identifies the user who touched the first part P1-1 as detected by the touch sensor TS1 (1-1). The force sensor 150 detects that the user has made contact with the first part P1-1 via the touch sensor TS1, and then detects that the user has moved the joystick ST in the Y-axis direction by applying a force Fy to the joystick ST. The input unit 130 acquires information that identifies the user's movement of the joystick ST in the Y-axis direction, as detected by the force sensor 150. The derivation unit 165 acquires information obtained by the input unit 130 that identifies that the user has made contact with the first part P1-1. The derivation unit 165 acquires the information obtained by the input unit 130 that identifies that the user has made contact with the first part P1-1, and information obtained that identifies that the user has moved the joystick ST in the Y-axis direction. Based on the acquired information that identifies that the user has moved the joystick ST in the Y-axis direction, the derivation unit 165 derives the amount of change (movement) in the Y-axis direction (1-2). When the change instruction unit 170 obtains information that the user has made contact with the first part P1-1 and information that the user has moved the joystick ST in the Y-axis direction, it creates a change instruction signal that specifies that the robot 2 should be moved in the Y-axis direction by the amount of change derived by the derivation unit 165 in position change mode. The change instruction unit 170 outputs the created change instruction signal to the communication unit 160.

[0101] (2) The case of changing the position of robot 2 in the Z-axis direction will be explained. The touch sensor TS2 detects when the user touches either the first part P1-21 or the first part P1-22. The input unit 130 acquires either information that identifies the user touching the first part P1-21 or information that identifies the user touching the first part P1-22 as detected by the touch sensor TS2 (2-1). The force sensor 150 detects that the user has made contact with the first part P1-21 or the second part P1-22 via the touch sensor TS2, and then detects that the user has moved the joystick ST in the Z-axis direction by applying a force Fz to the joystick ST. The input unit 130 acquires information that identifies the user's movement of the joystick ST in the Z-axis direction, as detected by the force sensor 150. The derivation unit 165 acquires either information obtained by the input unit 130 that identifies that the user has touched the first part P1-21 or information that identifies that the user has touched the first part P1-22. The derivation unit 165 acquires the information that identifies that the user has touched the first part P1-21, the information that identifies that the user has touched the first part P1-22, and information that identifies that the user has moved the joystick ST in the Z-axis direction. Based on the acquired information that identifies that the user has moved the joystick ST in the Z-axis direction, the derivation unit 165 derives the amount of change (movement) in the Z-axis direction (2-2). When the change instruction unit 170 obtains information that the user has made contact with the first part P1-21 or the first part P1-22, and information that the user has moved the joystick ST in the Z-axis direction, it creates a change instruction signal that specifies that the robot 2 should be moved in the Z-axis direction by the amount of change derived by the derivation unit 165 in position change mode. The change instruction unit 170 outputs the created change instruction signal to the communication unit 160.

[0102] (3) The case in which the posture of robot 2 is changed in the Z-axis direction will be explained. The touch sensor TS3 detects when the user touches the second part P2. The input unit 130 acquires information that identifies the user touching the second part P2 as detected by the touch sensor TS3 (3-1). The force sensor 150 detects that the user has made contact with the second part P2 via the touch sensor TS3, and then detects that the user has rotated the joystick ST around the Z-axis direction by applying a force Mz to the joystick ST. The input unit 130 acquires information that identifies the user's rotation of the joystick ST around the Z-axis direction, as detected by the force sensor 150. The derivation unit 165 acquires information obtained by the input unit 130 that identifies that the user has made contact with the second part P2, and information that identifies that the user has rotated the joystick ST around the Z-axis direction. Based on the acquired information that identifies that the user has rotated the joystick ST around the Z-axis direction, the derivation unit 165 derives the amount of attitude change (attitude movement) around the Z-axis direction (3-2). When the change instruction unit 170 obtains information that the user has made contact with the second part P2 and information that the user has rotated the joystick ST around the Z-axis, it creates a change instruction signal that includes information specifying that the attitude of the robot 2 should be changed around the Z-axis by the amount of attitude change derived by the derivation unit 165 in attitude change mode. The change instruction unit 170 outputs the created change instruction signal to the communication unit 160.

[0103] (Operation of robot control system 1) The operation of the robot control system 1 according to this embodiment will be explained in two parts: the process of setting the coordinate system and the process of changing the position or orientation of the robot 2. Figure 12 shows an example 1 of the operation of the robot control system according to this embodiment. Referring to Figure 12, the process of setting the coordinate system for the robot control system 1 will be described. (Step S1-1) In the control system 100, the control device 110 starts operation. (Step S2-1) In the control device 110, the modification unit 190 creates a robot operation mode setting command that includes information identifying the first coordinate system. The modification unit 190 outputs the created robot operation mode setting command to the first communication unit 180-1. (Step S3-1) In the control device 110, the first communication unit 180-1 acquires the robot operation mode setting command output by the modification unit 190 and outputs the acquired robot operation mode setting command to the robot 2.

[0104] (Step S4-1) Robot 2 receives a robot operation mode setting command transmitted by the control device 110. Based on the information that identifies the first coordinate system included in the received robot operation mode setting command, Robot 2 sets itself to the first coordinate system. (Step S5-1) Robot 2 creates a robot operation mode setting response that includes information identifying that it has been set to the first coordinate system. Robot 2 transmits the created robot operation mode setting response to the control device 110. (Step S6-1) In the control device 110, the first communication unit 180-1 receives the robot operation mode setting response transmitted by the robot 2. The modification unit 190 acquires the robot operation mode setting response transmitted by the first communication unit 180-1. The modification unit 190 acquires information that identifies the setting to the first coordinate system, which is included in the acquired robot operation mode setting response. Based on the acquired information that identifies the setting to the first coordinate system, the modification unit 190 determines whether it matches the specified operation mode. If it is determined that it does not match, the process returns to step S2-1. If it is determined that it matches, the process of setting the coordinates is terminated.

[0105] Figure 13 shows an example 2 of the operation of the robot control system according to this embodiment. Referring to Figure 13, the process of changing the position of the robot 2 in the robot control system 1 will be described. This process may be performed following the process of setting the coordinate system in the robot control system 1. (Step S1-2) The control device 110 turns on the robot operation start flag. The robot 2 is notified that the robot operation start flag has been turned on. (Step S2-2) Robot 2 is notified that the robot operation start flag has been turned on. Robot 2 starts operating the robot program. (Step S3-2) Robot 2 turns on the "Robot in operation" flag. The control device 110 is notified that the "Robot in operation" flag has been turned on. (Step S4-2) In the modification device 120, the touch sensor TS1 or touch sensor TS2 determines whether the user has made contact with the first part P1 (first part P1-1, first part P1-21, first part P1-22). If it is determined that there is no contact, the device returns to step S4-2; if it is determined that there is contact, the device proceeds to step S5-2. (Step S5-2) In the modification device 120, the touch sensor TS1 determines whether the user has made contact with the first part P1-1. If it is determined that the user has made contact with the first part P1-1, the device proceeds to step S6-2. If it is determined that the user has not made contact (if the touch sensor TS2 determines that the user has made contact with the first part P1-21 or the first part P1-22), the device proceeds to step S7-2.

[0106] (Step S6-2) In the modification device 120, the force sensor 150 detects that the user has made contact with the first part P1-1 via the touch sensor TS1, and then detects that the user has moved the joystick ST in the X-axis direction by applying a force Fx to the joystick ST, or that the user has moved the joystick ST in the Y-axis direction by applying a force Fy to the joystick ST. The input unit 130 acquires information that identifies the user moving the joystick ST in the X-axis direction or the user moving the joystick ST in the Y-axis direction as detected by the force sensor 150. (Step S7-2) In the modification device 120, the force sensor 150 detects that the user has made contact with the first part P1-21 or the first part P1-22 via the touch sensor TS2, and then detects that the user has moved the joystick ST in the Z-axis direction by applying a force Fz to the joystick ST. The input unit 130 acquires information that identifies the user's movement of the joystick ST in the Z-axis direction as detected by the force sensor 150. (Step S8-2) In the change device 120, the derivation unit 165 derives either the amount of change (movement) in the X-axis direction, the amount of change (movement) in the Y-axis direction, or the amount of change (movement) in the Z-axis direction. The change instruction unit 170 creates a change instruction signal that includes information specifying that the robot 2 should be moved in either the X-axis direction, the Y-axis direction, or the Z-axis direction by the amount of change derived by the derivation unit 165, in position change mode. (Step S9-2) In the modification device 120, the modification instruction unit 170 outputs the created modification instruction signal to the communication unit 160. The communication unit 160 acquires the modification instruction signal output by the modification instruction unit 170 and transmits the acquired modification instruction signal to the control device 110. (Step S10-2) In the control device 110, the second communication unit 180-2 receives the change instruction signal transmitted by the change device 120.

[0107] (Step S11-2) Robot 2 acquires its own position information. (Step S12-2) Robot 2 transmits its current coordinate data, including the acquired position information of Robot 2, to the control device 110. (Step S13-2) In the control device 110, the first communication unit 180-1 receives the current coordinate data transmitted by the robot 2. (Step S14-2) In the control device 110, the position information acquisition unit 194 acquires position information included in the current coordinate data received by the first communication unit 180-1. The modification unit 190 acquires the modification instruction signal received by the second communication unit 180-2. The output unit 198 calculates the target coordinates to move the robot 2 and the speed at which the robot 2's position will change, based on the information that identifies the robot 2 to be moved by a certain amount in either the X-axis, Y-axis, or Z-axis direction, as well as the position information, which is included in the acquired change instruction signal. The output unit 198 outputs command limit values, such as information that identifies the speed at which the robot 2's position will change, to the change unit 190. (Step S15-2) In the control device 110, the modification unit 190 acquires the position information acquired by the position information acquisition unit 194. The modification unit 190 acquires the modification instruction signal received by the second communication unit 180-2. The modification unit 190 acquires information that identifies the speed at which the position of the robot 2 is changed, which is output by the output unit 198. The modification unit 190 acquires the speed limit value when changing the position. If the acquired change instruction signal contains information that specifies a change in the position of robot 2, the change unit 190 creates a control signal to change the position of robot 2 based on the acquired posture information, the change instruction signal, and information that specifies the speed at which the posture of robot 2 is changed. The change unit 190 outputs the created control signal to the first communication unit 180-1. The first communication unit 180-1 acquires the control signal output by the change unit 190 and transmits the acquired control signal to robot 2.

[0108] (Step S16-2) Robot 2 receives a control signal transmitted by control device 110. Robot 2 moves based on the coordinate calculation result and information that identifies the speed at which the position changes, which are included in the received control signal. (Step S17-2) In the change device 120, the input unit 130 determines whether or not an operation termination command has been received. If an operation termination command has not been received, the process proceeds to step S4-2. (Step S18-2) In the change device 120, the change instruction unit 170 acquires the operation termination command acquired by the input unit 130. The change instruction unit 170 outputs the acquired operation termination command to the communication unit 160. The communication unit 160 acquires the operation termination command output by the change instruction unit 170 and transmits the acquired operation termination command to the control device 110. (Step S19-2) In the control device 110, the second communication unit 180-2 receives the operation termination command transmitted by the modification device 120. The modification unit 190 creates an operation command flag that includes the operation termination command received by the second communication unit 180-2. (Step S20-2) In the control device 110, the modification unit 190 outputs the created operation command flag to the first communication unit 180-1. The first communication unit 180-1 acquires the operation command flag output by the modification unit 190 and transmits the acquired operation command flag to the robot 2.

[0109] (Step S21-2) Robot 2 receives the operation command flag transmitted by the control device 110. Based on the received operation command flag, Robot 2 determines whether the operation end flag is on or off. If the operation end flag is not on, the process returns to step 11-2; if the operation end flag is on, the process ends. (Step S22-2) In the control device 110, the modification unit 190 determines whether or not to terminate the operation. If the operation is not to be terminated, the process returns to step S13-2; if the operation is to be terminated, the process ends. In Example 2 of the operation of the robot control system 1 shown in Figure 13, steps S4-2 to S10-2 and steps S11-2 to S13-2 may be executed simultaneously. Alternatively, steps S11-2 to S13-2 may be executed periodically.

[0110] Figure 14 shows an example 3 of the operation of the robot control system according to this embodiment. Referring to Figure 14, the process of changing the posture of the robot 2 in the robot control system 1 will be described. This process may be performed following the process of setting the coordinate system in the robot control system 1. Steps S1-3 to S3-3 can be modified by applying steps S1-2 to S3-2 in Figure 13. (Step S4-3) In the modification device 120, the touch sensor TS3 determines whether the user has made contact with the second part P2. If it is determined that there has been no contact, the process returns to step S4-3; if it is determined that there has been contact, the process proceeds to step S5-3. (Step S5-3) In the modification device 120, the force sensor 150 detects, after the touch sensor TS3 detects that the user has made contact with the second part P2, that the user has rotated the joystick ST around the X-axis by applying a force Mx to the joystick ST, that the user has rotated the joystick ST around the Y-axis by applying a force My to the joystick ST, or that the user has rotated the joystick ST around the Z-axis by applying a force Mz to the joystick ST. The input unit 130 acquires one of the following: information that identifies that the user has rotated the joystick ST around the X-axis, information that identifies that the joystick ST has rotated around the Y-axis, or information that identifies that the joystick ST has rotated around the Z-axis, as detected by the force sensor 150.

[0111] (Step S6-3) In the change device 120, the derivation unit 165 derives either the amount of change (movement) around the X-axis, the amount of change (movement) around the Y-axis, or the amount of change (movement) around the Z-axis. The change instruction unit 170 creates a change instruction signal that includes information specifying that the robot 2 should be moved by the derived amount around either the X-axis, Y-axis, or Z-axis in the attitude change mode. (Step S7-3) In the modification device 120, the modification instruction unit 170 outputs the created modification instruction signal to the communication unit 160. The communication unit 160 acquires the modification instruction signal output by the modification instruction unit 170 and transmits the acquired modification instruction signal to the control device 110. (Step S8-3) In the control device 110, the second communication unit 180-2 receives the change instruction signal transmitted by the change device 120. (Step S9-3) Robot 2 acquires its own posture. (Step S10-3) Robot 2 transmits its current coordinate data, which includes information identifying the posture of Robot 2, to the control device 110.

[0112] (Step S11-3) In the control device 110, the first communication unit 180-1 receives the current coordinate data transmitted by the robot 2. (Step S12-3) In the control device 110, the modification unit 190 acquires attitude information received by the first communication unit 180-1. The modification unit 190 acquires a change instruction signal received by the second communication unit 180-2. Based on the information included in the acquired change instruction signal, which specifies that the robot 2 should be moved by a change amount around either the X-axis, Y-axis, or Z-axis, and the information that specifies the attitude, the modification unit 190 calculates the coordinates to move the robot 2. (Step S13-3) In the control device 110, the attitude information acquisition unit 192 acquires attitude information included in the current coordinate data received by the first communication unit 180-1. The attitude limit value acquisition unit 196 acquires the limit value (command limit value) of the attitude of the robot 2 to be changed by the modification unit 190 from the storage unit 200. The attitude limit value acquisition unit 196 acquires the attitude limit value based on the attitude of the robot 2. The output unit 198 derives the speed at which the attitude of the robot 2 is changed by the modification unit 190 based on predetermined information. The output unit 198 outputs the command limit value, such as information that identifies the speed at which the derived attitude of the robot 2 is changed, to the modification unit 190. The modification unit 190 acquires attitude information from the attitude information acquisition unit 192. The modification unit 190 acquires the change instruction signal received by the second communication unit 180-2. The modification unit 190 acquires information that identifies the speed at which the attitude of the robot 2 is changed, which is output by the output unit 198. The modification unit 190 acquires the attitude limit value output by the attitude limit value acquisition unit 196. If the acquired change instruction signal contains information that specifies a change in the posture of robot 2, the change unit 190 creates a control signal to change the posture of robot 2 based on the acquired posture information, the change instruction signal, information that specifies the speed at which the posture of robot 2 is changed, the posture limit value, and the coordinate calculation result. The change unit 190 outputs the created control information to the first communication unit 180-1. The first communication unit 180-1 acquires the control information output by the change unit 190 and transmits the acquired control information to robot 2.

[0113] (Step S14-3) Robot 2 receives control information transmitted by control device 110. Robot 2 moves based on the coordinate calculation results and information that specifies the speed at which the position changes, which are included in the received control information. (Step S15-3) In the change device 120, the input unit 130 determines whether or not an operation termination command has been received. If an operation termination command has not been received, the process proceeds to step S4-3. Steps S16-3 to S20-3 can be explained by applying steps S18-2 to S22-2 in Figure 13, so their explanation is omitted here. In Example 3 of the operation of the robot control system 1 shown in Figure 14, steps S4-3 to S8-3 and steps S9-3 to S11-3 may be executed simultaneously. Alternatively, steps S9-3 to S11-3 may be executed periodically.

[0114] In the embodiment described above, the selection unit 140 of the changing device 120 selected a position change mode when the user touched the first part P1 and selected a posture change mode when the user touched the second part P2, but the invention is not limited to this example. For example, in the changing device 120, the operation mode selected by the selection unit 140 when the user touched the first part P1 may be set to the position change mode, and the operation mode selected by the selection unit 140 when the user touched the second part P2 may be set to the posture change mode. Alternatively, the changing device 120 may be configured such that the operating mode selected by the selection unit 140 when the user touches the first part P1 is set to the attitude change mode, and the operating mode selected by the selection unit 140 when the user touches the second part P2 is set to the position change mode. Furthermore, the change device 120 may also be configured to notify the user of the operating mode selected by the selection unit 140. Figure 15 shows another example of a modification device included in the robot control system according to this embodiment. In the example shown in Figure 15, the modification device 120 further comprises an input unit 130 and a setting unit 155. The setting unit 155 sets the operation mode selected by the selection unit 140 to the position change mode when the user touches the first part P1, and sets the operation mode selected by the selection unit 140 to the attitude change mode when the user touches the second part P2. Alternatively, the setting unit 155 sets the operation mode selected by the selection unit 140 to the attitude change mode when the user touches the first part P1, and sets the operation mode selected by the selection unit 140 to the position change mode when the user touches the second part P2. The change device 120 also includes a notification unit 175. The notification unit 175 notifies the user of the operating mode selected by the selection unit 140. The notification to the user may be made by voice or via a display unit (not shown).

[0115] In the embodiments described above, the case in which the position and orientation of the robot 2 are changed was explained, but the system is not limited to this example. For example, the configuration may be such that either the position or orientation of the robot 2 is changed. In the embodiment described above, the change instruction unit 170 may suppress instructions to change the posture of the robot 2 when a position change mode is selected by the selection unit 140 and operation information to change posture is input by the input unit 130. Alternatively, the change instruction unit 170 may suppress instructions to change the position of the robot 2 when a posture change mode is selected by the selection unit 140 and operation information to change position is input by the input unit 130. In the embodiment described above, the output unit 165 and the change instruction unit 170 may be provided in the control device 110 instead of the change device 120. In this case, in the change device 120, the communication unit 160 transmits to the control device 110 information that identifies that the user detected by the touch sensor TS1 has touched the first part P1-1, information that identifies that the user detected by the touch sensor TS2 has touched the first part P1-21 and information that identifies that the user has touched the first part P1-22, and force information that the user has applied to the joystick ST or base PD as detected by the force sensor 150. In the embodiments described above, the case in which the posture or position of robot 2 is changed by one of the following: normal speed, low speed, very slow speed, or stopped, was explained, but the invention is not limited to this example. For example, the posture or position of robot 2 may be changed by one of two to three types of speeds, or by one of five or more types of speeds. Furthermore, the number of types of speeds at which the posture of robot 2 is changed may be different from the number of types of speeds at which the position of robot 2 is changed.

[0116] According to the robot control system 1 of this embodiment, the control system 100 controls a robot 2 that performs work on an object. The control system 100 includes a change unit 190 that changes the posture of the robot 2, a posture information acquisition unit 192 that acquires posture information indicating the posture of the robot 2, a posture limit value acquisition unit 196 that acquires the limit value of the posture changed by the change unit 190, and an output unit 198 that outputs the speed at which the posture of the robot 2 is changed by the change unit 190 based on predetermined information. The predetermined information includes posture information acquired by the posture information acquisition unit 192 and limit values ​​acquired by the posture limit value acquisition unit 196. By configuring it in this way, the control system 100 can output the speed at which the robot 2's posture changes, based on the posture information and limit values ​​included in the predetermined information. Therefore, the posture of the robot 2 can be changed based on the outputted speed at which the robot 2's posture changes. This reduces the impact load caused by contact while the robot 2 is moving at an unnecessarily high speed, and also reduces the excessive load applied by not stopping after contact.

[0117] The control system 100 includes a modification unit 190 that changes the posture of the robot 2 such that a predetermined point of the robot traces an arc centered on a central point, and the predetermined information includes center point position information relating to the position of the central point. By configuring it in this way, the control system 100 can output the speed at which the posture of the robot 2 is changed based on the center point position information related to the position of the center point included in the predetermined information. Therefore, based on the speed at which the posture of the robot 2 is changed, the posture of the robot 2 can be changed so that a predetermined point of the robot 2 traces an arc centered on the center point.

[0118] The control system 100 includes center point position information, which indicates whether or not the center point is located on the side of the object relative to the tip of the robot 2. By configuring it in this way, the control system 100 can output the speed at which the posture of the robot 2 is changed based on information indicating whether or not the center point, which is included in the predetermined information, is located on the side of the object from the tip of the robot 2. Based on the output speed at which the posture of the robot 2 is changed, the posture of the robot 2 can be changed so that a predetermined point of the robot 2 traces an arc centered on the center point.

[0119] The control system 100 further includes a position information acquisition unit 194 that acquires position information indicating the position of the robot 2. The modification unit 190 changes the position of the robot 2, and the output unit 198 outputs the speed at which the position is changed by the modification unit 190 based on predetermined information, the predetermined information includes position information acquired by the position information acquisition unit 194. By configuring it in this way, the control system 100 can output the speed at which the position of the robot 2 is changed based on the position information included in the predetermined information, and can change the position of the robot 2 based on the output speed at which the position of the robot 2 is changed.

[0120] In the control system 100, the speed at which the output unit 198 outputs a speed at which the position is changed by the position change unit 190 slows down when the position indicated by the position information acquired by the position information acquisition unit 194 moves out of a predetermined range including the object. By configuring it in this way, the control system 100 can output the speed at which the robot 2's position changes, specifically the speed at which the position indicated by the position information acquired by the position information acquisition unit 194 slows down when it moves outside a predetermined range including an object. Therefore, the robot 2's position can be changed based on the outputted speed at which its position changes.

[0121] The control system 100 further includes a distance information acquisition unit that acquires distance information indicating the distance from an object to the robot 2, a modification unit 190 that changes the position of the robot 2, and an output unit 198 that outputs the speed at which the position is changed by the modification unit 190, based on predetermined information, the predetermined information including distance information acquired by the distance information acquisition unit. By configuring it in this way, the control system 100 can output the speed at which the position of the robot 2 is changed based on distance information indicating the distance from an object included in predetermined information to the robot 2, and can change the position of the robot 2 based on the output speed at which the position of the robot 2 is changed.

[0122] In the control system 100, the speed at which the position is changed by the position change unit 190, which is output by the output unit 198, slows down when the distance indicated by the distance information acquired by the distance information acquisition unit falls below a predetermined distance. By configuring it in this way, the control system 100 can output a speed at which the robot 2's position changes, which slows down when the distance indicated by the distance information acquired by the distance information acquisition unit falls below a predetermined distance. Therefore, the robot 2's position can be changed based on the output speed at which the robot 2's position changes.

[0123] (Variation 1) The robot control system 1a according to the first modified embodiment can be adapted to Figure 1. The robot control system 1a according to the first modified embodiment comprises a robot 2 and a control system 100a. The control system 100a comprises a control device 110a and a change device 120a. The change device 120a is an input device that receives user commands for the robot 2. Based on the received commands, the change device 120a creates change instruction signals to change the position and orientation of the robot 2. The change device 120a outputs the created change instruction signals to the control device 110a.

[0124] Specifically, the modification device 120a includes an input unit where the user inputs operation information to the robot 2. Based on the part of the input unit that the user has touched, the modification device 120a selects one of the following operation modes: a position change mode, which changes the position of the robot 2; a posture change mode, which changes the posture of the robot 2; or a position and posture change mode, which changes both the position and posture of the robot 2. The change device 120a generates a change instruction signal to instruct the robot 2 to change its position when the position change mode is selected, generates a change instruction signal to instruct the robot 2 to change its posture when the posture change mode is selected, and generates a change instruction signal to instruct the robot 2 to change its position or posture when the position posture change mode is selected. The change device 120a is connected to the control device 110a via a cable (not shown) in a communicative manner. Wired communication via the cable is performed using standards such as Ethernet® or USB. Alternatively, the change device 120a and the control device 110a may be connected by wireless communication using a communication standard such as Wi-Fi®.

[0125] The control device 110a controls arm A based on force detection information. An example of the force detection unit FD may be a sensor that detects values ​​indicating the magnitude of force or moment applied to a torque sensor or the like. The control device 110a operates the robot 2 by transmitting control signals to it. This allows the control device 110a to cause the robot 2 to perform a predetermined task. Specifically, the control device 110a creates control signals to change either the position or orientation of the robot 2, or both, based on the change instruction signals output by the change device 120a. The control device 110a outputs the created control signals to the robot 2. Note that the control device 110a may be built into the robot 2 instead of being installed externally.

[0126] Figure 16 shows an example of a control device and a modification device included in a robot control system according to a modified example 1 of the embodiment. (Control device 110a) The control device 110a includes a first communication unit 180-1, a second communication unit 180-2, a modification unit 190a, an attitude information acquisition unit 192, a position information acquisition unit 194, a reaction force information acquisition unit 195a, an attitude limit value acquisition unit 196a, a distance information acquisition unit 197, an output unit 198a, a storage unit 200, a display control unit 202, an angle information acquisition unit 203a, and a movable part distance information acquisition unit 204a. The first communication unit 180-1 transmits the control signal output by the modification unit 190a to the robot 2. Specifically, the first communication unit 180-1 transmits the control signal output by the modification unit 190a to at least one of the multiple actuators provided by the manipulator M. The first communication unit 180-1 receives the current coordinate data transmitted by the robot 2. The coordinate data is information that associates position information, attitude information, and reaction force information. Here, posture information includes angle information indicating the angles of the joints of robot 2, and distance information between movable parts indicating the distances between multiple movable parts that make up robot 2. Reaction force information includes translational force information indicating the translational force that robot 2 receives from an object (workpiece), and couple force information indicating the couple force generated on robot 2 when robot 2 receives a force from an object. For example, one example of reaction force information is the force sensor value, which is acquired by the force detection unit of robot 2. The following explanation will continue with an example where the reaction force information is the force sensor value. The second communication unit 180-2 receives the change instruction signal output by the change device 120a.

[0127] The reaction force information acquisition unit 195a acquires reaction force information included in the current coordinate data received by the first communication unit 180-1. The angle information acquisition unit 203a acquires angle information indicating the angles of the robot 2's joints, which is included in the current coordinate data received by the first communication unit 180-1. The movable part distance information acquisition unit 204a acquires movable part distance information, which indicates the distance between multiple movable parts that make up the robot 2, included in the current coordinate data received by the first communication unit 180-1. The posture limit value acquisition unit 196a acquires the posture limit value (command limit value) of the robot 2, which is changed by the modification unit 190a, from the storage unit 200. The attitude limit value acquisition unit 196a acquires reaction force information from the reaction force information acquisition unit 195a and acquires attitude limit values ​​based on the acquired reaction force information. For example, the attitude limit value acquisition unit 196a determines, based on the reaction force information, whether the reaction force falls into the low-speed range, the very-low-speed range, or the stopping range, and acquires attitude limit values ​​based on the determination result. The posture limit value acquisition unit 196a acquires angle information indicating the angles of the robot 2's joints from the angle information acquisition unit 203a, and acquires posture limit values ​​based on the acquired angle information. For example, the posture limit value acquisition unit 196a determines, based on the angle information, whether the angle falls into the low-speed range, the very-low-speed range, or the stop range, and acquires posture limit values ​​based on the determination result. The posture limit value acquisition unit 196a acquires inter-movable part distance information, which indicates the distance between multiple movable parts that make up the robot 2, from the inter-movable part distance information acquisition unit 204a, and acquires posture limit values ​​based on the acquired inter-movable part distance information. For example, the posture limit value acquisition unit 196a determines whether the inter-movable part distance falls into the low-speed range, the very-low-speed range, or the stop range based on the inter-movable part distance information, and acquires posture limit values ​​based on the determination result. The output unit 198a derives the speed at which either or both of the posture and position of the robot 2 are changed by the modification unit 190a, based on predetermined information. The output unit 198a outputs information to the modification unit 190a that identifies the speed at which either or both of the posture and position of the robot 2 are changed. Here, the speed at which either or both of the posture and position of the robot 2 are changed is the speed of movement (operation speed) when either or both of the posture and position of the robot 2 are changed. An example of predetermined information includes reaction force information acquired by the reaction force information acquisition unit 195a, angle information indicating the angles of the joints of the robot 2 acquired by the angle information acquisition unit 203a, distance information between movable parts indicating the distances between multiple movable parts constituting the robot 2 acquired by the distance between movable parts information acquisition unit 204a, and the limit value of the posture of the robot 2 acquired by the posture limit value acquisition unit 196a.

[0128] Figure 17A shows an example of the operation of a robot control system according to a modified example 1 of the embodiment. In Figure 17A, the operating direction (operation information) (X, Y, Z) of the robot 2 is shown in the robot control system 1a. The robot control system 1a is configured to set a range of force sensor values ​​for setting the operating speed of the robot 2. For example, the robot control system 1a sets the speed to low if the force sensor value corresponds to contact, to very slow if the force sensor value corresponds to soft contact, and to stop or reverse if the force sensor value corresponds to rigid contact. In other words, one example of the robot control system 1a has three speed settings. The output unit 198a sets the speed at which the robot 2's position changes to the normal speed if the force sensor value does not correspond to contact, soft contact, rigid contact, or contact. The output unit 198a holds (stops) if the force sensor value corresponds to rigid contact. The output unit 198a temporarily releases the hold if it detects that the hold release button (not shown) has been pressed. The output unit 198a determines the speed at which the position of robot 2 changes in relation to the sum of the thrust (Fx, Fy, Fz) and the moment load (My / k, Mx / k) (Fx+My / k, Fy+Mx / k, Fz), since the tool generates moments (My / k, Mx / k) in the X-axis and Y-axis directions.

[0129] Figure 17B shows an example of the operation of a robot control system according to Modification 1 of the Embodiment. In Figure 17B, the operating direction (operation information) (+A) of the robot 2 is shown in the robot control system 1a. In the robot control system 1a, the tool is subjected to an external force when the posture of the robot 2 is changed. Here, we will explain the case where the pivot point at which the tool receives the external force is on the flange side of the robot 2 (pivot point (-)) rather than the tip of the tool. The output unit 198a switches the limiting direction according to the position of the pivot point. If the pivot point where the tool receives an external force is on the flange side of the robot 2 rather than the tip of the tool, the speed at which the position of the robot 2 is changed is determined so that the force received (+Fy) and the commanded limiting direction (+A) are different. Figure 17C shows an example of the operation of a robot control system according to Modification 1 of the Embodiment. In Figure 17C, the operating direction information (+A) of the robot 2 is shown in the robot control system 1a. In the robot control system 1a, the tool is subjected to an external force (-Fy) when the posture of the robot 2 is changed. Here, we will explain the case where the pivot point at which the tool receives the external force is on the workpiece WO side (pivot point (+)) of the tip of the tool. The output unit 198a switches the limiting direction according to the position of the pivot point. If the pivot point where the tool receives an external force is on the tool side of the tool tip, the speed at which the position of robot 2 is changed is determined so that the force received (-Fy) and the commanded limiting direction (+A) are different.

[0130] Figure 17D is a diagram showing an example of the operation of a robot control system according to a modified example 1 of the embodiment. Referring to Figure 17D, the process by which the output unit 198a derives the speed at which the posture of the robot 2 is changed by the modification unit 190a based on predetermined information will be described. Figure 17D is a view of the robot control system from the negative direction of the Y-axis to the positive direction of the Y-axis. A part of the robot 2 is shown in Figure 17D. The robot control system 1a is configured with a motion speed setting angle OA, which is an angle used to set the operating speed of the robot 2. An example of the motion speed setting angle OA is the J5 axis angle in the joint coordinate system. The explanation continues with the case where the J5 axis angle in the joint coordinate system is applied as an example of the motion speed setting angle OA. For example, the J5 axis angle is defined as 0 degrees when the end effector E is parallel to the X axis, with negative angles in the clockwise direction and positive angles in the counterclockwise direction. The robot control system 1a has three operating speed setting angles: a first operating speed setting angle OA01, a second operating speed setting angle OA02, and a third operating speed setting angle OA03. For example, the third operating speed setting angle OA3 is set to the case when the J5 axis angle is 0 degrees, and the first operating speed setting angle OA1 and the second operating speed setting angle OA2 are angles where the J5 axis angle is positive, with the first operating speed setting angle OA1 being greater than the second operating speed setting angle OA2. If the operating speed setting angle OA included in the acquired posture information falls within the range from the second operating speed setting angle OA02 to the first operating speed setting angle OA01, the output unit 198a sets the speed at which the posture of the robot 2 is changed to a slower speed than the normal speed, according to the magnitude of the operating speed setting angle OA. If the operating speed setting angle OA included in the acquired posture information falls within the range from the third operating speed setting angle OA03 to the second operating speed setting angle OA02, the output unit 198a sets the speed at which the posture of the robot 2 is changed to a very slow speed, slower than a low speed. If the operating speed setting angle OA included in the acquired posture information is less than the third operating speed setting angle OA03, the output unit 198a stops the robot 2 without changing its posture. The posture of the robot 2 where two links connected by a joint are in a straight line is called a singularity.

[0131] Figure 17E shows an example of the operation of a robot control system according to a modified example 1 of the embodiment. Referring to Figure 17E, the process by which the output unit 198a derives the speed at which the posture of the robot 2 is changed by the modification unit 190a based on predetermined information will be described. Figure 17E is a view of the robot control system from the positive Z-axis direction to the negative Z-axis direction. A part of the robot 2 is shown in Figure 17E. The robot control system 1a is configured with an operating speed setting angle OA, which is an angle used to set the operating speed of the robot 2. An example of an operating speed setting angle OA is the J3 axis angle and the J5 axis angle. As an example of an operating speed setting angle OA, we will continue the explanation by applying the J3 axis angle and the J5 axis angle in the joint coordinate system. For example, the J3 axis angle is defined as 0 degrees when the end effector E is parallel to the X axis, with negative angles for clockwise rotations and positive angles for counterclockwise rotations. For example, the robot control system 1a is configured with a fourth operating speed setting angle OA04, a fifth operating speed setting angle OA05, and a sixth operating speed setting angle OA06. The fourth operating speed setting angle OA04, the fifth operating speed setting angle OA05, and the sixth operating speed setting angle OA06 are angles in which the J5 axis angle or the J3 axis angle is positive. The fifth operating speed setting angle OA05 is greater than the fourth operating speed setting angle OA04, and the sixth operating speed setting angle OA06 is greater than the fifth operating speed setting angle OA05. If the operating speed setting angle OA (J5 axis angle or J3 axis angle) included in the acquired posture information falls within the range from the 5th operating speed setting angle OA05 to the 4th operating speed setting angle OA04, the output unit 198a sets the speed at which the posture of the robot 2 is changed to a slower speed than the normal speed, depending on the magnitude of the angle. If the operating speed setting angle OA (J5 axis angle or J3 axis angle) included in the acquired posture information falls within the range from the 6th operating speed setting angle OA06 to the 5th operating speed setting angle OA05, the output unit 198a sets the speed at which the posture of the robot 2 is changed to a very slow speed, even slower than the low speed, depending on the magnitude of the angle. If the operating speed setting angle OA (J5 axis angle or J3 axis angle) included in the acquired posture information exceeds the 6th operating speed setting angle OA06, the output unit 198a stops the robot 2 without changing its posture. A point of interference is defined as a posture in which the links of robot 2 may come into contact with each other. The output unit 198a determines the speed at which the robot 2's position is changed by the modification unit 190a, based on predetermined information. For example, the output unit 198a determines the speed at which the robot 2's position slows down when the position indicated by the position information moves outside a predetermined range that includes the object (workpiece). The output unit 198a outputs command limit values, such as information that determines the speed at which the robot 2's position is changed, to the modification unit 190a. Here, the speed at which the robot 2's position is changed refers to the speed of movement (operating speed) when the robot 2's position is changed. An example of predetermined information is position information acquired by the position information acquisition unit 194.

[0132] Figure 18A is a diagram showing an example of the operation of a robot control system according to Modification 1 of this embodiment. Figure 18A shows an example of the process of creating a control signal to be transmitted to the robot 2. Here, as an example, the process for one axis is shown. The modification unit 190a outputs the operation command amount (%) based on the force sensor value (%) (IN), the X-axis data (force sensor value (%)) (X_in(0...9)), and the Y-axis data (force sensor value (%)) (Y_in(0...9)). For example, as shown on the right side of Figure 18A, it outputs an operation command amount that increases as the X-axis data and Y-axis data each increase. An example of an operation command quantity is information for limiting the operating speed. For example, the speed may be limited by a percentage of the normal speed indicated by the operation command quantity. The output unit 198a outputs the created control signal to the modification unit 190a. Figure 18B is a diagram showing an example of the operation of a robot control system according to a modified example 1 of the embodiment. Figure 18B shows an example of the process for creating a control signal to be transmitted to the robot 2. Here, as an example, it is shown for one axis. The modification unit 190a outputs a command limit value (%) for the force based on the robot load (N) (IN), and for the force, either the low speed range (N), the very slow speed range (N), or the stop range (N), and for the force, either the low speed limit value (%), the very slow speed limit value (%), or the stop limit value (%). For example, as shown on the right side of Figure 18B, it outputs a command limit value that decreases as the force increases. An example of a command limit value is information for limiting the operating speed. For example, the speed may be limited by a percentage indicated by the command limit value relative to the normal speed. The output unit 198a outputs the created control signal to the modification unit 190a.

[0133] The output unit 198a may, when it has obtained a speed determined based on the attitude information obtained by the attitude information acquisition unit 192 and the attitude limit value obtained by the attitude limit value acquisition unit 196a, and a speed determined based on the reaction force information obtained by the reaction force information acquisition unit 195a, select the slower of the two and output information specifying the selected speed to the modification unit 190a. The output unit 198a may output the speed at which the position is changed by the position change unit 190a based on both translational force information and couple force information, and may also output the speed at which the attitude is changed by the attitude change unit 190a based on the couple force information. The output unit 198a may, when it has obtained speeds determined based on position information acquired by the position information acquisition unit 194, speeds determined based on distance information acquired by the distance information acquisition unit 197, and speeds determined based on reaction force information acquired by the reaction force information acquisition unit 195a, select the slowest one from among them and output information identifying the selected speed to the modification unit 190a.

[0134] Figure 18C is a diagram showing an example of the operation of a robot control system according to Modification 1 of the Embodiment. Referring to Figure 18C, the process by which the output unit 198a derives the command limit value will be explained. Here, as an example, the process for one axis will be shown. In Figure 18C, "singularity" indicates the element being restricted, and it shows that a limit range from low speed to stop is provided so that it does not become a singularity of the robot 2. The modification unit 190a outputs a command limit value (%) for the singularity based on the attitude information (deg) (IN) of the robot 2, one of the low-speed range (deg) (LL), the very-speed range (deg) (ML), and the stop range (deg) (HL) of the robot 2, and one of the limit value at low speed (%) (LV), the limit value at very-speed (%) (MV), and the limit value at stop (%) (HV). For example, as shown on the right side of Figure 18C, the system outputs a command limit value that decreases as the posture of robot 2 moves to the low-speed range, the very-slow range, and the stopped range. An example of a command limit value is information for limiting the operating speed. For example, the speed may be limited by a percentage indicated by the command limit value relative to the normal speed. The output unit 198a outputs the created information for limiting the operating speed to the modification unit 190a. Figure 18D is a diagram showing an example of the operation of a robot control system according to Modification 1 of the Embodiment. Here, as an example, one axis is shown. In Figure 18D, "interference" indicates a limiting element, showing that a limiting range from low speed to stop is provided to prevent interference points of the robot 2. Note that an interference point represents the angle of the joint where the links of the robot 2 interfere with each other. The modification unit 190a outputs a command limiting value (%) for the interference point based on the posture information (deg) (IN) of the robot 2, one of the low-speed range (deg) (LL), the very-speed range (deg) (ML), and the stop range (deg) (HL) of the robot 2, and one of the limiting value at low speed (%) (LV), the limiting value at very-speed (%) (MV), and the limiting value at stop (%) (HV). For example, as shown on the right side of Figure 18D, the system outputs a command limit value that decreases as the posture of robot 2 moves to the low-speed range, the very-slow range, and the stopped range. An example of a command limit value is information for limiting the operating speed. For example, the speed may be limited by a percentage indicated by the command limit value relative to the normal speed. The output unit 198a outputs the created information for limiting the operating speed to the modification unit 190a.

[0135] The memory unit 200 stores, for example, information relating the force sensor value (%) of the robot 2 to the operation command amount (%), as shown on the right side of Figure 18A; information relating the reaction force information of the robot 2 to the command limit value (%), as shown on the right side of Figure 18B; information relating the posture or angle (deg) of the robot 2 to the command limit value (%) for singularities, as shown on the right side of Figure 18C; and information relating the posture or angle (deg) of the robot 2 to the command limit value (%) for interference points, as shown on the right side of Figure 18D. The modification unit 190a acquires reaction force information from the reaction force information acquisition unit 195a. The modification unit 190a acquires the translational force components (Fx, Fy, Fz) included in the acquired reaction force information. The modification unit 190a acquires the information for limiting the operating speed output by the output unit 198a. Based on the acquired reaction force information and the information for limiting the operating speed, the modification unit 190a creates a control signal for operating the robot 2. The modification unit 190a outputs the created control information to the first communication unit 180-1. The modification unit 190a acquires reaction force information from the reaction force information acquisition unit 195a. The modification unit 190a acquires the couple components (Mx, My, Mz) included in the acquired reaction force information. The modification unit 190a acquires the information for limiting the operating speed output by the output unit 198a. Based on the acquired reaction force information and the information for limiting the operating speed, the modification unit 190a creates a control signal for operating the robot 2. The modification unit 190a outputs the created control information to the first communication unit 180-1. The display control unit 202 displays information indicating the attitude speed and information indicating the position speed, which are required by the output unit 198a, on the display unit (not shown). The information indicating attitude speed includes either or both of the following: information indicating attitude speed determined by the output unit 198a based on attitude information acquired by the attitude information acquisition unit 192 and limit values ​​acquired by the attitude limit value acquisition unit 196a; and information indicating attitude speed determined by the output unit 198a based on reaction force information acquired by the reaction force information acquisition unit 195a. The information indicating the attitude speed, which the output unit 198a determines based on the attitude information acquired by the attitude information acquisition unit 192 and the limit value acquired by the attitude limit value acquisition unit 196a, may include first-direction attitude speed information indicating the speed at which the attitude is changed in the first direction by the attitude change unit 190a, and second-direction attitude speed information indicating the speed at which the attitude is changed in the second direction by the attitude change unit 190a. In this case, the display control unit 202 may display the first-direction attitude speed information together with the second-direction attitude speed information on the display unit. The information indicating the attitude speed, which the output unit 198a determines based on the reaction force information acquired by the reaction force information acquisition unit 195a, may include third-direction attitude speed information indicating the speed at which the attitude is changed in the third direction by the attitude change unit 190a, and fourth-direction attitude speed information indicating the speed at which the attitude is changed in the fourth direction by the attitude change unit 190a. In this case, the display control unit 202 may display the third-direction attitude speed information together with the fourth-direction attitude speed information on the display unit.

[0136] The position and speed information includes at least one of the following: position and speed information determined by the output unit 198a based on position information acquired by the position information acquisition unit 194; position and speed information determined by the output unit 198a based on distance information acquired by the distance information acquisition unit 197; and position and speed information determined by the output unit 198a based on reaction force information acquired by the reaction force information acquisition unit 195a. The display control unit 202 may display the information displayed on the display unit that corresponds to the slowest information selected and output by the output unit 198a in a discriminable manner. For example, the display control unit 202 may display the information of the slowest attitude speed selected and output by the output unit 198a from among multiple attitude speeds in a discriminable manner from the information of other attitude speeds. For example, the display control unit 202 may display the information of the slowest position speed selected and output by the output unit 198a from among multiple position speeds in a discriminable manner from the information of other position speeds. Figure 19 shows an example of the operation of a robot control system according to a modified example of the embodiment 1. Referring to Figure 19, an example of an image displayed by the display control unit 202 on the display unit (not shown) will be described. The display control unit 202 causes the display unit to display information indicating the attitude speed determined by the output unit 198a based on the attitude information acquired by the attitude information acquisition unit 192 and the limit value acquired by the attitude limit value acquisition unit 196a; information indicating the position speed determined by the output unit 198a based on the position information acquired by the position information acquisition unit 194; information indicating the position speed determined by the output unit 198a based on the distance information acquired by the distance information acquisition unit 197; information indicating the position speed determined by the output unit 198a based on the reaction force information acquired by the reaction force information acquisition unit 195a; and information indicating the attitude speed determined by the output unit 198a based on the reaction force information acquired by the reaction force information acquisition unit 195a. Furthermore, the display control unit 202 causes the display unit to display information indicating position speed based on angle information acquired by the angle information acquisition unit 203a, information indicating attitude speed based on angle information acquired by the angle information acquisition unit 203a, information indicating position speed based on distance information between movable parts acquired by the distance information acquisition unit 204a, and information indicating attitude speed based on distance information between movable parts acquired by the distance information acquisition unit 204a.

[0137] An example of information indicating the attitude speed determined by the output unit 198a based on attitude information and limit values ​​includes information obtained for four values: "position" (in the +A direction), "position" (in the -A direction), "position" (in the +B direction), and "position" (in the -B direction). "Position" (in the +A direction), "position" (in the -A direction), "position" (in the +B direction), and "position" (in the -B direction) define the elements of motion restriction. Here, "position" means "attitude," and for example, "position" (in the +A direction) indicates that motion in the +A direction is restricted by the "attitude limit value" in the A direction. The information indicating the attitude speed determined by the output unit 198a based on the attitude information acquired by the attitude information acquisition unit 192 and the limit values ​​acquired by the attitude limit value acquisition unit 196a includes first-direction attitude speed information indicating the speed at which the attitude is changed in the first direction by the attitude change unit 190a, and second-direction attitude speed information indicating the speed at which the attitude is changed in the second direction by the attitude change unit 190a. For example, the first direction is direction A and the second direction is direction B. The display control unit 202 displays the first directional attitude and speed information together with the second directional attitude and speed information on the display unit.

[0138] An example of information indicating the attitude speed determined by the output unit 198a based on reaction force information includes the results obtained for four values: "Force + Mx", "Force - Mx", "Force + My", and "Force - My". "Force + Mx", "Force - Mx", "Force + My", and "Force - My" define elements of motion limiting. For example, it indicates that motion in the +A direction is limited by the value of "- Mx". The information indicating the attitude speed determined by the output unit 198a based on the reaction force information acquired by the reaction force information acquisition unit 195a includes third-direction attitude speed information indicating the speed at which the attitude is changed in the third direction by the attitude change unit 190a, and fourth-direction attitude speed information indicating the speed at which the attitude is changed in the fourth direction by the attitude change unit 190a. The display control unit 202 displays the third directional attitude and speed information together with the fourth directional attitude and speed information on the display unit.

[0139] An example of the position and velocity information that the output unit 198a determines based on reaction force information includes the results for eight values: "Force +Fx", "Force -Fx", "Force +Fy", "Force -Fy", "Force +Mx", "Force -Mx", "Force +My", and "Force -My". "Force +Fx", "Force -Fx", "Force +Fy", "Force -Fy", "Force +Mx", "Force -Mx", "Force +My", and "Force -My" define elements of motion limiting. For example, it indicates that motion in the +X direction is limited by the values ​​of "+Fx" and "-My". The position and speed information determined by the output unit 198a based on the reaction force information acquired by the reaction force information acquisition unit 195a includes fifth-direction position and speed information indicating the speed at which the position is changed in the fifth direction by the position changing unit 190a, and sixth-direction position and speed information indicating the speed at which the position is changed in the sixth direction by the position changing unit 190a. The display control unit 202 displays the fifth directional position and speed information together with the sixth directional position and speed information on the display unit.

[0140] An example of positional speed information obtained by the output unit 198a based on distance information is not limited to information obtained for one opposing direction, but may also be information obtained for multiple directions. The position and speed information determined by the output unit 198a based on the distance information acquired by the distance information acquisition unit 197 includes seventh-direction position and speed information indicating the speed at which the position is changed in the seventh direction by the position change unit 190a, and eighth-direction position and speed information indicating the speed at which the position is changed in the eighth direction by the position change unit 190a. The display control unit 202 displays the position and speed information for the seventh direction together with the position and speed information for the eighth direction on the display unit.

[0141] An example of the position and speed information that the output unit 198a determines based on angle information includes the information obtained for five singular points: (+X direction), (-X direction), (+Y direction), (-Y direction), and (+Z direction). The (+X direction), (-X direction), (+Y direction), (-Y direction), and (+Z direction) singular points define elements of motion restriction. For example, motion in the +X direction is restricted as the value of the joint angle (J5 angle) approaches the singular point. The position speed information determined by the output unit 198a based on the angle information acquired by the angle information acquisition unit 203a includes ninth-direction position speed information indicating the speed at which the position is changed in the ninth direction by the position change unit 190a, and tenth-direction position speed information indicating the speed at which the position is changed in the tenth direction by the position change unit 190a. The display control unit 202 displays the position and speed information for the ninth direction together with the position and speed information for the tenth direction on the display unit.

[0142] An example of information indicating the attitude speed determined by the output unit 198a based on angle information is not limited to information obtained for one of the "singularities" (in the +B direction), but may also be information obtained for multiple directions. The "singularity" (in the +B direction) defines an element of motion restriction. Motion in the +B direction is restricted as the value of the joint angle (J5 angle) approaches the singularity. The information indicating the attitude speed determined by the output unit 198a based on the angle information acquired by the angle information acquisition unit 203a includes 11th direction attitude speed information indicating the speed at which the attitude is changed in the 11th direction by the attitude change unit 190a, and 12th direction attitude speed information indicating the speed at which the attitude is changed in the 12th direction by the attitude change unit 190a. The display control unit 202 causes the 11th directional attitude and speed information to be displayed on the display unit along with the 12th directional attitude and speed information.

[0143] An example of positional speed information determined by the output unit 198a based on the distance information between movable parts includes the information obtained for four factors: (-X direction) "J3 interference", (-X direction) "J5 interference", (-Z direction) "J3 interference", and (-Z direction) "J5 interference". (-X direction) "J3 interference", (-X direction) "J5 interference", (-Z direction) "J3 interference", and (-Z direction) "J5 interference" define elements of motion restriction. For example, motion in the -X direction is restricted as the joint angle (J3 angle and J5 angle) approaches the interference point. The position and speed information determined by the output unit 198a based on the distance information between movable parts acquired by the distance information acquisition unit 204a includes 13th direction position and speed information indicating the speed at which the position is changed in the 13th direction by the position change unit 190a, and 14th direction position and speed information indicating the speed at which the position is changed in the 14th direction by the position change unit 190a. The display control unit 202 causes the 13th directional position and speed information to be displayed on the display unit along with the 14th directional position and speed information.

[0144] An example of "information indicating attitude speed determined by the output unit 198a based on the distance information between movable parts" includes information obtained for two things: "J3 interference" (in the -B direction) and "J5 interference" (in the -B direction). The information obtained for "J3 interference" (in the -B direction) is an example of "15th direction attitude speed information," and the information obtained for "J5 interference" (in the -B direction) is an example of "16th direction attitude speed information." "J3 interference" (in the -B direction) and "J5 interference" (in the -B direction) define elements of motion restriction. For example, motion in the -B direction is restricted as the joint angle (J3 angle and J5 angle) approaches the interference point. The information indicating the attitude speed determined by the output unit 198a based on the distance information between movable parts acquired by the distance information acquisition unit 204a includes 15th direction attitude speed information indicating the speed at which the attitude is changed in the 15th direction by the attitude change unit 190a, and 16th direction attitude speed information indicating the speed at which the attitude is changed in the 16th direction by the attitude change unit 190a. The display control unit 202 causes the 15th directional attitude and speed information to be displayed on the display unit along with the 16th directional attitude and speed information.

[0145] Figures 20A to 20G show an example of the operation of a robot control system according to a modified example of the embodiment 1. Referring to Figures 20A to 20G, an example of an image displayed by the display control unit 202 on the display unit (not shown) will be described. As shown in Figure 20A, the display control unit 202 causes the display unit to display an input area for the user to input a first threshold value that the output unit 198a uses when determining the attitude speed based on the attitude information acquired by the attitude information acquisition unit 192 and the limit value acquired by the attitude limit value acquisition unit 196a. The first threshold includes a low-speed limiting zone, a very-low speed limiting zone, and a stop limiting zone for both the A+ and A- directions in order to set a limit in the A direction. The first threshold also includes a very-low speed limiting speed, a very-low speed limiting speed, and a stop limiting speed in order to set a limit in the A direction. The first threshold includes a low-speed limiting zone, a very-low-speed limiting zone, and a stop limiting zone for both the B+ and B- directions in order to set a limit in the B direction. The first threshold also includes a very-low-speed limiting speed, a very-low-speed limiting speed, and a stop limiting speed in order to set a limit in the B direction. The first threshold includes a low-speed limiting zone, a very-low speed limiting zone, and a stop limiting zone for both the C+ and C- directions in order to set a limit in the C direction. The first threshold also includes a very-low speed limiting speed, a very-low speed limiting speed, and a stop limiting speed in order to set a limit in the C direction.

[0146] As shown in Figure 20B, the display control unit 202 causes the display unit to display an input area for the user to input a second threshold value used by the output unit 198a when determining the position speed based on the position information acquired by the position information acquisition unit 194. The second threshold includes a low-speed limiting zone, a very-low-speed limiting zone, and a stop limiting zone for both the X+ and X- directions in order to set a limit in the X direction. Furthermore, the second threshold includes a low-speed limiting speed, a very-low-speed limiting speed, and a stop limiting speed in order to set a limit in the X direction. The second threshold includes a low-speed limiting zone, a very-low-speed limiting zone, and a stop limiting zone for both the Y+ and Y- directions in order to set a limit in the Y direction. Furthermore, the second threshold includes a low-speed limiting speed, a very-low-speed limiting speed, and a stop limiting speed in order to set a limit in the Y direction. The second threshold includes a low-speed limit zone, a very low-speed limit zone, and a stop limit zone for both the Z+ and Z- directions to set a limit in the Z direction. Furthermore, the second threshold includes a low-speed limit speed, a very low-speed limit speed, and a stop limit speed to set a limit in the Z direction.

[0147] As shown in Figure 20C, the display control unit 202 causes the display unit to display an input area for the user to input a third threshold value used by the output unit 198a when determining the position speed based on the distance information acquired by the distance information acquisition unit 197. The third threshold includes a low-speed limiting zone, a very-low-speed limiting zone, and a stop limiting zone for the opposing position in order to set limits in the X direction. The third threshold also includes a low-speed limiting speed, a very-low-speed limiting speed, and a stop limiting speed in order to set limits in the X direction. The third threshold includes a low-speed limiting zone, a very-low-speed limiting zone, and a stop limiting zone for the opposing position in order to set limits in the Y direction. Furthermore, the third threshold includes a low-speed limiting speed, a very-low-speed limiting speed, and a stop limiting speed in order to set limits in the Y direction. The third threshold includes a low-speed limit zone, a very low-speed limit zone, and a stop limit zone for the opposing position in order to set a limit in the Z direction. The third threshold also includes a low-speed limit speed, a very low-speed limit speed, and a stop limit speed in order to set a limit in the Z direction.

[0148] As shown in Figure 20D, the display control unit 202 causes the display unit to display an input area for the user to input a fourth threshold value used by the output unit 198a when determining the position and speed based on the reaction force information acquired by the reaction force information acquisition unit 195a. The fourth threshold includes X-direction translation force (Fx) ± flexible contact (low speed), X-direction translation force (Fx) ± contact (very slow speed), X-direction translation force (Fx) ± rigid contact (stop), and X-direction translation force (Fx) ± force control range to set limits in the X direction. The fourth threshold also includes low-speed movement command, very-slow movement command, and stop movement command to set limits in the X direction. The fourth threshold includes Y-direction translational force (Fy) ± soft contact (low speed), Y-direction translational force (Fy) ± contact (very slow speed), Y-direction translational force (Fy) ± rigid contact (stop), and Y-direction translational force (Fy) ± force control range to set a limit in the Y direction. The fourth threshold also includes a low-speed movement command, a very slow movement command, and a stop movement command to set a limit in the Y direction. The fourth threshold includes Z-direction translation force (Fz) ± soft contact (low speed), Z-direction translation force (Fz) ± contact (very slow speed), Z-direction translation force (Fz) ± rigid contact (stop), and Z-direction translation force (Fz) ± force control range to set a limit in the Z direction. The fourth threshold also includes a low-speed movement command, a very slow movement command, and a stop movement command to set a limit in the Z direction.

[0149] As shown in Figure 20E, the display control unit 202 causes the display unit to display an input area for the user to input a fifth threshold value, which is used by the output unit 198a when determining the attitude speed based on the reaction force information acquired by the reaction force information acquisition unit 195a. The fifth threshold includes A-direction couple (Mx) ± flexible contact (low speed), A-direction couple (Mx) ± contact (very slow speed), A-direction couple (Mx) ± rigid contact (stopped), and A-direction couple (Mx) ± force control range to set a limit in direction A. The fifth threshold also includes A-direction movement command (low speed), A-direction movement command (very slow speed), and A-direction movement command (stopped) to set a limit in direction A. The fifth threshold includes B-direction couple (My) ± flexible contact (low speed), B-direction couple (My) ± contact (very slow speed), B-direction couple (My) ± rigid contact (stopped), and B-direction couple (My) ± force control range to set a limit in the B direction. The fifth threshold also includes B-direction displacement command (low speed), B-direction displacement command (very slow speed), and B-direction displacement command (stopped) to set a limit in the B direction. The fifth threshold includes C-direction couple (Mz) ± flexible contact (low speed), C-direction couple (Mz) ± contact (very slow speed), C-direction couple (Mz) ± rigid contact (stopped), and C-direction couple (Mz) ± force control range to set a limit in the C direction. The fifth threshold also includes C-direction displacement command (low speed), C-direction displacement command (very slow speed), and C-direction displacement command (stopped) to set a limit in the C direction.

[0150] As shown in Figure 20F, the display control unit 202 causes the display unit to display an input area for the user to input a sixth threshold value, which is used by the output unit 198a when determining the position speed based on the angle information acquired by the angle information acquisition unit 203a. The sixth threshold includes a J5 axis low-speed limiting area, a J5 axis very-slow limiting area, and a J5 axis stop limiting area to set limits on the J5 axis. Furthermore, the sixth threshold includes a +X limiting speed (low), a +X limiting speed (very-slow), and a +X limiting speed (stop) to set limits on the X direction. Additionally, the sixth threshold includes ±Y limiting speeds (low), ±Y limiting speeds (very-slow), and ±Y limiting speeds (stop) to set limits on the Y direction. Furthermore, the sixth threshold includes +Z speed limit (low speed), +Z speed limit (very slow speed), and +Z speed limit (stop) to set limits in the Z direction. The display control unit 202 displays on the display unit an input area for the user to input a seventh threshold value, which is used by the output unit 198a when determining the attitude speed based on the angle information acquired by the angle information acquisition unit 203a. The seventh threshold includes a J5 axis low-speed limiting region, a J5 axis very-speed limiting region, and a J5 axis stop limiting region to set limits on the J5 axis. It is desirable that the J5 axis low-speed limiting region, J5 axis very-speed limiting region, and J5 axis stop limiting region in the seventh threshold are the same as the J5 axis low-speed limiting region, J5 axis very-speed limiting region, and J5 axis stop limiting region in the sixth threshold. In addition, the seventh threshold includes a -B limiting speed (low speed), a -B limiting speed (very-speed), and a -B limiting speed (stop) to set limits on the B direction.

[0151] As shown in Figure 20G, the display control unit 202 displays an input area on the display unit for the user to input an eighth threshold value used by the output unit 198a when determining the position speed based on the distance information between movable parts acquired by the distance information acquisition unit 204a. In the modified example 1, as an example, the distance at which interference occurs is determined based on the joint angle, so the distance between movable parts is defined by the joint angle (J3, J5 angle). The eighth threshold includes a J3 axis low-speed limiting area, a J3 axis very-speed limiting area, and a J3 axis stop limiting area to set limits for the J3 axis. The eighth threshold also includes a J5 axis low-speed limiting area, a J5 axis very-speed limiting area, and a J5 axis stop limiting area to set limits for the J5 axis. The eighth threshold includes -X speed limit (low speed), -X speed limit (very slow), and -X speed limit (stop) to set limits in the X direction. The eighth threshold also includes -Z speed limit (low speed), -Z speed limit (very slow), and -Z speed limit (stop) to set limits in the Z direction. The display control unit 202 causes the display unit to display an input area for the user to input a ninth threshold value, which is used by the output unit 198a when determining the attitude speed based on the distance information between movable parts acquired by the distance information acquisition unit 204a. The ninth threshold includes a J3 axis low-speed limiting area, a J3 axis very-speed limiting area, and a J3 axis stop limiting area to set limits for the J3 axis. It is desirable that the J3 axis low-speed limiting area, J3 axis very-speed limiting area, and J3 axis stop limiting area in the ninth threshold are the same as the J3 axis low-speed limiting area, J3 axis very-speed limiting area, and J3 axis stop limiting area in the eighth threshold. The ninth threshold also includes a J5 axis low-speed limiting area, a J5 axis very-speed limiting area, and a J5 axis stop limiting area to set limits for the J5 axis. It is desirable that the J5 axis low-speed limiting area, J5 axis very-speed limiting area, and J5 axis stop limiting area in the ninth threshold are the same as the J5 axis low-speed limiting area, J5 axis very-speed limiting area, and J5 axis stop limiting area in the eighth threshold. The ninth threshold also includes a +B limiting speed (low speed), a +B limiting speed (very-speed), and a +B limiting speed (stop) to set limits for the B direction. The modification unit 190a, the reaction force information acquisition unit 195a, the attitude limit value acquisition unit 196a, and the output unit 198a are realized, for example, by a hardware processor such as a CPU executing a computer program (software) stored in the memory unit 200. Furthermore, some or all of these functional units may be realized by hardware (including circuitry) such as LSIs, ASICs, FPGAs, and GPUs, or by the cooperation of software and hardware.

[0152] (Modification device 120a) The change device 120a comprises an input unit 130a, a communication unit 160, an output unit 165a, and a change instruction unit 170a. The input unit 130a comprises a selection unit 140a, a force sensor 150, and touch sensors TS1 to TS4. The selection unit 140a comprises a first part P1, a second part P2, and a third part P3. Figure 21 is a schematic diagram of an example of a modification device included in a robot control system according to a modified example 1 of the embodiment. An example of the change device 120a comprises a joystick ST, a base PD, and a force detection unit FD. The joystick ST is composed of a columnar portion and a spherical portion. The spherical portion is formed on the upper side of the columnar portion. The joystick ST and base PD have a first part P1, a second part P2, and a third part P3. An example of the first part P1 includes a first part P1-1 formed on the base PD, a first part P1-21 formed on the columnar part of the joystick ST adjacent to the base PD, and a first part P1-22 formed on the columnar part of the joystick ST adjacent to the spherical part. An example of the second part P2 is formed on the spherical part of the joystick ST. An example of the third part P3 is formed on the columnar part of the joystick ST that is not adjacent to the base PD or the spherical part. Return to Figure 16 and continue the explanation.

[0153] The selection unit 140a can apply the selection unit 140. However, the selection unit 140a selects the position and orientation change mode if the user touches the third part P3. The position and orientation change mode is an operation mode that causes the robot 2 to change its position or orientation. The touch sensor TS4 detects that the user has touched the third part P3. The input unit 130a acquires information that identifies the user touching the third part P3 as detected by the touch sensor TS4. After the touch sensor TS4 detects that the user has made contact with the third part P3, the force sensor 150 detects one of the following: that the user has applied force Fx to the joystick ST and moved the joystick ST in the X-axis direction; that the user has applied force Fy to the joystick ST and moved the joystick ST in the Y-axis direction; that the user has applied force Fz to the joystick ST and moved the joystick ST in the Z-axis direction; that the user has applied force Mx to the joystick ST and rotated the joystick ST around the X-axis direction; that the user has applied force My to the joystick ST and rotated the joystick ST around the Y-axis direction; or that the user has applied force Mz to the joystick ST and rotated the joystick ST around the Z-axis direction.

[0154] The input unit 130a acquires information that identifies one of the following actions detected by the force sensor 150: that the user moved the joystick ST in the X-axis direction, that the joystick ST moved in the Y-axis direction, that the joystick ST moved in the Z-axis direction, that the joystick ST rotated around the X-axis direction, that the joystick ST rotated around the Y-axis direction, or that the joystick ST rotated around the Z-axis direction. The derivation unit 165a can apply the derivation unit 165. However, the derivation unit 165a obtains one of the following from the input unit 130: information that identifies that the user has come into contact with the first part P1-1, information that identifies that the user has come into contact with either the first part P1-21 or the first part P1-22, information that identifies that the user has come into contact with the second part P2, or information that identifies that the user has come into contact with the third part P3. When the derivation unit 165a obtains information that identifies the user has made contact with the third part P3, it obtains information that identifies one of the following, obtained by the input unit 130a: that the user moved the joystick ST in the X-axis direction, the Y-axis direction, the Z-axis direction, that it rotated around the X-axis direction, that it rotated around the Y-axis direction, or that it rotated around the Z-axis direction.

[0155] The derivation unit 165a derives one of the following based on information that identifies whether the user moved the joystick ST in the X-axis direction, the Y-axis direction, the Z-axis direction, rotated it around the X-axis direction, rotated it around the Y-axis direction, or rotated it around the Z-axis direction: the amount of change (movement) in the X-axis direction, the amount of change (movement) in the Y-axis direction, the amount of change (movement) in the Z-axis direction, the amount of change (movement) around the X-axis direction, the amount of change (movement) around the Y-axis direction, or the amount of change (movement) around the Z-axis direction. When the change instruction unit 170a obtains information that identifies that the user has made contact with the third part P3, and information that identifies that the user has moved the joystick ST in the X-axis direction, the Y-axis direction, or the Z-axis direction, it creates a change instruction signal that includes information that identifies that the robot 2 should be moved in the X-axis direction, the Y-axis direction, or the Z-axis direction by the amount of change derived by the derivation unit 165a in position and orientation change mode. The change instruction unit 170a outputs the created change instruction signal to the communication unit 160.

[0156] When the change instruction unit 170a obtains information that identifies that the user has made contact with the third part P3, and information that identifies that the user has rotated the joystick ST around the X-axis, Y-axis, or Z-axis, it creates a change instruction signal that includes information that identifies that the attitude of the robot 2 should be moved in one of the X-axis, Y-axis, or Z-axis directions by the amount of change derived by the derivation unit 165a, in position and attitude change mode. The change instruction unit 170a outputs the created change instruction signal to the communication unit 160. The selection unit 140a, input unit 130a, derivation unit 165a, and change instruction unit 170a are implemented, for example, by a hardware processor such as a CPU executing a computer program (software) stored in a memory unit (not shown). Furthermore, some or all of these functional units may be implemented by hardware (including circuitry) such as LSIs, ASICs, FPGAs, and GPUs, or by the cooperation of software and hardware.

[0157] (Operation of robot control system 1a) The operation of the robot control system 1a according to the modified embodiment 1 can be described by applying Figures 12 to 14. In addition to the operations shown in Figures 12 to 14, the robot control system 1a performs the following operations. Figure 22 shows an example of the operation of a robot control system according to a modified example of the embodiment 1. Referring to Figure 22, the process of changing either the position and orientation of the robot 2 or both in the robot control system 1a will be described. This process may be performed following the process of setting a coordinate system in the robot control system 1a. Steps S1-4 to S3-4 can be modified by applying steps S1-2 to S3-2 in Figure 13. (Step S4-4) In the modification device 120a, the touch sensor TS4 determines whether the user has made contact with the third part P3. If it is determined that there is no contact, the process returns to step S4-4; if it is determined that there is contact, the process proceeds to step S5-4.

[0158] (Step S5-4) In the modification device 120a, the force sensor 150 detects, after the touch sensor TS4 detects that the user has made contact with the third part P3, that the user has applied a force Fx to the joystick ST, thereby moving the joystick ST in the X-axis direction; applied a force Fy to the joystick ST, thereby moving the joystick ST in the Y-axis direction; applied a force Fz to the joystick ST, thereby moving the joystick ST in the Z-axis direction; applied a force Mx to the joystick ST, thereby rotating the joystick ST around the X-axis direction; applied a force My to the joystick ST, thereby rotating the joystick ST around the Y-axis direction; or applied a force Mz to the joystick ST, thereby rotating the joystick ST around the Z-axis direction. The input unit 130 acquires information that identifies one of the following actions detected by the force sensor 150: that the user moved the joystick ST in the X-axis direction, that the joystick ST moved in the Y-axis direction, that the joystick ST moved in the Z-axis direction, that the joystick ST rotated around the X-axis direction, that the joystick ST rotated around the Y-axis direction, or that the joystick ST rotated around the Z-axis direction.

[0159] (Step S6-4) In the changing device 120a, the deriving unit 165a derives any one of the change amount (movement amount) in the X-axis direction, the change amount (movement amount) in the Y-axis direction, the change amount (movement amount) in the Z-axis direction, the change amount (movement amount) around the X-axis, the change amount (movement amount) around the Y-axis, and the change amount (movement amount) around the Z-axis. The change instruction unit 170a creates a change instruction signal including information specifying to move the robot 2 in any one of the X-axis direction, the Y-axis direction, and the Z-axis directions or to move the robot 2 in any one of the directions around the X-axis, around the Y-axis, and around the Z-axis by the change amount derived by the deriving unit 165a in the position and orientation change mode. (Step S7-4) In the changing device 120a, the change instruction unit 170a outputs the created change instruction signal to the communication unit 160. The communication unit 160 acquires the change instruction signal output by the change instruction unit 170a and transmits the acquired change instruction signal to the control device 110. (Step S8-4) In the control device 110, the second communication unit 180-2 receives the change instruction signal transmitted by the changing device 120a. (Step S9-4) The robot 2 acquires the position information and reaction force information of the robot 2. (Step S10-4) The robot 2 transmits the current coordinate data of the robot 2 including the information specifying the acquired position of the robot 2 and the reaction force information to the control device 110.

[0160] (Step S11-4) In the control device 110, the first communication unit 180-1 receives the current coordinate data transmitted by the robot 2. (Step S12-4) In the control device 110, the attitude information acquisition unit 192 acquires the attitude information included in the current coordinate data received by the first communication unit 180-1. The position information acquisition unit 194 acquires the position information included in the current coordinate data received by the first communication unit 180-1. The reaction force information acquisition unit 195a acquires the reaction force information included in the current coordinate data received by the first communication unit 180-1. The change unit 190 acquires the change instruction signal received by the second communication unit 180-2. The output unit 198a calculates the target coordinates for moving the robot 2 and the speed at which either or both of the position and attitude of the robot 2 are changed, based on either or both of the information specifying to move the robot 2 by the change amount in any one of the X-axis direction, Y-axis direction, and Z-axis direction included in the acquired change instruction signal and the information specifying to move the robot 2 by the change amount in any one of the X-axis rotation, Y-axis rotation, and Z-axis rotation, the current coordinate data, and the reaction force information. (Step S13-4) In the control device 110, the change unit 190 creates a control signal including the calculation result of the coordinates and the information specifying the speed at which either or both of the position and attitude are changed. The change unit 190 outputs the created control signal to the first communication unit 180-1. The first communication unit 180-1 acquires the control signal output by the change unit 190 and transmits the acquired control signal to the robot 2. (Step S14-4) The robot 2 receives the control signal transmitted by the control device 110. The robot 2 moves based on the calculation result of the coordinates included in the received control signal and the information specifying the speed at which either or both of the position and attitude are changed.

[0161] (Step S15-4) In the change device 120a, the input unit 130 determines whether an operation end command has been acquired. If the operation end command has not been acquired, the process proceeds to step S4-4. Steps S16-4 to S20-4 can apply steps S18-2 to S22-2 in FIG. 13, so the description here is omitted. In an example of the operation of the robot control system 1a shown in Figure 22, steps S4-4 to S8-4 and steps S9-4 to S11-4 may be executed simultaneously. Alternatively, steps S9-4 to S11-4 may be executed periodically.

[0162] The display control unit 202 of the control device 110a of the robot control system 1a of the modified embodiment may be provided in the control device 110 of the control system 1 of the embodiment. In this case, the display control unit 202 displays information other than information related to reaction force information. For example, the display control unit 201 causes the display device (not shown) to display a screen that visually shows the position of the tip of the rod in coordinates when the robot 2 is being operated by the control system 100, and a screen that sets the position-based limit range when the robot 2 is being operated. For example, the display control unit 202 causes the display device to display screens corresponding to Figures 20A and 20B.

[0163] According to the robot control system 1a of the modified embodiment 1, the control system 100a further includes a reaction force information acquisition unit 195a that acquires reaction force information indicating the force that the robot 2 receives from an object, as in the control system 100 of the embodiment. The modification unit 190a changes the position and orientation of the robot 2, and the output unit 198a outputs the speed at which the position and orientation are changed by the modification unit 190a, based on predetermined information. The predetermined information includes reaction force information acquired by the reaction force information acquisition unit 195a. By configuring it in this way, the control system 100a can output the speed at which the position and orientation of the robot 2 are changed, based on reaction force information that indicates the force the robot receives from an object, which is included in the predetermined information. Therefore, the position of the robot 2 can be changed based on the output speed at which the robot's position is changed.

[0164] In the control system 100a described above, the reaction force information includes translational force information indicating the translational force that the robot 2 receives from the object, and couple information indicating the couple that is generated on the robot 2 as a result of the robot 2 receiving a force from the object. By configuring it in this way, the control system 100a can output the speed at which the position and orientation of the robot 2 are changed, based on translational force information, which indicates the translational force that the robot 2 receives from an object and is included in predetermined information, and couple information, which indicates the couple force generated on the robot as a result of the robot 2 receiving a force from an object. Therefore, the position of the robot 2 can be changed based on the output speed at which the position of the robot 2 is changed.

[0165] In the control system 100a, the output unit 198a outputs the speed at which the position is changed by the change unit 190a based on both translational force information and couple information, and outputs the speed at which the attitude is changed by the change unit 190a based on the couple information. By configuring it in this way, the control system 100a can output the speed at which the position of the robot 2 changes based on both translational force information and couple information, and can change the position of the robot based on the output speed at which the position of the robot 2 changes. The control system 100a can output the speed at which the attitude of the robot 2 changes based on couple information, and can change the position of the robot 2 based on the output speed at which the attitude of the robot 2 changes.

[0166] According to the control system 100a of the modified embodiment 1, the control system 100a controls the robot 2 that performs work on an object. The control system 100a includes a modification unit 190a for changing the attitude and position of the robot 2, an attitude information acquisition unit 192 for acquiring attitude information indicating the attitude of the robot 2, an attitude limit value acquisition unit 196a for acquiring the limit value of the attitude changed by the modification unit 190a, an position information acquisition unit 194 for acquiring position information indicating the position of the robot 2, an distance information acquisition unit 197 for acquiring distance information indicating the distance from an object to the robot 2, an action force acquisition unit 195a for acquiring action force information indicating the force that the robot 2 receives from an object, an angle information acquisition unit 203a for acquiring angle information indicating the angles of the joints of the robot 2, an inter-movable part distance information acquisition unit 204a for acquiring inter-movable part distance information indicating the distance between multiple movable parts constituting the robot 2, and an output unit 198a for outputting a position speed indicating the speed at which the position is changed by the modification unit 190a and an attitude speed indicating the speed at which the attitude is changed by the modification unit 190a. The output unit 198a calculates the following: attitude speed based on attitude information acquired by attitude information acquisition unit 192 and limit values ​​acquired by attitude limit value acquisition unit 196a; position speed based on position information acquired by position information acquisition unit 194; position speed based on distance information acquired by distance information acquisition unit 197; position speed based on reaction force information acquired by reaction force information acquisition unit 195a; attitude speed based on reaction force information acquired by reaction force information acquisition unit 195a; position speed based on angle information acquired by angle information acquisition unit 203a; attitude speed based on distance information between movable parts acquired by distance information acquisition unit 204a; and attitude speed based on distance information between movable parts acquired by distance information acquisition unit 204a. By configuring it in this way, the control system 1a can output a position speed indicating the speed at which the robot 2's position changes and a posture speed indicating the speed at which the robot 2's posture changes, based on posture speeds based on posture information and posture limit values ​​included in predetermined information, position speeds based on position information, position speeds based on distance information, position speeds based on reaction force information, posture speeds based on reaction force information, position speeds based on angle information, posture speeds based on angle information, position speeds based on distance information between movable parts, and posture speeds based on distance information between movable parts. As a result, the position of the robot 2 and the posture of the robot 2 can be changed based on the output speed at which the robot 2's position changes and the speed at which the robot 2's posture changes.

[0167] The control system 100a is the control system 100a described above, wherein the output unit 198a selects and outputs the slowest of the following: attitude speed based on attitude information acquired by attitude information acquisition unit 192 and limit values ​​acquired by attitude limit value acquisition unit 196a, attitude speed based on reaction force information acquired by reaction force information acquisition unit 195a, attitude speed based on angle information acquired by angle information acquisition unit 203a, and attitude speed based on distance information between movable parts acquired by distance information acquisition unit 204a. The output unit 198a selects and outputs the slowest of the following: position speed based on position information acquired by position information acquisition unit 194, position speed based on distance information acquired by distance information acquisition unit 197, position speed based on reaction force information acquired by reaction force information acquisition unit 195a, position speed based on angle information acquired by angle information acquisition unit 203a, and position speed based on distance information between movable parts acquired by distance information acquisition unit 204a. By configuring it in this way, the modification unit 190a can change the robot's posture and position based on the slowest of the following: posture speed based on posture information acquired by posture information acquisition unit 192 output by output unit 198a and limit values ​​acquired by posture limit value acquisition unit 196a; posture speed based on reaction force information acquired by reaction force information acquisition unit 195a; posture speed based on angle information acquired by angle information acquisition unit 203a; posture speed based on distance information between movable parts acquired by distance information acquisition unit 204a; position speed based on position information acquired by position information acquisition unit 194; position speed based on distance information acquired by distance information acquisition unit 197; position speed based on reaction force information acquired by reaction force information acquisition unit 195a; position speed based on angle information acquired by angle information acquisition unit 203a; and position speed based on distance information between movable parts acquired by distance information acquisition unit 204a.

[0168] The control system 100a is the control system 100a described above, and includes information indicating the attitude speed determined by the output unit 198a based on attitude information acquired by the attitude information acquisition unit 192 and the limit value acquired by the attitude limit value acquisition unit 196a, information indicating the position speed determined by the output unit 198a based on position information acquired by the position information acquisition unit 194, information indicating the position speed determined by the output unit 198a based on distance information acquired by the distance information acquisition unit 197, and information indicating the position speed determined by the output unit 198a based on reaction force information acquired by the reaction force information acquisition unit 195a. The system further includes a display control unit 202 that causes the display unit to display the following information: information indicating the attitude speed determined by the output unit 198a based on the reaction force information acquired by the reaction force information acquisition unit 195a; information indicating the position speed based on the angle information acquired by the angle information acquisition unit 203a; information indicating the attitude speed based on the angle information acquired by the angle information acquisition unit 203a; information indicating the position speed based on the distance between movable parts acquired by the distance between movable parts information acquisition unit 204a; and information indicating the attitude speed based on the distance between movable parts acquired by the distance between movable parts information acquisition unit 204a. By configuring it in this way, the display unit can show information indicating the attitude speed based on attitude information and limit values, information indicating the position speed based on position information, information indicating the position speed based on distance information, information indicating the position speed based on reaction force information, information indicating the attitude speed based on reaction force information, information indicating the position speed based on angle information, information indicating the attitude speed based on angle information, information indicating the position speed based on distance information between movable parts, and information indicating the attitude speed based on distance information between movable parts.

[0169] The control system 100a is the control system 100a described above, wherein the display control unit 202 displays the information displayed on the display unit that corresponds to the slowest information selected and output by the output unit 198a in a discriminable manner. By configuring it in this way, it is possible to distinguish and inform the user of the information displayed on the display unit that corresponds to the slowest information selected and output by the output unit 198a. The control system 100a is the control system 100a described above, and the information indicating the attitude speed determined by the output unit 198a based on the attitude information acquired by the attitude information acquisition unit 192 and the limit value acquired by the attitude limit value acquisition unit 196a includes first-direction attitude speed information indicating the speed at which the attitude is changed in a first direction by the attitude change unit 190a, and second-direction attitude speed information indicating the speed at which the attitude is changed in a second direction by the attitude change unit 190a. The display control unit 202 causes the first-direction attitude speed information to be displayed on the display unit together with the second-direction attitude speed information. With this configuration, the output unit 198a can obtain attitude speed information, which includes first-direction attitude speed information indicating the speed at which the attitude changes in a first direction, and second-direction attitude speed information indicating the speed at which the attitude changes in a second direction, based on the attitude information obtained by the attitude information acquisition unit 192 and the limit values ​​obtained by the attitude limit value acquisition unit 196a. The display control unit 202 can display the first-direction attitude speed information together with the second-direction attitude speed information on the display unit.

[0170] The control system 100a is the control system 100a described above, wherein the information indicating the attitude speed determined by the output unit 198a based on the reaction force information acquired by the reaction force information acquisition unit 195a includes third-direction attitude speed information indicating the speed at which the attitude is changed in the third direction by the attitude change unit 190a, and fourth-direction attitude speed information indicating the speed at which the attitude is changed in the fourth direction by the attitude change unit 190a. The display control unit 202 causes the third-direction attitude speed information to be displayed on the display unit together with the fourth-direction attitude speed information. With this configuration, the output unit 198a can obtain attitude speed information, which includes third-direction attitude speed information indicating the speed at which the attitude changes in the third direction, and fourth-direction attitude speed information indicating the speed at which the attitude changes in the fourth direction, based on the reaction force information obtained by the reaction force information acquisition unit 195a. The display control unit 202 can display the third-direction attitude speed information together with the fourth-direction attitude speed information on the display unit.

[0171] The control system 100a is the control system 100a described above, wherein the information indicating the position speed determined by the output unit 198a based on the distance information acquired by the distance information acquisition unit 197 includes fifth-direction position speed information indicating the speed at which the position is changed in the fifth direction by the position change unit 190a, and sixth-direction position speed information indicating the speed at which the position is changed in the sixth direction by the position change unit 190a. The display control unit 202 causes the fifth-direction position speed information to be displayed on the display unit together with the sixth-direction position speed information. With this configuration, the output unit 198a can obtain position speed information, which includes fifth-direction position speed information indicating the speed at which the position changes in the fifth direction, and sixth-direction position speed information indicating the speed at which the position changes in the sixth direction, based on the distance information obtained by the distance information acquisition unit 197. The display control unit 202 can display the fifth-direction position speed information together with the sixth-direction position speed information on the display unit.

[0172] The control system 100a is the control system 100a described above, and the position speed information that the output unit 198a determines based on the distance information acquired by the distance information acquisition unit 197 includes seventh-direction position speed information indicating the speed at which the position is changed in the seventh direction by the position change unit 190a, and eighth-direction position speed information indicating the speed at which the position is changed in the eighth direction by the position change unit 190a. The display control unit 202 causes the seventh-direction position speed information to be displayed on the display unit together with the eighth-direction position speed information. With this configuration, the output unit 198a can obtain position speed information, which includes seventh-direction position speed information indicating the speed at which the position changes in the seventh direction, and eighth-direction position speed information indicating the speed at which the position changes in the eighth direction, based on the distance information obtained by the distance information acquisition unit 197. The display control unit 202 can display the seventh-direction position speed information together with the eighth-direction position speed information on the display unit.

[0173] The control system 100a is the control system 100a described above, and the position speed information that the output unit 198a determines based on the angle information acquired by the angle information acquisition unit 203a includes 9th direction position speed information indicating the speed at which the position is changed in the 9th direction by the position change unit 190a, and 10th direction position speed information indicating the speed at which the position is changed in the 10th direction by the position change unit 190a. The display control unit 202 causes the 9th direction position speed information to be displayed on the display unit together with the 10th direction position speed information. With this configuration, the output unit 198a can obtain position speed information, which includes 9th-direction position speed information indicating the speed at which the position changes in the 9th direction, and 10th-direction position speed information indicating the speed at which the position changes in the 10th direction, based on the angle information obtained by the angle information acquisition unit 203a. The display control unit 202 can display the 9th-direction position speed information together with the 10th-direction position speed information on the display unit.

[0174] The control system 100a is the above control system 100a. Information indicating the attitude speed required by the output unit 198a based on the angle information acquired by the angle information acquisition unit 203a includes 11th direction attitude speed information indicating the speed at which the attitude is changed in the 11th direction by the attitude change unit 190a, and 12th direction attitude speed information indicating the speed at which the attitude is changed in the 12th direction by the attitude change unit 190a. The display control unit 202 causes the display unit to display the 11th direction attitude speed information together with the 12th direction attitude speed information. By configuring it in this way, the output unit 198a can obtain information indicating the attitude speed including 11th direction attitude speed information indicating the speed at which the attitude is changed in the 11th direction based on the distance information acquired by the distance information acquisition unit 197, and 12th direction attitude speed information indicating the speed at which the attitude is changed in the 12th direction. The display control unit 202 can cause the display unit to display the 11th direction attitude speed information together with the 12th direction attitude speed information.

[0175] The control system 100a is the above control system 100a. Information indicating the position speed required by the output unit 198a based on the movable part interval distance information acquired by the movable part interval distance information acquisition unit 204a includes 13th direction position speed information indicating the speed at which the position is changed in the 13th direction by the position change unit 190a, and 14th direction position speed information indicating the speed at which the position is changed in the 14th direction by the position change unit 190a. The display control unit 202 causes the display unit to display the 13th direction position speed information together with the 14th direction position speed information. By configuring it in this way, the output unit 198a can obtain information indicating the position speed including 13th direction position speed information indicating the speed at which the position is changed in the 13th direction based on the movable part interval distance information acquired by the movable part interval distance information acquisition unit 204a, and 14th direction position speed information indicating the speed at which the position is changed in the 14th direction. The display control unit 202 can cause the display unit to display the 13th direction position speed information together with the 14th direction position speed information.

[0176] The control system 100a is the control system 100a described above, wherein the information indicating the attitude speed determined by the output unit 198a based on the distance information between movable parts acquired by the distance information acquisition unit 204a includes 15th direction attitude speed information indicating the speed at which the attitude is changed in the 15th direction by the attitude change unit 190a, and 16th direction attitude speed information indicating the speed at which the attitude is changed in the 16th direction by the attitude change unit 190a. The display control unit 202 causes the 15th direction attitude speed information to be displayed on the display unit together with the 16th direction attitude speed information. With this configuration, the output unit 198a can obtain attitude speed information, which includes 15th-direction attitude speed information indicating the speed at which the attitude changes in the 15th direction, and 16th-direction attitude speed information indicating the speed at which the attitude changes in the 16th direction, based on the distance information between movable parts acquired by the distance information acquisition unit 204a between movable parts. The display control unit 202 can display the 15th-direction attitude speed information together with the 16th-direction attitude speed information on the display unit.

[0177] The control system 100a is the control system 100a described above, and the display control unit 202 is used by the output unit 198a to determine the attitude speed based on the attitude information acquired by the attitude information acquisition unit 192 and the limit value acquired by the attitude limit value acquisition unit 196a, a first threshold used by the output unit 198a to determine the position speed based on the position information acquired by the position information acquisition unit 194, a third threshold used by the output unit 198a to determine the position speed based on the distance information acquired by the distance information acquisition unit 197, a fourth threshold used by the output unit 198a to determine the position speed based on the reaction force information acquired by the reaction force information acquisition unit 195a, and the reaction force acquired by the reaction force information acquisition unit 195a The display unit displays input fields for the user to input each of the following threshold values: a fifth threshold used by the output unit 198a when determining the attitude speed based on the information; a sixth threshold used by the output unit 198a when determining the position speed based on the angle information acquired by the angle information acquisition unit 203a; a seventh threshold used by the output unit 198a when determining the attitude speed based on the angle information acquired by the angle information acquisition unit 203a; an eighth threshold used by the output unit 198a when determining the position speed based on the distance information between movable parts acquired by the distance information acquisition unit 204a; and a ninth threshold used by the output unit 198a when determining the attitude speed based on the distance information between movable parts acquired by the distance information acquisition unit 204a. By configuring it in this way, the user can input each of the following: a first threshold used by the output unit 198a when determining the attitude speed based on attitude information and limit values; a second threshold used by the output unit 198a when determining the position speed based on position information; a third threshold used by the output unit 198a when determining the position speed based on distance information; a fourth threshold used by the output unit 198a when determining the position speed based on reaction force information; a fifth threshold used by the output unit 198a when determining the attitude speed based on reaction force information; a sixth threshold used by the output unit 198a when determining the position speed based on angle information; a seventh threshold used by the output unit 198a when determining the attitude speed based on angle information; an eighth threshold used by the output unit 198a when determining the position speed based on distance information between movable parts; and a ninth threshold used by the output unit 198a when determining the attitude speed based on distance information between movable parts.

[0178] Although embodiments have been described above, these embodiments are presented as examples and are not intended to limit the scope of the invention. These embodiments can be implemented in various other forms, and various omissions, substitutions, modifications, and combinations are possible without departing from the spirit of the invention. These embodiments are included in the scope and spirit of the invention, as well as in the claims and their equivalents. The control devices 110, 110a, 120, and 120a described above may also be implemented using a computer. In that case, a program for implementing the functions of each functional block is recorded on a computer-readable recording medium. The program recorded on this recording medium may be loaded into a computer system and executed by the CPU. The term "computer system" here includes hardware such as an OS (Operating System) and peripheral devices. Furthermore, "computer-readable recording media" refers to portable media such as flexible disks, magneto-optical disks, ROMs, and CD-ROMs. It also includes storage devices such as hard disks built into computer systems.

[0179] Furthermore, "computer-readable recording media" may include those that dynamically hold programs for a short period of time. Examples of those that dynamically hold programs for a short period of time include communication lines used when transmitting programs via networks such as the Internet or communication lines such as telephone lines. Furthermore, "computer-readable recording media" may include volatile memory within a server or client computer system that retains programs for a certain period of time. The program itself may also be intended to implement some of the functions described above. Additionally, the program may be capable of implementing the aforementioned functions in combination with programs already recorded in the computer system. Furthermore, the program may be implemented using a programmable logic device, such as an FPGA.

[0180] Furthermore, the control device 110, modification device 120, modification device 120a, and modification device 120b described above each have a computer inside. The processes of each of the control device 110, modification device 120, modification device 120a, and modification device 120b described above are stored in program format on a computer-readable recording medium, and the above processes are performed when the computer reads and executes this program. Here, computer-readable recording media refer to magnetic disks, magneto-optical disks, CD-ROMs, DVD-ROMs, semiconductor memory, etc. Alternatively, this computer program may be distributed to a computer via a communication line, and the computer that receives the program may execute it. Furthermore, the above program may be intended to implement some of the functions described above. Furthermore, the aforementioned functions may be implemented in combination with programs already recorded in the computer system, such as so-called differential files (differential programs). [Explanation of Symbols]

[0181] 1.1a Robot control system 2 Robots 4 Support stand 100, 100a control system 110 Control device 180-1 First Communications Department 180-2 Second Communications Department 190 Changes 192 Posture information acquisition unit 194 Location information acquisition unit 196 Posture Limit Value Acquisition Unit 197 Distance information acquisition section 198 Output section 200 Storage section 120, 120a Change device 130, 130a Input section 140, 140a Selection section 150 force sensors 155 Setting Section 160 Communications Department 165, 165a Derivation part 170, 170a Change instruction section 203a Angle information acquisition unit 204a Unit for acquiring information on the distance between movable parts

Claims

1. A control system for controlling a robot that performs work on an object, A modification unit for changing the posture of the robot, A posture information acquisition unit that acquires posture information indicating the posture of the robot, A posture limit value acquisition unit that acquires the limit value of the posture that is changed by the modification unit, An output unit outputs the speed at which the posture of the robot is changed by the modification unit, based on predetermined information. Equipped with, The predetermined information includes the posture information acquired by the posture information acquisition unit and the limit value acquired by the posture limit value acquisition unit. The modified part changes the posture such that a predetermined point of the robot traces an arc centered on the central point. The predetermined information includes center point position information relating to the position of the center point, The system further includes a position information acquisition unit that acquires position information indicating the position of the robot, The aforementioned modification changes the position of the robot, The output unit outputs the speed at which the position is changed by the changing unit, based on the predetermined information. The predetermined information includes the location information acquired by the location information acquisition unit. Control system.

2. A control system for controlling a robot that performs work on an object, A modification unit for changing the posture of the robot, A posture information acquisition unit that acquires posture information indicating the posture of the robot, A posture limit value acquisition unit that acquires the limit value of the posture that is changed by the modification unit, An output unit outputs the speed at which the posture of the robot is changed by the modification unit, based on predetermined information. Equipped with, The predetermined information includes the posture information acquired by the posture information acquisition unit and the limit value acquired by the posture limit value acquisition unit. The modified part changes the posture such that a predetermined point of the robot traces an arc centered on the central point. The predetermined information includes center point position information relating to the position of the center point, The system further includes a distance information acquisition unit that acquires distance information indicating the distance from the object to the robot. The aforementioned modification changes the position of the robot, The output unit outputs the speed at which the position is changed by the changing unit, based on the predetermined information. The predetermined information includes the distance information acquired by the distance information acquisition unit, The speed at which the position is changed by the modification unit, which is output by the output unit, slows down when the distance indicated by the distance information acquired by the distance information acquisition unit falls below a predetermined distance. Control system.

3. A control system for controlling a robot that performs work on an object, A modification unit for changing the posture of the robot, A posture information acquisition unit that acquires posture information indicating the posture of the robot, A posture limit value acquisition unit that acquires the limit value of the posture that is changed by the modification unit, An output unit outputs the speed at which the posture of the robot is changed by the modification unit, based on predetermined information. Equipped with, The predetermined information includes the posture information acquired by the posture information acquisition unit and the limit value acquired by the posture limit value acquisition unit. The modified part changes the posture such that a predetermined point of the robot traces an arc centered on the central point. The predetermined information includes center point position information relating to the position of the center point, The robot further includes a unit for acquiring information on distances between movable parts, which acquires information on the distances between multiple movable parts that constitute the robot. The modified part changes the position and orientation of the robot, The output unit outputs the speed at which the position and orientation are changed by the modification unit, based on the predetermined information. The predetermined information includes the distance information between movable parts acquired by the distance information acquisition unit between movable parts, Control system.

4. A control system for controlling a robot that performs work on an object, A modification unit for changing the posture of the robot, A posture information acquisition unit that acquires posture information indicating the posture of the robot, A posture limit value acquisition unit that acquires the limit value of the posture that is changed by the modification unit, An output unit outputs the speed at which the posture of the robot is changed by the modification unit, based on predetermined information. Equipped with, The predetermined information includes the posture information acquired by the posture information acquisition unit and the limit value acquired by the posture limit value acquisition unit. The robot further comprises a reaction force information acquisition unit that acquires reaction force information indicating the force that the robot receives from the object, The modified part changes the position and orientation of the robot, The output unit outputs the speed at which the position and orientation are changed by the modification unit, based on the predetermined information. The predetermined information includes the reaction information acquired by the reaction information acquisition unit, The reaction force information includes translational force information indicating the translational force the robot receives from the object, and couple force information indicating the couple force generated on the robot as a result of the robot receiving a force from the object. Control system.

5. The control system according to any one of claims 1 to 3, wherein the center point position information is information indicating whether or not the center point is located on the side of the object from the tip of the robot.

6. The control system according to claim 1, wherein the speed at which the output unit outputs the speed at which the position is changed by the changing unit slows down when the position indicated by the position information acquired by the position information acquisition unit moves out of a predetermined range including the object.

7. The robot further includes an angle information acquisition unit that acquires angle information indicating the angle of the robot's joints, The modified part changes the position and orientation of the robot, The output unit outputs the speed at which the position and orientation are changed by the modification unit, based on the predetermined information. The control system according to any one of claims 1 to 4, wherein the predetermined information includes the angle information acquired by the angle information acquisition unit.

8. The control system according to claim 7, wherein the speed at which the position and orientation are changed by the modification unit is slowed down when the angle indicated by the angle information acquired by the angle information acquisition unit approaches the singularity of the joint.

9. The control system according to claim 3, wherein the speed at which the position and orientation are changed by the modification unit is slowed down when the distance indicated by the distance information between movable parts acquired by the distance information acquisition unit between movable parts falls below a predetermined distance.

10. The control system according to claim 4, wherein the output unit outputs the speed at which the position is changed by the modification unit based on both the translational force information and the couple information, and outputs the speed at which the attitude is changed by the modification unit based on the couple information.

11. A control system for controlling a robot that performs work on an object, A modification unit for changing the posture and position of the robot, A posture information acquisition unit that acquires posture information indicating the posture of the robot, A posture limit value acquisition unit that acquires the limit value of the posture that is changed by the modification unit, A position information acquisition unit that acquires position information indicating the position of the robot, A distance information acquisition unit that acquires distance information indicating the distance from the object to the robot, A reaction force information acquisition unit acquires reaction force information indicating the force the robot receives from the object, An angle information acquisition unit that acquires angle information indicating the angle of the robot's joints, A unit for acquiring distance information between movable parts that acquires distance information between movable parts indicating the distance between multiple movable parts that constitute the robot, An output unit that outputs a position speed indicating the speed at which the position is changed by the modification unit, and a posture speed indicating the speed at which the posture is changed by the modification unit. Equipped with, A control system in which the output unit determines the following: posture speed based on the posture information acquired by the posture information acquisition unit and the limit value acquired by the posture limit value acquisition unit; position speed based on the position information acquired by the position information acquisition unit; position speed based on the distance information acquired by the distance information acquisition unit; position speed based on the reaction force information acquired by the reaction force information acquisition unit; posture speed based on the reaction force information acquired by the reaction force information acquisition unit; position speed based on the angle information acquired by the angle information acquisition unit; posture speed based on the distance information between movable parts acquired by the distance information acquisition unit; and posture speed based on the distance information between movable parts acquired by the distance information acquisition unit.

12. The output unit selects and outputs the slowest of the following: the posture speed based on the posture information acquired by the posture information acquisition unit and the limit value acquired by the posture limit value acquisition unit; the posture speed based on the reaction force information acquired by the reaction force information acquisition unit; the posture speed based on the angle information acquired by the angle information acquisition unit; and the posture speed based on the distance information between movable parts acquired by the distance information acquisition unit. The control system according to claim 11, which selects and outputs the slowest of the following: the position speed based on the position information acquired by the position information acquisition unit, the position speed based on the distance information acquired by the distance information acquisition unit, the position speed based on the reaction force information acquired by the reaction force information acquisition unit, the position speed based on the angle information acquired by the angle information acquisition unit, and the position speed based on the distance information between movable parts acquired by the distance information acquisition unit between movable parts.

13. Information indicating the attitude speed determined by the output unit based on the attitude information acquired by the attitude information acquisition unit and the limit value acquired by the attitude limit value acquisition unit; information indicating the position speed determined by the output unit based on the position information acquired by the position information acquisition unit; information indicating the position speed determined by the output unit based on the distance information acquired by the distance information acquisition unit; information indicating the position speed determined by the output unit based on the reaction force information acquired by the reaction force information acquisition unit; and the reaction force acquired by the reaction force information acquisition unit. The control system according to claim 12, further comprising a display control unit that causes the display unit to display information indicating the attitude speed determined by the output unit based on the information, information indicating the position speed based on the angle information acquired by the angle information acquisition unit, information indicating the attitude speed based on the angle information acquired by the angle information acquisition unit, information indicating the position speed based on the distance information between movable parts acquired by the distance information acquisition unit between movable parts, and information indicating the attitude speed based on the distance information between movable parts acquired by the distance information acquisition unit between movable parts.

14. The control system according to claim 13, characterized in that the display control unit displays in a discriminable manner the information that corresponds to the latest information selected and output by the output unit from among the information displayed on the display unit.

15. The information indicating the attitude speed determined by the output unit based on the attitude information acquired by the attitude information acquisition unit and the limit value acquired by the attitude limit value acquisition unit includes first-direction attitude speed information indicating the speed at which the attitude is changed in the first direction by the modification unit, and second-direction attitude speed information indicating the speed at which the attitude is changed in the second direction by the modification unit. The control system according to claim 13, wherein the display control unit causes the first directional attitude and speed information to be displayed on the display unit together with the second directional attitude and speed information.

16. The information indicating the attitude speed determined by the output unit based on the reaction force information acquired by the reaction force information acquisition unit includes third-direction attitude speed information indicating the speed at which the attitude is changed in the third direction by the modification unit, and fourth-direction attitude speed information indicating the speed at which the attitude is changed in the fourth direction by the modification unit. The control system according to claim 14, wherein the display control unit causes the third directional attitude and speed information to be displayed on the display unit together with the fourth directional attitude and speed information.

17. The position speed information determined by the output unit based on the reaction force information acquired by the reaction force information acquisition unit includes fifth-direction position speed information indicating the speed at which the position is changed in the fifth direction by the modification unit, and sixth-direction position speed information indicating the speed at which the position is changed in the sixth direction by the modification unit. The control system according to claim 15, wherein the display control unit causes the fifth directional position and speed information to be displayed on the display unit together with the sixth directional position and speed information.

18. The position speed information determined by the output unit based on the distance information acquired by the distance information acquisition unit includes seventh-direction position speed information indicating the speed at which the position is changed in the seventh direction by the modification unit, and eighth-direction position speed information indicating the speed at which the position is changed in the eighth direction by the modification unit. The control system according to claim 16, wherein the display control unit causes the seventh directional position and speed information to be displayed on the display unit together with the eighth directional position and speed information.

19. The position speed information determined by the output unit based on the angle information acquired by the angle information acquisition unit includes ninth-direction position speed information indicating the speed at which the position is changed in the ninth direction by the modification unit, and tenth-direction position speed information indicating the speed at which the position is changed in the tenth direction by the modification unit. The control system according to claim 17, wherein the display control unit causes the position and speed information of the ninth direction to be displayed on the display unit together with the position and speed information of the tenth direction.

20. The information indicating the attitude speed determined by the output unit based on the angle information acquired by the angle information acquisition unit includes 11th direction attitude speed information indicating the speed at which the attitude is changed in the 11th direction by the modification unit, and 12th direction attitude speed information indicating the speed at which the attitude is changed in the 12th direction by the modification unit. The control system according to claim 18, wherein the display control unit causes the 11th directional attitude and speed information to be displayed on the display unit together with the 12th directional attitude and speed information.

21. The position speed information determined by the output unit based on the distance information between movable parts acquired by the distance information acquisition unit between movable parts includes: 13th direction position speed information indicating the speed at which the position is changed in the 13th direction by the modification unit; and 14th direction position speed information indicating the speed at which the position is changed in the 14th direction by the modification unit. The control system according to claim 19, wherein the display control unit causes the 13th directional position and speed information to be displayed on the display unit together with the 14th directional position and speed information.

22. The information indicating the attitude speed determined by the output unit based on the distance information between movable parts acquired by the distance information acquisition unit between movable parts includes: 15th direction attitude speed information indicating the speed at which the attitude is changed in the 15th direction by the modification unit; and 16th direction attitude speed information indicating the speed at which the attitude is changed in the 16th direction by the modification unit. The control system according to claim 20, wherein the display control unit causes the 15th directional attitude and speed information to be displayed on the display unit together with the 16th directional attitude and speed information.

23. The display control unit uses a first threshold used by the output unit to determine the attitude speed based on the attitude information acquired by the attitude information acquisition unit and the limit value acquired by the attitude limit value acquisition unit; a second threshold used by the output unit to determine the position speed based on the position information acquired by the position information acquisition unit; a third threshold used by the output unit to determine the position speed based on the distance information acquired by the distance information acquisition unit; a fourth threshold used by the output unit to determine the position speed based on the reaction force information acquired by the reaction force information acquisition unit; and the output unit to determine the attitude speed based on the reaction force information acquired by the reaction force information acquisition unit. The control system according to claim 21, wherein the display unit displays an input area for the user to input each of the following: a fifth threshold used in the process, a sixth threshold used when the output unit determines the position speed based on the angle information acquired by the angle information acquisition unit, a seventh threshold used when the output unit determines the attitude speed based on the angle information acquired by the angle information acquisition unit, an eighth threshold used when the output unit determines the position speed based on the distance information between movable parts acquired by the distance information acquisition unit between movable parts, and a ninth threshold used when the output unit determines the attitude speed based on the distance information between movable parts acquired by the distance information acquisition unit between movable parts.

24. A control method performed by a control system that controls a robot performing work on an object, The steps include changing the posture of the robot, A step of acquiring posture information indicating the posture of the robot, A step of obtaining the limit value of the attitude that is changed in the step of making the change, A step of outputting the speed at which the posture of the robot is changed in the step of making the change, based on predetermined information, It has, The predetermined information includes the posture information obtained in the step of obtaining posture information and the limit value obtained in the step of obtaining the limit value of posture, In the step of making the change, the posture is changed such that a predetermined point of the robot traces an arc centered on the central point. The predetermined information includes center point position information relating to the position of the center point, The process further includes the step of acquiring position information indicating the position of the robot, In the step of making the change, the position of the robot is changed, In the output step, the speed at which the position is changed in the change step is output based on the predetermined information. The predetermined information includes the location information obtained in the step of obtaining location information. Control method.

25. A control method performed by a control system that controls a robot performing work on an object, The steps include changing the posture of the robot, A step of acquiring posture information indicating the posture of the robot, A step of obtaining the limit value of the attitude that is changed in the step of making the change, A step of outputting the speed at which the posture of the robot is changed in the step of making the change, based on predetermined information, It has, The predetermined information includes the posture information obtained in the step of obtaining posture information and the limit value obtained in the step of obtaining the limit value of posture, In the step of making the change, the posture is changed such that a predetermined point of the robot traces an arc centered on the central point. The predetermined information includes center point position information relating to the position of the center point, The process further includes the step of acquiring distance information indicating the distance from the object to the robot, In the step of making the change, the position of the robot is changed, In the output step, the speed at which the position is changed in the change step is output based on the predetermined information. The predetermined information includes the distance information obtained in the step of obtaining the distance information, The speed output in the output step, which is changed in the modification step, becomes slower when the distance indicated by the distance information acquired in the distance information acquisition step falls below a predetermined distance. Control method.

26. A control method performed by a control system that controls a robot performing work on an object, The steps include changing the posture of the robot, A step of acquiring posture information indicating the posture of the robot, A step of obtaining the limit value of the attitude that is changed in the step of making the change, A step of outputting the speed at which the posture of the robot is changed in the step of making the change, based on predetermined information, It has, The predetermined information includes the posture information obtained in the step of obtaining posture information and the limit value obtained in the step of obtaining the limit value of posture, In the step of making the change, the posture is changed such that a predetermined point of the robot traces an arc centered on the central point. The predetermined information includes center point position information relating to the position of the center point, The process further includes the step of acquiring information on the distance between movable parts, which indicates the distance between multiple movable parts constituting the robot. In the step of making the change, the position and orientation of the robot are changed, In the output step, the speed that is changed in the modification step is output based on the predetermined information. The predetermined information includes the distance information between movable parts obtained in the step of obtaining the distance information between movable parts, Control method.

27. A control method performed by a control system that controls a robot performing work on an object, The steps include changing the posture of the robot, A step of acquiring posture information indicating the posture of the robot, A step of obtaining the limit value of the attitude that is changed in the step of making the change, A step of outputting the speed at which the posture of the robot is changed in the step of making the change, based on predetermined information, It has, The predetermined information includes the posture information obtained in the step of obtaining posture information and the limit value obtained in the step of obtaining the limit value of posture, In the step of making the change, the posture is changed such that a predetermined point of the robot traces an arc centered on the central point. The predetermined information includes center point position information relating to the position of the center point, The robot further comprises the step of acquiring reaction force information indicating the force it receives from the object, In the step of making the change, the position and orientation of the robot are changed, In the output step, the speed that is changed in the modification step is output based on the predetermined information. The predetermined information includes the reaction force information obtained in the step of obtaining the reaction force information, The reaction force information includes translational force information indicating the translational force the robot receives from the object, and couple force information indicating the couple force generated on the robot as a result of the robot receiving a force from the object. Control method.

28. A control method performed by a control system that controls a robot performing work on an object, The steps include changing the posture and position of the robot, A step of acquiring posture information indicating the posture of the robot, A step of obtaining the limit value of the attitude that is changed in the step of making the change, The steps include: acquiring position information indicating the position of the robot; A step of obtaining distance information indicating the distance from the object to the robot, The steps include: acquiring reaction force information indicating the force the robot receives from the object; The steps include: acquiring drive unit angle information indicating the angle of the drive unit constituting the robot; The steps include: acquiring information on the distance between movable parts, which indicates the distance between the movable parts that constitute the robot; A step of outputting a position speed indicating the speed that changes in the step in which the position is changed, and an attitude speed indicating the speed that changes in the step in which the attitude is changed, It has, A control method that, in the step of outputting, determines the posture speed based on the posture information obtained in the step of acquiring posture information and the limit value obtained in the step of acquiring posture limit value, the position speed based on the position information obtained in the step of acquiring position information, the position speed based on the distance information obtained in the step of acquiring distance information, the position speed based on the reaction force information obtained in the step of acquiring reaction force information, the posture speed based on the reaction force information obtained in the step of acquiring reaction force information, the position speed based on the drive unit angle information obtained in the step of acquiring drive unit angle information, the posture speed based on the distance information between movable parts obtained in the step of acquiring distance information between movable parts, and the posture speed based on the distance information between movable parts obtained in the step of acquiring distance information between movable parts.

29. In the computer of the control system that controls the robot performing work on an object, The steps include changing the posture of the robot, A step of acquiring posture information indicating the posture of the robot, A step of obtaining the limit value of the attitude that is changed in the step of making the change, A step of outputting the speed at which the posture of the robot is changed in the step of making the change, based on predetermined information, Make it run, The predetermined information includes the posture information obtained in the step of obtaining posture information and the limit value obtained in the step of obtaining the limit value of posture, In the step of making the change, the posture is changed such that a predetermined point of the robot traces an arc centered on the central point. The predetermined information includes center point position information relating to the position of the center point, The process further includes the step of acquiring position information indicating the position of the robot, In the step of making the change, the position of the robot is changed, In the output step, the speed at which the position is changed in the change step is output based on the predetermined information. The predetermined information includes the location information obtained in the step of obtaining location information. Computer program.

30. In the computer of the control system that controls the robot performing work on an object, The steps include changing the posture of the robot, A step of acquiring posture information indicating the posture of the robot, A step of obtaining the limit value of the attitude that is changed in the step of making the change, A step of outputting the speed at which the posture of the robot is changed in the step of making the change, based on predetermined information, Make it run, The predetermined information includes the posture information obtained in the step of obtaining posture information and the limit value obtained in the step of obtaining the limit value of posture, In the step of making the change, the posture is changed such that a predetermined point of the robot traces an arc centered on the central point. The predetermined information includes center point position information relating to the position of the center point, The process further includes the step of acquiring distance information indicating the distance from the object to the robot, In the step of making the change, the position of the robot is changed, In the output step, the speed at which the position is changed in the change step is output based on the predetermined information. The predetermined information includes the distance information obtained in the step of obtaining the distance information, The speed output in the output step, which is changed in the step in which the position is changed, becomes slower when the distance indicated by the distance information acquired in the step in which distance information is acquired falls below a predetermined distance. Computer program.

31. In the computer of the control system that controls the robot performing work on an object, The steps include changing the posture of the robot, A step of acquiring posture information indicating the posture of the robot, A step of obtaining the limit value of the attitude that is changed in the step of making the change, A step of outputting the speed at which the posture of the robot is changed in the step of making the change, based on predetermined information, Make it run, The predetermined information includes the posture information obtained in the step of obtaining posture information and the limit value obtained in the step of obtaining the limit value of posture, In the step of making the change, the posture is changed such that a predetermined point of the robot traces an arc centered on the central point. The predetermined information includes center point position information relating to the position of the center point, The process further includes the step of acquiring information on the distance between movable parts, which indicates the distance between multiple movable parts constituting the robot. In the step of making the change, the position and orientation of the robot are changed, In the output step, the speed at which the position and orientation are changed in the step is output based on the predetermined information. The predetermined information includes the distance information between movable parts obtained in the step of obtaining the distance information between movable parts, Computer program.

32. In the computer of the control system that controls the robot performing work on an object, The steps include changing the posture of the robot, A step of acquiring posture information indicating the posture of the robot, A step of obtaining the limit value of the attitude that is changed in the step of making the change, A step of outputting the speed at which the posture of the robot is changed in the step of making the change, based on predetermined information, Make it run, The predetermined information includes the posture information obtained in the step of obtaining posture information and the limit value obtained in the step of obtaining the limit value of posture, In the step of making the change, the posture is changed such that a predetermined point of the robot traces an arc centered on the central point. The predetermined information includes center point position information relating to the position of the center point, The robot further comprises the step of acquiring reaction force information indicating the force it receives from the object, In the step of making the change, the position and orientation of the robot are changed, In the output step, the speed at which the position and orientation are changed in the step is output based on the predetermined information. The predetermined information includes the reaction force information obtained in the step of obtaining the reaction force information, The reaction force information includes translational force information indicating the translational force the robot receives from the object, and couple force information indicating the couple force generated on the robot as a result of the robot receiving a force from the object. Computer program.

33. In the computer of the control system that controls the robot performing work on an object, The steps include changing the posture and position of the robot, A step of acquiring posture information indicating the posture of the robot, A step of obtaining the limit value of the attitude that is changed in the step of making the change, The steps include: acquiring position information indicating the position of the robot; A step of obtaining distance information indicating the distance from the object to the robot, The steps include: acquiring reaction force information indicating the force the robot receives from the object; The steps include: acquiring drive unit angle information indicating the angle of the drive unit constituting the robot; The steps include: acquiring information on the distance between movable parts, which indicates the distance between multiple movable parts that constitute the robot; A step of outputting a position speed indicating the speed that changes in the step in which the position is changed, and an attitude speed indicating the speed that changes in the step in which the attitude is changed, Make it run, In the output step, the computer will A computer program that determines the following: posture speed based on the posture information obtained in the step of obtaining posture information and the limit value obtained in the step of obtaining the limit value of posture; position speed based on the position information obtained in the step of obtaining position information; position speed based on the distance information obtained in the step of obtaining distance information; position speed based on the reaction force information obtained in the step of obtaining reaction force information; posture speed based on the reaction force information obtained in the step of obtaining reaction force information; position speed based on the drive unit angle information obtained in the step of obtaining drive unit angle information; posture speed based on the drive unit angle information obtained in the step of obtaining drive unit angle information; position speed based on the distance information between movable parts obtained in the step of obtaining distance information between movable parts; and posture speed based on the distance information between movable parts obtained in the step of obtaining distance information between movable parts.