Robot control system, control method of the same, and program

Centralizing drive components and control units at the base of the robot arm improves back drivability and enables high-speed, reflexive operations by reducing weight and enhancing maneuverability.

JP2025017148APending Publication Date: 2025-02-05TOYOTA JIDOSHA KK

Patent Information

Application Number
JP2023120061
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-07-24
Publication Date
2025-02-05

AI Technical Summary

Technical Problem

The weight increase in robot arm portions due to drive components and peripherals reduces back drivability, leading to decreased maneuverability.

Method used

The drive components are centralized at the base of the robot arm or legs, with integrated control units that calculate posture and inertial values to improve back drivability and enable high-speed, reflexive operations.

Benefits of technology

This configuration reduces the weight of the arm portion, enhances maneuverability, and allows for high-speed, reflexive operations similar to human movements, improving the robot's response speed and collision avoidance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025017148000001_ABST
    Figure 2025017148000001_ABST
Patent Text Reader

Abstract

To improve back drivability of an arm part of a robot.SOLUTION: A robot control system comprises: an arm part or a leg part which is extended from a body part of a robot and includes at least one joint part at a position separated by a first prescribed distance or more from a bottom part; at least one drive part which generates driving force to rotatingly drive the joint part; and at least one transmission part which is arranged between the corresponding joint part and the corresponding drive part to transmit the driving force of the drive part to the corresponding joint part. The drive part is intensively arranged at the bottom part of the arm part or the leg part.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present disclosure relates to a robot control system that controls a robot, a control method thereof, and a program. [Background technology]

