Self-standing control method and apparatus, robot and computer-readable storage medium
By detecting the position state of the robot, controlling the position and rotation of the driven components, the robot's self-return control is realized, which solves the problem of unreliability of traditional technology under complex terrain conditions and improves the reliability of self-return control.
Patent Information
- Application Number
- PCT/CN2024/101809
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-08-30
- Filing Date
- 2024-06-27
- Publication Date
- 2025-03-06
AI Technical Summary
Traditional robot self-return control is unreliable under complex terrain conditions, making it difficult to effectively complete the robot self-return control.
By detecting the current position state of the robot, turning off the torque output of the driving device, obtaining the position of the driving motor and the driven component, determining the target position and rotation angle, controlling the driven component to shrink and rotate, supporting the robot to stand and flip the main body part, and completing the self-return control.
It improves the reliability of the robot's self-return control, so that the robot can effectively complete self-return under a variety of complex terrain conditions, ensuring the sustainability of work.
Smart Images

Figure CN2024101809_06032025_PF_FP_ABST
Abstract
Description
Self-aligning control method, device, robot, and computer-readable storage medium Technical Field
[0001] The present application relates to the field of robotics technology, and in particular to a self-aligning control method, device, robot, and computer-readable storage medium. Background Art
[0002] With the development of robotics technology, more and more application scenarios are beginning to use robots to carry out corresponding businesses. During the working process, robots may fall over, tip over, etc. The ability to efficiently and accurately realize the self-righting control of the robot is of great value to the continuity of the robot's work.
[0003] In traditional technology, the support part on one side of the robot is usually controlled to lift one side of the robot's main body off the ground, and finally complete the robot's self-righting. However, this solution often fails to complete the robot's self-righting under complex terrain conditions, and the reliability of the self-righting control is low.
[0004] Summary of the Invention
[0005] Based on this, it is necessary to provide a self-centering control method, device, robot and computer-readable storage medium to address the above technical problems, which can improve the reliability of the robot's self-centering control.
[0006] In a first aspect, the present application provides a self-correcting control method, comprising:
[0007] When it is detected that the current posture state of the robot is a tipping state, the torque output of the robot driving device is turned off, and the driving device includes a driving motor and a driven component;
[0008] Acquire a first position corresponding to the driving motor and a second position corresponding to the driven component;
[0009] determining a target position and a target rotation angle corresponding to the driven component based on a position difference between the first position and the second position;
[0010] Controlling the driven component to retract to a target position, and controlling the driven component at the target position to rotate by a target rotation angle in a preset direction to a target adjustment state;
[0011] Control the corresponding driven components in the target adjustment state, support the robot to stand, and flip the main part of the robot to the target posture state to complete the robot's self-centering control.
[0012] In one embodiment, when it is detected that the current posture state of the robot is a tipping state, turning off the torque output of the robot driving device includes:
[0013] Detect the current tilt angle of the robot at the current moment using the angle sensor;
[0014] When the current tilt angle is greater than the threshold, the current posture state of the robot is determined to be a rollover state.
[0015] In one embodiment, the driven component includes a first connecting rod, a second connecting rod and a driving wheel, one end of the first connecting rod is movably connected to one end of the second connecting rod, the other end of the first connecting rod is movably connected to the main body of the robot, and the other end of the second connecting rod is movably connected to the driving wheel.
[0016] In one embodiment, the self-correction control method further includes:
[0017] When the angle between the first link and the vertical line of the main body of the robot is greater than a first threshold or less than a second threshold, the robot is determined to be in a tipping state, and the first threshold is greater than the second threshold;
[0018] The driven component is controlled to retract to the reference position, and the driven component at the reference position is controlled to support the robot to stand, thereby completing the self-centering control of the robot.
[0019] In one embodiment, controlling the corresponding driven component in the target adjustment state to support the robot to stand includes:
[0020] The kinematics algorithm, dynamics algorithm and LQR control algorithm based on the link drive the mechanical wheels of the driven parts to keep the robot balanced;
[0021] Based on the ramp algorithm and PID algorithm, the link structure is driven to make the robot stand.
[0022] In one embodiment, controlling the driven component to retract to a target position, and controlling the driven component at the target position to rotate a target rotation angle in a preset direction to a target adjustment state includes:
[0023] Control the driven component to retract to the target position according to the ramp algorithm and PID algorithm;
[0024] The driven component at the target position is controlled to rotate in a clockwise or counterclockwise direction by a target rotation angle to a target adjustment state, and the support portion of the driven component in the target adjustment state contacts the ground.
[0025] In one embodiment, flipping the main body of the robot to a target posture state to complete the self-centering control of the robot includes:
[0026] Drive the target motor to rotate based on the ramp algorithm and PID algorithm to flip the main part of the robot to the target posture state;
[0027] Real-time detection of the real-time tilt angle of the main body during the flipping process;
[0028] When the real-time tilt angle exceeds the angle threshold, the flipping stops, and the current posture state of the main part is determined to be the target posture state, completing the self-centering control of the robot.
[0029] In a second aspect, the present application further provides a self-centering control device, comprising:
[0030] A detection module, configured to shut down the torque output of a driving device of the robot when detecting that the current posture state of the robot is a tipping state, wherein the driving device includes a driving motor and a driven component;
[0031] a calculation module configured to obtain a first position corresponding to the driving motor and a second position corresponding to the driven component; and determine a target position and a target rotation angle corresponding to the driven component based on a position difference between the first position and the second position;
[0032] The control module is used to control the driven component to retract to the target position, and control the driven component at the target position to rotate the target rotation angle in the preset direction to the target adjustment state; control the corresponding driven component in the target adjustment state to support the robot to stand, and flip the main part of the robot to the target posture state to complete the self-centering control of the robot.
[0033] In a third aspect, the present application provides a robot comprising a memory and a processor, wherein the memory stores a computer program, and when the processor executes the computer program, the following steps are performed:
[0034] When it is detected that the current posture state of the robot is a tipping state, the torque output of the robot driving device is turned off, and the driving device includes a driving motor and a driven component;
[0035] Acquire a first position corresponding to the driving motor and a second position corresponding to the driven component;
[0036] determining a target position and a target rotation angle corresponding to the driven component based on a position difference between the first position and the second position;
[0037] Controlling the driven component to retract to a target position, and controlling the driven component at the target position to rotate by a target rotation angle in a preset direction to a target adjustment state;
[0038] Control the corresponding driven components in the target adjustment state, support the robot to stand, and flip the main part of the robot to the target posture state to complete the robot's self-centering control.
[0039] In a fourth aspect, the present application provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the following steps:
[0040] When it is detected that the current posture state of the robot is a tipping state, the torque output of the robot driving device is turned off, and the driving device includes a driving motor and a driven component;
[0041] Acquire a first position corresponding to the driving motor and a second position corresponding to the driven component;
[0042] determining a target position and a target rotation angle corresponding to the driven component based on a position difference between the first position and the second position;
[0043] Controlling the driven component to retract to a target position, and controlling the driven component at the target position to rotate by a target rotation angle in a preset direction to a target adjustment state;
[0044] Control the corresponding driven components in the target adjustment state, support the robot to stand, and flip the main part of the robot to the target posture state to complete the robot's self-centering control.
[0045] The above-mentioned self-righting control method, device, robot and computer-readable storage medium, based on the detected current posture state of the robot, records the position of the driving motor and the driven component at this time if it is a flipped state, and then determines the adjustment strategy based on the difference between the two positions. The adjustment strategy includes a target position and a corresponding target rotation angle, controls the driven component to retract to the target position, and controls the driven component at the target position to rotate the target rotation angle in a preset direction to the target adjustment state, and then controls the driven component in the target adjustment state to support the robot and flip the main body of the robot to complete the self-righting control of the robot in the flipped state, so that the robot can determine the target position and target rotation angle corresponding to the driven component according to the actual flipping state of the robot under various complex terrain conditions, and then adjust the driven component based on the target position and target rotation angle to support the main body of the robot. When the main body is suspended in the air, it flips to the corresponding posture state, effectively improving the reliability of the robot's self-righting control. BRIEF DESCRIPTION OF THE DRAWINGS
[0046] FIG1 is a schematic flow chart of a self-aligning control method according to an embodiment;
[0047] FIG2 is a schematic diagram of a process for determining the current posture state of a robot in one embodiment;
[0048] FIG3 is a flow chart of a method for controlling a robot to self-center in a tilted state according to an embodiment;
[0049] FIG4 is a schematic diagram of a process for controlling a robot to maintain balance and stand in one embodiment;
[0050] FIG5 is a schematic diagram of a process for adjusting a driven component to a target adjustment state in one embodiment;
[0051] FIG6 is a schematic diagram of a process for flipping a robot body to a target posture state in one embodiment;
[0052] FIG7 is a schematic diagram of a self-righting control process of a robot in a tilted state according to one embodiment;
[0053] FIG8 is a schematic diagram of a self-righting control process of a robot in a flipped-over state according to an embodiment;
[0054] FIG9 is a structural block diagram of a self-centering control device in one embodiment;
[0055] FIG10 is a diagram showing the internal structure of a robot according to an embodiment. DETAILED DESCRIPTION
[0056] In order to make the purpose, technical solutions and advantages of this application more clear, the following further describes this application in detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain this application and are not intended to limit this application.
[0057] The self-centering control method provided in the embodiment of the present application can be implemented independently by a robot, or by interaction between a robot and a server, or by interaction between robots, etc., which is not specifically limited here. Among them, when the robot detects that the current posture state of the robot itself is a flipped state, the torque output of the robot driving device is turned off, and the driving device includes a driving motor and a driven component; a first position corresponding to the driving motor and a second position corresponding to the driven component are obtained; based on the position difference between the first position and the second position, the target position and target rotation angle corresponding to the driven component are determined; the driven component is controlled to retract to the target position, and the driven component at the target position is controlled to rotate the target rotation angle in a preset direction to the target adjustment state; the corresponding driven component in the target adjustment state is controlled to support the robot to stand, and the main body of the robot is flipped to the target posture state, thereby completing the self-centering control of the robot.
[0058] In one embodiment, as shown in FIG1 , a self-aligning control method is provided, which is described by taking the application of the method to a robot as an example, including the following steps:
[0059] Step S102: When it is detected that the current posture state of the robot is a flipped state, the torque output of the robot driving device is turned off.
[0060] Among them, the driving device includes a driving motor and driven parts. The robot can be a wheeled robot or a multi-legged robot. The posture state includes a rollover state, a tilting state and other posture states that can describe the motion state of the robot. The posture state is determined by the position of the main part of the robot. The main part of the robot refers to the part other than the driven parts of the robot, such as the part other than the legs of the robot. The rollover state refers to when the flip angle of the main part of the robot exceeds a preset threshold (such as 180 degrees or other angles), indicating that the robot is in a rollover state; the driving device can be the motor drive module of the robot.
[0061] Specifically, the robot detects its current posture state in real time. When it detects that the current tilt angle of the main part of the robot itself exceeds a preset threshold, it determines that it is currently in a tipping state. At this time, the torque output of the drive device is turned off. For example, when the robot is a wheel-foot robot and it is detected that it is currently in a tipping state, the motor drive module is turned off to stop the wheel foot from rotating.
[0062] Step S104 , obtaining a first position corresponding to the driving motor and a second position corresponding to the driven component.
[0063] Among them, the first position is the position corresponding to the driving motor when the robot is in the current posture state, and the second position is the position corresponding to the driven component when the robot is in the current posture state.
[0064] Specifically, the robot detects and records the first position corresponding to the driving motor and the second position corresponding to the driven component in the current posture state through a position sensor (such as a gyroscope, an accelerometer, an infrared sensor, etc.).
[0065] Step S106 : determining a target position and a target rotation angle corresponding to the driven component based on the position difference between the first position and the second position.
[0066] Among them, the position difference may include the distance difference in the horizontal and vertical directions, the tilt angle difference between the first position and the second position, and the angle difference between the straight line connecting the first position and the second position and the robot's predetermined travel route. The position difference is directly related to the current terrain environment of the robot. In different terrain environments, the direction and angle of the robot's tilt when it overturns may be different, so its first position and second position may be different, so the position difference may also be different.
[0067] Specifically, the robot obtains a posture correspondence list corresponding to the position difference between the first position and the second position in a designated database or memory based on the difference characteristics corresponding to the position difference (the posture correspondence list includes the correspondence between each position difference and the target position and target rotation angle of the driven component), and then determines the target position and target rotation angle corresponding to the driven component based on the position difference and the posture correspondence list.
[0068] Step S108 , controlling the driven component to retract to the target position, and controlling the driven component at the target position to rotate by a target rotation angle in a preset direction to a target adjustment state.
[0069] Specifically, the robot drives the motor driving module to control the driven component to retract to the target position. After the retraction is completed, the motor driving module rotates the driven component at the target position in a preset direction by a target rotation angle to a target adjustment state.
[0070] Step S110 , controlling the corresponding driven components in the target adjustment state to support the robot to stand, and flipping the main body of the robot to the target posture state, thereby completing the self-centering control of the robot.
[0071] Specifically, the robot controls the angle between the first link and the second link of the driven component in the target adjustment state, thereby achieving the effect of supporting / standing the robot. After the main part of the robot is supported to a predetermined suspended state, the main part of the robot is flipped to the target posture state, thereby completing the self-centering control of the robot.
[0072] In this embodiment, based on the detected current posture state of the robot, if it is a flipped state, the positions of the driving motor and the driven component at this time are recorded, and then the adjustment strategy is determined based on the difference between the two positions. The adjustment strategy includes a target position and a corresponding target rotation angle, and the driven component is controlled to retract to the target position, and the driven component at the target position is controlled to rotate the target rotation angle in a preset direction to the target adjustment state, and then the driven component in the target adjustment state is controlled to support the robot and flip the main body of the robot to complete the self-righting control of the robot in the flipped state, so that the robot can determine the target position and target rotation angle corresponding to the driven component according to the actual flipping state of the robot under various complex terrain conditions, and then adjust the driven component based on the target position and target rotation angle to support the main body of the robot, and flip it to the corresponding posture state when the main body is suspended, thereby effectively improving the reliability of the robot's self-righting control.
[0073] In one embodiment, as shown in FIG2 , when it is detected that the current posture state of the robot is a tipping state, turning off the torque output of the robot driving device includes:
[0074] Step S202: Detect the current tilt angle of the robot at the current moment using the angle sensor.
[0075] The angle sensor may include a commonly used inertial angle sensor, a photoelectric angle sensor, a magnetoelectric angle sensor, and the like.
[0076] Step S204: When the current tilt angle is greater than the threshold, it is determined that the current posture state of the robot is a flipped state.
[0077] The threshold value may be determined by technical personnel based on the actual operation scenario of the robot, or may be determined by combining the robot's own external mechanical structure characteristics with the terrain features in the robot's operating environment.
[0078] In this embodiment, the current tilt angle corresponding to the robot at the current moment is detected by the angle sensor. When the current tilt angle is greater than a threshold, the current posture state of the robot is determined to be a overturned state, thereby enabling the current posture state of the robot to be determined quickly and accurately.
[0079] In one embodiment, the driven component includes a first connecting rod, a second connecting rod and a driving wheel, one end of the first connecting rod is movably connected to one end of the second connecting rod, the other end of the first connecting rod is movably connected to the main body of the robot, and the other end of the second connecting rod is movably connected to the driving wheel.
[0080] Optionally, the connection between the first connecting rod and the second connecting rod, the connection between the first connecting rod and the robot main body, and the connection between the second connecting rod and the driving wheel can all be angle-controlled by a motor or a servo.
[0081] In one embodiment, as shown in FIG3 , the self-aligning control method further includes:
[0082] Step S302: When the angle between the first connecting rod and the vertical line of the main body of the robot is greater than a first threshold or less than a second threshold, it is determined that the robot is in a tipping state.
[0083] Among them, the first threshold is greater than the second threshold, and when the angle between the first connecting rod of the robot and the vertical line of the main part of the robot is greater than the first threshold or less than the second threshold, the robot cannot be in a standing state.
[0084] Specifically, the robot detects the angle between the first link and the vertical line of the robot's main body. When the angle is greater than the second threshold and less than the first threshold, it indicates that the robot is still in a standing state. When the angle is greater than the first threshold or less than the second threshold, the robot is determined to be in a tilted state.
[0085] Step S304: Control the driven component to retract to the reference position, and control the driven component at the reference position to support the robot to stand, thereby completing the self-centering control of the robot.
[0086] Specifically, the robot controls the first angle between the first link of the driven component and the perpendicular line of the robot's main body, and the second angle between the first link and the second link to shrink to a specified angle, thereby shrinking the driven component to a reference position, and then controls the first angle to shrink and the second angle to expand, thereby supporting the robot to stand up and completing the self-righting control of the robot in the tilted state.
[0087] In this embodiment, by judging that when the angle between the first link and the vertical line of the main part of the robot is greater than the first threshold value or less than the second threshold value, the robot is determined to be in a tilted state, and then the driven component is controlled to retract to the reference position, and the driven component at the reference position is controlled to support the robot to stand, completing the self-righting control of the robot, so that the robot can accurately judge its own tilting state, complete the adjustment of the posture state, and complete the self-righting control.
[0088] In one embodiment, as shown in FIG4 , controlling the corresponding driven components in the target adjustment state to support the robot to stand includes:
[0089] Step S402 : driving the mechanical wheels of the driven components based on the kinematics algorithm, the dynamics algorithm, and the LQR control algorithm of the connecting rod to keep the robot balanced.
[0090] Specifically, when the robot drives the mechanism to support the main part of the robot, a brief unbalanced state will occur. At this time, the robot's balance state parameters (such as the tilt angle, etc.) will be obtained in real time, and the kinematic algorithm, dynamic algorithm and LQR control algorithm of the connecting rod will be used to drive the mechanical wheels of the driven parts, so that the robot can swing its wheel feet over a short distance to maintain the balance of the main part of the robot in the standing state.
[0091] Step S404: Based on the ramp algorithm and the PID algorithm, the connecting rod structure is driven to make the robot stand.
[0092] Specifically, when the robot uses the mechanical wheels as support points to support the main body of the robot and can maintain a balanced state when the mechanism is stationary through the above-mentioned step S402, the slope algorithm and the PID algorithm are used to control the first angle between the first link of the driven component in the connecting rod structure and the vertical line of the robot main body, as well as the second angle between the first link and the second link, so that the robot can stand.
[0093] In this embodiment, the mechanical wheels of the driven components are driven by the connecting rod-based kinematic algorithm, dynamic algorithm and LQR control algorithm to keep the robot balanced. The connecting rod structure is driven based on the ramp algorithm and PID algorithm to make the robot stand. This can well achieve balance control during the robot's standing process and improve the reliability of the robot's self-centering.
[0094] In one embodiment, as shown in FIG5 , controlling the driven component to retract to a target position, and controlling the driven component at the target position to rotate in a preset direction by a target rotation angle to a target adjustment state includes:
[0095] Step S502 : Control the driven component to retract to the target position according to the ramp algorithm and the PID algorithm.
[0096] Specifically, the robot uses the changes in the position difference between the current position of the driven component and the target position (such as the size of the difference and the speed of the change, etc.) as input information for the ramp algorithm and PID algorithm control in real time, and then determines the control force according to the feedback control effect in real time to complete the control of the driven component, that is, to control the driven component to shrink to the target position.
[0097] Step S504 : controlling the driven component at the target position to rotate in a clockwise or counterclockwise direction by a target rotation angle to a target adjustment state.
[0098] Among them, the supporting part of the driven component in the target adjustment state is in contact with the ground, and the clockwise or counterclockwise rotation direction can be determined by the technician according to the terrain environment of the actual operation scene of the robot.
[0099] Specifically, based on the above steps, the robot controls the motor drive module to rotate the first link of the driven component at the target position in a clockwise or counterclockwise direction to the target adjustment state, while keeping the second angle between the first link and the second link unchanged during the process.
[0100] In this embodiment, the driven component is controlled to retract to the target position according to the ramp algorithm and the PID algorithm, and the driven component at the target position is controlled to rotate the target rotation angle in a clockwise or counterclockwise direction to the target adjustment state. This can well achieve stable control of the robot's driven component during the position adjustment process and improve the stability of the robot's self-centering.
[0101] In one embodiment, as shown in FIG6 , flipping the main body of the robot to a target posture state to complete the self-centering control of the robot includes:
[0102] Step S602: driving the target motor to rotate based on the ramp algorithm and the PID algorithm to flip the main body of the robot to the target posture state.
[0103] Specifically, the robot controls the main body to flip, and obtains the current flipping angle and position in real time, and inputs the various control parameters during the flipping process into the ramp algorithm and PID algorithm, thereby achieving effective control of the stability and reliability of the motor rotation process based on the ramp algorithm and PID algorithm, and realizing stable flipping control of the robot's main body.
[0104] Step S604: detecting in real time the real-time tilt angle of the main body during the flipping process.
[0105] Step S606: When the real-time tilt angle exceeds the angle threshold, the flipping is stopped, and the current posture state of the main body is determined to be the target posture state, completing the self-centering control of the robot.
[0106] Among them, the angle threshold can be flexibly set by technical personnel according to actual needs, and the target posture state is a normal state corresponding to the robot being able to carry out business normally.
[0107] Specifically, the robot compares the real-time tilt angle with the angle threshold. When the tilt angle is less than the angle threshold, it indicates that the main part of the robot has not been adjusted to the specified position, and the tilt angle of the main part continues to be adjusted. When the real-time tilt angle exceeds the angle threshold, the flipping is stopped, and the current posture state of the main part is determined to be the target posture state, completing the self-centering control of the robot.
[0108] In this embodiment, the target motor is driven to rotate based on the ramp algorithm and the PID algorithm to flip the main body of the robot to the target posture state, and the real-time tilt angle corresponding to the main body during the flipping process is detected in real time. When the real-time tilt angle exceeds the angle threshold, the flipping is stopped, and the current posture state of the main body is determined to be the target posture state, completing the self-alignment control of the robot, thereby achieving effective control of the stability and reliability of the motor rotation process based on the ramp algorithm and the PID algorithm, achieving stable flipping control of the robot main body, and improving the stability of the robot's self-alignment.
[0109] This application also provides an application scenario, which applies the above-mentioned self-centering control method, and the method is applied to the scenario of self-centering control of a two-wheeled foot robot. Specifically, the application of the self-centering control method in this application scenario is as follows, and its adjustment process is shown in Figures 7 and 8:
[0110] (1) Detect the current posture state
[0111] The head sensor detects that it has flipped 180 degrees. For safety reasons, it first turns off the torque output of its own motor to prevent the robot from losing control and colliding with people and other objects.
[0112] (2) Adjust the legs back to the normal position
[0113] The robot can sense the position of the motor in real time. It first checks the position of the motor and records the position of the legs when they flip over. To prevent the head from shaking and ensure that both legs can return to the ground synchronously, the two legs are synchronized through the ramp algorithm and PID algorithm to allow the legs to contract and slowly return to the middle position (the bottom of the front of the vehicle, at this time the wheel legs are off the ground and facing upwards).
[0114] (3) The legs return to the ground
[0115] After the wheel leg returns to the middle position, slowly return the wheel leg to the ground.
[0116] (4) Control the robot to stand
[0117] At this time, in order to maintain the balance of the robot when standing, it is necessary to use the kinematic algorithm and dynamic algorithm of the connecting rod combined with the LQR algorithm to drive the wheels to keep the robot balanced. The robot slowly stands up through the ramp algorithm and PID algorithm.
[0118] (5) The robot's head returns to normal
[0119] The robot uses the ramp algorithm and PID algorithm to slowly return its head to the center position and control the robot to sit down, completing the robot's self-centering control.
[0120] In this embodiment, based on the detected current posture state of the robot, if it is in a flipped state, the position of the driving motor and the driven component at this time is recorded, the driven component is controlled to retract to the target position, and the driven component at the target position is controlled to rotate the target rotation angle in a preset direction to a target adjustment state, and then the driven component in the target adjustment state is controlled to support the robot and flip the main body of the robot to complete the self-righting control of the robot in the flipped state, so that the robot can determine the target position and target rotation angle corresponding to the driven component according to the actual flipping state of the robot under various complex terrain conditions, and then adjust the driven component to support the main body of the robot based on the target position and target rotation angle, and flip it to the corresponding posture state when the main body is suspended, effectively improving the reliability of the robot's self-righting control.
[0121] It should be understood that, although the various steps in the flowcharts involved in the various embodiments described above are displayed in sequence according to the instructions of the arrows, these steps are not necessarily executed in sequence in the order indicated by the arrows. Unless otherwise specified herein, there is no strict order restriction on the execution of these steps, and these steps can be executed in other orders. Moreover, at least a portion of the steps in the flowcharts involved in the various embodiments described above can include multiple steps or multiple stages, and these steps or stages are not necessarily executed and completed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily to be carried out in sequence, but can be executed in turn or alternately with other steps or at least a portion of steps or stages in other steps.
[0122] In one embodiment, as shown in FIG9 , a self-aligning control device is provided. The device may be a software module or a hardware module, or a combination of the two, as part of a computer device. The device specifically includes:
[0123] A detection module 902 is configured to shut down the torque output of a driving device of the robot when detecting that the current posture state of the robot is a tipping state, wherein the driving device includes a driving motor and a driven component;
[0124] A calculation module 904 is configured to obtain a first position corresponding to the driving motor and a second position corresponding to the driven component; and determine a target position and a target rotation angle corresponding to the driven component based on a position difference between the first position and the second position;
[0125] The control module 906 is used to control the driven component to retract to the target position, and control the driven component at the target position to rotate the target rotation angle in the preset direction to the target adjustment state; control the corresponding driven component in the target adjustment state to support the robot to stand, and flip the main part of the robot to the target posture state to complete the self-centering control of the robot.
[0126] In one embodiment, the detection module 902 is further configured to detect the current tilt angle of the robot at the current moment using an angle sensor; when the current tilt angle is greater than a threshold, the current posture state of the robot is determined to be a flipped state.
[0127] In one embodiment, the driven component includes a first connecting rod, a second connecting rod and a driving wheel, one end of the first connecting rod is movably connected to one end of the second connecting rod, the other end of the first connecting rod is movably connected to the main body of the robot, and the other end of the second connecting rod is movably connected to the driving wheel.
[0128] In one embodiment, the control module 906 is also used to determine that the robot is in a tipping state when the angle between the first link and the vertical line of the main part of the robot is greater than a first threshold or less than a second threshold, and the first threshold is greater than the second threshold; control the driven component to retract to a reference position, and control the driven component at the reference position to support the robot to stand, thereby completing the self-centering control of the robot.
[0129] In one embodiment, the control module 906 is also used to drive the mechanical wheels of the driven components based on the kinematics algorithm, dynamics algorithm and LQR control algorithm of the link to keep the robot balanced; and to drive the link structure based on the ramp algorithm and PID algorithm to make the robot stand.
[0130] In one embodiment, the control module 906 is also used to control the driven component to retract to the target position according to the ramp algorithm and the PID algorithm; control the driven component at the target position to rotate the target rotation angle in a clockwise or counterclockwise direction to a target adjustment state, and the support part of the driven component in the target adjustment state is in contact with the ground.
[0131] In one embodiment, the control module 906 is also used to drive the target motor to rotate based on the ramp algorithm and the PID algorithm to flip the main body of the robot to the target posture state; detect the real-time tilt angle corresponding to the main body during the flipping process in real time; when the real-time tilt angle exceeds the angle threshold, stop flipping, and determine the current posture state of the main body as the target posture state, thereby completing the self-centering control of the robot.
[0132] The above-mentioned self-righting control device records the position of the driving motor and the driven component at this time according to the detected current posture state of the robot if it is in a flipped state, controls the driven component to retract to the target position, and controls the driven component at the target position to rotate the target rotation angle in a preset direction to the target adjustment state, and then controls the driven component in the target adjustment state to support the robot and flip the main body of the robot to complete the self-righting control of the robot in the flipped state, so that the robot can determine the target position and target rotation angle corresponding to the driven component according to the actual flipping state of the robot under various complex terrain conditions, and then adjust the driven component to support the main body of the robot based on the target position and target rotation angle, and flip it to the corresponding posture state when the main body is suspended, thereby effectively improving the reliability of the robot's self-righting control.
[0133] The specific definitions of the self-centering control device can be found in the definitions of the self-centering control method above and will not be repeated here. Each module in the self-centering control device described above can be implemented in whole or in part through software, hardware, or a combination thereof. Each of the modules described above can be embedded in or independent of a processor in a computer device in hardware form, or stored in a memory in the computer device in software form, so that the processor can call and execute the corresponding operations of each module.
[0134] In one embodiment, a robot is provided, which can be a terminal. Its internal structure can be shown in Figure 10. The robot includes a processor, memory, a communication interface, a display screen, and an input device connected via a system bus. The robot's processor provides computing and control capabilities. The robot's memory includes a non-volatile storage medium and internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of the operating system and computer program in the non-volatile storage medium. The robot's communication interface is used to communicate with an external terminal via wired or wireless communication. The wireless communication can be achieved via Wi-Fi, a mobile cellular network, NFC (near-field communication), or other technologies. When executed by the processor, the computer program implements a self-aligning control method. The robot's display screen can be a liquid crystal display or an electronic ink display. The robot's input device can be a touchscreen covering the display screen, buttons, a trackball, or a touchpad provided on the robot housing, or an external keyboard, touchpad, or mouse.
[0135] Those skilled in the art will understand that the structure shown in Figure 10 is merely a block diagram of a partial structure related to the scheme of the present application, and does not constitute a limitation on the robot to which the scheme of the present application is applied. The specific robot may include more or fewer components than shown in the figure, or combine certain components, or have a different arrangement of components.
[0136] In one embodiment, a robot is provided, which is provided with a depth camera and a positioning sensor, and includes a memory and a processor. The memory stores a computer program, and the processor implements the steps in the above-mentioned method embodiments when executing the computer program.
[0137] In one embodiment, a computer-readable storage medium is provided, storing a computer program, which implements the steps in the above-mentioned method embodiments when executed by a processor.
[0138] In one embodiment, a computer program product or computer program is provided, comprising computer instructions stored in a computer-readable storage medium. A processor of a robot reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the robot to perform the steps of each of the above method embodiments.
[0139] Those skilled in the art will appreciate that all or part of the processes in the above-mentioned embodiment methods can be implemented by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media used in the embodiments provided in this application may include at least one of non-volatile and volatile memory. Non-volatile memory may include read-only memory (ROM), magnetic tape, floppy disk, flash memory or optical memory, etc. Volatile memory may include random access memory (RAM) or external cache memory. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM).
[0140] The technical features of the above embodiments can be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0141] The above embodiments merely represent several implementation methods of the present application. While the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the present invention. It should be noted that a person skilled in the art could make various modifications and improvements without departing from the spirit of the present application, all of which fall within the scope of protection of the present application. Therefore, the scope of protection of the present patent application shall be determined by the appended claims.
Claims
1. A self-correcting control method, characterized in that: The method comprises: When it is detected that the current posture state of the robot is a tipping state, turning off the torque output of the robot driving device, wherein the driving device includes a driving motor and a driven component; Acquire a first position corresponding to the driving motor and a second position corresponding to the driven component; determining a target position and a target rotation angle corresponding to the driven component based on a position difference between the first position and the second position; Controlling the driven component to retract to the target position, and controlling the driven component at the target position to rotate by the target rotation angle in a preset direction to a target adjustment state; The corresponding driven components in the target adjustment state are controlled to support the robot to stand, and the main body of the robot is flipped to the target posture state to complete the self-centering control of the robot.
2. The method according to claim 1, characterized in that When it is detected that the current posture state of the robot is a tipping state, turning off the torque output of the robot driving device comprises: Detecting the current tilt angle of the robot at the current moment according to the angle sensor; When the current tilt angle is greater than a threshold, it is determined that the current posture state of the robot is a tipping state.
3. The method according to claim 1, characterized in that: The driven component includes a first connecting rod, a second connecting rod and a driving wheel. One end of the first connecting rod is movably connected to one end of the second connecting rod, the other end of the first connecting rod is movably connected to the robot main body, and the other end of the second connecting rod is movably connected to the driving wheel.
4. The method according to claim 3, characterized in that The method further comprises: When the angle between the first connecting rod and the vertical line of the main body of the robot is greater than a first threshold or less than a second threshold, the robot is determined to be in a tipping state, and the first threshold is greater than the second threshold; The driven component is controlled to retract to a reference position, and the driven component at the reference position is controlled to support the robot to stand, thereby completing the self-centering control of the robot.
5. The method according to claim 3, characterized in that: The controlling the corresponding driven component in the target adjustment state to support the robot to stand includes: The driven part is driven based on the kinematics algorithm, dynamics algorithm and LQR control algorithm of the connecting rod. A mechanical wheel of the robot to keep the robot balanced; Based on the ramp algorithm and the PID algorithm, the link structure is driven to make the robot stand.
6. The method according to claim 1, characterized in that The controlling the driven component to retract to the target position, and controlling the driven component at the target position to rotate the target rotation angle in a preset direction to a target adjustment state, includes: Controlling the driven component to retract to the target position according to a ramp algorithm and a PID algorithm; The driven component at the target position is controlled to rotate in a clockwise or counterclockwise direction by the target rotation angle to a target adjustment state, wherein the support portion of the driven component in the target adjustment state contacts the ground.
7. The method according to claim 1, characterized in that The method of flipping the main body of the robot to a target posture state to complete the self-centering control of the robot includes: Based on the ramp algorithm and the PID algorithm, the target motor is driven to rotate so that the main body of the robot is flipped to a target posture state; Real-time detection of the real-time tilt angle of the main body during the flipping process; When the real-time tilt angle exceeds an angle threshold, the flipping is stopped, and the current posture state of the main body is determined to be a target posture state, thereby completing the self-centering control of the robot.
8. A self-centering control device, characterized in that: The device comprises: A detection module, configured to shut down the torque output of the robot driving device when detecting that the current posture state of the robot is a tipping state, wherein the driving device includes a driving motor and a driven component; a calculation module, configured to obtain a first position corresponding to the driving motor and a second position corresponding to the driven component; and determine a target position and a target rotation angle corresponding to the driven component based on a position difference between the first position and the second position; The control module is used to control the driven component to retract to the target position, and control the driven component at the target position to rotate the target rotation angle in a preset direction to a target adjustment state; control the corresponding driven component in the target adjustment state to support the robot to stand, and flip the main body of the robot to the target posture state to complete the self-centering control of the robot.
9. A robot comprising a memory and a processor, wherein the memory stores a computer program, wherein: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 7 are implemented.
10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 7 are implemented.
Citation Information
Patent Citations
Coupling optimization control method for leg-wheel robot
CN101982809A
Method for controlling driving and traction characteristics of leg-wheel robot
CN102033545A
Humanoid robot with function of interchanging double-foot walking with wheeled moving
CN102431604A
Deformable bionic wheel leg robot and control method thereof
CN108638019A
Fall self-recovery learning method and device, electronic equipment and storage medium
CN114986510A