Control system, control method, and program

The control system simplifies the configuration and enhances responsiveness by using the q-axis current derivative for inertia compensation, addressing the need for additional sensors in conventional systems and improving backdrivability.

JP7896567B2Active Publication Date: 2026-07-29TOYOTA JIDOSHA KK
View PDF 9 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
TOYOTA JIDOSHA KK
Filing Date
2023-07-24
Publication Date
2026-07-29

AI Technical Summary

Technical Problem

Conventional control systems for robots require additional sensors like acceleration sensors for inertia compensation, complicating the system configuration and potentially reducing responsiveness.

Method used

A control system that uses the derivative of the q-axis current to perform inertia compensation through feedforward control, eliminating the need for additional sensors and improving backdrivability by calculating an inertia compensation command value based on the differential value of the q-axis current.

Benefits of technology

Simplifies the system configuration, reduces costs, and enhances responsiveness by performing inertia compensation without additional sensors, while increasing backdrivability and torque.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007896567000011
    Figure 0007896567000011
  • Figure 0007896567000012
    Figure 0007896567000012
  • Figure 0007896567000013
    Figure 0007896567000013
Patent Text Reader

Abstract

To simplify a structure to be capable of enhancing back drivability.SOLUTION: A control system comprises: torque command generation means which generates a torque command value for an actuator; inertia compensation calculation means which calculates an inertia compensation command value based on a differential value of q-axis current of the actuator; and drive command calculation means which adds the torque command value generated by the torque command generation means to the inertia compensation command value calculated by the inertia compensation calculation means to calculate a drive command value and outputs the calculated drive command value to the actuator.SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a control system, control method, and program for controlling actuators such as robots. [Background technology]

[0002] To improve backdrivability, control systems are known that use acceleration sensors and observers to perform inertia compensation through feedback control (see, for example, Patent Document 1). [Prior art documents] [Patent Documents]

[0003] [Patent Document 1] Patent No. 6097174 [Overview of the project] [Problems that the invention aims to solve]

[0004] Incidentally, some control systems perform inertia compensation using methods such as machine learning. In such control systems, additional sensors such as acceleration sensors are required to perform inertia compensation, which may complicate the system's configuration.

[0005] This disclosure was made to solve these problems, and its primary purpose is to provide a control system, control method, and program that can simplify the configuration while improving backdrivability. [Means for solving the problem]

[0006] One aspect of this disclosure for achieving the above objectives is: Torque command generation means for generating torque command values ​​for actuators, An inertia compensation calculation means calculates an inertia compensation command value based on the differential value of the q-axis current of the actuator, Drive command calculation means for calculating a drive command value by adding the torque command value generated by the torque command generation means to the inertia compensation command value calculated by the inertia compensation calculation means, and outputting the calculated drive command value to the actuator; A control system comprising the above. In this aspect, The inertia compensation calculation means may calculate the inertia compensation command value T based on the q-axis current I and the following formula. a * It may be calculated.

Equation

Advantages of the Invention

Brief Description of the Drawings

[0008] [Figure 1] It is a diagram showing a schematic configuration of a robot arm according to this embodiment. [Figure 2] It is a block diagram showing a schematic system configuration of a control system according to this embodiment. [Figure 3] It is a control block diagram of a control system according to this embodiment. [Figure 4] It is a flowchart showing the flow of a control method according to this embodiment. [Figure 5] It is a diagram showing experimental results by a control system according to this embodiment.

Modes for Carrying Out the Invention

[0009] Hereinafter, this embodiment will be described with reference to the drawings. In recent years, there has been a demand for robots that perform highly flexible operations in order to achieve human-robot coexistence. In order to enhance the flexibility of the robot's operation, it is important to increase the back-drivability of the actuators of the robot's joints.

[0010] Increasing the back-drivability of the actuator and making the actuator smaller, lighter, and higher in torque are in a trade-off relationship. Therefore, it is useful to increase the back-drivability of the actuator by compensation control proportional to acceleration.

