WO2019128521A1 - Underwater cleaning robot and crawling method thereof, motion path planning method and system - Google Patents
Underwater cleaning robot and crawling method thereof, motion path planning method and system Download PDFInfo
- Publication number
- WO2019128521A1 WO2019128521A1 PCT/CN2018/115760 CN2018115760W WO2019128521A1 WO 2019128521 A1 WO2019128521 A1 WO 2019128521A1 CN 2018115760 W CN2018115760 W CN 2018115760W WO 2019128521 A1 WO2019128521 A1 WO 2019128521A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- wall
- underwater
- robot
- underwater robot
- handle
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B63—SHIPS OR OTHER WATERBORNE VESSELS; RELATED EQUIPMENT
- B63C—LAUNCHING, HAULING-OUT, OR DRY-DOCKING OF VESSELS; LIFE-SAVING IN WATER; EQUIPMENT FOR DWELLING OR WORKING UNDER WATER; MEANS FOR SALVAGING OR SEARCHING FOR UNDERWATER OBJECTS
- B63C11/00—Equipment for dwelling or working underwater; Means for searching for underwater objects
- B63C11/52—Tools specially adapted for working underwater, not otherwise provided for
Definitions
- the present invention relates to the field of robots, and in particular to an underwater cleaning robot and a crawling method thereof, a motion path planning method and system.
- An underwater robot a cleaning device used to clean private or public swimming pools.
- the use of underwater robots to clean private or public swimming pools saves manpower and is more thorough than manual cleaning of underwater robots. Therefore, the use of underwater robots instead of manpower for swimming pool cleaning is bound to become a trend.
- the patent document published as CN101695832 discloses an underwater cleaning robot in which a driving mechanism such as a motor and a filter bag for accommodating water in the water are housed in the body; the bottom and the back of the body are respectively provided with a water inlet and a water outlet.
- the water nozzle through the water pump, is used to suck the pool water into the airframe from the water inlet, and is filtered and then sprayed into the pool from the water outlet, thereby purifying the water of the pool, and the robot is driven by the rotation of the walking wheel at the bottom of the motor driven body.
- the underwater cleaning robot cleans the side wall
- the pump spray force, the friction between the front and rear wheels on the wall, and the gravity and buoyancy of the robot itself act together to make the robot move up and down close to the wall to clean the side wall of the pool.
- the underwater cleaning robot operates underwater.
- the underwater cleaning robot cannot automatically adjust the center of gravity and the floating center (the floating position of the object in the fluid refers to being discharged by the object). The position of the center of gravity of that part of the fluid). In this way, during the process of climbing the wall, the underwater cleaning robot may fall off the wall or not follow the prescribed cleaning route, and the movement is poor.
- the underwater robot intelligently recognizes the angle between the machine and the X-axis, and its trajectory in the swimming pool is unpredictable, and the movement of the underwater robot in the swimming pool in the conventional technology is random.
- the technical solution of the conventional underwater robot for swimming pool cleaning since only the angle between the machine and a shaft in the space coordinate system is recognized, and the motion is unpredictable, the machine cable is wound, and Its unpredictable trajectory may result in a clean dead zone that does not reach the clean pool.
- one of the objects of the present invention is to provide a smooth-moving underwater cleaning robot and a crawling method thereof.
- the second object of the present invention is to provide an underwater robot motion path planning method and system for the problem that the machine cable is wound, the cleaning dead zone appears, and the effect of cleaning the swimming pool is not achieved.
- An underwater cleaning robot includes a body and a handle disposed on the body, and the underwater cleaning robot can be relatively opposed to buoyancy when underwater crawling operation and/or underwater climbing operation Floating in the fuselage.
- the handle can float relative to the body, when the underwater cleaning robot is working under the water, the forward direction of the body is approximately horizontal, and the handle is floated by the buoyancy of water, and the floating center of the handle Above the center of gravity of the fuselage and away from the fuselage; when the underwater cleaning robot crawls along the wall in the water, the forward direction of the fuselage is approximately vertical, the handle will be floated by the buoyancy of water, and the float of the handle is higher than the machine
- the center of gravity of the body is close to the fuselage, so that the vertical upward buoyancy of the handle can adjust the position of the handle relative to the fuselage to balance the center of gravity and floating center of the robot, automatically correct the degree of tilt of the robot, avoid the direction of the robot and the distance from the wall. It ensures the smoothness of the robot's underwater movement.
- the front and rear directions are defined by the forward and backward directions of the underwater cleaning robot
- the left and right directions are defined by the two sides in the front and rear directions
- the up and down direction is defined by the vertical direction
- the body is close to the bottom or the side of the wall.
- the other side opposite to the bottom of the fuselage is the back
- the water inlet is arranged at the bottom of the fuselage
- the water outlet and the handle are arranged at the back of the fuselage
- the floating center of the handle refers to the center of gravity of the part of the water that is discharged by the handle.
- the handle includes a connecting portion directly connected to the body and a movable portion indirectly connected to the body through the connecting portion, the movable portion being movable relative to the body so as to be away from or close to the front side or the rear side of the body .
- the movable portion of the handle is a crossbar portion
- the connecting portion of the handle is a vertical rod portion at both ends of the crossbar portion.
- the handle is hollow inside or filled with a material having a density lower than that of water so that the overall density of the handle is not greater than water, so that it can float in the water.
- the handle is rotatably mounted on the body and the handle is rotatable to be near or away from the front or rear side of the body. In this way, when the machine climbs the wall, the vertical upward buoyancy of the handle is transmitted to the fuselage through its rotating shaft, so that the fuselage is also subjected to the vertical upward buoyancy, and the forward direction can be automatically corrected to avoid the deviation.
- the two ends of the handle are rotatably mounted on the left and right sides of the body, respectively, and the handle is rotatable to be close to or away from the front or rear side of the body.
- the vertical upward buoyancy of the handle is transmitted to multiple parts of the fuselage through a plurality of rotating shafts, so that the buoyancy correcting effect is better and more efficient when the machine climbs the wall.
- the first end of the handle is slidably and rotatably mounted on a first side of the body, and the second end of the handle is rotatably mounted on a second side of the body
- the second side of the fuselage is disposed opposite the first side of the fuselage, and the handle is rotatable to be near or away from the front or rear side of the fuselage.
- the first end of the handle transmits buoyancy through the sliding contact of the sliding shaft with the body
- the second end of the handle transmits buoyancy through the rotating contact of the rotating shaft with the body, and not only the buoyancy of the handle acts on the plurality of parts of the body to correct the deviation effect.
- Better and more efficient and can increase the range of buoyancy correction and avoid frequent rectification and excessive correction to increase the load of the traveling wheel motor.
- the first side of the fuselage is provided with a sliding slot
- the sliding slot is provided with a sliding shaft that is rotatably and slidably coupled to the sliding slot, the first end of the handle and the first end
- the sliding shaft is fixedly connected.
- the first end of the handle is provided with a first adapter portion, one end of the sliding shaft is rotatably and slidably mounted in the sliding slot, and the other end is connected to the first adapter portion Fixed connection.
- the first side of the fuselage is provided with a first chamber communicating with the inner end of the chute, and one end of the sliding shaft mounted in the chute extends into the first side
- a first limiting structure for preventing the sliding shaft from coming off the chute is detachably mounted in a chamber.
- the second end of the handle is rotatably mounted on a second side of the fuselage, the second side of the fuselage being disposed opposite the first side of the fuselage.
- the second side of the fuselage is provided with a mounting hole
- the mounting hole is provided with a rotating shaft that can rotate in the mounting hole, and the second end of the handle is fixedly connected with the rotating shaft.
- the second end of the handle is provided with a second adapter, one end of the shaft is rotatably mounted in the mounting hole, and the other end is fixedly connected to the second adapter.
- the second side of the fuselage is provided with a second chamber communicating with the inner end of the mounting hole, and one end of the rotating shaft mounted in the mounting hole extends into the second A second limiting structure for preventing the rotating shaft from coming off the mounting hole is detachably mounted in the chamber.
- the floating center of the handle when the underwater cleaning robot is working underwater, the floating center of the handle is higher than the center of gravity of the body and away from the body; when the underwater cleaning robot crawls up the wall in the water, the floating center of the handle is higher than the body The center of gravity is close to the front side of the fuselage; when the underwater cleaning robot climbs out of the water, the handle floats on the surface of the water, the floating center of the handle is away from the fuselage and the height of the float of the handle is close to the height of the center of gravity of the fuselage.
- the above-mentioned underwater cleaning robot crawling method when the underwater cleaning robot is working under the water, the handle is floated away from the fuselage by the buoyancy of the water; when the underwater cleaning robot crawls up the wall in the water, the handle is floated by the buoyancy of the water. And close to the front side of the fuselage.
- the floating center of the handle when the underwater cleaning robot is working underwater, the floating center of the handle is higher than the center of gravity of the body and away from the body; when the underwater cleaning robot crawls up the wall in the water, the floating center of the handle is high At the center of gravity of the fuselage and close to the front side of the fuselage, the fuselage through the water outlet of the water outlet, the friction of the wheel against the wall and the combination of gravity and buoyancy cling to the wall to crawl upwards; when the underwater cleaning robot climbs out When the water surface, the handle floats on the surface of the water, the floating center of the handle is away from the fuselage and the height of the float of the handle is close to the height of the center of gravity of the fuselage. The water outlet of the fuselage is close to the water surface, causing the water jet force to decrease, and the fuselage no longer clings to the wall to crawl upward. .
- the actual forward direction and the predetermined forward direction are detected (when the wall is a vertical wall, the predetermined forward direction is vertical upward;
- the predetermined forward direction is the angle A between the direction in which the vertical upward direction is projected in the plane of the inclined wall. If the angle A is smaller than the set angle value, the body is pulled by the floating handle. Automatic deviation correction is implemented. If the angle A is greater than the set angle value and less than 90°, the active deflection is achieved by adjusting the rotation speed and/or direction of the left and right wheels; if the angle A is greater than 90°, the lower wall of the robot is cleaned underwater. This can improve the efficiency of wall cleaning and avoid machine pauses or repeated actions.
- the underwater cleaning robot has the advantages that when the underwater cleaning robot is working under the water, the forward direction of the fuselage is approximately horizontal, and the handle is lifted by the buoyancy of the water, and the floating center of the handle is high.
- the forward direction of the fuselage is approximately vertical, the handle will be floated by the buoyancy of the water, and the float of the handle is higher than the fuselage
- the center of gravity is close to the fuselage, so that the vertical upward buoyancy of the handle can adjust the position of the handle relative to the fuselage to balance the center of gravity and floating center of the robot, automatically correct the degree of tilt of the robot, avoid the direction of the robot and fall from the wall. It ensures the smoothness of the robot's underwater movement.
- the present invention provides a method for planning a motion path of an underwater robot, comprising the steps of: acquiring current state information of the underwater robot in real time; controlling the underwater robot to climb the wall based on the state information, and climbing forward Treatmenting to the wall after the wall; determining whether the underwater robot completes the retreat to the lower wall based on the status information, and if so, controlling the underwater robot to retreat, performing the first steering, after the first steering, again Treatmenting, performing a second steering with the same angle as the first steering direction; controlling the underwater robot to retreat the climbing wall based on the state information, and advancing the lower wall after retreating the wall; determining the location based on the state information Whether the underwater robot completes the advancement of the lower wall, and if so, controls the underwater robot to advance, performs the third steering, and after the third steering, advances again, and performs the same angle as the third steering direction. Fourth turn; repeat the above steps and increase the number of round trips by one.
- the step of controlling the underwater robot to climb the wall based on the state information, and retreating the wall after advancing the wall climbing, and controlling the underwater robot to recede the climbing wall based on the state information, and climbing back The step of advancing the lower wall after the wall is specifically: determining whether the underwater robot is in a horizontal state based on the state information, and obtaining a current round trip number if the horizontal state is; and controlling the water if the number of round trips is less than n times Lowering the robot forward/backward; acquiring the current forward/backward time, comparing the forward/reverse time with the first preset time; if the forward/backward time is less than the first preset time, determining the said based on the status information Whether the underwater robot encounters the side wall, if encountered, controls the underwater robot to advance/retract the climbing wall; acquires the current forward/backward climbing wall time, and sets the forward/reverse climbing wall time with the second preset time Comparing; if the forward/backward climbing wall time is not less than the
- the determining, according to the state information, whether the underwater robot is in a horizontal state, and if the horizontal state is a horizontal state, acquiring a current round trip number; if the round trip number is less than n times, controlling the underwater robot to advance/retract The method includes: if the number of round trips is not less than n times, acquiring flag information, controlling the fifth steering of the underwater robot based on the flag position, and following the fifth steering, advancing/retracting and incrementing the flag.
- the fifth turn based on the flag bit is specifically: the value range of the flag bit is 1 ⁇ m ⁇ 4; when the flag bit is equal to 1, the right turn is reversed, and the forward direction is not turned, And the flag bit is incremented by 1; when the flag bit is equal to 2, it is turned to the left when going backward, not turned when going forward, and the flag is incremented by 1; when the flag is equal to 3, it does not turn when going backward, and advances When the right turn, and the flag is incremented by one; when the flag is equal to 4, it does not turn when retreating, the left turn when moving forward, and the flag is increased by 1; when the flag is greater than 4, the flag is The bit is reset to 1.
- first steering, the second steering, the third steering, and the fourth steering have a rotation angle of 45°
- fifth steering has a rotation angle of 90°.
- the forward/reverse time is less than the first preset time, determining, according to the state information, whether the underwater robot encounters a side wall, and if so, controlling the underwater robot to advance/retract the wall
- the step further includes: if the forward/reverse time is not less than the first preset time, the executing step determines whether the underwater robot completes the forward/reverse lower wall based on the status information, and if so, controls the underwater robot first Forward/reverse, the third/first steering is performed, and after the third/first steering, the forward/backward is performed again, and the fourth/secondary steering having the same angle as the third/first steering direction is performed.
- the forward/reverse time is less than the first preset time, determining, according to the state information, whether the underwater robot encounters a side wall, and if so, controlling the underwater robot to advance/retract the wall
- the step further includes: if the forward/reverse time is less than the first preset time, and the side wall is not encountered, then controlling the underwater robot to continue to move forward/backward.
- the step of controlling the underwater robot to retreat/forward the lower wall further comprises: if the forward/reverse climbing time When it is less than the second preset time, the underwater robot is controlled to continue to advance/reverse the wall.
- the advancing and climbing the wall, the retreating the lower wall, the retreating the wall, and advancing the lower wall further comprise: acquiring current state information in real time; and determining, according to the state information, whether the current state of the underwater robot is a vertical climbing wall/ Lower wall; if it is vertical climbing wall/lower wall, control the underwater robot to continue climbing/lower wall; if it is not vertical climbing/lower wall, it is determined that the current state of the underwater robot is a wall status.
- the current state information is acquired in real time; based on the state information, the underwater robot is controlled to adjust the position of the body; and based on the state information, it is determined whether the underwater robot is successfully adjusted to be vertical Straight wall/lower wall; if successfully adjusted to vertical wall/lower wall, control the underwater robot to retreat/forward the lower wall, and perform steps based on the state information to determine whether the underwater robot completes the lower wall If yes, control the underwater robot to advance, perform a third steering, and after the third steering, advance again to perform the fourth steering with the same angle as the third steering direction; if the adjustment is not successful In order to vertically climb the wall/lower wall, the underwater robot is controlled to issue an alarm.
- the step of acquiring the current state information of the underwater robot in real time further includes: presetting a first preset time, a second preset time, a maximum number of round trips n, and an initial value of the flag bit.
- the invention also provides an underwater robot motion path planning system, comprising: a state acquiring module, configured to acquire current state information of the underwater robot in real time; and a climbing wall control module, configured to control the underwater robot based on the state information Advancing/retracting the wall and retreating/advancing the lower wall after advancing/retracting the wall; steering control module for judging whether the underwater robot completes the retreat to the lower wall based on the status information, and if so, controlling the water
- the lower robot successively retreats, performs the first steering, and after the first steering, retreats again, performs the second steering with the same angle as the first steering direction; and determines whether the underwater robot is based on the state information
- the advancement of the lower wall is completed, and if so, the underwater robot is controlled to advance, and the third steering is performed. After the third steering, the vehicle is again advanced to perform the fourth steering at the same angle as the third steering direction.
- the climbing wall control module includes: a determining module, configured to determine, according to the state information, whether the underwater robot encounters a side wall, and if not, controls the underwater robot to advance/retract; Whether the forward/reverse time is not less than the first preset time, and if the forward/reverse time is less than the first preset time, determining, according to the status information, whether the underwater robot encounters a side wall, if encountered, And controlling the underwater robot to advance/retract the climbing wall; determining whether the forward/backward climbing wall time is not less than the second preset time; and the lower wall control module, if the forward/reverse climbing time is not When it is less than the second preset time, the underwater robot is controlled to retreat/forward the lower wall.
- a determining module configured to determine, according to the state information, whether the underwater robot encounters a side wall, and if not, controls the underwater robot to advance/retract; Whether the forward/reverse time is not less than the first preset time, and if the
- the underwater robot of the invention cleans the swimming pool wall on the moving path, and obtains the current state information, that is, obtains the angle between the fuselage and the XY plane, the XZ plane and the YZ plane, thereby controlling the movement path of the machine. .
- the wall is cleaned by the wall.
- the wall is vertically lowered, and after the lower wall is rotated twice, the predetermined distance is adjusted in the machine width direction, and then adjusted.
- After retreating the wall after reaching the second preset time, proceed to the lower wall, and then rotate twice through the lower wall to adjust the predetermined distance in the machine width direction to complete a round-trip cleaning.
- the dead-end cleaning of the swimming pool is achieved, and since the trajectory of the movement is regular, the problem of the cable entanglement of the underwater robot is also avoided.
- FIG. 1 is a schematic structural view of an underwater cleaning robot provided by the present invention.
- FIG. 2 is a schematic view showing another structure of the underwater cleaning robot provided by the present invention.
- Figure 3 is an enlarged view of a portion A of Figure 1 provided by the present invention.
- Figure 4 is an enlarged view of a portion B of Figure 2 provided by the present invention.
- Figure 5 is a cross-sectional view of the underwater cleaning robot provided by the present invention.
- Figure 6 is an enlarged view of a portion C of Figure 4 provided by the present invention.
- Figure 7 is an enlarged view of the portion D of Figure 4 provided by the present invention.
- FIG. 8 is a flowchart of a method for planning a motion path of an underwater robot according to a first embodiment of the present invention.
- FIG. 9 is a flowchart of a method for planning a motion path of an underwater robot according to a second embodiment of the present invention.
- FIG. 10 is a flowchart of a method for planning a motion path of an underwater robot according to a third embodiment of the present invention.
- FIG. 11 is a flowchart of a method for planning a motion path of an underwater robot according to a fourth embodiment of the present invention.
- FIG. 12 is a flowchart of a method for planning a motion path of an underwater robot according to a fifth embodiment of the present invention.
- FIG. 13 is a schematic diagram of a module relationship of an underwater robot motion path planning system according to an embodiment of the present invention.
- FIG. 14 is a schematic diagram of a module relationship of a wall climbing control module according to an embodiment of the present invention.
- body 10 body 10, first side 110 of the fuselage, chute 111, first chamber 112, second side 120 of the fuselage, mounting hole 121, second chamber 122, handle 20, handle The first end 210, the sliding shaft 211, the first adapter portion 212, the second end 220 of the handle, the rotating shaft 221, the second adapter portion 222, the first limiting structure 30, the first nut 310, and the second limit The bit structure 40 and the second nut 410.
- 100 is a state acquisition module
- 200 is a wall climbing control module
- 2100 is a determination module
- 2200 is a lower wall control module
- 300 is a steering control module.
- the embodiment provides an underwater cleaning robot, including a fuselage 10 and a handle 20.
- the bottom of the fuselage 10 is provided with four walking wheels 101 and a water inlet, and a water outlet is opened at the back of the fuselage. 102, the handle is installed on the back of the fuselage.
- the handle 20 can float and swing relative to the body 10, and in this way adjusts the center of gravity and the center of buoyancy of the underwater washing machine.
- the body 10 has opposite first and second sides 110 and 120; the handle 20 has opposite first and second ends 210 and 220. .
- the first end 210 of the handle 20 is rotatably and slidably mounted to the first side 110 of the body 10.
- the second end 220 of the handle 20 is rotatably mounted to the second side 120 of the body 10.
- the first side 110 of the body 10 is provided with a chute 111.
- the first end 210 of the handle 20 is provided with a sliding shaft 211.
- the sliding shaft 211 is mounted in the sliding slot 111, and the sliding shaft 211 can slide in the width direction of the sliding slot 111 while rotating in the sliding slot 111, so that the first end 210 of the handle 20 is rotatably and slidably mounted on the body.
- the second side 120 of the body 10 is provided with a mounting hole 121.
- a rotating shaft 221 is disposed in the mounting hole 121.
- the rotating shaft 221 is rotatable within the mounting hole 121, and the second end 220 of the handle 20 is fixedly coupled to the rotating shaft 221.
- the shaft 221 is rotated within the mounting hole 121 to effect rotational connection of the second end 220 of the handle 20 with the second side 120 of the body 10.
- the first side 210 of the handle 20 is rotatably mounted to the first side 110 of the body 10
- the second end 220 of the handle 20 is rotatably mounted to the second side 120 of the body 10.
- a first adapter portion 212 is provided at the first end 210 of the handle 20.
- One end of the sliding shaft 211 is mounted in the sliding groove 111 and is rotatable and slidable in the sliding groove 111; the other end of the sliding shaft 211 is fixedly connected to the first adapter portion 212.
- the first end 210 of the handle 20 can be rotated and slid relative to the first side 110 of the body 10.
- the second end 220 of the handle 20 is provided with a second adapter portion 222.
- One end of the rotating shaft 221 is mounted in the mounting hole 121 and is rotatable in the mounting hole 121, and the other end of the rotating shaft 221 is fixedly connected to the second adapting portion 222.
- the shaft 221 is rotated within the mounting hole 121, the second end 220 of the handle 20 is rotated relative to the second side 120 of the body 10.
- first adapter portion 212 is connected to the handle 20 in a unitary structure.
- the second adapter portion 222 is connected to the handle 20 in an integrated structure.
- the first side 110 of the body 10 is provided with a first chamber 112 that communicates with the inner end of the chute 111.
- One end of the sliding shaft 211 mounted in the sliding groove 111 projects into the first chamber 112, and the first limiting structure 30 for preventing the sliding shaft 211 from coming off the sliding groove 111 is detachably mounted.
- the second side 120 of the body 10 is provided with a second chamber 122 that communicates with the inner end of the mounting hole 121.
- One end of the rotating shaft 221 installed in the mounting hole 121 extends into the second chamber 122, and a second limiting structure 40 for preventing the rotating shaft 221 from coming off the mounting hole 121 is detachably mounted.
- the first limiting structure 30 has the same structure as the second limiting structure 40.
- the first stop structure 30 includes a first nut 310 that is received within the first chamber 112.
- the first nut 310 is screwed to the sliding shaft 211 installed in the sliding slot 111, and the outer diameter of the first nut 310 is larger than the inner diameter of the sliding slot 111 to achieve slippage when the sliding shaft 211 rotates and slides in the sliding slot 111.
- the second stop structure 40 includes a second nut 410 that is received within the second chamber 122.
- the second nut 410 is screwed to the rotating shaft 221 , and the outer diameter of the second nut 410 is larger than the inner diameter of the mounting hole 121 to prevent the rotating shaft 221 from coming off the mounting hole 121 when rotating in the mounting hole 121 .
- the inside of the handle 20 is hollow, and the handle 20 is internally sealed to prevent water from penetrating into the interior of the handle.
- the handle 20 is filled with a material having a density lower than that of water, such as polystyrene foam, etc., to increase the buoyancy of the handle in the water, and is more advantageous for the handle 20 to float in the water.
- a material having a density lower than that of water such as polystyrene foam, etc.
- the above-mentioned underwater cleaning robot crawling method when the underwater cleaning robot is working under the water, the handle is floated away from the body by the buoyancy of the water, the floating center of the handle is higher than the center of gravity of the body and away from the fuselage;
- the handle When crawling up the wall in the water, the handle is floated by the buoyancy of the water and is close to the front side of the fuselage.
- the float of the handle is higher than the center of gravity of the fuselage and close to the front side of the fuselage, and the fuselage is sprayed through the water outlet of the water outlet. The force of the wheel, the friction of the wheel against the wall, and the combination of gravity and buoyancy are close to the wall.
- the tilting, floating handle always keeps vertical up under the buoyancy of itself, so that the handle can adjust its position relative to the fuselage to balance the center of gravity and center of the robot, adjust the center of gravity of the machine to move toward the center, and assist the machine to reduce the tilt angle. .
- the handle When the underwater cleaning robot climbs out of the water surface, the handle floats on the water surface, the floating center of the handle is away from the fuselage and the height of the float of the handle is close to the height of the center of gravity of the fuselage, and the water outlet of the fuselage is close to the water surface, causing the water jet force to decrease, the fuselage No longer cling to the wall and continue to climb out of the water.
- the actual forward direction and the predetermined forward direction are detected (when the wall is vertical)
- the predetermined forward direction is vertical upward
- the predetermined forward direction is the angle A between the direction of the vertical upward direction projected in the inclined wall plane), if the angle A If it is less than the set angle value (15° in this embodiment), the air body is automatically rotated by the floating hand.
- the speed of the left and right wheels is adjusted and/or The direction is actively corrected, and the machine is adjusted to the horizontal; if the angle A is greater than 90°, the underwater cleaning robot directly switches the motion mode (the upper wall is switched to the lower wall). When the machine is tilted on the wall, the machine will switch the pump motor and the travel wheel motor regularly to let the machine go down the wall.
- the prior art for example, gyroscope detection can be employed.
- the embodiment of the invention also discloses a method for planning the motion path of the underwater robot.
- the underwater robot is controlled to perform vertical cleaning in the longitudinal direction and then in the horizontal direction, thereby ensuring that the underwater robot can clean the swimming pool without a dead angle.
- the underwater robot motion path planning method preferably adopts the structure and crawling method of the above underwater cleaning robot, and may also adopt the structure and crawling method of other underwater robots.
- the horizontal state in this embodiment includes: after the first steering, the second steering, the third steering, the fourth steering, and the fifth steering, the horizontal state is: the angle between the underwater robot and the XY plane is less than the preset In the horizontal angle, the preferred preset horizontal angle of the embodiment is 30°; when the lower wall is horizontal, the angle between the fuselage and the XY plane is less than or equal to the preset lower wall angle; when the upper wall is horizontal, The angle between the fuselage and the XY plane is less than or equal to the preset wall climbing angle.
- FIG. 8 is a flowchart of a method for planning a motion path of an underwater robot according to a first embodiment of the present invention.
- an underwater robot motion path planning method may include the following steps S100 to S600.
- the following steps describe an example of a path planning method for cleaning a swimming pool by an underwater cleaning robot, which involves the bottom of the pool and the surrounding area. Planning the clean path of the wall.
- Step S100 Acquire current state information of the underwater robot in real time.
- the state information is an angle between the body and the XY plane, the XZ plane, and the YZ plane.
- the XY plane, the XZ plane, and the YZ plane are planes of the X-axis, the Y-axis, and the Z-axis in the space coordinate system, and the XY plane is a plane formed by the X-axis and the Y-axis; the XZ plane is the X-axis and the Z-axis.
- the plane in which it is located; the YZ plane is the plane formed by the Y-axis and the Z-axis, and the XY plane is parallel to the bottom surface of the pool.
- the device for obtaining current state information is an inertial sensor, which may be a three-axis acceleration sensor, a gyroscope, or a combination of the two.
- the underwater robot updates the current status information in real time while exercising.
- the state information in this embodiment includes an angle between the body and three planes of XY, YZ, and XZ.
- Step S200 Control the underwater robot to climb the wall based on the state information, and retreat to the wall after advancing the wall.
- the controlling the underwater robot to climb the wall based on the state information includes: determining, according to the state information, whether the underwater robot is in a horizontal state, and if in the horizontal state, controlling the underwater robot Horizontally advancing; acquiring a current horizontal advance time, comparing the horizontal advance time with a first preset time; if the horizontal advance time is less than the first preset time, determining whether the underwater robot encounters based on the status information
- the side wall if the side wall is encountered, the underwater robot is controlled to advance the wall according to the state information; the current forward climbing time is obtained, and the forward climbing time is compared with the second preset time; When the wall climbing time is not less than the second preset time, the underwater robot is controlled to retreat to the wall.
- determining whether the underwater robot encounters the side wall based on the state information in the embodiment includes: determining whether an angle between the body and the XY plane reaches 60°, and if the angle reaches 60°, it is considered to be met. Side wall. Otherwise, it is considered that the side wall has not been encountered.
- the underwater robot is controlled to advance the wall. Specifically, the angle between the underwater robot and the XY plane is compared with the preset climbing wall angle. When the angle is greater than the preset climbing wall angle, the underwater robot is considered to encounter the side wall, and the underwater robot is controlled to climb the wall.
- the preset climbing wall angle is 60°, that is, the underwater robot is controlled to climb the wall when the angle with the XY plane is greater than 60°.
- the second preset time is a preset second preset time according to the height of the swimming pool and the speed of the underwater robot movement. That is, when the underwater robot is operated at a fixed speed for a second predetermined time in the vertical direction, the distance traveled is slightly larger than the height of the swimming pool.
- Step S300 determining, according to the state information, whether the underwater robot completes the retreat to the lower wall, and if so, controlling the underwater robot to retreat, performing the first steering, and after the first steering, retreating again.
- the second turn is the same angle as the first steering direction.
- determining, according to the state information, whether the underwater robot completes the retreat to the lower wall determining whether the current state is in a horizontal state, comparing the angle of the underwater robot and the XY plane with the preset lower wall angle, when less than the preset
- the preferred preset lower wall angle is 30°, that is, when the angle with the XY plane is less than 30°, the underwater robot is judged to complete the lower wall. This means that the underwater robot has been completely under the wall. When the wall is completely down, it is retracted.
- the third preset time is reversed, the first steering is performed, and after the first steering, the third preset time is retreated, and then the second steering is performed.
- the first steering is opposite to the rotation direction of the second steering, that is, the underwater robot is adjusted by a predetermined distance in the machine width direction by two steerings, and the angle of the first steering and the second steering is rotated.
- the first steering and the second steering have a rotation angle of 45°.
- the third preset time is preset according to the moving speed of the underwater robot and the length of the fuselage, and the third preset time can ensure that the underwater robot can adjust the predetermined distance in the direction of the machine width after the two steerings.
- Step S400 Control the underwater robot to recede the climbing wall based on the state information, and advance the lower wall after retreating the wall.
- the underwater robot is in a horizontal state, that is, the angle between the underwater robot and the XY plane is smaller than a preset horizontal angle, and the underwater robot Treatment horizontally.
- controlling the underwater robot to retreat the climbing wall based on the state information, and advancing the lower wall after retreating the wall includes: acquiring a current horizontal back time, and comparing the horizontal back time with the first preset time; If the horizontal back time is less than the first preset time, determining whether the underwater robot encounters the side wall based on the state information, and if the side wall is encountered, controlling the underwater robot to retreat the wall according to the state information; The backwall climbing time is compared with the second preset time; if the back climbing wall time is not less than the second preset time, the underwater robot is controlled to advance to the lower wall.
- determining whether the underwater robot encounters the side wall based on the state information in the embodiment includes: determining whether an angle between the body and the XY plane reaches 60°, and if the angle reaches 60°, it is considered to be met. Side wall. Otherwise, it is considered that the side wall has not been encountered.
- the angle between the underwater robot and the XY plane When the angle between the underwater robot and the XY plane reaches a certain value, it is considered that the underwater robot encounters the side wall and controls the underwater robot to retreat the wall. Specifically, the angle between the underwater robot and the XY plane is compared with the preset climbing wall angle. When the angle is greater than the preset climbing wall angle, the underwater robot is considered to encounter the side wall and control the underwater robot to retreat the climbing wall.
- the preset climbing wall angle is 60°, that is, the underwater robot is controlled to retreat the wall when the angle to the XY plane is greater than 60°.
- the underwater robot moves back to the wall for a second preset time, proceed to the lower wall.
- the second preset time is a preset second preset time according to the height of the swimming pool and the speed of the underwater robot movement. That is, when the underwater robot is operated at a fixed speed for a second predetermined time in the vertical direction, the distance traveled is slightly larger than the height of the swimming pool.
- Step S500 determining, based on the state information, whether the underwater robot completes the advancement of the lower wall (ie, leaving the side wall), and if so, controlling the underwater robot to advance, performing the third steering, the third steering After that, proceed again, and perform the fourth steering at the same angle as the third steering direction.
- the underwater robot gradually leaves the side wall and contacts the bottom surface of the pool.
- the angle of the body of the underwater robot relative to the XY plane gradually decreases, and advances horizontally after entering the horizontal state. Specifically, determining, according to the state information, whether the underwater robot completes the advancement of the lower wall: determining whether the current state is in a horizontal state, comparing the angle of the underwater robot with the XY plane with the preset lower wall angle, when less than the preset When the angle of the lower wall is horizontal, the preferred preset lower wall angle is 30°, that is, when the angle with the XY plane is less than 30°, the human underwater robot is judged to complete the lower wall. When the wall is completely down, it proceeds.
- the third steering is performed, and after the third steering, the third predetermined time is advanced, and then the fourth steering is performed.
- the third turning direction is opposite to the turning direction of the fourth turning, that is, the underwater robot is adjusted by a predetermined distance in the machine width direction by two steerings, and the angle of the third turning and the fourth turning is rotated.
- the underwater robot still advances in the direction before the two turns, and the preferred third and fourth steering angles are 45°.
- the third preset time is preset according to the moving speed of the underwater robot and the length of the fuselage, and the third preset time can ensure that the underwater robot can adjust the predetermined distance in the direction of the machine width after the two steerings.
- Step S600 Repeat the above steps and increase the number of round trips by one.
- step S100 is performed again after the predetermined distance of the fuselage is adjusted, thereby ensuring that the underwater robot can perform no-angle cleaning on the swimming pool.
- step S100 is executed again, the number of round trips is incremented by one for counting the number of round trips of the underwater robot in the current direction, and when the number of round trips is increased to n, the number of reset round trips is one.
- n is the maximum number of statistical round trips set in advance.
- FIG. 9 is a flowchart of a method for planning a motion path of an underwater robot according to a second embodiment of the present invention.
- the second embodiment of the present invention is a specific optimization of the step S200 in the first embodiment, and is the same as the first embodiment, and will not be further described in this embodiment.
- the second embodiment of the present invention may include the following steps S210 to S250.
- Step S210 determining whether the underwater robot is in a horizontal state based on the state information, and acquiring a current round trip number if the horizontal state is a horizontal state; and controlling the underwater robot to advance if the round trip number is less than n times.
- determining, according to the state information, whether the underwater robot is in a horizontal state acquiring current state information in real time, and determining whether the current underwater robot is in a horizontal state based on an angle between the underwater robot and the XY plane in the current state information, If the angle between the current underwater robot and the XY plane is less than the preset horizontal angle, the underwater robot is in a horizontal state, and the underwater robot is controlled to advance, and the preferred preset horizontal angle is 30°. If the number of round trips is not less than n times, the flag information is acquired, and the underwater vehicle is controlled to be turned for the fifth time based on the flag position, and after the fifth steering, the flag is incremented by one.
- the underwater robot is controlled to move backward/forward to the lower wall and the number of round trips is decreased by 1, and step S300 is performed.
- the value of the flag bit ranges from 1 ⁇ m ⁇ 4; when the flag bit is equal to 1, the right turn is reversed, the forward direction is not turned, and the flag bit is incremented by 1; when the flag bit is When it is equal to 2, it will turn left when going backwards, not turn when going forward, and the flag will increase by 1; when the flag is equal to 3, it will not turn when going backward, turn right when going forward, and the flag will increase by 1; When the flag bit is equal to 4, it does not turn when retreating, the left direction is turned forward when forward, and the flag bit is incremented by 1; when the flag bit is greater than 4, the flag bit is reset to 1.
- the fifth steering preferably has a preferred angle of rotation of 90°. The range of values of the flag bits and the operating rules that are taken at different times can be adjusted.
- Step S220 Acquire a current advance time, and compare the advance time with a first preset time.
- the current advance time is: the time when the underwater robot detects the time point from the start of the horizontal state to the current time point.
- the current forward time is compared with a preset first preset time.
- the first preset time is a first preset time preset according to the length and width of the swimming pool and the moving speed of the underwater robot, and the optimal cleaning path can be selected for the underwater robot based on the first preset time.
- Step S230 If the forward time is less than the first preset time, determine whether the underwater robot encounters the side wall based on the state information, and if so, control the underwater robot to climb the wall.
- the current advance time is compared with a first preset time, and based on the status information, it is determined whether the underwater robot encounters a sidewall.
- the side wall is encountered: during the forward/reverse movement of the underwater robot, the underwater robot advances/retracts horizontally, the body is tilted, and the angle of the fuselage relative to the XY plane gradually increases.
- determining whether the underwater robot encounters the side wall based on the state information in the embodiment includes: determining whether an angle between the body and the XY plane reaches 60°, and if the angle reaches 60°, it is considered to be met. Side wall. Otherwise, it is considered that the side wall has not been encountered.
- step S300 is performed.
- Step S240 Acquire a current forward climbing time, and compare the forward climbing time with a second preset time.
- the current forward climbing time is: the length of time from the time when the side wall starts to climb the wall to the current time point.
- the current forward climbing time is compared with a preset second preset time.
- the second preset time is a preset second preset time according to the height of the swimming pool and the speed of the underwater robot movement. That is, when the underwater robot is operated at a fixed speed for a second predetermined time in the vertical direction, the distance traveled does not exceed the height of the pool.
- Step S250 If the forward climbing wall time is not less than the second preset time, then the underwater robot is controlled to retreat to the lower wall.
- FIG. 10 is a flowchart of a method for planning a motion path of an underwater robot according to a third embodiment of the present invention.
- the third embodiment of the present invention is a specific optimization of the first embodiment and the step S400 in the second embodiment, and the same steps as those of the first embodiment and the second embodiment are omitted in the embodiment.
- the third embodiment of the present invention may include the following steps S410 to S450.
- Step S410 Determine whether the underwater robot is in a horizontal state based on the state information, and obtain a current round trip number if it is in a horizontal state; and control the underwater robot to retreat if the round trip number is less than n times.
- determining, according to the state information, whether the underwater robot is in a horizontal state acquiring current state information in real time, and determining whether the current underwater robot is in a horizontal state based on an angle between the underwater robot and the XY plane in the current state information, If the angle between the current underwater robot and the XY plane is less than the preset horizontal angle, the underwater robot is in a horizontal state, and the underwater robot is controlled to retreat, and the preferred preset horizontal angle is 30°. If the number of round trips is not less than n times, the flag information is acquired, and the underwater vehicle is controlled to be turned for the fifth time based on the flag position, and after the fifth steering, the flag is incremented by one.
- the underwater robot is controlled to retreat/forward the lower wall and the number of round trips is decreased by 1, and step S500 is performed.
- the value of the flag bit ranges from 1 ⁇ m ⁇ 4; when the flag bit is equal to 1, the right turn is reversed, the forward direction is not turned, and the flag bit is incremented by 1; when the flag bit is When it is equal to 2, it will turn left when going backwards, not turn when going forward, and the flag will increase by 1; when the flag is equal to 3, it will not turn when going backward, turn right when going forward, and the flag will increase by 1; When the flag bit is equal to 4, it does not turn when retreating, the left direction is turned forward when forward, and the flag bit is incremented by 1; when the flag bit is greater than 4, the flag bit is reset to 1.
- the fifth steering preferably has a preferred angle of rotation of 90°.
- Step S420 Acquire a current back time, and compare the back time with the first preset time.
- the current back time is: the time when the underwater robot detects the time point from the start of the horizontal state to the current time point.
- the current back time is compared with a preset first preset time.
- the first preset time is a first preset time preset according to the length and width of the swimming pool and the moving speed of the underwater robot, and the optimal cleaning path can be selected for the underwater robot based on the first preset time.
- Step S430 If the back time is less than the first preset time, determine whether the underwater robot encounters the side wall based on the state information, and if so, control the underwater robot to retreat the wall.
- determining whether the underwater robot encounters a side wall includes: determining whether an angle between the body and the XY plane reaches 60°, and if the angle reaches 60°, it is considered to be met. Side wall. Otherwise, it is considered that the side wall has not been encountered.
- step S500 is performed.
- Step S440 Acquire a current back climbing wall time, and compare the back climbing wall time with a second preset time.
- the current backwall climbing time is: the length of time from the time when the side wall starts to retreat to the climbing wall to the current time point. Compare the current backwall time with a preset second preset time.
- the second preset time is a preset second preset time according to the height of the swimming pool and the speed of the underwater robot movement. That is, when the underwater robot is operated at a fixed speed for a second predetermined time in the vertical direction, the distance traveled does not exceed the height of the pool.
- Step S450 If the back climbing wall time is not less than the second preset time, then the underwater robot is controlled to advance to the lower wall.
- FIG. 11 is a flowchart of a method for planning a motion path of an underwater robot according to a fourth embodiment of the present invention.
- the fourth embodiment of the present invention optimizes the forward climbing wall, the back lower wall, the back climbing wall, and the forward lower wall in the above embodiment.
- the fourth embodiment of the present invention may include the following steps S431 to S434.
- Step S431 Acquire current state information in real time.
- the current body and the angle information between the body and the XY plane, the XZ plane, and the YZ plane are obtained.
- Step S432 Determine, according to the state information, whether the current state of the underwater robot is a vertical climbing wall/lower wall.
- the current state is a vertical climbing wall/lower wall, that is, whether there is an angle between the body and the YZ plane when the angle between the body and the XY plane is 90°.
- Step S433 If the wall is climbing vertically/lower wall, the underwater robot is controlled to continue to climb the wall/lower wall.
- the wall/lower wall is continued.
- Step S434 If it is not vertical climbing/lower wall, it is determined that the current state of the underwater robot is a wall-wrapping state.
- the angle between the body and the YZ plane is 90° when the angle between the body and the XY plane is 90°, and the degree of the angle is greater than 25°, it is determined that the current state is the state of the wall.
- FIG. 12 is a flowchart of a method for planning a motion path of an underwater robot according to a fifth embodiment of the present invention.
- the fifth embodiment of the present invention is a specific optimization for determining the state of the surrounding wall in the above embodiment.
- the fifth embodiment of the present invention may include the following steps S641 to S645.
- Step S641 Acquire current state information in real time.
- the angle information between the current body and the XY plane, the XZ plane, and the YZ plane is obtained.
- Step S642 Control the underwater robot to adjust the position of the body based on the state information.
- the angle between the fuselage and the XY plane is 90°, and the fuselage has an angle with the YZ plane.
- the position of the fuselage is adjusted, and the rotation speed of the left and right wheels of the underwater robot is controlled by a motor to form a speed difference.
- the left side wheel speed of the underwater robot is controlled to be greater than the right wheel speed, thereby adjusting the angle with the YZ plane to Zero;
- the right wheel speed of the underwater robot is controlled to be greater than the left wheel speed, so that the angle with the YZ plane Adjust to zero.
- Step S643 Based on the state information, determine whether the underwater robot is successfully adjusted to a vertical climbing wall/lower wall.
- the angle information between the current body and the XY plane, the XZ plane, and the YZ plane is acquired again. It is judged whether it is successfully adjusted to the vertical climbing wall/lower wall, that is, whether there is an angle between the fuselage and the YZ plane when the angle between the fuselage and the XY plane is 90°.
- Step S644 If the vertical climbing/lower wall is successfully adjusted, the underwater robot is controlled to move backward/forward to the lower wall, and step S500 is performed.
- Step S645 If the vertical climbing/lower wall is not successfully adjusted, the underwater robot is controlled to issue an alarm.
- the fuselage has an angle with the YZ plane, that is, if the vertical climbing wall/lower wall is not successfully adjusted, an alarm is issued.
- the alarm can be alarm music and/or flashing lights, etc. Specifically, the buzzer and LED alarm indicator.
- the method further includes setting a first preset time, a second preset time, a third preset time, a maximum number of round trips n, and an initial value of the flag bit.
- FIG. 13 is a schematic diagram of a module relationship of a motion path planning system for an underwater robot according to an embodiment of the present invention
- FIG. 14 is a schematic diagram of a module relationship of a wall climbing control module according to an embodiment of the present invention.
- an underwater robot motion path planning system includes: a state obtaining module 100, configured to acquire current state information of the underwater robot in real time; and a climbing wall control module 200, configured to be based on the state
- the information control underwater robot advances/reverses the climbing wall, and retreats/forward the lower wall after advancing/retracting the climbing wall;
- the steering control module 300 is configured to determine, according to the state information, whether the underwater robot completes the retreat to the lower wall, if And controlling the underwater robot to retreat, performing the first steering, and after the first steering, retreating again, performing the second steering with the same angle as the first steering direction; determining based on the state information Whether the underwater robot completes the advancement of the lower wall, and if so, controls the underwater robot to advance, performs the third steering, and after the third steering, advances again, and performs the same angle as the third steering direction The fourth turn.
- the state information acquired by the state acquiring module 100 is an angle between the body and the XY plane, the XZ plane, and the YZ plane.
- the XY plane, the XZ plane, and the YZ plane are planes of the X-axis, the Y-axis, and the Z-axis in the space coordinate system, and the XY plane is a plane formed by the X-axis and the Y-axis; the XZ plane is the X-axis and the Z-axis.
- the plane in which it is located; the YZ plane is the plane formed by the Y-axis and the Z-axis.
- the XY plane is parallel to the horizontal plane.
- the state acquisition module 100 is an inertial sensor, and may be a three-axis acceleration sensor, a gyroscope, or a combination of the two.
- the underwater robot updates the current status information in real time while exercising.
- the climbing wall control module 200 is used for the underwater robot to advance/retract horizontally during the horizontal advancement of the underwater robot, the body is inclined, and the angle of the body with respect to the XY plane is gradually increased.
- determining whether the underwater robot encounters the side wall based on the state information in the embodiment includes: determining whether an angle between the body and the XY plane reaches 60°, and if the angle reaches 60°, it is considered to be met. Side wall. Otherwise, it is considered that the side wall has not been encountered.
- the underwater robot is controlled to advance/retract the wall.
- controlling the underwater robot to advance/retract the climbing wall comprises: comparing the angle of the underwater robot with the XY plane with the preset climbing wall angle, when greater than the preset climbing wall angle, Then, the underwater robot is controlled to advance the wall, and the preferred preset wall angle is 60°, that is, the underwater robot is controlled to advance/retract the wall when the angle with the XY plane is greater than 60°.
- the second preset time is a preset second preset time according to the height of the swimming pool and the speed of the underwater robot movement. That is, when the underwater robot is operated at a fixed speed for a second predetermined time in the vertical direction, the distance traveled is slightly larger than the height of the swimming pool.
- the steering control module 300 is configured to determine, according to the state information, whether the underwater robot completes the retreat to the lower wall to determine whether the current state is in a horizontal state, and compare the angle of the underwater robot with the XY plane with the preset lower wall angle. When it is less than the preset lower wall angle, it is horizontal, and the preferred preset lower wall angle is 30°, that is, when the angle with the XY plane is less than 30°, the underwater robot is judged to complete the lower wall. This means that the underwater robot has been completely under the wall. When the wall is completely down, it is retracted. When the third preset time is reversed, the first steering is performed, and after the first steering, the third preset time is retreated, and then the second steering is performed.
- the first steering is opposite to the rotation direction of the second steering, that is, the underwater robot is adjusted by a predetermined distance in the machine width direction by two steerings, and the angle of the first steering and the second steering is rotated.
- the first steering and the second steering have a rotation angle of 45°.
- the third preset time is preset according to the moving speed of the underwater robot and the length of the fuselage, and the third preset time can ensure that the underwater robot can adjust the predetermined distance in the direction of the machine width after the two steerings.
- determining, according to the state information, whether the underwater robot completes the advancement of the lower wall determining whether the current state is in a horizontal state, comparing the angle of the underwater robot with the XY plane with the preset lower wall angle, when less than the preset
- the preferred preset lower wall angle is 30°, that is, when the angle with the XY plane is less than 30°, the human underwater robot is judged to complete the lower wall.
- the wall is completely down, it advances.
- the third preset time is currently entered, the third turn is performed, and after the third turn, the third preset time is advanced, and then the fourth turn is performed. When it is judged that it is not in the horizontal state, it proceeds to the lower wall.
- the third turning direction is opposite to the turning direction of the fourth turning, that is, the underwater robot is adjusted by a predetermined distance in the machine width direction by two steerings, and the angle of the third turning and the fourth turning is rotated.
- the underwater robot still advances in the direction before the two turns, and the preferred third and fourth steering angles are 45°.
- the third preset time is preset according to the moving speed of the underwater robot and the length of the fuselage, and the third preset time can ensure that the underwater robot can adjust the predetermined distance in the direction of the machine width after the two steerings.
- the climbing wall control module 200 includes: a determining module 2100, configured to determine, according to the state information, whether the underwater robot encounters a side wall, and if not, controls the underwater robot to advance/retract; Whether the forward/reverse time is not less than the first preset time, and if the forward/reverse time is less than the first preset time, determining, according to the state information, whether the underwater robot encounters a side wall, if encountered And controlling the underwater robot to advance/retract the climbing wall; determining whether the forward/backward climbing wall time is not less than the second preset time; and the lower wall control module 2200, if the moving forward/reverse climbing wall When the time is not less than the second preset time, the underwater robot is controlled to move back/forward the lower wall.
- a determining module 2100 configured to determine, according to the state information, whether the underwater robot encounters a side wall, and if not, controls the underwater robot to advance/retract; Whether the forward/reverse time is not less than the first
- the determining module 2100 is configured to determine, according to the state information, whether the underwater robot is in a horizontal state: acquiring current state information in real time, and determining whether the current underwater robot is at a level based on an angle between the underwater robot and the XY plane in the current state information State, if the angle between the current underwater robot and the XY plane is less than the preset horizontal angle, the underwater robot is in a horizontal state, and the underwater robot is controlled to advance, and the preferred preset horizontal angle is 30°.
- the determining module 2100 is further configured to compare the current forward time with a preset first preset time.
- the first preset time is a first preset time preset according to the length and width of the swimming pool and the moving speed of the underwater robot, and the optimal cleaning path can be selected for the underwater robot based on the first preset time.
- the current advance time is compared with a first preset time, and based on the status information, it is determined whether the underwater robot encounters a side wall.
- the side wall is encountered: during the forward/reverse movement of the underwater robot, the underwater robot advances/retracts horizontally, the body is tilted, and the angle of the fuselage relative to the XY plane gradually increases.
- determining whether the underwater robot encounters the side wall based on the state information in the embodiment includes: determining whether an angle between the body and the XY plane reaches 60°, and if the angle reaches 60°, it is considered to be met. Side wall. Otherwise, it is considered that the side wall has not been encountered. If the current advance time is less than the first preset time, and the side wall is not encountered, the advancement is continued; if the current advance time is less than the first preset time, and the side wall is encountered, the wall is climbed forward; the current advance time is not less than the first preset If the time is set, step S300 is performed. The current forward climbing time is compared with a preset second preset time.
- the second preset time is a preset second preset time according to the height of the swimming pool and the speed of the underwater robot movement. That is, when the underwater robot is operated at a fixed speed for a second predetermined time in the vertical direction, the distance traveled does not exceed the height of the pool.
- the lower wall control module 2200 is configured to control the underwater robot to retreat/forward the lower wall when the forward/reverse climbing wall time is not less than the second preset time.
- the values of the horizontal angle, the lower wall angle and the upper wall angle are independent of each other and are irrelevant.
- the specific implementation scheme can be adjusted according to the application requirements based on the judgment principle.
- the underwater robot of the invention cleans the swimming pool wall on the moving path, and obtains the current state information, that is, obtains the angle between the fuselage and the XY plane, the XZ plane and the YZ plane, thereby controlling the movement path of the machine. .
- the wall is cleaned by the wall.
- the wall is vertically lowered, and after the lower wall is rotated twice, the predetermined distance is adjusted in the machine width direction, and then adjusted.
- After retreating the wall after reaching the second preset time, proceed to the lower wall, and then rotate twice through the lower wall to adjust the predetermined distance in the machine width direction to complete a round-trip cleaning.
- the dead-end cleaning of the swimming pool is achieved, and since the trajectory of the movement is regular, the problem of the cable entanglement of the underwater robot is also avoided.
Landscapes
- Engineering & Computer Science (AREA)
- Mechanical Engineering (AREA)
- Ocean & Marine Engineering (AREA)
- Robotics (AREA)
- Manipulator (AREA)
Abstract
Description
本发明涉及机器人领域,特别是涉及一种水下清洗机器人及其爬行方法、运动路径规划方法和系统。The present invention relates to the field of robots, and in particular to an underwater cleaning robot and a crawling method thereof, a motion path planning method and system.
随着国家科技创新和高端制造业的飞速发展,机器人产业发展越来越受到世界各国的高度关注,主要经济体纷纷将发展机器人产业上升为国家战略,并以此作为保持和重获制造业竞争优势的重要手段。其中,用于满足日常使用的智能家居机器人已经走进了人们的生活,各种不同类型的智能家居机器人已经能够代替人工进行各种工作。With the rapid development of national science and technology innovation and high-end manufacturing industry, the development of the robot industry has received more and more attention from all over the world. The major economies have raised the development of the robot industry into a national strategy, and as a way to maintain and regain manufacturing competition. An important means of advantage. Among them, smart home robots for daily use have entered people's lives, and various types of smart home robots have been able to perform various tasks instead of manual work.
水下机器人,一种用于清洁私人泳池或公共泳池的清洁装置。利用水下机器人对私人泳池或公共泳池进行清洁能够节省人力,并且相比人力清洁水下机器人清洁的更为彻底,因此利用水下机器人来代替人力进行泳池的清洁势必会成为一种趋势。An underwater robot, a cleaning device used to clean private or public swimming pools. The use of underwater robots to clean private or public swimming pools saves manpower and is more thorough than manual cleaning of underwater robots. Therefore, the use of underwater robots instead of manpower for swimming pool cleaning is bound to become a trend.
公开号为CN101695832的专利文献公开了一种水下清洗机器人,其机身内收容有诸如电机的驱动机构和用于收容水中赃物的过滤袋;机身的底部与背部分别开设有进水口与出水口,通过水泵,用于将池水自进水口吸入机身内部,并经过滤后自出水口喷入池内,从而实现净化池水的目的,通过电机驱动机身底部的行走轮转动实现机器人行走。该水下清洗机器人在清洗侧壁时,通过水泵喷力、前后轮对墙壁的摩擦力以及机器人本身重力和浮力共同作用下,使得机器人紧贴墙壁上下运动,实现对水池侧壁进行清洗。The patent document published as CN101695832 discloses an underwater cleaning robot in which a driving mechanism such as a motor and a filter bag for accommodating water in the water are housed in the body; the bottom and the back of the body are respectively provided with a water inlet and a water outlet. The water nozzle, through the water pump, is used to suck the pool water into the airframe from the water inlet, and is filtered and then sprayed into the pool from the water outlet, thereby purifying the water of the pool, and the robot is driven by the rotation of the walking wheel at the bottom of the motor driven body. When the underwater cleaning robot cleans the side wall, the pump spray force, the friction between the front and rear wheels on the wall, and the gravity and buoyancy of the robot itself act together to make the robot move up and down close to the wall to clean the side wall of the pool.
目前,水下清洗机器人在水下作业,例如,在水里爬墙清洗时,水下清洗机器人不能自动调节重心和浮心(流体中的物体的浮心位置,是指被该物体排开的那部分流体的重心位置)。这样,在爬墙作业的过程中,水下清洗机器人可能会从墙上摔落或者不会按照规定的清洗路线行走,运动平稳性差。At present, the underwater cleaning robot operates underwater. For example, when cleaning the wall in the water, the underwater cleaning robot cannot automatically adjust the center of gravity and the floating center (the floating position of the object in the fluid refers to being discharged by the object). The position of the center of gravity of that part of the fluid). In this way, during the process of climbing the wall, the underwater cleaning robot may fall off the wall or not follow the prescribed cleaning route, and the movement is poor.
此外,传统技术中,水下机器人智能识别机器与X轴的夹角,并且其在泳池内的运动轨迹是不可预测的,传统技术中的水下机器人在泳池内的运动是随机的。在这些传统技术的水下机器人进行泳池清洁的技术方案中,因为只能识别到机器与空间坐标系内一个轴的夹角,并且运动是不可预测的,所以就会造成机器电缆线缠绕,并且其不可预测的运动轨迹可能会出现清洁死区,达不到清洁泳池的效果。In addition, in the conventional technology, the underwater robot intelligently recognizes the angle between the machine and the X-axis, and its trajectory in the swimming pool is unpredictable, and the movement of the underwater robot in the swimming pool in the conventional technology is random. In the technical solution of the conventional underwater robot for swimming pool cleaning, since only the angle between the machine and a shaft in the space coordinate system is recognized, and the motion is unpredictable, the machine cable is wound, and Its unpredictable trajectory may result in a clean dead zone that does not reach the clean pool.
基于此,本发明的目的之一是提供一种运动平稳的水下清洗机器人及其爬行方法。Based on this, one of the objects of the present invention is to provide a smooth-moving underwater cleaning robot and a crawling method thereof.
本发明的目的之二是针对机器电缆线缠绕、出现清洁死区,达不到清洁泳池的效果问题,提供一种水下机器人运动路径规划方法及系统。The second object of the present invention is to provide an underwater robot motion path planning method and system for the problem that the machine cable is wound, the cleaning dead zone appears, and the effect of cleaning the swimming pool is not achieved.
为达到上述目的,本发明采用了下列技术方案:In order to achieve the above object, the present invention adopts the following technical solutions:
一种水下清洗机器人,包括机身及设于所述机身上的把手,所述水下清洗机器人在水底爬行作业和/或水下爬墙作业时,所述把手在浮力作用下能够相对于所述机身浮动。An underwater cleaning robot includes a body and a handle disposed on the body, and the underwater cleaning robot can be relatively opposed to buoyancy when underwater crawling operation and/or underwater climbing operation Floating in the fuselage.
在本申请中,由于把手能够相对所述机身浮动,这样,当水下清洗机器人在水底作业时,机身前行方向为近似水平方向,把手会受到水的浮力作用上浮,把手的浮心高于机身的重心并远离机身;当水下清洗机器人在水中沿墙壁爬行时,机身前行方向为近似竖直方向,把手会受到水的浮力作用上浮,把手的浮心高于机身的重心并靠近机身,这样把手受到的竖直向上的浮力能够调整把手相对机身的位置以平衡机器人的重心和浮心,自动纠正机器人倾斜的程度,避免机器人走偏方向和从墙壁掉落,保证了机器人在水下作业运动的平稳性。In the present application, since the handle can float relative to the body, when the underwater cleaning robot is working under the water, the forward direction of the body is approximately horizontal, and the handle is floated by the buoyancy of water, and the floating center of the handle Above the center of gravity of the fuselage and away from the fuselage; when the underwater cleaning robot crawls along the wall in the water, the forward direction of the fuselage is approximately vertical, the handle will be floated by the buoyancy of water, and the float of the handle is higher than the machine The center of gravity of the body is close to the fuselage, so that the vertical upward buoyancy of the handle can adjust the position of the handle relative to the fuselage to balance the center of gravity and floating center of the robot, automatically correct the degree of tilt of the robot, avoid the direction of the robot and the distance from the wall. It ensures the smoothness of the robot's underwater movement.
在本申请中,以水下清洗机器人前进后退方向定义前后方向,以该前后方向的两侧方向定义左右方向,以竖直方向定义上下方向,以机身贴近水底或墙壁的一面为机身的底部,机身上与底部相对的另一面为背部,进水口设置在机身的底部,出水口和把手设置在机身的背部,把手的浮心是指被把手排开的那部分水的重心。In the present application, the front and rear directions are defined by the forward and backward directions of the underwater cleaning robot, the left and right directions are defined by the two sides in the front and rear directions, and the up and down direction is defined by the vertical direction, and the body is close to the bottom or the side of the wall. At the bottom, the other side opposite to the bottom of the fuselage is the back, the water inlet is arranged at the bottom of the fuselage, the water outlet and the handle are arranged at the back of the fuselage, and the floating center of the handle refers to the center of gravity of the part of the water that is discharged by the handle. .
在本申请中,把手包括与机身直接连接的连接部以及通过该连接部与机身间接连接的活动部,该活动部相对于机身能够活动从而远离或者靠近机身的前侧或者后侧。在一种实施方式中,把手的活动部为横杆部,把手的连接部为横杆部两端的竖杆部。In the present application, the handle includes a connecting portion directly connected to the body and a movable portion indirectly connected to the body through the connecting portion, the movable portion being movable relative to the body so as to be away from or close to the front side or the rear side of the body . In one embodiment, the movable portion of the handle is a crossbar portion, and the connecting portion of the handle is a vertical rod portion at both ends of the crossbar portion.
在本申请中,所述把手内部中空或者填充有密度比水小的材料,以使把手的整体密度不大于水,这样在水中能够上浮。In the present application, the handle is hollow inside or filled with a material having a density lower than that of water so that the overall density of the handle is not greater than water, so that it can float in the water.
在一种实施方式中,所述把手能够转动地安装在所述机身上,并且所述把手能够转动从而靠近或远离机身的前侧或后侧。这样,在机器爬墙时,把手受到的竖直向上的浮力通过其转动轴传导至机身,使得机身也受到该竖直向上的浮力作用,就可以自动纠正前行方向避免走偏。In one embodiment, the handle is rotatably mounted on the body and the handle is rotatable to be near or away from the front or rear side of the body. In this way, when the machine climbs the wall, the vertical upward buoyancy of the handle is transmitted to the fuselage through its rotating shaft, so that the fuselage is also subjected to the vertical upward buoyancy, and the forward direction can be automatically corrected to avoid the deviation.
在进一步的实施方式中,所述把手的两端分别能够转动地安装在所述机身的左右两侧,并且所述把手能够转动从而靠近或远离机身的前侧或后侧。这样,在机器爬墙时,把手受到的竖直向上的浮力通过多个转动轴传导至机身的多个部位,从而使得机器爬墙时,浮力纠偏效果更好、效率更高。In a further embodiment, the two ends of the handle are rotatably mounted on the left and right sides of the body, respectively, and the handle is rotatable to be close to or away from the front or rear side of the body. In this way, when the machine climbs the wall, the vertical upward buoyancy of the handle is transmitted to multiple parts of the fuselage through a plurality of rotating shafts, so that the buoyancy correcting effect is better and more efficient when the machine climbs the wall.
再进一步的实施方式中,所述把手的第一端能够滑动及转动地安装在所述机身的第一侧,所述把手的第二端能够转动地安装在所述机身的第二侧,所述机身的第二侧与所述机身的第一侧相对设置,并且所述把手能够转动从而靠近或远离机身的前侧或后侧。这样,把手的第一端通过滑动轴与机身的滑动接触传导浮力,把手的第二端通过转动轴与机身的转动接触传导浮力,不仅把手的浮力作用于机身的多个部位纠偏效果更好、效率更高,而且能够增大浮力纠偏范围以及避免频繁纠偏、过度纠偏增加行走轮电机负荷。In still further embodiments, the first end of the handle is slidably and rotatably mounted on a first side of the body, and the second end of the handle is rotatably mounted on a second side of the body The second side of the fuselage is disposed opposite the first side of the fuselage, and the handle is rotatable to be near or away from the front or rear side of the fuselage. In this way, the first end of the handle transmits buoyancy through the sliding contact of the sliding shaft with the body, and the second end of the handle transmits buoyancy through the rotating contact of the rotating shaft with the body, and not only the buoyancy of the handle acts on the plurality of parts of the body to correct the deviation effect. Better and more efficient, and can increase the range of buoyancy correction and avoid frequent rectification and excessive correction to increase the load of the traveling wheel motor.
在其中一个实施例中,所述机身的第一侧设有滑槽,所述滑槽内设有与所述滑槽转动及滑动连接的滑动轴,所述把手的第一端与所述滑动轴固定连接。这样滑槽可以限制把手沿着机器的垂直方向滑动并对把手滑动起导向作用,同时通过滑槽增大把手调节机器重心的范围,从而增大浮力纠偏范围。In one embodiment, the first side of the fuselage is provided with a sliding slot, and the sliding slot is provided with a sliding shaft that is rotatably and slidably coupled to the sliding slot, the first end of the handle and the first end The sliding shaft is fixedly connected. Such a chute can restrict the sliding of the handle along the vertical direction of the machine and guide the sliding of the handle, and at the same time increase the range of the center of gravity of the machine by increasing the handle by the chute, thereby increasing the range of buoyancy correction.
在其中一个实施例中,所述把手的第一端设有第一转接部,所述滑动轴的一端转动及滑动地安装在所述滑槽内,另一端与所述第一转接部固定连接。In one embodiment, the first end of the handle is provided with a first adapter portion, one end of the sliding shaft is rotatably and slidably mounted in the sliding slot, and the other end is connected to the first adapter portion Fixed connection.
在其中一个实施例中,所述机身的第一侧设有与所述滑槽的内端连通的第一腔室,所述滑动轴安装在所述滑槽内的一端伸入所述第一腔室内、且可拆卸地安装有防止所述滑动轴脱离所述滑槽的第一限位结构。In one embodiment, the first side of the fuselage is provided with a first chamber communicating with the inner end of the chute, and one end of the sliding shaft mounted in the chute extends into the first side A first limiting structure for preventing the sliding shaft from coming off the chute is detachably mounted in a chamber.
在其中一个实施例中,所述把手的第二端能够转动地安装在所述机身的第二侧,所述机身的第二侧与所述机身的第一侧相对设置。In one of the embodiments, the second end of the handle is rotatably mounted on a second side of the fuselage, the second side of the fuselage being disposed opposite the first side of the fuselage.
在其中一个实施例中,所述机身的第二侧设有安装孔,所述安装孔内设有能够在安装孔内转动的转轴,所述把手的第二端与所述转轴固定连接。In one embodiment, the second side of the fuselage is provided with a mounting hole, and the mounting hole is provided with a rotating shaft that can rotate in the mounting hole, and the second end of the handle is fixedly connected with the rotating shaft.
在其中一个实施例中,所述把手的第二端设有第二转接部,所述转轴的一端转动地安装在所述安装孔内,另一端与所述第二转接部固定连接。In one embodiment, the second end of the handle is provided with a second adapter, one end of the shaft is rotatably mounted in the mounting hole, and the other end is fixedly connected to the second adapter.
在其中一个实施例中,所述机身的第二侧设有与所述安装孔的内端连通的第二腔室,所述转轴安装在所述安装孔内的一端伸入所述第二腔室内、且可拆卸地安装有防止所述转轴脱离所述安装孔的第二限位结构。In one embodiment, the second side of the fuselage is provided with a second chamber communicating with the inner end of the mounting hole, and one end of the rotating shaft mounted in the mounting hole extends into the second A second limiting structure for preventing the rotating shaft from coming off the mounting hole is detachably mounted in the chamber.
本申请中,当水下清洗机器人在水底作业时,把手的浮心高于机身的重心并远离机身;当水下清洗机器人在水中沿墙壁向上爬行时,把手的浮心高于机身的重心并靠近机身的前侧;当水下清洗机器人爬出水面时,把手浮于水面,把手的浮心远离机身并且把手的浮心高度靠近机身的重心高度。In the present application, when the underwater cleaning robot is working underwater, the floating center of the handle is higher than the center of gravity of the body and away from the body; when the underwater cleaning robot crawls up the wall in the water, the floating center of the handle is higher than the body The center of gravity is close to the front side of the fuselage; when the underwater cleaning robot climbs out of the water, the handle floats on the surface of the water, the floating center of the handle is away from the fuselage and the height of the float of the handle is close to the height of the center of gravity of the fuselage.
上述水下清洗机器人的爬行方法,当水下清洗机器人在水底作业时,把手受到水的浮力作用上浮远离机身;当水下清洗机器人在水中沿墙壁向上爬行时,把手受到水的浮力作用上浮并靠近机身的前侧。The above-mentioned underwater cleaning robot crawling method, when the underwater cleaning robot is working under the water, the handle is floated away from the fuselage by the buoyancy of the water; when the underwater cleaning robot crawls up the wall in the water, the handle is floated by the buoyancy of the water. And close to the front side of the fuselage.
在进一步的实施方式中,当水下清洗机器人在水底作业时,把手的浮心高于机身的重心并远离机身;当水下清洗机器人在水中沿墙壁向上爬行时,把手的浮心高于机身的重心并靠近机身的前侧,机身通过其出水口的水流喷射力、轮子对墙壁的摩擦力以及重力和浮力的共同作用紧贴墙壁向上爬行;当水下清洗机器人爬出水面时,把手浮于水面,把手的浮心远离机身并且把手的浮心高度靠近机身的重心高度,机身出水口接近水面导致水流喷射力减小,机身不再紧贴墙壁向上爬行。In a further embodiment, when the underwater cleaning robot is working underwater, the floating center of the handle is higher than the center of gravity of the body and away from the body; when the underwater cleaning robot crawls up the wall in the water, the floating center of the handle is high At the center of gravity of the fuselage and close to the front side of the fuselage, the fuselage through the water outlet of the water outlet, the friction of the wheel against the wall and the combination of gravity and buoyancy cling to the wall to crawl upwards; when the underwater cleaning robot climbs out When the water surface, the handle floats on the surface of the water, the floating center of the handle is away from the fuselage and the height of the float of the handle is close to the height of the center of gravity of the fuselage. The water outlet of the fuselage is close to the water surface, causing the water jet force to decrease, and the fuselage no longer clings to the wall to crawl upward. .
再进一步的实施方式中,当水下清洗机器人在水中沿墙壁向上爬行时,检测其实际前行方向与预定前行方向(当墙壁为竖直墙壁时,预定前行方向为竖直向上;当墙壁为倾斜墙壁时,预定前行方向为竖直向上方向在倾斜的墙壁平面内投影的方向)之间的夹角A,若夹角A小于设定角度值,则通过浮动的把手拉动机身实施自动纠偏,若夹角A大于设定角度值且小于90°,则通过调整左右轮子的转速和/或方向实现主动纠偏;若夹角A大于90°,则水下清洗机器人下墙。这样可以提高爬壁清洗效率,避免机器停顿或重复动作。In still another embodiment, when the underwater cleaning robot crawls up the wall in the water, the actual forward direction and the predetermined forward direction are detected (when the wall is a vertical wall, the predetermined forward direction is vertical upward; When the wall is a sloping wall, the predetermined forward direction is the angle A between the direction in which the vertical upward direction is projected in the plane of the inclined wall. If the angle A is smaller than the set angle value, the body is pulled by the floating handle. Automatic deviation correction is implemented. If the angle A is greater than the set angle value and less than 90°, the active deflection is achieved by adjusting the rotation speed and/or direction of the left and right wheels; if the angle A is greater than 90°, the lower wall of the robot is cleaned underwater. This can improve the efficiency of wall cleaning and avoid machine pauses or repeated actions.
与现有技术相比,本水下清洗机器人的优点在于:当水下清洗机器人在水底作业时,机身前行方向为近似水平方向,把手会受到水的浮力作用上浮,把手的浮心高于机身的重心并远离机身;当水下清洗机器人在水中沿墙壁爬行时,机身前行方向为近似竖直方向,把手会受到水的浮力作用上浮,把手的浮心高于机身的重心并靠近机身,这样把手受到的竖直向上的浮力能够调整把手相对机身的位置以平衡机器人的重心和浮心,自动纠正机器人倾斜的程度,避免机器人走偏方向和从墙壁掉落,保证了机器人在水下作业运动的平稳性。Compared with the prior art, the underwater cleaning robot has the advantages that when the underwater cleaning robot is working under the water, the forward direction of the fuselage is approximately horizontal, and the handle is lifted by the buoyancy of the water, and the floating center of the handle is high. At the center of gravity of the fuselage and away from the fuselage; when the underwater cleaning robot crawls along the wall in the water, the forward direction of the fuselage is approximately vertical, the handle will be floated by the buoyancy of the water, and the float of the handle is higher than the fuselage The center of gravity is close to the fuselage, so that the vertical upward buoyancy of the handle can adjust the position of the handle relative to the fuselage to balance the center of gravity and floating center of the robot, automatically correct the degree of tilt of the robot, avoid the direction of the robot and fall from the wall. It ensures the smoothness of the robot's underwater movement.
此外,本发明提供了一种水下机器人运动路径规划方法,包括步骤:实时获取所述水下机器人当前的状态信息;基于所述状态信息控制所述水下机器人前进爬墙,并且在前进爬墙之后后退下墙;基于所述状态信息判断所述水下机器人是否完成后退下墙,若是,则控制所述水下机器人先后退,进行第一次转向,所述第一次转向后,再次后退,进行与第一次转向方向相反角度相同的第二次转向;基于所述状态信息控制所述水下机器人后退爬墙,并且在后退爬墙之后前进下墙;基于所述状态信息判断所述水下机器人是否完成前进下墙,若是,则控制所述水下机器人先前进,进行第三次转向,所述第三次转向后,再次前进,进行与第三次转向方向相反角度相同的第四次转向;重复以上步骤,并将往返次数加1。In addition, the present invention provides a method for planning a motion path of an underwater robot, comprising the steps of: acquiring current state information of the underwater robot in real time; controlling the underwater robot to climb the wall based on the state information, and climbing forward Retreating to the wall after the wall; determining whether the underwater robot completes the retreat to the lower wall based on the status information, and if so, controlling the underwater robot to retreat, performing the first steering, after the first steering, again Retreating, performing a second steering with the same angle as the first steering direction; controlling the underwater robot to retreat the climbing wall based on the state information, and advancing the lower wall after retreating the wall; determining the location based on the state information Whether the underwater robot completes the advancement of the lower wall, and if so, controls the underwater robot to advance, performs the third steering, and after the third steering, advances again, and performs the same angle as the third steering direction. Fourth turn; repeat the above steps and increase the number of round trips by one.
进一步,所述基于所述状态信息控制所述水下机器人前进爬墙,并且在前进爬墙之后后退下墙的步骤以及基于所述状态信息控制所述水下机器人后退爬墙,并且在后退爬墙之后前进下墙的步骤具体为:基于所述状态信息判断所述水下机器人是否为水平状态,若为水平状态,获取当前的往返次数;若往返次数小于n次时,则控制所述水下机器人前进/后退;获取当前前进/后退时间,将所述前进/后退时间与第一预设时间进行比较;若前进/后退时间小于第一预设时间,则基于所述状态信息判断所述水下机器人是否遇到侧墙,若遇到,则控制所述水下机器人前进/后退爬墙;获取当前前进/后退爬墙时间,将所述前进/后退爬墙时间与第二预设时间进行比较;若所述前进/后退爬墙时间不小于所述第二预设时间时,则控制所述水下机器人后退/前进下墙。Further, the step of controlling the underwater robot to climb the wall based on the state information, and retreating the wall after advancing the wall climbing, and controlling the underwater robot to recede the climbing wall based on the state information, and climbing back The step of advancing the lower wall after the wall is specifically: determining whether the underwater robot is in a horizontal state based on the state information, and obtaining a current round trip number if the horizontal state is; and controlling the water if the number of round trips is less than n times Lowering the robot forward/backward; acquiring the current forward/backward time, comparing the forward/reverse time with the first preset time; if the forward/backward time is less than the first preset time, determining the said based on the status information Whether the underwater robot encounters the side wall, if encountered, controls the underwater robot to advance/retract the climbing wall; acquires the current forward/backward climbing wall time, and sets the forward/reverse climbing wall time with the second preset time Comparing; if the forward/backward climbing wall time is not less than the second preset time, controlling the underwater robot to retreat/forward the lower wall.
进一步,所述往返次数增加到n时,对所述往返次数重置为1。Further, when the number of round trips is increased to n, the number of round trips is reset to 1.
进一步,所述基于所述状态信息判断所述水下机器人是否为水平状态,若为水平状态,获取当前的往返次数;若往返次数小于n次时,则控制所述水下机器人前进/后退还包括:若往返次数不小于n次时,获取标志位信息,基于所述标志位控制所述水下机器人第五次转向,所述第五次转向后,前进/后退且标志位加1。Further, the determining, according to the state information, whether the underwater robot is in a horizontal state, and if the horizontal state is a horizontal state, acquiring a current round trip number; if the round trip number is less than n times, controlling the underwater robot to advance/retract The method includes: if the number of round trips is not less than n times, acquiring flag information, controlling the fifth steering of the underwater robot based on the flag position, and following the fifth steering, advancing/retracting and incrementing the flag.
进一步,所述基于所述状态信息判断所述水下机器人是否为水平状态,若为水平状态,获取当前的往返次数;若往返次数小于n次时,则控制所述水下机器人前进/后退还包括:若不为水平状态,则控制所述水下机器人后退/前进下墙且往返次数减1,执行步骤基于所述状态信息判断所述水下机器人是否完成后退/前进下墙,若是,则控制所述水下机器人先后退/前进,进行第一/三次转向,所述第一/三次转向后,再次后退/前进,进行与第一/三次转向方向相反角度相同的第二/四次转向。Further, the determining, according to the state information, whether the underwater robot is in a horizontal state, and if the horizontal state is a horizontal state, acquiring a current round trip number; if the round trip number is less than n times, controlling the underwater robot to advance/retract Including: if not in a horizontal state, controlling the underwater robot to retreat/forward the lower wall and reducing the number of round trips by one, and performing steps to determine whether the underwater robot completes the retreat/forward of the lower wall based on the state information, and if so, Controlling the underwater robot to retreat/forward in sequence, performing first/third steering, and after the first/third steering, retracting/advancing again, performing the second/fourth steering with the same angle as the first/third steering direction .
进一步,所述基于所述标志位第五次转具体为:所述标志位的取值范围为1≤m≤4;当所述标志位等于1时,后退时右转向,前进时不转向,且所述标志位加1;当所述标志位等于2时,后退时左转向,前进时不转向,且所述标志位加1;当所述标志位等于3时,后退时不转向,前进时右转向,且所述标志位加1;当所述标志位等于4时,后退时不转向,前进时左转向,且所述标志位加1;当所述标志位大于4时,将标志位重置为1。Further, the fifth turn based on the flag bit is specifically: the value range of the flag bit is 1 ≤ m ≤ 4; when the flag bit is equal to 1, the right turn is reversed, and the forward direction is not turned, And the flag bit is incremented by 1; when the flag bit is equal to 2, it is turned to the left when going backward, not turned when going forward, and the flag is incremented by 1; when the flag is equal to 3, it does not turn when going backward, and advances When the right turn, and the flag is incremented by one; when the flag is equal to 4, it does not turn when retreating, the left turn when moving forward, and the flag is increased by 1; when the flag is greater than 4, the flag is The bit is reset to 1.
进一步,所述第一次转向、第二次转向、第三次转向、第四次转向的转动角度为45°,所述第五次转向的转动角度为90°。Further, the first steering, the second steering, the third steering, and the fourth steering have a rotation angle of 45°, and the fifth steering has a rotation angle of 90°.
进一步,所述若前进/后退时间小于第一预设时间,则基于所述状态信息判断所述水下机器人是否遇到侧墙,若遇到,则控制所述水下机器人前进/后退爬墙的步骤还包括:若前进/后退时间不小于第一预设时间,则执行步骤基于所述状态信息判断所述水下机器人是否完成前进/后退下墙,若是,则控制所述水下机器人先前进/后退,进行第三/一次转向,所述第三/一次转向后,再次前进/后退,进行与第三/一次转向方向相反角度相同的第四/二次转向。Further, if the forward/reverse time is less than the first preset time, determining, according to the state information, whether the underwater robot encounters a side wall, and if so, controlling the underwater robot to advance/retract the wall The step further includes: if the forward/reverse time is not less than the first preset time, the executing step determines whether the underwater robot completes the forward/reverse lower wall based on the status information, and if so, controls the underwater robot first Forward/reverse, the third/first steering is performed, and after the third/first steering, the forward/backward is performed again, and the fourth/secondary steering having the same angle as the third/first steering direction is performed.
进一步,所述若前进/后退时间小于第一预设时间,则基于所述状态信息判断所述水下机器人是否遇到侧墙,若遇到,则控制所述水下机器人前进/后退爬墙的步骤还包括:若前进/后退时间小于第一预设时间,且没有遇到侧墙,则控制所述水下机器人继续前进/后退。Further, if the forward/reverse time is less than the first preset time, determining, according to the state information, whether the underwater robot encounters a side wall, and if so, controlling the underwater robot to advance/retract the wall The step further includes: if the forward/reverse time is less than the first preset time, and the side wall is not encountered, then controlling the underwater robot to continue to move forward/backward.
进一步,所述若所述前进/后退爬墙时间不小于所述第二预设时间时,则控制所述水下机器人后退/前进下墙的步骤还包括:若所述前进/后退爬墙时间小于所述第二预设时间时,则控制所述水下机器人继续前进/后退爬墙。Further, if the forward/backward climbing wall time is not less than the second preset time, the step of controlling the underwater robot to retreat/forward the lower wall further comprises: if the forward/reverse climbing time When it is less than the second preset time, the underwater robot is controlled to continue to advance/reverse the wall.
进一步,所述前进爬墙、后退下墙、后退爬墙以及前进下墙还包括:实时获取当前的状态信息;基于所述状态信息,判断所述水下机器人当前状态是否为竖直爬墙/下墙;若为竖直爬墙/下墙,则控制所述水下机器人继续爬墙/下墙;若不为竖直爬墙/下墙,则判定所述水下机器人当前状态为绕墙状态。Further, the advancing and climbing the wall, the retreating the lower wall, the retreating the wall, and advancing the lower wall further comprise: acquiring current state information in real time; and determining, according to the state information, whether the current state of the underwater robot is a vertical climbing wall/ Lower wall; if it is vertical climbing wall/lower wall, control the underwater robot to continue climbing/lower wall; if it is not vertical climbing/lower wall, it is determined that the current state of the underwater robot is a wall status.
进一步,当处于绕墙状态时:实时获取当前的状态信息;基于所述状态信息,控制所述水下机器人调整机身位置;基于所述状态信息,判断所述水下机器人是否成功调整为竖直爬墙/下墙;若成功调整为竖直爬墙/下墙,则控制所述水下机器人后退/前进下墙,执行步骤基于所述状态信息判断所述水下机器人是否完成前进下墙,若是,则控制所述水下机器人先前进,进行第三次转向,所述第三次转向后,再次前进,进行与第三次转向方向相反角度相同的第四次转向;若未成功调整为竖直爬墙/下墙,则控制所述水下机器人发出警报。Further, when in the state of the wall, the current state information is acquired in real time; based on the state information, the underwater robot is controlled to adjust the position of the body; and based on the state information, it is determined whether the underwater robot is successfully adjusted to be vertical Straight wall/lower wall; if successfully adjusted to vertical wall/lower wall, control the underwater robot to retreat/forward the lower wall, and perform steps based on the state information to determine whether the underwater robot completes the lower wall If yes, control the underwater robot to advance, perform a third steering, and after the third steering, advance again to perform the fourth steering with the same angle as the third steering direction; if the adjustment is not successful In order to vertically climb the wall/lower wall, the underwater robot is controlled to issue an alarm.
进一步,所述实时获取所述水下机器人当前的状态信息的步骤之前还包括:预先设置第一预设时间、第二预设时间、最大往返次数n、以及标志位的初始值。Further, the step of acquiring the current state information of the underwater robot in real time further includes: presetting a first preset time, a second preset time, a maximum number of round trips n, and an initial value of the flag bit.
本发明还提供了一种水下机器人运动路径规划系统包括:状态获取模块,用于实时获取所述水下机器人当前的状态信息;爬墙控制模块,用于基于所述状态信息控制水下机器人前进/后退爬墙,并且在前进/后退爬墙之后后退/前进下墙;转向控制模块,用于基于所述状态信息判断所述水下机器人是否完成后退下墙,若是,则控制所述水下机器人先后退,进行第一次转向,所述第一次转向后,再次后退,进行与第一次转向方向相反角度相同的第二次转向;基于所述状态信息判断所述水下机器人是否完成前进下墙,若是,则控制所述水下机器人先前进,进行第三次转向,所述第三次转向后,再次前进,进行与第三次转向方向相反角度相同的第四次转向。The invention also provides an underwater robot motion path planning system, comprising: a state acquiring module, configured to acquire current state information of the underwater robot in real time; and a climbing wall control module, configured to control the underwater robot based on the state information Advancing/retracting the wall and retreating/advancing the lower wall after advancing/retracting the wall; steering control module for judging whether the underwater robot completes the retreat to the lower wall based on the status information, and if so, controlling the water The lower robot successively retreats, performs the first steering, and after the first steering, retreats again, performs the second steering with the same angle as the first steering direction; and determines whether the underwater robot is based on the state information The advancement of the lower wall is completed, and if so, the underwater robot is controlled to advance, and the third steering is performed. After the third steering, the vehicle is again advanced to perform the fourth steering at the same angle as the third steering direction.
进一步,所述爬墙控制模块包括:判断模块,用于基于所述状态信息判断所述水下机器人是否遇到侧墙,若没有遇到,则控制所述水下机器人前进/后退;判断所述前进/后退时间是否不小于所述第一预设时间,若前进/后退时间小于第一预设时间,则基于所述状态信息判断所述水下机器人是否遇到侧墙,若遇到,则控制所述水下机器人前进/后退爬墙;判断所述前进/后退爬墙时间是否不小于所述第二预设时间;下墙控制模块,用于若所述前进/后退爬墙时间不小于所述第二预设时间时,则控制所述水下机器人后退/前进下墙。Further, the climbing wall control module includes: a determining module, configured to determine, according to the state information, whether the underwater robot encounters a side wall, and if not, controls the underwater robot to advance/retract; Whether the forward/reverse time is not less than the first preset time, and if the forward/reverse time is less than the first preset time, determining, according to the status information, whether the underwater robot encounters a side wall, if encountered, And controlling the underwater robot to advance/retract the climbing wall; determining whether the forward/backward climbing wall time is not less than the second preset time; and the lower wall control module, if the forward/reverse climbing time is not When it is less than the second preset time, the underwater robot is controlled to retreat/forward the lower wall.
本发明的水下机器人对其运动路径上的泳池壁进行清洁,通过获取当前的状态信息,也即获取机身与XY平面、XZ平面、YZ平面之间的夹角,进而控制机器的运动路径。首先判断当前是否处于水平状态,若处于水平状态则前进爬墙清洗,到达第二预设时间后,竖直下墙,下墙后通过两次旋转,在机器宽度方向调整预定距离,调整后再后退爬墙,到达第二预设时间后,前进下墙,下墙后再次通过两次旋转,在机器宽度方向调整预定距离,完成一次往返清洗。通过多次的往返清洗达到对泳池的无死角清洗,由于其运动轨迹为有规律的,因此也避免了水下机器人的电缆线缠绕的问题。The underwater robot of the invention cleans the swimming pool wall on the moving path, and obtains the current state information, that is, obtains the angle between the fuselage and the XY plane, the XZ plane and the YZ plane, thereby controlling the movement path of the machine. . Firstly, it is judged whether the current state is in the horizontal state. If it is in the horizontal state, the wall is cleaned by the wall. After reaching the second preset time, the wall is vertically lowered, and after the lower wall is rotated twice, the predetermined distance is adjusted in the machine width direction, and then adjusted. After retreating the wall, after reaching the second preset time, proceed to the lower wall, and then rotate twice through the lower wall to adjust the predetermined distance in the machine width direction to complete a round-trip cleaning. Through the repeated round-trip cleaning, the dead-end cleaning of the swimming pool is achieved, and since the trajectory of the movement is regular, the problem of the cable entanglement of the underwater robot is also avoided.
图1为本发明提供的水下清洗机器人结构示意图。FIG. 1 is a schematic structural view of an underwater cleaning robot provided by the present invention.
图2为本发明提供的水下清洗机器人另一视角结构示意图。2 is a schematic view showing another structure of the underwater cleaning robot provided by the present invention.
图3为本发明提供的图1中A处放大图。Figure 3 is an enlarged view of a portion A of Figure 1 provided by the present invention.
图4为本发明提供的图2中B处放大图。Figure 4 is an enlarged view of a portion B of Figure 2 provided by the present invention.
图5本发明提供的水下清洗机器人的剖视图。Figure 5 is a cross-sectional view of the underwater cleaning robot provided by the present invention.
图6本发明提供的图4中C处放大图。Figure 6 is an enlarged view of a portion C of Figure 4 provided by the present invention.
图7本发明提供的图4中D处放大图。Figure 7 is an enlarged view of the portion D of Figure 4 provided by the present invention.
图8为本发明第一实施例提供的一种水下机器人运动路径规划方法的流程图。FIG. 8 is a flowchart of a method for planning a motion path of an underwater robot according to a first embodiment of the present invention.
图9为本发明第二实施例提供的一种水下机器人运动路径规划方法的流程图。FIG. 9 is a flowchart of a method for planning a motion path of an underwater robot according to a second embodiment of the present invention.
图10为本发明第三实施例提供的一种水下机器人运动路径规划方法的流程图。FIG. 10 is a flowchart of a method for planning a motion path of an underwater robot according to a third embodiment of the present invention.
图11为本发明第四实施例提供的一种水下机器人运动路径规划方法的流程图。FIG. 11 is a flowchart of a method for planning a motion path of an underwater robot according to a fourth embodiment of the present invention.
图12为本发明第五实施例提供的一种水下机器人运动路径规划方法的流程图。FIG. 12 is a flowchart of a method for planning a motion path of an underwater robot according to a fifth embodiment of the present invention.
图13为本发明实施例提供的一种水下机器人运动路径规划系统的模块关系示意图。FIG. 13 is a schematic diagram of a module relationship of an underwater robot motion path planning system according to an embodiment of the present invention.
图14为本发明实施例提供的爬墙控制模块的模块关系示意图。FIG. 14 is a schematic diagram of a module relationship of a wall climbing control module according to an embodiment of the present invention.
图中附图标记:机身10、机身的第一侧110、滑槽111、第一腔室112、机身的第二侧120、安装孔121、第二腔室122、把手20、把手的第一端210、滑动轴211、第一转接部212、、把手的第二端220、转轴221、第二转接部222、第一限位结构30、第一螺母310、第二限位结构40、第二螺母410。Reference numerals in the figures: body 10, first side 110 of the fuselage, chute 111, first chamber 112, second side 120 of the fuselage, mounting hole 121, second chamber 122, handle 20, handle The first end 210, the sliding shaft 211, the first adapter portion 212, the second end 220 of the handle, the rotating shaft 221, the second adapter portion 222, the first limiting structure 30, the first nut 310, and the second limit The bit structure 40 and the second nut 410.
100为状态获取模块、200为爬墙控制模块、2100为判断模块、2200为下墙控制模块、300为转向控制模块。100 is a state acquisition module, 200 is a wall climbing control module, 2100 is a determination module, 2200 is a lower wall control module, and 300 is a steering control module.
下面结合附图和具体实施方式对本发明做进一步详细的说明。The present invention will be further described in detail below in conjunction with the drawings and specific embodiments.
如图1、图2所示,本实施例提供一种水下清洗机器人,包括机身10及把手20,机身10底部安装有四个行走轮101和进水口,机身背部开设有出水口102,把手安装在机身背部。当水下清洗机器人在水下作业时,把手20能够相对机身10浮动以及摆动,并通过这种方式来调节水下清洗机器作业时的重心和浮心。As shown in FIG. 1 and FIG. 2, the embodiment provides an underwater cleaning robot, including a fuselage 10 and a handle 20. The bottom of the fuselage 10 is provided with four walking wheels 101 and a water inlet, and a water outlet is opened at the back of the fuselage. 102, the handle is installed on the back of the fuselage. When the underwater cleaning robot is operating underwater, the handle 20 can float and swing relative to the body 10, and in this way adjusts the center of gravity and the center of buoyancy of the underwater washing machine.
具体地,在本实施例中,如图1和图2所示,机身10具有相对设置的第一侧110和第二侧120;把手20具有相对设置的第一端210和第二端220。把手20的第一端210能够转动及滑动地安装在机身10的第一侧110。把手20的第二端220能够转动地安装在机身10的第二侧120。Specifically, in the present embodiment, as shown in FIG. 1 and FIG. 2, the body 10 has opposite first and second sides 110 and 120; the handle 20 has opposite first and second ends 210 and 220. . The first end 210 of the handle 20 is rotatably and slidably mounted to the first side 110 of the body 10. The second end 220 of the handle 20 is rotatably mounted to the second side 120 of the body 10.
进一步地,参阅图3和图4,机身10的第一侧110设有滑槽111。把手20的第一端210设有滑动轴211。滑动轴211安装在滑槽111内,且滑动轴211能够在滑槽111内转动的同时可沿滑槽111的宽度方向滑动,从而实现把手20的第一端210转动及滑动地安装在机身10的第一侧110。Further, referring to FIGS. 3 and 4, the first side 110 of the body 10 is provided with a chute 111. The first end 210 of the handle 20 is provided with a sliding shaft 211. The sliding shaft 211 is mounted in the sliding slot 111, and the sliding shaft 211 can slide in the width direction of the sliding slot 111 while rotating in the sliding slot 111, so that the first end 210 of the handle 20 is rotatably and slidably mounted on the body. The first side 110 of 10.
机身10的第二侧120设有安装孔121。安装孔121内上设有转轴221。转轴221能够在安装孔121内转动,把手20的第二端220与转轴221固定连接。转轴221在安装孔121内转动,以实现把手20的第二端220与机身10的第二侧120转动连接。The second side 120 of the body 10 is provided with a mounting hole 121. A rotating shaft 221 is disposed in the mounting hole 121. The rotating shaft 221 is rotatable within the mounting hole 121, and the second end 220 of the handle 20 is fixedly coupled to the rotating shaft 221. The shaft 221 is rotated within the mounting hole 121 to effect rotational connection of the second end 220 of the handle 20 with the second side 120 of the body 10.
在本实施例中,通过将把手20的第一端210转动及滑动地安装在机身10的第一侧110、把手20的第二端220转动地安装在机身10的第二侧120。当机器人在水中倾斜的墙壁上作业时,把手的浮动可以改变机器人在墙壁上工作时的重心和浮心,使机器人能够在墙壁上侧斜、横向走动。In the present embodiment, the first side 210 of the handle 20 is rotatably mounted to the first side 110 of the body 10, and the second end 220 of the handle 20 is rotatably mounted to the second side 120 of the body 10. When the robot is working on a wall that is tilted in the water, the float of the handle can change the center of gravity and the floating center of the robot when working on the wall, so that the robot can slant and move laterally on the wall.
优选地,在把手20的第一端210设有第一转接部212。滑动轴211的一端安装在滑槽111内并能够在滑槽111内转动以及滑动;滑动轴211的另一端与第一转接部212固定连接。当滑动轴211的一端在滑槽111内转动以及滑动时,可以使手柄20的第一端210相对于机身10的第一侧110转动以及滑动。把手20的第二端220设有第二转接部222。转轴221的一端安装在安装孔121内并能够在安装孔121转动,转轴221的另一端与第二转接部222固定连接。当转轴221在安装孔121内转动时,以实现手柄20的第二端220相对机身10的第二侧120转动。Preferably, a first adapter portion 212 is provided at the first end 210 of the handle 20. One end of the sliding shaft 211 is mounted in the sliding groove 111 and is rotatable and slidable in the sliding groove 111; the other end of the sliding shaft 211 is fixedly connected to the first adapter portion 212. When one end of the slide shaft 211 is rotated and slid in the chute 111, the first end 210 of the handle 20 can be rotated and slid relative to the first side 110 of the body 10. The second end 220 of the handle 20 is provided with a second adapter portion 222. One end of the rotating shaft 221 is mounted in the mounting hole 121 and is rotatable in the mounting hole 121, and the other end of the rotating shaft 221 is fixedly connected to the second adapting portion 222. When the shaft 221 is rotated within the mounting hole 121, the second end 220 of the handle 20 is rotated relative to the second side 120 of the body 10.
更优选地,第一转接部212与把手20连为一体式结构。第二转接部222与把手20连为一体式结构。More preferably, the first adapter portion 212 is connected to the handle 20 in a unitary structure. The second adapter portion 222 is connected to the handle 20 in an integrated structure.
在本实施例中,参阅图5至图7,机身10的第一侧110设有与滑槽111的内端连通的第一腔室112。滑动轴211安装在滑槽111内的一端伸入第一腔室112内、且可拆卸地安装有防止滑动轴211脱离滑槽111的第一限位结构30。机身10的第二侧120设有与安装孔121的内端连通的第二腔室122。转轴221安装在安装孔121内的一端伸入第二腔室122内、且可拆卸地安装有防止转轴221脱离安装孔121的第二限位结构40。In the present embodiment, referring to FIGS. 5-7, the first side 110 of the body 10 is provided with a first chamber 112 that communicates with the inner end of the chute 111. One end of the sliding shaft 211 mounted in the sliding groove 111 projects into the first chamber 112, and the first limiting structure 30 for preventing the sliding shaft 211 from coming off the sliding groove 111 is detachably mounted. The second side 120 of the body 10 is provided with a second chamber 122 that communicates with the inner end of the mounting hole 121. One end of the rotating shaft 221 installed in the mounting hole 121 extends into the second chamber 122, and a second limiting structure 40 for preventing the rotating shaft 221 from coming off the mounting hole 121 is detachably mounted.
具体地,第一限位结构30与第二限位结构40的结构相同。第一限位结构30包括容置在第一腔室112内的第一螺母310。第一螺母310与安装在滑槽111内的滑动轴211螺纹连接,且第一螺母310的外径大于滑槽111的内径,以达到当滑动轴211在滑槽111内转动及滑动时脱离滑槽111。第二限位结构40包括容置在第二腔室122内的第二螺母410。第二螺母410与转轴221螺纹连接,且第二螺母410的外径大于安装孔121的内径,以防止转轴221在安装孔121内转动时脱离安装孔121。Specifically, the first limiting structure 30 has the same structure as the second limiting structure 40. The first stop structure 30 includes a first nut 310 that is received within the first chamber 112. The first nut 310 is screwed to the sliding shaft 211 installed in the sliding slot 111, and the outer diameter of the first nut 310 is larger than the inner diameter of the sliding slot 111 to achieve slippage when the sliding shaft 211 rotates and slides in the sliding slot 111. Slot 111. The second stop structure 40 includes a second nut 410 that is received within the second chamber 122. The second nut 410 is screwed to the rotating shaft 221 , and the outer diameter of the second nut 410 is larger than the inner diameter of the mounting hole 121 to prevent the rotating shaft 221 from coming off the mounting hole 121 when rotating in the mounting hole 121 .
在本实施例中,把手20内部为中空,且该把手20内部密封设置,以防止水渗入把手内部。In the present embodiment, the inside of the handle 20 is hollow, and the handle 20 is internally sealed to prevent water from penetrating into the interior of the handle.
进一步地,把手20内填充有密度比水小的材料,例如聚苯乙烯泡沫等,以增大把手在水中所受的浮力,更有利于把手20在水中浮动。Further, the handle 20 is filled with a material having a density lower than that of water, such as polystyrene foam, etc., to increase the buoyancy of the handle in the water, and is more advantageous for the handle 20 to float in the water.
上述水下清洗机器人的爬行方法,当水下清洗机器人在水底作业时,把手受到水的浮力作用上浮远离机身,把手的浮心高于机身的重心并远离机身;当水下清洗机器人在水中沿墙壁向上爬行时,把手受到水的浮力作用上浮并靠近机身的前侧,把手的浮心高于机身的重心并靠近机身的前侧,机身通过其出水口的水流喷射力、轮子对墙壁的摩擦力以及重力和浮力的共同作用紧贴墙壁向上爬行;在爬墙过程中由于墙体与机身摩擦力改变以及左右行走轮电机转速差异,会在墙面上产生一定的倾斜,浮动的把手在本身浮力作用下始终保持竖直向上,这样把手能够调整其相对机身的位置以平衡机器人的重心和浮心,调整机器重心向中心方向移动,协助机器减小倾斜角度。当水下清洗机器人爬出水面时,把手浮于水面,把手的浮心远离机身并且把手的浮心高度靠近机身的重心高度,机身出水口接近水面导致水流喷射力减小,机身不再紧贴墙壁继续向上爬出水面。The above-mentioned underwater cleaning robot crawling method, when the underwater cleaning robot is working under the water, the handle is floated away from the body by the buoyancy of the water, the floating center of the handle is higher than the center of gravity of the body and away from the fuselage; When crawling up the wall in the water, the handle is floated by the buoyancy of the water and is close to the front side of the fuselage. The float of the handle is higher than the center of gravity of the fuselage and close to the front side of the fuselage, and the fuselage is sprayed through the water outlet of the water outlet. The force of the wheel, the friction of the wheel against the wall, and the combination of gravity and buoyancy are close to the wall. During the process of climbing the wall, due to the change of the friction between the wall and the fuselage and the difference in the rotational speed of the left and right traveling wheels, a certain wall will be produced. The tilting, floating handle always keeps vertical up under the buoyancy of itself, so that the handle can adjust its position relative to the fuselage to balance the center of gravity and center of the robot, adjust the center of gravity of the machine to move toward the center, and assist the machine to reduce the tilt angle. . When the underwater cleaning robot climbs out of the water surface, the handle floats on the water surface, the floating center of the handle is away from the fuselage and the height of the float of the handle is close to the height of the center of gravity of the fuselage, and the water outlet of the fuselage is close to the water surface, causing the water jet force to decrease, the fuselage No longer cling to the wall and continue to climb out of the water.
为了提高爬壁清洗效率,避免机器停顿或重复动作,再进一步的实施方式中,当水下清洗机器人在水中沿墙壁向上爬行时,检测其实际前行方向与预定前行方向(当墙壁为竖直墙壁时,预定前行方向为竖直向上;当墙壁为倾斜墙壁时,预定前行方向为竖直向上方向在倾斜的墙壁平面内投影的方向)之间的夹角A,若夹角A小于设定角度值(本实施例为15°),则通过浮动的把手拉动机身实施自动纠偏,若夹角A大于设定角度值且小于90°,则通过调整左右轮子的转速和/或方向实现主动纠偏,将机器调整至水平;若夹角A大于90°,则水下清洗机器人直接切换运动模式(上墙切换为下墙)。当机器一直倾斜在墙上时,机器会定时开关水泵电机及行走轮电机,让机器下墙。至于检测其实际前行方向与预定前行方向之间的夹角A的方法和装置为现有技术,例如可以采用陀螺仪检测。In order to improve the wall cleaning efficiency and avoid machine pause or repeated action, in a further embodiment, when the underwater cleaning robot crawls up the wall in the water, the actual forward direction and the predetermined forward direction are detected (when the wall is vertical) When straight wall, the predetermined forward direction is vertical upward; when the wall is inclined wall, the predetermined forward direction is the angle A between the direction of the vertical upward direction projected in the inclined wall plane), if the angle A If it is less than the set angle value (15° in this embodiment), the air body is automatically rotated by the floating hand. If the angle A is greater than the set angle value and less than 90°, the speed of the left and right wheels is adjusted and/or The direction is actively corrected, and the machine is adjusted to the horizontal; if the angle A is greater than 90°, the underwater cleaning robot directly switches the motion mode (the upper wall is switched to the lower wall). When the machine is tilted on the wall, the machine will switch the pump motor and the travel wheel motor regularly to let the machine go down the wall. As for the method and apparatus for detecting the angle A between the actual forward direction and the predetermined forward direction, the prior art, for example, gyroscope detection can be employed.
为了避免机器电缆线缠绕、出现清洁死区等问题,本发明实施例还公开了一种水下机器人运动路径规划方法。通过获取当前的状态信息,控制水下机器人进行先纵向再横向的有规律的清洗,进而能够保证水下机器人无死角的对泳池进行清洗。并且由于其对泳池为有规律的清洗,因此还能够避免水下机器人的电缆线缠绕的问题。该水下机器人运动路径规划方法优选采用上述水下清洗机器人的结构和爬行方法,也可以采用其他水下机器人的结构和爬行方法。In order to avoid the problem of the winding of the machine cable, the occurrence of the cleaning dead zone, etc., the embodiment of the invention also discloses a method for planning the motion path of the underwater robot. By obtaining the current state information, the underwater robot is controlled to perform vertical cleaning in the longitudinal direction and then in the horizontal direction, thereby ensuring that the underwater robot can clean the swimming pool without a dead angle. And because of the regular cleaning of the swimming pool, it is also possible to avoid the problem of the cable entanglement of the underwater robot. The underwater robot motion path planning method preferably adopts the structure and crawling method of the above underwater cleaning robot, and may also adopt the structure and crawling method of other underwater robots.
本实施例中水平状态包括:在第一次转向、第二次转向、第三次转向、第四次转向、第五次转向后水平状态为:水下机器人与XY平面的夹角小于预设水平夹角,本实施例优选的预设水平夹角为30°;在下墙时水平状态为,机身与XY平面的夹角小于或等于预设下墙角度;在上墙时水平状态为,机身与XY平面的夹角小于或等于预设爬墙角度。The horizontal state in this embodiment includes: after the first steering, the second steering, the third steering, the fourth steering, and the fifth steering, the horizontal state is: the angle between the underwater robot and the XY plane is less than the preset In the horizontal angle, the preferred preset horizontal angle of the embodiment is 30°; when the lower wall is horizontal, the angle between the fuselage and the XY plane is less than or equal to the preset lower wall angle; when the upper wall is horizontal, The angle between the fuselage and the XY plane is less than or equal to the preset wall climbing angle.
请参阅图8,图8为本发明第一实施例提供的一种水下机器人运动路径规划方法的流程图。Please refer to FIG. 8. FIG. 8 is a flowchart of a method for planning a motion path of an underwater robot according to a first embodiment of the present invention.
如图8所示,一种水下机器人运动路径规划方法可以包括以下步骤S100至S600,以下步骤以水下清洁机器人对泳池进行清洗的路径规划方法为例进行介绍,其中涉及对泳池底部以及周围墙壁的清洁路径规划。As shown in FIG. 8 , an underwater robot motion path planning method may include the following steps S100 to S600. The following steps describe an example of a path planning method for cleaning a swimming pool by an underwater cleaning robot, which involves the bottom of the pool and the surrounding area. Planning the clean path of the wall.
步骤S100:实时获取所述水下机器人当前的状态信息。Step S100: Acquire current state information of the underwater robot in real time.
具体的,所述状态信息为机身与XY平面、XZ平面、YZ平面之间的夹角。其中,XY平面、XZ平面、YZ平面为空间坐标系中X轴、Y轴以及Z轴两两所在的平面,XY平面为X轴与Y轴所形成的平面;XZ平面为X轴与Z轴所在的平面;YZ平面为Y轴与Z轴所形成的平面,并且XY平面与泳池底面平行。其中获取当前状态信息的装置为惯性传感器,可以为三轴加速度传感器、陀螺仪或者二者的结合。水下机器人在运动时,实时更新当前的状态信息。Specifically, the state information is an angle between the body and the XY plane, the XZ plane, and the YZ plane. The XY plane, the XZ plane, and the YZ plane are planes of the X-axis, the Y-axis, and the Z-axis in the space coordinate system, and the XY plane is a plane formed by the X-axis and the Y-axis; the XZ plane is the X-axis and the Z-axis. The plane in which it is located; the YZ plane is the plane formed by the Y-axis and the Z-axis, and the XY plane is parallel to the bottom surface of the pool. The device for obtaining current state information is an inertial sensor, which may be a three-axis acceleration sensor, a gyroscope, or a combination of the two. The underwater robot updates the current status information in real time while exercising.
本实施例中的状态信息包括机身与XY、YZ和XZ三个平面的夹角。The state information in this embodiment includes an angle between the body and three planes of XY, YZ, and XZ.
步骤S200:基于所述状态信息控制所述水下机器人前进爬墙,并且在前进爬墙之后后退下墙。Step S200: Control the underwater robot to climb the wall based on the state information, and retreat to the wall after advancing the wall.
具体的,所述基于所述状态信息控制所述水下机器人前进爬墙时包括:基于所述状态信息判断所述水下机器人是否为水平状态,若为水平状态,则控制所述水下机器人水平前进;获取当前水平前进时间,将所述水平前进时间与第一预设时间进行比较;若水平前进时间小于第一预设时间,则基于所述状态信息判断所述水下机器人是否遇到侧墙,若遇到侧墙,则根据状态信息控制所述水下机器人前进爬墙;获取当前前进爬墙时间,将所述前进爬墙时间与第二预设时间进行比较;若所述前进爬墙时间不小于所述第二预设时间时,则控制所述水下机器人后退下墙。Specifically, the controlling the underwater robot to climb the wall based on the state information includes: determining, according to the state information, whether the underwater robot is in a horizontal state, and if in the horizontal state, controlling the underwater robot Horizontally advancing; acquiring a current horizontal advance time, comparing the horizontal advance time with a first preset time; if the horizontal advance time is less than the first preset time, determining whether the underwater robot encounters based on the status information The side wall, if the side wall is encountered, the underwater robot is controlled to advance the wall according to the state information; the current forward climbing time is obtained, and the forward climbing time is compared with the second preset time; When the wall climbing time is not less than the second preset time, the underwater robot is controlled to retreat to the wall.
在水下机器人水平前进过程中,机器人遇到侧墙时,由于水下机器人继续水平前进,机身会倾斜,且机身相对于XY平面的夹角逐渐增大直至垂直于XY平面。相应的,本实施例中基于所述状态信息判断所述水下机器人是否遇到侧墙包括:判断机身与XY平面的夹角是否达到60°,若夹角达到60°,则认为遇到侧墙。否则,认为未遇到侧墙。During the horizontal advancement of the underwater robot, when the robot encounters the side wall, the body will tilt as the underwater robot continues to advance horizontally, and the angle of the fuselage relative to the XY plane gradually increases until it is perpendicular to the XY plane. Correspondingly, determining whether the underwater robot encounters the side wall based on the state information in the embodiment includes: determining whether an angle between the body and the XY plane reaches 60°, and if the angle reaches 60°, it is considered to be met. Side wall. Otherwise, it is considered that the side wall has not been encountered.
当水下机器人与XY平面之间的夹角达到一定值时,则控制水下机器人前进爬墙。具体的,将水下机器人与XY平面的角度与预设爬墙角度进行对比,当大于预设爬墙角度时,则认为水下机器人遇到侧墙,并控制水下机器人前进爬墙,优选的预设爬墙角度为60°,即当与XY平面的角度大于60°时控制水下机器人前进爬墙。当水下机器人前进爬墙运行第二预设时间后,后退下墙。其中第二预设时间为根据泳池高度以及水下机器人运动的速度,预先设置的第二预设时间。也就是当水下机器人在竖直方向以固定的速度运行第二预设时间后,所行进的距离略大于泳池的高度。When the angle between the underwater robot and the XY plane reaches a certain value, the underwater robot is controlled to advance the wall. Specifically, the angle between the underwater robot and the XY plane is compared with the preset climbing wall angle. When the angle is greater than the preset climbing wall angle, the underwater robot is considered to encounter the side wall, and the underwater robot is controlled to climb the wall. The preset climbing wall angle is 60°, that is, the underwater robot is controlled to climb the wall when the angle with the XY plane is greater than 60°. When the underwater robot moves forward to climb the wall for a second preset time, it retreats to the wall. The second preset time is a preset second preset time according to the height of the swimming pool and the speed of the underwater robot movement. That is, when the underwater robot is operated at a fixed speed for a second predetermined time in the vertical direction, the distance traveled is slightly larger than the height of the swimming pool.
步骤S300:基于所述状态信息判断所述水下机器人是否完成后退下墙,若是,则控制所述水下机器人先后退,进行第一次转向,所述第一次转向后,再次后退,进行与第一次转向方向相反角度相同的第二次转向。Step S300: determining, according to the state information, whether the underwater robot completes the retreat to the lower wall, and if so, controlling the underwater robot to retreat, performing the first steering, and after the first steering, retreating again. The second turn is the same angle as the first steering direction.
具体的,基于所述状态信息判断所述水下机器人是否完成后退下墙为:判断当前是否处于水平状态,将水下机器人与XY平面的角度与预设下墙角度进行对比,当小于预设下墙角度时,则为水平状态,优选的预设下墙角度为30°,即当与XY平面的角度小于30°时判断水下机器人完成下墙。也就说明水下机器人已经完全下墙。当完全下墙时,则后退,当后退第三预设时间时,进行第一次转向,第一次转向之后再后退第三预设时间,之后进行第二次转向。当判断不处于水平状态时,则继续后退下墙。其中,第一次转向与第二次转向的转动方向相反,也就是通过两次转向将水下机器人在机器宽度方向调整预定距离,并且所述第一次转向与第二次转向所转动的角度相同,即两次转向后水下机器人仍沿两次转向前的方向后退,优选第一次转向与第二次转向的转动角度为45°。其中第三预设时间为根据水下机器人的运动速度以及机身的长度预先设置的,第三预设时间能够保证在两次转向之后水下机器人能够在机器宽度的方向调整预定距离。Specifically, determining, according to the state information, whether the underwater robot completes the retreat to the lower wall: determining whether the current state is in a horizontal state, comparing the angle of the underwater robot and the XY plane with the preset lower wall angle, when less than the preset When the angle of the lower wall is horizontal, the preferred preset lower wall angle is 30°, that is, when the angle with the XY plane is less than 30°, the underwater robot is judged to complete the lower wall. This means that the underwater robot has been completely under the wall. When the wall is completely down, it is retracted. When the third preset time is reversed, the first steering is performed, and after the first steering, the third preset time is retreated, and then the second steering is performed. When it is judged that it is not in the horizontal state, it continues to retreat to the wall. Wherein, the first steering is opposite to the rotation direction of the second steering, that is, the underwater robot is adjusted by a predetermined distance in the machine width direction by two steerings, and the angle of the first steering and the second steering is rotated. The same, that is, after two steerings, the underwater robot still retreats in the direction before the two turns, and it is preferable that the first steering and the second steering have a rotation angle of 45°. The third preset time is preset according to the moving speed of the underwater robot and the length of the fuselage, and the third preset time can ensure that the underwater robot can adjust the predetermined distance in the direction of the machine width after the two steerings.
步骤S400:基于所述状态信息控制所述水下机器人后退爬墙,并且在后退爬墙之后前进下墙。Step S400: Control the underwater robot to recede the climbing wall based on the state information, and advance the lower wall after retreating the wall.
具体的,当将水下机器人通过步骤S300在机器宽度方向调整预定距离之后,水下机器人为水平状态,即水下机器人与XY平面之间的夹角小于预设水平角度,此时水下机器人水平后退。Specifically, after the underwater robot is adjusted by the predetermined distance in the machine width direction by the step S300, the underwater robot is in a horizontal state, that is, the angle between the underwater robot and the XY plane is smaller than a preset horizontal angle, and the underwater robot Retreat horizontally.
具体的,基于所述状态信息控制所述水下机器人后退爬墙,并且在后退爬墙之后前进下墙包括:获取当前水平后退时间,将所述水平后退时间与第一预设时间进行比较;若水平后退时间小于第一预设时间,则基于所述状态信息判断所述水下机器人是否遇到侧墙,若遇到侧墙,则根据状态信息控制所述水下机器人后退爬墙;获取当前后退爬墙时间,将所述后退爬墙时间与第二预设时间进行比较;若所述后退爬墙时间不小于所述第二预设时间时,则控制所述水下机器人前进下墙。Specifically, controlling the underwater robot to retreat the climbing wall based on the state information, and advancing the lower wall after retreating the wall includes: acquiring a current horizontal back time, and comparing the horizontal back time with the first preset time; If the horizontal back time is less than the first preset time, determining whether the underwater robot encounters the side wall based on the state information, and if the side wall is encountered, controlling the underwater robot to retreat the wall according to the state information; The backwall climbing time is compared with the second preset time; if the back climbing wall time is not less than the second preset time, the underwater robot is controlled to advance to the lower wall. .
在水下机器人水平后退过程中,水下机器人水平后退,机身会倾斜使机身相对于XY平面的夹角逐渐增大。相应的,本实施例中基于所述状态信息判断所述水下机器人是否遇到侧墙包括:判断机身与XY平面的夹角是否达到60°,若夹角达到60°,则认为遇到侧墙。否则,认为未遇到侧墙。During the horizontal retreat of the underwater robot, the underwater robot is horizontally retracted, and the fuselage is tilted to gradually increase the angle of the fuselage relative to the XY plane. Correspondingly, determining whether the underwater robot encounters the side wall based on the state information in the embodiment includes: determining whether an angle between the body and the XY plane reaches 60°, and if the angle reaches 60°, it is considered to be met. Side wall. Otherwise, it is considered that the side wall has not been encountered.
当水下机器人与XY平面之间的夹角达到一定值时,则认为水下机器人遇到侧墙并控制水下机器人后退爬墙。具体的,将水下机器人与XY平面的角度与预设爬墙角度进行对比,当大于预设爬墙角度时,则认为水下机器人遇到侧墙并控制水下机器人后退爬墙,优选的预设爬墙角度为60°,即当与XY平面的角度大于60°时控制水下机器人后退爬墙。当水下机器人后退爬墙运行第二预设时间后,前进下墙。其中第二预设时间为根据泳池高度以及水下机器人运动的速度,预先设置的第二预设时间。也就是当水下机器人在竖直方向以固定的速度运行第二预设时间后,所行进的距离略大于泳池的高度。When the angle between the underwater robot and the XY plane reaches a certain value, it is considered that the underwater robot encounters the side wall and controls the underwater robot to retreat the wall. Specifically, the angle between the underwater robot and the XY plane is compared with the preset climbing wall angle. When the angle is greater than the preset climbing wall angle, the underwater robot is considered to encounter the side wall and control the underwater robot to retreat the climbing wall. The preset climbing wall angle is 60°, that is, the underwater robot is controlled to retreat the wall when the angle to the XY plane is greater than 60°. When the underwater robot moves back to the wall for a second preset time, proceed to the lower wall. The second preset time is a preset second preset time according to the height of the swimming pool and the speed of the underwater robot movement. That is, when the underwater robot is operated at a fixed speed for a second predetermined time in the vertical direction, the distance traveled is slightly larger than the height of the swimming pool.
步骤S500:基于所述状态信息判断所述水下机器人是否完成前进下墙(即离开侧墙),若是,则控制所述水下机器人先前进,进行第三次转向,所述第三次转向后,再次前进,进行与第三次转向方向相反角度相同的第四次转向。Step S500: determining, based on the state information, whether the underwater robot completes the advancement of the lower wall (ie, leaving the side wall), and if so, controlling the underwater robot to advance, performing the third steering, the third steering After that, proceed again, and perform the fourth steering at the same angle as the third steering direction.
在前进下墙过程中,水下机器人逐渐离开侧墙与泳池底面接触,在该过程中水下机器人的机身相对于XY平面的夹角逐渐减小,并在进入水平状态后水平前进。具体的,基于所述状态信息判断所述水下机器人是否完成前进下墙为:判断当前是否处于水平状态,将水下机器人与XY平面的角度与预设下墙角度进行对比,当小于预设下墙角度时,则为水平状态,优选的预设下墙角度为30°,即当与XY平面的角度小于30°时判断人水下机器人完成下墙。当完全下墙时,则前进,当水平前进第三预设时间时,进行第三次转向,第三次转向之后再前进第三预设时间,之后进行第四次转向。当判断不处于水平状态时,则继续前进下墙。其中,第三次转向与第四次转向的转动方向相反,也就是通过两次转向将水下机器人在机器宽度方向调整预定距离,并且所述第三次转向与第四次转向所转动的角度相同,即两次转向后水下机器人仍沿两次转向前的方向前进,优选的第三次转向与第四次转向的转动角度为45°。其中第三预设时间为根据水下机器人的运动速度以及机身的长度预先设置的,第三预设时间能够保证在两次转向之后水下机器人能够在机器宽度的方向调整预定距离。During the process of moving down the wall, the underwater robot gradually leaves the side wall and contacts the bottom surface of the pool. During this process, the angle of the body of the underwater robot relative to the XY plane gradually decreases, and advances horizontally after entering the horizontal state. Specifically, determining, according to the state information, whether the underwater robot completes the advancement of the lower wall: determining whether the current state is in a horizontal state, comparing the angle of the underwater robot with the XY plane with the preset lower wall angle, when less than the preset When the angle of the lower wall is horizontal, the preferred preset lower wall angle is 30°, that is, when the angle with the XY plane is less than 30°, the human underwater robot is judged to complete the lower wall. When the wall is completely down, it proceeds. When the horizontal advances for the third predetermined time, the third steering is performed, and after the third steering, the third predetermined time is advanced, and then the fourth steering is performed. When it is judged that it is not in the horizontal state, it proceeds to the lower wall. Wherein, the third turning direction is opposite to the turning direction of the fourth turning, that is, the underwater robot is adjusted by a predetermined distance in the machine width direction by two steerings, and the angle of the third turning and the fourth turning is rotated. The same, that is, after two steerings, the underwater robot still advances in the direction before the two turns, and the preferred third and fourth steering angles are 45°. The third preset time is preset according to the moving speed of the underwater robot and the length of the fuselage, and the third preset time can ensure that the underwater robot can adjust the predetermined distance in the direction of the machine width after the two steerings.
步骤S600:重复以上步骤,并将往返次数加1。Step S600: Repeat the above steps and increase the number of round trips by one.
具体的,当调整完机身预定距离之后再次执行步骤S100,从而保证水下机器人能够对泳池进行无死角的清洗。当再次执行步骤S100时,将往返次数加1,用于统计在当前方向水下机器人的往返清洗次数,当往返次数增加到n时,重置往返次数为1。其中n为预先设置的统计往返次数的最大值。Specifically, step S100 is performed again after the predetermined distance of the fuselage is adjusted, thereby ensuring that the underwater robot can perform no-angle cleaning on the swimming pool. When step S100 is executed again, the number of round trips is incremented by one for counting the number of round trips of the underwater robot in the current direction, and when the number of round trips is increased to n, the number of reset round trips is one. Where n is the maximum number of statistical round trips set in advance.
请参阅图9,图9为本发明第二实施例提供的一种水下机器人运动路径规划方法的流程图。本发明第二实施例为对第一实施例中步骤S200的具体优化,与第一实施例相同的步骤,在本实施例中不再赘述。Please refer to FIG. 9. FIG. 9 is a flowchart of a method for planning a motion path of an underwater robot according to a second embodiment of the present invention. The second embodiment of the present invention is a specific optimization of the step S200 in the first embodiment, and is the same as the first embodiment, and will not be further described in this embodiment.
如图9所示,本发明第二实施例可以包括以下步骤S210至步骤S250。As shown in FIG. 9, the second embodiment of the present invention may include the following steps S210 to S250.
步骤S210:基于所述状态信息判断所述水下机器人是否为水平状态,若为水平状态,获取当前的往返次数;若往返次数小于n次时,则控制所述水下机器人前进。Step S210: determining whether the underwater robot is in a horizontal state based on the state information, and acquiring a current round trip number if the horizontal state is a horizontal state; and controlling the underwater robot to advance if the round trip number is less than n times.
具体的,基于所述状态信息判断所述水下机器人是否为水平状态:实时获取当前的状态信息,基于当前状态信息中水下机器人与XY平面的夹角判断当前水下机器人是否处于水平状态,如果当前水下机器人与XY平面的夹角小于预设水平角度,水下机器人为水平状态,控制水下机器人前进,优选的预设水平角度为30°。若往返次数不小于n次时,获取标志位信息,基于所述标志位控制所述水下机器人第五次转向,所述第五次转向后,前进且标志位加1。若不为水平状态,则控制所述水下机器人后退/前进下墙且往返次数减1,执行步骤S300。具体的,所述标志位的取值范围为1≤m≤4;当所述标志位等于1时,后退时右转向,前进时不转向,且所述标志位加1;当所述标志位等于2时,后退时左转向,前进时不转向,且所述标志位加1;当所述标志位等于3时,后退时不转向,前进时右转向,且所述标志位加1;当所述标志位等于4时,后退时不转向,前进时左转向,且所述标志位加1;当所述标志位大于4时,将标志位重置为1。第五次转向优选的转动角度为90°。标志位的取值范围以及取不同时进行的操作规则可调整。Specifically, determining, according to the state information, whether the underwater robot is in a horizontal state: acquiring current state information in real time, and determining whether the current underwater robot is in a horizontal state based on an angle between the underwater robot and the XY plane in the current state information, If the angle between the current underwater robot and the XY plane is less than the preset horizontal angle, the underwater robot is in a horizontal state, and the underwater robot is controlled to advance, and the preferred preset horizontal angle is 30°. If the number of round trips is not less than n times, the flag information is acquired, and the underwater vehicle is controlled to be turned for the fifth time based on the flag position, and after the fifth steering, the flag is incremented by one. If it is not in the horizontal state, the underwater robot is controlled to move backward/forward to the lower wall and the number of round trips is decreased by 1, and step S300 is performed. Specifically, the value of the flag bit ranges from 1 ≤ m ≤ 4; when the flag bit is equal to 1, the right turn is reversed, the forward direction is not turned, and the flag bit is incremented by 1; when the flag bit is When it is equal to 2, it will turn left when going backwards, not turn when going forward, and the flag will increase by 1; when the flag is equal to 3, it will not turn when going backward, turn right when going forward, and the flag will increase by 1; When the flag bit is equal to 4, it does not turn when retreating, the left direction is turned forward when forward, and the flag bit is incremented by 1; when the flag bit is greater than 4, the flag bit is reset to 1. The fifth steering preferably has a preferred angle of rotation of 90°. The range of values of the flag bits and the operating rules that are taken at different times can be adjusted.
步骤S220:获取当前前进时间,将所述前进时间与第一预设时间进行比较。Step S220: Acquire a current advance time, and compare the advance time with a first preset time.
具体的,当前的前进时间为:水下机器人检测到为水平状态开始前行的时间点到当前时间点的时长。将当前前进时间与预先设置的第一预设时间进行对比。其中第一预设时间为根据泳池的长度和宽度以及水下机器人运动速度预先设置的第一预设时间,基于所述第一预设时间能够为水下机器人选择最优的清洗路径。Specifically, the current advance time is: the time when the underwater robot detects the time point from the start of the horizontal state to the current time point. The current forward time is compared with a preset first preset time. The first preset time is a first preset time preset according to the length and width of the swimming pool and the moving speed of the underwater robot, and the optimal cleaning path can be selected for the underwater robot based on the first preset time.
步骤S230:若前进时间小于第一预设时间,则基于所述状态信息判断所述水下机器人是否遇到侧墙,若遇到,则控制所述水下机器人前进爬墙。Step S230: If the forward time is less than the first preset time, determine whether the underwater robot encounters the side wall based on the state information, and if so, control the underwater robot to climb the wall.
具体的,将所述当前前进时间与第一预设时间进行对比,并且基于所述状态信息判断所述水下机器人是否遇到侧墙。其中遇到侧墙为:在水下机器人前进/后退过程中,水下机器人水平前进/后退,机身会倾斜,机身相对于XY平面的夹角逐渐增大。相应的,本实施例中基于所述状态信息判断所述水下机器人是否遇到侧墙包括:判断机身与XY平面的夹角是否达到60°,若夹角达到60°,则认为遇到侧墙。否则,认为未遇到侧墙。当前进时间小于第一预设时间,且未遇到侧墙,则继续前进;当前进时间小于第一预设时间,且遇到侧墙,则前进爬墙;当前进时间不小于第一预设时间,则执行步骤S300。Specifically, the current advance time is compared with a first preset time, and based on the status information, it is determined whether the underwater robot encounters a sidewall. The side wall is encountered: during the forward/reverse movement of the underwater robot, the underwater robot advances/retracts horizontally, the body is tilted, and the angle of the fuselage relative to the XY plane gradually increases. Correspondingly, determining whether the underwater robot encounters the side wall based on the state information in the embodiment includes: determining whether an angle between the body and the XY plane reaches 60°, and if the angle reaches 60°, it is considered to be met. Side wall. Otherwise, it is considered that the side wall has not been encountered. If the current advance time is less than the first preset time, and the side wall is not encountered, the advancement is continued; if the current advance time is less than the first preset time, and the side wall is encountered, the wall is climbed forward; the current advance time is not less than the first preset If the time is set, step S300 is performed.
步骤S240:获取当前前进爬墙时间,将所述前进爬墙时间与第二预设时间进行比较。Step S240: Acquire a current forward climbing time, and compare the forward climbing time with a second preset time.
具体的,当前的前进爬墙时间为:遇到侧墙开始前进爬墙的时间点到当前时间点的时长。将当前前进爬墙时间与预先设置的第二预设时间进行对比。其中第二预设时间为根据泳池高度以及水下机器人运动的速度,预先设置的第二预设时间。也就是当水下机器人在竖直方向以固定的速度运行第二预设时间后,所行进的距离不超过泳池的高度。Specifically, the current forward climbing time is: the length of time from the time when the side wall starts to climb the wall to the current time point. The current forward climbing time is compared with a preset second preset time. The second preset time is a preset second preset time according to the height of the swimming pool and the speed of the underwater robot movement. That is, when the underwater robot is operated at a fixed speed for a second predetermined time in the vertical direction, the distance traveled does not exceed the height of the pool.
步骤S250:若所述前进爬墙时间不小于所述第二预设时间时,则控制所述水下机器人后退下墙。Step S250: If the forward climbing wall time is not less than the second preset time, then the underwater robot is controlled to retreat to the lower wall.
具体的,将所述当前前进爬墙时间与第二预设时间进行对比,当所述前进爬墙时间不小于所述第二预设时间时,则后退下墙;当所述前进爬墙时间小于所述第二预设时间时,则继续前进爬墙。Specifically, comparing the current forward climbing wall time with a second preset time, when the forward climbing wall time is not less than the second preset time, then retreating to the lower wall; when the forward climbing wall time When it is less than the second preset time, it continues to climb the wall.
请参阅图10,图10为本发明第三实施例提供的一种水下机器人运动路径规划方法的流程图。本发明第三实施例为对第一实施例以及第二实施例中步骤S400的具体优化,与第一实施例以及第二实施例相同的步骤,在本实施例中不再赘述。Please refer to FIG. 10. FIG. 10 is a flowchart of a method for planning a motion path of an underwater robot according to a third embodiment of the present invention. The third embodiment of the present invention is a specific optimization of the first embodiment and the step S400 in the second embodiment, and the same steps as those of the first embodiment and the second embodiment are omitted in the embodiment.
如图10所示,本发明第三实施例可以包括以下步骤S410至步骤S450。As shown in FIG. 10, the third embodiment of the present invention may include the following steps S410 to S450.
步骤S410:基于所述状态信息判断所述水下机器人是否为水平状态,若为水平状态,获取当前的往返次数;若往返次数小于n次时,则控制所述水下机器人后退。Step S410: Determine whether the underwater robot is in a horizontal state based on the state information, and obtain a current round trip number if it is in a horizontal state; and control the underwater robot to retreat if the round trip number is less than n times.
具体的,基于所述状态信息判断所述水下机器人是否为水平状态:实时获取当前的状态信息,基于当前状态信息中水下机器人与XY平面的夹角判断当前水下机器人是否处于水平状态,如果当前水下机器人与XY平面的夹角小于预设水平角度,水下机器人为水平状态,控制水下机器人后退,优选的预设水平角度为30°。若往返次数不小于n次时,获取标志位信息,基于所述标志位控制所述水下机器人第五次转向,所述第五次转向后,前进且标志位加1。若不为水平状态,则控制所述水下机器人后退/前进下墙且往返次数减1,执行步骤S500。具体的,所述标志位的取值范围为1≤m≤4;当所述标志位等于1时,后退时右转向,前进时不转向,且所述标志位加1;当所述标志位等于2时,后退时左转向,前进时不转向,且所述标志位加1;当所述标志位等于3时,后退时不转向,前进时右转向,且所述标志位加1;当所述标志位等于4时,后退时不转向,前进时左转向,且所述标志位加1;当所述标志位大于4时,将标志位重置为1。第五次转向优选的转动角度为90°。Specifically, determining, according to the state information, whether the underwater robot is in a horizontal state: acquiring current state information in real time, and determining whether the current underwater robot is in a horizontal state based on an angle between the underwater robot and the XY plane in the current state information, If the angle between the current underwater robot and the XY plane is less than the preset horizontal angle, the underwater robot is in a horizontal state, and the underwater robot is controlled to retreat, and the preferred preset horizontal angle is 30°. If the number of round trips is not less than n times, the flag information is acquired, and the underwater vehicle is controlled to be turned for the fifth time based on the flag position, and after the fifth steering, the flag is incremented by one. If it is not in the horizontal state, the underwater robot is controlled to retreat/forward the lower wall and the number of round trips is decreased by 1, and step S500 is performed. Specifically, the value of the flag bit ranges from 1 ≤ m ≤ 4; when the flag bit is equal to 1, the right turn is reversed, the forward direction is not turned, and the flag bit is incremented by 1; when the flag bit is When it is equal to 2, it will turn left when going backwards, not turn when going forward, and the flag will increase by 1; when the flag is equal to 3, it will not turn when going backward, turn right when going forward, and the flag will increase by 1; When the flag bit is equal to 4, it does not turn when retreating, the left direction is turned forward when forward, and the flag bit is incremented by 1; when the flag bit is greater than 4, the flag bit is reset to 1. The fifth steering preferably has a preferred angle of rotation of 90°.
步骤S420:获取当前后退时间,将所述后退时间与第一预设时间进行比较。Step S420: Acquire a current back time, and compare the back time with the first preset time.
具体的,当前的后退时间为:水下机器人检测到为水平状态开始后退的时间点到当前时间点的时长。将当前后退时间与预先设置的第一预设时间进行对比。其中第一预设时间为根据泳池的长度和宽度以及水下机器人运动速度预先设置的第一预设时间,基于所述第一预设时间能够为水下机器人选择最优的清洗路径。Specifically, the current back time is: the time when the underwater robot detects the time point from the start of the horizontal state to the current time point. The current back time is compared with a preset first preset time. The first preset time is a first preset time preset according to the length and width of the swimming pool and the moving speed of the underwater robot, and the optimal cleaning path can be selected for the underwater robot based on the first preset time.
步骤S430:若后退时间小于第一预设时间,则基于所述状态信息判断所述水下机器人是否遇到侧墙,若遇到,则控制所述水下机器人后退爬墙。Step S430: If the back time is less than the first preset time, determine whether the underwater robot encounters the side wall based on the state information, and if so, control the underwater robot to retreat the wall.
具体的,将所述当前后退时间与第一预设时间进行对比,并且基于所述状态信息判断所述水下机器人是否遇到侧墙。其中遇到侧墙为:在水下机器人前进/后退过程中,水下机器人水平前进/后退,机身会倾斜,机身相对于XY平面的夹角逐渐增大。相应的,本实施例中基于所述状态信息判断所述水下机器人是否遇到侧墙包括:判断机身与XY平面的夹角是否达到60°,若夹角达到60°,则认为遇到侧墙。否则,认为未遇到侧墙。当后退时间小于第一预设时间,且未遇到侧墙,则继续前进;当后退时间小于第一预设时间,且遇到侧墙,则前进爬墙;当前进时间不小于第一预设时间,则执行步骤S500。Specifically, comparing the current back time with the first preset time, and determining, according to the state information, whether the underwater robot encounters a side wall. The side wall is encountered: during the forward/reverse movement of the underwater robot, the underwater robot advances/retracts horizontally, the body is tilted, and the angle of the fuselage relative to the XY plane gradually increases. Correspondingly, determining whether the underwater robot encounters the side wall based on the state information in the embodiment includes: determining whether an angle between the body and the XY plane reaches 60°, and if the angle reaches 60°, it is considered to be met. Side wall. Otherwise, it is considered that the side wall has not been encountered. When the back time is less than the first preset time and the side wall is not encountered, proceeding; when the back time is less than the first preset time, and the side wall is encountered, the wall is climbed; the current advance time is not less than the first preset If the time is set, step S500 is performed.
步骤S440:获取当前后退爬墙时间,将所述后退爬墙时间与第二预设时间进行比较。Step S440: Acquire a current back climbing wall time, and compare the back climbing wall time with a second preset time.
具体的,当前的后退爬墙时间为:遇到侧墙开始后退爬墙的时间点到当前时间点的时长。将当前后退爬墙时间与预先设置的第二预设时间进行对比。其中第二预设时间为根据泳池高度以及水下机器人运动的速度,预先设置的第二预设时间。也就是当水下机器人在竖直方向以固定的速度运行第二预设时间后,所行进的距离不超过泳池的高度。Specifically, the current backwall climbing time is: the length of time from the time when the side wall starts to retreat to the climbing wall to the current time point. Compare the current backwall time with a preset second preset time. The second preset time is a preset second preset time according to the height of the swimming pool and the speed of the underwater robot movement. That is, when the underwater robot is operated at a fixed speed for a second predetermined time in the vertical direction, the distance traveled does not exceed the height of the pool.
步骤S450:若所述后退爬墙时间不小于所述第二预设时间时,则控制所述水下机器人前进下墙。Step S450: If the back climbing wall time is not less than the second preset time, then the underwater robot is controlled to advance to the lower wall.
具体的,将所述当前后退爬墙时间与第二预设时间进行对比,当所述后退爬墙时间不小于所述第二预设时间时,则前进下墙;当所述后退爬墙时间小于所述第二预设时间时,则继续前进爬墙。Specifically, comparing the current back climbing wall time with a second preset time, when the back climbing wall time is not less than the second preset time, proceeding to the lower wall; when the back climbing wall time When it is less than the second preset time, it continues to climb the wall.
请参阅图11,图11为本发明第四实施例提供的一种水下机器人运动路径规划方法的流程图。本发明第四实施例为对上述实施例中前进爬墙、后退下墙、后退爬墙、前进下墙具体优化。Please refer to FIG. 11. FIG. 11 is a flowchart of a method for planning a motion path of an underwater robot according to a fourth embodiment of the present invention. The fourth embodiment of the present invention optimizes the forward climbing wall, the back lower wall, the back climbing wall, and the forward lower wall in the above embodiment.
如图11所示,本发明第四实施例可以包括以下步骤S431至步骤S434。As shown in FIG. 11, the fourth embodiment of the present invention may include the following steps S431 to S434.
步骤S431:实时获取当前的状态信息。Step S431: Acquire current state information in real time.
具体的,获取当前机身与与XY平面、XZ平面、YZ平面之间的夹角信息。Specifically, the current body and the angle information between the body and the XY plane, the XZ plane, and the YZ plane are obtained.
步骤S432:基于所述状态信息,判断所述水下机器人当前状态是否为竖直爬墙/下墙。Step S432: Determine, according to the state information, whether the current state of the underwater robot is a vertical climbing wall/lower wall.
具体的,判断当前状态是否为竖直爬墙/下墙,也就是判断当机身与XY平面的夹角为90°时,机身与YZ平面是否存在夹角。Specifically, it is determined whether the current state is a vertical climbing wall/lower wall, that is, whether there is an angle between the body and the YZ plane when the angle between the body and the XY plane is 90°.
步骤S433:若为竖直爬墙/下墙,则控制所述水下机器人继续爬墙/下墙。Step S433: If the wall is climbing vertically/lower wall, the underwater robot is controlled to continue to climb the wall/lower wall.
具体的,如果当机身与XY平面的夹角为90°时,机身与YZ平面不存在夹角,则继续爬墙/下墙。Specifically, if there is no angle between the fuselage and the YZ plane when the angle between the fuselage and the XY plane is 90°, the wall/lower wall is continued.
步骤S434:若不为竖直爬墙/下墙,则判定所述水下机器人当前状态为绕墙状态。Step S434: If it is not vertical climbing/lower wall, it is determined that the current state of the underwater robot is a wall-wrapping state.
具体的,如果当机身与XY平面的夹角为90°时,机身与YZ平面存在夹角,且夹角的度数大于25°时,则判定当前状态为绕墙状态。Specifically, if the angle between the body and the YZ plane is 90° when the angle between the body and the XY plane is 90°, and the degree of the angle is greater than 25°, it is determined that the current state is the state of the wall.
请参阅图12,图12为本发明第五实施例提供的一种水下机器人运动路径规划方法的流程图。本发明第五实施例为对上述实施例中判定绕墙状态的具体优化。Referring to FIG. 12, FIG. 12 is a flowchart of a method for planning a motion path of an underwater robot according to a fifth embodiment of the present invention. The fifth embodiment of the present invention is a specific optimization for determining the state of the surrounding wall in the above embodiment.
如图12所示,本发明第五实施例可以包括以下步骤S641至步骤S645。As shown in FIG. 12, the fifth embodiment of the present invention may include the following steps S641 to S645.
步骤S641:实时获取当前的状态信息。Step S641: Acquire current state information in real time.
具体的,获取当前机身与XY平面、XZ平面、YZ平面之间的夹角信息。Specifically, the angle information between the current body and the XY plane, the XZ plane, and the YZ plane is obtained.
步骤S642:基于所述状态信息,控制所述水下机器人调整机身位置。Step S642: Control the underwater robot to adjust the position of the body based on the state information.
具体的,在绕墙状态时,机身与XY平面的夹角为90°,且机身与YZ平面存在夹角。其中调整机身位置为,通过电动机控制水下机器人左右两边轮子的转速,使其形成速度差。当机身在YZ平面的左侧,且与YZ平面形成夹角且夹角大于25°时,则控制水下机器人左侧轮子转速大于右侧轮子转速,从而将与YZ平面的夹角调整为零;当机身在YZ平面的右侧,且与YZ平面形成夹角且夹角大于25°时,则控制水下机器人右侧轮子转速大于左侧轮子转速,从而将与YZ平面的夹角调整为零。从而达到调整机身位置的目的。Specifically, in the state of the wall, the angle between the fuselage and the XY plane is 90°, and the fuselage has an angle with the YZ plane. The position of the fuselage is adjusted, and the rotation speed of the left and right wheels of the underwater robot is controlled by a motor to form a speed difference. When the fuselage is on the left side of the YZ plane and forms an angle with the YZ plane and the angle is greater than 25°, the left side wheel speed of the underwater robot is controlled to be greater than the right wheel speed, thereby adjusting the angle with the YZ plane to Zero; when the fuselage is on the right side of the YZ plane and forms an angle with the YZ plane and the angle is greater than 25°, then the right wheel speed of the underwater robot is controlled to be greater than the left wheel speed, so that the angle with the YZ plane Adjust to zero. Thereby achieving the purpose of adjusting the position of the fuselage.
步骤S643:基于所述状态信息,判断所述水下机器人是否成功调整为竖直爬墙/下墙。Step S643: Based on the state information, determine whether the underwater robot is successfully adjusted to a vertical climbing wall/lower wall.
具体的,当调整完成时,再次获取当前机身与与XY平面、XZ平面、YZ平面之间的夹角信息。判断是否成功调整为竖直爬墙/下墙,也就是判断当机身与XY平面的夹角为90°时,机身与YZ平面是否存在夹角。Specifically, when the adjustment is completed, the angle information between the current body and the XY plane, the XZ plane, and the YZ plane is acquired again. It is judged whether it is successfully adjusted to the vertical climbing wall/lower wall, that is, whether there is an angle between the fuselage and the YZ plane when the angle between the fuselage and the XY plane is 90°.
步骤S644:若成功调整为竖直爬墙/下墙,则控制所述水下机器人后退/前进下墙,执行步骤S500。Step S644: If the vertical climbing/lower wall is successfully adjusted, the underwater robot is controlled to move backward/forward to the lower wall, and step S500 is performed.
具体的,如果当前机身与XY平面的夹角为90°时,机身与YZ平面不存在夹角,即成功调整为竖直爬墙/下墙时,则后退/前进下墙,执行步骤S500。Specifically, if the angle between the current fuselage and the XY plane is 90°, there is no angle between the fuselage and the YZ plane, that is, when the vertical climbing wall/lower wall is successfully adjusted, then the back wall is moved backward/forward, and the steps are performed. S500.
步骤S645:若未成功调整为竖直爬墙/下墙,则控制所述水下机器人发出警报。Step S645: If the vertical climbing/lower wall is not successfully adjusted, the underwater robot is controlled to issue an alarm.
具体的,当前机身与XY平面的夹角为90°时,机身与YZ平面存在夹角,即未成功调整为竖直爬墙/下墙,则发出警报。其中发出警报可以为报警音乐和/或灯光闪烁等。具体的为蜂鸣器和LED报警指示灯。Specifically, when the angle between the current fuselage and the XY plane is 90°, the fuselage has an angle with the YZ plane, that is, if the vertical climbing wall/lower wall is not successfully adjusted, an alarm is issued. The alarm can be alarm music and/or flashing lights, etc. Specifically, the buzzer and LED alarm indicator.
在上述实施例中,还包括预先设置第一预设时间、第二预设时间、第三预设时间、最大往返次数n、以及标志位的初始值。In the above embodiment, the method further includes setting a first preset time, a second preset time, a third preset time, a maximum number of round trips n, and an initial value of the flag bit.
请参阅图13-14,图13为本发明实施例提供的一种水下机器人运动路径规划系统的模块关系示意图;图14为本发明实施例提供的爬墙控制模块的模块关系示意图。13-14, FIG. 13 is a schematic diagram of a module relationship of a motion path planning system for an underwater robot according to an embodiment of the present invention; FIG. 14 is a schematic diagram of a module relationship of a wall climbing control module according to an embodiment of the present invention.
如图13-14所示,一种水下机器人运动路径规划系统包括:状态获取模块100,用于实时获取所述水下机器人当前的状态信息;爬墙控制模块200,用于基于所述状态信息控制水下机器人前进/后退爬墙,并且在前进/后退爬墙之后后退/前进下墙;转向控制模块300,用于基于所述状态信息判断所述水下机器人是否完成后退下墙,若是,则控制所述水下机器人先后退,进行第一次转向,所述第一次转向后,再次后退,进行与第一次转向方向相反角度相同的第二次转向;基于所述状态信息判断所述水下机器人是否完成前进下墙,若是,则控制所述水下机器人先前进,进行第三次转向,所述第三次转向后,再次前进,进行与第三次转向方向相反角度相同的第四次转向。As shown in FIG. 13-14, an underwater robot motion path planning system includes: a state obtaining module 100, configured to acquire current state information of the underwater robot in real time; and a climbing wall control module 200, configured to be based on the state The information control underwater robot advances/reverses the climbing wall, and retreats/forward the lower wall after advancing/retracting the climbing wall; the steering control module 300 is configured to determine, according to the state information, whether the underwater robot completes the retreat to the lower wall, if And controlling the underwater robot to retreat, performing the first steering, and after the first steering, retreating again, performing the second steering with the same angle as the first steering direction; determining based on the state information Whether the underwater robot completes the advancement of the lower wall, and if so, controls the underwater robot to advance, performs the third steering, and after the third steering, advances again, and performs the same angle as the third steering direction The fourth turn.
具体的,状态获取模块100获取的所述状态信息为机身与XY平面、XZ平面、YZ平面之间的夹角。其中,XY平面、XZ平面、YZ平面为空间坐标系中X轴、Y轴以及Z轴两两所在的平面,XY平面为X轴与Y轴所形成的平面;XZ平面为X轴与Z轴所在的平面;YZ平面为Y轴与Z轴所形成的平面。并且XY平面与水平面平行。其中状态获取模块100为惯性传感器,可以为三轴加速度传感器、陀螺仪或者二者的结合。水下机器人在运动时,实时更新当前的状态信息。Specifically, the state information acquired by the state acquiring module 100 is an angle between the body and the XY plane, the XZ plane, and the YZ plane. The XY plane, the XZ plane, and the YZ plane are planes of the X-axis, the Y-axis, and the Z-axis in the space coordinate system, and the XY plane is a plane formed by the X-axis and the Y-axis; the XZ plane is the X-axis and the Z-axis. The plane in which it is located; the YZ plane is the plane formed by the Y-axis and the Z-axis. And the XY plane is parallel to the horizontal plane. The state acquisition module 100 is an inertial sensor, and may be a three-axis acceleration sensor, a gyroscope, or a combination of the two. The underwater robot updates the current status information in real time while exercising.
爬墙控制模块200用于在水下机器人水平前进过程中,水下机器人水平前进/后退,机身会倾斜,机身相对于XY平面的夹角逐渐增大。相应的,本实施例中基于所述状态信息判断所述水下机器人是否遇到侧墙包括:判断机身与XY平面的夹角是否达到60°,若夹角达到60°,则认为遇到侧墙。否则,认为未遇到侧墙。当水下机器人与XY平面之间的夹角达到一定值时,则控制水下机器人前进/后退爬墙。具体的,若遇到侧墙,则控制所述水下机器人前进/后退爬墙包括:将水下机器人与XY平面的角度与预设爬墙角度进行对比,当大于预设爬墙角度时,则控制水下机器人前进爬墙,优选的预设爬墙角度为60°,即当与XY平面的角度大于60°时控制水下机器人前进/后退爬墙。当水下机器人前进/后退爬墙运行第二预设时间后,后退/前进下墙。其中第二预设时间为根据泳池高度以及水下机器人运动的速度,预先设置的第二预设时间。也就是当水下机器人在竖直方向以固定的速度运行第二预设时间后,所行进的距离略大于泳池的高度。The climbing wall control module 200 is used for the underwater robot to advance/retract horizontally during the horizontal advancement of the underwater robot, the body is inclined, and the angle of the body with respect to the XY plane is gradually increased. Correspondingly, determining whether the underwater robot encounters the side wall based on the state information in the embodiment includes: determining whether an angle between the body and the XY plane reaches 60°, and if the angle reaches 60°, it is considered to be met. Side wall. Otherwise, it is considered that the side wall has not been encountered. When the angle between the underwater robot and the XY plane reaches a certain value, the underwater robot is controlled to advance/retract the wall. Specifically, if the side wall is encountered, controlling the underwater robot to advance/retract the climbing wall comprises: comparing the angle of the underwater robot with the XY plane with the preset climbing wall angle, when greater than the preset climbing wall angle, Then, the underwater robot is controlled to advance the wall, and the preferred preset wall angle is 60°, that is, the underwater robot is controlled to advance/retract the wall when the angle with the XY plane is greater than 60°. When the underwater robot moves forward/backward to climb the wall for a second preset time, it retreats/goes down the wall. The second preset time is a preset second preset time according to the height of the swimming pool and the speed of the underwater robot movement. That is, when the underwater robot is operated at a fixed speed for a second predetermined time in the vertical direction, the distance traveled is slightly larger than the height of the swimming pool.
转向控制模块300用于基于所述状态信息判断所述水下机器人是否完成后退下墙为:判断当前是否处于水平状态,将水下机器人与XY平面的角度与预设下墙角度进行对比,当小于预设下墙角度时,则为水平状态,优选的预设下墙角度为30°,即当与XY平面的角度小于30°时判断水下机器人完成下墙。也就说明水下机器人已经完全下墙。当完全下墙时,则后退,当后退第三预设时间时,进行第一次转向,第一次转向之后再后退第三预设时间,之后进行第二次转向。当判断不处于水平状态时,则继续后退下墙。其中,第一次转向与第二次转向的转动方向相反,也就是通过两次转向将水下机器人在机器宽度方向调整预定距离,并且所述第一次转向与第二次转向所转动的角度相同,即两次转向后水下机器人仍沿两次转向前的方向后退,优选第一次转向与第二次转向的转动角度为45°。其中第三预设时间为根据水下机器人的运动速度以及机身的长度预先设置的,第三预设时间能够保证在两次转向之后水下机器人能够在机器宽度的方向调整预定距离。还用于基于所述状态信息判断所述水下机器人是否完成前进下墙为:判断当前是否处于水平状态,将水下机器人与XY平面的角度与预设下墙角度进行对比,当小于预设下墙角度时,则为水平状态,优选的预设下墙角度为30°,即当与XY平面的角度小于30°时判断人水下机器人完成下墙。当完全下墙时,则前进,当前进第三预设时间时,进行第三次转向,第三次转向之后再前进第三预设时间,之后进行第四次转向。当判断不处于水平状态时,则继续前进下墙。其中,第三次转向与第四次转向的转动方向相反,也就是通过两次转向将水下机器人在机器宽度方向调整预定距离,并且所述第三次转向与第四次转向所转动的角度相同,即两次转向后水下机器人仍沿两次转向前的方向前进,优选的第三次转向与第四次转向的转动角度为45°。其中第三预设时间为根据水下机器人的运动速度以及机身的长度预先设置的,第三预设时间能够保证在两次转向之后水下机器人能够在机器宽度的方向调整预定距离。The steering control module 300 is configured to determine, according to the state information, whether the underwater robot completes the retreat to the lower wall to determine whether the current state is in a horizontal state, and compare the angle of the underwater robot with the XY plane with the preset lower wall angle. When it is less than the preset lower wall angle, it is horizontal, and the preferred preset lower wall angle is 30°, that is, when the angle with the XY plane is less than 30°, the underwater robot is judged to complete the lower wall. This means that the underwater robot has been completely under the wall. When the wall is completely down, it is retracted. When the third preset time is reversed, the first steering is performed, and after the first steering, the third preset time is retreated, and then the second steering is performed. When it is judged that it is not in the horizontal state, it continues to retreat to the wall. Wherein, the first steering is opposite to the rotation direction of the second steering, that is, the underwater robot is adjusted by a predetermined distance in the machine width direction by two steerings, and the angle of the first steering and the second steering is rotated. The same, that is, after two steerings, the underwater robot still retreats in the direction before the two turns, and it is preferable that the first steering and the second steering have a rotation angle of 45°. The third preset time is preset according to the moving speed of the underwater robot and the length of the fuselage, and the third preset time can ensure that the underwater robot can adjust the predetermined distance in the direction of the machine width after the two steerings. And determining, according to the state information, whether the underwater robot completes the advancement of the lower wall: determining whether the current state is in a horizontal state, comparing the angle of the underwater robot with the XY plane with the preset lower wall angle, when less than the preset When the angle of the lower wall is horizontal, the preferred preset lower wall angle is 30°, that is, when the angle with the XY plane is less than 30°, the human underwater robot is judged to complete the lower wall. When the wall is completely down, it advances. When the third preset time is currently entered, the third turn is performed, and after the third turn, the third preset time is advanced, and then the fourth turn is performed. When it is judged that it is not in the horizontal state, it proceeds to the lower wall. Wherein, the third turning direction is opposite to the turning direction of the fourth turning, that is, the underwater robot is adjusted by a predetermined distance in the machine width direction by two steerings, and the angle of the third turning and the fourth turning is rotated. The same, that is, after two steerings, the underwater robot still advances in the direction before the two turns, and the preferred third and fourth steering angles are 45°. The third preset time is preset according to the moving speed of the underwater robot and the length of the fuselage, and the third preset time can ensure that the underwater robot can adjust the predetermined distance in the direction of the machine width after the two steerings.
优选的,爬墙控制模块200包括:判断模块2100,用于基于所述状态信息判断所述水下机器人是否遇到侧墙,若没有遇到,则控制所述水下机器人前进/后退;判断所述前进/后退时间是否不小于所述第一预设时间,若前进/后退时间小于第一预设时间,则基于所述状态信息判断所述水下机器人是否遇到侧墙,若遇到,则控制所述水下机器人前进/后退爬墙;判断所述前进/后退爬墙时间是否不小于所述第二预设时间;下墙控制模块2200,用于若所述前进/后退爬墙时间不小于所述第二预设时间时,则控制所述水下机器人后退/前进下墙。Preferably, the climbing wall control module 200 includes: a determining module 2100, configured to determine, according to the state information, whether the underwater robot encounters a side wall, and if not, controls the underwater robot to advance/retract; Whether the forward/reverse time is not less than the first preset time, and if the forward/reverse time is less than the first preset time, determining, according to the state information, whether the underwater robot encounters a side wall, if encountered And controlling the underwater robot to advance/retract the climbing wall; determining whether the forward/backward climbing wall time is not less than the second preset time; and the lower wall control module 2200, if the moving forward/reverse climbing wall When the time is not less than the second preset time, the underwater robot is controlled to move back/forward the lower wall.
判断模块2100用于基于所述状态信息判断所述水下机器人是否为水平状态:实时获取当前的状态信息,基于当前状态信息中水下机器人与XY平面的夹角判断当前水下机器人是否处于水平状态,如果当前水下机器人与XY平面的夹角小于预设水平角度,水下机器人为水平状态,控制水下机器人前进,优选的预设水平角度为30°。The determining module 2100 is configured to determine, according to the state information, whether the underwater robot is in a horizontal state: acquiring current state information in real time, and determining whether the current underwater robot is at a level based on an angle between the underwater robot and the XY plane in the current state information State, if the angle between the current underwater robot and the XY plane is less than the preset horizontal angle, the underwater robot is in a horizontal state, and the underwater robot is controlled to advance, and the preferred preset horizontal angle is 30°.
判断模块2100还用于将当前前进时间与预先设置的第一预设时间进行对比。其中第一预设时间为根据泳池的长度和宽度以及水下机器人运动速度预先设置的第一预设时间,基于所述第一预设时间能够为水下机器人选择最优的清洗路径。将所述当前前进时间与第一预设时间进行对比,并且基于所述状态信息判断所述水下机器人是否遇到侧墙。其中遇到侧墙为:在水下机器人前进/后退过程中,水下机器人水平前进/后退,机身会倾斜,机身相对于XY平面的夹角逐渐增大。相应的,本实施例中基于所述状态信息判断所述水下机器人是否遇到侧墙包括:判断机身与XY平面的夹角是否达到60°,若夹角达到60°,则认为遇到侧墙。否则,认为未遇到侧墙。当前进时间小于第一预设时间,且未遇到侧墙,则继续前进;当前进时间小于第一预设时间,且遇到侧墙,则前进爬墙;当前进时间不小于第一预设时间,则执行步骤S300。将当前前进爬墙时间与预先设置的第二预设时间进行对比。其中第二预设时间为根据泳池高度以及水下机器人运动的速度,预先设置的第二预设时间。也就是当水下机器人在竖直方向以固定的速度运行第二预设时间后,所行进的距离不超过泳池的高度。The determining module 2100 is further configured to compare the current forward time with a preset first preset time. The first preset time is a first preset time preset according to the length and width of the swimming pool and the moving speed of the underwater robot, and the optimal cleaning path can be selected for the underwater robot based on the first preset time. The current advance time is compared with a first preset time, and based on the status information, it is determined whether the underwater robot encounters a side wall. The side wall is encountered: during the forward/reverse movement of the underwater robot, the underwater robot advances/retracts horizontally, the body is tilted, and the angle of the fuselage relative to the XY plane gradually increases. Correspondingly, determining whether the underwater robot encounters the side wall based on the state information in the embodiment includes: determining whether an angle between the body and the XY plane reaches 60°, and if the angle reaches 60°, it is considered to be met. Side wall. Otherwise, it is considered that the side wall has not been encountered. If the current advance time is less than the first preset time, and the side wall is not encountered, the advancement is continued; if the current advance time is less than the first preset time, and the side wall is encountered, the wall is climbed forward; the current advance time is not less than the first preset If the time is set, step S300 is performed. The current forward climbing time is compared with a preset second preset time. The second preset time is a preset second preset time according to the height of the swimming pool and the speed of the underwater robot movement. That is, when the underwater robot is operated at a fixed speed for a second predetermined time in the vertical direction, the distance traveled does not exceed the height of the pool.
下墙控制模块2200用于当所述前进/后退爬墙时间不小于所述第二预设时间时,则控制所述水下机器人后退/前进下墙。The lower wall control module 2200 is configured to control the underwater robot to retreat/forward the lower wall when the forward/reverse climbing wall time is not less than the second preset time.
需要说明的是,本发明的运动路径规划方法中,若满足以下三个条件中的任意一个则认为水下机器人是否处于水平状态:It should be noted that, in the motion path planning method of the present invention, whether the underwater robot is in a horizontal state is considered if any one of the following three conditions is satisfied:
(a)机身与XY平面的夹角小于水平夹角(实施例中为30°);(a) the angle between the fuselage and the XY plane is less than the horizontal angle (30° in the embodiment);
(b)在由侧墙下到泳池底面时,机身与XY平面的夹角小于下墙角度;(b) When the wall is lowered from the side wall to the bottom of the pool, the angle between the fuselage and the XY plane is smaller than the angle of the lower wall;
(c)在由泳池底面上到侧墙到,机身与XY平面的夹角小于上墙角度。(c) From the bottom of the pool to the side wall, the angle between the fuselage and the XY plane is smaller than the angle of the upper wall.
水平夹角、下墙角度和上墙角度的取值之间相互独立,互不相干,实施应用时,在该判断原则的基础上可以根据应用需求调整具体实现方案。The values of the horizontal angle, the lower wall angle and the upper wall angle are independent of each other and are irrelevant. When the application is implemented, the specific implementation scheme can be adjusted according to the application requirements based on the judgment principle.
本发明的水下机器人对其运动路径上的泳池壁进行清洁,通过获取当前的状态信息,也即获取机身与XY平面、XZ平面、YZ平面之间的夹角,进而控制机器的运动路径。首先判断当前是否处于水平状态,若处于水平状态则前进爬墙清洗,到达第二预设时间后,竖直下墙,下墙后通过两次旋转,在机器宽度方向调整预定距离,调整后再后退爬墙,到达第二预设时间后,前进下墙,下墙后再次通过两次旋转,在机器宽度方向调整预定距离,完成一次往返清洗。通过多次的往返清洗达到对泳池的无死角清洗,由于其运动轨迹为有规律的,因此也避免了水下机器人的电缆线缠绕的问题。The underwater robot of the invention cleans the swimming pool wall on the moving path, and obtains the current state information, that is, obtains the angle between the fuselage and the XY plane, the XZ plane and the YZ plane, thereby controlling the movement path of the machine. . Firstly, it is judged whether the current state is in the horizontal state. If it is in the horizontal state, the wall is cleaned by the wall. After reaching the second preset time, the wall is vertically lowered, and after the lower wall is rotated twice, the predetermined distance is adjusted in the machine width direction, and then adjusted. After retreating the wall, after reaching the second preset time, proceed to the lower wall, and then rotate twice through the lower wall to adjust the predetermined distance in the machine width direction to complete a round-trip cleaning. Through the repeated round-trip cleaning, the dead-end cleaning of the swimming pool is achieved, and since the trajectory of the movement is regular, the problem of the cable entanglement of the underwater robot is also avoided.
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。The technical features of the above-described embodiments may be arbitrarily combined. For the sake of brevity of description, all possible combinations of the technical features in the above embodiments are not described. However, as long as there is no contradiction between the combinations of these technical features, All should be considered as the scope of this manual.
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。The above-described embodiments are merely illustrative of several embodiments of the present invention, and the description thereof is more specific and detailed, but is not to be construed as limiting the scope of the invention. It should be noted that a number of variations and modifications may be made by those skilled in the art without departing from the spirit and scope of the invention. Therefore, the scope of the invention should be determined by the appended claims.
在此处键入本发明的实施方式描述段落。The description paragraphs of the embodiments of the present invention are entered here.
在此处键入工业实用性描述段落。Type the industrial usability description paragraph here.
在此处键入序列表自由内容描述段落。Type the sequence table free content description paragraph here.
Claims (30)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201880083268.2A CN111757832B (en) | 2017-12-27 | 2018-11-15 | Underwater cleaning robot and its crawling method, motion path planning method and system |
Applications Claiming Priority (6)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201711443969.6 | 2017-12-27 | ||
| CN201721872043.4 | 2017-12-27 | ||
| CN201711443969.6A CN108189031B (en) | 2017-12-27 | 2017-12-27 | Underwater robot motion path planning method and system |
| CN201721872043.4U CN208181381U (en) | 2017-12-27 | 2017-12-27 | Underwater cleaning robot |
| CN201810934363 | 2018-08-16 | ||
| CN201810934363.0 | 2018-08-16 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2019128521A1 true WO2019128521A1 (en) | 2019-07-04 |
Family
ID=67063009
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2018/115760 Ceased WO2019128521A1 (en) | 2017-12-27 | 2018-11-15 | Underwater cleaning robot and crawling method thereof, motion path planning method and system |
Country Status (1)
| Country | Link |
|---|---|
| WO (1) | WO2019128521A1 (en) |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN113246127A (en) * | 2021-05-20 | 2021-08-13 | 桂林电子科技大学 | Underwater pipeline inspection cleaning robot |
| CN114019986A (en) * | 2022-01-04 | 2022-02-08 | 北京史河科技有限公司 | A path planning method for a wall-climbing robot |
| CN115685994A (en) * | 2022-10-08 | 2023-02-03 | 佛山市顺德区一拓电气有限公司 | An underwater cleaning robot and its control method and control device |
| US20240240482A1 (en) * | 2023-01-17 | 2024-07-18 | Shenzhen Aiper Intelligent Co., Ltd. | Water Surface Profile Cleaning Method and System of Robot Swimming Pool Cleaner, and Readable Storage Medium |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH08332994A (en) * | 1995-06-08 | 1996-12-17 | Mitsubishi Heavy Ind Ltd | Underwater robot pressing reaction generating device |
| JP2011088485A (en) * | 2009-10-20 | 2011-05-06 | Kyushu Institute Of Technology | Underwater cleaning device |
| CN202607669U (en) * | 2012-05-25 | 2012-12-19 | 杭州高越科技有限公司 | Intelligent cleaning robot |
| CN205009256U (en) * | 2015-08-24 | 2016-02-03 | 杭州高越科技有限公司 | Swimming pool cleaning robot |
| CN106347607A (en) * | 2016-10-08 | 2017-01-25 | 海牧人(北京)科技有限公司 | Underwater wall-climbing robot |
| CN108189031A (en) * | 2017-12-27 | 2018-06-22 | 杭州高越科技有限公司 | Underwater robot trajectory path planning method and system |
-
2018
- 2018-11-15 WO PCT/CN2018/115760 patent/WO2019128521A1/en not_active Ceased
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH08332994A (en) * | 1995-06-08 | 1996-12-17 | Mitsubishi Heavy Ind Ltd | Underwater robot pressing reaction generating device |
| JP2011088485A (en) * | 2009-10-20 | 2011-05-06 | Kyushu Institute Of Technology | Underwater cleaning device |
| CN202607669U (en) * | 2012-05-25 | 2012-12-19 | 杭州高越科技有限公司 | Intelligent cleaning robot |
| CN205009256U (en) * | 2015-08-24 | 2016-02-03 | 杭州高越科技有限公司 | Swimming pool cleaning robot |
| CN106347607A (en) * | 2016-10-08 | 2017-01-25 | 海牧人(北京)科技有限公司 | Underwater wall-climbing robot |
| CN108189031A (en) * | 2017-12-27 | 2018-06-22 | 杭州高越科技有限公司 | Underwater robot trajectory path planning method and system |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN113246127A (en) * | 2021-05-20 | 2021-08-13 | 桂林电子科技大学 | Underwater pipeline inspection cleaning robot |
| CN113246127B (en) * | 2021-05-20 | 2022-05-24 | 桂林电子科技大学 | An underwater pipeline inspection and cleaning robot |
| CN114019986A (en) * | 2022-01-04 | 2022-02-08 | 北京史河科技有限公司 | A path planning method for a wall-climbing robot |
| CN115685994A (en) * | 2022-10-08 | 2023-02-03 | 佛山市顺德区一拓电气有限公司 | An underwater cleaning robot and its control method and control device |
| US20240240482A1 (en) * | 2023-01-17 | 2024-07-18 | Shenzhen Aiper Intelligent Co., Ltd. | Water Surface Profile Cleaning Method and System of Robot Swimming Pool Cleaner, and Readable Storage Medium |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2019128521A1 (en) | Underwater cleaning robot and crawling method thereof, motion path planning method and system | |
| EP2108765B1 (en) | Pool cleaning vehicle having algorithm for moving | |
| US12168885B2 (en) | Pool cleaner with drive motor navigation capabilities | |
| US8590090B2 (en) | Adjustable intake port for submersible pool and tank cleaner | |
| US11598112B2 (en) | Pool cleaner with drive motor navigation capabilities | |
| CN115542922B (en) | A swimming pool cleaning robot, its control method, electronic equipment and storage medium | |
| US11124982B2 (en) | Pool cleaner with drive motor navigation capabilities | |
| US7661381B2 (en) | Self-righting pool cleaning robot | |
| CN110876578B (en) | A glass cleaning robot that automatically turns over and crosses obstacles and its working method | |
| EP3567188B1 (en) | Pool cleaner with stair identification capability | |
| US20070067930A1 (en) | Cordless pool cleaning robot | |
| CN115685994B (en) | Underwater cleaning robot and control method and control device thereof | |
| CN111757832B (en) | Underwater cleaning robot and its crawling method, motion path planning method and system | |
| CN115711055A (en) | Structure of underwater cleaning equipment and control method thereof | |
| CN108189031B (en) | Underwater robot motion path planning method and system | |
| CN118498798B (en) | Lateral movement method of swimming pool cleaning device and swimming pool cleaning device | |
| ES2234962T3 (en) | PROCEDURE AND APPARATUS FOR CLEANING POOLS. | |
| US20240374101A1 (en) | Stair cleaning robot based on retractable rotating arms | |
| CN206166840U (en) | Glass curtain wall cleaning machines people that can hinder more | |
| JPWO2009110592A1 (en) | Movement assist arm and moving device | |
| CN202607669U (en) | Intelligent cleaning robot | |
| CN120779961A (en) | Underwater cleaning robot and shutdown method thereof | |
| CN213046723U (en) | Intelligent stair sweeper | |
| EP2581525B1 (en) | Adjustable intake port for submersible pool and tank cleaner | |
| CN211722965U (en) | A glass cleaning robot that automatically turns over and crosses obstacles |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 18893892 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 20/11/2020) |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 18893892 Country of ref document: EP Kind code of ref document: A1 |