CN117733836A - Calculation method and calculation device - Google Patents

Calculation method and calculation device Download PDF

Info

Publication number
CN117733836A
CN117733836A CN202311215491.7A CN202311215491A CN117733836A CN 117733836 A CN117733836 A CN 117733836A CN 202311215491 A CN202311215491 A CN 202311215491A CN 117733836 A CN117733836 A CN 117733836A
Authority
CN
China
Prior art keywords
value
end effector
joint
characteristic value
torque
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
CN202311215491.7A
Other languages
Chinese (zh)
Inventor
工藤真
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
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 Seiko Epson Corp filed Critical Seiko Epson Corp
Publication of CN117733836A publication Critical patent/CN117733836A/en
Pending legal-status Critical Current

Links

Landscapes

  • Manipulator (AREA)

Abstract

The invention provides a calculation method and a calculation device, which can set proper operation parameters and enable a robot to properly and rapidly operate. The calculation method comprises the following steps: a first step of acquiring torque information, which is information related to torque generated in the motor; a second step of acquiring a predetermined torque value TA1 according to the torque information acquired in the first step; a third step of comparing the torque value TA1 obtained in the second step with a predetermined set value TA 0; and a fourth step of changing the value of the characteristic value so that TA1/TA0 is not more than 1 and TA0-TA 1=TAx is as small as possible to obtain an operation parameter, wherein the operation parameter obtained in the fourth step includes the characteristic value of the nth-1 time (in this case, n is an integer of 2 or more) or the characteristic value of the nth time (in this case, n is an integer of 1 or more) when TAx is stepwise reduced n times by increasing TA1 and becomes TAx < 0.

Description