[0002] 2. Description of the Related Art There is known a robot control system in which a drive unit for driving each joint of an arm of a robot is provided at each joint of the robot (see, for example, Patent Document 1). [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Japanese Patent Application Publication No. 08-286759 Summary of the Invention [Problem to be solved by the invention]

[0004] In the above robot control system, a drive unit is provided at each joint of the arm unit. It is also assumed that the arm unit operates by performing, for example, machine learning. Furthermore, the arm unit is provided with peripheral components such as wiring required for such a drive unit. This leads to an increase in the weight of the arm unit of the robot, which may lead to a decrease in backdrivability.

[0005] The present disclosure has been made to solve such problems, and has as its main object to provide a robot control system, a control method thereof, and a program that can improve the backdrivability of the arm section of a robot. [Means for solving the problem]

[0006] In order to achieve the above object, one aspect of the present disclosure is to an arm or leg extending from a robot body and having at least one joint at a position spaced apart from a base by a first predetermined distance or more; At least one drive unit that generates a drive force for rotationally driving the joint unit; At least one transmission unit provided between the corresponding joint unit and the driving unit, and configured to transmit a driving force of the driving unit to the corresponding joint unit; Equipped with The drive unit is provided in a concentrated manner at the base of the arm or leg. Robot Control System It is. In this embodiment, At least one rotation detector that detects rotation information of the drive unit; a first control unit that calculates a posture value of the robot based on rotation information of the drive unit detected by the rotation detection unit; At least one second control unit that issues a drive instruction to the corresponding drive unit based on the posture value of the robot calculated by the first control unit; Further comprising: The drive section, the rotation detection section, and the first and second control sections may be collectively provided at the base of the arm section or the leg section. In this embodiment, The second control unit outputs a current value to the first control unit in accordance with a torque applied to the corresponding drive unit, the first control unit calculates a posture value of the robot based on the current value from the second control unit and rotation information of the drive unit from the rotation detection unit; The second control unit may issue a drive instruction to the corresponding drive unit based on the posture value of the robot calculated by the first control unit. In this embodiment, The first control unit is Calculating an acceleration based on rotational position information of the drive unit detected by the rotation detection unit; Calculating a posture value of the robot based on rotational position information of each drive unit from the rotation detection unit, and calculating an inertia value of the robot based on the calculated posture value; Calculating an inertia compensation value for the drive unit based on the calculated acceleration and inertia value; outputting the calculated attitude value and inertia compensation value to a corresponding second control unit; The second control unit may issue a drive instruction to the corresponding drive unit based on the attitude value and the inertia compensation value from the first control unit. In this embodiment, A third control unit is provided at a position that is a second predetermined distance or more away from the base of the arm or leg, The second control unit may issue a drive instruction to the corresponding drive unit according to a command from either the first control unit or the third control unit. In this embodiment, The second control unit is when detecting a collision of an object with the robot, instructing the corresponding driving unit to drive in response to a command from the first control unit; When a collision of an object with the robot is not detected, a drive instruction may be issued to the corresponding drive unit in response to a command from the third control unit. In order to achieve the above object, one aspect of the present disclosure is to An arm or leg extending from a main body of the robot and having at least one joint at a position spaced a predetermined distance or more from the base of the arm or leg; At least one drive unit that generates a drive force for rotationally driving the joint unit; At least one transmission unit provided between the corresponding joint unit and the driving unit, and configured to transmit a driving force of the driving unit to the corresponding joint unit; A control method for a robot control system comprising at least one rotation detection unit that detects rotation information of the drive unit, a first control unit, and at least one second control unit, the drive unit, the rotation detection unit, the first control unit, and the at least one second control unit being collectively provided at a base of the arm unit or the leg unit, a step of the first control unit calculating a posture value of the robot based on rotation information of the drive unit from the rotation detection unit; a step of the second control unit issuing a drive instruction to the corresponding drive unit based on the posture value of the robot calculated by the first control unit; Including, Control Method It is. In order to achieve the above object, one aspect of the present disclosure is to An arm or leg extending from a main body of the robot and having at least one joint at a position spaced a predetermined distance or more from the base of the arm or leg; At least one drive unit that generates a drive force for rotationally driving the joint unit; At least one transmission unit provided between the corresponding joint unit and the driving unit, and configured to transmit a driving force of the driving unit to the corresponding joint unit; A program for a robot control system comprising at least one rotation detection unit that detects rotation information of the drive unit, a first control unit, and at least one second control unit, the drive unit, the rotation detection unit, the first control unit, and the at least one second control unit being collectively provided at a base of the arm unit or the leg unit, a process in which the first control unit calculates a posture value of the robot based on rotation information of the drive unit from the rotation detection unit; a process in which the second control unit issues a drive instruction to the corresponding drive unit based on the posture value of the robot calculated by the first control unit; to cause a computer to execute program It is. Effect of the Invention

[0007] According to the present disclosure, it is possible to provide a robot control system, a control method thereof, and a program that can improve the backdrivability of an arm section of a robot. [Brief description of the drawings]

[0008] [Figure 1] FIG. 2 is a perspective view showing a schematic configuration of an arm section of the robot according to the present embodiment. [Diagram 2] 1 is a block diagram showing a schematic system configuration of a robot control system according to an embodiment of the present invention. [Diagram 3]4 is a flowchart showing the flow of a control method for the robot control system according to the present embodiment. [Figure 4] 1 is a block diagram showing a schematic system configuration of a robot control system according to an embodiment of the present invention. [Diagram 5] 4 is a flowchart showing a flow of a control method for the robot control system according to the present embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0009] EMBODIMENT 1 Hereinafter, the present embodiment will be described with reference to the drawings. Note that, although an example in which the present invention is applied to an arm portion of a robot will be described below, the present invention can also be applied to a leg portion of a robot in the same manner as the arm portion, and therefore the description thereof will be omitted.

[0010] FIG. 1 is a perspective view showing a schematic configuration of an arm section of a robot according to this embodiment. The arm section 1 according to this embodiment extends from a robot main body section (hereinafter, robot main body section) 2. The robot main body section 2 is configured as a base, but is not limited to this, and may be configured as the torso of a humanoid robot, for example. The arm section 1 is configured as an arm robot having one or more joint sections 3 via links or the like at a position at least a first predetermined distance away from the base.

[0011] Each joint 3 may be configured to rotate around at least one of a yaw axis, a pitch axis, and a roll axis that are perpendicular to each other. For example, as shown in FIG. 1, the arm 1 has a wrist joint 31, an elbow joint 32, and a shoulder joint 33.

[0012] The shoulder joint 33 is provided at the base of the arm unit 1, and the wrist joint 31 and elbow joint 32 are provided at a position that is a predetermined distance or more away from the base of the arm unit 1. The wrist joint 31, elbow joint 32, and shoulder joint 33 are each configured to rotate around two axes, but are not limited to this, and may be configured to rotate around one axis or three or more axes, for example.

