WO2024013990A1 - ロボット制御装置、ロボット制御方法、ロボット制御システム、およびロボット制御プログラム - Google Patents

ロボット制御装置、ロボット制御方法、ロボット制御システム、およびロボット制御プログラム Download PDF

Info

Publication number
WO2024013990A1
WO2024013990A1 PCT/JP2022/027901 JP2022027901W WO2024013990A1 WO 2024013990 A1 WO2024013990 A1 WO 2024013990A1 JP 2022027901 W JP2022027901 W JP 2022027901W WO 2024013990 A1 WO2024013990 A1 WO 2024013990A1
Authority
WO
WIPO (PCT)
Prior art keywords
robot
control method
value
time
disturbance
Prior art date
Application number
PCT/JP2022/027901
Other languages
English (en)
French (fr)
Inventor
僚介 多田羅
Original Assignee
三菱電機株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 三菱電機株式会社 filed Critical 三菱電機株式会社
Priority to PCT/JP2022/027901 priority Critical patent/WO2024013990A1/ja
Priority to JP2022566146A priority patent/JP7250224B1/ja
Publication of WO2024013990A1 publication Critical patent/WO2024013990A1/ja

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/06Safety devices

Definitions

  • the present disclosure relates to a robot control device, a robot control method, a robot control system, and a robot control program that control a robot.
  • a robot control device that controls a robot such as an industrial robot performs control to slow down or stop the robot's operation when it collides with some object and detects an external force that exceeds a specific determination value.
  • the robot collides with an object if the robot continues to apply counter stress such as pinching or shear stress such as entrainment to the object, there is a risk that the robot or the object will be damaged. There is. Therefore, when a collision is detected, the robot control unit continuously detects external force and performs force feedback control in a direction to relieve stress.
  • the robot operation be restarted automatically without requiring human intervention. For example, if a worker comes into contact with a robot and immediately moves away from the robot to avoid contact, if a transport vehicle runs near the robot and the ground vibrates, or if electrical noise is caused to a force sensor, etc. When the voltage is applied, it is desired that the robot's operation be resumed quickly.
  • the robot control device described in Patent Document 1 has an external force that is continuously equal to or less than a first external force determination value during a predetermined first time length, and When the period during which the external force continuously exceeds the second external force determination value is equal to or less than the second time length, execution of the operation program is restarted.
  • the robot is uniformly made to resume operation after a certain period of time (2 seconds or more and 3 seconds or less) has elapsed without considering the situation at the time of the collision, so the robot may There were cases where the operation was restarted.
  • the technique disclosed in Patent Document 1 has a problem in that it is not possible to restart the operation of the robot at an appropriate timing depending on the situation when the collision occurs.
  • the present disclosure has been made in view of the above, and aims to provide a robot control device that can restart the operation of a robot at an appropriate timing depending on the situation when a collision occurs.
  • the robot control device of the present disclosure includes a motion command unit that outputs a motion command to a robot having an arm driven by a motor. Furthermore, the robot control device of the present disclosure includes an internal force estimation unit that calculates the internal force applied to the robot based on the transition of the rotational position of the motor, and an internal force estimation unit that calculates the internal force applied to the robot based on the magnitude of the torque applied to each axis of the arm and the internal force. and an external force estimator that calculates a disturbance estimated value that is an estimated value of a disturbance received from the outside.
  • the robot control device of the present disclosure determines a control method corresponding to the operating state of the robot to be transitioned based on the feature amount of the estimated disturbance value, and determines a control method that variably sets the switching time until switching to the control method.
  • the operation command section controls the robot to be in an automatic operation state using an operation program for controlling the robot until the control method determination section sets the control method, and once the control method determination section sets the control method, After the variably set switching time has elapsed, the robot is controlled using the set control method.
  • the robot control device has the effect of being able to restart the operation of the robot at an appropriate timing depending on the situation when a collision occurs.
  • Diagram showing state transition of a robot according to an embodiment Diagram for explaining the speed limit in the speed-limited automatic operation state of the robot according to the embodiment Flowchart showing the processing procedure of control processing by the robot control device according to the embodiment
  • FIG. 1 is a block diagram showing the configuration of a robot control system including a robot control device according to an embodiment.
  • the robot system 50 includes a robot 2 and a robot control device 1 that controls the robot 2.
  • the robot 2 is, for example, a 6-axis vertical articulated robot that transports a workpiece or other workpiece.
  • the robot 2 has an arm (not shown) and grips a workpiece with a hand or the like attached to the arm.
  • the hand has a function of gripping a workpiece and a function of releasing it.
  • the member attached to the arm is not limited to the hand, but may be a suction mechanism that suctions a workpiece or the like, a processing mechanism that processes the workpiece, or the like.
  • the robot 2 has an arm drive motor 21 arranged on each axis, a hand drive motor 22, a force detector 23 arranged on each axis, and an encoder 24 arranged on each axis.
  • an arm drive motor 21 arranged on each axis
  • a hand drive motor 22 a hand drive motor 22
  • a force detector 23 arranged on each axis
  • an encoder 24 arranged on each axis.
  • the arm drive motor 21 drives the arm, and the hand drive motor 22 drives the hand.
  • the arm drive motor 21 and the hand drive motor 22 are controlled by the robot control device 1.
  • the force detector 23 detects the magnitude of torque applied to each axis of the arm.
  • the forces that the force detector 23 receives include forces due to gravity, inertia, force due to collision with an object, and the like. That is, the force that the force detector 23 receives includes a force that is not intended by the robot 2, such as a force at the time of a collision.
  • Encoder 24 detects the positions (rotational positions) of arm drive motor 21 and hand drive motor 22.
  • the robot control device 1 is a computer that controls the robot 2 based on an operation program.
  • the robot control device 1 includes an operation program storage section 11 for storing operation programs, and a control parameter storage section 12 for storing control parameters used for controlling the robot 2.
  • the robot control device 1 also includes a judgment value storage unit 13 for storing external force judgment values, and a robot model parameter storage unit for storing robot model parameters used when calculating the dynamics of the robot 2. It has a section 14.
  • the robot model parameters are parameters that affect internal forces applied to the arm, hand, etc. of the robot 2.
  • the motion program stored in the motion program storage section 11 is a program in which the motion of the robot 2 is defined.
  • the external force determination value stored in the determination value storage unit 13 is a threshold value used to determine to which operating state the operating state of the robot 2 should be transitioned.
  • Examples of the robot model parameters stored in the robot model parameter storage unit 14 include the length of each arm of the robot 2, the weight of each arm, the position of the center of gravity of each arm, and the thickness of each arm.
  • the robot control device 1 includes a motion commanding section 15, a control method determining section 16, an external force estimating section 17, and an internal force estimating section 18.
  • the internal force estimation unit 18 receives the detection value detected by the encoder 24 from the encoder 24. Furthermore, the internal force estimation unit 18 reads robot model parameters from the robot model parameter storage unit 14.
  • the internal force estimation unit 18 calculates the internal force based on the transition of the detection value detected by the encoder 24 (the transition of the rotational position) and the robot model parameters.
  • the internal force calculated by the internal force estimation unit 18 includes the force due to gravity and inertia of the robot 2 (arm and hand).
  • the internal force calculated by the internal force estimation unit 18 corresponds to the force applied to the joints due to the movement of the robot 2.
  • the internal force estimation unit 18 sends the calculated internal force to the external force estimation unit 17.
  • the external force estimation unit 17 receives from the force detector 23 the magnitude of the torque applied to each axis detected by the force detector 23.
  • the external force estimator 17 calculates the estimated disturbance value F based on the internal force calculated by the internal force estimator 18, the magnitude of the torque applied to each axis detected by the force detector 23, and the robot model parameters.
  • the external force estimation unit 17 sends the calculated disturbance estimated value F to the control method determination unit 16.
  • the external force estimator 17 or the force detector 23 corresponds to a collision detector.
  • control method determining unit 16 receives the disturbance estimated value F from the external force estimating unit 17.
  • the control method determination section 16 reads out the external force determination value from the determination value storage section 13 .
  • the control method determination unit 16 compares the estimated disturbance value F and the external force determination value, and sets a control method based on the comparison result. That is, the control method determining unit 16 determines to which operating state the operating state of the robot 2 should be transitioned based on the estimated disturbance value F and the external force judgment value.
  • the control method determining unit 16 sends information specifying a control method (hereinafter referred to as control method designation information) to the operation command unit 15 as a result of the determination.
  • the control method determination unit 16 generates control method designation information for restarting automatic operation over a longer period of time as the external force applied to the robot 2 is larger, and in a shorter period of time as the external force applied to the robot 2 is smaller. Generates control method specification information for restarting automatic operation. In this way, the control method designation information is information corresponding to the state of the external force applied to the robot 2. Automated driving is normal driving that follows an operating program and does not include speed limits, stops, force feedback, etc.
  • the control method determination unit 16 determines the time from the start time T1, which is the time when the estimated disturbance value F exceeds a specific external force determination value (external force determination value FA3, which will be described later), to the time when the estimated disturbance value F becomes equal to or less than the external force determination value FA3.
  • the transition of the estimated disturbance value F up to a certain end time T2 is stored in the determination value storage unit 13.
  • the control method determination unit 16 calculates the feature amount of the disturbance estimated value F stored in the determination value storage unit 13.
  • the feature values of the estimated disturbance value F include the maximum value of the estimated disturbance value F at time Tx, which is the time from start time T1 to end time T2, the integral value of the estimated disturbance value F at time Tx, and the disturbance at time Tx. At least one of the maximum value of the differential value of the estimated value F and the difference in time from the start time T1 to the end time T2 (length of time Tx) is included.
  • the control method determination unit 16 determines the timing until the robot 2 starts automatic operation with a speed limit (hereinafter referred to as automatic operation with a speed limit) and the timing when the robot 2 starts an automatic operation with a speed limit based on the feature amount of the estimated disturbance value F. Calculate the timing until automatic operation is resumed. Specifically, the control method determination unit 16 determines the switching time (hereinafter referred to as "switching time") from when the robot 2 becomes stationary to when the robot 2 starts automatic operation with speed restriction based on the feature amount of the estimated disturbance value F. time TL1) is calculated.
  • switching time switching time
  • control method determination unit 16 determines the switching time (hereinafter referred to as time TL2) from starting automatic driving with speed restriction until restarting automatic driving with robot 2 based on the feature amount of estimated disturbance value F. calculate.
  • Time TL1 is the first time
  • time TL2 is the second time.
  • the control method determination unit 16 determines the control method corresponding to the driving state to be transitioned based on the feature amount of the estimated disturbance value F, and variably sets the switching time until switching to the control method. For example, when variably setting the switching time until switching to a control method, the control method determination unit 16 may linearly change the time until switching. In other words, the switching time may be linearly increased as the impact force at the time of collision (for example, the feature amount of the estimated disturbance value F) is larger. As another example, the control method determination unit 16 sets a plurality of switching times (two or more such as a long time and a short time), and switches the longer one when the feature amount of the estimated disturbance value F is larger than a specific value.
  • the switching time may be increased in stages as the impact force at the time of collision (for example, the feature amount of the estimated disturbance value F) is larger.
  • the control method determining unit 16 sets the switching time so that, for example, the larger the feature amount of the estimated disturbance value F is, the longer at least one of the switching time TL1 and the switching time TL2 becomes.
  • control method determination unit 16 increases the switching times TL1 and TL2 as the maximum value of the estimated disturbance value F increases. Furthermore, the control method determining unit 16 increases the times TL1 and TL2 as the integral value of the estimated disturbance value F increases. Furthermore, the control method determination unit 16 increases the times TL1 and TL2 as the maximum value of the differential value of the estimated disturbance value F increases. Furthermore, the control method determination unit 16 increases the times TL1 and TL2 as the difference in time from the start time T1 to the end time T2 becomes longer.
  • the robot control device 1 calculates the times TL1 and TL2 at which automatic operation is restarted based on the feature amount of the estimated disturbance value F.
  • the robot control device 1 can set the timing for restarting automatic operation to an appropriate timing according to the feature amount of the estimated disturbance value F, and also set the operating speed at the time of restarting the automatic operation based on the characteristics of the estimated disturbance value F. You can set the appropriate speed according to the amount.
  • the control method determination unit 16 generates control method designation information specifying a control method for starting automatic driving with speed restriction based on time TL1. Furthermore, the control method determination unit 16 generates control method designation information specifying a control method for starting automatic driving based on time TL2.
  • the control method designation information specifying the control method for starting the speed limited automatic operation is command information for starting the speed limited automatic operation after the time TL1 has elapsed since the robot 2 became stationary.
  • the control method designation information specifying the control method for starting automatic operation is command information for causing the robot 2 to resume automatic operation after time TL2 has elapsed since the start of automatic operation with speed restriction.
  • the operation command section 15 receives control method designation information from the control method determination section 16.
  • the operation command unit 15 reads an operation program from the operation program storage unit 11 and reads control parameters from the control parameter storage unit 12.
  • the operation command unit 15 controls the arm drive motor 21 and the hand drive motor 22 using the operation program and control parameters.
  • the operation command unit 15 changes the control method for the robot 2 based on the control method designation information. That is, the motion command unit 15 generates a command value according to the state of the external force applied to the robot 2, and outputs this command value to the arm drive motor 21 and the hand drive motor 22. In this way, the operation command unit 15 controls the arm drive motor 21 and the hand drive motor 22 using command values according to the state of the external force applied to the robot 2.
  • the operation command section 15 controls the robot 2 to enter an automatic operation state based on the operation program until the control method determination section 16 sets the control method.
  • the control method determination section 16 sets the control method
  • the operation command section 15 controls the robot 2 using the control method set by the control method determination section 16.
  • the control method determining unit 16 sets the automatic driving state after a specific condition is satisfied.
  • FIG. 2 is a diagram showing a first example of the transition of the disturbance estimated value calculated by the external force estimation unit of the robot control device according to the embodiment.
  • the horizontal axis of the graph shown in FIG. 2 is time, and the vertical axis is the estimated disturbance value F estimated by the external force estimation unit 17. That is, the graph shown in FIG. 2 shows the time course of the estimated disturbance value F.
  • the external force determination values stored in the determination value storage unit 13 are external force determination values FA1, FA2, and FA3.
  • the external force determination values FA1, FA2, and FA3 have a relationship of external force determination value FA1>external force determination value FA2>external force determination value FA3>0.
  • the external force determination value FA1 is a threshold value for determining whether or not to stop the robot 2.
  • the control method determination unit 16 determines that the robot 2 is to be stopped and transitioned to a stopped state in which operation is not automatically resumed when the estimated disturbance value F exceeds the external force determination value FA1.
  • the external force determination value FA2 is a threshold value for determining whether or not to transition the robot 2 to the force feedback control state.
  • the force feedback state is a state in which the robot control device 1 controls the robot 2 in a direction to relieve the stress applied to the robot 2 based on information about the force sense when the robot 2 and the object come into contact.
  • the control method determination unit 16 determines that the state should be transitioned to the force feedback state when the estimated disturbance value F exceeds the external force determination value FA2.
  • the external force determination value FA2 is the first external force determination value
  • the external force determination value FA3 is the second external force determination value.
  • the external force determination value FA3 is a threshold value for determining whether or not the robot 2 is receiving an external force.
  • the control method determination unit 16 determines that the robot 2 is receiving an external force when the estimated disturbance value F exceeds the external force determination value FA3.
  • the control method determination unit 16 determines a start time T1, which is the time when the estimated disturbance value F exceeds the external force determination value FA3, and an end time T2, which is the time when the estimated disturbance value F becomes equal to or less than the external force determination value FA3. It is stored in the value storage section 13.
  • the graph in FIG. 2 shows a case where the robot 2 and the object come into contact at the start time T1 and the estimated disturbance value F exceeds the external force determination value FA3. Furthermore, the graph in FIG. 2 shows a case where the state is switched to the force feedback control state when the estimated disturbance value F exceeds the external force determination value FA2, and the cause of the external force (disturbance) is removed until the end time T2. .
  • the operation command unit 15 When the operation command unit 15 starts controlling the robot 2, it controls the robot 2 in automatic operation. Thereafter, the control method determining unit 16 determines that the robot 2 and the object have come into contact at the start time T1. Further, when the estimated disturbance value F exceeds the external force determination value FA2, the control method determination section 16 sends control method designation information specifying force feedback control to the operation command section 15. Thereby, the motion command unit 15 controls the robot 2 to enter the force feedback control state.
  • the graph in FIG. 2 shows a case where the estimated disturbance value F starts to decrease without reaching the external force determination value FA1 after a specific time has elapsed after entering the force feedback control state.
  • the control method determining unit 16 determines that the contact between the robot 2 and the object has been resolved at the end time T2.
  • the control method determination unit 16 calculates times TL1 and TL2 based on the feature amount of the estimated disturbance value F from the start time T1 to the end time T2.
  • the control method determining section 16 sends control method designation information corresponding to times TL1 and TL2 to the operation command section 15.
  • the operation command unit 15 starts automatic operation with speed limitation at time T3 (T2+TL1), which is when time TL1 has elapsed since the robot 2 became stationary.
  • the end time T2 which is the time when the estimated disturbance value F becomes equal to or less than the external force determination value FA3, is the time when the robot 2 becomes stationary.
  • the operation command unit 15 restarts the automatic operation when time TL2 has elapsed since the start of the automatic operation with speed restriction.
  • FIG. 3 is a diagram showing a second example of the transition of the disturbance estimated value calculated by the external force estimation unit of the robot control device according to the embodiment.
  • the horizontal axis of the graph shown in FIG. 3 is time, and the vertical axis is the disturbance estimated value F estimated by the external force estimation unit 17. That is, the graph shown in FIG. 3 shows the time course of the estimated disturbance value F.
  • FIG. 3 shows a case where the estimated disturbance value F calculated by the external force estimation unit 17 exceeds the external force determination value FA1, which is the stop determination value.
  • the operation command unit 15 starts controlling the robot 2, it controls the robot 2 in automatic operation. Thereafter, the control method determining unit 16 determines that the robot 2 and the object have come into contact at the start time T1. Further, when the estimated disturbance value F exceeds the external force determination value FA2, the control method determination section 16 sends control method designation information specifying force feedback control to the operation command section 15. Thereby, the motion command unit 15 controls the robot 2 to enter the force feedback control state.
  • the graph in FIG. 3 shows a case where the estimated disturbance value F exceeds the external force determination value FA1 after a specific time has elapsed after entering the force feedback control state.
  • the control method determination unit 16 immediately sends control method designation information to the operation command unit 15 to decelerate and stop the robot 2.
  • the operation command unit 15 immediately decelerates and stops the robot 2 and cuts off the power to the robot 2.
  • the graph in FIG. 3 shows how the robot 2 continues to receive stress from the collision object even after the robot 2 has stopped.
  • the estimated disturbance value F exceeds the external force determination value FA1
  • the robot control device 1 calculates the estimated disturbance value F using the following procedure.
  • the robot control device 1 acquires the position of the arm drive motor 21 from the encoder 24 provided on each axis of the arm of the robot 2. Further, the robot control device 1 acquires the position of the hand drive motor 22 from the encoder 24 provided in the hand of the robot 2.
  • the robot control device 1 also acquires the magnitude of the torque applied to each axis of the arm and hand of the robot 2 from the force detector 23 provided on each axis.
  • the internal force estimating unit 18 uses dynamics based on the information on the time course of the position of each axis acquired from the encoder 24 and the robot model parameters held in the robot model parameter storage unit 14. Calculate the internal force. Then, the external force estimating unit 17 subtracts the internal force of each axis calculated by the internal force estimating unit 18 from the magnitude of the torque of each axis acquired by the force detector 23, thereby calculating the torque applied to each axis from the outside. Estimate. Next, the external force estimation unit 17 calculates the force applied to the arm and hand by applying the inverse matrix of the transposed matrix of the Jacobian matrix calculated using the robot model parameters to the torque applied to each axis from the outside. , that is, the estimated disturbance value F, is calculated using statics.
  • FIG. 4 is a diagram showing the state transition of the robot according to the embodiment.
  • the states of the robot system 50 include an automatic operation state A1, a force feedback control state A2, a stationary state A3, an automatic operation state with speed limitation A4, and a stopped state A5.
  • the control method corresponding to the force feedback control state A2 is the first control method
  • the control method corresponding to the speed limited automatic operation state A4 is the second control method
  • the control method corresponding to the automatic operation state A1. is the third control method.
  • the automatic operation state A1 is a state in which the robot 2 is operating according to the operating program.
  • Force feedback control state A2 is a state in which feedback control is performed in a direction to relieve the external force, depending on the direction and magnitude of the external force detected due to the collision.
  • the force feedback control state A2 includes a resting state A3.
  • the stationary state A3 is a state in which the factor of external force is removed by force feedback control and the robot 2 does not move. That is, the stationary state A3 is a state in which the robot 2 is stationary in the force feedback control state A2.
  • the speed limited automatic operation state A4 is a state in which the operating speed, which changes depending on the magnitude of external force, is limited. Stop state A5 is a state in which operation is not automatically restarted.
  • the robot control device 1 compares the estimated disturbance value F with the external force determination values FA1 to FA3, and changes the state of the robot 2 based on the comparison result.
  • the robot control device 1 detects a disturbance estimated value F that exceeds the external force determination value FA2 in the automatic operation state A1 (if F>FA2), the robot control device 1 transitions to the force feedback control state A2.
  • the robot control device 1 detects a disturbance estimated value F that is lower than the external force determination value FA3 in the force feedback control state A2 (if F ⁇ FA3), the robot control device 1 transitions to the resting state A3.
  • the robot control device 1 When the robot control device 1 detects a disturbance estimated value F that exceeds the external force determination value FA2 in the stationary state A3 (if F>FA2), the robot control device 1 transitions to the force feedback control state A2. In the stationary state A3, the robot control device 1 transitions to the speed-limited automatic driving state A4 when the time TL1 until restarting the automatic driving has elapsed.
  • the robot control device 1 detects a disturbance estimated value F that exceeds the external force determination value FA2 in the speed limited automatic operation state A4 (if F>FA2), the robot control device 1 transitions to the force feedback control state A2.
  • the robot control device 1 transitions to the automatic driving state A1 when a time TL2 from the start of the speed limited automatic driving state A4 until the end of the speed limit has elapsed.
  • the robot control device 1 detects a disturbance estimated value F that exceeds the external force determination value FA1 in the force feedback control state A2 (if F>FA1), the robot control device 1 transitions to the stop state A5.
  • the operation command section 15 generates a command value according to the state determined by the control method determination section 16. That is, the operation command section 15 generates a command value corresponding to the control method set by the control method determination section 16.
  • the operation command unit 15 controls the robot 2 based on the operation program stored in the operation program storage unit 11.
  • the control method determination unit 16 monitors the magnitude relationship between the external force determination value FA2 and the estimated disturbance value F.
  • the operation command unit 15 stops automatic operation according to the operation program, and performs feedback control in a direction to control the estimated disturbance value F, depending on the direction and magnitude of the detected estimated disturbance value F. conduct.
  • the control method determination unit 16 monitors the magnitude relationship between the external force determination value FA1 and the disturbance estimated value F, and the magnitude relationship between the external force determination value FA3 and the disturbance estimated value F. Further, the control method determining unit 16 stores the start time T1 at which the force feedback control state A2 is reached in the determination value storage unit 13.
  • the control method in the resting state A3 is the same as the control method in the force feedback control state A2, but in the resting state A3, the contact with the collided object is canceled due to the force feedback control, or the external force has been removed.
  • the control method determination unit 16 monitors the magnitude relationship between the external force determination value FA2 and the estimated disturbance value F. Further, the control method determining unit 16 stores the end time T2 at which the stationary state A3 is reached in the determination value storage unit 13. Then, the control method determining unit 16 monitors the magnitude relationship between the elapsed time from the end time T2 at which the stationary state A3 was reached and the time TL1 until automatic operation is resumed. Further, in the stopped state A5, the robot 2 immediately decelerates to a stop, power is cut off, and the robot 2 does not automatically resume operation thereafter.
  • the speed-limited automatic driving state A4 is a state in which the vehicle is automatically driving while increasing the speed in stages.
  • the control method determination unit 16 monitors the magnitude relationship between the external force determination value FA2 and the estimated disturbance value F. Furthermore, the control method determination unit 16 monitors the magnitude relationship between the time TL2 and the time elapsed from the time T3 when the speed limited automatic driving state A4 was entered.
  • the control method determination unit 16 calculates the time TL1 until resumption of automatic driving with speed restriction as follows.
  • the control method determining unit 16 calculates a weight by multiplying the maximum value of the estimated disturbance value F from the start time T1 to the end time T2 by a weight WA1, and the integral value of the estimated disturbance value F from the start time T1 to the end time T2.
  • the value obtained by multiplying the value by WA2 the value obtained by multiplying the maximum value of the differential value of the estimated disturbance value F from the start time T1 to the end time T2 by the weight WA3, and the value obtained by multiplying the difference from the start time T1 to the end time T2 by the weight WA4.
  • the time TL1 is calculated based on the sum of at least two of the values.
  • control method determination unit 16 calculates, for example, the time TL2 until automatic driving resumes as follows. That is, the control method determining unit 16 calculates the value obtained by multiplying the maximum value of the estimated disturbance value F from the start time T1 to the end time T2 by the weight WB1, and the integral value of the estimated disturbance value F from the start time T1 to the end time T2. is multiplied by weight WB2, the value obtained by multiplying the maximum value of the differential value of estimated disturbance value F from start time T1 to end time T2 by weight WB3, and weight WB4 is multiplied by the difference between start time T1 and end time T2.
  • the time TL2 is calculated based on the sum of at least two of the multiplied values.
  • Weight WA1 is the first weight, and weight WA2 is the second weight. Further, weight WA3 is the third weight, and weight WA4 is the fourth weight. Further, the weight WB1 is the fifth weight, and the weight WB2 is the sixth weight. Further, weight WB3 is the seventh weight, and weight WB4 is the eighth weight.
  • FIG. 5 is a diagram for explaining the speed limit in the speed-limited automatic operation state of the robot according to the embodiment.
  • the horizontal axis of the graph shown in FIG. 5 is time, and the vertical axis is the speed limit in the speed limited automatic driving state A4. That is, the graph shown in FIG. 5 shows the time transition of the speed limit in the speed limited automatic driving state A4.
  • the override increases linearly for a time TL2 from time T3 when the robot 2 enters the speed limited automatic operation state A4 until the speed limit reaches the override Nmax specified in the operation program. That is, the robot control device 1 increases the speed limit linearly from time T3 to time T4 (T3+TL2), and controls the speed limit so that the speed limit at time T4 becomes the override Nmax. That is, the control method determination unit 16 increases the speed limit linearly during the time TL2, and sets the speed limit to the maximum value when the time TL2 has elapsed. Time T4 is T2+TL1+TL2. Note that the speed limit may be increased linearly or in steps.
  • control method determination unit 16 may calculate the speed limit instead of the time TL2.
  • the speed limit here is a speed corresponding to time TL2.
  • the robot control device 1 causes the robot 2 to operate at the speed limit calculated by the control method determination unit 16 from time T3. After the time TL2 has elapsed, the robot 2 enters the automatic operation state A1 and executes the operation specified by the operation program.
  • FIG. 6 is a flowchart showing the processing procedure of control processing by the robot control device according to the embodiment.
  • the motion command unit 15 of the robot control device 1 outputs a motion command to the robot 2 (step S1).
  • the internal force estimation unit 18 calculates the internal force based on the transition of the detection value detected by the encoder 24 and the robot model parameters (step S2).
  • the external force estimation unit 17 estimates the disturbance estimated value F based on the internal force, the magnitude of the torque applied to each axis detected by the force detector 23, and the robot model parameters (step S3).
  • the control method determination unit 16 compares the estimated disturbance value F and the external force determination value. Specifically, the control method determining unit 16 determines whether the estimated disturbance value F>external force determination value FA3 (step S10).
  • step S10, No If the disturbance estimated value F>external force determination value FA3 is not satisfied (step S10, No), the control method determination unit 16 returns to the process of step S1 and executes the processes of steps S1 to S3.
  • the control method determination unit 16 updates the start time T1 stored in the determination value storage unit 13, and updates the time of the disturbance estimated value F. The change is stored in the judgment value storage unit 13 (step S20).
  • the control method determination unit 16 compares the estimated disturbance value F and the external force determination value. Specifically, the control method determining unit 16 determines whether the estimated disturbance value F ⁇ external force determination value FA3 (step S30).
  • step S30 If the disturbance estimated value F ⁇ external force determination value FA3 is not satisfied (step S30, No), the control method determination unit 16 continues the process of comparing the disturbance estimated value F, which changes over time, with the external force determination value FA3 ( Step S30).
  • the control method judgment unit 16 updates the end time T2 stored in the judgment value storage unit 13, and determines the characteristics of the estimated disturbance value F. The amount is calculated (step S40).
  • the control method determination unit 16 calculates times TL1 and TL2 based on the feature amount of the estimated disturbance value F (step S50).
  • the control method determining unit 16 sets a control method based on the times TL1 and TL2 (step S60). That is, the control method determination unit 16 generates control method designation information corresponding to times TL1 and TL2.
  • the control method determining section 16 sends control method designation information to the operation command section 15. Also.
  • the control method determining unit 16 clears the temporal change in the estimated disturbance value F stored in the determined value storage unit 13 (step S70).
  • the operation command unit 15 executes control according to the control method designation information. That is, the motion command unit 15 controls the robot 2 using a control method based on the times TL1 and TL2 (step S80). Thereby, the robot control device 1 changes the control method for the robot 2 according to the times TL1 and TL2 calculated based on the feature amount of the estimated disturbance value F.
  • the robot control device 1 determines that the collision was minor and shortens the time until operation resumes. There is. Thereby, the robot control device 1 can shorten the takt time by operating at high speed from the time of restarting the operation.
  • the robot control device 1 determines that it will take time to recover, and increases the time until operation resumes. Thereby, the robot control device 1 can resume automatic operation after sufficiently ensuring safety. Moreover, in the case of a collision with a large impact force, the robot control device 1 can reduce the risk immediately after restarting automatic operation by gradually increasing the operating speed at the time of resuming automatic operation. In this way, the robot control device 1 controls the time until operation is resumed and the operation speed at the time of operation restart according to the severity of the external force received by the robot 2 (size of the collision), thereby making it possible to respond to human senses. It becomes possible to realize a recovery operation close to that of That is, the robot control device 1 can achieve both shortening of takt time and high safety.
  • FIG. 7 is a diagram showing an example of a hardware configuration for realizing the robot control device according to the embodiment.
  • the robot control device 1 can be realized by an input device 300, a processor 100, a memory 200, and an output device 400.
  • An example of the processor 100 is a CPU (Central Processing Unit, also referred to as a central processing unit, a processing unit, an arithmetic unit, a microprocessor, a microcomputer, or a DSP (Digital Signal Processor)) or a system LSI (Large Scale Integration).
  • Examples of the memory 200 are RAM (Random Access Memory) and ROM (Read Only Memory).
  • the robot control device 1 is realized by the processor 100 reading and executing a computer-executable control program for executing the operations of the robot control device 1 stored in the memory 200.
  • the control program which is a program for executing the operations of the robot control device 1, can also be said to cause a computer to execute the procedures or methods of the robot control device 1.
  • the control program executed by the robot control device 1 has a module configuration including an execution section that executes various processes, and the execution section is loaded onto the main storage device and the execution section is generated on the main storage device. .
  • the input device 300 receives the magnitude of the torque applied to each axis from the force detector 23 and sends it to the processor 100.
  • the input device 300 also receives the rotational positions of the arm drive motor 21 and the hand drive motor 22 from the encoder 24 and sends them to the processor 100.
  • the memory 200 corresponds to the operation program storage section 11, the control parameter storage section 12, the judgment value storage section 13, and the robot model parameter storage section 14 for storing robot model parameters.
  • the memory 200 stores operation programs, control parameters, external force determination values, robot model parameters, control programs, and the like.
  • the memory 200 also stores a start time T1, an end time T2, an estimated disturbance value F, and the like. Furthermore, the memory 200 is used as a temporary memory when the processor 100 executes various processes.
  • Output device 400 outputs command values to arm drive motor 21 and hand drive motor 22.
  • the control program may be an installable or executable file stored in a computer-readable storage medium and provided as a computer program product. Further, the control program may be provided to the robot control device 1 via a network such as the Internet. Note that some of the functions of the robot control device 1 may be realized by dedicated hardware such as a dedicated circuit, and some may be realized by software or firmware.
  • the robot control device 1 sets a control method based on the external force determination value and the feature amount of the estimated disturbance value F, and controls the robot 2 using the set control method.
  • the operation of the robot 2 can be restarted at an appropriate timing depending on the current situation.
  • the configuration shown in the above embodiments is an example, and it is possible to combine it with another known technology, and a part of the configuration can be omitted or changed without departing from the gist. It is possible.
  • Robot control device 2 Robot, 11 Operation program storage unit, 12 Control parameter storage unit, 13 Judgment value storage unit, 14 Robot model parameter storage unit, 15 Operation command unit, 16 Control method determination unit, 17 External force estimation unit, 18 Internal force estimator, 21 arm drive motor, 22 hand drive motor, 23 force detector, 24 encoder, 50 robot system, 100 processor, 200 memory, 300 input device, 400 output device.

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)