Calculation method and calculation device
Technical Field
The invention relates to a computing method and a computing device.
Background
In recent years, in factories, robots having mechanical arms are used for operations such as manufacturing, processing, and assembling due to an increase in labor cost and a shortage of talents, and automation of operations originally performed manually is advancing.
When a robot is to perform a task whose predetermined task content is specified, for example, an apparatus as shown in patent document 1 is used, and the operation parameters of the robot are set in advance. The motion parameters include various characteristic values. The characteristic value includes the weight of the end effector, which is a hand attached to the end of the robot arm, the position of the center of gravity of the end effector, and the inertia of the end effector. The inertia of the end effector may be, for example, a maximum allowable inertia of the end effector.
In the device described in patent document 1, a hand is attached to a robot arm in a predetermined posture before the robot arm operates, the robot arm is driven to measure a driving torque of a motor, and the weight of an end effector and the position of the center of gravity of the end effector are obtained from the obtained motor driving torque value and set.
Patent document 1: japanese patent laid-open No. 10-138187
Disclosure of Invention
However, in the device described in patent document 1, the types of operation parameters that can be obtained, that is, the items of the characteristic values are limited, and the calculation method of the characteristic values is problematic, so that it is difficult to set the operation parameters appropriately. Therefore, the mechanical arm may not perform an appropriate operation. That is, there are the following problems: the mechanical arm is excessively loaded during the operation, or the operation is performed at an unnecessarily low speed, or the operation requires a long time.
The calculation method according to an application example of the present invention is characterized in that the calculation method calculates an operation parameter of a robot arm having a joint that rotates about a rotation axis and a motor that rotationally drives the joint, and an end effector is provided at an end of the robot arm,
the motion parameter includes at least one of a weight of the end effector, a position of a center of gravity of the end effector, and an inertia of the joint as a characteristic value,
the calculation method comprises the following steps:
a first step of acquiring torque information, which is information related to torque generated in the motor by driving the motor to rotate the joint;
a second step of acquiring a predetermined torque value TA1 according to the torque information acquired in the first step;
a third step of comparing the torque value TA1 obtained in the second step with a predetermined set value TA 0; and
a fourth step of changing the value of the characteristic value so that TA1/TA0 is not more than 1 and TA0-TA 1=TAx is as small as possible to obtain the operation parameter,
the operation parameters obtained in the fourth step include:
the characteristic value of the nth-1 th time when the TAx is changed to TAx < 0 after being reduced in steps for n times by increasing TA1, wherein n is an integer of 2 or more; or alternatively
When TA1 is increased to decrease TAx stepwise n times and then becomes the characteristic value of the nth time when TAx < 0, n is an integer of 1 or more.
The calculation method according to an application example of the present invention is characterized in that the calculation method calculates an operation parameter of a robot arm having a joint that rotates about a rotation axis and a motor that rotationally drives the joint, and an end effector is provided at an end of the robot arm,
the motion parameter includes at least one of a weight of the end effector, a position of a center of gravity of the end effector, and an inertia of the joint as a characteristic value,
the calculation method comprises the following steps:
a first step of acquiring torque information, which is information related to torque generated in the motor by driving the motor to rotate the joint;
a second step of acquiring a predetermined torque value TB1 according to the torque information acquired in the first step;
a third step of comparing the torque value TB1 acquired in the second step with a predetermined set value TB 0; and
a fourth step of changing the value of the characteristic value so that TB0/TB1 is not more than 1 and TB1 to TB 0= TBx is as small as possible to obtain the operation parameter,
The operation parameters obtained in the fourth step include:
decreasing TBx in steps by decreasing TB1, n being an integer of 2 or more, to the characteristic value of the nth-1 time when the value becomes 0 < TBx after n times; or alternatively
The characteristic value of the nth time when TBx is changed to 0 < TBx after being reduced in steps by reducing TB1 n times, where n is an integer of 1 or more.
The calculation device according to an application example of the present invention is characterized in that the calculation device calculates an operation parameter of a robot arm having a joint that rotates about a rotation axis and a motor that rotationally drives the joint, and an end effector is provided at an end of the robot arm,
the motion parameter includes at least one of a weight of the end effector, a position of a center of gravity of the end effector, and an inertia of the joint as a characteristic value,
the computing device has:
a first acquisition unit that acquires torque information relating to torque generated in the motor by driving the motor to rotate the joint;
a second acquisition unit that acquires a predetermined torque value TA1 from the torque information acquired by the first acquisition unit;
A comparison unit that compares the torque value TA1 acquired by the second acquisition unit with a predetermined set value TA 0; and
a calculation unit that calculates the operation parameter by changing the value of the characteristic value so that TA1/TA0 is not more than 1 and TA0-TA 1=TAx is as small as possible,
the operation parameters obtained by the calculation unit include:
the characteristic value of the nth-1 th time when the TAx is changed to TAx < 0 after being reduced in steps for n times by increasing TA1, wherein n is an integer of 2 or more; or alternatively
When TA1 is increased to decrease TAx stepwise n times and then becomes the characteristic value of the nth time when TAx < 0, n is an integer of 1 or more.
Drawings
Fig. 1 is a diagram showing an overall configuration of a robot system according to a first embodiment of a computing device that executes a computing method of the present invention.
Fig. 2 is a block diagram of the robotic system shown in fig. 1.
Fig. 3 is a graph showing torque information and correction torque information.
Fig. 4 is a flowchart showing an example of the calculation method of the present invention.
Fig. 5 is a flowchart showing a second embodiment of the calculation method of the present invention.
Fig. 6 is a flowchart showing a third embodiment of the calculation method of the present invention.
Fig. 7 is a flowchart showing an example of the calculation method (fourth embodiment) of the present invention.
Fig. 8 is a flowchart showing an example of the calculation method (fifth embodiment) of the present invention.
Description of the reference numerals
1 a robot, 3 control device, 4 teaching device, 5 computing device, 10 mechanical arm, 11 base, 12 first arm, 13 second arm, 14 third arm, 15 fourth arm, 16 fifth arm, 17 sixth arm, 18 torque sensor, 20 end effector, 31 control portion, 32 storage portion, 33 communication portion, 40 display, 41 control portion, 42 storage portion, 43 communication portion, 44 input operation portion, 45 acquisition portion, 100 robotic system, 171 joint, 172 joint, 173 joint, 174 joint, 175 joint, 176 joint, D1 motor drive, D2 motor drive, D3 motor drive, D4 motor drive, D5 motor drive, D6 motor drive, E1 encoder, E2 encoder, E3 encoder, E4 encoder, E5 encoder, E6 encoder, M1 motor, M2 motor, M3 motor, M4 motor, M5 motor, M6 motor, TCP control point TA0 set point, TB0 set point, TA1 value, qq 1 value, O6, Q1, Q2 rotational axis data, TB 2, Q2 data.
Detailed Description
The calculation method and the calculation apparatus according to the present invention will be described in detail below with reference to preferred embodiments shown in the drawings.
First embodiment
Fig. 1 is a diagram showing an overall configuration of a robot system according to a first embodiment of a computing device that executes a computing method of the present invention. Fig. 2 is a block diagram of the robotic system shown in fig. 1. Fig. 3 is a graph showing torque information and correction torque information. Fig. 4 is a flowchart showing an example of the calculation method of the present invention.
For convenience of explanation, the base 11 side in fig. 1 will be referred to as "base end" and the opposite side, i.e., the end effector 20 side, will be referred to as "end" hereinafter.
As shown in fig. 1, a robot system 100 includes a robot 1 and a computing device 5 according to the present invention. The computing device 5 includes a control device 3 and a teaching device 4 for controlling operations of the respective parts of the robot 1.
First, the robot 1 will be described.
In the present embodiment, the robot 1 shown in fig. 1 is a six-axis vertical multi-joint robot having a single arm, and includes a base 11 and a robot arm 10. In addition, the end effector 20 may be attached to the distal end portion of the robot arm 10. The end effector 20 may be a component of the robot 1, or may be a component independent of the robot 1, that is, may not be a component of the robot 1.
The robot 1 is not limited to the illustrated configuration, and may be, for example, a double-arm type articulated robot. The robot 1 may be a horizontal multi-joint robot.
The base 11 is a support body that drivingly supports the robot arm 10 on the base end side, and is fixed to a floor in a factory, for example. The base 11 of the robot 1 is electrically connected to the control device 3 via a relay cable. The connection between the robot 1 and the control device 3 is not limited to the wired connection as in the configuration shown in fig. 1, and may be, for example, a wireless connection. The connection may be made via a network such as the internet.
In the present embodiment, the robot arm 10 includes a first arm 12, a second arm 13, a third arm 14, a fourth arm 15, a fifth arm 16, and a sixth arm 17, which are connected in order from the base 11 side. The number of arms included in the robot arm 10 is not limited to six, and may be one, two, three, four, five, or seven or more, for example. The total length and the like of each arm are not particularly limited, and can be appropriately set.
The base 11 and the first arm 12 are coupled via a joint 171. The first arm 12 is rotatable about a rotation axis O1 extending in the vertical direction with respect to the base 11 about the rotation axis O1. In this way, the rotation axis O1 coincides with the normal line of the floor surface of the floor of the fixed base 11, and the entire robot arm 10 can rotate around the rotation axis O1 in either the forward direction or the reverse direction.
The first arm 12 and the second arm 13 are connected via a joint 172. The second arm 13 is rotatable with respect to the first arm 12 about a rotation axis O2 extending in the horizontal direction.
The second arm 13 and the third arm 14 are connected via a joint 173. The third arm 14 is rotatable with respect to the second arm 13 about a rotation axis O3 extending in the horizontal direction. The rotation axis O3 is parallel to the rotation axis O2.
The third arm 14 and the fourth arm 15 are connected via a joint 174. The fourth arm 15 is rotatable with respect to the third arm 14 about a rotation axis O4 parallel to the central axis direction of the third arm 14. The rotation axis O4 is orthogonal to the rotation axis O3.
The fourth arm 15 and the fifth arm 16 are connected via a joint 175. The fifth arm 16 is rotatable with respect to the fourth arm 15 about the rotation axis O5. The rotation axis O5 is orthogonal to the rotation axis O4.
The fifth arm 16 and the sixth arm 17 are connected via a joint 176. The sixth arm 17 is rotatable with respect to the fifth arm 16 about the rotation axis O6. The rotation axis O6 is orthogonal to the rotation axis O5.
The sixth arm 17 is a robot distal end portion located on the distal-most side of the robot arm 10. The sixth arm 17 is capable of being displaced along with the end effector 20 under the drive of the robotic arm 10.
The end effector 20 shown in fig. 1 has a grip portion capable of gripping a workpiece or a tool. In a state where the end effector 20 is attached to the sixth arm 17, the end portion of the end effector 20 becomes the control point TCP.
The robot 1 includes motors M1, M2, M3, M4, M5, M6, and E1, E2, E3, E4, E5, and E6 as driving units. The motor M1 is incorporated in the joint 171, and rotates the first arm 12 about the rotation axis O1 with respect to the base 11. The motor M2 is incorporated in the joint 172 to relatively rotate the first arm 12 and the second arm 13 about the rotation axis O2. The motor M3 is incorporated in the joint 173 to relatively rotate the second arm 13 and the third arm 14 about the rotation axis O3. The motor M4 is incorporated in the joint 174 to relatively rotate the third arm 14 and the fourth arm 15 about the rotation axis O4. The motor M5 is incorporated in the joint 175 to relatively rotate the fourth arm 15 and the fifth arm 16 about the rotation axis O5. The motor M6 is incorporated in the joint 176, and rotates the fifth arm 16 and the sixth arm 17 relative to each other about the rotation axis O6.
The encoder E1 is incorporated in the joint 171, and detects the position of the motor M1. The encoder E2 is built in the joint 172, and detects the position of the motor M2. The encoder E3 is built in the joint 173, and detects the position of the motor M3. The encoder E4 is built in the joint 174, and detects the position of the motor M4. The encoder E5 is built in the fifth arm 16, and detects the position of the motor M5. The encoder E6 is built in the sixth arm 17, and detects the position of the motor M6. The term "detection position" as used herein refers to a rotation angle of the motor, that is, a rotation amount and an angular velocity including a forward and a reverse rotation, and the detected information is referred to as "position information".
As shown in fig. 2, the motor drivers D1 to D6 are connected to the corresponding motors M1 to M6, respectively, and control the driving of the motors. The motor drivers D1 to D6 are incorporated in the joints 171, 172, 173, 174, and the fifth arm 16 and the sixth arm 17, respectively.
The encoders E1 to E6, the motors M1 to M6, and the motor drivers D1 to D6 are electrically connected to the control device 3, respectively. The positional information of the motors M1 to M6 detected by the encoders E1 to E6, that is, the rotation amounts are transmitted as electric signals to the control device 3. The control device 3 outputs control signals to the motor drivers D1 to D6 shown in fig. 2 based on the position information, and drives the motors M1 to M6. That is, the control of the robot arm 10 means controlling the driving of the motors M1 to M6, thereby controlling the operations of the first arm 12 to the sixth arm 17 belonging to the robot arm 10.
The torque sensor 18 is a sensor that detects the torque of the motor M6. The method of detecting the torque of the torque sensor 18 is not particularly limited, and examples thereof include magnetostrictive, strain gauge, resolver, telemetry, piezoelectric, optical, and capacitive. Information on the torque detected by the torque sensor 18 is converted into an electrical signal and transmitted to the control device 3. The present invention is not limited to this configuration, and information on the torque detected by the torque sensor 18 may be directly transmitted to the teaching device 4. In this case, the terminal of the teaching device 4 connected to the signal line from the torque sensor 18 becomes the acquisition unit 45.
The end effector 20 can be detachably attached to the distal end portion of the robot arm 10. In the present embodiment, the end effector 20 is configured by a hand having a pair of claw portions that can be brought close to or separated from each other, and holding and releasing a workpiece or a tool (not shown) by each claw portion. The force detector attached to the end effector 20 can detect the magnitude and orientation of a reaction force that is a reaction force of a gripping force when gripping a workpiece with two jaws.
The end effector 20 is not limited to the illustrated configuration, and may be configured to hold a workpiece or a tool by suction by a suction portion, for example. The end effector 20 may be a tool such as a grinder, a cutting machine, a gun, a laser irradiator, a screwdriver, or a wrench.
In the present specification, the term "rotary joint 176" or "rotary drive joint 176" means that the fifth arm 16 and the sixth arm 17 connected via the joint 176 are rotated in either one of the forward and reverse directions about the rotation axis O6 of the joint 176 by the drive motor M6. The same applies to the other joints 171 to 175.
Next, the control device 3 and the teaching device 4 will be described.
As shown in fig. 1, in the present embodiment, the control device 3 is provided at a position separated from the robot 1. However, the configuration is not limited to this, and the control device 3 may be incorporated in the base 11. The control device 3 has a function of controlling the driving of the robot 1, and is electrically connected to each part of the robot 1. The control device 3 includes a control unit 31, a storage unit 32, and a communication unit 33. These units are connected to each other via a bus, for example, so as to be able to communicate with each other.
The control unit 31 is configured by, for example, a CPU (Central Processing Unit: central processing unit), and reads and executes various programs such as an operation program stored in the storage unit 32. The signals generated by the control unit 31 are transmitted to each unit of the robot 1 via the communication unit 33, and the signals from each unit of the robot 1 are received by the control unit 31 via the communication unit 33. The signal received by the control unit 31 is subjected to predetermined processing and stored in the storage unit 32, or is used for control or teaching operation of the robot arm 10. By such a control unit 31, the robot arm 10 can execute a predetermined job under a predetermined condition.
The control unit 31 is an execution unit that drives the motors M1 to M6 according to the operation program acquired from the teaching device 4 to rotate the joints 171 to 176, and executes the acceleration operation under a predetermined speed condition (acceleration condition) and a predetermined operation parameter.
The storage unit 32 stores various programs and the like executed by the control unit 31. The storage unit 32 includes, for example, a storage unit having a configuration such as a volatile Memory such as a RAM (Random Access Memory: random access Memory), a nonvolatile Memory such as a ROM (Read Only Memory), and a detachable external storage device.
The communication unit 33 transmits and receives signals to and from other devices using an external interface such as a wired LAN (Local Area Network: local area network) or a wireless LAN. In this case, communication may be performed via a server not shown, or may be performed via a network such as the internet.
The teaching device 4 is a device that creates an operation program of the robot arm 10 before the start of a job (work operation), or sets a speed condition for operating the robot arm 10, various operation parameters, and the like.
Examples of the operation program include a work operation program for actually performing work, a test operation program for experimentally performing work and setting appropriate operation parameters.
The task operation program is a program that represents positional information of the robot arm 10 with time during the task, and is created by direct teaching, indirect teaching, or the like, for example. By performing these teachings, position information is created, and a speed condition and various operation parameters are set separately with time. Further, the configuration may be such that a task operation program created in advance by an operator, a speed condition of time lapse, and various operation parameters are set without teaching.
The test operation program is a program showing positional information with time at the time of test operation, and is set in advance. In addition, during the test operation, the speed condition or various operation parameters are set to predetermined values. The operation of the robot arm 10 during the test operation is a relatively simple operation compared to the working operation program, and examples thereof include an operation in which the control point TCP moves linearly and an operation in which the control point TCP moves circularly.
There are various items, i.e., characteristic values, of the operation parameters. Examples of the characteristic value include the weight of the end effector 20, the position of the center of gravity of the end effector 20, and the inertia of the joint.
The weight of the end effector 20 is a characteristic value indicating how much load is applied to the end of the robot arm 10 by the mounted end effector 20, and the unit thereof is expressed in (kg), for example. Hereinafter, "setting the weight of the end effector 20" refers to setting the maximum allowable load applied to the end of the robot arm 10.
The center of gravity position of the end effector 20 is a characteristic value indicating how far the center of gravity of the load applied to the end of the robot arm 10 by the mounted end effector 20 is deviated from a reference position, for example, and the unit thereof is expressed in (mm), for example. The reference position is, for example, an arbitrary position on the extension line of the rotation axis O6.
Inertia is inertiaThe characteristic moment is a characteristic value indicating the ease of rotation, and the unit is (kg.m) 2 ) And (3) representing. In this embodiment, inertia of the joint 176 will be described below.
By setting these characteristic values to appropriate values, the robot arm 10 can be appropriately operated in consideration of the set speed conditions. That is, the robot arm 10 can be operated quickly without applying an excessive load.
Hereinafter, "setting inertia" refers to setting the maximum allowable inertia. That is, by appropriately setting the inertia, the robot arm 10 operates at a speed as high as possible without exceeding the set value of the inertia of the joint 176 during the operation.
As shown in fig. 1, the teaching device 4 includes a display 40 as a display unit and an input operation unit 44, and in this embodiment, is configured by a notebook computer.
The setting of the characteristic values of the operation parameters and the setting of the speed conditions are performed by appropriately operating the input operation unit 44 on the input screen displayed on the display 40, although not shown.
The input operation unit 44 is composed of a keyboard and a mouse, not shown, and is configured to perform an input operation of various information such as the operation parameters by a user operating them appropriately. The pressing of the teaching button described later is performed, for example, by pressing an arbitrary key on a keyboard, such as an enter key, or by clicking a mouse in a state where a cursor or pointer is aligned to an appropriate position on an input screen of the display 40. The teaching button may be provided at a different position from the input operation unit 44.
The display 40 is made of, for example, liquid crystal, organic EL, or the like, and can display various display screens in color or monochrome. The teaching device 4 is not limited to a notebook computer, and may be a desktop computer or a tablet terminal.
As shown in fig. 2, the teaching device 4 includes a control unit 41, a storage unit 42, and a communication unit 43.
The control unit 41 is configured by at least one processor such as a CPU (Central Processing Unit: central processing unit), for example, and reads and executes various programs such as a teaching program stored in the storage unit 42.
The control unit 41 functions as a calculation unit that calculates a characteristic value and obtains a parameter including the characteristic value.
The storage unit 42 includes, for example, a storage unit having a configuration such as a volatile Memory such as a RAM (Random Access Memory: random access Memory), a nonvolatile Memory such as a ROM (Read Only Memory), and a detachable external storage device. The storage unit 42 stores a program for executing the calculation method of the present invention. The storage unit 42 temporarily stores various operation programs input by the operator, the acquired torque information, the correction torque information, the calculated characteristic values, and the like.
The communication unit 43 transmits and receives signals to and from the control device 3 using an external interface such as a wired LAN (Local Area Network: local area network) or a wireless LAN. In this case, communication may be performed via a server not shown, or may be performed via a network such as the internet. The communication unit 43 transmits information on the operation program stored in the storage unit 42 to the control device 3. The communication unit 43 may receive the information stored in the storage unit 32 and store the information in the storage unit 42.
The acquisition unit 45 is a terminal that acquires torque information transmitted from the torque sensor 18 and that is incorporated in the teaching device 4. The acquisition unit 45 functions as a first acquisition unit that acquires torque information, which will be described later.
The torque information acquired by the acquisition section 45 is stored in the storage section 42 and used to calculate the characteristic value.
Further, a predetermined torque value TA1 is acquired from the torque information acquired by the acquisition unit 45. The control unit 41 functions as a second acquisition unit that acquires the predetermined torque value TA1.
Next, an example of the calculation method of the present invention will be described. Hereinafter, as the calculation of the characteristic value in the operation parameter, the sequence of (1) the calculation of the weight of the end effector 20, (2) the calculation of the center of gravity position of the end effector 20, and (3) the calculation of the inertia will be described.
(1) Calculation of weight of end effector 20
1. Step S101
First, in step S101, various settings are made. This step is performed by the operator inputting the operation program, the speed condition, the characteristic value of the operation parameter, and the like using the teaching device 4.
In this step, an initial value of the weight of the end effector 20 and a set value TA0 serving as a reference for determination in step S105 described later are set as characteristic values.
The set value TA0 is also referred to as a threshold value, and is, for example, a torque value corresponding to the maximum allowable weight of the end effector 20, that is, a torque value to such an extent that physical damage or destruction does not occur even when the end effector 20 having the maximum allowable weight is attached thereto is applied to the robot arm 10. Such a set value TA0 may be obtained by an experiment and stored in the storage unit 42, or may be set appropriately by the operator.
2. Step S102
Next, the control unit 31 of the control device 3 causes the robot arm 10 to perform a test operation based on the information set in step S101.
The test operation is not particularly limited, but it is preferable to repeatedly perform the operation of rotating the joint 173 by 90 ° and then rotating it by 90 ° in the opposite direction when calculating the weight of the end effector 20. Thus, the weight of the end effector 20 can be calculated more accurately.
3. Step S103 (first step)
Next, the control device 3 acquires torque information acquired from the torque sensor 18, and transmits the torque information to the teaching device 4. The teaching device 4 acquires torque information via the acquisition unit 45.
The torque information acquired by the acquisition unit 45 is, for example, data Q1 of a torque value that changes with time, that is, a torque value that changes with time, as shown by a thin line in fig. 3. Fig. 3 is a graph in which the horizontal axis represents time and the vertical axis represents measured values of torque. In the illustrated configuration, the rotational movement of the joint 176 is accelerated and decelerated as a set, and four sets of the same movement are performed.
Such step S103 corresponds to a first step of acquiring torque information concerning the torque generated in the motor M6 by driving the motor M6 to rotate the joint 176.
4. Step S104 (second step)
The control unit 41 of the teaching device 4 acquires the torque value TA1 from the torque information acquired via the acquisition unit 45. In this step, first, the control unit 41 performs a predetermined correction process on the torque information to generate corrected torque information.
As the correction torque information, for example, data Q2 obtained by subjecting data Q1 to a smooth moving average process as shown by a thick line in fig. 3 is cited. The smooth moving average process is a process of causing a torque value at a certain time to reflect a transition of a past torque value, and examples thereof include a simple moving average process, a weighted moving average moving process, an exponential moving average process, and the like. By using such correction torque information, outliers QN and the like caused by noise can be eliminated, and the torque information can be more optimized.
The generation of the correction torque information is not limited to the smooth moving average process, and may be, for example, an interpolation process, an approximation process, a compression process, an amplification process, or a correction process based on any kind of method, such as sampling, for example, the data.
The control unit 41 sets the maximum torque value in the correction torque information indicated by the data Q1 as the torque value TA1. However, the torque value TA1 is not limited to the maximum torque value, and may be, for example, an average value of the maximum torque value at the time of acceleration and the maximum torque value at the time of deceleration of the motor M6.
Such step S104 corresponds to a second step of acquiring the torque value TA1 from the torque information acquired in the first step.
5. Step S105 (third step)
Next, the control unit 41 determines whether TA1 < TA0. That is, the torque value TA1 acquired in step S104 is compared with the set value TA0, and it is determined whether the torque value TA1 is smaller than the set value TA0.
If it is determined in step S105 that TA1 < TA0, the process proceeds to step S106, and if it is determined that TA1 < TA0 is not present, the process proceeds to step S107.
Such step S105 is a third step of comparing the torque value TA1 acquired in the second step with a predetermined set value TA0.
6. Step S106 (fourth step)
The control unit 41 changes the value of the characteristic value, and stores the changed value in the storage unit 42. That is, the control unit 41 resets the weight of the end effector 20 to a value that is heavier than the initial value of the weight of the end effector 20, which is the set value set in step S101, by a predetermined weight (for example, 0.5 kg). Then, step S102 and the steps following it are repeated in this setting.
That is, in the first cycle, a test operation is performed using the weight of the end effector 20 of the initial set value, and the obtained torque value TA1 is compared with the set value TA0. In the second cycle, the test action is performed using the weight of the end effector 20 that is heavier than the initial set point by a predetermined value, and the acquired torque value TA1 is compared with the set point TA0. In the third cycle, a test operation is performed using the weight of the end effector 20 that is heavier than the set value in the second cycle by a predetermined value, and the obtained torque value TA1 is compared with the set value TA0. As the number of cycles increases, the torque value TA1 increases, the difference (TAx) from the set value TA0 decreases stepwise, and the torque value TA1 exceeds the set value TA0 in the nth cycle. I.e. TAx < 0 in the nth cycle.
7. Step S107 (fourth step)
When it is determined in step S105 of the nth time that TA1 < TA0 is not present, the value of the previous characteristic value is set. That is, the characteristic value of the operating parameter used in the work is stored in the storage unit 42 as the weight of the end effector 20, which is the set value used in the n-1 th cycle.
The fourth step of changing the value of the characteristic value so that TA1/TA0 is equal to or smaller than 1 and TA0 to TA 1=tax is as small as possible in steps S106 and S107, and obtaining the operation parameter including the characteristic value.
In this way, the characteristic value set in the above step is the n-1 th characteristic value when the TAx is reduced in steps by increasing TA1 n times (n is an integer of 2 or more) and becomes TAx < 0. That is, the value of the characteristic value is changed and the test operation is performed so that the torque value TA1 gradually approaches the set value TA0, and the characteristic value corresponding to the immediately preceding torque value TA1 before exceeding the set value TA0 is obtained. By operating the robot arm 10 using the operation parameters including the characteristic values thus obtained, the robot arm 10 can be operated promptly assuming a torque value as close to the set value TA0 as possible without applying an excessive load to the robot arm 10.
When the first time is set to be TAx < 0 by decreasing TAx once, the characteristic value of the first time is set to be the characteristic value.
In addition, when it is not necessary to set the characteristic value with high accuracy, the characteristic value of the nth time when the TAx is reduced in steps n times (n is an integer of 1 or more) by increasing TA1 and becomes TAx < 0 may be set as the characteristic value.
As described above, according to the present invention, an appropriate operation parameter can be calculated, and by operating the robot arm 10 using the operation parameter, the robot arm 10 can be operated appropriately and promptly.
The calculation of the characteristic value of the operation parameter, which is the weight of (1) the end effector 20, is described above, and the calculation of the center of gravity position of (2) the end effector 20 and the calculation of the inertia (3) may be performed in the same manner.
(2) Calculation of the position of the center of gravity of the end effector 20
When the center of gravity position of the end effector 20 is obtained, the characteristic value is set as the center of gravity position of the end effector 20, and in step S101, the initial position of the center of gravity position of the end effector 20 is set, and the set value TA0 is set based on, for example, a value at which the distance from the center of gravity is the maximum allowable limit.
The test operation is not particularly limited, but it is preferable to repeatedly perform the operation of rotating the joint 175 by 90 ° and then rotating it by 90 ° in the opposite direction when calculating the center of gravity position of the end effector 20. This allows the center of gravity position of the end effector 20 to be calculated more accurately.
In step S106, the position is reset to a position that is a predetermined value further than the initial position set in step S101, for example, a position that is 0.1cm further than the reference position. Then, step S102 and the steps following it are repeated in this setting. Thus, the appropriate center of gravity position of the end effector 20 can be calculated.
(3) Calculation of inertia
When the inertia of the joint 176 is obtained, the characteristic value is set as the inertia, and in step S101, an initial value of the inertia of the end effector 20 is set, and the set value TA0 is set based on a value that is the maximum allowable limit of the inertia, for example.
The test operation is not particularly limited, but in calculating the inertia of the joint 176, it is preferable to repeatedly perform the operation of rotating the joint 176 by 360 ° and then rotating it by 360 ° in the opposite direction. This allows inertia to be calculated more accurately.
In step S106, the initial value set in step S101 is reset to be larger than the predetermined value, for example, 0.01 kg.multidot.m 2 Is a value of (2). Then, step S102 and the steps following it are repeated in this setting. Thus, an appropriate inertia can be calculated.
As described above, the calculation method according to the present invention is a calculation method for calculating the operation parameters of the robot arm 10, in which the robot arm 10 includes the joint 176 that rotates about the rotation axis O6 and the motor M6 that rotationally drives the joint 176, and the end effector 20 is provided at the end. The operation parameter includes at least one of the weight of the end effector 20, the position of the center of gravity of the end effector 20, and the inertia of the joint 176 as the characteristic value. The calculation method further includes: a first step of acquiring torque information regarding torque generated in the motor M6 by driving the motor M6 to rotate the joint 176; a second step of acquiring a predetermined torque value TA1 from the torque information acquired in the first step; a third step of comparing the torque value TA1 obtained in the second step with a predetermined set value TA 0; and a fourth step of obtaining an operation parameter by changing the value of the characteristic value so that TA1/TA0 is not more than 1 and TA0-TA 1=TAx is as small as possible, wherein the operation parameter obtained in the fourth step includes the characteristic value of the nth-1 time (in this case, n is an integer of 2 or more) or the characteristic value of the nth time (in this case, n is an integer of 1 or more) when TAx is stepwise reduced n times by increasing TA1 and becomes TAx < 0.
Through the first to fourth steps, appropriate operation parameters can be calculated and set. Therefore, by operating the robot arm 10 using the operation parameter, the robot arm 10 can be operated appropriately and quickly.
The calculation device 5 according to the present invention is a calculation device for calculating an operation parameter of the robot arm 10, wherein the robot arm 10 includes a joint 176 that rotates about a rotation axis O6 and a motor M6 that rotationally drives the joint 176, and an end effector 20 is provided at the end. The operation parameter includes at least one of the weight of the end effector 20, the position of the center of gravity of the end effector 20, and the inertia of the joint 176 as the characteristic value. The computing device 5 further includes: a first acquisition unit (acquisition unit 45) that acquires torque information related to torque generated in the motor M6 by driving the motor M6 to rotate the joint 176; a second acquisition unit (control unit 41) that acquires a predetermined torque value TA1 from the torque information acquired by the first acquisition unit; a comparison unit (control unit 41) that compares the torque value TA1 acquired by the second acquisition unit with a predetermined set value TA 0; and a calculation unit (control unit 41) that obtains an operation parameter by changing the value of the characteristic value so that TA1/TA0 is not more than 1 and TA0-TA 1=tax is as small as possible, wherein the operation parameter obtained by the control unit 41 includes the characteristic value of the nth-1 time (in this case, n is an integer of 2 or more) or the characteristic value of the nth time (in this case, n is an integer of 1 or more) when the TAx is gradually reduced n times by increasing TA1 and becomes TAx < 0.
In the present embodiment, the description has been made of the case where one of the weight of the end effector 20, the center of gravity position of the end effector 20, and the inertia of the joint 176 is obtained through the first to fourth steps, but the present invention is not limited to this, and any two or more of these three characteristic values may be obtained simultaneously or overlapping in time in a predetermined order.
The rotation shaft, the joint, and the motor are exemplified by the rotation shaft O6, the joint 176, and the motor M6, but the present invention is not limited thereto, and the rotation shaft O1, the joint 171, and the motor M1, the rotation shaft O2, the joint 172, and the motor M2, the rotation shaft O3, the joint 173, and the motor M3, the rotation shaft O4, the joint 174, and the motor M4, and the rotation shaft O5, the joint 175, and the motor M5 may be used.
In the present embodiment, the control unit 41 is described as an example of the calculation unit, but the present invention is not limited to this, and the control unit 31 may function as the calculation unit. In this case, the terminal of the control device 3 connected to the signal line from the torque sensor 18 serves as an acquisition unit.
In addition, when the detected torque value exceeds a predetermined threshold value, it is preferable to notify the same. Thus, the worker can recognize that an excessive load is applied. In addition, when the notification is made, it is preferable to adopt a configuration in which the initial setting is reset without determining the torque value TA1 and the set value TA 0.
Further, the weight of the end effector 20 and the position of the center of gravity of the end effector 20 may be calculated by a conventional method (japanese patent application laid-open No. 10-138187), and the inertia may be calculated by the calculation method of the present invention.
Second embodiment
Fig. 5 is a flowchart showing a second embodiment of the calculation method of the present invention, and in particular, a flowchart showing an example of a procedure for calculating various characteristic values using the calculation method of the present invention.
A second embodiment of the calculation method of the present invention will be described below with reference to fig. 5, but differences from the first embodiment will be described below, and description of common points will be omitted.
The robot 1 in the present embodiment is a vertical multi-joint robot, in particular, a six-axis vertical multi-joint robot, and the robot arm 10 is a robot arm of the vertical multi-joint robot.
The operation parameters are calculated in a predetermined order from the weight of the end effector 20, the position of the center of gravity of the end effector 20, and the inertia of the joint 176.
In the calculation method of the present embodiment, first, as shown in step S201 in fig. 5, the characteristic value is set as the weight of the end effector 20, and the first, second, third, and fourth steps similar to those described in the first embodiment are performed to calculate the weight of the end effector 20. This step S201 corresponds to the seventh step.
Next, as shown in step S202 in fig. 5, the characteristic value is set as the center of gravity position of the end effector 20, and the first, second, third, and fourth steps similar to those described in the first embodiment are performed, and the center of gravity position of the end effector 20 is calculated. This step S202 corresponds to the eighth step.
Next, as shown in step S203 in fig. 5, the characteristic value is set as the inertia of the joint 176, and the first, second, third, and fourth steps similar to those described in the first embodiment are performed to calculate the inertia of the joint 176. This step S203 corresponds to the ninth step.
In this way, in the vertical multi-joint robot, various different characteristic values can be calculated and set. Thus, the combination of the set characteristic values becomes appropriate, and more appropriate operation parameters can be calculated and set. Therefore, by operating the robot arm 10 using the operation parameter, the robot arm 10 can be operated more appropriately and quickly.
Thus, the manipulator 10 is a manipulator of a vertical multi-joint robot, and the operation parameters include the weight of the end effector 20, the position of the center of gravity of the end effector 20, and the characteristic values of the inertia of the joint 176. The calculation method further includes: a seventh step of setting the characteristic value as the weight of the end effector 20 and performing the first step, the second step, the third step, and the fourth step; an eighth step of performing the first step, the second step, the third step, and the fourth step while setting the characteristic value as the center of gravity position of the end effector 20; and a ninth step of setting the characteristic value as inertia of the joint 176 and performing the first, second, third, and fourth steps, and performing the seventh, eighth, and ninth steps in an arbitrary order.
In this way, in the vertical multi-joint robot, various different characteristic values can be calculated and set. Thus, the combination of the set characteristic values becomes appropriate, and more appropriate operation parameters can be calculated and set. Therefore, by operating the robot arm 10 using the operation parameter, the robot arm 10 can be operated more appropriately and quickly.
In this case, it is preferable to perform the calculation of the weight of the end effector 20, the calculation of the position of the center of gravity of the end effector 20, and the calculation of the inertia in this order. That is, the weight of the end effector 20 can be calculated, the calculated characteristic value can be set as the initial set value of the weight of the end effector 20 set when calculating the position of the center of gravity of the end effector 20, and the two characteristic values can be set as the initial set value of the weight of the end effector 20 and the position of the center of gravity of the end effector 20 set when calculating the inertia. This enables more appropriate inertia calculation.
Third embodiment
Fig. 6 is a flowchart showing a third embodiment of the calculation method of the present invention, and in particular, a flowchart showing an example of a procedure for calculating various characteristic values using the calculation method of the present invention.
A third embodiment of the calculation method of the present invention will be described below with reference to fig. 6, but differences from the first embodiment will be described below, and description of common points will be omitted.
The robot 1 in the present embodiment is a horizontal multi-joint robot, and the robot arm 10 is a robot arm of the horizontal multi-joint robot. Examples of the horizontal multi-joint robot include a horizontal multi-joint robot as disclosed in japanese patent application laid-open publication No. 2021-121450, and a so-called SCARA robot.
The operation parameters include, as characteristic values, the weight of the end effector 20, the position of the center of gravity of the end effector 20, and the inertia of the joint 176, and these characteristic values are calculated in a predetermined order.
In the case where the robot is a SCARA robot, it is preferable to perform calculation of the weight of the end effector 20, calculation of inertia, and calculation of the center of gravity position of the end effector 20 in this order, as shown in fig. 6.
In the calculation method of the present embodiment, first, as shown in step S301 in fig. 6, the characteristic value is set as the weight of the end effector 20, and the first, second, third, and fourth steps similar to those described in the first embodiment are performed to calculate the weight of the end effector 20. This step S301 corresponds to the fifth step.
Next, as shown in step S302 in fig. 6, the characteristic value is set as the inertia of the joint 176, and the first, second, third, and fourth steps similar to those described in the first embodiment are performed to calculate the inertia of the joint 176. This step S302 corresponds to the sixth step.
As described above, the robot arm 10 is a robot arm of a horizontal multi-joint robot, and the operation parameters include the weight of the end effector 20 and the characteristic value of the inertia of the joint 176. The calculation method further includes: a fifth step of setting the characteristic value as the weight of the end effector 20 and performing a first step, a second step, a third step, and a fourth step; and a sixth step of setting the characteristic value as inertia of the joint 176 and performing the first, second, third, and fourth steps, and executing the fifth and sixth steps in an arbitrary order.
In the present embodiment, the weight of the end effector 20 and the inertia of the joint 176 are preferably calculated in this order. That is, the weight of the end effector 20 can be calculated, and the calculated characteristic value can be set as the initial set value of the weight of the end effector 20 set when the inertia is calculated. This enables more appropriate inertia calculation.
The calculation of each characteristic value is not limited to the above-described procedure, and the calculation of the inertia of the joint 176 may be performed and then the weight of the end effector 20 may be calculated.
In the present embodiment, the center of gravity position of the end effector 20 may be calculated as a characteristic value. In this case, the position of the center of gravity of the end effector 20 may be calculated before calculation of the weight of the end effector 20, may be calculated between calculation of the weight of the end effector 20 and calculation of the inertia, or may be calculated after calculation of the inertia.
The test operation in the SCARA robot is not particularly limited, but it is preferable to repeatedly perform the operation of rotating the second arm by 90 ° with respect to the first arm and then rotating the second arm by 90 ° in the opposite direction when calculating the weight of the end effector 20. Thus, the weight of the end effector 20 can be calculated more accurately.
The test operation in the SCARA robot is not particularly limited, but when calculating the inertia of the end effector 20, it is preferable to repeatedly perform the operation of rotating the fourth arm (shaft) by 360 ° and then rotating the fourth arm (shaft) by 360 ° in the opposite direction. This enables more accurate calculation of the inertia of the end effector 20.
The test operation in the SCARA robot is not particularly limited, but when calculating the center of gravity position of the end effector 20, a combined operation is preferable in which an operation of rotating the first arm with respect to the base, an operation of rotating the second arm with respect to the first arm, and an operation of rotating the fourth arm (shaft) are performed simultaneously. This allows the center of gravity position of the end effector 20 to be calculated more accurately.
Fourth embodiment
Fig. 7 is a flowchart showing an example of the calculation method (fourth embodiment) of the present invention.
A fourth embodiment of the calculation method of the present invention will be described below with reference to fig. 7, but differences from the first embodiment will be described below, and description of common points will be omitted. In addition, the calculation of the weight of the end effector 20 is representatively illustrated below.
(1) Calculation of weight of end effector 20
1. Step S101A
First, in step S101A, various settings are made. This step is performed by the operator inputting the operation program, the speed condition, the characteristic value of the operation parameter, and the like using the teaching device 4.
In this step, an initial value of the weight of the end effector 20 and a set value TB0 serving as a reference for determination in step S105A described later are set as characteristic values.
The set value TB0 is also referred to as a threshold value, and is set to a torque value corresponding to a lower limit value of the rotational speed of the joint 176, for example. Such a set value TB0 may be obtained by an experiment and stored in the storage unit 42, or may be set appropriately by the operator.
2. Step S102A
Next, the control unit 31 of the control device 3 causes the robot arm 10 to perform a test operation based on the information set in step S101A.
3. Step S103A (first step)
Next, the control device 3 acquires torque information acquired from the torque sensor 18, and transmits the torque information to the teaching device 4. The teaching device 4 acquires torque information via the acquisition unit 45.
The torque information acquired by the acquisition unit 45 is, for example, data Q1 of a torque value that changes with time, that is, a torque value that changes with time, as shown by a thin line in fig. 3. Fig. 3 is a graph in which the horizontal axis represents time and the vertical axis represents measured values of torque. In the illustrated configuration, the rotational movement of the joint 176 is accelerated and decelerated as a set, and four sets of the same movement are performed.
Such step S103A corresponds to a first step of acquiring torque information concerning torque generated in the motor M6 by driving the motor M6 to rotate the joint 176.
4. Step S104A (second step)
The control unit 41 of the teaching device 4 acquires the torque value TB1 from the torque information acquired via the acquisition unit 45. In this step, first, the control unit 41 performs a predetermined correction process on the torque information to generate corrected torque information. As correction torque information, as described in the first embodiment.
As in the first embodiment, the control unit 41 sets the maximum torque value in the correction torque information indicated by the data Q1 to the torque value TB1. Such step S104A corresponds to the second step of acquiring the torque value TB1 from the torque information acquired in the first step.
5. Step S105A (third step)
Next, the control unit 41 determines whether TB0 < TB1. That is, the torque value TB1 acquired in step S104 is compared with the set value TB0, and it is determined whether the torque value TB1 is greater than the set value TA0.
When it is determined in step S105A that TB0 < TB1, the process proceeds to step S106A, and when it is determined that TB0 < TB1 is not present, the process proceeds to step S107A.
Such step S105A is a third step of comparing the torque value TB1 acquired in the second step with a predetermined set value TB 0.
6. Step S106A (fourth step)
The control unit 41 changes the value of the characteristic value, and stores the changed value in the storage unit 42. That is, the control unit 41 resets the weight of the end effector 20 to a value that is lighter than the initial value of the weight of the end effector 20, which is the set value set in step S101A, by a predetermined weight (for example, 0.5 kg). Then, in this setting, step S102A and the steps thereafter are repeated.
That is, in the first cycle, a test operation is performed using the weight of the end effector 20 of the initial set value, and the obtained torque value TB1 is compared with the set value TB0. In the second cycle, the test action is performed using the weight of the end effector 20 lighter than the initial set point by a predetermined value, and the acquired torque value TA1 is compared with the set point TA 0. In the third cycle, a test operation is performed using the weight of the end effector 20 lighter than the set value in the second cycle by a predetermined value, and the obtained torque value TB1 is compared with the set value TB0. As the number of cycles increases, the difference (TBx) between the torque value TB1 and the set value TB0 becomes smaller stepwise, and the torque value TB1 is lower than the set value TB0 in the nth cycle. I.e. TBx < 0 in the nth cycle.
7. Step S107A (fourth step)
When it is determined in step S105A of the nth time that TB0 < TB1 is not present, the value of the previous characteristic value is set. That is, the characteristic value of the operating parameter used in the work is stored in the storage unit 42 as the weight of the end effector 20, which is the set value used in the n-1 th cycle.
Step S106A and step S107A correspond to a fourth step of changing the value of the characteristic value so that TB0 < TB1 is equal to or smaller than 1 and TB1 to tb0= TBx are as small as possible, and obtaining an operation parameter including the characteristic value.
In this way, the characteristic value set in the above step is the n-1 th characteristic value obtained when the TB1 is reduced and TBx is reduced in steps n times (n is an integer of 2 or more) and then 0 < TBx. That is, the value of the characteristic value is changed and the test operation is performed so that the torque value TB1 gradually approaches the set value TB0, and the characteristic value corresponding to the immediately preceding torque value TB1 before exceeding the set value TB0 is obtained.
In addition, when TBx is reduced once for the first time to 0 < TBx, the characteristic value for the first time is set to the characteristic value.
In addition, when it is not necessary to set the characteristic value with high precision, the characteristic value of the nth time when the TB1 is reduced and TBx is reduced in steps n times (n is an integer of 1 or more) and then becomes 0 < TBx may be set as the characteristic value.
By operating the robot arm 10 using the operation parameters including the characteristic values obtained in this way, the speed of the robot arm 10 is not excessively reduced, and the robot arm 10 can be operated promptly assuming a torque value as close to the set value TB0 as possible.
As described above, according to the present invention, an appropriate operation parameter can be calculated, and by operating the robot arm 10 using the operation parameter, the robot arm 10 can be operated appropriately and promptly.
The calculation of the characteristic value of the operation parameter, which is the weight of (1) the end effector 20, is described above, and the calculation of the center of gravity position of (2) the end effector 20 and the calculation of the inertia (3) may be performed in the same manner.
(2) Calculation of the position of the center of gravity of the end effector 20
When the center of gravity position of the end effector 20 is obtained, the characteristic value is set as the center of gravity position of the end effector 20, and in step S101A, the initial position of the center of gravity position of the end effector 20 is set, and the set value TB0 is set based on, for example, a value at which the distance from the center of gravity is the minimum allowable limit.
In step S106A, the position is reset to a position that is a predetermined value further than the initial position set in step S101A, for example, a position that is 0.1cm further than the reference position. Then, in this setting, step S102A and the steps thereafter are repeated. Thus, the appropriate center of gravity position of the end effector 20 can be calculated.
(3) Calculation of inertia
When the inertia of the joint 176 is obtained, the characteristic value is set as the inertia, and in step S101A, an initial value of the inertia of the end effector 20 is set, and the set value TB0 is set based on a value that is the minimum allowable limit of the inertia, for example.
In step S106A, the initial value set in step S101A is reset to be larger than the predetermined value, for example, 0.01 kg.multidot.m 2 Is a value of (2). Then, in this setting, step S102A and the steps thereafter are repeated. Thus, an appropriate inertia can be calculated.
As described above, the calculation method according to the present invention is a calculation method for calculating the operation parameters of the robot arm 10, in which the robot arm 10 includes the joint 176 that rotates about the rotation axis O6 and the motor M6 that rotationally drives the joint 176, and the end effector 20 is provided at the end. The operation parameter includes at least one of the weight of the end effector 20, the position of the center of gravity of the end effector 20, and the inertia of the joint 176 as the characteristic value. The calculation method further includes: a first step of acquiring torque information regarding torque generated in the motor M6 by driving the motor M6 to rotate the joint 176; a second step of acquiring a predetermined torque value TB1 from the torque information acquired in the first step; a third step of comparing the torque value TB1 obtained in the second step with a predetermined set value TB 0; and a fourth step of obtaining an operation parameter by changing the value of the characteristic value so that TB0/TB1 is not more than 1 and TB1 to tb0= TBx is as small as possible, wherein the operation parameter obtained in the fourth step includes the characteristic value of the nth-1 time (in this case, n is an integer of 2 or more) or the characteristic value of the nth time (in this case, n is an integer of 1 or more) when TBx is stepwise reduced n times by reducing TB1 and then becomes 0 < TBx.
Through the first to fourth steps, appropriate operation parameters can be calculated and set. Therefore, by operating the robot arm 10 using the operation parameter, the robot arm 10 can be operated appropriately and quickly.
Fifth embodiment
Fig. 8 is a flowchart showing an example of the calculation method (fifth embodiment) of the present invention.
A fifth embodiment of the calculation method of the present invention will be described below with reference to fig. 8, but differences from the first embodiment will be described below, and description of common points will be omitted. In addition, the calculation of the center of gravity position of the end effector 20 will be representatively described below.
In the present embodiment, a case will be described in which, when an error occurs in the calculation of inertia, the position of the center of gravity of the end effector 20 is changed in consideration of the error, and the calculation of inertia is performed.
Steps S401 to S405 in fig. 8 correspond to steps S101 to S105, respectively, when the center of gravity position of the end effector 20 is applied in fig. 4.
First, inertia is calculated in the same manner as in the first embodiment, and it is determined whether or not step S104 is completed or whether or not TA1 < TC0 is determined in step S400. That is, the torque value TA1 acquired in step S104 is compared with the set value TC0 (abnormality threshold value), and it is determined whether the torque value TA1 is smaller than the set value TC0. If TA1 < TC0 is determined, the process proceeds to step S105, and if TA1 < TC0 is not determined, the process proceeds to step S406 if excessive torque is determined to be generated.
In step S406, the center of gravity position is changed. That is, the position is reset to a position that is a predetermined value further than the initial position set in step S401, for example, a position that is 0.1cm further than the reference position. Then, step S402 and the steps following it are repeated in this setting. In this way, when the torque value TA1 is abnormal in calculating inertia, the gravity center position of the end effector 20 is changed, so that the inertia and the gravity center position of the end effector 20 can be calculated properly and in good balance in consideration of the characteristic values of each other.
Modification examples
In the above embodiments, the characteristic value of the n-th (in this case, n is an integer of 2 or more) or the n-th (in this case, n is an integer of 1 or more) is set as the characteristic value when the torque value is stepwise reduced n times and the torque value satisfies the predetermined condition, but the present invention is not limited thereto. For example, when n is an integer of 2 or more, the average value of the characteristic value of the nth-1 time and the characteristic value of the nth time may be set as the characteristic value, and the characteristic value when the torque value of the set value is exactly obtained may be obtained by performing linear interpolation and calculation using the characteristic value of the nth-1 time and the characteristic value of the nth time.
The calculation method and the calculation apparatus according to the present invention have been described above with respect to the respective illustrated embodiments, but the present invention is not limited to these. The configurations in the respective embodiments may be appropriately combined or replaced. In addition, any process may be added to the calculation method of the present invention. The respective units of the computing device of the present invention may be replaced with any structures that can perform the same functions. In addition, any structure may be added.

