Zero calibration method and related device for robotic arm control
A zero calibration method includes: adding, based on a first forward kinematics model of a robotic arm of a robot, zero deviations of each joint to form a second forward kinematics model, and simultaneously solving the second forward kinematics model and the first forward kinematics model to obtain an end deviation function; sending target end pose instructions to the robotic arm in a current zero point situation, and acquiring a spatial deviation of an actual position of an end; inputting position information of each joint angle and the spatial deviation, after each stop of motion of the end, into the end deviation function, and performing phase shifting to obtain an objective optimization function; and solving the objective optimization function to obtain a zero deviation value.
1 . A zero calibration method for a robotic arm control, comprising:
adding, based on a first forward kinematics model of a robotic arm of a robot, zero deviations of each joint of the robot to form a second forward kinematics model; and simultaneously solving the second forward kinematics model and the first forward kinematics model to obtain an end effector deviation function;
sending target end effector pose instructions to the robotic arm in a current zero point situation, and acquiring a spatial deviation of an actual position of an end effector;
inputting position information of each joint angle and the spatial deviation, after each stop of motion of the end effector, into the end effector deviation function, and performing transposition to obtain an objective optimization function; and
solving the objective optimization function to obtain a zero deviation value, performing zero calibration for the robotic arm based on the zero deviation value, and controlling motion of the robotic arm after the zero calibration;
wherein, the sending target end effector pose instructions to the robotic arm in a current zero point situation, and acquiring a spatial deviation of an actual position of an end effector specifically comprises:
sending m target end effector pose instructions to the robotic arm in the current zero point situation; and acquiring the spatial deviation between a position of the end effector after the sending of each of second to m-th target end effector pose instructions and after stop of motion of the robotic arm and the actual position of the end effector after the sending of a first target end effector pose instruction;
wherein, the end effector deviation function is specifically:
Δ
p
=
p
′
-
p
=
f
(
q
+
Δ
q
)
-
f
(
q
)
;
wherein, f is a function that characterizes a relationship between values of each joint angle of the robotic arm and a spatial pose of the end effector; q is an n-dimensional vector, representing the values of each joint angle; p is a 3-dimensional vector, representing the spatial pose of the end effector based on f; Δq is an n-dimensional vector, representing a deviation of each joint angle between the current zero point and an ideal zero point; and p′ is a 3-dimensional vector, representing an actual spatial pose of the end effector.
2 . The zero calibration method for a robotic arm control according to claim 1 , wherein the objective optimization function is specifically:
e
i
=
Δ
p
i
-
(
f
(
q
i
+
Δ
q
)
-
f
(
q
i
)
)
;
wherein, i=1,2, . . . ,m; f is a function that characterizes a relationship between values of each joint angle of the robotic arm and a spatial pose of the end effector; q is an n-dimensional vector, representing the values of each joint angle; p is a 3-dimensional vector, representing the spatial pose of the end effector based on f; and Δq is an n-dimensional vector, representing a deviation of each joint angle between the current zero point and an ideal zero point.
3 . A zero calibration device for a robotic arm control, comprising a processor and a memory, wherein
the memory is configured to store program code and transmit the program code to the processor; and
the processor is configured to execute the zero calibration method for a robotic arm control according to claim 2 based on an instruction in the program code.
4 . A non-transitory computer-readable storage medium, wherein the non-transitory computer-readable storage medium is configured to store a program code for executing the zero calibration method for a robotic arm control according to claim 2 .
5 . A zero calibration device for a robotic arm control, comprising a processor and a memory, wherein
the memory is configured to store program code and transmit the program code to the processor; and
the processor is configured to execute the zero calibration method for a robotic arm control according to claim 1 based on an instruction in the program code.
6 . A non-transitory computer-readable storage medium, wherein the non-transitory computer-readable storage medium is configured to store a program code for executing the zero calibration method for a robotic arm control according to claim 1 .
7 . A zero calibration system for a robotic arm control, comprising:
a modeling unit, configured to add, based on a first forward kinematics model of a robotic arm, zero deviations of each joint to form a second forward kinematics model; and simultaneously solve the second forward kinematics model and the first forward kinematics model to obtain an end effector deviation function;
an acquisition unit, configured to send target end effector pose instructions to the robotic arm in a current zero point situation, and acquire a spatial deviation of an actual position of an end effector;
a transform unit, configured to input position information of each joint angle and the spatial deviation, after each stop of motion of the end effector, into the end effector deviation function, and perform transposition to obtain an objective optimization function; and
a calculation unit, configured to solve the objective optimization function to obtain a zero deviation value, perform zero calibration for the robotic arm based on the zero deviation value, and control motion of the robotic arm after the zero calibration;
wherein, the acquisition unit is specifically configured to:
send m target end effector pose instructions to the robotic arm in the current zero point situation; and acquire the spatial deviation between a position of the end effector after the sending of each of second to m-th target end effector pose instructions and after stop of motion of the robotic arm and the actual position of the end effector after the sending of a first target end effector pose instruction; and
The end effector deviation function is specifically:
Δ
p
=
p
′
-
p
=
f
(
q
+
Δ
q
)
-
f
(
q
)
;
wherein, f is a function that characterizes a relationship between values of each joint angle of the robotic arm and a spatial pose of the end effector; q is an n-dimensional vector, representing the values of each joint angle; p is a 3-dimensional vector, representing the spatial pose of the end effector based on f; Δq is an n-dimensional vector, representing a deviation of each joint angle between the current zero point and an ideal zero point; and p′ is a 3-dimensional vector, representing an actual spatial pose of the end effector.
8 . The zero calibration system for a robotic arm control according to claim 7 , wherein
the objective optimization function is specifically:
e
i
=
Δ
p
i
-
(
f
(
q
i
+
Δ
q
)
-
f
(
q
i
)
)
;
wherein, i=1,2, . . . ,m; f is a function that characterizes a relationship between values of each joint angle of the robotic arm and a spatial pose of the end effector; q is an n-dimensional vector, representing the values of each joint angle; p is a 3-dimensional vector, representing the spatial pose of the end effector based on f; and Δq is an n-dimensional vector, representing a deviation of each joint angle between the current zero point and an ideal zero point.