Robot control method and apparatus, robot system, electronic device, and medium

By obtaining the direction of the maximum fluid disturbance and controlling the robot's rotation, the direction of the maximum thrust of the thruster is aligned with the source of the disturbance, thus solving the problem of underwater robots deviating from their trajectory in fluid disturbances and achieving stable movement and efficient task execution of the robot in complex environments.

CN119704190BActive Publication Date: 2025-11-07SHENZHEN CHASING INNOVATION TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411936691.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-12-26
Publication Date
2025-11-07
Estimated Expiration
2044-12-26

AI Technical Summary

Technical Problem

In existing technologies, underwater robots are prone to deviating from their target trajectory when the direction of fluid disturbance is inconsistent with the direction of maximum thrust, which increases the complexity of mission execution. There is an urgent need for a robot control method to achieve fluid disturbance resistance in all directions.

Method used

By identifying the direction of the source of the maximum fluid disturbance, the robot's rotation is controlled so that the direction of the maximum thrust of the thrusters points in that direction. Combined with the rotation of the image acquisition device, this ensures that the robot maintains stable movement in complex environments.

Benefits of technology

It reduces the need for manual intervention by operators, improves the robot's motion stability and task execution efficiency in complex environments, and ensures the robot's stability and high-precision motion control in complex fluid environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119704190B_ABST
    Figure CN119704190B_ABST
Patent Text Reader

Abstract

The application provides a robot control method and device, a robot system, electronic equipment and a medium, and relates to the technical field of robots. The control method comprises: acquiring a source direction of a maximum fluid disturbance, the maximum fluid disturbance being a fluid disturbance with the maximum disturbance intensity among fluid disturbances currently suffered by the robot; and controlling the robot to rotate so that the direction of the maximum propulsion force in the propulsion force generated by a propeller of the robot points to the source direction, wherein the propeller is used to propel the robot to move. In this way, the need for manual intervention of the robot operator is reduced, and the motion stability and task execution efficiency of the robot in a complex environment are improved, and the problem of insufficient motion stability of the robot in the prior art when the direction of the fluid disturbance is inconsistent with the direction of the maximum propulsion force, that is, the robot is easy to deviate from the target trajectory, is improved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of robots, in particular to a robot control method and device, a robot system, electronic equipment and a medium. BACKGROUND

[0002] At present, the motion environment of robots is increasingly complex. In a typical complex environment such as an underwater environment, the disturbance of water flow poses a major challenge to the control performance of robots. In the prior art, underwater robots usually adopt a thruster vector layout, which can only provide strong anti-flow capability in the direction of maximum thrust. However, when the direction of fluid disturbance is inconsistent with the direction of maximum thrust, the robot is prone to deviate from the target trajectory, and the operator needs to frequently manually adjust, increasing the complexity of task execution. Therefore, there is an urgent need for a robot control method to effectively resist fluid disturbance and ensure the stability of robot motion. SUMMARY

[0003] The purpose of the embodiments of the present application is to provide a robot control method, device, robot system, electronic equipment and medium, so that the robot can resist fluid disturbance in all directions.

[0004] In a first aspect, the embodiments of the present application provide a robot control method, which comprises:

[0005] obtaining a source direction of maximum fluid disturbance, the maximum fluid disturbance being the fluid disturbance with the maximum disturbance intensity among the fluid disturbances currently received by the robot;

[0006] controlling the robot to rotate so that the direction of the maximum propulsion force in the propulsion force generated by the thruster of the robot points to the source direction, wherein the thruster is used to propel the robot to move.

[0007] In some embodiments, the method further comprises:

[0008] determining a desired motion direction of the robot according to the obtained motion instruction;

[0009] controlling the robot to move in the desired motion direction.

[0010] In some embodiments, the determination of the desired motion direction of the robot according to the obtained motion instruction comprises:

[0011] obtaining the motion instruction;

[0012] generating a motion vector in a configured control coordinate system according to the motion instruction, the motion vector being used to represent the desired motion direction and desired motion distance of the robot.

[0013] In some embodiments, the controlling the robot to move in the desired moving direction comprises:

[0014] mapping the moving vector to a carrier coordinate system to obtain an actual moving vector, the carrier coordinate system rotating with the rotation of the robot;

[0015] controlling the robot to move in the desired moving direction according to the actual moving vector.

[0016] In some embodiments, the controlling the robot to move in the desired moving direction according to the actual moving vector comprises:

[0017] decomposing the propulsive force generated by the propeller according to the actual moving vector to obtain a moving propulsive force in the same direction as the desired moving direction, and making the robot move in the desired moving direction by using the moving propulsive force.

[0018] In some embodiments, the decomposing the propulsive force generated by the propeller according to the actual moving vector to obtain a moving propulsive force in the same direction as the desired moving direction comprises:

[0019] decomposing the propulsive force generated by the propeller according to the actual moving vector and the disturbance intensity of the fluid disturbance derived from the desired moving direction to obtain a moving propulsive force in the same direction as the desired moving direction.

[0020] In some embodiments, after the controlling the robot to rotate, the method further comprises:

[0021] controlling an image acquisition device of the robot to rotate, so that the field of view direction of the image acquired by the image acquisition device is the desired moving direction.

[0022] In some embodiments, after the controlling the robot to rotate, the method further comprises:

[0023] cropping an original image acquired by an image acquisition device of the robot to obtain a target image with a field of view direction being the desired moving direction.