Claims (5)

1. A calculation method is characterized in that,
the calculation method calculates the action parameters of the mechanical arm, the mechanical arm is provided with a joint rotating around a rotation axis and a motor for rotationally driving the joint, the tail end of the mechanical arm is provided with an end effector,
the motion parameter includes at least one of a weight of the end effector, a position of a center of gravity of the end effector, and an inertia of the joint as a characteristic value,
the calculation method comprises the following steps:
a first step of acquiring torque information, which is information related to torque generated in the motor by driving the motor to rotate the joint;
a second step of acquiring a predetermined torque value TA1 according to the torque information acquired in the first step;
a third step of comparing the torque value TA1 obtained in the second step with a predetermined set value TA 0; and
a fourth step of changing the value of the characteristic value so that TA1/TA0 is not more than 1 and TA0-TA 1=TAx is as small as possible to obtain the operation parameter,
the operation parameters obtained in the fourth step include:
the characteristic value of the nth-1 th time when the TAx is changed to TAx < 0 after being reduced in steps for n times by increasing TA1, wherein n is an integer of 2 or more; or alternatively
When TA1 is increased to decrease TAx stepwise n times and then becomes the characteristic value of the nth time when TAx < 0, n is an integer of 1 or more.
2. The method of computing as recited in claim 1, wherein,
the mechanical arm is a mechanical arm of a horizontal multi-joint robot,
the motion parameter includes the characteristic value of the weight of the end effector and the inertia of the joint,
the calculation method comprises the following steps:
a fifth step of setting the characteristic value as a weight of the end effector and performing the first step, the second step, the third step, and the fourth step; and
a sixth step of setting the characteristic value as inertia of the joint and performing the first step, the second step, the third step, and the fourth step,
the fifth step and the sixth step are performed in any order.
3. The method of computing as recited in claim 1, wherein,
the mechanical arm is a mechanical arm of a vertical multi-joint robot,
the motion parameter includes the characteristic value of the weight of the end effector, the position of the center of gravity of the end effector, and the inertia of the joint,
The calculation method comprises the following steps:
a seventh step of setting the characteristic value to a weight of the end effector and performing the first step, the second step, the third step, and the fourth step;
an eighth step of setting the characteristic value as a center of gravity position of the end effector and performing the first step, the second step, the third step, and the fourth step; and
a ninth step of setting the characteristic value as inertia of the joint and performing the first, second, third and fourth steps,
the seventh step, the eighth step, and the ninth step are performed in an arbitrary order.
4. A calculation method is characterized in that,
the calculation method calculates the action parameters of the mechanical arm, the mechanical arm is provided with a joint rotating around a rotation axis and a motor for rotationally driving the joint, the tail end of the mechanical arm is provided with an end effector,
the motion parameter includes at least one of a weight of the end effector, a position of a center of gravity of the end effector, and an inertia of the joint as a characteristic value,
The calculation method comprises the following steps:
a first step of acquiring torque information, which is information related to torque generated in the motor by driving the motor to rotate the joint;
a second step of acquiring a predetermined torque value TB1 according to the torque information acquired in the first step;
a third step of comparing the torque value TB1 acquired in the second step with a predetermined set value TB 0; and
a fourth step of changing the value of the characteristic value so that TB0/TB1 is not more than 1 and TB1 to TB 0= TBx is as small as possible to obtain the operation parameter,
the operation parameters obtained in the fourth step include:
decreasing TBx in steps by decreasing TB1, n being an integer of 2 or more, to the characteristic value of the nth-1 time when the value becomes 0 < TBx after n times; or alternatively
The characteristic value of the nth time when TBx is changed to 0 < TBx after being reduced in steps by reducing TB1 n times, where n is an integer of 1 or more.
5. A computing device, characterized in that,
the computing device computes the action parameters of the mechanical arm, the mechanical arm is provided with a joint rotating around a rotation axis and a motor driving the joint in a rotating way, the tail end of the mechanical arm is provided with an end effector,
The motion parameter includes at least one of a weight of the end effector, a position of a center of gravity of the end effector, and an inertia of the joint as a characteristic value,
the computing device has:
a first acquisition unit that acquires torque information relating to torque generated in the motor by driving the motor to rotate the joint;
a second acquisition unit that acquires a predetermined torque value TA1 from the torque information acquired by the first acquisition unit;
a comparison unit that compares the torque value TA1 acquired by the second acquisition unit with a predetermined set value TA 0; and
a calculation unit that calculates the operation parameter by changing the value of the characteristic value so that TA1/TA0 is not more than 1 and TA0-TA 1=TAx is as small as possible,
the operation parameters obtained by the calculation unit include:
the characteristic value of the nth-1 th time when the TAx is changed to TAx < 0 after being reduced in steps for n times by increasing TA1, wherein n is an integer of 2 or more; or alternatively
When TA1 is increased to decrease TAx stepwise n times and then becomes the characteristic value of the nth time when TAx < 0, n is an integer of 1 or more.
CN202311215491.7A 2022-09-21 2023-09-19 Calculation method and calculation device Pending CN117733836A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2022150086A JP2024044523A (en) 2022-09-21 2022-09-21 Calculation method and calculation device
JP2022-150086 2022-09-21