[0013] An end effector 11 capable of gripping an object is provided at the tip of the arm unit 1. At the base of the arm unit 1, a plurality of actuators 4 that generate driving forces for driving each joint unit 3 are collectively provided.

[0014] The actuator 4 is a specific example of a drive unit. The actuator 4 is configured as, for example, a servo motor. Each actuator 4 generates a drive force that rotates the rotation axis of the corresponding joint unit 3. In the example shown in FIG. 1, eight actuators 4 that generate drive forces that rotate two axes, a wrist joint 31, an elbow joint 32, and a shoulder joint 33, are collectively provided at the base of the arm unit 1.

[0015] 1, for example, a belt 5 is hung between each rotation shaft of the elbow joint 32 and the corresponding drive shaft of each actuator 4. The belt 5 is a specific example of a transmission section. The drive shaft of each actuator 4 transmits a driving force to each rotation shaft of the elbow joint 32 via the belt 5.

[0016] Similarly, a belt 5 is hung between each rotation shaft of the shoulder joint 33 and the drive shaft of the corresponding actuator 4. The drive shaft of each actuator 4 transmits driving force to each rotation shaft of the shoulder joint 33 via the belt 5. A wire 6 is hung between each rotation shaft of the wrist joint 31 and the drive shaft of the corresponding actuator 4. The drive shaft of each actuator 4 transmits driving force to each rotation shaft of the wrist joint 31 via the wire 6.

[0017] In the above example, the belt 5 and the wire 6 are used as the transmission unit, but the present invention is not limited to this. The transmission unit may be, for example, a chain, a gear, a shaft, or any other transmission member capable of transmitting the driving force of the actuator 4.

[0018] The encoder 7 is a specific example of a rotation detection unit. The encoder 7 is integrally provided with the actuator 4. The encoder 7 detects the rotation position of the drive shaft of the actuator 4. Note that the rotation detection unit is not limited to the encoder 7, and may be another angle sensor.

[0019] In the conventional robot control system, an actuator is provided at each joint of the arm. Furthermore, the arm is provided with peripheral parts such as wiring required for the actuator. This leads to an increase in the weight of the arm, which may reduce backdrivability.

[0020] In contrast, in the robot control system 10 according to this embodiment, as described above, the actuators 4 are provided in a concentrated manner at the base of the arm unit 1. This eliminates the need to provide actuators and their peripheral components at the tip or intermediate portion of the arm unit 1. This leads to a significant reduction in the weight of the arm unit 1, and improves the backdrivability of the arm unit 1.

[0021] The improvement of backdrivability is, for example, the T s , I a , C a , K a By physically or virtually reducing one or more of the f It means to make something smaller.

number

[0022] The first actuator 41 generates a driving force for the first rotation shaft of the wrist joint 31. The second actuator 42 generates a driving force for the second rotation shaft of the wrist joint 31. The third actuator 43 generates a driving force for the first rotation shaft of the elbow joint 32. The fourth actuator 44 generates a driving force for the second rotation shaft of the elbow joint 32. The fifth actuator 45 generates a driving force for the first rotation shaft of the shoulder joint 33. The sixth actuator 46 generates a driving force for the second rotation shaft of the shoulder joint 33.

[0023] The first encoder 71 detects the rotational position of the drive shaft of the first actuator 41. The first encoder 71 outputs the detected rotational position of the drive shaft of the first actuator 41 to the slave CPU 20 and the first servo amplifier 21.

[0024] The second encoder 72 detects the rotational position of the drive shaft of the second actuator 42. The second encoder 72 outputs the detected rotational position of the drive shaft of the second actuator 42 to the slave CPU 20 and the second servo amplifier 22.

[0025] The third encoder 73 detects the rotational position of the drive shaft of the third actuator 43. The third encoder 73 outputs the detected rotational position of the drive shaft of the third actuator 43 to the slave CPU 20 and the third servo amplifier .

[0026] The fourth encoder 74 detects the rotational position of the drive shaft of the fourth actuator 44. The fourth encoder 74 outputs the detected rotational position of the drive shaft of the fourth actuator 44 to the slave CPU 20 and the fourth servo amplifier 24.

[0027] The fifth encoder 75 detects the rotational position of the drive shaft of the fifth actuator 45. The fifth encoder 75 outputs the detected rotational position of the drive shaft of the fifth actuator 45 to the slave CPU 20 and the fifth servo amplifier 25.