[0024] In a second aspect, the embodiments of the present application provide a robot control device, which comprises:

[0025] a disturbance direction obtaining module, configured to obtain a source direction of a maximum fluid disturbance, the maximum fluid disturbance being a fluid disturbance with the maximum disturbance intensity among fluid disturbances currently received by the robot;

[0026] a rotation control module configured to control the robot to rotate so that a direction of a maximum propulsion force in propulsion forces generated by a propeller of the robot points to the source direction, wherein the propeller is configured to propel the robot to move.

[0027] In a third aspect, an embodiment of the present application provides a robot system, which comprises the robot control device provided in the second aspect of the present application and the robot.

[0028] In a fourth aspect, an embodiment of the present application provides an electronic device, which comprises:

[0029] a memory configured to store instructions; and

[0030] a processor configured to invoke the instructions from the memory and implement the robot control method provided in the first aspect of the present application when the instructions are executed.

[0031] In a fifth aspect, an embodiment of the present application provides a machine readable storage medium, which stores instructions, and the instructions, when executed by a processor, cause the processor to implement the robot control method according to the first aspect of the present application.

[0032] In the embodiment of the present application, the processor can identify the external disturbance factor that has the most significant impact on the motion stability of the robot in real time by acquiring the source direction of the maximum fluid disturbance. Based on this, the processor controls the robot to rotate, so that the direction of the maximum propulsion force of the propeller of the robot is automatically adjusted to point to the source direction of the maximum fluid disturbance, thereby enhancing the flow resistance of the robot in a complex fluid environment and realizing fluid disturbance resistance of the robot in all directions. Through the above automatic dynamic adjustment process, not only the manual intervention requirement of the operator of the robot is reduced, but also the motion stability and task execution efficiency of the robot in a complex environment are improved, and the problem of insufficient motion stability of the robot in the prior art when the direction of the fluid disturbance is inconsistent with the direction of the maximum propulsion force is improved. BRIEF DESCRIPTION OF DRAWINGS

[0033] Figure 1 is a flowchart of the robot control method provided by an embodiment of the present application;

[0034] Figure 2 is a schematic diagram of a rotation mode of the robot provided by an embodiment of the present application;

[0035] Figure 3 is a structural schematic diagram of the robot control device provided by an embodiment of the present application;

[0036] Figure 4 is a structural schematic diagram of the robot system provided by an embodiment of the present application;

[0037] Figure 5 FIG. 1 is a structural schematic diagram of an electronic device provided by an embodiment of the present application. DETAILED DESCRIPTION

[0038] The technical solutions in the embodiments of the present application will be clearly described below with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only some of the embodiments of the present application, but not all of the embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by a person of ordinary skill in the art belong to the scope of protection of the present application.

[0039] The terms "first", "second", and the like in the specification and claims of the present application are used to distinguish similar objects, and are not used to describe a specific order or sequence. It should be understood that the terms used in this way can be interchanged under appropriate circumstances, so that the embodiments of the present application can be implemented in an order other than that illustrated or described herein, and the objects distinguished by "first", "second", etc. are generally of a kind and do not limit the number of objects, for example, the first object can be one or more. In addition, "and / or" in the specification and claims means at least one of the connected objects, and the character " / ", generally represents a "or" relationship between the front and rear associated objects.

[0040] At present, the motion environment of robots is increasingly complex. In a typical complex environment such as an underwater environment, the disturbance of water flow poses a major challenge to the control performance of the robot. In the prior art, underwater robots usually adopt a thruster vector layout, which can only provide strong anti-flow capability in the direction of maximum thrust. However, when the direction of fluid disturbance is inconsistent with the direction of maximum thrust, the robot is easy to deviate from the target trajectory, and the operator needs to frequently manually adjust, increasing the complexity of task execution. Therefore, there is an urgent need for a robot control method to effectively resist fluid disturbance and ensure the stability of robot motion.

[0041] Based on this, the embodiments of the present application provide a robot control method, device, robot system, electronic device and medium, so that the robot can resist fluid disturbance in all directions.

[0042] The robot control method, device, robot system, electronic device and medium provided by the embodiments of the present application will be described in detail below in combination with the drawings, specific embodiments and application scenarios.

[0043] Please refer to Figure 1 FIG. 1 is a flowchart of a robot control method provided by an embodiment of the present application. As shown in Figure 1 The robot control method includes the following steps S100 to S200.

[0044] Step S100: obtaining a source direction of a maximum fluid disturbance, the maximum fluid disturbance being a fluid disturbance with the largest disturbance intensity among fluid disturbances currently suffered by the robot.

[0045] In this step, the processor first obtains the source direction of the maximum fluid disturbance suffered by the robot. The processor can first monitor the fluid flow in real time through the built-in fluid sensor (such as a flow rate sensor, a fluid pressure sensor, an acceleration sensor, etc.), such as in an underwater environment, the processor obtains the disturbance intensity of the current water flow in each direction. The processor can calculate the disturbance amount in each direction and determine the fluid disturbance direction that has the greatest impact on the stability of the robot. Specifically, the processor can collect flow rate, pressure and other data through the sensor, and calculate the force exerted on the robot by each water flow in combination with the mechanical formula (for example, F = p v A / 2, where F is the pressure exerted by the fluid, p is the fluid density, v is the fluid velocity, and A is the force area) to represent the disturbance intensity of the water flow by the force, and compare the fluid disturbance with the largest disturbance intensity. The source direction of this maximum fluid disturbance represents the direction of the strongest impact suffered by the robot, such as in an underwater environment, it can be the direction with the fastest water flow speed and the largest pressure at the current position of the robot. 2 A / 2, where F is the pressure exerted by the fluid, p is the fluid density, v is the fluid velocity, and A is the force area) to represent the disturbance intensity of the water flow by the force, and compare the fluid disturbance with the largest disturbance intensity. The source direction of this maximum fluid disturbance represents the direction of the strongest impact suffered by the robot, such as in an underwater environment, it can be the direction with the fastest water flow speed and the largest pressure at the current position of the robot.