[0011] On the other hand, in a conventional control system, inertial compensation is performed by feedback control using an acceleration sensor and an observer. Therefore, an additional sensor such as an acceleration sensor is required for inertial compensation, and there is a risk that the configuration will become complicated. In addition, since this control system performs feedback control using an observer, there is also a problem that sufficient responsiveness cannot be obtained.

[0012] In contrast, the control system according to this embodiment uses the derivative of the q-axis current as a substitute for acceleration and performs inertia compensation by providing an inertia torque command to the actuator using feedforward control.

[0013] This eliminates the need for additional sensors such as accelerometers, simplifying the configuration, leading to cost reduction and miniaturization, while also improving the aforementioned backdrivability. Furthermore, by performing inertia compensation using feedforward control without an observer, rather than feedback control using an observer, sufficient responsiveness can be obtained.

[0014] The control system according to this embodiment controls, for example, a robot arm 10 as shown in Figure 1. The robot arm 10 is configured as a multi-jointed arm having a plurality of joints 11. Each joint 11 is configured to be rotatable around multiple axes. Each joint 11 is connected to one another via links or the like.

[0015] At the base of the robot arm 10, multiple actuators 12 are centrally located to rotate each joint 11. Each actuator 12 rotates each joint 11 via a belt 13, wire 14, or the like. This configuration allows for a reduction in the weight of the robot arm 10's main body and improves the backdrivability described above.

[0016] The actuator 12 consists of a motor, such as a servo motor, and a reduction gear that reduces the driving force of the motor. The tip of the robot arm 10 is provided with an end effector 15 that can grasp objects.

[0017] Figure 2 is a block diagram showing a schematic system configuration of the control system according to this embodiment. The control system 1 according to this embodiment includes a torque command generation unit 2, an inertia compensation calculation unit 3, and a drive command calculation unit 4.

[0018] The control system 1 has the hardware configuration of a normal computer, including, for example, a processor such as a CPU (Central Processing Unit) or a GPU (Graphics Processing Unit), an internal memory such as a RAM (Random Access Memory) or a ROM (Read Only Memory), a storage device such as a HDD (Hard Disk Drive) or a SSD (Solid State Drive), an input / output I / F for connecting peripheral devices such as a display, and a communication I / F for communicating with devices outside the apparatus.

[0019] The torque command generation unit 2 is a specific example of torque command generation means. The torque command generation unit 2 generates a torque command value for the actuator 12. The torque command generation unit 2 outputs the generated torque command value to the drive command calculation unit 4.

[0020] The inertia compensation calculation unit 3 is a specific example of inertia compensation calculation means. The inertia compensation calculation unit 3 calculates an inertia compensation command value based on the differential value of the q-axis current of the actuator 12.

[0021] Here, the method for calculating the inertia compensation command value will be described in detail. The above-mentioned back-drivability is defined, for example, as the ease of operation when the actuator 12 is operated by an external force. In a robot, the actuator 12, especially the reduction gear, is a major factor in the deterioration of back-drivability.

[0022] The back-drive torque T representing back-drivability f is generally defined by the following formula (1).

Equation

[0023] In the above formula (1), T s is the static friction force, θ is the output shaft angle of the actuator 12, K a is the stiffness coefficient, and C ais the viscosity coefficient. a This is the coefficient of inertia, and is, for example, the nominal value of the moment of inertia of a motor.

[0024] Furthermore, in equation (1) above, the following can be assumed in this embodiment. • Actuator 12 is a hardware configuration of a motor and a reducer, therefore K a This section can be ignored. • Actuator 12 is in operation, s This section can be ignored. ·I a Since the cogging torque is negligible compared to the torque in the first term, it can be ignored. ·C a This term can be ignored as it is compensated for by other methods.

[0025] Based on the above assumptions, equation (1) can be expressed as equation (2) below.

number

[0026] Furthermore, Back Drive Torque T f The torque constant K t and q-axis current I q Since it can be expressed as, the above equation (2) can be expressed as the following equation (3).

number

[0027] By rearranging equation (3) above, equation (4) below is derived, and further rearranging equation (4) leads to equation (5).

number