Abstract

ロボット制御装置(1)が、モータによって駆動されるアームを有したロボット(2)に動作指令を出力する動作指令部(15)と、モータの回転位置の推移に基づいて、ロボットにかかる内力を算出する内力推定部(18)と、アームの各軸にかかるトルクの大きさと、内力とに基づいて、アームが外から受けた外乱の推定値である外乱推定値を算出する外力推定部(17)と、外乱推定値の特徴量に基づいて、遷移させるロボットの運転状態に対応する制御方式を判定するとともに制御方式に切替えるまでの切替時間を可変設定する制御方式判定部(16)と、を備え、動作指令部は、制御方式判定部が制御方式を設定するまでは、ロボットを制御する動作プログラムを用いて自動運転状態となるようにロボットを制御し、制御方式判定部が制御方式を設定すると、可変設定された切替時間の経過後に設定された制御方式でロボットを制御する。

Description

ロボット制御装置、ロボット制御方法、ロボット制御システム、およびロボット制御プログラム
 本開示は、ロボットを制御するロボット制御装置、ロボット制御方法、ロボット制御システム、およびロボット制御プログラムに関する。
 従来、産業用ロボットといったロボットを制御するロボット制御装置は、何らかの対象物に衝突して特定の判定値以上の外力を検知した場合には、動作を減速または停止させる制御を行っている。ところが、ロボットが何らかの対象物に衝突した場合に、ロボットが、衝突した対象物に対して挟み込みのような対抗応力、または巻き込みのようなせん断応力を与え続けると、ロボットまたは対象物が破損するおそれがある。このため、ロボット制御部は、衝突を検知した場合には、継続的に外力検知を行い、応力をいなす方向に力覚フィードバック制御を行う。
 一方、タクトタイム短縮による生産性向上のためには、人手を要することなく自動的にロボットの動作が再開されることが好ましい。例えば、作業者がロボットに接触した後すぐに接触から回避するためにロボットから離れた場合、ロボットの近傍を搬送車が走行し地面が振動した場合、または力覚センサなどに対する電気的なノイズが印加された場合には、迅速にロボットの動作が再開されることが望まれる。
 例えば、特許文献1に記載のロボット制御装置は、生産性を向上させるため、外力が予め定められた第1の時間長さの期間中に連続して第1の外力判定値以下であり、且つ外力が連続して第2の外力判定値を超える期間が第2の時間長さ以下の場合に、動作プログラムの実行を再開している。