[0046] Illustratively, assume that the robot performs a submarine pipeline inspection task underwater. The direction and intensity of the water flow measured by the water flow sensor are as follows: the water flow from the north direction has a speed of 1.5 m / s, the water flow from the east direction has a speed of 0.1 m / s, and the water flow from the west direction has a speed of 0.2 m / s.

[0047] The processor analyzes these data and finds that the water flow from the north direction has the largest speed and has the most significant impact on the stability of the robot, causing the largest impact. Therefore, the processor determines that the north direction is the source direction of the maximum fluid disturbance.

[0048] Step S200: controlling the robot to rotate so that the direction of the largest propulsion force in the propulsion force generated by the propeller of the robot points to the source direction, wherein the propeller is used to propel the robot to move.

[0049] After the source direction of the maximum fluid disturbance is determined in step S100, the robot needs to adjust its pose to cope with the fluid disturbance. The processor controls the robot to rotate so that the direction of the maximum propulsion force of the thruster points to, or aligns with, the source direction of the maximum fluid disturbance. Specifically, the processor can calculate the rotation direction (the rotation direction can be rotation around any one or more of the x-axis, y-axis, and z-axis of the robot's own coordinate system) and the corresponding rotation angle that the robot needs to rotate according to the source direction of the maximum fluid disturbance. The processor can also continuously adjust the rotation of the robot according to the difference between the current maximum fluid disturbance direction detected by the sensor and the direction of the maximum propulsion force of the thruster until the two are completely aligned.

[0050] The thruster is then controlled so that the robot rotates by the rotation angle required by the robot. Specifically, the robot rotates to a new pose so that the direction of the maximum propulsion force of the thruster points exactly to the source direction of the maximum fluid disturbance. In this way, the robot can use the maximum propulsion force to resist the fluid impact from the disturbance direction and maintain stable motion.

[0051] In a typical implementation scenario, the robot is moving in a fixed direction of the maximum propulsion force, and the direction of the motion is consistent with the direction of the maximum propulsion force. After the processor detects the source direction of the maximum fluid disturbance that is inconsistent with the direction of the motion, in order to align the direction of the maximum propulsion force with the source direction, the processor calculates the rotation direction and the rotation angle that the robot needs to rotate, and controls the robot to rotate according to the determined rotation direction and rotation angle. In this process, the output direction of the maximum propulsion force does not need to be changed for the robot itself. The processor achieves the alignment of the direction of the maximum propulsion force with the source direction of the maximum fluid disturbance by controlling the thruster to rotate the robot and change the pose of the robot.

[0052] When the processor controls the thruster to rotate the robot, the processor can control the thrust size and direction of the thruster to achieve the rotation of the robot. The processor can obtain the current angle or pose of the robot from an angle sensor or a pose sensor (such as a gyroscope or an accelerometer), determine the required rotation direction and rotation angle by comparing the current pose with the source direction of the maximum fluid disturbance, and calculate the required moment of force around the rotation axis of the robot according to the inertial parameters (such as mass distribution and moment of inertia) of the robot and the desired rotation speed. Finally, the processor can control the thruster to increase the thrust in a certain direction and reduce the thrust in another corresponding direction to form the moment of force and achieve the rotation of the robot.

[0053] It can be understood by those skilled in the art that when the processor controls the thrusters to increase the thrust in a certain direction and reduce the thrust in another corresponding direction, the robot can not stop the output of the maximum thrust in the original direction (the size of the maximum thrust can change due to the generation of the resultant moment); or the processor can pause the output of the maximum thrust in the original direction, and then output the maximum thrust in the original direction again after the rotation process is completed by controlling the thrusters to generate the resultant moment.

[0054] Exemplarily, please refer to Figure 2 , Figure 2 is a schematic diagram of a robot rotation method provided by the embodiment of the present application. It is assumed that the current orientation of the robot is 45° east-north (i.e., moving in the direction of 45° east-north), and the maximum thrust direction of the thruster of the robot is also 45° east-north. According to step S100, the processor has identified that the north direction is the source direction of the maximum fluid disturbance. Therefore, the robot needs to rotate 45° to adjust the maximum thrust direction of the thruster to point to the north direction. The robot starts the rotation mechanism, adjusts the posture by using the steering thruster or other control methods, and finally makes the robot face the north direction. After the adjustment is completed, the robot continues to move in the direction of 45° east-north and can effectively resist the strong fluid disturbance from the north direction, ensuring stability.

[0055] It can be understood by those skilled in the art that the above steps S100-S200 can be implemented by the processor in the main controller arranged on the robot.

[0056] Through the above steps S100-S200, the processor can identify the external disturbance factor that has the most significant impact on the motion stability of the robot in real time by acquiring the source direction of the maximum fluid disturbance. Based on this, the processor controls the robot to rotate, so that the maximum thrust direction of the thruster of the robot is automatically adjusted to point to the source direction of the maximum fluid disturbance, thereby enhancing the flow resistance of the robot in a complex fluid environment and realizing the fluid disturbance resistance of the robot in all directions. Through the above automatic dynamic adjustment process, not only the need for manual intervention of the operator is reduced, but also the motion stability and task execution efficiency of the robot in a complex environment are improved, and the problem of insufficient motion stability of the robot in the prior art when the fluid disturbance direction is inconsistent with the maximum thrust direction is solved.

[0057] In some embodiments, the method further comprises:

[0058] determining a desired motion direction of the robot according to the acquired motion indication;

[0059] controlling the robot to move in the desired motion direction.

[0060] In the embodiment, the processor determines the desired motion direction of the robot (i.e. the direction in which the operator expects the robot to move) by acquiring the motion indication input by the operator, and controls the robot to move along the desired motion direction.

[0061] Specifically, the processor can first receive the motion indication input by the operator or the automatic control program, and convert the motion indication into a motion vector in the built-in control coordinate system, which represents the desired motion direction. On this basis, the processor can comprehensively consider the current pose of the robot and the environmental factor, i.e. the source direction of the maximum fluid disturbance, and control the thrusters to output appropriate thrusts in a manner of vector decomposition of the thrusts generated by the thrusters, so as to push the robot to move stably along the desired motion direction (in combination with steps S100-S200, those skilled in the art can understand that the thrust used to push the robot to move along the desired motion direction is not the maximum thrust generated by the thrusters, unless the desired motion direction is consistent with the source direction of the maximum fluid disturbance). In this way, it is ensured that the robot can perform the task according to the predetermined direction, and can still maintain high-precision motion control under the interference of a complex external environment, thereby improving the efficiency and stability of task completion.

[0062] Those skilled in the art can understand that, in the process of robot motion, the processor can perform steps S100-S200 throughout the process. Similarly, in the process of robot motion, as long as the operator inputs the motion indication, the processor can determine the desired motion direction according to the motion indication, and control the robot to move along the desired motion direction until the next motion indication is acquired. That is, in a typical implementation scenario, the operator first inputs the motion indication to indicate the robot to move along the desired motion direction (the motion indication can include the distance of the motion), and the processor acquires the desired motion direction according to the motion indication after acquiring the motion indication, and then controls the robot to move along the desired motion direction (at this time, the processor can decompose the thrusts generated by the thrusters according to the current environment, and the direction of the maximum thrust can be consistent with the desired motion direction). In the process of motion, the processor detects the source direction of the maximum fluid disturbance (different from the desired motion direction), rotates the robot so that the direction of the maximum thrust is aligned with the source direction, and uses the remaining thrusts generated by the thrusters except the maximum thrust (if necessary, secondary decomposition of the thrusts generated by the thrusters can be performed) to push the robot to continue to move along the desired motion direction.

[0063] The steps S100-S200 can be implemented by a processor in a main controller arranged on the robot, and a processor in an operation device operated by an operator can be configured to acquire the motion instruction, and after determining the desired motion direction according to the motion instruction, the processor in the operation device sends a signal indicating the desired motion direction to the main controller, so that the processor in the main controller can control the motion of the robot according to the desired motion direction. The operation device and the main controller can be in communication connection or electrical connection, and the operation device can include a control handle, so that the operator can input the motion instruction by using the control handle.

[0064] For example, it is assumed that the underwater robot is performing a seabed survey task, and the operator inputs a motion instruction of "moving east". The processor determines that the desired motion direction of the robot is "east" according to the instruction. However, there is a strong fluid disturbance from the north direction in the current underwater environment, which may affect the stability of the robot moving east.

[0065] To ensure that the robot can move along the desired motion direction of "east", the processor controls the propeller to vectorially decompose the propelling force, automatically adjusts the thrust output, and combines an anti-flow control strategy (i.e., the operation of steps S100 and S200 - rotating the robot and pointing the maximum thrust direction to the north direction) to resist the fluid disturbance from the north direction. In this process, the thrust of the propeller is reasonably distributed, which not only offsets the impact of the north flow, but also pushes the robot to move stably towards "east". Finally, the robot overcomes external interference and moves along the desired motion direction, successfully completing the seabed survey task.

[0066] In some embodiments, determining the desired motion direction of the robot according to the acquired motion instruction comprises:

[0067] acquiring the motion instruction;

[0068] generating a motion vector in a configured control coordinate system according to the motion instruction, the motion vector being used to represent the desired motion direction and the desired motion distance of the robot.

[0069] In the present embodiment, the processor determines the desired motion direction and the desired motion distance of the robot by generating a motion vector using the acquired motion instruction. Specifically, first, the processor acquires the motion instruction, such as a control instruction input by the operator or a task instruction generated by an automatic control program. Then, the processor generates a motion vector in a control coordinate system configured in the memory according to the motion instruction (this control coordinate system can not directly act on the motion of the robot and can be stored in the form of a matrix in the memory), and the motion vector is used to represent the desired motion direction and the desired motion distance of the robot, which is a mathematical expression of the motion instruction input by the operator in the control coordinate system.

[0070] As understood by those skilled in the art, the motion vector generated by the processor according to the motion indication represents the desired motion direction and the desired motion distance, which can be the desired motion distance per unit time. Thus, in the case of a larger desired motion distance, a larger desired motion speed is represented, and vice versa. The motion indication can be input by the operator through the control handle in the operating device. The handle joystick is shaken to a specific direction, which is represented as the desired motion direction in the generated motion vector. The handle joystick is pushed to a larger extent, which is represented as a larger desired motion distance (desired motion distance per unit time) in the generated motion vector.

[0071] For example, it is assumed that the operator is controlling an underwater robot to perform a detection task, and the operator inputs a motion indication of "moving forward and rightward" through the control handle in the operating device. In the processor, this motion indication is converted into a motion vector, which is assumed to be [1, 1, 0], where "1" represents moving one unit along the x-axis (forward) and the y-axis (rightward) of the control coordinate system, and there is no motion along the z-axis (up-down direction). Thus, the processor takes this motion vector as the desired motion direction of the robot, i.e., the robot needs to move √2 units in the direction of "45° right front" per unit time.

[0072] In some embodiments, the robot is controlled to move in the desired motion direction, including:

[0073] mapping the motion vector to a carrier coordinate system of the robot to obtain an actual motion vector, the carrier coordinate system rotating with the rotation of the robot;

[0074] controlling the robot to move in the desired motion direction according to the actual motion vector.

[0075] In this embodiment, first, the processor maps the previously generated motion vector from the control coordinate system to the carrier coordinate system of the robot itself (i.e., the physical coordinate system of the robot itself). Specifically, the processor can first calculate the rotation matrix between the control coordinate system and the carrier coordinate system, and then multiply the motion vector by the rotation matrix to achieve the mapping.

[0076] Since the carrier coordinate system is dynamically adjusted with the changes of the robot pose (such as rotation), the actual motion vector of the mapping can reflect the actual motion direction of the robot (i.e. the motion direction from the perspective of the robot itself, rather than the observer). Next, the processor can calculate the thrust and direction of each thruster according to the actual motion vector, so that the robot can move accurately in the desired motion direction. In this way, the motion vector decouples the operation instruction from the physical coordinate system of the robot itself, so that the operator's input and the actual motion of the robot are coordinated and converted, ensuring that the robot can move in the intuitive desired direction for motion control, i.e. the processor keeps the stability of the control coordinate system by the coordinate system conversion algorithm, so that it is not affected by the specific pose of the robot, to ensure the operation experience of the operator.

[0077] Exemplarily, assuming that the underwater robot is performing an ocean exploration task, and the desired motion direction is to move forward in the direction of "45° right front" (i.e. the motion vector in the control coordinate system is [1, 1, 0]). Currently, the robot is affected by the water flow disturbance, and the carrier coordinate system has been rotated, and the x-axis of the carrier is actually oriented in the direction of "35° left front". The processor converts the motion vector [1, 1, 0] to the carrier coordinate system by coordinate mapping, and the actual motion vector [0.707, 0.504, 0] is obtained after mapping. According to the actual motion vector, the processor calculates the thrust distribution of the thruster to drive the robot to move in the mapped direction. Finally, although the direction of the carrier coordinate system has changed, the robot can still accurately move in the desired motion direction of "45° right front" to complete the task. In this process, the motion vector generation is consistent with the motion indication of the operator input, but it is decoupled from the physical coordinate system of the robot itself (carrier coordinate system). Therefore, even if the robot changes the orientation due to external disturbance (such as water flow), the processor can still ensure that the robot moves in the intuitive desired direction of "moving forward while moving right" set by the operator through the conversion algorithm.

[0078] In some embodiments, controlling the robot to move in the desired motion direction according to the actual motion vector comprises:

[0079] Decomposing the thrust generated by the thruster according to the actual motion vector to obtain a motion thrust in the same direction as the desired motion direction, so that the robot moves in the desired motion direction using the motion thrust.

[0080] In the embodiment, the robot decomposes the propulsion force of the propeller according to the actual motion vector (as can be understood by those skilled in the art, if the propeller is outputting the propulsion force to control the motion of the robot, the processor can decompose the current output propulsion force of the propeller; if the propeller is not currently outputting the propulsion force, the robot is in a stationary state, and the processor can decompose the maximum propulsion force that the propeller can output to reach its physical limit in multiple directions) to achieve precise motion in the desired motion direction.

[0081] Specifically, the processor can first calculate the components of the propulsion force in different directions using the actual motion vector, and extract the propulsion force component consistent with the desired motion direction, i.e., the motion propulsion force (in the case where the desired motion direction is inconsistent with the direction of the source of the maximum fluid disturbance, the motion propulsion force is not the maximum propulsion force of the propeller). Then, the processor adjusts the thrust output of the propeller to make the robot move in the desired motion direction with appropriate force and direction.

[0082] In a typical implementation scenario, the robot is moving in the direction of the fixed maximum propulsion force, and the direction of the motion is consistent with the direction of the maximum propulsion force. After the processor detects the direction of the source of the maximum fluid disturbance inconsistent with the direction of the motion, in order to align the direction of the maximum propulsion force with the source direction, the processor calculates the rotation direction and rotation angle in which the robot needs to rotate, and controls the robot to rotate according to the determined rotation direction and rotation angle. At the same time, since the processor does not receive a new motion instruction, the processor remaps in the carrier coordinate system after rotation according to the obtained motion vector to obtain the actual motion vector, decomposes and adjusts the generated propulsion force of the propeller to generate a motion propulsion force consistent with the desired motion direction, and drives the robot to move in the desired direction, under the premise that the maximum propulsion force in the decomposed propulsion force is aligned with the source direction.

[0083] This way of decomposing and adjusting the propulsion force can integrate complex multi-directional thrust into an effective propulsion force consistent with the desired motion direction, thereby ensuring that the robot can stably move towards the target direction even in a complex environment.

[0084] For example, assume that the underwater robot is performing a task and the desired motion direction is "east". Currently, the robot is affected by the water flow (the source direction of the maximum fluid disturbance is northeast), the carrier posture is deflected, and the thruster needs to generate effective motion thrust in the posture deviated from the "east" direction. The processor identifies the actual motion vector by calculation and decomposes the thrust of the thruster. For example, the thruster provides a maximum thrust of 10 Newton in the "northeast" direction to resist the maximum fluid disturbance, a thrust of 7.1 Newton in the "east" direction, and a thrust of 7.1 Newton in the "north" direction. The processor eliminates the unnecessary "north" direction component according to the calculation result and only retains the 7.1 Newton "east" direction thrust consistent with the desired motion direction. Subsequently, the thruster outputs the adjusted thrust to ensure that the robot finally moves stably along the desired motion direction of "east".

[0085] In some embodiments, decomposing the thrust generated by the thruster according to the actual motion vector to obtain a motion thrust in the direction consistent with the desired motion direction comprises:

[0086] Decomposing the thrust generated by the thruster according to the actual motion vector and the disturbance intensity of the fluid disturbance from the desired motion direction to obtain a motion thrust in the direction consistent with the desired motion direction.

[0087] In the embodiment, the processor decomposes the thrust generated by the thruster according to the actual motion vector and the fluid disturbance intensity of the desired motion direction to obtain a motion thrust in the direction consistent with the desired motion direction, so that the robot can move along the desired motion direction using the motion thrust.

[0088] Specifically, the processor first determines the current thrust distribution and direction of the thruster according to the actual motion vector, and then dynamically adjusts the decomposition method of the thruster thrust in combination with the intensity and direction of the fluid disturbance. Through the decomposition process, the processor ensures that the motion thrust in the direction consistent with the desired motion direction can offset the influence of the fluid disturbance from the desired motion direction on the robot motion, and can ensure that the robot can move along the desired motion direction after offsetting the fluid disturbance from the desired motion direction. This control method optimizes the distribution of the thrust, not only improves the stability of the robot in the complex fluid environment, but also maintains the efficient motion of the robot along the predetermined trajectory.

[0089] Exemplarily, assume that the underwater robot is performing a task, and the desired movement direction is "eastward". Currently, the robot is affected by the water flow (the source direction of the maximum fluid disturbance is northeast), the carrier posture is deflected, and the thrusters need to generate effective movement thrust in the posture deviated from the "eastward" direction. The processor identifies the actual movement vector and decomposes the thrust of the thrusters by calculation. For example, the thrusters provide a maximum thrust of 10 Newton in the "northeast" direction to resist the maximum fluid disturbance, 7.1 Newton in the "east" direction, and 7.1 Newton in the "north" direction. According to the calculation result, the processor determines that the fluid disturbance from the east direction requires 3 Newton of force to resist, and an additional 5 Newton of force is needed to advance the robot after canceling the fluid disturbance, and the processor transfers 0.9 Newton of force from the "north" direction to the "east" direction, so that the thrusters provide a thrust of 8 Newton in the "east" direction. Subsequently, the thrusters output the adjusted thrust to ensure that the robot finally advances stably along the desired movement direction of "east".

[0090] In some embodiments, after controlling the robot to rotate, the method further comprises:

[0091] Controlling the image acquisition device of the robot to rotate so that the field of view direction of the image acquired by the image acquisition device is the desired movement direction.

[0092] In the present embodiment, in order to improve the operation performance of the robot in a complex environment and the user experience, after controlling the robot to rotate, the processor further controls the image acquisition device to rotate to ensure that the field of view direction of the image acquisition device always coincides with the desired movement direction of the robot. Specifically, when the robot adjusts the posture so that the direction of the maximum thrust of the thrusters points to the source direction of the maximum fluid disturbance, the orientation of the robot itself may change. Although this adjustment of the posture enhances the flow resistance, it may deviate the field of view of the image acquisition device (such as a camera and an electronic gimbal of the camera) from the desired movement direction set by the user. Therefore, the processor controls the image acquisition device to rotate synchronously so that the field of view direction of the image acquired by the image acquisition device is automatically calibrated back to the desired movement direction. In this way, even if the robot rotates and adjusts the orientation of itself, the user can still continuously obtain stable and correct visual information when observing or operating, ensuring the intuitiveness and efficiency of the operation process.

[0093] In a typical implementation scenario, the operator first inputs a motion instruction to instruct the robot to move in a desired motion direction (the motion instruction can include the distance of the motion), and the processor first obtains the desired motion direction according to the motion instruction after obtaining the motion instruction, and then controls the robot to move in the desired motion direction (at this time, the processor can decompose the propulsion force generated by the thruster according to the current environment, and the direction of the maximum propulsion force can be consistent with the desired motion direction). During the motion, the processor detects the source direction of the maximum fluid disturbance (different from the desired motion direction), rotates the robot so that the direction of the maximum propulsion force is aligned with the source direction, and uses the remaining propulsion force generated by the thruster (if necessary, secondary decomposition of the propulsion force generated by the thruster can be performed) to propel the robot to continue moving in the desired motion direction. At the same time, the electronic pan-tilt head of the camera is rotated to automatically align the image field of view direction to the desired motion direction.

[0094] For example, assume that the underwater robot is performing a seabed pipeline inspection task, and the desired motion direction is to move "east". During the task execution, the robot detects that the north direction has the maximum fluid disturbance, and the processor controls the robot to rotate and adjust the direction of the maximum propulsion force of the thruster to point to the north direction to resist the disturbance of the water flow. However, at this time, the orientation of the robot camera has deviated from the desired motion direction of "east".

[0095] In order to ensure that the operator can continue to observe the seabed pipeline in the "east" direction, the processor further controls the electronic pan-tilt head on the robot to rotate and re-align the field of view direction of the camera to the desired motion direction of "east". In this way, although the robot body is oriented to the north to resist the water flow, the field of view direction of the image acquisition device still remains in "east", so that the operator can continuously observe the target area, ensuring the smooth progress of the inspection task.

[0096] In this way, the operator does not need to care about the relationship between the direction of the maximum propulsion force of the robot and the observation direction when operating the underwater robot. The processor can automatically adjust the field of view direction of the image acquisition device while automatically adjusting the direction of the maximum propulsion force of the robot to ensure the observation effect of the operator, thereby improving the smoothness and efficiency of task execution.

[0097] In some embodiments, after the control of the rotation of the robot, the method further includes:

[0098] The original image collected by the image acquisition device of the robot is intercepted to obtain a target image with a field of view direction being the desired motion direction.

[0099] In the embodiment, after the processor controls the robot to rotate, the processor performs a cropping process on the acquired original image to ensure that the image provided by the image acquisition device is consistent with the expected movement direction. Specifically, after the image acquisition device acquires an original image with a wide coverage range, the processor calculates the required field of view range according to the current pose of the robot and the expected movement direction. Then, the target image consistent with the expected movement direction is cropped from the original image through image processing technology. This method uses an algorithm to adjust the field of view of the image, and does not need to rely on physical adjustment of the orientation of the image acquisition device to achieve field of view correction, thereby quickly and accurately providing image information related to the task in a complex environment.

[0100] Specifically, the image acquisition device is an electronic pan-tilt-zoom (EPTZ) based camera device, and the image acquired by the image acquisition device is a panoramic image with a wide field of view. Unlike a traditional mechanical pan-tilt-zoom, the electronic pan-tilt-zoom adjusts the field of view by digital means without relying on the movement of physical devices. The electronic pan-tilt-zoom uses a high-resolution sensor or camera to capture an original image, and simulates the movement effect of a physical pan-tilt-zoom by cropping and zooming a specific area (such as panning, tilting, zooming, etc.) through a software algorithm. Since the electronic pan-tilt-zoom has a lower cost and can achieve waterproof function, compared with the field of view calibration method of the physical rotating image acquisition device described in the previous embodiment, the present embodiment is more suitable for underwater operation scenarios.

[0101] Referring to Figure 3 is a structural schematic diagram of a robot control device provided by the embodiment of the present application, the second aspect of the embodiment of the present application provides a robot control device 10, the device 10 comprises:

[0102] A disturbance direction acquisition module 11 is configured to acquire a source direction of a maximum fluid disturbance, the maximum fluid disturbance being a fluid disturbance with the maximum disturbance intensity among fluid disturbances currently received by the robot.

[0103] A rotation control module 12 is configured to control the robot to rotate, so that the direction of the maximum propulsion force in the propulsion force generated by a propeller of the robot points to the source direction, wherein the propeller is configured to propel the robot to move.

[0104] The robot control device 10 provided by the second aspect of the embodiment of the present application can realize each process realized by the method embodiments and achieve the same beneficial effects. To avoid repetition, details are not described here.

[0105] Referring to Figure 4FIG. 1 is a structural schematic diagram of a robot system provided by an embodiment of the present application. The third aspect of the present application provides a robot system 100, which comprises the robot control device 10 provided by the second aspect of the present application and a robot 20 body.

[0106] The robot system 100 provided by the third aspect of the present application can implement each process achieved by the method embodiments and achieve the same beneficial effects. To avoid repetition, details are not described herein.

[0107] FIG. 1 is a structural schematic diagram of a robot system provided by an embodiment of the present application. The third aspect of the present application provides a robot system 100, which comprises the robot control device 10 provided by the second aspect of the present application and a robot 20 body. Figure 5 FIG. 1 is a structural schematic diagram of a robot system provided by an embodiment of the present application. The third aspect of the present application provides a robot system 100, which comprises the robot control device 10 provided by the second aspect of the present application and a robot 20 body.

[0108] The fifth aspect of the present application provides a machine-readable storage medium, which stores instructions. When the instructions are executed by a processor, the processor implements the robot control method described above.

[0109] In some embodiments, the present application also provides a computer program product, which comprises a computer program. When the computer program is executed by a processor, the robot control method according to the above embodiments is implemented.

[0110] Those skilled in the art should understand that embodiments of the present application can be provided as a method, a system, or a computer program product. Therefore, the present application can take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Moreover, the present application can take the form of a computer program product implemented on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROMs, optical storage media, etc.) containing computer-usable program code.