[0028] In this case, the third derivative of the angle is physically the jerk, but in equation (5) above, when actually differentiating, a low-pass filter (LPF) is inserted and pseudo-differentiation is performed, which leads to equation (6) below.

number

[0029] By appropriately selecting the time constant τ of the LPF, the derivative of the q-axis current, i.e., the time variation of the q-axis current, can be used as a substitute for acceleration. From equation (6) above, equation (7) can be derived, and using this equation (7), the inertia compensation command value T can be calculated. a * It can be calculated.

number

[0030] In the above formula, τ a is the q-axis current I q This is the time constant when pseudodifferentiating. an This is the inertia compensation coefficient, and is given by the following equation I an =K t / I a It is calculated as follows. However, in practice, the calculated value is adjusted to a value that does not diverge.

[0031] Furthermore, in the velocity region where inertia compensation is required, the second derivative of the angle and the phase are aligned. a Adjust the gain. In doing so, the amplitude may decrease depending on the magnitude of the gain. Considering the magnitude of the gain, the above I an The value is determined.

[0032] Figure 3 is a control block diagram of the control system 1 according to this embodiment. The inertia compensation calculation unit 3 calculates the derivative of the q-axis current based on the current value output from the motor amplifier. Based on the calculated derivative of the q-axis current and equation (7) above, the inertia compensation calculation unit 3 calculates the inertia compensation command value T a * The inertia compensation calculation unit 3 calculates the calculated inertia compensation command value T. a* This is output to the drive command calculation unit 4.

[0033] The drive command calculation unit 4 is one specific example of a drive command calculation means. The drive command calculation unit 4 calculates the inertia compensation command value T calculated by the inertia compensation calculation unit 3. a * The torque command value generated by the torque command generation unit 2 is added to this value to calculate the drive command value. The drive command calculation unit 4 outputs the calculated drive command value to the actuator (motor) 12 via the motor amplifier. The actuator 12 rotates according to the drive command value from the drive command calculation unit 4.

[0034] Next, the control method by the control system 1 according to the present embodiment described above will be explained. Figure 4 is a flowchart showing the flow of the control method according to the present embodiment.

[0035] The torque command generation unit 2 generates a torque command value for the actuator 12 and outputs the generated torque command value to the drive command calculation unit 4 (step S101).

[0036] The inertia compensation calculation unit 3 calculates the derivative of the q-axis current based on the current value output from the motor amplifier or the like (step S102). Based on the calculated derivative of the q-axis current and equation (7) above, the inertia compensation calculation unit 3 calculates an inertia compensation command value and outputs the calculated inertia compensation command value to the drive command calculation unit 4 (step S103).

[0037] The drive command calculation unit 4 calculates a drive command value by adding the torque command value generated by the torque command generation unit 2 to the inertia compensation command value calculated by the inertia compensation calculation unit 3, and outputs the calculated drive command value to the actuator 12 (step S104). The actuator 12 rotates according to the drive command value from the drive command calculation unit 4 (step S105).

[0038] Next, we will describe the results of an experiment comparing the operation of a motor related to the control system 1 according to this embodiment, which performs inertia compensation, and a motor that does not perform inertia compensation. In this experiment, we compared the change in the rotational speed of each motor when an external force was applied to rotate each motor by hand or the like.

[0039] Figure 5 shows the experimental results obtained using the control system 1 according to the present embodiment. The line (1) in the lower left of Figure 5 shows the change in motor rotation speed related to the control system according to the present embodiment that performs inertia compensation. The line (1) in the lower right of Figure 5 shows the change in motor rotation speed without inertia compensation. The thin line (2) in the upper part shows the compensation command value, and the thick line (3) shows the q-axis current value.

[0040] As shown in Figure 5, the motor according to this embodiment, which performs inertia compensation, accelerates more significantly than the motor without inertia compensation, especially when the speed changes, i.e., when accelerating. This indicates that by increasing the torque during acceleration through inertia compensation, it can be rotated more easily when an external force is applied, such as by hand. Therefore, it is shown that the inertia compensation by the control system 1 according to this embodiment is functioning effectively.