特許第6034900号公報
 しかしながら、上記特許文献1の技術では、衝突発生時の状況を考慮せずに一律に一定時間(2秒以上3秒以下)経過後にロボットに動作を再開させているので、不適切なタイミングでロボットの動作を再開させる場合があった。例えば、上記特許文献1の技術では、衝突が軽微であったにもかかわらず自動運転の再開までの時間が過多になる場合、または衝突が重大であったにもかかわらず自動運転の再開までの時間が過少である場合が起こりうる。このように、上記特許文献1の技術では、衝突発生時の状況に応じた適切なタイミングでロボットの動作を再開させることができないという問題があった。
 本開示は、上記に鑑みてなされたものであって、衝突発生時の状況に応じた適切なタイミングでロボットの動作を再開させることができるロボット制御装置を得ることを目的とする。
 上述した課題を解決し、目的を達成するために、本開示のロボット制御装置は、モータによって駆動されるアームを有したロボットに動作指令を出力する動作指令部を備える。また、本開示のロボット制御装置は、モータの回転位置の推移に基づいて、ロボットにかかる内力を算出する内力推定部と、アームの各軸にかかるトルクの大きさと、内力とに基づいて、アームが外から受けた外乱の推定値である外乱推定値を算出する外力推定部とを備える。また、本開示のロボット制御装置は、外乱推定値の特徴量に基づいて、遷移させるロボットの運転状態に対応する制御方式を判定するとともに制御方式に切替えるまでの切替時間を可変設定する制御方式判定部を備える。動作指令部は、制御方式判定部が制御方式を設定するまでは、ロボットを制御する動作プログラムを用いて自動運転状態となるようにロボットを制御し、制御方式判定部が制御方式を設定すると、可変設定された切替時間の経過後に設定された制御方式でロボットを制御する。
 本開示にかかるロボット制御装置は、衝突発生時の状況に応じた適切なタイミングでロボットの動作を再開させることができるという効果を奏する。