[0111] The present application is described with reference to flowcharts and / or block diagrams according to the methods, devices (systems), and computer program products of embodiments of the present application. It should be understood that each flow and / or block in the flowcharts and / or block diagrams, and combinations of flows and / or blocks in the flowcharts and / or block diagrams can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing apparatus to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing apparatus produce a device that implements the functions specified in the flowcharts and / or block diagrams. Figure 1 Each flow or multiple flows and / or blocks Figure 1apparatuses that carry out the specified functions of one or more blocks or a combination of blocks. These computer program instructions can also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instructions which implement the Figure 1 one or more flows and / or blocks Figure 1 one or more blocks or a combination of blocks. These computer program instructions can also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the Figure 1 one or more flows and / or blocks Figure 1 one or more blocks or a combination of blocks. These computer program instructions can also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the

[0112] In one typical configuration, the computing device includes one or more processors (CPUs), input / output interfaces, network interfaces, and memory.

[0113] The memory can include non-persistent memory and / or volatile memory, such as random access memory (RAM) about which the processor can execute instructions. The memory can also include non-volatile memory, such as read only memory (ROM), electrically programmable read only memory (EPROM), electrically erasable programmable read only memory (EEPROM), programmable read only memory (PROM), erasable programmable read only memory (EPROM), flash memory, or a combination of other non-volatile memories. Additionally, the memory can include a storage device, such as a hard disk drive or a solid state drive. The memory can store data about the computing device, the user, and / or the environment. The memory is an example of computer readable media.

[0114] Computer readable media includes permanent and non-permanent, removable and non-removable media implemented in any method or technology for storage of information. The information can be computer readable instructions, data structures, program modules, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read only memory (ROM), electrically programmable read only memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), digital versatile discs (DVDs) or other optical storage, magnetic cassettes, magnetic tapes, magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information accessible to a computing device. According to the definition herein, computer readable media does not include transitory media, such as modulated data signals and carrier waves.

[0115] It should also be noted that the terms "comprising", "comprises" or any other variation thereof are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but can also include other elements not expressly listed or inherent to such process, method, article, or apparatus.

[0116] The above merely provides an embodiment of the present application, but is not intended to limit the present application. The present application can have various modifications and changes for those skilled in the art. Any modification, equivalent replacement, improvement, etc. within the spirit and principle of the present application shall be included in the scope of claims of the present application.

[0117] In addition, any combination of the various embodiments of the present application can also be made, as long as it does not deviate from the idea of the present application, it should also be considered as disclosed by the present application.

Claims

1. A control method of a robot characterized by, The method comprises: acquiring a motion instruction; generating a motion vector in a configured control coordinate system according to the motion instruction, the motion vector being used to represent a desired motion direction and a desired motion distance of the robot; controlling the robot to move in the desired motion direction; acquiring a source direction of a maximum fluid disturbance, the maximum fluid disturbance being a fluid disturbance with the maximum disturbance intensity among fluid disturbances currently suffered by the robot; controlling the robot to rotate so that a direction of a maximum propulsion force among propulsion forces generated by a propeller of the robot points to the source direction, wherein the propeller is used to propel the robot to move.