[0041] As described above, the control system 1 according to this embodiment includes a torque command generation unit 2 that generates a torque command value for the actuator 12, an inertia compensation calculation unit 3 that calculates an inertia compensation command value based on the differential value of the q-axis current of the actuator 12, and a drive command calculation unit 4 that calculates a drive command value by adding the torque command value generated by the torque command generation unit 2 to the inertia compensation command value calculated by the inertia compensation calculation unit 3, and outputs the calculated drive command value to the actuator 12.

[0042] This eliminates the need for additional sensors such as accelerometers, simplifying the configuration, leading to cost reduction and miniaturization, while also improving backdrivability. Furthermore, by performing inertia compensation using feedforward control without observers, rather than feedback control using observers, sufficient responsiveness can be achieved.

[0043] While several embodiments of this disclosure have been described, these embodiments are presented as examples only and are not intended to limit the scope of the invention. These novel embodiments can be carried out in a variety of other forms, and various omissions, substitutions, and modifications can be made without departing from the spirit of the invention. These embodiments and their variations are included in the scope and spirit of the invention, as well as in the claims and their equivalents.

[0044] This disclosure can also be implemented, for example, by having a processor execute a computer program, as shown in Figure 4.

[0045] Programs can be stored and supplied to a computer using various types of non-transitory computer-readable media. Non-transitory computer-readable media include various types of tangible storage media. Examples of 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 memory (e.g., mask ROMs, PROMs (Programmable ROMs), EPROMs (Erasable PROMs), flash ROMs, RAMs (random access memory)).

[0046] Programs may be supplied to a computer by various types of transient computer-readable medium. Examples of transient computer-readable medium include electrical signals, optical signals, and electromagnetic waves. Transitory computer-readable medium can be supplied to a computer via wired communication channels such as electric wires and optical fibers, or via wireless communication channels.

[0047] Each component constituting the control system 1 according to the above-described embodiments can be implemented not only by program, but also, in whole or in part, by dedicated hardware such as an ASIC (Application Specific Integrated Circuit) or FPGA (Field-Programmable Gate Array). [Explanation of Symbols]

[0048] 1 Control system, 2 Torque command generation unit, 3 Inertia compensation calculation unit, 4 Drive command calculation unit, 10 Robot arm, 11 Joint, 12 Actuator, 13 Belt, 14 Wire, 15 End effector

Claims

1. Torque command generation means for generating torque command values ​​for actuators, An inertia compensation calculation means calculates an inertia compensation command value T a * based on the differential value of the q-axis current of the actuator, A drive command calculation means calculates a drive command value by adding the torque command value generated by the torque command generation means to the inertia compensation command value calculated by the inertia compensation calculation means, and outputs the calculated drive command value to the actuator. Equipped with, The inertia compensation calculation means calculates the inertia compensation command value T a * based on the q-axis current I q and the following formula, [Math 1] However, in the above equation, I an is the inertia compensation coefficient, and τ a is the time constant when the q-axis current I q is pseudo-differentiated. Control system.

2. A step of generating a torque command value for the actuator, The steps include: calculating the inertia compensation command value T a * based on the differential value of the q-axis current of the actuator; The steps include: adding the generated torque command value to the calculated inertia compensation command value to calculate a drive command value, and outputting the calculated drive command value to the actuator; Includes, Based on the q-axis current Iq and the following formula, the inertia compensation command value T a* is calculated. [Math 1] However, in the above equation, I an is the inertia compensation coefficient, and τ a is the time constant when the q-axis current I q is pseudo-differentiated. Control method.

3. A process for generating torque command values ​​for actuators, A process to calculate the inertia compensation command value T a * based on the differential value of the q-axis current of the actuator, The process involves adding the generated torque command value to the calculated inertia compensation command value to calculate a drive command value, and outputting the calculated drive command value to the actuator. Have the computer run it, Based on the q-axis current Iq and the following formula, the inertia compensation command value T a* is calculated. [Math 1] However, in the above equation, I an is the inertia compensation coefficient, and τ a is the time constant when the q-axis current I q is pseudo-differentiated. program.