[0028] The sixth encoder 76 detects the rotational position of the drive shaft of the sixth actuator 46. The sixth encoder 76 outputs the detected rotational position of the drive shaft of the sixth actuator 46 to the slave CPU 20 and the sixth servo amplifier 26.

[0029] The lower CPU (Central Processing Unit) 20 is a specific example of the first control unit. The lower CPU 20 performs high-speed calculations using, for example, a field-programmable gate array (FPGA). The first control unit may be configured with a processor such as a graphics processing unit (GPU) that performs higher speed processing, instead of a CPU.

[0030] The slave CPU 20 calculates the posture value of the arm unit 1 of the robot based on the rotational positions (rotational angles) of the first to sixth actuators 41 to 46 from the first to sixth encoders 71 to 76. More specifically, the slave CPU 20 performs kinematic calculations based on the rotational positions of the first to sixth actuators 41 to 46 from the first to sixth encoders 71 to 76 to calculate the coordinate values ​​of each link of the arm unit 1 as the posture value.

[0031] The slave CPU 20 outputs the calculated posture values ​​of the robot arm unit 1 to the first to sixth servo amplifiers 21 to 26. The slave CPU 20 transmits the posture values ​​of the robot arm unit 1 to the first to sixth servo amplifiers 21 to 26 by high-speed serial communication such as SCI (Serial Communication Interface) or SSI (Serial Synchronous Interface).

[0032] As a result, the first to sixth servo amplifiers 21 to 26 can quickly acquire the posture values ​​of the robot arm section 1 with a delay of at least one sample in the control period (several tens of μs), and can issue drive instructions to the first to sixth actuators 41 to 46 at high speed, as described below.

[0033] The first to sixth servo amplifiers 21 to 26 are a specific example of the second control unit. The first to sixth servo amplifiers 21 to 26 are provided integrally with the first to sixth actuators 41 to 46, respectively, as shown in Fig. 1. The first to sixth servo amplifiers 21 to 26 issue drive instructions to the corresponding first to sixth actuators 41 to 46, respectively, based on the posture values ​​of the robot arm unit 1 output from the lower CPU 20.

[0034] The first to sixth actuators 41 to 46 rotate the first and second rotational shafts of the wrist joint 31, the first and second rotational shafts of the elbow joint 32, and the first and second rotational shafts of the shoulder joint 33, respectively, in response to drive instructions from the first to sixth servo amplifiers 21 to 26.

[0035] As described above, in the robot control system 10 according to this embodiment, the first to sixth actuators 41 to 46, the first to sixth encoders 71 to 76, the lower CPU 20, and the first to sixth servo amplifiers 21 to 26 are collectively arranged at the base of the arm portion 1.

[0036] This not only improves the backdrivability of the arm unit 1, but also shortens the distances between the first to sixth actuators 41-46, the first to sixth encoders 71-76, the slave CPU 20, and the first to sixth servo amplifiers 21-26, enabling high-speed data communication and high-speed calculation, and increasing the response speed of the robot. Also, it is possible to suppress the intrusion of noise during the high-speed data communication.

[0037] Although the lower CPU 20 alone may be placed at a position slightly away from the base of the arm portion 1, it is more preferable to provide them concentrated at the base of the arm portion 1 in order to suppress the intrusion of noise during the high-speed data communication.

[0038] The arm unit 1 of the robot according to this embodiment can perform, for example, reflexive high-speed movements similar to those of a human being, due to the above-mentioned improved backdrivability of the arm unit 1 and the above-mentioned increased response speed.

[0039] More specifically, when a collision of an object with the robot arm unit 1 is detected, an operation process for avoiding the collision is preset by a program or the like in the first to sixth servo amplifiers 21 to 26. The first to sixth servo amplifiers 21 to 26 may detect the collision of an object with the robot based on, for example, a difference from a command value, the torque values ​​of the first to sixth actuators 41 to 46, the sensor value of a contact sensor, or the like.

[0040] First, the slave CPU 20 calculates posture values ​​of the robot based on the rotational positions of the first to sixth actuators 41 to 46 from the first to sixth encoders 71 to 76. The first to sixth servo amplifiers 21 to 26 issue drive instructions to the first to sixth actuators 41 to 46, respectively, based on the posture values ​​of the arm unit 1 of the robot (posture of the entire robot) calculated by the slave CPU 20.