Publications (1)

Publication Number Publication Date
CN117733836A true CN117733836A (en) 2024-03-22

Family

ID=90253334

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311215491.7A Pending CN117733836A (en) 2022-09-21 2023-09-19 Calculation method and calculation device

Country Status (2)

Country Link
JP (1) JP2024044523A (en)
CN (1) CN117733836A (en)

Also Published As

Publication number Publication date
JP2024044523A (en) 2024-04-02

Similar Documents

Publication Publication Date Title
JP6584102B2 (en) Robot apparatus, robot control method, program, recording medium, and article manufacturing method
JP6504864B2 (en) Robot control method, robot apparatus, program, recording medium, and article manufacturing method
JP5895628B2 (en) ROBOT CONTROL METHOD, ROBOT CONTROL DEVICE, AND ROBOT CONTROL SYSTEM
JP5938954B2 (en) Robot calibration method and calibration apparatus
US11376745B2 (en) Control device, robot, and robot system
CN110405755B (en) Control device, robot, and robot system
JP2018099743A (en) Bend correction method for robot and control device for robot
CN113858189B (en) Robot control method and robot system
US11541541B2 (en) Gripping system
US11660742B2 (en) Teaching method and robot system
JP5316396B2 (en) Robot spring constant identification method and robot spring constant identification apparatus
CN117733836A (en) Calculation method and calculation device
EP4067012B1 (en) Method for controlling robot, robot system, and program for controlling robot
JP5708091B2 (en) Robot control method and robot control apparatus
JP5316395B2 (en) Robot spring constant identification method and robot spring constant identification apparatus
JP2024044522A (en) Calculation method and calculation device
US11752630B2 (en) Speed control method for robot to which one of a plurality of end effectors is detachably attachable and robot system including robot to which one of a plurality of end effectors is detachably attachable
CN112643683B (en) Teaching method
JP2020028923A (en) Control device of articulated robot
JP2014140913A (en) Robot control device, robot control system, and robot control method
JP5240046B2 (en) Robot control apparatus and robot control method
JP7127362B2 (en) ROBOT CONTROL DEVICE, CONTROL METHOD OF ROBOT CONTROL DEVICE, AND ROBOT SYSTEM
US20210178577A1 (en) Control method and robot system
CN115139295A (en) Robot control method, robot system, and storage medium
CN114179076A (en) Working time presentation method, force control parameter setting method, robot system, and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination