Disclosure of Invention
The invention aims to solve the technical problem of providing a self-adaptive control method of a propeller of an underwater robot, aiming at the defect that the propeller is required to be fixedly configured for the movement of an ROV in different directions in the prior art, so that the utilization rate of the propeller is low.
In order to solve the technical problem, the invention provides an adaptive control method of an underwater robot propeller, which comprises the following steps:
the propeller is rotatably arranged on the robot body;
the method comprises the steps that a power control unit is adopted to receive an attitude motion command of an ROV, and a propeller is controlled to rotate in a corresponding direction and angle according to the attitude motion command; and then, calculating based on the attitude motion instruction to obtain a control instruction of the propeller, thereby realizing the self-adaptive control of the propeller.
In the adaptive control method of the underwater robot propeller according to the present invention,
the step of controlling the propeller to rotate in the corresponding direction and angle according to the attitude motion instruction comprises the step of rotating a controller from the current position to a target position according to the attitude motion instruction;
the attitude motion comprises rolling motion, pitching motion, yawing motion, floating and diving motion, forward and backward motion and transverse motion.
In the adaptive control method of the underwater robot propeller according to the present invention, the obtaining of the control command for the propeller includes obtaining a motion influence coefficient matrix of the propeller by performing a judgment based on a target azimuth of the propeller.
In the adaptive control method of the underwater robot propeller according to the present invention, a motion influence coefficient matrix motor _ param of the propeller is:
wherein r is a rolling influence coefficient, p is a pitching influence coefficient, y is a yawing influence coefficient, t is a floating and diving influence coefficient, f is a forward and backward movement influence coefficient, and l is a transverse movement influence coefficient; wherein the serial number 1, 2, 3, … …, n represents the sequence number of the controlled propeller;
the values of the influence coefficients in the motion influence coefficient matrix are all-1, 0 or 1, wherein-1 represents reverse rotation, 0 represents no influence, and 1 represents forward rotation.
In the self-adaptive control method of the underwater robot propeller, three propellers are taken as an example, a first propeller and a second propeller are arranged in parallel along the horizontal direction at the current positions and influence the advancing and retreating and the yawing motion, the first propeller is a positive propeller, and the second propeller is a negative propeller; the current position of the third propeller is on the central symmetry line between the first propeller and the second propeller, the floating and submerging motions are influenced, and the current motion influence coefficient matrix of the three propellers is as follows:
if the third propeller is rotated to a target position, the target position is consistent with the directions of the first propeller and the second propeller, and the motion influence coefficient matrix of the three propellers is as follows:
in the adaptive control method of a propeller of an underwater robot according to the present invention, the obtaining of the control command for the propeller further includes: and obtaining a PWM control value of the propeller.
In the adaptive control method of the underwater robot propeller according to the present invention, the PWM control value for the propeller is calculated by:
setting the gesture motion command of the user as input _ in,
in the formula, roll _ in is a rolling motion instruction, pitch _ in is a pitching motion instruction, yaw _ in is a yawing motion instruction, pitch _ in is a floating-diving motion instruction, forward _ in is a forward-backward motion instruction, and lateralin is a transverse motion instruction;
input _ in is a 6 x 1 matrix, and element intervals are [ -1,1 ];
blade type parameter matrix motor _ reverse ═ λ1λ2...λn]Wherein the value of the lambda element of the blade type parameter is-1 or 1; -1 represents a counter blade, and 1 represents a positive blade;
the signal adjustment coefficient of the PWM control value, threshold _ out _ calc, is:
thrust_out_calc=motor_reverse.*(motor_param*input_in)T;
and then obtaining the PWM control value PWM _ value as:
in the formula, PWM _ max is the maximum value of the PWM control value, PWM _ min is the minimum value of the PWM control value, and the propeller influence parameter, thurst _ out, is:
in the adaptive control method of the underwater robot propeller according to the present invention, the propeller is connected to the robot body through a rotation shaft.
In the self-adaptive control method of the underwater robot propeller, the rotating shaft is driven to rotate by an output shaft of the motor, and the power control unit calculates according to the attitude motion command of the ROV to obtain the control command of the motor.
The self-adaptive control method of the underwater robot propeller has the following beneficial effects: the method is implemented based on the rotatable connection of the propeller to be controlled and the robot body, the propeller is used as a control object, and the connection direction of the propeller and the robot body is adjusted on the basis of obtaining the current posture motion requirement of the robot, so that the propeller can self-adaptively provide the driving force in the current required direction for the robot.
The invention changes the current situation that the propeller on the existing robot body is fixed for providing driving force in a certain direction, and can adaptively adjust the arrangement direction of the propeller according to the control requirement of attitude motion so as to provide driving force for the current motion. The method of the invention can ensure that one propeller provides driving force of a plurality of motion postures according to the requirement, can exert the utilization rate of the propeller to the maximum extent under the condition of limited resources of the propeller, and ensures the full use of power resources.
The invention provides a self-adaptive control method of a propeller of an underwater robot, which is shown in a combined figure 1 and comprises the following steps:
the propeller is rotatably arranged on the robot body;
firstly, a control terminal sends an attitude motion instruction to a power control unit of a robot body, the power control unit is adopted to receive the attitude motion instruction of an ROV (remote operated vehicle), and firstly, a propeller is controlled to rotate in a corresponding direction and angle according to the attitude motion instruction; and then, calculating based on the attitude motion instruction to obtain a control instruction of the propeller, thereby realizing the self-adaptive control of the propeller.
In the embodiment, after the power control unit receives the attitude motion instruction, the control instruction of the propeller is obtained through calculation, so that the attitude motion of the robot in water is realized.
When the power resource of the use scene is limited, the driving force can be provided for any posture movement of the robot by controlling the installation direction of the propeller. Supposing that only one propeller is arranged on the robot body, after the propeller is adjusted in direction theoretically, the robot can move for six postures: any one of the rolling motion, the pitching motion, the yawing motion, the submerging motion, the advancing and retreating motion and the traversing motion provides a driving force. The mode greatly improves the utilization rate of the propeller, and the propeller can not be laid under the requirement of any posture movement, so that power resources are used to the maximum extent.
Further, the step of controlling the propeller to rotate in the corresponding direction and angle according to the attitude motion instruction comprises the step of rotating the controller from the current position to a target position according to the attitude motion instruction;
the attitude motion comprises rolling motion, pitching motion, yawing motion, floating and diving motion, forward and backward motion and transverse motion.
For example, as shown in fig. 2 and 3, in fig. 2, the third thruster 3 is used to provide driving force for the floating and diving movement, and if the current attitude movement command is forward and backward movement, the third thruster 3 can be rotated to the orientation shown in fig. 3, and provides driving force for forward and backward movement together with the first thruster 1 and the second thruster 2. Other forms of movement adjust the orientation of the propeller similarly.
Further, in order to calculate the PWM control value for the propeller, it is necessary to first determine a motion influence coefficient matrix of the propeller:
the obtaining of the control instruction for the propeller includes judging based on a target orientation of the propeller to obtain a motion influence coefficient matrix of the propeller.
The embodiment can be used for controlling one propeller, and can also be applied to controlling a plurality of propellers simultaneously, and the control situation of the plurality of propellers can obtain the final PWM control values of different propellers simultaneously by the following calculation method of the PWM control values.
Further, the motion influence coefficient matrix motor _ param of the thruster is:
wherein r is a rolling influence coefficient, p is a pitching influence coefficient, y is a yawing influence coefficient, t is a floating and diving influence coefficient, f is a forward and backward movement influence coefficient, and l is a transverse movement influence coefficient; wherein the serial number 1, 2, 3, … …, n represents the sequence number of the controlled propeller;
the values of the influence coefficients in the motion influence coefficient matrix are all-1, 0 or 1, wherein-1 represents reverse rotation, 0 represents no influence, and 1 represents forward rotation.
The motion influence coefficient matrix motor _ param is an n x 6 matrix, and n represents the number of propellers.
The value of the motion influence coefficient depends on the initial layout of the propeller on the structure of the robot body, and the motion influence coefficient matrix reflects the influence of the target placing direction of the propeller on the motion postures of all directions. The introduction of the motion influence coefficient matrix realizes the rotation control of the single propeller in the moving directions of advancing and retreating, floating and sinking, pitching and the like under water.
In the embodiment, the corresponding motion influence coefficient can be modified according to the driving mode of the actual propeller, and the vertical propeller can be converted into the horizontal propeller for use, so that the motion power in the horizontal direction is increased; the same applies to the case of a horizontal thruster converted into a vertical thruster.
Still further, with reference to fig. 2 and fig. 3, the value taking method for the motion influence coefficient is further described:
in fig. 2, three propellers are taken as an example, a first propeller and a second propeller are arranged in parallel along the horizontal direction, and affect the advance and retreat and the yaw movement, wherein the first propeller is a positive propeller, and the second propeller is a negative propeller; the current position of the third propeller is on the central symmetry line between the first propeller and the second propeller, the floating and submerging motions are influenced, and the current motion influence coefficient matrix of the three propellers is as follows:
if the third propeller is rotated to a target position, the target position is consistent with the directions of the first propeller and the second propeller, as shown in fig. 3, the motion influence coefficient matrix of the three propellers is as follows:
therefore, the third propeller is converted into the horizontal propeller after rotating, and the horizontal moving power can be increased together with the first propeller and the second propeller.
In fig. 3, the center line of the third propeller is on the central vertical plane of the underwater robot, so that the third propeller does not contribute to yaw movement, but only contributes to forward and backward movement. After the corresponding motion influence coefficient is changed, when forward _ in is input in a forward and backward mode, the third propeller also starts to rotate to provide power.
Still further, the obtaining a control instruction for the propeller further comprises: and obtaining a PWM control value of the propeller. After determining the motion influence coefficient matrix of the propeller, the PWM control value of the propeller may be further calculated.
As an example, the PWM control value for the thruster is calculated by:
setting the gesture motion command of the user as input _ in,
in the formula, roll _ in is a rolling motion instruction, pitch _ in is a pitching motion instruction, yaw _ in is a yawing motion instruction, pitch _ in is a floating-diving motion instruction, forward _ in is a forward-backward motion instruction, and lateralin is a transverse motion instruction;
wherein input _ in is a 6 x 1 matrix, and the element interval is [ -1,1 ];
because the propeller has a positive propeller and a negative propeller, a blade type parameter matrix is introducedmotor_reverse=[λ1λ2...λn]Wherein the value of the lambda element of the blade type parameter is-1 or 1; -1 represents a counter-blade, 1 represents a positive blade; the paddle type parameter matrix is a 1 x n matrix;
the signal adjustment coefficient of the PWM control value, threshold _ out _ calc, is:
thrust_out_calc=motor_reverse.*(motor_param*input_in)T;
and then obtaining the PWM control value PWM _ value as:
in the formula, PWM _ max is the maximum value of the PWM control value, PWM _ min is the minimum value of the PWM control value, and the expression of the propeller influence parameter, thust _ out, is:
considering that the PWM control value of the propeller should be within the operating range [ PWM _ min, PWM _ max ], the threshold _ out value is controlled to have an interval of [ -1,1 ].
The final form of the PWM control value PWM _ value is [ PWM1,pwm2,···,pwmn]1 × n matrix, pwmnRepresents the pwm output value of the n-th propeller.
As an example, in connection with the three propeller frames shown in fig. 2, motor _ reverse [ -111 ].
The following illustrates the calculation process of the PWM control value PWM _ value:
suppose that input _ in is [ 000010 ═ 000010]T,motor_reverse=[1 -1 1]Pwm _ max is 1900 and pwm _ min is 1100; the propeller rotates in two directions, rotates forwards at the minimum value and rotates backwards at the maximum value. Then for the illustration of fig. 2, the threshold _ out _ calc is 1-10](ii) a Then there are:
for the illustration of fig. 3, there are:
in fig. 3, the third propeller finally generates a resultant force in the forward and backward directions with the first propeller and the second propeller to push the robot to move.
The following describes an embodiment of the present disclosure in which the impeller performs a tumbling motion:
fig. 4 shows an initial layout of three propellers, after the first propeller 1 and the second propeller 2 are rotated to be horizontal propellers, the robot can generate rolling motion; the first propeller 1 is a positive propeller, and the second propeller 2 is a negative propeller; motion influence coefficient matrix motor of three propellers after rotationparamComprises the following steps:
the third propeller 3, the first propeller 1 and the second propeller 2 are not on the same straight line and are located on the horizontal central line of the robot body, so that the third propeller 3 has no influence on the rolling motion.
When input _ in is [ 100010 ═ d]TIn time, there are roll and advance and retreat inputs, the calculation yields:
thrust_out_calc=[-1 -1 0],
motor_reverse=[1 -1 1],
at the moment, the first propeller 1 and the second propeller 2 generate opposite thrust, so that the robot generates torque and rolls.
As an example, the propeller is connected to the robot body through a rotation shaft. In order to achieve adaptive control of the propeller, it is necessary that the propeller can meet the requirement of rotating in any direction. For example, the propeller may be connected to the robot body by a universal joint.
And further, the rotating shaft is driven to rotate through an output shaft of the motor, and the power control unit calculates according to the attitude motion instruction of the ROV to obtain a control instruction of the motor. The method comprises the steps of judging the direction and the angle of a target propeller to be rotated according to the propeller azimuth setting required by an attitude motion instruction, outputting a control instruction to a motor according to the direction and the angle, and enabling the motor to drive the target propeller to rotate to the target azimuth. For the rotation of the propeller to the target direction, the propeller can be driven by an output shaft of the motor, for example, a stepping motor is adopted, and the motor is controlled according to the rotation angle.
In conclusion, the method can calculate the PWM value for driving and controlling the propeller by controlling the rotation of the propeller and combining the change of each influence coefficient caused by the rotation of the propeller; the method realizes accurate calculation of the output control value under the condition of instant configuration of the driving directions of all the propellers, and is favorable for improving the working efficiency of the propellers.
Finally, it should be noted that: the above examples are only intended to illustrate the technical solution of the present invention, but not to limit it; although the present invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; and such modifications or substitutions do not depart from the spirit and scope of the corresponding technical solutions of the embodiments of the present invention.