[0041] At this time, the first to sixth servo amplifiers 21 to 26 respectively determine the amount and direction of movement of the first to sixth actuators 41 to 46 and the amount of adjustment of the impedance of the tip of the arm section 1 in accordance with a preset program, and issue the above-mentioned drive instructions.

[0042] In this way, the first to sixth servo amplifiers 21 to 26 perform impedance control to calculate the impedance of the entire robot based on the posture of the entire robot and adjust the impedance. By performing such impedance control, the robot can perform high-speed reflexive movements similar to those of a human, such as catching a basketball.

[0043] The impedance target value based on the ball speed and mass may be calculated at a slower cycle by the host CPU 27, which will be described later.

[0044] Next, a control method for the robot control system according to this embodiment will be described with reference to Fig. 3, which is a flowchart showing the flow of the control method for the robot control system according to this embodiment.

[0045] The first to sixth encoders 71 to 76 detect the rotational positions of the drive shafts of the first to sixth actuators 41 to 46, respectively, and output the detected positions to the slave CPU 20 and the first to sixth servo amplifiers 21 to 26 (step S101).

[0046] The slave CPU 20 calculates the posture value of the robot arm unit 1 based on the rotational positions of the first to sixth actuators 41 to 46 from the first to sixth encoders 71 to 76, and outputs it to the first to sixth servo amplifiers 21 to 26 (step S102).

[0047] The first to sixth servo amplifiers 21 to 26 issue drive instructions to the first to sixth actuators 41 to 46, respectively, based on the posture values ​​of the robot arm unit 1 from the slave CPU 20 (step S103).

[0048] The first to sixth actuators 41 to 46 rotate the first and second rotational shafts of the wrist joint 31, the first and second rotational shafts of the elbow joint 32, and the first and second rotational shafts of the shoulder joint 33 in response to drive instructions from the first to sixth servo amplifiers 21 to 26, respectively (step S104).

[0049] EMBODIMENT 2 In this embodiment, the posture value of the robot arm section 1 is calculated taking into consideration not only the rotational positions of the first to sixth actuators 41 to 46 but also the torque acting on the first to sixth actuators 41 to 46, and drive instructions are given to the first to sixth actuators 41 to 46 based on the posture value.

[0050] The first to sixth encoders 71 to 76 respectively detect the rotational positions of the drive shafts of the first to sixth actuators 41 to 46. The first to sixth encoders 71 to 76 respectively output the detected rotational positions of the drive shafts of the first to sixth actuators 41 to 46 to the slave CPU 20 and the first to sixth servo amplifiers 21 to 26.

[0051] In this embodiment, the first to sixth servo amplifiers 21 to 26 further output current values ​​(analog signals) to the slave CPU 20 in accordance with the torques acting on the corresponding first to sixth actuators 41 to 46.

[0052] The slave CPU 20 calculates a posture value of the robot arm unit 1 based on the rotational positions of the first to sixth actuators 41 to 46 from the first to sixth encoders 71 to 76 and a current value according to the torque. The first to sixth servo amplifiers 21 to 26 issue drive instructions to the corresponding first to sixth actuators 41 to 46, respectively, based on the posture values ​​of the robot arm unit 1 output from the slave CPU 20.

[0053] The first to sixth actuators 41 to 46 rotate the first and second rotational shafts of the wrist joint 31, the first and second rotational shafts of the elbow joint 32, and the first and second rotational shafts of the shoulder joint 33, respectively, in response to drive instructions from the first to sixth servo amplifiers 21 to 26.

[0054] As a result, the first to sixth servo amplifiers 21-26 can issue drive instructions to the first to sixth actuators 41-46, taking into consideration not only the rotational positions of the first to sixth actuators 41-46 but also the torques acting on the first to sixth actuators 41-46. For example, when the robot collides with an object, the first to sixth servo amplifiers 21-26 can not only determine by themselves to escape in the direction opposite to the collision direction, but also determine the escape vector. This allows the robot to perform reflexive avoidance actions, just like a human.