2. The method of claim 1, wherein, The controlling the robot to move in the desired motion direction comprises: mapping the motion vector to a carrier coordinate system to acquire an actual motion vector, the carrier coordinate system rotating with the rotation of the robot; controlling the robot to move in the desired motion direction according to the actual motion vector.

3. The method of claim 2, wherein, The controlling the robot to move in the desired motion direction according to the actual motion vector comprises: decomposing the propulsion forces generated by the propeller according to the actual motion vector to acquire a motion propulsion force with a direction consistent with the desired motion direction, and making the robot move in the desired motion direction by using the motion propulsion force.

4. The method of claim 3, wherein, The decomposing the propulsion forces generated by the propeller according to the actual motion vector to acquire a motion propulsion force with a direction consistent with the desired motion direction comprises: decomposing the propulsion forces generated by the propeller according to the actual motion vector and a disturbance intensity of a fluid disturbance derived from the desired motion direction to acquire a motion propulsion force with a direction consistent with the desired motion direction.

5. The method of claim 1, wherein, After the controlling the robot to rotate, the method further comprises: controlling an image acquisition device of the robot to rotate so that a field of view direction of the image acquisition device acquiring images is the desired motion direction.

6. The method of claim 1, wherein, After the controlling the robot to rotate, the method further comprises: cropping an original image acquired by the image acquisition device of the robot to acquire a target image with a field of view direction being the desired motion direction.