実施の形態にかかるロボット制御装置を備えたロボット制御システムの構成を示すブロック図 実施の形態にかかるロボット制御装置の外力推定部が算出した外乱推定値の推移の第1例を示す図 実施の形態にかかるロボット制御装置の外力推定部が算出した外乱推定値の推移の第2例を示す図 実施の形態にかかるロボットの状態遷移を示す図 実施の形態にかかるロボットの速度制限付自動運転状態における制限速度を説明するための図 実施の形態にかかるロボット制御装置による制御処理の処理手順を示すフローチャート 実施の形態にかかるロボット制御装置を実現するハードウェア構成例を示す図
 以下に、本開示の実施の形態にかかるロボット制御装置、ロボット制御方法、ロボット制御システム、およびロボット制御プログラムを図面に基づいて詳細に説明する。
実施の形態.
 図1は、実施の形態にかかるロボット制御装置を備えたロボット制御システムの構成を示すブロック図である。ロボットシステム50は、ロボット2と、ロボット2を制御するロボット制御装置1とを備えている。
 ロボット2は、例えば、ワークなどの被加工物を搬送する6軸垂直多関節ロボットである。ロボット2は、アーム(図示せず)を有しており、アームに取り付けられたハンドなどによってワークを把持する。ハンドは、ワークを把持する機能と解放する機能とを有している。なお、アームに取り付けられる部材は、ハンドに限らず、ワークなどを吸着する吸着機構、ワークなどを加工する加工機構などであってもよい。
 ロボット2は、各軸に配置されたアーム駆動モータ21と、ハンド駆動モータ22と、各軸に配置された力検出器23と、各軸に配置されたエンコーダ24とを有している。ロボット2が6軸垂直多関節ロボットである場合、ロボット2には、6つのアーム駆動モータ21と、6つの力検出器23と、6つのエンコーダ24とが配置されている。
 アーム駆動モータ21は、アームを駆動し、ハンド駆動モータ22は、ハンドを駆動する。アーム駆動モータ21およびハンド駆動モータ22は、ロボット制御装置1によって制御される。
 また、力検出器23は、アームの各軸にかかるトルクの大きさを検出する。力検出器23が受ける力には、重力、慣性による力、対象物との衝突による力などが含まれている。すなわち、力検出器23が受ける力には、ロボット2が意図しない力である衝突時の力などが含まれている。エンコーダ24は、アーム駆動モータ21およびハンド駆動モータ22の位置(回転位置)を検出する。
 ロボット制御装置1は、動作プログラムに基づいてロボット2を制御するコンピュータである。ロボット制御装置1は、動作プログラムを保存するための動作プログラム記憶部11と、ロボット2の制御に用いられる制御パラメータを保存するための制御パラメータ記憶部12とを有している。また、ロボット制御装置1は、外力判定値を保存するための判定値記憶部13と、ロボット2の動力学(ダイナミクス)を計算する際に用いられるロボットモデルパラメータを保存するためのロボットモデルパラメータ記憶部14とを有している。ロボットモデルパラメータは、ロボット2のアーム、ハンドなどにかかる内力に影響を与えるパラメータである。
 動作プログラム記憶部11が記憶しておく動作プログラムは、ロボット2の動作が規定されたプログラムである。判定値記憶部13が記憶しておく外力判定値は、ロボット2の動作状態を何れの運転状態に遷移させるかの判定に用いられる閾値である。ロボットモデルパラメータ記憶部14が記憶しておくロボットモデルパラメータの例は、ロボット2が有する各アームの長さ、各アームの重さ、各アームの重心位置、各アームの太さなどである。
 また、ロボット制御装置1は、動作指令部15と、制御方式判定部16と、外力推定部17と、内力推定部18とを有している。内力推定部18は、エンコーダ24が検出した検出値をエンコーダ24から受け付ける。また、内力推定部18は、ロボットモデルパラメータ記憶部14からロボットモデルパラメータを読み出す。
 内力推定部18は、エンコーダ24が検出した検出値の推移(回転位置の推移)と、ロボットモデルパラメータとに基づいて内力を算出する。内力推定部18が算出する内力には、ロボット2(アームおよびハンド)の重力、慣性による力などが含まれている。内力推定部18が算出する内力は、ロボット2の動作によって関節に加わる力に対応している。内力推定部18は、算出した内力を外力推定部17に送る。
 外力推定部17は、力検出器23が検知した各軸にかかるトルクの大きさを力検出器23から受け付ける。外力推定部17は、内力推定部18が算出した内力と、力検出器23が検出した各軸にかかるトルクの大きさと、ロボットモデルパラメータとに基づいて外乱推定値Fを算出する。外乱推定値Fは、各軸のアームまたはハンドが外から受ける力(外乱)の推定値である。外乱推定値F=(力検出器23が受けた力)-(内力)である。外力推定部17は、算出した外乱推定値Fを制御方式判定部16に送る。外力推定部17または力検出器23は、衝突検出部に相当する。
 また、制御方式判定部16は、外力推定部17から外乱推定値Fを受け付ける。制御方式判定部16は、判定値記憶部13から外力判定値を読み出す。制御方式判定部16は、外乱推定値Fと外力判定値とを比較し、比較結果に基づいて制御方式を設定する。すなわち、制御方式判定部16は、外乱推定値Fおよび外力判定値に基づいて、ロボット2の動作状態を何れの運転状態に遷移させるかを判定する。制御方式判定部16は、判定結果として、制御方式が指定された情報(以下、制御方式指定情報という)を動作指令部15に送る。制御方式判定部16は、ロボット2に加えられた外力が大きいほど長い時間をかけて自動運転を再開するための制御方式指定情報を生成し、ロボット2に加えられた外力が小さいほど短い時間で自動運転を再開するための制御方式指定情報を生成する。このように、制御方式指定情報は、ロボット2に加えられた外力の状態に対応した情報である。自動運転は、動作プログラムに沿った運転であり、速度制限、停止、力覚フィードバックなどが行われない通常の運転である。
 制御方式判定部16は、外乱推定値Fが特定の外力判定値(後述する外力判定値FA3)を上回った時刻である開始時刻T1から外乱推定値Fが外力判定値FA3以下となった時刻である終了時刻T2までの外乱推定値Fの推移を判定値記憶部13に格納しておく。
 制御方式判定部16は、判定値記憶部13に格納しておいた外乱推定値Fの特徴量を算出する。外乱推定値Fの特徴量には、開始時刻T1から終了時刻T2までの時間である時間Txにおける外乱推定値Fの最大値と、時間Txにおける外乱推定値Fの積分値と、時間Txにおける外乱推定値Fの微分値の最大値と、開始時刻T1から終了時刻T2までの時間の差分(時間Txの長さ)との少なくとも1つが含まれている。
 制御方式判定部16は、外乱推定値Fの特徴量に基づいて、ロボット2に速度制限付きの自動運転(以下、速度制限付自動運転という)を開始させるまでのタイミングと、ロボット2に速度制限のない自動運転を再開させるまでのタイミングとを算出する。具体的には、制御方式判定部16は、外乱推定値Fの特徴量に基づいて、ロボット2が静止状態になってからロボット2に速度制限付自動運転を開始させるまでの切替時間(以下、時間TL1という)を算出する。また、制御方式判定部16は、外乱推定値Fの特徴量に基づいて、速度制限付自動運転を開始させてからロボット2に自動運転を再開させるまでの切替時間(以下、時間TL2という)を算出する。時間TL1が第1の時間であり、時間TL2が第2の時間である。
 このように、制御方式判定部16は、外乱推定値Fの特徴量に基づいて、遷移させる運転状態に対応する制御方式を判定するとともに制御方式に切替えるまでの切替時間を可変設定する。制御方式判定部16は、例えば、制御方式に切替えるまでの切替時間を可変設定する際に、切替えるまでの時間を線形的に変化させてもよい。つまり、衝突の際の衝撃力(例えば、外乱推定値Fの特徴量)が大きいほど、切替時間を線形的に増加させてもよい。他の例としては、制御方式判定部16は、切替時間を複数(長い時間、短い時間等の2つ以上)とし、外乱推定値Fの特徴量が特定値よりも大きい場合に長い方の切替時間を設定し、特定値以下の場合に短い方の切替時間を設定してもよい。つまり、切替時間が3点以上設定されている場合には、衝突の際の衝撃力(例えば、外乱推定値Fの特徴量)が大きいほど、切替時間を段階的に増加させてもよい。制御方式判定部16は、例えば、外乱推定値Fの特徴量が大きいほど、切替時間TL1および切替時間TL2の少なくとも一方が長い切替時間となるように切替時間を設定する。
 制御方式判定部16は、例えば、外乱推定値Fの最大値が大きいほど、切替時間である時間TL1,TL2を長くする。また、制御方式判定部16は、外乱推定値Fの積分値が大きいほど、時間TL1,TL2を長くする。また、制御方式判定部16は、外乱推定値Fの微分値の最大値が大きいほど、時間TL1,TL2を長くする。また、制御方式判定部16は、開始時刻T1から終了時刻T2までの時間の差分が長いほど、時間TL1,TL2を長くする。
 このように、ロボット制御装置1は、自動運転を再開するタイミングとなる時間TL1,TL2を外乱推定値Fの特徴量に基づいて算出している。これにより、ロボット制御装置1は、自動運転を再開するタイミングを外乱推定値Fの特徴量に応じた適切なタイミングに設定できるとともに、自動運転を再開する際の運転速度を外乱推定値Fの特徴量に応じた適切な速度に設定できる。
 制御方式判定部16は、時間TL1に基づいて、速度制限付自動運転を開始させる制御方式を指定した制御方式指定情報を生成する。また、制御方式判定部16は、時間TL2に基づいて、自動運転を開始させる制御方式を指定した制御方式指定情報を生成する。
 速度制限付自動運転を開始させる制御方式が指定された制御方式指定情報は、ロボット2が静止状態になってから時間TL1が経過した後に速度制限付自動運転を開始させるための指令情報である。自動運転を開始させる制御方式を指定した制御方式指定情報は、速度制限付自動運転を開始させてから時間TL2が経過した後にロボット2に自動運転を再開させるための指令情報である。
 動作指令部15は、制御方式判定部16から制御方式指定情報を受け付ける。動作指令部15は、動作プログラム記憶部11から動作プログラムを読み出し、制御パラメータ記憶部12から制御パラメータを読み出す。動作指令部15は、動作プログラムおよび制御パラメータを用いてアーム駆動モータ21およびハンド駆動モータ22を制御する。
 また、動作指令部15は、制御方式指定情報に基づいて、ロボット2への制御方式を変更する。すなわち、動作指令部15は、ロボット2に加えられた外力の状態に応じた指令値を生成し、この指令値をアーム駆動モータ21およびハンド駆動モータ22に出力する。このように、動作指令部15は、ロボット2に加えられた外力の状態に応じた指令値を用いてアーム駆動モータ21およびハンド駆動モータ22を制御する。
 動作指令部15は、制御方式判定部16が制御方式を設定するまでは、動作プログラムに基づいた自動運転状態となるようにロボット2を制御する。動作指令部15は、制御方式判定部16が制御方式を設定すると、制御方式判定部16が設定した制御方式でロボット2を制御する。制御方式判定部16は、特定の条件を満たした後に自動運転状態を設定する。
 図2は、実施の形態にかかるロボット制御装置の外力推定部が算出した外乱推定値の推移の第1例を示す図である。図2に示すグラフの横軸は時間であり、縦軸は外力推定部17が推定した外乱推定値Fである。すなわち、図2に示すグラフは、外乱推定値Fの時間推移を示している。
 判定値記憶部13が記憶しておく外力判定値は、外力判定値FA1,FA2,FA3である。外力判定値FA1,FA2,FA3は、外力判定値FA1>外力判定値FA2>外力判定値FA3>0の関係を有している。
 外力判定値FA1は、ロボット2を停止させるか否かを判定するための閾値である。制御方式判定部16は、外乱推定値Fが外力判定値FA1を超えた場合にロボット2を停止させ、自動的に運転を再開させない停止状態に遷移させると判定する。
 外力判定値FA2は、ロボット2を力覚フィードバック制御状態に移行させるか否かを判定するための閾値である。力覚フィードバック状態は、ロボット制御装置1が、ロボット2と対象物とが接触した際の力覚の情報に基づいて、ロボット2にかかる応力をいなす方向にロボット2を制御する状態である。制御方式判定部16は、外乱推定値Fが外力判定値FA2を超えた場合に力覚フィードバック状態に遷移させると判定する。本実施の形態では、外力判定値FA2が第1の外力判定値であり、外力判定値FA3が第2の外力判定値である。
 外力判定値FA3は、ロボット2が外力を受けているか否かを判定するための閾値である。制御方式判定部16は、外乱推定値Fが外力判定値FA3を超えた場合にロボット2が外力を受けていると判定する。
 制御方式判定部16は、外乱推定値Fが外力判定値FA3を上回った時刻である開始時刻T1と、外乱推定値Fが外力判定値FA3以下となった時刻である終了時刻T2とを、判定値記憶部13に格納しておく。
 図2のグラフでは、開始時刻T1にロボット2と対象物とが接触して外乱推定値Fが外力判定値FA3を超過した場合を示している。また、図2のグラフでは、外乱推定値Fが外力判定値FA2を超過した時点で、力覚フィードバック制御状態に切り替わり、終了時刻T2にかけて外力(外乱)の要因が取り除かれた場合を示している。
 動作指令部15は、ロボット2の制御を開始すると、自動運転でロボット2を制御する。この後、制御方式判定部16は、開始時刻T1でロボット2と対象物とが接触したと判定する。さらに、制御方式判定部16は、外乱推定値Fが外力判定値FA2を超えると、力覚フィードバック制御を指定した制御方式指定情報を動作指令部15に送る。これにより、動作指令部15は、力覚フィードバック制御状態となるようにロボット2を制御する。
 図2のグラフでは、力覚フィードバック制御状態になった後、特定時間の経過後に外乱推定値Fが外力判定値FA1に到達することなく下がり始めた場合を示している。制御方式判定部16は、終了時刻T2でロボット2と対象物との接触が解消したと判定する。
 制御方式判定部16は、開始時刻T1から終了時刻T2までの外乱推定値Fの特徴量に基づいて、時間TL1,TL2を算出する。制御方式判定部16は、時間TL1,TL2に対応する制御方式指定情報を動作指令部15に送る。これにより、動作指令部15は、ロボット2が静止状態になってから時間TL1が経過した時刻T3(T2+TL1)になると、速度制限付自動運転を開始する。本実施の形態では、外乱推定値Fが外力判定値FA3以下となった時刻である終了時刻T2が、ロボット2が静止状態となった時刻である。動作指令部15は、速度制限付自動運転を開始してから時間TL2が経過すると、自動運転を再開する。
 図3は、実施の形態にかかるロボット制御装置の外力推定部が算出した外乱推定値の推移の第2例を示す図である。図3に示すグラフの横軸は時間であり、縦軸は外力推定部17が推定した外乱推定値Fである。すなわち、図3に示すグラフは、外乱推定値Fの時間推移を示している。
 図3では、外力推定部17が算出した外乱推定値Fが停止判定値である外力判定値FA1を超過した場合を示している。動作指令部15は、ロボット2の制御を開始すると、自動運転でロボット2を制御する。この後、制御方式判定部16は、開始時刻T1でロボット2と対象物とが接触したと判定する。さらに、制御方式判定部16は、外乱推定値Fが外力判定値FA2を超えると、力覚フィードバック制御を指定した制御方式指定情報を動作指令部15に送る。これにより、動作指令部15は、力覚フィードバック制御状態となるようにロボット2を制御する。
 図3のグラフでは、力覚フィードバック制御状態になった後、特定時間の経過後に外乱推定値Fが外力判定値FA1を超過した場合を示している。制御方式判定部16は、外乱推定値Fが外力判定値FA1を超過すると、ただちにロボット2を減速停止させるための制御方式指定情報を動作指令部15に送る。これにより、動作指令部15は、ただちにロボット2を減速停止させ、ロボット2の動力を遮断する。
 図3のグラフでは、ロボット2が停止した後も、ロボット2が衝突の対象物から応力を受け続けている様子を示している。このように、本実施の形態では、外乱推定値Fが外力判定値FA1を超過した場合、ハードウェアが故障していないことを保証することが困難であるので、以降、ロボット2は自動的に運転の再開は行われなくなる。
 ロボット制御装置1は、以下の手順で外乱推定値Fを算出する。ロボット制御装置1は、ロボット2のアームの各軸に備えられたエンコーダ24からアーム駆動モータ21の位置を取得する。また、ロボット制御装置1は、ロボット2のハンドに備えられたエンコーダ24からハンド駆動モータ22の位置を取得する。また、ロボット制御装置1は、ロボット2のアームおよびハンドの各軸に備えられた力検出器23から各軸にかかるトルクの大きさを取得する。
 具体的には、内力推定部18が、エンコーダ24から取得した各軸の位置の時間推移の情報と、ロボットモデルパラメータ記憶部14で保持されているロボットモデルパラメータとに基づいて、動力学を用いて内力を計算する。そして、外力推定部17は、力検出器23で取得された各軸のトルクの大きさから、内力推定部18が算出した各軸の内力を差し引くことで、外部から各軸に加えられたトルクを推定する。続いて、外力推定部17は、外部から各軸に加えられるトルクに対して、ロボットモデルパラメータを用いて算出したヤコビ行列の転置行列の逆行列を作用させることで、アームおよびハンドに加えられる力の大きさ、つまり外乱推定値Fを、静力学を用いて算出する。
 図4は、実施の形態にかかるロボットの状態遷移を示す図である。ロボットシステム50の状態には、自動運転状態A1と、力覚フィードバック制御状態A2と、静止状態A3と、速度制限付自動運転状態A4と、停止状態A5とが含まれている。力覚フィードバック制御状態A2に対応する制御方式が第1の制御方式であり、速度制限付自動運転状態A4に対応する制御方式が第2の制御方式であり、自動運転状態A1に対応する制御方式が第3の制御方式である。
 自動運転状態A1は、ロボット2が動作プログラムに従って動作している状態である。力覚フィードバック制御状態A2は、衝突によって検知した外力の方向および大きさに応じて、その外力をいなす方向にフィードバック制御が行われている状態である。力覚フィードバック制御状態A2には、静止状態A3が含まれている。静止状態A3は、力覚フィードバック制御によって外力の要因が取り除かれ、ロボット2が動かなくなっている状態である。すなわち、静止状態A3は、力覚フィードバック制御状態A2においてロボット2が静止している状態である。速度制限付自動運転状態A4は、外力の大きさに応じて変化する動作速度が速度制限されている状態である。停止状態A5は、自動的に運転を再開しない状態である。
 ロボット制御装置1は、外乱推定値Fと、外力判定値FA1~FA3とを比較し、比較結果に基づいて、ロボット2の状態を遷移させる。ロボット制御装置1は、自動運転状態A1において、外力判定値FA2を上回る外乱推定値Fを検知した場合(F>FA2の場合)、力覚フィードバック制御状態A2に遷移する。
 ロボット制御装置1は、力覚フィードバック制御状態A2において、外力判定値FA3を下回る外乱推定値Fを検知した場合(F≦FA3の場合)、静止状態A3に遷移する。
 ロボット制御装置1は、静止状態A3において、外力判定値FA2を上回る外乱推定値Fを検知した場合(F>FA2の場合)、力覚フィードバック制御状態A2に遷移する。ロボット制御装置1は、静止状態A3において、自動運転の再開までの時間TL1が経過した場合、速度制限付自動運転状態A4に遷移する。
 ロボット制御装置1は、速度制限付自動運転状態A4において、外力判定値FA2を上回る外乱推定値Fを検知した場合(F>FA2の場合)、力覚フィードバック制御状態A2に遷移する。ロボット制御装置1は、速度制限付自動運転状態A4において、速度制限付自動運転状態A4が開始されてから速度制限が終了するまでの時間TL2が経過した場合、自動運転状態A1に遷移する。ロボット制御装置1は、力覚フィードバック制御状態A2において、外力判定値FA1を上回る外乱推定値Fを検知した場合(F>FA1の場合)、停止状態A5に遷移する。
 動作指令部15は、制御方式判定部16が決定した状態に応じて指令値を生成する。すなわち、動作指令部15は、制御方式判定部16が設定した制御方式に対応する指令値を生成する。
 動作指令部15は、自動運転状態A1では、動作プログラム記憶部11に保存されている動作プログラムに基づいて、ロボット2を制御する。この自動運転状態A1において、制御方式判定部16は、外力判定値FA2と外乱推定値Fとの大小関係を監視する。
 動作指令部15は、力覚フィードバック制御状態A2では、動作プログラムによる自動運転を停止し、検知した外乱推定値Fの方向および大きさに応じて、その外乱推定値Fをいなす方向にフィードバック制御を行う。この力覚フィードバック制御状態A2において、制御方式判定部16は、外力判定値FA1と外乱推定値Fとの大小関係、および外力判定値FA3と外乱推定値Fとの大小関係を監視する。また、制御方式判定部16は、力覚フィードバック制御状態A2になった開始時刻T1を、判定値記憶部13に格納する。
 静止状態A3での制御方式は、力覚フィードバック制御状態A2での制御方式と同じであるが、静止状態A3では、力覚フィードバック制御によって衝突した対象物との接触が解消された状態、または外力が取り除かれた状態である。
 静止状態A3において、制御方式判定部16は、外力判定値FA2と外乱推定値Fとの大小関係を監視する。また、制御方式判定部16は、静止状態A3となった終了時刻T2を、判定値記憶部13に格納する。そして、制御方式判定部16は、静止状態A3となった終了時刻T2からの経過時間と、自動運転の再開までの時間TL1との大小関係を監視する。また、停止状態A5では、ロボット2はただちに減速停止し動力が遮断され、以降、ロボット2は自動的に運転の再開は行わなくなる。
 速度制限付自動運転状態A4は、段階的に速度を増加させながら自動運転している状態である。速度制限付自動運転状態A4において、制御方式判定部16は、外力判定値FA2と外乱推定値Fとの大小関係を監視する。また、制御方式判定部16は、速度制限付自動運転状態A4となった時刻T3からの経過時間と、時間TL2との大小関係を監視する。
 制御方式判定部16は、例えば、速度制限付の自動運転の再開までの時間TL1を、以下のように算出する。制御方式判定部16は、開始時刻T1から終了時刻T2までの外乱推定値Fの最大値に重みWA1を掛けた値と、開始時刻T1から終了時刻T2までの外乱推定値Fの積分値に重みWA2を掛けた値と、開始時刻T1から終了時刻T2までの外乱推定値Fの微分値の最大値に重みWA3を掛けた値と、開始時刻T1から終了時刻T2の差分に重みWA4を掛けた値とのうちの少なくとも2つの値の総和に基づいて、時間TL1を算出する。
 また、制御方式判定部16は、例えば、自動運転の再開までの時間TL2を、以下のように算出する。すなわち、制御方式判定部16は、開始時刻T1から終了時刻T2までの外乱推定値Fの最大値に重みWB1を掛けた値と、開始時刻T1から終了時刻T2までの外乱推定値Fの積分値に重みWB2を掛けた値と、開始時刻T1から終了時刻T2までの外乱推定値Fの微分値の最大値に重みWB3を掛けた値と、開始時刻T1から終了時刻T2の差分に重みWB4を掛けた値とのうちの少なくとも2つの値の総和に基づいて、時間TL2を算出する。
 重みWA1が第1の重みであり、重みWA2が第2の重みである。また、重みWA3が第3の重みであり、重みWA4が第4の重みである。また、重みWB1が第5の重みであり、重みWB2が第6の重みである。また、重みWB3が第7の重みであり、重みWB4が第8の重みである。
 図5は、実施の形態にかかるロボットの速度制限付自動運転状態における制限速度を説明するための図である。図5に示すグラフの横軸は時間であり、縦軸は速度制限付自動運転状態A4における制限速度である。すなわち、図5に示すグラフは、速度制限付自動運転状態A4における制限速度の時間推移を示している。
 ロボット2では、速度制限付自動運転状態A4となった時刻T3から、時間TL2の間、制限速度が動作プログラム内で指定されたオーバーライドNmaxとなるまで、線形的にオーバーライドが増加する。すなわち、ロボット制御装置1は、時刻T3から時刻T4(T3+TL2)まで、線形的に制限速度を増加させ、時刻T4での制限速度がオーバーライドNmaxとなるように制限速度を制御する。すなわち、制御方式判定部16は、時間TL2の間、線形的に制限速度を増加させ、時間TL2が経過した時点で制限速度を最大値にする。時刻T4は、T2+TL1+TL2である。なお、制限速度の増加のさせ方としては、線形的に増加させる他、段階的に増加させるようにしてもよい。
 なお、制御方式判定部16は、時間TL2の代わりに、制限速度を算出してもよい。ここでの制限速度は、時間TL2に対応した速度である。この場合、ロボット制御装置1は、時刻T3から制御方式判定部16が算出した制限速度でロボット2を動作させる。ロボット2は、時間TL2の経過後は、自動運転状態A1となり、動作プログラムで指定された動作を実行する。
 図6は、実施の形態にかかるロボット制御装置による制御処理の処理手順を示すフローチャートである。ロボット制御装置1の動作指令部15は、ロボット2に動作指令を出力する(ステップS1)。内力推定部18は、エンコーダ24が検出した検出値の推移と、ロボットモデルパラメータとに基づいて内力を算出する(ステップS2)。外力推定部17は、内力と、力検出器23が検出した各軸にかかるトルクの大きさと、ロボットモデルパラメータとに基づいて外乱推定値Fを推定する(ステップS3)。
 制御方式判定部16は、外乱推定値Fと外力判定値とを比較する。具体的には、制御方式判定部16は、外乱推定値F>外力判定値FA3となったか否かを判定する(ステップS10)。
 外乱推定値F>外力判定値FA3となっていない場合(ステップS10、No)、制御方式判定部16は、ステップS1の処理に戻り、ステップS1~S3の処理を実行する。
 外乱推定値F>外力判定値FA3となった場合(ステップS10、Yes)、制御方式判定部16は、判定値記憶部13に格納されている開始時刻T1を更新し、外乱推定値Fの時間変化を判定値記憶部13に格納する(ステップS20)。
 制御方式判定部16は、外乱推定値Fと外力判定値とを比較する。具体的には、制御方式判定部16は、外乱推定値F≦外力判定値FA3となったか否かを判定する(ステップS30)。
 外乱推定値F≦外力判定値FA3となっていない場合(ステップS30、No)、制御方式判定部16は、時間とともに変化する外乱推定値Fと、外力判定値FA3との比較処理を継続する(ステップS30)。
 外乱推定値F≦外力判定値FA3となった場合(ステップS30、Yes)、制御方式判定部16は、判定値記憶部13に格納されている終了時刻T2を更新し、外乱推定値Fの特徴量を算出する(ステップS40)。
 制御方式判定部16は、外乱推定値Fの特徴量に基づいて、時間TL1,TL2を算出する(ステップS50)。制御方式判定部16は、時間TL1,TL2に基づいた制御方式を設定する(ステップS60)。すなわち、制御方式判定部16は、時間TL1,TL2に対応する制御方式指定情報を生成する。制御方式判定部16は、制御方式指定情報を動作指令部15に送る。また。制御方式判定部16は、判定値記憶部13に格納されている外乱推定値Fの時間変化をクリアする(ステップS70)。
 動作指令部15は、制御方式指定情報に応じた制御を実行する。すなわち、動作指令部15は、時間TL1,TL2に基づいた制御方式でロボット2を制御する(ステップS80)。これにより、ロボット制御装置1は、外乱推定値Fの特徴量に基づいて算出した時間TL1,TL2に従ってロボット2への制御方式を変更する。
 このように、ロボット制御装置1は、ロボット2が受けた外力から算出した外乱推定値Fの特徴量が小さければ、衝突は軽微なものであったと判断し、運転再開までの時間を短縮している。これにより、ロボット制御装置1は、運転再開時から高速で運転することでタクトタイムを短縮できる。
 一方、ロボット制御装置1は、ロボット2が受けた外力から算出した外乱推定値Fの特徴量が大きければ、復旧に時間がかかるものと判断し、運転再開までの時間を長くしている。これにより、ロボット制御装置1は、十分に安全性を確保した上で自動運転を再開することが可能となる。また、ロボット制御装置1は、衝撃力が大きい衝突の場合、自動運転再開時の運転速度を徐々に増加させることによって、運転再開直後のリスクを低減させることができる。このように、ロボット制御装置1は、ロボット2が受けた外力の深刻度合(衝突の大きさ)に応じて、運転再開までの時間、運転再開時の運転速度を制御することで、人の感覚に近い復旧動作を実現することが可能となる。すなわち、ロボット制御装置1は、タクトタイムの短縮と高い安全性との両立を実現することが可能となる。
 ここで、ロボット制御装置1のハードウェア構成について説明する。図7は、実施の形態にかかるロボット制御装置を実現するハードウェア構成例を示す図である。ロボット制御装置1は、入力装置300、プロセッサ100、メモリ200、および出力装置400により実現することができる。プロセッサ100の例は、CPU(Central Processing Unit、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、DSP(Digital Signal Processor)ともいう)またはシステムLSI(Large Scale Integration)である。メモリ200の例は、RAM(Random Access Memory)、ROM(Read Only Memory)である。
 ロボット制御装置1は、プロセッサ100が、メモリ200で記憶されているロボット制御装置1の動作を実行するための、コンピュータで実行可能な、制御プログラムを読み出して実行することにより実現される。ロボット制御装置1の動作を実行するためのプログラムである制御プログラムは、ロボット制御装置1の手順または方法をコンピュータに実行させるものであるともいえる。
 ロボット制御装置1で実行される制御プログラムは、各種処理を実行する実行部を含むモジュール構成となっており、実行部が主記憶装置上にロードされ、実行部が主記憶装置上に生成される。
 入力装置300は、力検出器23から各軸にかかるトルクの大きさを受け付けてプロセッサ100に送る。また、入力装置300は、エンコーダ24からアーム駆動モータ21およびハンド駆動モータ22の回転位置を受け付けてプロセッサ100に送る。
 メモリ200は、動作プログラム記憶部11と、制御パラメータ記憶部12と、判定値記憶部13と、ロボットモデルパラメータを保存するためのロボットモデルパラメータ記憶部14とに対応している。メモリ200は、動作プログラム、制御パラメータ、外力判定値、ロボットモデルパラメータ、制御プログラムなどを記憶する。また、メモリ200は、開始時刻T1、終了時刻T2、外乱推定値Fなどを記憶する。また、メモリ200は、プロセッサ100が各種処理を実行する際の一時メモリに使用される。出力装置400は、アーム駆動モータ21およびハンド駆動モータ22に指令値を出力する。
 制御プログラムは、インストール可能な形式または実行可能な形式のファイルで、コンピュータが読み取り可能な記憶媒体に記憶されてコンピュータプログラムプロダクトとして提供されてもよい。また、制御プログラムは、インターネットなどのネットワーク経由でロボット制御装置1に提供されてもよい。なお、ロボット制御装置1の機能について、一部を専用回路などの専用のハードウェアで実現し、一部をソフトウェアまたはファームウェアで実現するようにしてもよい。
 このように実施の形態では、ロボット制御装置1が、外力判定値と、外乱推定値Fの特徴量とに基づいて制御方式を設定し、設定した制御方式でロボット2を制御するので、衝突発生時の状況に応じた適切なタイミングでロボット2の動作を再開させることができる。
 以上の実施の形態に示した構成は、一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
 1 ロボット制御装置、2 ロボット、11 動作プログラム記憶部、12 制御パラメータ記憶部、13 判定値記憶部、14 ロボットモデルパラメータ記憶部、15 動作指令部、16 制御方式判定部、17 外力推定部、18 内力推定部、21 アーム駆動モータ、22 ハンド駆動モータ、23 力検出器、24 エンコーダ、50 ロボットシステム、100 プロセッサ、200 メモリ、300 入力装置、400 出力装置。