[0055] EMBODIMENT 3 In this embodiment, not only the posture value of the arm unit 1 of the robot but also the inertia compensation values ​​of the first to sixth actuators 41- are calculated, and drive instructions are issued to the first to sixth actuators 41-.

[0056] The first to sixth encoders 71 to 76 respectively detect the rotational positions of the drive shafts of the first to sixth actuators 41 to 46. The first to sixth encoders 71 to 76 respectively output the detected rotational positions of the drive shafts of the first to sixth actuators 41 to 46 to the slave CPU 20 and the first to sixth servo amplifiers 21 to 26.

[0057] In the third embodiment, the slave CPU 20 further calculates the acceleration of the robot's arm section 1 based on the rotational positions of the first to sixth actuators 41 to 46 from the first to sixth encoders 71 to 76. The slave CPU 20 also calculates an attitude value of the robot's arm section 1 based on the rotational positions of the first to sixth actuators 41 to 46 from the first to sixth encoders 71 to 76. The slave CPU 20 further calculates an inertia value of the robot's arm section 1 based on the calculated attitude value of the robot's arm section 1.

[0058] The slave CPU 20 calculates inertia compensation values ​​for the first to sixth actuators 41 to 46 based on the calculated acceleration and inertia value of the robot arm section 1. The slave CPU 20 outputs the calculated posture value and inertia compensation value of the robot arm section 1 to the corresponding first to sixth servo amplifiers 21 to 26. Note that the first to sixth servo amplifiers 21 to 26 may each calculate the inertia compensation values ​​for the first to sixth actuators 41 to 46 based on the acceleration and inertia value of the robot arm section 1.

[0059] Based on the attitude value and inertia compensation value of the robot arm unit 1 output from the slave CPU 20, the first to sixth servo amplifiers 21 to 26 issue drive instructions to the corresponding first to sixth actuators 41 to 46, respectively.

[0060] The first to sixth actuators 41 to 46 rotate the first and second rotational shafts of the wrist joint 31, the first and second rotational shafts of the elbow joint 32, and the first and second rotational shafts of the shoulder joint 33, respectively, in response to drive instructions from the first to sixth servo amplifiers 21 to 26.

[0061] According to the third embodiment, drive instructions can be issued to the first to sixth actuators 41 to 46 taking into consideration not only the overall posture of the robot but also the inertia compensation values ​​of the first to sixth actuators 41 to 46, enabling more precise control.

[0062] EMBODIMENT 4 4 is a block diagram showing a schematic system configuration of a robot control system according to this embodiment. The robot control system 40 according to this embodiment further includes a host CPU 27 that controls normal robot operations.

[0063] The host CPU 27 is a specific example of a third control unit. The host CPU 27 is provided at a position (for example, the center of the body or the head of the robot) that is at least a second predetermined distance away from the base of the arm unit 1. The host CPU 27 is controlled by, for example, a Robot Operating System (ROS). The host CPU 27 may be configured not as a CPU but as a processor such as a GPU that performs higher speed processing. The host CPU 27 is connected to the first to sixth servo amplifiers 21 to 26.

[0064] The first to sixth servo amplifiers 21-26 transmit the rotational positions of the drive shafts of the first to sixth actuators 41-46 from the first to sixth encoders 71-76 to the host CPU 27. The host CPU 27 calculates how the first to sixth actuators 41-46 should rotate, and issues commands thereto to the first to sixth servo amplifiers 21-26.

[0065] As described above, commands are input to the first to sixth servo amplifiers 21 to 26 from both the upper CPU 27 and the lower CPU 20. Therefore, the first to sixth servo amplifiers 21 to 26 issue drive instructions to the corresponding first to sixth actuators 41 to 46 in accordance with a command from either the upper CPU 27 or the lower CPU 20.

[0066] Here, the host CPU 27 and the first to sixth servo amplifiers 21 to 26 perform data communication, such as serial communication, CAN (Controller Area Network) communication, and EtherCAT (Ethernet for Control Automation Technology) communication. Usually, this data communication is performed on the order of several milliseconds. Therefore, the responsiveness of the robot is limited, and it is difficult for the robot to perform high-speed reflexive movements like a human being.

[0067] On the other hand, as described above, high-speed data communication and high-speed calculation processing are possible between the first to sixth actuators 41-46, the first to sixth encoders 71-76, the lower CPU 20, and the first to sixth servo amplifiers 21-26, and the response speed of the robot is increased, thereby enabling the robot to perform high-speed reflexive movements similar to those of a human being.