7. A control device of a robot characterized by comprising: The device comprises: a rotation control module, configured to acquire a motion instruction; generate a motion vector in a configured control coordinate system according to the motion instruction, the motion vector being used to represent a desired motion direction and a desired motion distance of the robot; control the robot to move in the desired motion direction; a disturbance direction acquisition module, configured to acquire a source direction of a maximum fluid disturbance, the maximum fluid disturbance being a fluid disturbance with the maximum disturbance intensity among fluid disturbances currently suffered by the robot; the rotation control module is further configured to control the robot to rotate so that a direction of a maximum propulsion force among propulsion forces generated by a propeller of the robot points to the source direction, wherein the propeller is used to propel the robot to move.

8. A robot system, characterized by The robot comprises the robot control device and the robot.

9. An electronic device, comprising: A computer program product comprising a processor and a memory storing a program or instructions executable on the processor, the program or instructions, when executed by the processor, implementing the robot control method according to any one of claims 1-6.

10. A machine-readable storage medium, characterized in that, A machine-readable storage medium having stored thereon instructions that, when executed by a processor, cause the processor to implement the robot control method according to any one of claims 1-6.

Citation Information

Patent Citations

  • Underwater propulsion control method based on AI

    CN118915798A

  • Underwater sailing body control device, underwater sailing system, underwater sailing body control method and program

    JP2017206154A