Claims (14)

  1.  モータによって駆動されるアームを有したロボットに動作指令を出力する動作指令部と、
     前記モータの回転位置の推移に基づいて、前記ロボットにかかる内力を算出する内力推定部と、
     前記アームの各軸にかかるトルクの大きさと、前記内力とに基づいて、前記アームが外から受けた外乱の推定値である外乱推定値を算出する外力推定部と、
     前記外乱推定値の特徴量に基づいて、遷移させる前記ロボットの運転状態に対応する制御方式を判定するとともに前記制御方式に切替えるまでの切替時間を可変設定する制御方式判定部と、
     を備え、
     前記動作指令部は、前記制御方式判定部が前記制御方式を設定するまでは、前記ロボットを制御する動作プログラムを用いて自動運転状態となるように前記ロボットを制御し、前記制御方式判定部が前記制御方式を設定すると、可変設定された前記切替時間の経過後に設定された前記制御方式で前記ロボットを制御する、
     ことを特徴とするロボット制御装置。
  2.  前記制御方式判定部は、
     前記運転状態を何れの運転状態に遷移させるかの判定に用いられる閾値である外力判定値と、前記外乱推定値の特徴量とに基づいて、前記制御方式を判定するとともに前記切替時間を可変設定する、
     ことを特徴とする請求項1に記載のロボット制御装置。
  3.  前記制御方式判定部は、前記外乱推定値の特徴量が大きいほど、前記切替時間が長くなるように前記切替時間を設定する、
     ことを特徴とする請求項1または2に記載のロボット制御装置。
  4.  前記運転状態には、
     前記ロボットにかかる応力をいなす方向に前記ロボットが制御されている状態である力覚フィードバック制御状態と、
     前記力覚フィードバック制御状態によって前記外乱の要因が取り除かれ前記ロボットが動かなくなっている状態である静止状態と、
     前記ロボットの動作に速度制限が付されて自動運転が行われる状態である速度制限付自動運転状態と、
     前記自動運転状態と、
     が含まれ、
     前記制御方式判定部は、
     前記力覚フィードバック制御状態にする場合には、前記制御方式のうち前記力覚フィードバック制御状態に対応する第1の制御方式を設定し、
     前記速度制限付自動運転状態にする場合には、前記制御方式のうち前記速度制限付自動運転状態に対応する第2の制御方式を設定し、
     前記自動運転状態にする場合には、前記制御方式のうち前記自動運転状態に対応する第3の制御方式を設定する、
     ことを特徴とする請求項2に記載のロボット制御装置。
  5.  前記制御方式判定部は、
     前記外乱推定値が前記外力判定値のうちの第1の外力判定値を超えると、前記第1の制御方式を設定し、
     前記外乱推定値が前記外力判定値のうちの第2の外力判定値を超えた時刻である開始時刻から、前記外乱推定値が前記第2の外力判定値以下になった時刻である終了時刻までの前記外乱推定値の特徴量に基づいて、前記切替時間のうちの第1の時間を算出し、
     前記第1の制御方式を設定して前記静止状態になった後、前記第1の時間が経過すると前記第2の制御方式を設定する、
     ことを特徴とする請求項4に記載のロボット制御装置。
  6.  前記制御方式判定部は、
     前記開始時刻から前記終了時刻までの前記外乱推定値の特徴量に基づいて、前記切替時間のうちの第2の時間を算出し、
     前記第2の制御方式を設定して前記速度制限付自動運転状態になった後、前記第2の時間が経過すると前記第3の制御方式を設定する、
     ことを特徴とする請求項5に記載のロボット制御装置。
  7.  前記制御方式判定部は、前記第2の時間の間、制限速度を増加させ、前記第2の時間が経過した時点で前記制限速度を最大値にする、
     ことを特徴とする請求項6に記載のロボット制御装置。
  8.  前記外乱推定値の特徴量には、前記開始時刻から前記終了時刻までの前記外乱推定値の最大値と、前記開始時刻から前記終了時刻までの前記外乱推定値の積分値と、前記開始時刻から前記終了時刻までの前記外乱推定値の微分値の最大値と、前記開始時刻から前記終了時刻までの時間の差分との少なくとも1つが含まれている、
     ことを特徴とする請求項6または7に記載のロボット制御装置。
  9.  前記制御方式判定部は、前記最大値に第1の重みを掛けた値と、前記積分値に第2の重みを掛けた値と、前記微分値の最大値に第3の重みを掛けた値と、前記差分に第4の重みを掛けた値のうちの少なくとも2つの値の総和に基づいて、前記第1の時間を算出する、
     ことを特徴とする請求項8に記載のロボット制御装置。
  10.  前記制御方式判定部は、前記最大値に第5の重みを掛けた値と、前記積分値に第6の重みを掛けた値と、前記微分値の最大値に第7の重みを掛けた値と、前記差分に第8の重みを掛けた値のうちの少なくとも2つの値の総和に基づいて、前記第2の時間を算出する、
     ことを特徴とする請求項8に記載のロボット制御装置。
  11.  ロボット制御装置が、モータによって駆動されるアームを有したロボットに動作指令を出力する動作指令出力ステップと、
     前記ロボット制御装置が、前記モータの回転位置の推移に基づいて、前記ロボットにかかる内力を算出する内力推定ステップと、
     前記ロボット制御装置が、前記アームの各軸にかかるトルクの大きさと、前記内力とに基づいて、前記アームが外から受けた外乱の推定値である外乱推定値を算出する外力推定ステップと、
     前記ロボット制御装置が、前記外乱推定値の特徴量に基づいて、遷移させる前記ロボットの運転状態に対応する制御方式を判定するとともに前記制御方式に切替えるまでの切替時間を可変設定する制御方式判定ステップと、
     を含み、
     前記ロボット制御装置は、前記制御方式を設定するまでは、前記ロボットを制御する動作プログラムを用いて自動運転状態となるように前記ロボットを制御し、前記制御方式を設定すると、可変設定された前記切替時間の経過後に設定された前記制御方式で前記ロボットを制御する、
     ことを特徴とするロボット制御方法。
  12.  モータによって駆動されるアームを有したロボットと、
     前記ロボットを制御するロボット制御装置と、
     を具備し、
     前記ロボット制御装置は、
     前記ロボットに動作指令を出力する動作指令部と、
     前記モータの回転位置の推移に基づいて、前記ロボットにかかる内力を算出する内力推定部と、
     前記アームの各軸にかかるトルクの大きさと、前記内力とに基づいて、前記アームが外から受けた外乱の推定値である外乱推定値を算出する外力推定部と、
     前記外乱推定値の特徴量に基づいて、遷移させる前記ロボットの運転状態に対応する制御方式を判定するとともに前記制御方式に切替えるまでの切替時間を可変設定する制御方式判定部と、
     を備え、
     前記動作指令部は、前記制御方式判定部が前記制御方式を設定するまでは、前記ロボットを制御する動作プログラムを用いて自動運転状態となるように前記ロボットを制御し、前記制御方式判定部が前記制御方式を設定すると、可変設定された前記切替時間の経過後に設定された前記制御方式で前記ロボットを制御する、
     ことを特徴とするロボット制御システム。
  13.  モータによって駆動されるアームを有したロボットに動作指令を出力する動作指令出力ステップと、
     前記モータの回転位置の推移に基づいて、前記ロボットにかかる内力を算出する内力推定ステップと、
     前記アームの各軸にかかるトルクの大きさと、前記内力とに基づいて、前記アームが外から受けた外乱の推定値である外乱推定値を算出する外力推定ステップと、
     前記外乱推定値の特徴量に基づいて、遷移させる前記ロボットの運転状態に対応する制御方式を判定するとともに前記制御方式に切替えるまでの切替時間を可変設定する制御方式判定ステップと、
     をコンピュータに実行させ、
     前記制御方式を設定するまでは、前記ロボットを制御する動作プログラムを用いて自動運転状態となるように前記ロボットを制御し、前記制御方式を設定すると、可変設定された前記切替時間の経過後に設定された前記制御方式で前記ロボットを制御する、
     ことを特徴とするロボット制御プログラム。
  14.  モータによって駆動されるアームを有したロボットに動作指令を出力する動作指令部と、
     前記アームの対象物への衝突を検出する衝突検出部と、
     前記衝突に基づいて、遷移させる前記ロボットの運転状態に対応する制御方式を判定するとともに前記制御方式に切替えるまでの切替時間を可変設定する制御方式判定部と、
     を備え、
     前記動作指令部は、前記制御方式判定部が前記制御方式を設定するまでは、前記ロボットを制御する動作プログラムを用いて自動運転状態となるように前記ロボットを制御し、前記衝突の際の衝撃力が大きいほど前記切替時間が長くなるように前記ロボットを制御する、
     ことを特徴とするロボット制御装置。