[0068] For the above reasons, it is preferable that the slave CPU 20 executes the reflexive high-speed movements of the robot, and the master CPU 27 executes other normal robot movements.

[0069] For example, when the first to sixth servo amplifiers 21 to 26 detect a collision of an object with the robot based on the sensor value of the contact sensor 28 or the like, they instruct the first to sixth actuators 41 to 46 to drive so as to avoid the object by a reflexive high-speed action in response to a command from the lower CPU 20. This allows the robot to perform a reflexive high-speed action similar to that of a human, thereby mitigating the collision with the object.

[0070] On the other hand, when the first to sixth servo amplifiers 21 to 26 do not detect a collision of an object with the robot based on the sensor value of the contact sensor 28, etc., they issue drive instructions to the first to sixth actuators 41 to 46 in response to a command from the host CPU 27.

[0071] FIG. 5 is a flowchart showing the flow of the control method of the robot control system according to this embodiment described above.

[0072] Generally, the first to sixth servo amplifiers 21 to 26 issue drive instructions to the first to sixth actuators 41 to 46 in response to a command from the host CPU 27 (step S201).

[0073] When the first to sixth servo amplifiers 21 to 26 detect a collision of an object by the contact sensor 28 or the like (YES in step S202), they issue drive instructions to the first to sixth actuators 41 to 46 in response to a command from the slave CPU 20 (step S203).

[0074] This allows the robot to perform reflexive high-speed movements similar to those of a human, thereby mitigating collisions with objects. At this time, the priority of the entire robot control system is controlled so that there is no problem even if the first to sixth servo amplifiers 21 to 26 do not follow commands from the host CPU 27.

[0075] When the first to sixth servo amplifiers 21 to 26 determine based on the sensor value of the contact sensor 28 that the collision between the robot and the object has been avoided or the collision state has ended (YES in step S204), they immediately return to the process described above (step S201).

[0076] Although some embodiments of the present disclosure have been described, these embodiments are presented as examples and are not intended to limit the scope of the invention. These novel embodiments can be implemented in various other forms, and various omissions, substitutions, and modifications can be made without departing from the spirit of the invention. These embodiments and their modifications are included in the scope and spirit of the invention, and are included in the scope of the invention and its equivalents described in the claims.

[0077] The present disclosure can also be implemented by causing a processor to execute a computer program to perform the processes shown in FIG. 3 or FIG.

[0078] The program can be stored and provided to a computer using various types of non-transitory computer readable media. The non-transitory computer readable media includes various types of tangible storage media. Examples of the non-transitory computer readable media include magnetic recording media (e.g., flexible disks, magnetic tapes, hard disk drives), magneto-optical recording media (e.g., magneto-optical disks), CD-ROMs (Read Only Memory), CD-Rs, CD-R / Ws, and semiconductor memories (e.g., mask ROMs, PROMs (Programmable ROMs), EPROMs (Erasable PROMs), flash ROMs, and RAMs (random access memories)).

[0079] The program may be provided to the computer by various types of transitory computer readable media. Examples of the transitory computer readable medium include an electric signal, an optical signal, and an electromagnetic wave. The transitory computer readable medium can provide the program to the computer via a wired communication path such as an electric wire and an optical fiber, or via a wireless communication path.

[0080] Each component of the robot control system 10, 40 according to each of the above-mentioned embodiments can be realized not only by a program, but also in part or in whole by dedicated hardware such as an ASIC (Application Specific Integrated Circuit) or an FPGA. [Explanation of symbols]

[0081] REFERENCE SIGNS LIST 1 arm section, 2 main body section, 3 joint section, 4 actuator, 5 belt, 6 wire, 7 encoder, 10 robot control system, 11 end effector, 20 lower CPU, 21-26 first to sixth servo amplifiers, 27 upper CPU, 28 contact sensor, 31 wrist joint, 32 elbow joint, 33 shoulder joint, 40 robot control system, 41-46 first to sixth actuators, 71-76 first to sixth encoders

Claims

