Background
When the quadruped robot is applied, a certain load is generally carried, but the load parameter is not fixed, and the robot has no prior information on the load parameter; the following two solutions are generally adopted:
1. the influence of different loads on the motion control of the quadruped robot is not considered depending on the robustness of a control algorithm;
2, calibrating parameters of different loads, such as mass, rotational inertia, load mounting positions and the like, and then setting the parameters and structural parameters of the quadruped robot;
in the two schemes: the scheme 1 has high requirement on the robustness of a control system, and can greatly influence the motion stability of the quadruped robot; the scheme 2 can not adapt to the load parameters, and the parameters need to be calibrated in advance for different loads, so that the steps are complicated.
Disclosure of Invention
The invention provides a method for adjusting adaptive load parameters of a quadruped robot to solve the technical problems.
The invention is realized by the following technical scheme: a self-adaptive load parameter adjusting method for a quadruped robot comprises the following steps:
s1: establishing a statics model, a dynamics model and a kinematics model of the leg of the quadruped robot according to data fed back by a basic sensor of the quadruped robot;
wherein, the data fed back by the basic sensor are load mass and centroid position;
s2: when in loading, self-adaptive calibration is carried out on the load parameters by utilizing the self basic sensor of the quadruped robot, and the kinematics model and the dynamics model of the quadruped robot are corrected according to the load parameters;
wherein the load parameters are load mass estimation and centroid position estimation;
specifically, the quadruped robot is provided with 4 legs, each leg is provided with 3 joints, the 3 joints are driven by a motor, the basic sensor comprises an IMU (inertial measurement unit) for estimating the position of the center of the robot body under a world coordinate system and the posture of the robot body, an encoder for feeding back the positions of the joints and a current sampling resistor for feeding back the torque of the joints;
each motor feeds back its estimated output torque, and when the quadruped robot is in static balance, the following static model exists:
where tau is the three-dimensional torque vector of the three joints on each leg,
is the three-dimensional ground reaction force at the foot end of each leg, J is the jacobian matrix for each leg,
is the transposition of the matrix;
the kinematic model in S2 is that the position of the foot end under the world coordinate system is calculated according to the central position of the body, the posture of the body and the joint position fed back by the encoder;
the position of the foot end relative to the gravity center of the body can be calculated according to the motor position at the joint and the kinematic model fed back by the encoder
The position of the foot end under the world coordinate system:
wherein
And the central position of the fuselage is represented, and the state estimation output result is obtained.
The load quality estimation method specifically comprises the following steps:
under the static standing state of the quadruped robot (the speed and the acceleration of the robot are zero), the foot end force calculated according to the static model has the following relation with the whole mass:
wherein
The force of the foot end of the ith leg,
is the estimated total mass of the robot itself and the load, so the estimated load mass can be expressed as:
wherein
Is a known value;
the specific method of centroid position estimation is as follows:
under the static state of standing of four-footed robot, robot speed and acceleration are zero, and the barycenter static moment of robot is zero, promptly:
(1)
wherein
Showing the foot end force of the ith leg,
the distance vector from the foot end of the ith leg to the center of mass of the loaded body is shown,
showing the foot end position of the ith leg,
representing the position of the center of mass of the machine body after loading;
measuring the foot end force and the foot end position of 4 legs for N times, and establishing an equation set consisting of N equations in the step (1):
therein is only provided with
The position of the mass center of the machine body after unknown loading;
when N is more than or equal to 4, the equation set in the step (2) is an overdetermined equation,
the least squares solution for this equation can be found by Singular Value Decomposition (SVD),
and obtaining the relative position of the centroid of the loaded body on the robot structure by subtracting the centroid position of the robot obtained by state estimation.
Compared with the prior art, the invention has the following advantages and beneficial effects:
the load parameter adjusting method disclosed by the invention does not need to know the parameters of the four-foot robot load in advance when in use, utilizes the basic sensor of the four-foot robot to adaptively and accurately estimate the important parameters after the load, and establishes the four-foot robot kinematic model according to the estimated load parameters so as to correct the dynamic model, so that the motion control of the four-foot robot is more stable.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the present invention is further described in detail below with reference to examples and accompanying drawings, and the exemplary embodiments and descriptions thereof are only used for explaining the present invention and are not meant to limit the present invention.
The adaptive load parameter adjusting method for the quadruped robot shown in fig. 1 comprises the following steps:
s1: establishing a statics model, a dynamics model and a kinematics model of the leg of the quadruped robot according to data fed back by a basic sensor of the quadruped robot;
wherein, the data fed back by the basic sensor are load mass and centroid position;
s2: when in loading, the self-adaptive calibration is carried out on the load parameters by utilizing the self basic sensor of the quadruped robot, and the kinematics model and the dynamics model of the quadruped robot are corrected according to the load parameters, so that the motion control of the quadruped robot is more stable;
wherein the load parameters are load mass estimation and centroid position estimation;
specifically, the quadruped robot is provided with 4 legs, each leg is provided with 3 joints, the 3 joints are driven by a motor, the basic sensor comprises an IMU (inertial measurement unit) for estimating the position of the center of the robot body under a world coordinate system and the posture of the robot body, an encoder for feeding back the positions of the joints and a current sampling resistor for feeding back the torque of the joints;
specifically, consider that every moving leg of four-footed robot has three degrees of freedom, and known every degree of freedom passes through joint activity, and every joint all drives through the motor, and when four-footed robot static balance, every motor feeds back its output torque of estimation, has following statics model:
where tau is the three-dimensional torque vector of the three joints on each leg,
is the three-dimensional ground reaction force at the foot end of each leg, J is the jacobian matrix for each leg,
is the transposition of the matrix;
therefore, the foot end force can be estimated according to the current sampling resistance, and the body mass can be estimated by adding the foot end forces of 4 legs;
specifically, the kinematic model in S2 is to calculate the position of the foot end in the world coordinate system according to the center position of the body, the attitude of the body, and the joint position fed back by the encoder;
the position of the foot end relative to the gravity center of the body can be calculated according to the motor position at the joint and the kinematic model fed back by the encoder
The position of the foot end under the world coordinate system:
wherein
Representing the central position of the fuselage, and outputting a result as a state estimation result;
specifically, the specific method for estimating the load mass is as follows: under the static standing state of the quadruped robot, the speed and the acceleration of the robot are zero, and the foot end force calculated according to a static model has the following relation with the whole mass:
wherein
The force of the foot end of the ith leg,
is the estimated total mass of the robot itself and the load, so the estimated load mass can be expressed as:
wherein
Is a known value.
Specifically, the specific method of centroid position estimation is as follows: under the static state of standing of four-footed robot (robot speed and acceleration are zero), the barycenter static moment of robot is zero, promptly:
(1)
wherein
Showing the foot end force of the ith leg,
the distance vector from the foot end of the ith leg to the center of mass of the loaded body is shown,
showing the foot end position of the ith leg,
representing the position of the center of mass of the machine body after loading;
measuring the foot end force and the foot end position of 4 legs for N times, and establishing an equation set consisting of N equations in the step (1):
(2)
therein is only provided with
The position of the mass center of the machine body after unknown loading;
when N is more than or equal to 4, the equation set in the step (2) is an overdetermined equation,
for the least squares solution of this equation, it is found by Singular Value Decomposition (SVD),
and obtaining the relative position of the centroid of the loaded body on the robot structure by making a difference with the centroid position of the robot obtained by state estimation.
The above-mentioned embodiments are intended to illustrate the objects, technical solutions and advantages of the present invention in further detail, and it should be understood that the above-mentioned embodiments are merely exemplary embodiments of the present invention, and are not intended to limit the scope of the present invention, and any modifications, equivalent substitutions, improvements and the like made within the spirit and principle of the present invention should be included in the scope of the present invention.