PCT/JP2022/027901 2022-07-15 2022-07-15 ロボット制御装置、ロボット制御方法、ロボット制御システム、およびロボット制御プログラム WO2024013990A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/JP2022/027901 WO2024013990A1 (ja) 2022-07-15 2022-07-15 ロボット制御装置、ロボット制御方法、ロボット制御システム、およびロボット制御プログラム
JP2022566146A JP7250224B1 (ja) 2022-07-15 2022-07-15 ロボット制御装置、ロボット制御方法、ロボット制御システム、およびロボット制御プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/027901 WO2024013990A1 (ja) 2022-07-15 2022-07-15 ロボット制御装置、ロボット制御方法、ロボット制御システム、およびロボット制御プログラム

Publications (1)

Publication Number Publication Date
WO2024013990A1 true WO2024013990A1 (ja) 2024-01-18

Family

ID=85772946

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/027901 WO2024013990A1 (ja) 2022-07-15 2022-07-15 ロボット制御装置、ロボット制御方法、ロボット制御システム、およびロボット制御プログラム

Country Status (2)

Country Link
JP (1) JP7250224B1 (ja)
WO (1) WO2024013990A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006021287A (ja) * 2004-07-09 2006-01-26 Univ Waseda ロボットの接触力検出装置
JP2006167820A (ja) * 2004-12-13 2006-06-29 Toyota Motor Corp ロボットアームの制御方法
JP2013066965A (ja) * 2011-09-21 2013-04-18 Toshiba Corp ロボット制御装置、外乱判定方法およびアクチュエータ制御方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009066685A (ja) * 2007-09-11 2009-04-02 Sony Corp ロボット装置及びロボット装置の制御方法
CN113459095B (zh) * 2021-06-23 2022-12-06 佛山智能装备技术研究院 一种机器人碰撞响应方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006021287A (ja) * 2004-07-09 2006-01-26 Univ Waseda ロボットの接触力検出装置
JP2006167820A (ja) * 2004-12-13 2006-06-29 Toyota Motor Corp ロボットアームの制御方法
JP2013066965A (ja) * 2011-09-21 2013-04-18 Toshiba Corp ロボット制御装置、外乱判定方法およびアクチュエータ制御方法