1. an arm or leg extending from a robot body and having at least one joint at a position spaced apart from a base by a first predetermined distance or more; At least one drive unit that generates a drive force for rotationally driving the joint unit; At least one transmission unit provided between the corresponding joint unit and the driving unit, and configured to transmit a driving force of the driving unit to the corresponding joint unit; Equipped with The drive unit is provided in a concentrated manner at the base of the arm or leg. Robot control system.

2. 2. The robot control system of claim 1, At least one rotation detector that detects rotation information of the drive unit; a first control unit that calculates a posture value of the robot based on rotation information of the drive unit detected by the rotation detection unit; at least one second control unit that issues a drive instruction to the corresponding drive unit based on the posture value of the robot calculated by the first control unit; Further comprising: The drive unit, the rotation detection unit, and the first and second control units are collectively provided at the base of the arm or leg. Robot control system.

3. 3. The robot control system according to claim 2, The second control unit outputs a current value to the first control unit in accordance with a torque applied to the corresponding drive unit, the first control unit calculates a posture value of the robot based on the current value from the second control unit and rotation information of the drive unit from the rotation detection unit; The second control unit issues a drive instruction to the corresponding drive unit based on the posture value of the robot calculated by the first control unit. Robot control system.

4. 3. The robot control system according to claim 2, The first control unit is Calculating an acceleration based on rotational position information of the drive unit detected by the rotation detection unit; Calculating a posture value of the robot based on rotational position information of each drive unit from the rotation detection unit, and calculating an inertia value of the robot based on the calculated posture value; Calculating an inertia compensation value for the drive unit based on the calculated acceleration and inertia value; outputting the calculated attitude value and inertia compensation value to a corresponding second control unit; The second control unit issues a drive instruction to the corresponding drive unit based on the attitude value and the inertia compensation value from the first control unit. Robot control system.

5. A robot control system according to any one of claims 2 to 4, A third control unit is provided at a position that is a second predetermined distance or more away from a base of the arm or leg, The second control unit issues a drive instruction to the corresponding drive unit according to a command from either the first control unit or the third control unit. Robot control system.

6. 6. The robot control system according to claim 5, The second control unit is when detecting a collision of an object with the robot, instructing the corresponding driving unit to drive in response to a command from the first control unit; When a collision of an object with the robot is not detected, a drive instruction is given to the corresponding drive unit in response to a command from the third control unit. Robot control system.

7. an arm or leg extending from a robot body and having at least one joint at a position spaced a predetermined distance or more from a base of the arm or leg; At least one drive unit that generates a drive force for rotationally driving the joint unit; At least one transmission unit provided between the corresponding joint unit and the driving unit, and configured to transmit a driving force of the driving unit to the corresponding joint unit; A control method for a robot control system comprising at least one rotation detection unit that detects rotation information of the drive unit, a first control unit, and at least one second control unit, the drive unit, the rotation detection unit, the first control unit, and the at least one second control unit being collectively provided at a base of the arm unit or the leg unit, a step of the first control unit calculating a posture value of the robot based on rotation information of the drive unit from the rotation detection unit; a step of the second control unit issuing a drive instruction to the corresponding drive unit based on the posture value of the robot calculated by the first control unit; Including, Control methods.

8. an arm or leg extending from a robot body and having at least one joint at a position spaced a predetermined distance or more from a base of the arm or leg; At least one drive unit that generates a drive force for rotationally driving the joint unit; At least one transmission unit provided between the corresponding joint unit and the driving unit, and configured to transmit a driving force of the driving unit to the corresponding joint unit; A program for a robot control system including at least one rotation detection unit that detects rotation information of the drive unit, a first control unit, and at least one second control unit, the drive unit, the rotation detection unit, the first control unit, and the at least one second control unit being collectively provided at a base of the arm unit or the leg unit, a process in which the first control unit calculates a posture value of the robot based on rotation information of the drive unit from the rotation detection unit; a process in which the second control unit issues a drive instruction to the corresponding drive unit based on the posture value of the robot calculated by the first control unit; to cause a computer to execute program.

Citation Information

Patent Citations

  • JP1987016306U

  • Robot finger, 4-finger robot hand and 5-finger robot hand

    JP2004306224A

  • Joint driving device and method for controlling joint driving device

    JP2006055927A

  • Robot driving control method for compensating statical friction

    JP1996286759A

Cited By

  • Power control system, power control method, and power control program

    JP7885464B1