Robot control method and device, robot, medium and program product
By detecting the duration of the robot's suspended state and the state-differentiated recovery operation, the problem of the robot's inability to recover autonomously after being hijacked was solved, ensuring the safe and stable operation of the robot under various working conditions.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-11
- Publication Date
- 2026-03-13
AI Technical Summary
Once a robot is hijacked, it is unable to return to normal on its own, leading to operational chaos or shutdown, which affects the smoothness and stability of its operation.
By detecting the duration of the robot's suspended state and performing differentiated recovery operations based on the state of the robotic arm and drive wheels, including controlling the state changes of the robotic arm and drive wheels, the robot can be ensured to operate safely and stably under various working conditions.
This technology enables robots to safely and stably resume normal operation after being hijacked, avoiding task interruptions caused by center of gravity shifts and improving operational smoothness and reliability.
Smart Images

Figure CN121649991A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of robotics technology, and in particular to a robot control method, device, robot, medium, and program product. Background Technology
[0002] With the continuous development of robotics technology, its level of intelligence is constantly improving. Today, some robots have gradually integrated robotic arms. During autonomous movement, these arms are controlled to perform auxiliary operations, such as picking up obstacles and collecting items, thus assisting the robot in completing more complex tasks. Taking cleaning robots as an example, some cleaning robots now integrate robotic arms that can pick up items from the floor or carpet and collect them while performing floor cleaning tasks, thus aiding in floor cleaning.
[0003] However, during actual operation, robots may be hijacked due to unforeseen circumstances, such as being picked up by a person. This hijacking puts the robot in an unexpected state, and after the robot is freed and re-establishes contact with the ground, it may be unable to recover from the unexpected state, potentially leading to operational chaos or shutdown, affecting the smoothness and stability of the robot's operation.
[0004] Therefore, how to restore the robot's control logic after it has been hijacked, so as to ensure that the robot can continue to operate safely and stably, has become an urgent problem to be solved. Summary of the Invention
[0005] The robot control method, device, robot, medium, and program product provided in this application embodiment can perform differentiated recovery operations based on the duration of the suspension state and the state of the robotic arm and drive wheels when the robot is hijacked and is in a suspended state. This enables the robot to continue to operate autonomously and safely after being unhijacked under various working conditions, ensuring the smoothness and stability of the robot's operation.
[0006] In a first aspect, embodiments of this application provide a robot control method. The robot is equipped with a robotic arm and drive wheels. The drive wheels are used to drive the robot to move, and the robotic arm is used to grip objects on the path of movement. The method includes: in response to the robot being in a suspended state, determining the duration of the robot being in a suspended state; if the duration is greater than a preset duration, performing a differentiated recovery operation based on the state of the robot's robotic arm and the state of the drive wheels.
[0007] In one possible implementation, based on the state of the robot's robotic arm and the state of the drive wheel, a differentiated recovery operation is performed, including: if the robotic arm is in an extended state, the drive wheel is in a non-driven state, and the elastic connection between the drive wheel and the robot body is in a locked state, then the elastic connection is kept in the locked state, and the robot is controlled to enter a standby, power-off, or power-off state; in the extended state, the end of the robotic arm is located outside the robot's vertical projection range; after the robot is in a contact with the support surface state, the robot is controlled to enter a power-on state, the robotic arm is retracted to within the projection range, the locked state is released, and the drive wheel is controlled to perform a reset operation to zero.
[0008] In one possible implementation, if the robotic arm has an item in its grip, the method further includes, after the robot is in contact with the support surface and before retracting the robotic arm to within the projection range, controlling the robotic arm to put down the gripped item.
[0009] In one possible implementation, based on the state of the robot's robotic arm and the state of the drive wheels, differentiated recovery operations are performed, including: if the robotic arm is in a retrieved and retracted state and the drive wheels are in a walking state, then the elastic connection between the drive wheels and the robot body is controlled or maintained in a locked state, and the robot is controlled to enter a standby, power-off, or power-off state; in the retrieved and retracted state, the robotic arm has an object in its grip and the end of the robotic arm is within the vertical projection range of the robot; after the robot is in a contact with the support surface state, the robot is controlled to enter a power-on state, the locked state is released, and the drive wheels are controlled to perform a reset operation to zero.
[0010] In one possible implementation, based on the state of the robot's robotic arm and the state of the drive wheel, a differentiated recovery operation is performed, including: if the robotic arm is in an extended state, the drive wheel is in a non-driven state, and the elastic connection between the drive wheel and the robot body is in a locked state, then the elastic connection is kept in the locked state, the robotic arm is retracted to within the robot's vertical projection range, and the robot is controlled to enter a standby, power-off, or power-off state; in the extended state, the end of the robotic arm is located outside the robot's vertical projection range; after the robot is in contact with the support surface, the robot is controlled to enter the power-on state, the locked state is released, and the drive wheel is controlled to perform a reset operation to zero.
[0011] In one possible implementation, the method further includes: if the duration is less than or equal to a preset duration, then after the robot is in contact with the support surface, controlling the robot to return to the working state before it was in the suspended state.
[0012] In one possible implementation, after determining the duration of the robot being in a suspended state in response to the robot being in a suspended state, the method further includes: when the duration is greater than a preset duration, acquiring the state of the robot's robotic arm and the state of the drive wheels, so as to perform differentiated recovery operations based on the acquired states.
[0013] In one possible implementation, the robot further includes a sensor system for detecting the robot's pose information and / or pressure information. The method further includes determining whether the robot is in a suspended state based on the pose information and / or pressure information detected by the sensor system.
[0014] In one possible implementation, the robot is equipped with a camera, and the method further includes determining the state of the robotic arm based on images of the robotic arm captured by the camera.
[0015] In one possible implementation, the robot is equipped with a photoelectric sensor or a pressure sensor, and the method further includes: determining the elastic connection state between the drive wheel and the robot body based on the data collected by the photoelectric sensor or the pressure sensor.
[0016] In one possible implementation, the method further includes determining whether the drive wheel is in a walking state based on the wheel speed of the drive wheel.
[0017] In one possible implementation, the robot further includes a sensor system for detecting the robot's pose information and / or pressure information; the method further includes determining whether the robot is in contact with a support surface based on the pose information and / or pressure information detected by the sensor system.
[0018] Secondly, embodiments of this application provide a robot control device. The robot is equipped with a robotic arm and drive wheels. The drive wheels are used to drive the robot to move, and the robotic arm is used to grip objects on the path of movement. The device includes: a duration determination module, used to determine the duration of the robot being in a suspended state in response to the robot being in a suspended state; and a recovery operation execution module, used to perform differentiated recovery operations based on the state of the robot's robotic arm and the state of the drive wheels if the duration is greater than a preset duration.
[0019] Thirdly, embodiments of this application provide a robot, including: a robot body, a robotic arm disposed on the robot body, a drive wheel, and a controller; the drive wheel is used to drive the robot to move; the robotic arm is used to grip objects on the path of movement; and the controller is used to execute the method provided in the first aspect above.
[0020] Fourthly, embodiments of this application provide a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, are used to perform the method provided in the first aspect above.
[0021] Fifthly, embodiments of this application provide a computer program product, including a computer program that, when executed by a processor, implements the method provided in the first aspect above.
[0022] The robot control method, device, robot, medium, and program product provided in this application firstly record the duration of the robot's suspension state when it is hijacked. The duration is used to determine whether there is a risk of operational abnormality after the robot re-consumes the support surface, i.e., whether it can resume normal operation directly. This allows for targeted subsequent operations, improving the efficiency of robot control and the cost-effectiveness of maintenance. Secondly, if the suspension duration is long, exceeding a preset time, the robot cannot overcome the risk of center-of-gravity shift through its own inertia. In this case, differentiated recovery operations are performed based on the state of the robot's robotic arm and drive wheels. This ensures that the robot can still operate safely and stably after being hijacked for a long time under various working conditions, preventing task interruption due to robot imbalance and guaranteeing the smoothness and reliability of robot operation. Attached Figure Description
[0023] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.
[0024] Figure 1 A schematic diagram of a robot operation scenario provided in an embodiment of this application;
[0025] Figure 2 A flowchart illustrating a robot control method provided in an embodiment of this application;
[0026] Figure 3 A schematic diagram illustrating a process for performing differentiated recovery operations, provided as an embodiment of this application;
[0027] Figure 4a A schematic diagram illustrating a scenario for performing differentiated recovery operations, provided as an embodiment of this application;
[0028] Figure 4b A schematic diagram illustrating another scenario for performing differentiated recovery operations, provided as an embodiment of this application;
[0029] Figure 4c A schematic diagram illustrating another scenario for performing differentiated recovery operations, provided in an embodiment of this application;
[0030] Figure 5 A flowchart illustrating another robot control method provided in an embodiment of this application;
[0031] Figure 6 This is a schematic diagram of the structure of a robot control device provided in an embodiment of this application;
[0032] Figure 7 This is a schematic diagram of the structure of a robot provided in an embodiment of this application.
[0033] The accompanying drawings illustrate specific embodiments of this application, which will be described in more detail below. These drawings and descriptions are not intended to limit the scope of the concept in any way, but rather to illustrate the concept of this application to those skilled in the art through reference to particular embodiments. Detailed Implementation
[0034] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numbers in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this application as detailed in the appended claims.
[0035] Figure 1 This is a schematic diagram of a robot operation scenario provided in an embodiment of this application. Figure 1 As shown, the robot provided in this application includes a robot body, a robotic arm, and drive wheels. The robotic arm is mounted on the robot body, for example... Figure 1 The robotic arm is positioned above the robot's main body and is used to grasp objects along the robot's path and move them to a designated location. The drive wheels are located below the robot's main body and are the power output components used to propel the robot.
[0036] exist Figure 1 During the robot's operation, the drive wheels propel the robot along a pre-defined path. If an item needs to be stored or moved during its movement, the robot controls its robotic arm to grasp the item and store it in a designated location, such as the top of the robot.
[0037] However, during robot operations, a human might pick it up, potentially hijacking it. Hijacking places the robot in an unexpected state. Once the robot re-establishes contact with the ground (i.e., the hijacking is lifted), its lack of ability to recover from this unexpected state may lead to erroneous operations or even a complete shutdown.
[0038] For example, when a robot's robotic arm is picking up an item, or is carrying an item while walking, the robotic arm may move due to gravity or external forces while the robot is suspended in the air, causing the center of gravity to shift. This can lead to instability in the robot's center of gravity after it re-consumes on the ground, resulting in the robot tilting and affecting the smoothness and stability of its operation.
[0039] The robot control method provided in this application aims to solve the above-mentioned technical problems. Specifically, when the robot is in a suspended state, the duration of this suspended state is recorded. If the duration is long, i.e., greater than a preset duration, it indicates that the robot may not be able to directly resume normal operation from a hijacked state. Therefore, based on the state of the robot's robotic arm and drive wheels, differentiated recovery operations are performed to ensure that the robot can operate normally after being unhijacked in various operating states, thus guaranteeing smooth and stable operation.
[0040] The technical solution of this application and how the technical solution of this application solves the above-mentioned technical problems are described in detail below with specific embodiments. These specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments. The embodiments of this application will now be described with reference to the accompanying drawings.
[0041] Figure 2 This is a flowchart illustrating a robot control method provided in an embodiment of this application. The robot control method provided in this application can be executed by the robot itself, such as by a controller within the robot, or by an electronic device communicatively connected to the robot. Figure 2 As shown, the method includes:
[0042] Step S201: In response to the robot being in a suspended state, determine the duration of the robot being in a suspended state.
[0043] The robot is equipped with a robotic arm and drive wheels. The drive wheels are used to propel the robot forward, and the robotic arm is used to grip objects in its path. Therefore, the robot in this application can be any intelligent robot equipped with a robotic arm and drive wheels, such as a cleaning robot equipped with a robotic arm.
[0044] A robotic arm is a component mounted on a robot that can execute control commands to mimic certain movements of a human arm. In this application, the robotic arm can grip, move, and transport objects.
[0045] The drive wheels are located at the bottom of the robot and are used to propel the robot forward.
[0046] During robot operation, the drive wheels propel the robot to a designated location, enabling it to perform tasks there. Simultaneously, the robot's robotic arm can grip and store items. However, during this process, the robot may be hijacked. Hijacking refers to the robot being forcibly lifted and suspended in mid-air by external force, such as being picked up by a user, or the drive wheels being suspended due to obstacles. Suspended state means the robot is detached from its support surface, i.e., not in contact with it. The support surface is the contact surface that the drive wheels contact and provide load-bearing force during robot movement, such as the ground.
[0047] The duration of the robot's suspended state is the length of time from the moment the robot became suspended to the present moment. In other words, the robot remains suspended throughout this duration.
[0048] In this step, sensors can be installed on the robot to detect whether it is in a suspended state. When a suspended state is detected, a suspended notification command is generated to indicate that the robot is in a suspended state.
[0049] For example, the sensor can be a distance sensor, such as an infrared rangefinder. The distance sensor is positioned at the bottom of the robot to detect the height of the robot's bottom from the support surface. If the height detected by the distance sensor is greater than or equal to a preset height threshold, the robot is determined to be suspended. The preset height threshold is a pre-set configurable parameter that can be determined based on the height of the robot's bottom from the ground where the drive wheels are in contact with the support surface.
[0050] For example, the sensor can be a pressure sensor. The pressure sensor is mounted on the drive wheel to determine whether the drive wheel is in contact with the support surface. If the pressure value detected by the pressure sensor is less than a preset pressure value, it is determined that the robot is in a suspended state.
[0051] For example, the sensor could also be a camera. The image captured by the camera can be used to determine whether the robot is suspended in mid-air. For instance, the height of a region in the image captured by the camera can be used to determine whether the robot is suspended.
[0052] Using sensors to detect whether the robot is suspended in mid-air provides higher accuracy.
[0053] In some embodiments, to ensure the accuracy of the suspension determination, multiple sensors, such as distance sensors, pressure sensors, and cameras, can be installed on the robot. Each sensor individually determines whether the robot is in a suspended state. The robot's suspension status is determined based on these multiple determinations. For example, if multiple sensors all determine that the robot is in a suspended state, then the robot is confirmed to be in a suspended state.
[0054] Multi-sensor fusion can significantly reduce the risk of misjudgment by a single sensor, making the judgment of the suspended state more accurate.
[0055] In some embodiments, the robot's operational status can be used to determine whether the robot is in a suspended state.
[0056] For example, if a robot is in a state where the drive wheels rotate without obstruction, that is, there is no friction when the drive wheels rotate, then the robot is determined to be in a suspended state.
[0057] By determining whether the robot is suspended in mid-air based on its own operating status, without the need to deploy sensors, hardware costs are reduced, and the structure can be simplified while reducing the robot's power consumption.
[0058] After determining that the robot is in a suspended state, the robot or an electronic device communicating with the robot responds to the suspension notification command indicating that the robot is in a suspended state and determines the duration of the robot being in a suspended state.
[0059] The duration of the robot's suspended state can be determined by starting a timer after receiving a suspension notification command and recording the duration of the robot's suspended state.
[0060] The duration of the robot's suspended state can also be determined by recording the moment the suspension notification instruction is received and using the difference between the current moment and the moment the suspension notification instruction is received as the duration of the robot's suspended state.
[0061] In step S202, if the duration is longer than the preset duration, a differentiated recovery operation is performed based on the state of the robot's robotic arm and the state of the drive wheels.
[0062] During robot operation, if the robot is suspended in mid-air, it indicates that the robot has deviated from its normal operating state and is in an unexpected state, such as the drive wheels spinning freely or the robotic arm's posture changing. In this state, the robot poses a safety risk. Specifically, when the robot re-establishes contact with the support surface and continues its work, the unexpected state may lead to operational chaos, such as the robot moving in an unexpected direction or the robotic arm's posture changing, causing instability and tilting. Furthermore, leaving the robot in an unexpected state for an extended period may also pose risks to the robot or its surrounding environment. For example, the drive wheels spinning freely may cause hardware damage, or the spinning drive wheels or the extended robotic arm may collide with people or other objects, causing contact damage to the robot's hardware, personnel, or other objects.
[0063] In actual robot operations, besides the robot being hijacked and thus suspended in mid-air, the drive wheels may also temporarily suspend when the robot crosses obstacles or travels on non-planar supports, leading to the robot being detected as suspended. However, this suspension period is short-lived, and the robot can resume operation immediately after re-establishing contact with the support surface. The preset duration is a critical value determined based on the possible duration of the suspension in this scenario, for example, 1-5 seconds, used to clearly define the trigger time for differentiated recovery operations.
[0064] The state of the robotic arm reflects its posture on the robot, including but not limited to the extended state, the retracted state after picking up an object, and the folded state. In the extended state, the end effector of the robotic arm is outside the robot's vertical projection range, and it is gripping or storing an object. In the retracted state, the robotic arm has an object in its grip, and its end effector is within the robot's vertical projection range. The folded state is the default state of the robotic arm, referring to its non-working state, where the robotic arm is bent and retracted through its joints, stored at the top or side of the robot body. In the folded state, the end effector of the robotic arm is also within the robot's vertical projection range.
[0065] The state of the drive wheels is used to reflect the posture of the robot's drive wheels, including but not limited to walking and non-drive states.
[0066] Recovery operations refer to the procedures for restoring a robot from an unexpected state to its normal operating state. Differentiated recovery operations refer to performing different, targeted recovery operations based on the state of the robotic arm and the drive wheels.
[0067] In this step, if the duration exceeds the preset duration, it indicates that the robot has been hijacked and that after being placed on the support surface (ground), the robot cannot overcome the safety risks caused by the shift in the center of gravity through its inertia. In this case, a differentiated recovery operation can be performed based on the state of the robot's robotic arm and the state of the drive wheels.
[0068] In this embodiment, multiple recovery operations can be pre-set, and a correspondence between the states of the robotic arm and the drive wheels and the recovery operations can be established and stored in a mapping table. When a recovery operation is executed, the recovery operation corresponding to the state of the robot's robotic arm and the state of the drive wheels is determined from the mapping table, and the recovery operation is executed.
[0069] For example, the correspondence may include: if the robotic arm is in an extended state, including when it is picking up an item or when it is retracting after picking up an item, and the drive wheel is in a non-drive state, then the corresponding operation is recovery 1, such as controlling or maintaining the retracted robotic arm; if the robotic arm is in a retracted state after picking up an item or in a folded state, and the drive wheel is in a walking state, then the corresponding operation is recovery 2, such as controlling the drive wheel to be in a non-drive state.
[0070] In some embodiments, the correspondence also includes that if the robotic arm is in a retracted or folded state after picking up an object and the drive wheels are in a non-driven state, then no recovery operation is performed.
[0071] Once the robot is in contact with the support surface, that is, after contact with the support surface, the drive wheel can be controlled to perform a reset operation to zero, or to restore the working state before it was in the suspended state.
[0072] Existing technologies lack the ability to combine the states of the robot's robotic arm and drive wheels to perform differentiated recovery operations, resulting in the inability to effectively recover the robot after it has been hijacked. This application solves this problem through its recovery operations, achieving efficient and reliable robot recovery. Furthermore, by using differentiated recovery operations, it avoids redundancy and unnecessary resource consumption, thus improving recovery efficiency.
[0073] In some embodiments, the preset duration can be adjusted according to the actual working conditions of the robot.
[0074] For example, if the robot is frequently hijacked for short periods during historical operations, i.e., briefly suspended in mid-air, such as when users frequently check the cleaning robot's performance, the preset duration can be reduced, for example, from 5 seconds to 3 seconds, to decrease false triggers. If the robot is hijacked less frequently during historical operations, the preset duration can be increased, for example, from 5 seconds to 7 seconds, to avoid misjudgments caused by short-term vibrations.
[0075] Furthermore, the preset duration can be adjusted using machine learning models, such as decision trees based on historical data.
[0076] By adjusting the preset duration, the scenario adaptability of the robot's control method can be improved, making the solution more flexible and effective.
[0077] The robot control method provided in this application first records the duration of the robot's suspension state when it is hijacked. The duration is used to determine whether there is a risk of operational abnormality after the robot re-consumes on the support surface, i.e., whether it can resume normal operation directly. This allows for targeted subsequent operations, improving the efficiency of robot control and the cost-effectiveness of maintenance. Then, if the suspension duration is long (exceeding a preset time), the robot cannot overcome the risk of center-of-gravity shift through its own inertia. In this case, differentiated recovery operations are performed based on the state of the robot's robotic arm and drive wheels. This ensures that the robot can still operate safely and stably after being hijacked for a long time under various working conditions, preventing task interruption due to robot imbalance and guaranteeing the smoothness and reliability of robot operation.
[0078] In one possible implementation, if the duration is less than or equal to a preset duration, the robot is controlled to return to its working state before being suspended after it is in contact with the support surface.
[0079] When the robot remains suspended for a short period, the associated safety risks are manageable. Upon re-contacting the support surface, the robot can rely on its inertia to continue operating. Therefore, if the duration is less than or equal to a preset time, the robot can be controlled to return to its previous working state after contacting the support surface.
[0080] Specifically, if the duration is less than or equal to the preset duration, after the robot is in contact with the support surface, the working state of the robot before it was in the suspended state is read, and the robot is controlled to return to the working state before it was in the suspended state.
[0081] In some embodiments, the presence of the robot in contact with the support surface can be determined using sensors mounted on the robot, such as distance sensors, pressure sensors, or cameras. Alternatively, the presence of the robot in contact with the support surface can be determined by the robot's operational status.
[0082] By directly restoring the robot to its previous working state after a short period of suspension, the robot can continue operating after a brief suspension due to obstacles or uneven support surfaces without needing to restart the robot. This reduces hardware wear and tear caused by frequent robot restarts and ensures rapid handling of short-term suspensions, further guaranteeing the smoothness of robot operation.
[0083] Optionally, after determining the duration of the robot being in a suspended state in response to the robot being in a suspended state, the method further includes: when the duration is greater than a preset duration, acquiring the state of the robot's robotic arm and the state of the drive wheels, so as to perform differentiated recovery operations based on the acquired states.
[0084] In this step, the state of the robotic arm and the drive wheel can be determined based on the control commands given to the robotic arm and the drive wheel.
[0085] Specifically, if the duration exceeds a preset time, the system acquires the last control command issued to the robotic arm and the time of its issuance, such as controlling its extension or retraction. Based on the last control command and its issuance time, the system determines the state of the robotic arm. The system also acquires the last control command issued to the drive wheels, such as controlling their operation or stop. Based on the last control command, the system determines the state of the drive wheels.
[0086] In this step, sensors, such as cameras, can also be installed on the robot. The cameras capture multiple frames of images of the robotic arm and drive wheels, and the state of the robotic arm and drive wheels is determined based on the images.
[0087] Figure 3 This is a flowchart illustrating a differentiated recovery operation provided in an embodiment of this application. The method provided in this embodiment is a detailed explanation of the differentiated recovery operation performed in step S202 based on the state of the robot's robotic arm and the state of its drive wheels. For example... Figure 3 As shown, after a duration exceeding a preset time, the differentiated recovery operation includes the following steps:
[0088] Step S2021: When the duration is longer than the preset duration, collect the state of the robot's robotic arm and the state of the drive wheels.
[0089] In this embodiment, the states of the robotic arm include: an extended state and a retracted state after picking up an object. In the extended state, the end effector of the robotic arm is outside the vertical projection range of the robot. In the retracted state, the robotic arm holds an object and the end effector of the robotic arm is within the vertical projection range of the robot.
[0090] The extended state refers to the state in which the robotic arm is in the process of grasping an item, including when the robotic arm is grasping an item but has not yet grasped an item, and when it has already grasped an item.
[0091] When the end effector of the robotic arm is within the vertical projection range of the robot, the torque distribution of the robotic arm joints is more balanced, the overall center of gravity of the robot is more stable, and the risk of tilting after contacting the support surface is smaller.
[0092] The states of the drive wheels include: non-drive state and driving state.
[0093] Step S2022: If the robotic arm is in the extended state, the drive wheel is in the non-driven state, and the elastic connection between the drive wheel and the robot body is in the locked state, then keep the elastic connection in the locked state and control the robot to enter the standby, power off, or power-off state.
[0094] In this embodiment, the drive wheels are in a non-driven state and cannot drive the robot to walk. In addition to the parameters characterizing the driving state mentioned above, the state of the drive wheels also includes the elastic connection state between the drive wheels and the robot body.
[0095] The elastic connection between the drive wheels and the robot body includes locked and unlocked states. In the locked state, the elastic plate between the drive wheels and the robot body is locked, preventing the robot from lifting, but allowing it to walk horizontally normally. The elastic plate is a flexible component between the drive wheels and the robot body that controls the lifting of the robot body.
[0096] When the robot uses its robotic arm to grasp an object, the elastic plate is locked, meaning the elastic connection between the drive wheel and the robot body is locked to ensure the robot's stability and grasping accuracy. If it is not locked while grasping an object, the robot's center of gravity may become unstable, causing it to tilt. When the robot moves, including while grasping an object and when not grasping one, the elastic connection between the drive wheel and the robot body can be locked or unlocked. Therefore, the corresponding recovery operation differs depending on the elastic connection state between the drive wheel and the robot body.
[0097] Specifically, if the robotic arm is in an extended state (e.g., the robotic arm is grasping an item but has not yet grasped it, or has already grasped an item), the drive wheel is in a non-drive state, and the elastic connection between the drive wheel and the robot body is in a locked state, then the robot is in a non-center-of-gravity stable state. In this case, the elastic connection is kept in a locked state, and control commands are generated to control the robot to enter a standby, power-off, or power-off state.
[0098] In some embodiments, a locking sensor, such as an electromagnetic lock status detection sensor, installed on the drive wheel can determine whether the elastic connection between the drive wheel and the robot body is in a locked state. For example, if the locking sensor of the drive wheel detects that the electromagnetic lock is active, it is determined that the robot is in a locked state. Alternatively, the robot's control commands can be used to determine whether the elastic connection between the drive wheel and the robot body is in a locked state.
[0099] Step S2023: After the robot is in contact with the support surface, control the robot to enter the power-on state, retract the robotic arm to the projection range, release the lock state, and control the drive wheel to perform a reset operation.
[0100] The drive wheel poses include zero position, raised position, and obstacle-crossing position. The zero position is the reference working pose of the drive wheel, the basic position for normal robot movement. The raised position is the pose where the robot body is raised to a certain height via a connecting rod that extends from the drive wheel to the robot body. The obstacle-crossing position is a different pose set for each drive wheel to cross obstacles (such as thresholds, carpet edges, protrusions, etc.). By setting the drive wheel poses, the robot body's tilt angle can be adjusted, enabling the robot to efficiently pass through obstacles.
[0101] The reset operation refers to the operation of restoring the drive wheels to their initial position (i.e., the zero position). For example, restoring the drive wheels that are in the raised or obstacle-crossing position to the zero position.
[0102] In this step, after the robot, which has entered standby, power-off, or power-off state, is in contact with the support surface, the robot is reactivated, i.e., controlled to enter the power-on state. Then, a command is sent to retract the robotic arm, bringing it back to the robot's vertical projection range. Next, the locking state is released, and the drive wheels are controlled to perform a reset operation to zero.
[0103] After the reset operation is completed, the robot can work normally.
[0104] Optionally, after the robot is in contact with the support surface, before retracting the robotic arm to within the projection range, the method further includes: controlling the robotic arm to put down the gripped item.
[0105] Specifically, if the robotic arm is still holding an item (i.e., the extended state indicates that an item has been grasped), then after the robot is in contact with the support surface, the robot can be controlled to enter the power-on state, generating control commands to instruct the robotic arm to put the grasped item down, such as placing it on the ground or in a designated location, such as the storage area on top of the robot. Then, the robot is controlled to enter the power-on state, retract the robotic arm to within the projection range, release the lock state, and control the drive wheels to perform a reset operation to zero.
[0106] In this embodiment, the method further includes: determining whether the robotic arm has grasped an item.
[0107] Specifically, sensors, such as force sensors and pressure sensors, can be installed on the robotic arm to detect the magnitude of the gripping force. If the gripping force is greater than or equal to a preset gripping force threshold, it is determined that the robotic arm has grasped an item.
[0108] In some embodiments, after determining that the robotic arm has gripped an item, the method of putting the gripped item down can also be determined by the magnitude of the gripping force.
[0109] For example, if the gripping force is less than or equal to the first gripping force, it means the robotic arm is gripping a lightweight item. In this case, a rapid release method can be used to put the gripped item down, such as quickly releasing the gripper of the robotic arm. If the gripping force is greater than the first gripping force, it means the robotic arm is gripping a heavy object. In this case, a gradual release mode can be used, such as lowering the robotic arm to a certain height before releasing the gripper, to avoid damage caused by sudden release of the object.
[0110] This method ensures the applicability of the process of releasing and grabbing items, taking into account both release efficiency and the safety of grabbing items.
[0111] This embodiment implements a recovery mechanism for scenarios where the robotic arm is holding an item, avoiding the problem of the robot tilting due to the robotic arm not releasing the item in time, improving the scenario applicability of the method, and further ensuring the stability of robot operation.
[0112] For example, Figure 4a This is a schematic diagram illustrating a scenario for performing differentiated recovery operations, provided as an embodiment of this application. For example... Figure 4a As shown, when the robot is suspended in the air, the robotic arm is in the extended state, and the gripper of the robotic arm is holding an object. Simultaneously, the drive wheels are in the non-driven state, and the elastic connection between the drive wheels and the robot body is in the locked state (one end of the elastic plate being connected to the robot body indicates a locked state, and one end not connected to the robot indicates an unlocked state). Under this condition, if the duration exceeds a preset time, the locked state is maintained, and the robot is controlled to enter standby, power-off, or power-off state. After the robot contacts the support surface (e.g., ...), ... Figure 4a The robot (described by the dashed line) is controlled to enter the power-on state, and the robotic arm is controlled to put down the gripped item, retract the robotic arm to within the projection range, release the locking state, and control the drive wheel to perform a reset operation (such as...). Figure 4a The robot described by the dashed line.
[0113] In step S2024, if the robotic arm is in the state of retracting after picking up an object and the drive wheel is in the walking state, then control or maintain the elastic connection between the drive wheel and the robot body in the locked state, and control the robot to enter the standby, power off or power-off state.
[0114] In this step, when the robotic arm is in the retracted state after picking up the object and the drive wheel is in the walking state, the elastic connection between the drive wheel and the robot body may be locked or unlocked.
[0115] If the robotic arm is in the object-retrieval state, the drive wheels are in the walking state, and the elastic connection between the drive wheels and the robot body is locked, then the elastic connection between the drive wheels and the robot body will remain locked, and the robot will be controlled to enter standby, power-off, or power-off state via commands. If the robotic arm is in the object-retrieval state, the drive wheels are in the walking state, and the elastic connection between the drive wheels and the robot body is not locked, then the elastic connection between the drive wheels and the robot body will be locked, and the robot will be controlled to enter standby, power-off, or power-off state via commands.
[0116] In step S2025, after the robot is in contact with the support surface, control the robot to enter the power-on state, release the lock state, and control the drive wheel to perform a reset operation.
[0117] In this step, after the robot is in contact with the support surface, it is in a stable state of center of gravity and does not need to retract the robotic arm. The locking state can be directly released, and the drive wheel can be controlled to perform a reset operation to zero.
[0118] After the drive wheels are reset to zero, the robot can work normally.
[0119] For example, Figure 4b This is a schematic diagram illustrating another scenario for performing differentiated recovery operations, provided as an embodiment of this application. For example... Figure 4b As shown, when the robot is suspended in the air, the robotic arm is in the retracted state after picking up the object, the drive wheels are in the walking state, and the elastic connection between the drive wheels and the robot body can be in a locked state or an unlocked state. Figure 4b (Taking the non-locked state as an example). In this condition, if the duration exceeds the preset time, the control switches to a locked state, and the robot enters standby, power-off, or power-off mode. After the robot contacts the support surface, the control switches the robot to power-on mode, releases the lock state, and controls the drive wheels to perform a reset operation to zero. Continue to refer to... Figure 4b Before the reset operation is performed, the drive wheel is in the raised position; after the reset operation is performed, the drive wheel is in the zero position.
[0120] In this embodiment, differentiated recovery operations are designed based on the state of the robotic arm and whether the drive wheels are moving or locked. This avoids stability issues caused by the robotic arm extending and causing imbalance or the drive wheels locking, resulting in higher safety. Furthermore, the process is clear and straightforward during subsequent execution, avoiding redundant operations and reducing system power consumption. Simultaneously, when the robot is suspended in the air, it is controlled to enter standby, shutdown, or power-off states, mitigating safety risks from the outset and protecting the robot's hardware and the environment. In addition, after the robot contacts the support surface, the locking is released and the drive wheels are reset to zero, ensuring that the robot can quickly and safely resume work after being placed on the ground, reducing safety risks caused by improper recovery operations.
[0121] In one possible implementation, based on the state of the robot's robotic arm and the state of the drive wheel, a differentiated recovery operation is performed, including: if the robotic arm is in an extended state, the drive wheel is in a non-driven state, and the elastic connection between the drive wheel and the robot body is in a locked state, then the elastic connection is kept in the locked state, the robotic arm is retracted to within the robot's vertical projection range, and the robot is controlled to enter a standby, power-off, or power-off state; in the extended state, the end of the robotic arm is located outside the robot's vertical projection range; after the robot is in contact with the support surface, the robot is controlled to enter the power-on state, the locked state is released, and the drive wheel is controlled to perform a reset operation to zero.
[0122] In this embodiment, when the robotic arm is in the extended state, the drive wheel is in the non-driven state, and the elastic connection between the drive wheel and the robot body is in the locked state, the robotic arm can be forcibly retracted first to avoid the risk of displacement that may occur when the robotic arm is exposed outside the projection range when the robot is suspended in the air, and then subsequent operations can be performed.
[0123] Specifically, if the robotic arm is in the extended state, the drive wheel is in the non-driven state, and the elastic connection between the drive wheel and the robot body is in the locked state, the robot is in a non-center-of-gravity stable state. Then, the elastic connection is kept in the locked state, and the robotic arm is retracted by sending a command to return it to the vertical projection range of the robot. Control commands are then generated to control the robot to enter standby, power off, or power-off states.
[0124] After the robot, which has entered standby, power off, or power-off state, is in contact with the support surface, the robot is reactivated, that is, the robot is controlled to enter the power-on state, the locked state is released, and the drive wheel is controlled to perform a reset operation to zero.
[0125] For example, Figure 4c This is a schematic diagram illustrating another scenario for performing differentiated recovery operations, provided as an embodiment of this application. For example... Figure 4c As shown, when the robot is suspended in the air, the robotic arm is extended, the drive wheels are in a non-driven state, and the elastic connection between the drive wheels and the robot body is locked. Under this condition, if the duration exceeds a preset time, the locked state is maintained, the robotic arm is retracted to within the robot's vertical projection range, and the robot is controlled to enter standby, power-off, or power-off state. After the robot contacts the support surface, the robot is controlled to enter the power-on state, the locked state is released, and the drive wheels are controlled to perform a reset operation to zero.
[0126] By retracting the robotic arm while it is suspended in the air, compared to retracting it after the robot contacts the support surface, the robot avoids the end of the robotic arm extending beyond the robot body and colliding with surrounding people or objects, thus preventing mechanical damage to the robot or surrounding people or objects and ensuring the safety of the robot and surrounding people or objects. At the same time, retracting it while it is suspended in the air allows the robotic arm to distribute the force more evenly, stabilizing the robot's overall center of gravity and reducing swaying and vibration when the robot contacts the support surface, further improving the robot's stability.
[0127] In one possible implementation, the robot provided in this embodiment may include, in addition to the robotic arm and drive wheels, one or more of a sensor system, a camera, a photoelectric sensor, and a pressure sensor.
[0128] In some embodiments, the robot is equipped with a sensor system, and the robot control method further includes: determining whether the robot is in a suspended state based on the pose information and / or pressure information detected by the sensor system.
[0129] The sensor system is used to detect the robot's pose and / or pressure information.
[0130] A sensor system can be used to determine whether a robot is suspended in mid-air, and can consist of one or more sensors. For example, a sensor system may include a pressure sensor and / or an accelerometer.
[0131] Specifically, the pose information detected by the sensor system can accurately determine the robot's position and angle, and the pressure information detected by the sensor system can determine whether it is in contact with the support surface, and thus whether the robot is in a suspended state.
[0132] For example, if the pressure information indicates a change in the vertical pressure (i.e., the rate of change is greater than or equal to a preset first rate of change), or the pressure is less than or equal to a pressure threshold, then the robot is determined to be in a suspended state. If the pose information indicates that the robot is tilted at an angle, then the robot is determined to be in a suspended state. Determining whether a robot is in a suspended state using a sensor system is simple, accurate, and easy to implement.
[0133] In some embodiments, the robot is equipped with a sensor system, and the robot control method further includes: determining whether the robot is in contact with a support surface based on the pose information and / or pressure information detected by the sensor system.
[0134] The sensor system is used to detect the robot's pose and / or pressure information.
[0135] Specifically, the pose information detected by the sensor system can accurately determine the robot's position and angle, and the pressure information detected by the sensor system can determine whether it is in contact with the support surface, and thus determine whether the robot is in contact with the support surface.
[0136] Sensor systems can quickly and accurately determine whether a robot is in contact with a support surface, thereby improving the efficiency and accuracy of robot control methods.
[0137] In some embodiments, the robot is equipped with a camera, and the robot control method further includes: determining the state of the robotic arm based on images of the robotic arm captured by the camera.
[0138] The camera can be a visible light camera or an infrared camera. The camera can be mounted on the robot and can capture images of the robotic arm's location.
[0139] Specifically, the camera captures at least one frame of the robotic arm image, and the state of the robotic arm is determined based on the posture of the robotic arm in the image.
[0140] By using cameras to determine the state of the robotic arm, compared to other sensors, it is possible to capture more comprehensive physical state details of the robotic arm, avoiding misjudgments of the robotic arm's state and achieving efficient and accurate determination of the robotic arm's state. In some embodiments, the robot is equipped with photoelectric sensors or pressure sensors, and the robot control method further includes: determining the elastic connection state between the drive wheels and the robot body based on the data collected by the photoelectric sensors or pressure sensors.
[0141] Photoelectric sensors are components that achieve non-contact state detection by emitting and receiving light signals. They can be used to determine the posture of elastic sheets or the connection between drive wheels and the robot body.
[0142] Photoelectric sensors or pressure sensors can be installed in the connection between the drive wheel and the robot body, such as on an elastic sheet, to detect the state of the elastic connection.
[0143] Specifically, a photoelectric sensor emits a light signal to the elastic plate connecting the drive wheel and the robot body, and receives the returned light signal. The physical orientation of the elastic plate is determined by the returned light signal, thereby determining the elastic connection state between the drive wheel and the robot body—that is, whether the elastic connection is locked. Alternatively, a pressure sensor detects the pressure on the elastic plate, and the corresponding elastic connection state is used to determine whether the elastic connection between the drive wheel and the robot body is locked.
[0144] By using photoelectric sensors or pressure sensors to detect the elastic connection status, the detection accuracy is higher, avoiding the problem of incorrect locking status judgment caused by the elastic sheet not executing control commands.
[0145] In some embodiments, the robot control method further includes: determining whether the drive wheels are in a walking state based on the wheel speed of the drive wheels.
[0146] The wheel speed of a drive wheel is the speed at which it rotates per unit time. This can be calculated by installing an incremental encoder on the motor shaft of the drive wheel and collecting the number of rotations per unit time. Alternatively, the robot's built-in positioning module can be used to collect the distance the robot travels per unit time, and then calculate the wheel speed.
[0147] In this step, if the speed of the drive wheel is greater than or equal to the preset speed, the drive wheel is determined to be in a walking state.
[0148] Determining whether a vehicle is in a walking state by measuring wheel speed is a simple and easy-to-implement method.
[0149] In some embodiments, after performing differentiated recovery operations, the robot's state, including the state of the robotic arm and the state of the drive wheels, can be further verified by components mounted on the robot, including one or more of a sensor system, camera, photoelectric sensor, or pressure sensor, to confirm whether the recovery operation was successfully executed.
[0150] For example, a camera can be used to detect whether the gripped item has been put down or whether the robotic arm has retracted.
[0151] By performing verification after the recovery operation, the problem of incomplete recovery process due to single point of failure is avoided, thus improving the reliability of robot control.
[0152] Figure 5 This is a flowchart illustrating another robot control method provided in an embodiment of this application. To better understand the robot control method provided in this embodiment, the method will be described in detail below. Figure 5 As shown, the method provided in this embodiment includes:
[0153] Step S501: In response to the robot being in a suspended state, determine the duration of the robot being in a suspended state.
[0154] In step S502, if the duration is less than or equal to the preset duration, after the robot is in contact with the support surface, control the robot to return to the working state before it was in the suspended state.
[0155] In step S503, if the duration is longer than the preset duration, a differentiated recovery operation is performed based on the state of the robot's robotic arm and the state of the drive wheels.
[0156] The differentiated recovery process includes the following steps:
[0157] Step S5031: Determine whether the robotic arm is in the retracted state after picking up an object or in the folded state. If yes, proceed to step S5032; if no, that is, the robotic arm is in the extended state, proceed to step S5034.
[0158] Step S5032: Control or maintain the elastic connection between the drive wheel and the robot body in a locked state, and control the robot to enter standby, power off, or power-off state.
[0159] Step S5033: After the robot is in contact with the support surface, control the robot to enter the power-on state, release the lock state, and control the drive wheel to perform a reset operation.
[0160] Step S5034: Determine whether the robotic arm has picked up an item. If yes, proceed to step S5035; otherwise, proceed to step S5038.
[0161] In this embodiment, when the robotic arm is in the extended state, the drive wheel is in the non-driven state and the elastic connection between the drive wheel and the robot body is in the locked state.
[0162] Step S5035: Keep the elastic connection in a locked state and control the robot to enter standby, power off or power off state.
[0163] Step S5036: After the robot is in contact with the support surface, control the robot to enter the power-on state and control the robotic arm to put down the gripped item.
[0164] Step S5037: Retract the robotic arm to within the projection range, release the lock, and control the drive wheel to perform a reset operation.
[0165] Step S5038: Keep the elastic connection between the drive wheel and the robot body locked, and control the robot to enter standby, power off or power off state.
[0166] Step S5039: After the robot is in contact with the support surface, control the robot to enter the power-on state, retract the robotic arm to the projection range, release the lock state, and control the drive wheel to perform a reset operation.
[0167] The robot control method provided in this embodiment is similar in principle and technical effect to the robot control method provided in the above embodiments, and will not be described in detail here.
[0168] Figure 6 This is a schematic diagram of a robot control device provided in an embodiment of this application. The robot is equipped with a robotic arm and drive wheels. The drive wheels are used to propel the robot forward, and the robotic arm is used to grip objects along its path. Figure 6 As shown, the robot control device provided in this embodiment includes a duration determination module 601 and a recovery operation execution module 602.
[0169] The duration determination module 601 is used to determine the duration of the robot being in a suspended state in response to the robot being in a suspended state; the recovery operation execution module 602 is used to perform differentiated recovery operations based on the state of the robot's robotic arm and the state of the drive wheels if the duration is greater than a preset duration.
[0170] Optionally, the recovery operation execution module 602 is specifically used for:
[0171] If the robotic arm is in the extended state, the drive wheel is in the non-driven state, and the elastic connection between the drive wheel and the robot body is in the locked state, then the elastic connection is kept in the locked state, and the robot is controlled to enter the standby, power-off, or power-off state; in the extended state, the end of the robotic arm is outside the vertical projection range of the robot; after the robot is in the contact support surface state, the robot is controlled to enter the power-on state, the robotic arm is retracted to within the projection range, the locked state is released, and the drive wheel is controlled to perform a reset operation to zero.
[0172] Optionally, if the robotic arm has an item in its grip, the operation execution module 602 is restored and further used for:
[0173] After the robot is in contact with the support surface, before retracting the robotic arm to within the projection range, control the robotic arm to put down the gripped item.
[0174] Optionally, the recovery operation execution module 602 is specifically used for:
[0175] If the robotic arm is in the object-retrieval state and the drive wheels are in the walking state, then the elastic connection between the drive wheels and the robot body is controlled or maintained in the locked state, and the robot is controlled to enter the standby, power-off, or power-off state; in the object-retrieval state, the robotic arm has an object in its grip and the end of the robotic arm is within the vertical projection range of the robot; after the robot is in the contact support surface state, the robot is controlled to enter the power-on state, the locked state is released, and the drive wheels are controlled to perform a reset operation to zero.
[0176] Optionally, the recovery operation execution module 602 is specifically used for:
[0177] If the robotic arm is in the extended state, the drive wheel is in the non-driven state, and the elastic connection between the drive wheel and the robot body is in the locked state, then maintain the locked state of the elastic connection, retract the robotic arm to within the robot's vertical projection range, and control the robot to enter standby, power-off, or power-off state; in the extended state, the end of the robotic arm is outside the robot's vertical projection range; after the robot is in contact with the support surface, control the robot to enter the power-on state, release the locked state, and control the drive wheel to perform a reset operation to zero.
[0178] Optionally, the robot's control unit also includes a direct recovery module for:
[0179] If the duration is less than or equal to the preset duration, the robot will be controlled to return to its working state before it was in the suspended state after it is in contact with the support surface.
[0180] Optionally, the robot's control device also includes a status acquisition module, used for:
[0181] In response to the robot being in a suspended state, after determining the duration of the robot being in a suspended state, if the duration is greater than a preset duration, the state of the robot's robotic arm and the state of the drive wheels are collected, so as to perform differentiated recovery operations based on the collected states.
[0182] Optionally, the robot also includes a sensor system for detecting the robot's pose and / or pressure information. The robot's control unit further includes a hovering state recognition module for:
[0183] Based on the pose and / or pressure information detected by the sensor system, determine whether the robot is in a suspended state.
[0184] Optionally, the robot is equipped with a camera, and the robot's control device also includes a robotic arm status recognition module for:
[0185] The state of the robotic arm is determined based on images captured by a camera.
[0186] Optionally, the robot is equipped with photoelectric sensors or pressure sensors, and the robot's control device also includes a drive wheel status recognition module for:
[0187] Based on data collected by photoelectric sensors or pressure sensors, the elastic connection state between the drive wheels and the robot body is determined.
[0188] Optionally, the robot's control device also includes a walking state recognition module, used for:
[0189] Based on the wheel speed of the drive wheels, determine whether the drive wheels are in a walking state.
[0190] Optionally, the robot also includes a sensor system for detecting the robot's pose and / or pressure information; the robot's control device also includes a dehijacking determination module for:
[0191] Based on the pose and / or pressure information detected by the sensor system, determine whether the robot is in contact with the support surface.
[0192] The robot control device provided in this embodiment can execute the method provided in the above method embodiment. Its implementation principle and technical effect are similar, and will not be described in detail here.
[0193] Figure 7 This is a schematic diagram of the structure of a robot provided in an embodiment of this application. Figure 7As shown, the robot 70 provided in this embodiment includes: a robot body 710, a robotic arm 720 disposed on the robot body 710, drive wheels 740, and a controller 730. The controller 730 is communicatively connected to the robotic arm 720.
[0194] The drive wheel 740 is used to drive the robot 70 to move; the robotic arm 720 is used to grip objects in the path of movement.
[0195] In the specific implementation process, the controller 730 executes the stored computer execution instructions, causing the controller 730 to perform the above-mentioned method.
[0196] The specific implementation process of controller 730 can be found in the above method embodiment, and its implementation principle and technical effect are similar, so it will not be repeated here.
[0197] In the above embodiments, it should be understood that the controller 730 can be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), etc. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the method disclosed in this invention can be directly implemented by a hardware processor, or implemented by a combination of hardware and software modules within the processor.
[0198] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the above-described method.
[0199] This application also provides a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, implement the above-described method.
[0200] The aforementioned readable storage medium can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk. The readable storage medium can be any available medium accessible to a general-purpose or special-purpose computer.
[0201] An exemplary readable storage medium is coupled to a processor, enabling the processor to read information from and write information to the readable storage medium. Of course, the readable storage medium can also be a component of the processor. The processor and the readable storage medium can reside in an Application Specific Integrated Circuit (ASIC). Alternatively, the processor and the readable storage medium can exist as discrete components in the device.
[0202] The division of units is merely a logical functional division; in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be indirect coupling or communication connection through some interfaces, devices, or units, and may be electrical, mechanical, or other forms.
[0203] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0204] In addition, the functional units in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.
[0205] If a function is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this invention, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0206] Those skilled in the art will understand that all or part of the steps of the above-described method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When executed, the program performs the steps of the above-described method embodiments; and the aforementioned storage medium includes various media capable of storing program code, such as ROM, RAM, magnetic disks, or optical disks.
[0207] Finally, it should be noted that other embodiments of the invention will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This invention is intended to cover any variations, uses, or adaptations of the invention that follow the general principles of the invention and include common knowledge or customary techniques in the art not disclosed herein, and is not limited to the precise structures described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of the invention is limited only by the appended claims.
Claims
1. A method for controlling a robot, characterized in that, The robot is equipped with a robotic arm and drive wheels. The drive wheels are used to propel the robot forward, and the robotic arm is used to grip objects in its path. The method includes: In response to the robot being in a suspended state, determine the duration of the robot being in the suspended state; If the duration exceeds the preset duration, a differentiated recovery operation is performed based on the state of the robot's robotic arm and the state of the drive wheels.
2. The method according to claim 1, characterized in that, The differentiated recovery operation, based on the state of the robot's robotic arm and the state of its drive wheels, includes: If the robotic arm is in an extended state, the drive wheel is in a non-driven state, and the elastic connection between the drive wheel and the robot body is in a locked state, then the elastic connection is kept in the locked state, and the robot is controlled to enter a standby, power-off, or power-off state; in the extended state, the end of the robotic arm is located outside the vertical projection range of the robot. After the robot is in contact with the support surface, control the robot to enter the power-on state, retract the robotic arm to the projection range, release the locking state, and control the drive wheel to perform a reset operation.
3. The method according to claim 2, characterized in that, If the robotic arm has grasped an item, then after the robot is in contact with the support surface, before retracting the robotic arm to within the projection range, the method further includes: Control the robotic arm to put down the gripped item.
4. The method according to claim 1, characterized in that, The differentiated recovery operation, based on the state of the robot's robotic arm and the state of its drive wheels, includes: If the robotic arm is in the retracted state after picking up an item and the drive wheel is in the walking state, then the elastic connection between the drive wheel and the robot body is controlled or maintained in the locked state, and the robot is controlled to enter the standby, power-off or power-off state; in the retracted state after picking up an item, the robotic arm has picked up an item and the end of the robotic arm is within the vertical projection range of the robot. After the robot is in contact with the support surface, control the robot to enter the power-on state, release the locking state, and control the drive wheel to perform a reset operation to zero.
5. The method according to claim 1, characterized in that, The differentiated recovery operation, based on the state of the robot's robotic arm and the state of its drive wheels, includes: If the robotic arm is in the extended state, the drive wheel is in the non-driven state, and the elastic connection between the drive wheel and the robot body is in the locked state, then the elastic connection is kept in the locked state, the robotic arm is retracted to within the vertical projection range of the robot, and the robot is controlled to enter standby, power-off, or power-off state; in the extended state, the end of the robotic arm is located outside the vertical projection range of the robot. After the robot is in contact with the support surface, control the robot to enter the power-on state, release the locking state, and control the drive wheel to perform a reset operation to zero.
6. The method according to any one of claims 1-5, characterized in that, The method further includes: If the duration is less than or equal to the preset duration, then after the robot is in contact with the support surface, the robot is controlled to return to the working state before it was in the suspended state.
7. The method according to any one of claims 1-5, characterized in that, After determining the duration of the robot being in a suspended state in response to the robot being in a suspended state, the method further includes: When the duration exceeds the preset duration, the state of the robot's robotic arm and the state of its drive wheels are collected to perform differentiated recovery operations based on the collected states.
8. The method according to any one of claims 1-5, characterized in that, The robot further includes a sensor system for detecting the robot's pose information and / or pressure information, and the method further includes: Based on the pose information and / or pressure information detected by the sensor system, it is determined whether the robot is in a suspended state.
9. The method according to any one of claims 1-5, characterized in that, The robot is equipped with a camera, and the method further includes: The state of the robotic arm is determined based on the images of the robotic arm captured by the camera.
10. The method according to any one of claims 2-4, characterized in that, The robot is equipped with a photoelectric sensor or a pressure sensor, and the method further includes: Based on the data collected by the photoelectric sensor or pressure sensor, the elastic connection state between the drive wheel and the robot body is determined.
11. The method according to claim 4, characterized in that, The method further includes: Based on the wheel speed of the drive wheel, determine whether the drive wheel is in a walking state.
12. The method according to any one of claims 2-5, characterized in that, The robot further includes a sensor system for detecting the robot's pose information and / or pressure information; the method further includes: Based on the pose information and / or pressure information detected by the sensor system, it is determined whether the robot is in contact with the support surface.
13. A control device for a robot, characterized in that, The robot is equipped with a robotic arm and drive wheels. The drive wheels are used to propel the robot forward, and the robotic arm is used to grip objects along its path. The device includes: A duration determination module is used to determine the duration of the robot being in the suspended state in response to the robot being in the suspended state; The recovery operation execution module is used to perform differentiated recovery operations based on the state of the robot's robotic arm and the state of the drive wheels if the duration is greater than a preset duration.
14. A robot, characterized in that, include: The robot body includes a robotic arm, drive wheels, and a controller. The drive wheels are used to drive the robot to move; The robotic arm is used to grip objects in the path of travel; The controller is used to perform the method as described in any one of claims 1-12.
15. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer-executable instructions, which, when executed by a processor, are used to implement the method as described in any one of claims 1-12.
16. A computer program product, characterized in that, Includes a computer program that, when executed by a processor, implements the method described in any one of claims 1-12.