Also Published As

Publication number Publication date
JP7250224B1 (ja) 2023-03-31

Similar Documents

Publication Publication Date Title
JP5689704B2 (ja) モータ制御装置およびモータ制御方法
CN107877548B (zh) 进行作业员与机器人的协同作业的生产系统
JP4741637B2 (ja) サーボモータの駆動制御装置及び駆動制御方法
JP6034900B2 (ja) 動作プログラムの再開を判断するロボット制御装置
US10996654B2 (en) Servo controller
JP2665984B2 (ja) 外乱推定オブザーバによる衝突検出方法
CN110072679B (zh) 对机器人的碰撞监视
KR102542089B1 (ko) 로봇의 제어
JP2016159367A (ja) ロボットの動作モードを自動的に切替えるロボット制御装置
JP5265533B2 (ja) サイクリックな製造マシンをローダーまたはアンローダー・マシンと調整して運転するための改善された方法及びシステム
WO2024013990A1 (ja) ロボット制御装置、ロボット制御方法、ロボット制御システム、およびロボット制御プログラム
JP6457778B2 (ja) 数値制御装置
US10162332B2 (en) Servomotor control device, servomotor control method, and computer-readable recording medium
JP2004181543A (ja) 産業用ロボット及びその異常判断方法
JP6409893B2 (ja) モータ制御装置
CN110868109B (zh) 一种电机控制方法、装置、存储介质及其机器人
JP3556779B2 (ja) サーボモータのオーバーシュート防止方法
JP6923581B2 (ja) 産業用ロボットの制御システム
CN113568366A (zh) 机器人的运动控制方法、系统及计算机存储介质
JPH11245191A (ja) 産業用ロボットの駆動軸制御方法及びその装置
JP5250964B2 (ja) モータ制御装置
JP2019013923A (ja) サーボモータ制御装置
CN111969895B (zh) 一种电机抱闸失效状态下的安全停机方法及系统
CN115079635A (zh) 一种成型机控制系统的伺服定位控制方法
JP2002250175A (ja) 開閉体の開閉制御装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22951198

Country of ref document: EP

Kind code of ref document: A1