Cleaning robot control method and device, cleaning robot and medium
By controlling the robot robot's robotic arm to enter the cabin when abnormalities occur, the problem of task failure and functional damage caused by robotic arm abnormalities is solved, and the task reliability and stability are improved.
Patent Information
- Application Number
- CN202510600426.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-09
- Publication Date
- 2025-07-08
Smart Images

Figure CN120267177A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the technical field of cleaning robots, and particularly to a control method, device, cleaning robot and medium for a cleaning robot. Background Art
[0002] A cleaning robot (such as a floor cleaning robot) is provided with a robotic arm, and tasks such as grasping, transporting, or storing can be performed through the robotic arm.
[0003] However, when the robotic arm is outside the cabin, for example, during the execution of tasks, various abnormal conditions may occur (such as the robotic arm being blocked by furniture). Once an abnormality occurs, if not intervened in time, the robotic arm will not only be unable to complete subsequent tasks, but also cause damage to the functions of the cleaning robot. Summary of the Invention
[0004] A control method, device, cleaning robot and medium for a cleaning robot provided by an embodiment of this application can improve the reliability and stability of the cleaning robot in performing tasks when an abnormality occurs while the robotic arm is outside the cabin, thereby improving the user experience.
[0005] To achieve the above object, the embodiments of this application adopt the following technical solutions:
[0006] In a first aspect, a control method for a cleaning robot is provided. The cleaning robot includes: a main body, a robotic arm provided on the main body, and a cabin for accommodating the robotic arm in a folded state. The method includes: obtaining information of the robotic arm when the robotic arm is outside the cabin; and controlling the robotic arm to enter the cabin when an abnormality is determined according to the information of the robotic arm.
[0007] Since in the embodiments of this application, when the cleaning robot determines that an abnormality has occurred while the robotic arm is outside the cabin according to the information of the robotic arm, controlling the robotic arm to enter the cabin can reduce the influence of unreliable reset of the robotic arm by the user, and can ensure the consistency of the posture of the robotic arm, reducing the error influence of the sensor feedback on the posture information of the robotic arm, thereby avoiding damage to the functions of the cleaning robot, improving the reliability and stability of the cleaning robot in performing tasks, and further improving the user experience. For example, compared with relying on sending a prompt message to the user to prompt the user to intervene and reset the robotic arm, controlling the robotic arm to enter the cabin can reduce the degree of dependence on user intervention during the recovery process of the robotic arm, and further reduce the influence caused by unreliable reset of the robotic arm by the user, thereby avoiding damage to the functions of the cleaning robot. Another example is that compared with resetting the robotic arm to a preparatory state, controlling the robotic arm to enter the cabin can further reset the robotic arm, thereby ensuring the consistency of the posture of the robotic arm, reducing the influence of sensor errors, and thus reducing the influence on the subsequent posture control of the robotic arm.
[0008] It can also be understood that when the robotic arm malfunctions outside the cabin, controlling the robotic arm to enter the cabin can also avoid affecting subsequent basic cleaning tasks. For example, when the robotic arm is stuck by the bed during the task execution, after the robotic arm enters the cabin, the cleaning robot can continue to perform the basic cleaning task, preventing the function of the cleaning robot from being damaged.
[0009] In a possible implementation, the information of the robotic arm includes the information of sensors for monitoring the working environment of the robotic arm and / or the information of motors for driving the robotic arm to adjust its posture. That is, during the process of the robotic arm performing tasks outside the cabin, the processor can determine abnormalities that may cause the robotic arm to malfunction through the information of sensors for monitoring the working environment of the robotic arm, and thus avoid the occurrence of abnormalities of the robotic arm in advance. In addition, the processor can determine the abnormalities that have occurred to the robotic arm through the information of motors for driving the robotic arm to adjust its posture.
[0010] In a possible implementation, when it is determined that an abnormality has occurred based on the information of the robotic arm, controlling the robotic arm to enter the cabin includes: when it is determined that the robotic arm malfunctions based on the information of the motor, controlling the cleaning robot to send a prompt message for prompting the user to intervene; in response to the user's operation instruction, controlling the robotic arm to enter the cabin. That is, when an abnormality occurs to the motor of the robotic arm, by sending a prompt message to the user to prompt the user to intervene, the user can timely intervene in the abnormality of the robotic arm. In addition, the processor controls the robotic arm to enter the cabin in response to the user's operation instruction, which can ensure that the robotic arm is in a state where it can be normally controlled at this time, thus avoiding the recurrence of abnormalities during the process of the processor controlling the robotic arm to enter the cabin.
[0011] In a possible implementation, the anomalies determined according to the information of the sensor include that the sensor fails and / or there is an obstacle within the movement range of the robotic arm. That is to say, when the sensor fails and / or there is an obstacle within the movement range of the robotic arm, the processor controls the robotic arm to enter the cabin, which can control the robotic arm to enter the cabin before the robotic arm has an anomaly, thereby reducing the need for user intervention. For example, in the case of a sensor failure, the processor cannot determine whether there may be an obstacle in the working range of the robotic arm, and there may be a risk that the robotic arm is stuck by an obstacle (which may cause the motor to overheat due to overcurrent). The processor controls the robotic arm to enter the cabin in advance to avoid potential risks. In addition, since the robotic arm has not had an anomaly yet, in this scenario, the processor can directly control the robotic arm to enter the cabin, thereby reducing the need for user intervention and also avoiding damage to the functions of the cleaning robot, improving the reliability and stability of the cleaning robot in performing tasks. Another example is that when the processor determines that there is an obstacle in the working range of the robotic arm according to the sensing data of the sensor, or predicts that there is an obstacle on the traveling path of the robotic arm during the movement of the body, the processor controls the robotic arm to enter the cabin to avoid potential risks, thereby reducing the need for user intervention and also avoiding damage to the functions of the cleaning robot, improving the reliability and stability of the cleaning robot in performing tasks.
[0012] In a possible implementation, the anomalies determined according to the information of the motor include at least one of the following: the temperature of the motor is outside the preset temperature range; the electrical parameters of the motor are outside the preset electrical parameter range; or the running time of the motor exceeds the preset time range, and the running time of the motor is the time for the motor to drive the robotic arm to adjust its posture. That is to say, based on the information of the motor used to drive the robotic arm to adjust its posture, the processor can reliably determine the anomalies that have occurred to the robotic arm.
[0013] In a possible implementation, the robotic arm includes a support arm mounted on the body, and the support arm rotates relative to the mounting surface on the body; controlling the robotic arm to enter the cabin includes: obtaining the attitude information of the robotic arm, where the attitude information includes the angle value of a first included angle, and the first included angle is the included angle between the support arm and the mounting surface; when it is determined according to the attitude information that the robotic arm is in a first attitude, controlling the robotic arm to adjust from the first attitude to a second attitude, the first attitude includes that the angle value of the first included angle is within a first preset angle range, and the first preset angle range is an angle range determined according to the state of the support arm outside the cabin, and the second attitude includes that the angle value of the first included angle is within a second preset angle range, and the second preset angle range is an angle range determined according to the state of the support arm accommodated in the cabin. That is to say, when the processor controls the robotic arm to enter the cabin due to the robotic arm, by obtaining the attitude information of the robotic arm, the attitude of the robotic arm when an abnormality occurs can be determined, and when the attitude of the robotic arm is the first attitude, the robotic arm is controlled to adjust to the second attitude, so that the action path of controlling the robotic arm to return to the cabin can be simplified according to the attitude of the robotic arm, thereby improving the efficiency and reliability of the processor controlling the robotic arm to return to the cabin.
[0014] In a possible implementation, controlling the robotic arm to enter the cabin further includes: when the angle value of the first included angle is outside the first preset angle range and the second preset angle range, controlling the robotic arm to adjust the first included angle to the first preset angle range. That is to say, when the processor determines according to the attitude information that the attitude of the robotic arm is an intermediate attitude between the first attitude and the second attitude, the processor controls the robotic arm to adjust the angle value of the first included angle to the first preset angle range (that is, controls the robotic arm to reset to the deployed state), which can eliminate the uncertainty during the process of the robotic arm entering the cabin, thereby improving the reliability of the processor controlling the robotic arm to return to the cabin.
[0015] In a possible implementation, controlling the robotic arm to adjust the first included angle to the first preset angle range includes: controlling the robotic arm to adjust the angle value of the first included angle to a preset angle within the first preset angle range, and the preset angle within the first preset angle range is an angle determined according to the sensor for detecting the angle value of the first included angle. That is to say, considering that the angle that the sensor for detecting the angle value of the first included angle can detect is limited, the processor controls the robotic arm to adjust the first included angle to the preset angle within the first preset angle range that the sensor can detect, which can adjust the attitude of the robotic arm to an accurate angle, thereby improving the reliability of the processor controlling the robotic arm to return to the cabin.
[0016] In a possible implementation, the second posture further includes: the angle value of the second included angle is the first angle, the second included angle is the included angle between the extending direction of the robotic arm and the length direction of the cabin body, and the first angle is an angle determined according to the entry or exit of the support arm into or from the cabin body. That is to say, the second posture further includes that the angle value of the second included angle is the first angle, so that the support arm can move towards the mounting surface to adjust the angle value of the first included angle to the second preset angle range.
[0017] In a possible implementation, controlling the robotic arm to enter the cabin body further includes: when the angle value of the second included angle is between the first angle and the second angle, controlling the robotic arm to adjust the angle value of the second included angle to the second angle, and the second angle is an angle determined according to the sensor for detecting the angle value of the second included angle. That is to say, considering that the angle that the sensor for detecting the angle value of the second included angle can detect is limited, the processor can adjust the posture of the robotic arm to an accurate angle by controlling the robotic arm to adjust the second included angle to the second angle that the sensor can detect, thereby improving the reliability of the processor to control the robotic arm to return to the cabin.
[0018] In a possible implementation, the robotic arm further includes a gripper; the first posture further includes that the third included angle is within the third preset angle range, the third included angle is the included angle between the jaws in the gripper and the central axis of the gripper, and the third preset angle range is an angle range determined according to the unfolded state of the gripper when it is not gripping an object, and the second posture further includes that the third included angle is within the fourth preset angle range, and the fourth preset angle range is an angle range determined according to the clamped state of the gripper when it is not gripping an object. That is to say, the first posture further includes the posture of the gripper in the unfolded state when it is not gripping an object, and the second posture further includes the posture of the gripper in the clamped state when it is not gripping an object. By adjusting the state of the gripper from the unfolded state to the clamped state, the controller can avoid the collision between the unfolded gripper and the side wall of the cabin body during the process of the robotic arm entering the cabin body.
[0019] In a possible implementation, controlling the robotic arm to enter the cabin body further includes: when the angle value of the third included angle is outside the third preset angle range and the fourth preset angle range, controlling the gripper to adjust the angle value of the third included angle to the third preset angle range. That is to say, when the processor determines that the gripper is in an intermediate state of gripping an object according to the posture information, the processor controls the gripper to adjust the third included angle to the third preset angle range (that is, controls the gripper to reset to the unfolded state when it is not gripping an object), which can prevent the object gripped by the gripper from blocking the cabin body, thereby eliminating the uncertainty during the process of the robotic arm entering the cabin body, and thus improving the reliability of the processor to control the robotic arm to return to the cabin.
[0020] In a possible implementation, controlling the clamping member to adjust the angular value of the third included angle to a third preset angular range includes: controlling the clamping member to adjust the angular value of the third included angle to a preset angle within the third preset angular range, and the preset angle within the third preset angular range is an angle determined according to a sensor for detecting the angular value of the third included angle. That is to say, considering the limited angle that the sensor for detecting the angular value of the third included angle can detect, the processor can adjust the attitude of the robotic arm to an accurate angle by controlling the clamping member to adjust the third included angle to the preset angle that the sensor can detect within the third preset angular range, thereby improving the reliability of the processor to control the robotic arm to return to the cabin.
[0021] In a possible implementation, the robotic arm further includes a connecting arm rotatable relative to the support arm and a working arm rotatable relative to the connecting arm; the second attitude further includes: the angular value of the included angle between the connecting arm and the support arm is within a fifth preset angular range, and the angular value of the included angle between the working arm and the connecting arm is within a sixth preset angular range. The fifth preset angular range is an angular range determined according to the state where the connecting arm is accommodated in the cabin, and the sixth preset angular range is an angular range determined according to the state where the working arm is accommodated in the cabin. That is to say, when the robotic arm further includes a connecting arm and a working arm, the second attitude further includes the attitude where the connecting arm and the working arm are accommodated in the cabin, thereby completing the retraction of the connecting arm and the working arm.
[0022] In a second aspect, a robot is provided, which includes: a body, a robotic arm disposed on the body, and a cabin for accommodating the robotic arm in a folded state. Among them, the body includes a processor, and the processor is used to implement various methods provided in the first aspect above.
[0023] In a third aspect, a control device is provided, which is used to implement various methods provided in the first aspect above. The control device can be the processor in the first aspect or any of its implementation manners, or a device including the above processor, such as a chip. The control device includes corresponding modules, units, or means for implementing the above methods. The modules, units, or means can be implemented by hardware, software, or by hardware executing corresponding software. The hardware or software includes one or more modules or units corresponding to the above functions.
[0024] In some possible designs, the control device may include a processing module. The processing module can be used to implement the processing functions in the first aspect and any of its possible implementation manners above.
[0025] In a fourth aspect, a control device is provided, including: at least one processor; the processor is used to execute a computer program or instruction so that the control device executes various methods provided in the first aspect above.
[0026] In one possible implementation, the control device further includes a memory. Optionally, the memory is coupled to the processor. The memory may be integrated with the processor, or the memory may be independent of the processor. Optionally, the processor is configured to execute computer programs or instructions stored in the memory.
[0027] In one possible implementation, the memory is independent of the control device.
[0028] In one possible implementation, the control device further includes a communication interface, which is configured to communicate with a module outside the control device (for example, an electronic device that establishes a wireless communication connection with a robot (such as a terminal (or a user equipment (UE)))).
[0029] The control device may be the processor in the first aspect or any implementation thereof above, or a device including the above processor, such as a chip.
[0030] In a fifth aspect, a computer-readable storage medium is provided. Computer programs or instructions are stored in the computer-readable storage medium. When running on a processor, the processor can execute the method in the first aspect or any implementation thereof above.
[0031] In a sixth aspect, a computer program product including instructions is provided. When running on a computer, the computer can execute the method in the first aspect or any implementation thereof above.
[0032] In a seventh aspect, a control device (for example, the control device may be a chip or a chip system) is provided. The control device includes a processor, which is configured to implement the functions involved in the first aspect or any implementation thereof above.
[0033] In some possible designs, the control device includes a memory, which is configured to store necessary program instructions and data.
[0034] In some possible designs, when the control device is a chip system, it may be composed of chips, or may include chips and other discrete devices.
[0035] Among them, the technical effects brought by any design in the second aspect to the seventh aspect can be referred to the technical effects brought by the first aspect above, and will not be elaborated here. BRIEF DESCRIPTION OF THE DRAWINGS
[0036] To more clearly illustrate the technical solutions in the embodiments of the present application, the following will briefly introduce the drawings required for the description of the embodiments. Obviously, the drawings in the following description are some embodiments of the present application. For those of ordinary skill in the art, without creative efforts, other drawings can also be obtained based on these drawings.
[0037] Figure 1 It is a schematic structural diagram of a cleaning robot provided by an embodiment of the present application;
[0038] Figures 2 - 3 It is a schematic structural diagram of a robotic arm provided by an embodiment of the present application;
[0039] Figure 4 It is a flowchart of a control method for a cleaning robot provided by an embodiment of the present application Figure 1 ;
[0040] Figure 5 It is a schematic structural diagram of another cleaning robot provided by an embodiment of the present application;
[0041] Figure 6 It is a flowchart of a control method for a cleaning robot provided by an embodiment of the present application Figure 2 ;
[0042] Figures 7 - 8 It is a schematic diagram of a control device for a cleaning robot provided by an embodiment of the present application. Detailed implementation manners
[0043] To facilitate the understanding of the embodiments of the present application, the following points are first explained before introducing the embodiments of the present application.
[0044] 1. To make the above objects, features, and advantages of the embodiments of the present application more obvious and understandable, the embodiments of the present application will be further described in detail below in conjunction with the drawings and specific implementation manners. Obviously, the embodiments described in the specific implementation manners are part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments of the present application, all other embodiments obtained by those of ordinary skill in the art without creative efforts belong to the scope protected by the present application.
[0045] 2. "Pre - defined" or "pre - configured" can be achieved by pre - saving the corresponding code, table, or other means that can be used to indicate relevant information in the device or apparatus. The embodiments of the present application do not limit the specific implementation methods thereof. Among them, "saving" can refer to saving in one or more memories. The one or more memories can be separately arranged, or integrated in the encoder or decoder, processor, or apparatus. The one or more memories can also be partially separately arranged and partially integrated in the decoder, processor, or apparatus. The type of memory can be any form of storage medium, and the embodiments of the present application do not limit this.
[0046] 3. In the embodiments of the present application, descriptions such as "when...", "in the case of...", "if", and "when" all refer to the situation where the device or apparatus will perform corresponding processing under certain objective circumstances, not limited to time, and do not require the device or apparatus to have a judgment action during implementation, nor does it mean there are other limitations.
[0047] 4. The establishment of a wireless connection involved in the embodiments of the present application can refer to a wireless connection established through a "communication protocol", and the "communication protocol" can refer to wireless fidelity (Wi - Fi), Bluetooth protocol, and related protocols applied to future communication systems. The embodiments of the present application do not limit this.
[0048] 5. In the description of the embodiments of the present application, unless otherwise specified, " / " means that the objects associated before and after are in an "or" relationship. For example, A / B may represent A or B. The "and / or" in the embodiments of the present application is only a description of the association relationship of the associated objects, indicating that there can be three relationships. For example, A and / or B may represent: A exists alone, A and B exist simultaneously, and B exists alone. Here, A and B can be singular or plural. Also, in the description of the embodiments of the present application, unless otherwise specified, "a plurality of" means two or more than two. "At least one (item)" or its similar expression refers to any combination of these items, including any combination of a single item or plural items. For example, at least one (item) of a, b, or c may represent: a, b, c, a - b, a - c, b - c, or a - b - c, where a, b, and c can be single or multiple. Additionally, for the convenience of clearly describing the technical solutions of the embodiments of the present application, in the embodiments of the present application, words such as "first" and "second" are used to distinguish identical or similar items with basically the same functions and effects. Those skilled in the art can understand that words such as "first" and "second" do not limit the quantity and execution order, and "first", "second", etc. do not necessarily mean different. At the same time, in the embodiments of the present application, words such as "exemplary" or "for example" are used to represent examples, illustrations, or explanations. Any embodiment or design solution described as "exemplary" or "for example" in the embodiments of the present application should not be construed as being more preferred or having more advantages than other embodiments or design solutions. Exactly speaking, using words such as "exemplary" or "for example" aims to present relevant concepts in a specific way for easy understanding.
[0049] 6. In the embodiments of the present application, words indicating directions or positional relationships such as "middle", "upper", "lower", "front", "rear", "vertical", "horizontal", "top", "bottom", "inner", or "outer" are used to illustrate the positional relationships of the components in the drawings. This is only for the convenience of description and does not indicate or imply that the indicated elements or structures, etc. must have a specific orientation, or be constructed and operated in a specific orientation. Therefore, it should not be understood as a limitation to the solutions disclosed in the embodiments of the present application.
[0050] In addition, the positional relationships of the components in the drawings can be appropriately changed according to the directions describing each component, without being limited to the positional relationships of the components in the above-described drawings. This is uniformly explained here and will not be elaborated further below.
[0051] 7. In the embodiments of the present application, "parallel", "perpendicular", and "equal" include: the described situations, as well as situations similar to the described situations, and the range of the similar situations is within the acceptable deviation range. Among them, the acceptable deviation range is determined, for example, by the measurement being discussed and the error associated with the measurement of a specific quantity (i.e., the limitations of the measurement system). For example, "parallel" includes absolute parallelism and approximate parallelism, and the acceptable deviation range of approximate parallelism can be, for example, within a deviation of 5°; "perpendicular" includes absolute perpendicularity and approximate perpendicularity, and the acceptable deviation range of approximate perpendicularity can also be, for example, within a deviation of 5°. "Equal" includes absolute equality and approximate equality, and within the acceptable deviation range of approximate equality, the difference between the two equal ones can be, for example, less than or equal to 5% of either one of them.
[0052] 8. In the embodiments of the present application, "about", "substantially", "essentially", or "approximately" include: the described value, as well as the average value within the acceptable deviation range of a specific value. Among them, the acceptable deviation range can be determined by the measurement being discussed and the error associated with the measurement of a specific quantity (i.e., the limitations of the measurement system).
[0053] 9. In the embodiments of the present application, unless otherwise clearly stated, terms such as "installed", "adjacent", "connected", or "coupled" should be understood in a broad sense. For example, the term "connected" includes: mechanical connection, or electrical connection, etc. Physically, the above mechanical connection, or electrical connection, etc. can refer to direct connection, or indirect connection through an intermediate member, or the communication inside two elements, etc. In addition, the forms of the above connection include: fixed connection, detachable connection, or integral connection, etc.
[0054] The following introduces the cleaning robot.
[0055] The cleaning robot is an intelligent cleaning device with self - moving function, such as a floor - sweeping robot, a mopping robot, a sweeping and mopping integrated robot, a floor polishing robot, or a weeding robot, etc.
[0056] Figure 1 It is a schematic structural diagram of a cleaning robot provided by the embodiments of the present application. It should be noted that Figure 1 it is exemplified by a floor - sweeping robot for illustration, and Figure 1 the structure and shape of the floor - sweeping robot shown are only for illustration and are not restrictive.
[0057] As Figure 1As shown, the cleaning robot may include a robotic arm 100 and a main body 200. A cabin 201 for accommodating the robotic arm 100 is provided on the main body 200. An environmental sensor 202, a processor, a driving module, a cleaning component, a power module, and a human-computer interaction module are provided inside the main body 200. Among them, as Figure 1 shown, the main body 200 has an approximately circular shape and may also have other shapes, including but not limited to an approximately D-shaped shape with a front-rear rounded shape and a rectangular or square shape with a front-back shape.
[0058] For example, the environmental sensor 202 may include a lidar, a collision sensor, or an image sensor (such as a red green blue (RGB) camera), etc., for providing various position information and environmental data of the machine to the processor. For example, the RGB camera and / or the laser sensor may be located on the front side of the main body 200 to more accurately sense the environment (such as the ground) in front of the cleaning robot.
[0059] In addition, a sensor for monitoring the working environment of the robotic arm 100 may also be provided on the main body 200, such as a time of flight (TOF) sensor. The TOF sensor is used to monitor the attitude of the robotic arm 100 and whether there are obstacles in the working environment.
[0060] Exemplarily, the TOF sensor is provided on the surface of the main body 200 and is located on one side of the cabin 201 relative to the traveling direction of the main body 200. In addition, the orientation of the TOF sensor forms a 45° angle with the surface of the main body 200, so that the TOF sensing inclined surface faces the robotic arm 100 in the unfolded state, thereby facilitating the monitoring of the working environment of the robotic arm 100.
[0061] It can be understood that the above sensor for monitoring the working environment of the robotic arm 100 may also be a structured light sensor, a binocular vision sensor, or the sensor includes one or several of the TOF sensor, the structured light sensor, or the binocular sensor. The embodiments of the present application do not make specific limitations on this.
[0062] It can be understood that a signal transmitting / receiving device may also be provided on the main body 200. The signal transmitting / receiving device is used for signal transmission with a base station docked with the cleaning robot and / or a user equipment (UE). For example, the signal transmitting / receiving device may be an infrared transmitting / receiving device, and the infrared transmitting / receiving device may include one or more infrared transmitters / receivers. Of course, it may also be a device for receiving signals through wireless communication, and the wireless communication methods include but are not limited to Bluetooth or Wi-Fi, etc.
[0063] For example, the processor may be disposed on a circuit board within the main body 200. The processor is the control center of the cleaning robot and may be a single processor or a collective term for multiple processing elements. For example, the processor may be a central processing unit. Alternatively, the processor includes a central processing unit and an application processor. The application processor may draw a real-time map of the environment where the cleaning robot is located based on the obstacle information fed back by the laser ranging device and a pre-configured positioning algorithm, such as the simultaneous localization and mapping (SLAM) algorithm.
[0064] It can be understood that the circuit board further includes a non-transitory memory (such as a hard disk, flash memory, and random access memory, etc.).
[0065] For example, the drive module may manipulate the main body 200 to travel across the ground based on a drive command having distance and angle information. For example, the cleaning assembly may include a dry cleaning assembly and / or a wet cleaning assembly, and the specific structure may refer to the related art. When the cleaning robot is in the working mode, i.e., performing a cleaning task, it may clean a target surface (such as the ground) through the cleaning assembly.
[0066] For example, the power module may include a rechargeable battery, such as a nickel-metal hydride battery and a lithium battery. The rechargeable battery may be charged by connecting the charging electrode disposed on the side or below the main body 200 to the electrode on the base station.
[0067] For example, the human-machine interaction module may include buttons on the main body panel for the user to select functions. Optionally, the human-machine interaction module may further include at least one of the following: a display screen, an indicator light, and a speaker, for presenting the current mode of the machine or function selection items to the user. In addition, the display screen may be a touch display screen for the user to select functions.
[0068] Optionally, the human-machine interaction module may further include a pickup for receiving voice commands from the user to implement the voice control function. In some embodiments, the user may also perform human-machine interaction with the cleaning robot through a client (i.e., an application (APP)) installed on a UE that has established a communication connection with the cleaning robot.
[0069] For example, the robotic arm 100 may rotate with multiple degrees of freedom to facilitate performing tasks other than basic cleaning, such as grasping, carrying, or storing. It can be understood that basic cleaning refers to the cleaning tasks that do not require the robotic arm 100 to be deployed.
[0070] In addition, the robot arm 100 can be in a folded state and an unfolded state. When the robot arm 100 is in a folded state, the robot arm 100 can be accommodated in the cabin 201 to avoid interfering with the basic cleaning task performed by the sweeping robot.
[0071] The cabin 201 and the robotic arm 100 are respectively introduced as examples below.
[0072] like Figure 1 As shown, the cabin 201 may be a groove opened on the body 200. The cabin 201 is rectangular. The length of the cabin 201 is greater than the length of the robot arm 100 in the folded state, so as to accommodate the robot arm 100.
[0073] Figure 2 The structure of a mechanical arm 100 provided in the embodiment of the present application is shown in FIG. Figure 1 .like Figure 2 As shown, the robot arm 100 includes: a base 50, a rotating member 55, a supporting arm 60, a connecting arm 70, a working arm 80 and a clamping member 90, and the base 50 is connected in the cabin 201, that is, the entire robot arm 100 is installed in the cabin 201 through the base 50 and the mounting structure provided in the cabin 201, so as to be fixed on the body 200. For example, the mounting structure can be a mounting seat, a mounting hole, a slot, or other structures, and then the base 50 can be fixed in the cabin 201 through the mounting structure.
[0074] It can be understood that the base 50 is installed at the bottom of the cabin 201. The bottom of the cabin 201 can be called a mounting surface, which can be a horizontal surface or a sloped surface, and is not specifically limited thereto.
[0075] For example, considering the internal space design of the main body 200 , the installation surface is set as a sloped surface to facilitate the installation of the cleaning component or the driving module in the main body 200 .
[0076] like Figure 2 As shown, the rotating member 55 is connected to the base 50 via the first joint 10 , so that the rotating member 55 can rotate relative to the base 50 .
[0077] The support arm 60 is connected to the rotating member 55 via the second joint 20 , so that the support arm 60 is rotatable relative to the rotating member 55 .
[0078] The first end of the connecting arm 70 is connected to the supporting arm 60 via a third joint 30 , so that the connecting arm 70 is rotatable relative to the supporting arm 60 .
[0079] The second end of the connecting arm 70 is connected to the working arm 80 via another third joint 30 , so that the working arm 80 is rotatable relative to the connecting arm 70 .
[0080] The working arm 80 is connected to the clamping member 90 through the fourth joint 40, so that the clamping member 90 is rotatable relative to the working arm 80.
[0081] It can be understood that Figure 2 the clamping member 90 in Figure 2 includes two clamping jaws, and the two clamping jaws rotate through the fifth joint (
[0082] not labeled) to be in a clamping state or an expanded state. The clamping state refers to the clamping state when the clamping member 90 does not clamp an object. The expanded state refers to the expanded state when the clamping member 90 does not clamp an object.
[0083] Optionally, a camera 990 is further provided on the clamping member 90. The camera 990 can be used to identify the object to be clamped.
[0084] Next, in combination with Figure 3 , the rotational relationships between the above-mentioned various components will be described respectively.
[0085] Figure 3 is a schematic structure of a robotic arm 100 provided by an embodiment of the present application Figure 2 . As Figure 3 shown, the first joint 10 can be installed on the mounting surface 2011. The rotating member 55 is rotatable relative to the base 50 through the first joint 10. For example, the rotating member 55 can rotate around the axis of the rotating member 55 through the first joint 10, thereby driving the robotic arm 100 to rotate around the axis of the rotating member 55.
[0086] It can be understood that driving the robotic arm 100 to rotate around the axis of the rotating member 55 can increase the movement range of the robotic arm 100.
[0087] As Figure 3 shown, the support arm 60 rotates relative to the rotating member 55 through the second joint 20, so that the support arm 60 can be lifted or lowered. For example, when the support arm 60 is lifted relative to the rotating member 55, the end of the support arm 60 away from the rotating member 55 moves toward the side away from the mounting surface 2011, that is, the support arm 60 starts to expand relative to the cabin 201, that is, the support arm 60 starts to leave the cabin 201. Another example is that when the support arm 60 is lowered relative to the rotating member 55, the end of the support arm 60 away from the rotating member 55 moves toward the mounting surface 2011, that is, the support arm 60 starts to fold relative to the cabin 201, that is, the support arm 60 starts to enter the cabin 201.
[0088] That is to say, the above-mentioned support arm 60 can rotate around the axis of the rotating member 55, or can rotate in the direction away from (lifting) or close to (lowering) the mounting surface 2011.
[0089] It should be understood that the rotation of the support arm 60 around the axis of the rotating member 55 involves the angle between the orientation of the support arm 60 and the length direction 2012 of the cabin body 201. For example, the orientation of the support arm 60 is the orientation of the surface of the support arm 60 facing the bottom inside the cabin body 201 after the support arm 60 is lifted. The orientation of the support arm 60 can also be understood as the direction in which the connecting arm 70 unfolds after the support arm 60 is lifted (for example, when the support arm 60 is perpendicular to the mounting surface 2011), or the extending direction of the connecting arm 70, or the extending direction of the robotic arm 100.
[0090] It should be understood that in the embodiments of the present application, without emphasizing the difference between the orientation of the support arm 60 and the extending direction of the robotic arm 100, the orientation of the support arm 60 and the extending direction of the robotic arm 100 can be used interchangeably. This is hereby uniformly explained and will not be elaborated further below.
[0091] In other words, the rotation of the support arm 60 around the axis of the rotating member 55 will drive the connecting arm 70 to rotate around the axis of the rotating member 55.
[0092] As Figure 3 shown, the central axis 601 of the support arm 60 is perpendicular to the mounting surface 2011. The projection 701 of the connecting arm 70 on the mounting surface 2011 is perpendicular to the central axis 601 of the support arm 60.
[0093] As Figure 3 shown, the angle between the extending direction of the robotic arm 100 and the length direction 2012 of the cabin body 201 can refer to: the angle α between the projection 701 of the connecting arm on the mounting surface 2011 and the length direction 2012 of the cabin body 201.
[0094] Optionally, the angular range of the angle α is 0° to 180°.
[0095] It can be understood that the above angular range of 0° to 180° means 0° ≤ α ≤ 180°. Similarly, the angular range of A° to B° means that the angle is greater than or equal to 0° and less than or equal to B°. This is hereby uniformly explained and will not be elaborated further below.
[0096] Next, the change in the angular value of the angle α during the process of the robotic arm 100 exiting the cabin (or leaving the cabin body 201) or returning to the cabin (or entering the cabin body 201) will be described.
[0097] It can be understood that in combination with Figure 1It can be known that since the length direction 2012 of the cabin body 201 is perpendicular to the traveling direction of the main body 200, and the robotic arm 100 usually performs tasks (such as grasping an object) in the traveling direction of the main body 200. Thus, during the process of the robotic arm 100 exiting the cabin, the extension direction of the robotic arm 100 is first adjusted to the traveling direction of the main body 200. In other words, during the process of the robotic arm 100 exiting the cabin, the projection 701 of the connecting arm 70 on the mounting surface 2011 changes from being parallel to the length direction 2012 of the cabin body 201 to being perpendicular to the length direction 2012 of the cabin body 201, that is, the angular value of the included angle α is adjusted from 0° to 90°.
[0098] In addition, when the robotic arm 100 is in the preparatory state for performing tasks, in order to facilitate the subsequent task execution of the robotic arm 100, the angular value of the included angle α is fixed at 90°, that is, the connecting arm 70 faces the traveling direction of the main body 200.
[0099] It can also be understood that during the process of the robotic arm 100 returning to the cabin, since the cabin body 201 is rectangular, the extension direction of the robotic arm 100 (such as the projection 701 of the connecting arm 70 on the mounting surface 2011) should be adjusted to the length direction 2012 of the cabin body 201 so that the support arm 60 can be retracted into the cabin body 201 when it moves downward relative to the mounting surface 2011. In other words, during the process of the robotic arm 100 returning to the cabin, the angular value of the included angle α should be fixed at 0°, the support arm 60 faces the length direction 2012 of the cabin body 201, that is, the projection 701 of the connecting arm 70 on the mounting surface 2011 is parallel to the length direction 2012 of the cabin body 201.
[0100] It should be understood that the rotation of the support arm 60 away from (lifting) or close to (lowering) the mounting surface 2011 involves the included angle between the support arm 60 and the mounting surface 2011. As Figure 3 shown, in the above relevant description of the included angle α, for the convenience of representing the included angle α, the projection 701 of the connecting arm 70 on the mounting surface 2011 and the length direction 2012 of the cabin body 201 are equivalent to the mounting surface 2011. Thus, the included angle between the support arm 60 and the mounting surface 2011 can refer to: the included angle β between the central axis 601 of the support arm 60 and the length direction 2012 of the cabin body 201. The angular range of the included angle β is 0° to 180°.
[0101] In addition, the included angle between the support arm 60 and the mounting surface 2011 can also refer to: the included angle between the central axis 601 of the support arm 60 and the projection 701 of the connecting arm 60 on the mounting surface 2011.
[0102] Next, during the process of the robotic arm 100 exiting the cabin (or leaving the cabin body 201) or returning to the cabin (or entering the cabin body 201), the change in the angular value of the included angle β will be described.
[0103] It can be understood that in combination withFigure 1 As can be seen from the description of the cabin 201, since the cabin 201 is a groove opened on the surface of the main body 200, in order to avoid collision between the side wall of the cabin 201 and the support arm 60 during the process of the support arm 60 rotating around the axis of the rotating member 55, during the process of the robotic arm 100 exiting the cabin, the support arm 60 should be first lifted to a certain angle, for example, making the support arm 60 perpendicular to the mounting surface 2011 (that is, the angle value of the included angle β is 90°). In other words, during the process of the robotic arm 100 exiting the cabin, the support arm 60 should be first adjusted to be perpendicular to the mounting surface 2011, that is, the angle value of the included angle β is adjusted from 0° to 90°.
[0104] In addition, after adjusting the support arm 60 to be perpendicular to the mounting surface 2011 (that is, the angle value of the included angle β is 90°), the angle value of the included angle β should be fixed at 90°, and then the support arm 60 should be controlled to rotate around the axis of the rotating member 55, for example, adjusting the angle value of the included angle α to 90°.
[0105] As Figure 3 shown, the first end of the connecting arm 70 is connected through a third joint 30, so that the connecting arm 70 can be lifted or lowered relative to the support arm 60. For example, when the connecting arm 70 is lifted relative to the support arm 60, the second end of the connecting arm 70 moves in a direction away from the support arm 60, that is, the connecting arm 70 starts to unfold relative to the support arm 60. Another example is that when the connecting arm 70 is lowered relative to the support arm 60, the second end of the connecting arm 70 moves towards the support arm 60, that is, the connecting arm 70 starts to fold relative to the support arm 60.
[0106] It can be understood that the included angle between the connecting arm 70 and the support arm 70 is between 0° and 180°.
[0107] It should be understood that the second end of the connecting arm 70 is connected to the working arm 80 through another third joint 30, so that the working arm 80 can be lifted or lowered relative to the connecting arm 70. For example, when the working arm 80 is lifted relative to the connecting arm 70, the other end of the working arm 80 relative to the second end moves in a direction away from the connecting arm 70, that is, the working arm 80 starts to unfold relative to the connecting arm 70. Another example is that when the working arm 80 is lowered relative to the connecting arm 70, the other end of the working arm 80 relative to the second end moves towards the connecting arm 70, that is, the working arm 80 starts to fold relative to the connecting arm 70.
[0108] As Figure 3 shown, the clamping member 90 is connected through a fourth joint 40, so that the clamping member 90 rotates around the axis of the working arm 80.
[0109] In addition, for the clamping member 90, the two clamping jaws of the clamping member 90 can be connected through a fifth joint 902, so that the two clamping jaws rotate relative to the central axis 901 of the clamping member 90. As Figure 3As shown, the fifth joint 902 can be arranged at the center of the gripper 90. That is, the central axis 901 of the gripper 90 can be understood as follows: the central axis of the working arm 80 extends towards the gripper 90 and passes through the fifth joint 902. In addition, the two jaws included in the gripper 90 can be simplified and shown as Figure 3 the first jaw 903 and the second jaw 904 in
[0110] It should be understood that in the Figure 3 simplified illustration, the first jaw 903 and the second jaw 904 are simplified to straight lines. In actual implementation, the shape of the gripper 90, for example, the first jaw 903 or the second jaw 904 can be curved, or in a V shape, or multi-segmented. The embodiments of the present application do not make specific limitations on this.
[0111] In addition, when the first jaw 903 is in a curved or V-shaped state, Figure 3 the straight line simplified from the first jaw 903 in
[0112] can be represented as the connection line between the two ends of the first jaw. The two ends of the first jaw are respectively the end of the first jaw close to the fifth joint 40 and the end far from the fifth joint 40.
[0113] It can be understood that the first jaw 903 and the second jaw 904 can be symmetrically designed. Here, taking the first jaw 903 as an example, the rotation of the two jaws relative to the central axis 901 of the gripper 90 will be described.
[0114] Exemplarily, when the first jaw 903 moves towards the central axis 901 of the gripper 90, the first jaw 903 starts to clamp, that is, the first jaw 903 starts to be in the state of gripping an object. When the first jaw 903 moves towards the direction away from the central axis 901 of the gripper 90, the first jaw 903 starts to expand (or is called loosened), that is, the first jaw 903 starts to be in the expanded state.
[0114] It should be understood that the rotation of the first jaw 903 relative to the central axis 901 of the gripper 90 involves the angle γ between the first jaw 903 and the central axis 901 of the gripper 90. As Figure 3 shown, the angle range of the angle γ is 0° to 90°.
[0115] It can be understood that in combination with the description of the cabin body 201 in Figure 1 , since the cabin body 201 is a groove opened on the surface of the main body 200, in order to avoid the above-mentioned jaws colliding with the side wall of the cabin body 201 during the process of the robotic arm 100 entering or exiting the cabin, the gripper 90 should be adjusted to the clamping state, that is, the angle value of the angle γ is fixed at 0°.
[0116] It should be understood that the above Figures 1 - 3The robotic arm 100 therein is only an example. The robotic arm 100 may not include one or several of the connecting arm 70, the working arm 80, or the gripping member 90. The embodiments of the present application do not make specific limitations thereto.
[0117] In addition, the above Figures 1 - 3 The cabin 201 therein is only an example. The cabin 201 may also not be a groove formed on the surface of the main body 200. For example, the cabin 201 may be an accommodation space defined by a cover body and the main body 200; again, for example, some components of the robotic arm 100 (such as the rotating member 55, the first joint 10, or the second joint 20, etc.) are not within the accommodation space defined by the cabin 201. The embodiments of the present application do not make specific limitations thereto.
[0118] It can be understood that based on the above Figures 1 - 3 Regarding the robotic arm 100, the robotic arm 100 can rotate with multiple degrees of freedom to form various postures, thereby increasing the spatial range and flexibility of the movement of the robotic arm 100, so as to perform complex tasks other than basic cleaning tasks, such as grasping, carrying, or storing tasks.
[0119] However, due to the complex structure of the robotic arm 100, it is easy to cause abnormalities in the robotic arm 100 during the task execution process. Once an abnormality occurs, if not intervened in time, the robotic arm 100 will not only be unable to complete the subsequent tasks, but also cause damage to the functions of the cleaning robot.
[0120] For example, in the case of an abnormality occurring during the cleaning robot controlling the robotic arm 100 to execute a task, the cleaning robot can send a prompt message to the user (such as a voice prompt, a vibration prompt, or sending a prompt message to the user through the APP installed on the UE, etc.) to prompt the user to intervene in time and continue to execute the task after the user intervenes. However, after the user intervenes, the reset of the posture of the robotic arm 100 by the user is unreliable. For example, assume that the robotic arm 100 is stuck by an obstacle during the execution of the carrying task, resulting in the cleaning robot being unable to move. After the user removes the obstacle, the user may not reset it in time, resulting in the robotic arm 100 still being stuck by other obstacles subsequently.
[0121] In addition, to facilitate the robotic arm 100 to continue to execute the task, after the robotic arm 100 recovers from the abnormal state, the cleaning robot can reset the robotic arm 100 to the preparatory state. However, resetting the robotic arm 100 to the preparatory state is unreliable. For example, when the robotic arm 100 is stuck by a bed leg during the task execution process, even if the robotic arm 100 is reset to the preparatory state, it will still be stuck by the bed leg, resulting in continuous abnormalities of the robotic arm 100, not only unable to execute the subsequent basic cleaning tasks, but also may cause damage to the robotic arm 100.
[0122] It can be understood that resetting the robotic arm 100 to the standby state may affect the attitude control of the robotic arm 100. For example, taking the structure of the robotic arm 100 in Figure 3 as an example, assuming that the motor of the robotic arm 100 malfunctions and the robotic arm 100 is reset to the standby state (i.e., the angle value of the included angle α is fixed at 90°, and the angle value of the included angle β is fixed at 90°), the reset of the robotic arm 100 depends on the feedback of one or more sensors. Some sensors may have data deviations. Just resetting to the standby state has limited effect on restoring the data deviations of the sensors, and thus will affect the accuracy of the attitude control of the robotic arm 100. In addition, as the robotic arm 100 continues to perform tasks subsequently, the cumulative data deviation of the sensors will increase, further affecting the accuracy of the attitude control of the robotic arm 100.
[0123] That is to say, in the case of an abnormality occurring during the task execution of the robotic arm 100, how to adjust the robotic arm 100 to avoid damage to the functions of the cleaning robot (such as damage to the attitude control function of the robotic arm 100 or affecting subsequent basic cleaning tasks) is an urgent problem to be solved at present.
[0124] Based on this, the embodiments of the present application provide the following technical solution. When the robotic arm 100 is abnormal outside the cabin (for example, during the task execution), the robotic arm 100 is restored to avoid damage to the functions of the cleaning robot, improve the reliability and stability of the cleaning robot in performing tasks, and thus improve the user experience.
[0125] In a possible implementation manner, the cleaning robot includes: a main body, a robotic arm 100 and a cabin 201 provided on the main body, and the cabin 201 is used to accommodate the robotic arm 100 in a folded state. The control method of the cleaning robot includes: when the robotic arm 100 is outside the cabin, obtaining information of the robotic arm 100; and when it is determined that an abnormality has occurred according to the information of the robotic arm 100, controlling the robotic arm 100 to enter the cabin 201.
[0126] Since in the embodiments of the present application, when it is determined according to the information of the robotic arm 100 that the robotic arm 100 is abnormal outside the cabin 201, controlling the robotic arm 100 to enter the cabin 201 can reduce the influence of the unreliable reset of the robotic arm 100 on the user, and can ensure the consistency of the attitude of the robotic arm 100, and reduce the error influence of the sensor feedback on the attitude information of the robotic arm 100, thereby avoiding damage to the functions of the cleaning robot, improving the reliability and stability of the cleaning robot in performing tasks, and thus improving the user experience.
[0127] For example, compared with relying on sending prompt messages to the user to prompt the user to intervene and reset the robotic arm 100, controlling the robotic arm 100 to enter the cabin 201 can reduce the degree of dependence on user intervention during the recovery of the robotic arm 100, thereby reducing the impact caused by unreliable user reset of the robotic arm 100, and thus avoiding damage to the functions of the cleaning robot.
[0128] For another example, compared with resetting the robotic arm 100 to the standby state, controlling the robotic arm 100 to enter the cabin 201 can further reset the robotic arm 100, thereby ensuring the consistency of the posture of the robotic arm 100, reducing the influence of sensor errors, and thus reducing the influence on the subsequent posture control of the robotic arm 100.
[0129] It can also be understood that in the case of an abnormality occurring outside the cabin 201 when the robotic arm 100 is located, controlling the robotic arm 100 to enter the cabin 201 can also avoid the influence on subsequent basic cleaning tasks. For example, when the robotic arm 100 is stuck by a bed during the execution of a task, after the robotic arm 100 enters the cabin 201, the cleaning robot can continue to execute the basic cleaning task, avoiding damage to the functions of the cleaning robot.
[0130] It should be understood that the names of the various parameters related to each other between the various devices or modules in the following embodiments of the present application, or the names of the information, etc. are only examples, and in actual implementation, they may also be other names, and the embodiments of the present application do not make specific limitations in this regard.
[0131] In addition, the following method embodiments are described by taking the processor as the execution subject as an example, but the embodiments of the present application do not make any limitations in this regard. The execution subjects of the various method embodiments in the embodiments of the present application can be devices or modules, or devices included in the devices or modules, or devices including the devices or modules. For example, the execution subject can be a control device or processing module including a processor, or an electrical appliance or device including the control device or processing module, or a chip (or called a circuit) included in the processor. It can be understood that the various method embodiments in the embodiments of the present application can be implemented by a logical node, a logical module, or software that can implement some or all of the functions of the processor.
[0132] Figure 4 is a schematic flow of a control method for a cleaning robot provided by an embodiment of the present application Figure 1 As Figure 4 shown, the method includes the following steps.
[0133] S401. When the robotic arm is outside the cabin, the processor obtains information about the robotic arm.
[0134] S402. When the processor determines an abnormality based on the information of the robotic arm, the processor controls the robotic arm to enter the cabin.
[0135] The following will describe S401 and S402 respectively in combination with the above Figures 1 - 3 , and will separately describe S401 and S402.
[0136] Regarding S401
[0137] It can be understood that the situation where the robotic arm 100 is outside the cabin 201, for example, includes the situation where the processor controls the robotic arm 100 to execute tasks. For example, when the processor controls the robotic arm 100 to execute tasks, it includes the following situations: the robotic arm 100 is in the process of leaving the cabin 201, the robotic arm 100 has left the cabin 201 and is in an extended state, or the robotic arm 100 is in the process of entering the cabin 201.
[0138] Exemplarily, in combination with Figure 3 , when the robotic arm 100 is in the process of leaving the cabin 201, it includes at least one of the following: the support arm 60 starts to lift relative to the mounting surface 2011 (for example, the angle value of the included angle β is greater than 0° and less than 90°), the support arm 60 is perpendicular to the mounting surface 2011 (for example, the angle value of the included angle β is 90°), the extension direction of the robotic arm 100 (for example, the projection 701 of the connecting arm 70 on the mounting surface 2011) starts to rotate around the axis of the rotating member 55 (for example, the angle value of the included angle α is greater than 0° and less than 90°), or the extension direction of the robotic arm 100 is perpendicular to the length direction 2012 of the cabin 201 (for example, the angle value of the included angle α is 90°).
[0139] It can be understood that in combination with Figure 3 , the above process in which the robotic arm 100 is leaving the cabin 201 further includes the connecting arm 70 lifting relative to the support arm 60, the working arm 80 lifting relative to the connecting arm 70, or the clamping member 90 being in an extended state, etc. The embodiments of the present application do not make specific limitations on this.
[0140] In addition, the above is Figure 3 taking the structure of the robotic arm 100 as an example for exemplary description. Under other structures of the robotic arm 100, the above angle values can be other angle values. For example, when leaving the cabin 201 in a manner that the extension direction of the robotic arm 100 is perpendicular to the length direction 2012 of the cabin 201, the angle value of the included angle α remains 90°, and the angle value of the included angle β changes from 0° to 45°. It can be understood that the angle value of 45° for the included angle β is the minimum angle value when the support arm 60 is in a working state. If it is less than this angle value, it may collide with the cover of the cabin 201.
[0141] It should be understood that the above is only exemplary description, and the values of the above-mentioned various angles depend on the actual form, and the embodiments of the present application do not make specific limitations on this.
[0142] It can be understood that in combination with Figure 3 , the robotic arm 100 has left the cabin 201 and is in an extended state. For example, the angle value of the included angle α is 90°, the angle value of the included angle β is 90°, the angle value of the included angle between the connecting arm 70 and the support arm 60 is 135°, the angle value of the included angle between the working arm 80 and the connecting arm 70 is 45°, and the angle value of the included angle γ is 90°.
[0143] It can also be understood that the process of the robotic arm 100 entering the cabin 201 and the process of the robotic arm 100 leaving the cabin 201 are reciprocal to each other. For the process of the robotic arm 100 entering the cabin 201, reference can be made to the process of the robotic arm 100 leaving the cabin 201, which will not be elaborated here.
[0144] It should be understood that the tasks performed by the robotic arm 100 may include, for example, one or several of environmental perception tasks, grasping tasks, handling tasks, or storage tasks.
[0145] For example, the environmental perception task may refer to the processor perceiving the environment based on the camera 990 on the robotic arm 100 (see Figure 2 ), such as perceiving obstacles or identifying objects.
[0146] For example, the grasping task refers to stably grasping a target object (such as a paper ball, fabric, etc.) using the gripper 90 of the robotic arm 100.
[0147] For example, the handling task refers to grasping a target object using the robotic arm 100 and placing the target object in a target area.
[0148] For example, the storage task refers to classifying and organizing objects. The cleaning robot first classifies the objects, for example, classifying socks and plush toys, using the gripper 90 to pick up the socks and place them in the dirty clothes basket, and using the gripper 90 to pick up the plush toys and place them in the storage box.
[0149] It can be understood that during the process of the processor controlling the robotic arm 100 to perform the above tasks, the processor can obtain the information of the robotic arm 100, and then determine whether an abnormality occurs based on the information of the robotic arm 100.
[0150] The information of the robotic arm 100 will be introduced below.
[0151] In a possible implementation manner, the information of the robotic arm 100 includes the information of the sensors for monitoring the working environment of the robotic arm 100, and / or the information of the motors for driving the robotic arm 100 to adjust its posture.
[0152] It can be understood that based on the information of the sensors used to monitor the working environment of the robotic arm 100, the processor can determine the anomalies that may cause the robotic arm 100 to malfunction. Based on the information of the motors used to determine the attitude adjustment of the robotic arm 100, the processor can determine that the robotic arm 100 has malfunctioned.
[0153] That is to say, during the process of the robotic arm 100 performing tasks outside the cabin, based on the information of the sensors used to monitor the working environment of the robotic arm 100, the processor can determine the anomalies that may cause the robotic arm 100 to malfunction, and thus avoid the malfunction of the robotic arm 100 in advance. In addition, based on the information of the motors used to drive the robotic arm 100 to adjust its attitude, the processor can determine the malfunctions that the robotic arm 100 has already had.
[0154] The sensors used to monitor the working environment of the robotic arm 100 are introduced below.
[0155] It can be understood that the sensors used to monitor the working environment of the robotic arm 100 include one or several of the environmental sensors 202 provided on the body 200 and the sensors provided on the robotic arm 100.
[0156] For example, in combination with Figure 1 the relevant descriptions in, the sensors provided on the body 200 include Figure 1 one or several of the environmental sensors in and the sensors provided on the surface of the body 200. It can be understood that the environmental sensors 202 include lidar, collision sensors, or image sensors, etc., which can provide environmental data to determine whether there are obstacles in the traveling direction of the robotic arm 100 on the body 200. Through the sensors (such as TOF sensors) provided on the surface of the body 200, not only the attitude of the robotic arm 100 can be monitored, but also whether there are obstacles within the movement range of the robotic arm 100 can be monitored.
[0157] In addition, the obstacles can be, for example, human hands, furniture, paper balls, or toys, etc., and the embodiments of the present application do not make specific limitations on this.
[0158] For example, in combination with Figure 2 the relevant descriptions in, the sensors provided on the robotic arm 100, for example, include Figure 2 the camera 990 in. It can be understood that through the camera 990, it is possible to monitor whether there are obstacles within the movement range of the robotic arm 100.
[0159] It should be understood that the above sensors used to monitor the working environment of the robotic arm 100 are only examples. In actual implementation, there are also sensors provided in other positions, and the embodiments of the present application do not make specific limitations on this.
[0160] The information of the sensors used to monitor the working environment of the robotic arm 100 is introduced below.
[0161] It can be understood that, combined with the above relevant descriptions of the sensors used to monitor the working environment of the robotic arm 100, the information of the sensors includes one or several of the status information and sensing data of the sensors.
[0162] For example, the status information of the sensor is used to indicate (or is called representing) the working state of the sensor. The working state of the sensor includes: normal and faulty. Sensor faults include, for example, that the sensor cannot be turned on, or the sensor function is abnormal, or the communication between the processor and the sensor is abnormal (such as communication timeout, or high error rate, etc.), and no specific limitations are made on this.
[0163] In addition, the sensing data refers to the data collected by the sensor. For example, the environmental data collected by the above TOF sensor can be used by the processor to determine whether there are obstacles in the working range of the robotic arm 100.
[0164] In a possible implementation, the processor determines the occurring anomalies based on the information of the sensors, including that the sensor fails, and / or there are obstacles in the movement range of the robotic arm 100.
[0165] That is to say, in the case where the sensor fails and / or there are obstacles in the movement range of the robotic arm 100, the processor controls the robotic arm 100 to enter the cabin 201, and can control the robotic arm 100 to enter the cabin 201 before the robotic arm 100 has an anomaly, thereby reducing the need for user intervention.
[0166] For example, in the case of a sensor failure, the processor cannot determine whether there may be obstacles in the working range of the robotic arm 100, and there may be a risk that the robotic arm 100 is stuck by an obstacle (which may cause the motor to overcurrent and heat up). The processor controls the robotic arm 100 to enter the cabin 201 in advance to avoid potential risks. In addition, since the robotic arm 100 has not had an anomaly yet, in this scenario, the processor can directly control the robotic arm 100 to enter the cabin 201, thereby reducing the need for user intervention, and also avoiding damage to the functions of the cleaning robot, and improving the reliability and stability of the cleaning robot to perform tasks.
[0167] Another example is that when the processor determines that there are obstacles in the working range of the robotic arm 100 based on the sensing data of the sensor, or predicts that there are obstacles on the traveling path of the robotic arm 100 during the movement of the body 200, the processor controls the robotic arm 100 to enter the cabin 201 to avoid potential risks, thereby reducing the need for user intervention, and also avoiding damage to the functions of the cleaning robot, and improving the reliability and stability of the cleaning robot to perform tasks.
[0168] The motors for driving the manipulator 100 to adjust its posture are introduced below.
[0169] It can be understood that the rotation between the support arm 60, the connecting arm 70, or the working arm 80 in the manipulator 100 is driven by a motor. For example, as Figure 3 shown, the first joint 10, the second joint 20, the third joint 30, the fourth joint 40, or the fifth joint 902, etc., are driven by a motor. Motors are divided into brushed motors and brushless motors. In a brushed motor, there is no Hall sensor (or encoder disk), so it is impossible to obtain relevant angle information. Instead, a limited number of angles are detected through limit switches, such as detecting 0° and 90°.
[0170] For example, according to Figure 3 the relevant description of the support arm 60 during the out-of-cabin process, the angle α between the extension direction of the manipulator 100 (i.e., the projection 701 of the connecting arm 70 on the mounting surface 2011) and the length direction 201 of the cabin body 201 involves two key angles (i.e., 0° and 90°). Considering the cost and the motion characteristics of the first joint 10, the motor driving the first joint 10 can adopt a brushed motor.
[0171] For another example, the angle β between the support arm 60 and the mounting surface 2011 also involves two key angles (i.e., 0° and 90°). Therefore, the motor driving the second joint 20 can adopt a brushed motor.
[0172] For yet another example, the angle γ between the first gripper 903 and the central axis 901 of the gripper 90 also involves two key angles (i.e., 0° and 90°). Therefore, the motor driving the fifth joint 902 can adopt a brushed motor.
[0173] It should be understood that the rotation requirements of the connecting arm 70 and the working arm 80 are relatively flexible. Therefore, the third joint 30 can adopt a brushed motor, and the processor can obtain more angle information through the Hall sensor, such as {0°, 1°, 2°, …, 180°}.
[0174] It should also be understood that the above description of the motor is only an example. In actual implementation, the above first joint 10 to fifth joint 902 can all adopt brushed motors or brushless motors, and the embodiments of the present application do not make specific limitations in this regard.
[0175] The information of the motors for driving the manipulator 100 to adjust its posture is introduced below.
[0176] It can be understood that in addition to the angle information described above, the information of the motor also includes one or more of temperature, electrical parameters, or operating time.
[0177] Temperature is used to monitor whether the motor is overheated. For example, when the robotic arm 100 is stuck by an object, or caught by a fabric strap, or pressed by a heavy object, the temperature of the motor will rise. When the temperature of the motor exceeds the preset temperature range, the motor is overheated.
[0178] It can be understood that the preset temperature range can be, for example, 80 degrees Celsius (°C) to 130 °C, depending on the actual implementation, and is not limited thereto.
[0179] Electrical parameters include voltage, current, or power, etc. Electrical parameters are used for the processor to determine whether there is overcurrent. For example, when the robotic arm 100 is stuck by an object, or caught by a fabric strap, or pressed by a heavy object, the current of the motor will exceed the preset current value.
[0180] It should be understood that the preset current value is, for example, 0.5 amperes (A), 1 A, 2 A, 3 A, or a larger current value, depending on the actual implementation, and is not limited thereto.
[0181] The running time refers to the time when the motor drives the robotic arm 100 to adjust its posture. For example, when the robotic arm 100 is stuck by an object, or caught by a fabric strap, or pressed by a heavy object, the running time of the motor will exceed the preset time range. Exemplarily, assuming that the preset time range for the robotic arm 100 to adjust from the state of being accommodated in the cabin 201 to the standby state is 3 seconds (s) to 5 s, if the robotic arm 100 is caught by a fabric strap, the running time of the motor will exceed 5 s.
[0182] It can be understood that the above preset time range is only an example, depending on the actual implementation, and is not limited thereto.
[0183] In a possible implementation, the processor determines the following at least one of the anomalies based on the information of the motor: the temperature of the motor is outside the preset temperature range; the electrical parameters of the motor are outside the preset electrical parameter range; or, the running time of the motor exceeds the preset time range, and the running time of the motor is the time when the motor drives the robotic arm 100 to adjust its posture.
[0184] That is to say, based on the information of the motor used to drive the robotic arm 100 to adjust its posture, the processor can reliably determine the anomalies that have occurred to the robotic arm 100.
[0185] It should be understood that the processor can detect anomalies in a timely manner through multiple of the above temperature, electrical parameters, or running time. For example, when the robotic arm 100 is caught by a fabric strap, the motor may only have its running time exceeding the preset time range, the electrical parameters of the motor are within the preset electrical parameter range, and the temperature of the motor is within the preset temperature range. Furthermore, when the information of the motor also includes the running time, the processor can determine the occurrence of anomalies in a timely manner.
[0186] Optionally, the information of the robotic arm 100 further includes the communication status between the processor and the slave processor for controlling the motor.
[0187] It can be understood that in the embodiments of the present application, the control of the robotic arm 100 can adopt a master-slave structure, that is, the processor is the master controller and the slave processor is the slave controller. The slave processor receives control instructions from the processor to control the motor.
[0188] In addition, the slave processor can control one or more motors, which depends on the actual implementation and is not limited thereto.
[0189] It should be understood that in the case of abnormal communication between the processor and the slave processor (such as communication timeout, high bit error rate), the control of the robotic arm 100 is affected, which may cause the robotic arm 100 to fail to avoid obstacles in time, and further cause the robotic arm 100 to malfunction. For example, in the case of communication timeout between the processor and the slave processor, the robotic arm 100 may fail to avoid obstacles in time. Another example is that in the case of a high bit error rate in the communication between the processor and the slave processor due to environmental interference (electromagnetic equipment, or high humidity), the control instruction will be distorted, and then the slave processor will execute incorrect control instructions, thus increasing the risk of the robotic arm 100 malfunctioning.
[0190] It can be understood that when the processor obtains the above communication status information and determines that the communication between the processor and the slave processor is abnormal, the processor controls the robotic arm 100 to enter the cabin 201, which can avoid potential risks.
[0191] It should be understood that the above communication timeout may mean that after the processor sends a control instruction to the slave processor, the processor does not receive a response message from the slave processor within the timeout period. The timeout period can be 50ms, 1s, 1.5s, or a longer time value, which depends on the actual implementation and is not limited thereto.
[0192] Optionally, when the communication between the processor and the slave processor is abnormal, the processor sends control instructions to the slave processor multiple times (such as a retransmission mechanism). It can be understood that by the processor sending control instructions to the slave processor multiple times, the slave processor can receive the correct control instructions.
[0193] Or, optionally, when the communication between the processor and the slave processor is abnormal, the slave processor controls the robotic arm 100 to enter the cabin 201. It can be understood that in order to control the robotic arm 100 to enter the cabin 201 in time, when the slave processor discovers abnormal communication (such as communication interruption, communication timeout, or high bit error rate), it can directly control the robotic arm 100 to enter the cabin 201 without waiting for the processor to send a control instruction.
[0194] It should be understood that the information of the robotic arm 100 may include at least one of the following: information of sensors for monitoring the working environment of the robotic arm 100, information of motors for driving the robotic arm 100 to adjust its posture, or the communication status between the processor and the slave processor for controlling the motors.
[0195] The following introduces the related implementation manners for the processor to obtain the information of the robotic arm 100.
[0196] It should be understood that the ways for the processor to obtain the information of the robotic arm 100 may include one or more of the following.
[0197] Method 1
[0198] It can be understood that in Method 1, the processor actively obtains the information of the robotic arm 100. For example, the processor obtains (or reads) sensing data from the sensor through a communication line (such as a communication bus). Also for example, the processor sends an instruction for obtaining sensing data to the sensor through the communication line, and then the processor receives the sensing data sent by the sensor.
[0199] For example, the sensor includes one or more of the following: Figure 1 the environmental sensor in, the TOF sensor provided on the surface of the body 200, the camera 990, the temperature sensor for monitoring the motor, or the sensor for sensing angular information (such as the above-mentioned included angle α or included angle β), etc., which is not limited herein.
[0200] In addition, the processor can also obtain the above-mentioned angular information and electrical parameters of the motor (such as current value, voltage value, or power value, etc.) from the slave processor through the communication bus, and the embodiments of the present application do not make specific limitations thereto.
[0201] It should be understood that the above-mentioned processor actively obtaining the information of the robotic arm 100 includes: the processor periodically obtaining the information of the robotic arm 100; or, the processor obtaining the information of the robotic arm 100 based on condition triggering.
[0202] For example, the processor obtains the information of the robotic arm 100 based on a preset time of the movement of the robotic arm 100 to determine whether the robotic arm 100 moves to the target position within the preset time. Also for example, when the processor receives a control instruction for obtaining the information of the robotic arm 100, the processor responds to the control instruction and obtains the information of the robotic arm 100. Again for example, the processor obtains the information of the robotic arm 100 based on the obstacle avoidance requirement (such as dynamically updating the instant map).
[0203] It can be understood that the control instruction for the processor to obtain the information of the robotic arm 100 can be: a voice instruction of the user, and the processor can receive the control instruction of the user through a human-machine interaction module (such as including a pickup); or, the above control instruction can be sent by the user through the APP installed on the UE, and the processor can receive the control instruction of the user through a human-machine interaction module (such as including a transceiver). The embodiments of the present application do not make specific limitations on this.
[0204] It should be understood that the sensor can also periodically write the sensing data into the memory, and the processor obtains the sensing data from the memory.
[0205] Mode 2
[0206] It can be understood that in Mode 2, the processor passively receives the information of the robotic arm 100. For example, the processor receives the sensing data from the sensor. It can be understood that the sensor can send the sensing data to the processor based on a condition trigger. For example, for a temperature sensor that monitors the temperature of the motor, when the temperature of the motor exceeds the preset temperature range, the temperature sensor sends the temperature data of the motor, or an indication message indicating that the motor temperature exceeds the temperature threshold, to the processor.
[0207] In addition, the sensor can also periodically send the sensing data to the processor, and then the processor periodically receives the sensing data from the sensor. The embodiments of the present application do not make specific limitations on this.
[0208] Mode 3
[0209] It can be understood that in Mode 3, the processor can determine the information of the robotic arm 100. For example, according to the foregoing description about the running time of the motor, the processor can determine the running time of the motor according to the time when sending a control instruction (such as an instruction for instructing the slave processor to control the motor to adjust the included angle α) to the slave processor, and the angle information obtained from the slave processor or the sensor for sensing the angle information. For another example, according to the foregoing description about the communication state between the processor and the slave processor, the processor can determine the communication state between the processor and the slave processor according to the response message fed back by the slave processor.
[0210] That is to say, the processor can obtain the information of the robotic arm 100 through one or more of the above Modes 1 to 3, thereby improving the flexibility of the processor to obtain the information of the robotic arm 100.
[0211] Regarding S402
[0212] In a possible implementation manner, when the processor determines that an abnormality has occurred according to the information of the robotic arm 100, controlling the robotic arm 100 to enter the cabin 201 (i.e., S402) includes:
[0213] Step A: When the processor determines that the robot arm 100 is abnormal according to the information of the motor, the processor controls the cleaning robot to send a prompt message. The prompt message is used to prompt the user to intervene.
[0214] It can be understood that according to the instructions in S401 about determining the abnormality based on the information of the motor, the abnormality that occurs in this case is usually that the robot arm 100 is stuck by an object, or is pressed by a fabric strap, or is pressed by a heavy object. A prompt message is sent to the user to facilitate the user's intervention to resolve the abnormality of the robot arm 100.
[0215] It should be understood that when the processor determines that an abnormality has occurred based on the information from the sensor, in this case, no abnormality has occurred in the robotic arm 100 and normal control can be performed without user intervention, and the processor can directly control the robotic arm 100 to enter the cabin 201.
[0216] In addition, the processor controls the cleaning robot to send prompt information, which can be a prompt information in the form of voice; or, the processor sends a prompt information to the UE through a transceiver (or transmitter), and then the user can receive the prompt information through the APP on the UE. The embodiments of the present application do not make specific limitations on this.
[0217] Step B: The user sends an operation instruction to the cleaning robot. Accordingly, the processor controls the robot arm 100 to enter the cabin 201 in response to the user's operation instruction.
[0218] It can be understood that after the user intervention is completed, the user can send an operation instruction to the cleaning robot to instruct the removal of the object that caused the motor abnormality of the robotic arm 100, ensuring that the processor can normally control the robotic arm 100 to enter the cabin 201 at this time to avoid the robotic arm 100 from having abnormalities again.
[0219] In addition, users can flexibly send operating instructions to the cleaning robot in a variety of ways.
[0220] For example, the user can send an operation instruction to the cleaning robot by voice to instruct the processor to control the mechanical arm 100 to enter the cabin 201. Accordingly, the processor can receive the user's operation instruction through the microphone in the human-computer interaction module, and then control the mechanical arm 100 to enter the cabin 201.
[0221] For another example, the body 200 is provided with a return button, and the user sends an operation instruction by pressing the return button to instruct the processor to control the robot 100 to enter the cabin 201. Accordingly, the processor controls the robot 100 to enter the cabin 201 in response to pressing the return button.
[0222] For another example, a touch screen is provided on the body 200. The visual interface on the touch screen includes a cabin return option. The user sends an operation instruction by selecting the cabin return option to instruct the processor to control the robotic arm 100 to enter the cabin 201. Correspondingly, the processor controls the robotic arm 100 to enter the cabin 201 in response to the triggering of the cabin return option.
[0223] For another example, the user can send an operation instruction to the cleaning robot through the APP installed on the UE to instruct the processor to control the robotic arm 100 to enter the cabin 201. Correspondingly, the processor can receive the operation instruction from the UE through the transceiver (or receiver) and control the robotic arm 100 to enter the cabin 201.
[0224] That is to say, in the case where an abnormality occurs in the motor of the robotic arm 100, by sending a prompt message to the user to prompt the user to intervene, the user can intervene in the abnormality of the robotic arm 100 in a timely manner. In addition, the processor controls the robotic arm 100 to enter the cabin 201 in response to the user's operation instruction, which can ensure that the robotic arm 100 is in a state where it can be normally controlled at this time, thereby avoiding the recurrence of an abnormality during the process of the processor controlling the robotic arm 100 to enter the cabin 201.
[0225] The following describes the related process of the processor controlling the robotic arm 100 to enter the cabin 201.
[0226] In a possible implementation manner, the robotic arm 100 includes a support arm 60 installed on the body 200, and the support arm 60 rotates relative to the mounting surface 2011 on the body 200. The processor controls the robotic arm 100 to enter the cabin 201, including:
[0227] Step C: The processor obtains the pose information of the robotic arm 100. The pose information includes the angle value of the first included angle, and the first included angle is the included angle between the support arm 60 and the mounting surface 2011.
[0228] It can be understood that for the specific description of the first included angle, reference can be made to Figure 3 the related description of the included angle β therein, which will not be elaborated here.
[0229] In addition, the pose information may further include other information in addition to the first included angle, such as the included angle α, which is not limited herein.
[0230] Step D: When the processor determines that the robotic arm 100 is in the first posture according to the attitude information, control the robotic arm 100 to adjust from the first posture to the second posture. The first posture includes that the angle value of the first included angle is within the first preset angle range. The first preset angle range is an angle range determined according to the state of the support arm 60 outside the cabin body 201. The second posture includes that the angle value of the first included angle is within the second preset angle range. The second preset angle range is an angle range determined according to the state of the support arm 60 accommodated in the cabin body 201.
[0231] The first preset angle range and the second preset angle range are introduced separately below.
[0232] Regarding the first preset angle range
[0233] It can be understood that, due to the different structures of the robotic arm 100, the first preset angle range determined according to the state of the support arm 60 outside the cabin body 201 is different. Several examples are listed below for illustration.
[0234] Example 1: As Figure 3 shown, when the support arm 60 performs a task, the angle value of the first included angle (i.e., included angle β) is 90°, that is, the support arm 60 is in a state perpendicular to the mounting surface 2011, that is, the first preset angle range is 90°.
[0235] In addition, the first preset angle range can be [90°, 95°], [90°, 95°], [90°, 120°], [89°, 95°], or [85°, 100°], etc. The embodiments of the present application do not make specific limitations on this.
[0236] Example 2: As Figure 5 shown, the cabin body 201 adopts a partially sunken design, and the cabin body 201 is composed of an inclined surface and a cover body 2013.
[0237] In addition, part of the mounting structure (such as the base 50) of the support arm 60 on the main body 200 is arranged on the surface of the main body 200, that is, outside the cabin body 201.
[0238] As Figure 5 shown in (b) of it, when the robotic arm 100 is in the working state of performing a task outside the cabin body 201, the processor first controls the cover body 2013 to rotate towards the side away from the main body 200, thereby opening the cabin body 201. After opening the cabin body 201, the processor controls the support arm 60 to rotate towards the side away from the mounting surface 2011, and adjusts the angle between the connecting arm 70 and the support arm 60, thereby making the robotic arm 100 in a preparatory state. When the robotic arm 100 is in the preparatory state, the processor controls the cover body 2013 to close.
[0239] It can be understood that the process of the robotic arm 100 entering the cabin 201 is the reverse process of the above-mentioned robotic arm 100 leaving the cabin 201. Therefore, the processor should first control the cover 2013 to open and avoid the support arm 60 colliding with the cover 2013, that is, the first angle between the support arm 60 and the mounting surface 2011 is greater than or equal to the minimum angle in the first preset angle range, that is, the starting angle in the first preset angle range.
[0240] In addition, the starting angle in the first preset angle range can be 30°, 45°, or 60°, depending on the actual implementation, and is not limited thereto.
[0241] Example 3: As shown in (c) of Figure 5 The maximum angle of the first preset angle range is: the angle β between the support arm 60 and the mounting surface 2011 when the robotic arm 100 extends to the maximum distance outside the main body 200.
[0242] It can be understood that the maximum angle of the first preset angle range can be 120°, 135°, or 150°, etc., depending on the actual implementation, and is not limited thereto.
[0243] It should be understood that the above Examples 1 to 3 are only exemplary descriptions of the first preset angle range, and the first preset angle range can also be other angle ranges, which are not specifically limited in the embodiments of the present application.
[0244] It can be understood that the first posture can refer to that the first angle (i.e., angle β) between the support arm 60 and the mounting surface 2011 is within the first preset angle range, that is, the support arm 60 is in a working state, that is, the support arm 60 is in an extended state.
[0245] In addition, the second angle (i.e., angle α) in the first posture is not limited in the embodiments of the present application. For example, the angle between the projection 701 of the connecting arm 70 on the mounting surface 2011 and the length direction 2012 of the cabin 201 in the first posture (i.e., angle α) can be [0°, 180°]. This is uniformly explained here and will not be repeated below.
[0246] It should be understood that the second angle in the embodiments of the present application is the angle between the extending direction of the robotic arm 100 and the length direction 2012 of the cabin 201. For the relevant description of the angle α, reference can be made to the foregoing Figure 3 and will not be repeated here.
[0247] Regarding the second preset angle range
[0248] It can be understood that according to the different structures of the robotic arm 100, the second preset angle range determined by the state of the support arm 60 accommodated in the cabin 201 is different.
[0249] For example, asFigure 3 As shown, when the support arm 60 is accommodated in the cabin body 201, the support arm 60 is parallel to the mounting surface 2011, and thus the second preset angle range is 0°.
[0250] For another example, as shown in (a) of Figure 5 , since the bottom inside the cabin body 201 is an inclined surface, the support arm 60 can be parallel to the inclined surface, or the support arm 60 can be parallel to the mounting surface 2011, that is, the second preset angle range is less than or equal to 0° (taking the rotation of the support arm 60 in the direction away from the mounting surface 2011 as a positive angle).
[0251] Exemplarily, the second preset angle range can be [-15°, 0°], or [-10°, 0°], or [-5°, 0°], etc.
[0252] It should be understood that the above second preset angle range is only an example and is not limited thereto, depending on the actual implementation.
[0253] It can be understood that the second posture may refer to the posture when the support arm 60 has entered the cabin body 201, that is, the state where the support arm 60 enters the cabin body 201, which is also the state where the support arm 60 is in the folded state.
[0254] In addition, when the robotic arm 100 is in the second posture, the second included angle (i.e., the included angle α) is 0° or 90°. For example, as shown in Figure 3 , when the robotic arm 100 is in the second posture, the support arm 60 is accommodated in the cabin body 201, that is, the extension direction of the robotic arm 100 (i.e., the projection 701 of the connecting arm 70 on the mounting surface 2011) is parallel to the length direction 2012 of the cabin body 201, that is, the second included angle is 0°.
[0255] In other words, in the structure shown in Figure 3 , if the robotic arm 100 is in the second posture, then the second included angle is 0°.
[0256] For another example, as shown in Figure 5 , when the support arm 60 is accommodated in the cabin body 201, the projection of the extension direction of the robotic arm 100 on the mounting surface 2011 is perpendicular to the length direction 2012 of the cabin body 201, that is, the second included angle is 90°.
[0257] That is to say, in the structure shown in Figure 5 , if the robotic arm 100 is in the second posture, then the second included angle is 90°.
[0258] It should be understood that during the process of the processor controlling the robotic arm 100 to execute a task, if an exception occurs, compared with the processor controlling the robotic arm 100 to execute the task normally, the posture of the robotic arm 100 is uncontrollable at this time, and thus the posture of the robotic arm 100 is chaotic in this scenario. For example, during the process of the robotic arm 100 executing a task, at the start or end of task execution, the posture of the robotic arm 100 is usually a preparatory posture. However, when an exception occurs during the process of the robotic arm 100 executing a task, the posture of the robotic arm 100 usually changes based on the actual situation of task execution.
[0259] In addition, in combination with Figure 3 Regarding the relevant angle requirements (such as the included angle β) when the robotic arm 100 returns to the cabin, in order to facilitate the processor to control the robotic arm 100 to enter the cabin body 201, the processor should judge the posture of the robotic arm 100 when an exception occurs, and then execute different control processes according to different postures of the robotic arm 100.
[0260] That is to say, in the case where the processor controls the robotic arm 100 to enter the cabin body 201 due to the robotic arm 100, by obtaining the posture information of the robotic arm 100, the posture of the robotic arm 100 when an exception occurs can be determined, and when the posture of the robotic arm 100 is the first posture, the robotic arm 100 is controlled to be adjusted to the second posture. Furthermore, the action path of controlling the robotic arm 100 to return to the cabin can be simplified according to the posture of the robotic arm 100, thereby improving the efficiency and reliability of the processor controlling the robotic arm 100 to return to the cabin.
[0261] It should be understood that the above first preset angle range and second preset angle range can be predefined or pre-configured in the processor. This is uniformly explained here and will not be elaborated further below.
[0262] In a possible implementation manner, the processor controlling the robotic arm 100 to enter 201 further includes:
[0263] Step E: When the angle value of the first included angle is outside the first preset angle range and the second preset angle range, the processor controls the robotic arm 100 to adjust the angle value of the first included angle to the first preset angle range.
[0264] It can be understood that according to the foregoing descriptions regarding the first posture and the second posture, when the first included angle between the support arm 60 and the mounting surface 2011 is outside the first preset angle range and the second preset angle range, it can be considered that the posture of the robotic arm 100 is in an intermediate posture between the first posture and the second posture. For example, as Figure 3 shown, the first preset angle range can be greater than or equal to 90°, the second preset angle range can be less than or equal to 0°, and the intermediate posture can include the first included angle between the support arm 60 and the mounting surface 2011 being between 0° and 90°. Another example is, asFigure 5 As shown, if the first preset angle range is greater than or equal to 45°, and the second preset angle range is less than or equal to 0°, the intermediate posture may include that the first included angle between the support arm 60 and the mounting surface 2011 is between 0° and 45°.
[0265] That is to say, when the processor determines that the posture of the robotic arm 100 is the intermediate posture between the first posture and the second posture according to the posture information, the processor controls the robotic arm 100 to adjust the angle value of the first included angle to the first preset angle range (i.e., controls the robotic arm 100 to reset to the deployed state), which can eliminate the uncertainty during the process of the robotic arm 100 entering the cabin 201, thereby improving the reliability of the processor to control the robotic arm 100 to return to the cabin.
[0266] For example, in combination with Figure 1 and Figure 3 , assuming that the first preset angle range is [90°, 95°] and the second preset angle range is less than or equal to 0°, then when the first included angle (included angle β) between the support arm 60 and the mounting surface 2011 is greater than 0° and less than 90°, or when the included angle β is greater than 95° and less than 180°, if the second included angle (included angle α) between the extending direction of the robotic arm 100 and the length direction 2012 of the cabin 201 is not 0°, then the processor continues to control the support arm 60 to rotate towards the mounting surface 2011 (i.e., the processor controls the robotic arm 100 to adjust to the second posture), and the support arm 60 will collide with the side wall of the cabin 201. By controlling the support arm 60 to rotate towards the side away from the mounting surface 2011, and then adjusting the angle value of the first included angle to [90°, 95°], this can eliminate the uncertainty caused by whether the second included angle is 0°, thereby improving the reliability of the processor to control the robotic arm 100 to return to the cabin.
[0267] Another example, as shown in Figure 5 , assuming that the first preset angle range is [45°, 135°] and the second preset angle range is less than or equal to 0°, then when the first included angle between the support arm 60 and the mounting surface 2011 is greater than 0° and less than 45°, or when the first included angle is greater than 135° and less than 180°, if the cover 2013 has covered the cabin 201 (i.e., the cover 2013 is closed), the processor continues to control the support arm 60 to continue rotating towards the cabin 201 (i.e., the processor controls the robotic arm 100 to adjust to the second posture), and in this scenario, the support arm 60 will collide with the cover 2013. By controlling the support arm 60 to rotate towards the side away from the mounting surface 2011, and then adjusting the angle value of the first included angle to [45°, 135°], this can eliminate the uncertainty caused by whether the cover 2013 is closed, thereby improving the reliability of the processor to control the robotic arm 100 to return to the cabin.
[0268] It should be understood that, as described in the relevant description of the brushed motor in S401 above, when the structure of the robotic arm 100 uses a brushed motor (for example, the second joint 20 uses a brushed motor), the angle information obtained by the processor is inaccurate. For example, since the brushed motor uses a limit switch to detect the angle and only detects 0° or 90°, the angle between 0° and 90° may feedback an inaccurate angle value to the processor, such as 30° or 45°. This will cause the angle value of the first included angle judged by the processor according to the attitude information to be inaccurate, and further cause the attitude of the robotic arm 100 determined by the processor according to the attitude information to be different from the actual attitude of the robotic arm 100, thereby reducing the reliability of the processor to control the robotic arm 100 to return to the cabin. By further improving step E, the above problems can be overcome.
[0269] Optionally, the processor controls the robotic arm 100 to adjust the angle value of the first included angle to a first preset angle range (i.e., step E), including: the processor controls the robotic arm 100 to adjust the angle value of the first included angle to a preset angle in the first preset angle range. The preset angle is an angle determined according to the sensor for monitoring the angle value of the first included angle.
[0270] It can be understood that the sensor for detecting the angle value of the first included angle can be, for example, a limit switch. The limit switch can detect whether the first included angle is one of several limited angles such as 0° or 90°. For example, assuming that the first preset angle range is [90°, 95°] and the second preset angle range is [0°, 5°], and the angle values that the limit switch can detect include 0° and 90°, then the preset angle in the first preset angle range can be 90°.
[0271] It should be understood that the above limit switch is only an example, and the sensor for detecting the angle value of the first included angle can also be other sensors, which is not limited herein.
[0272] In addition, the angle values that the above limit switch can detect including 0° and 90° are only examples, and it can also be other angles, depending on the actual implementation, which is not limited herein.
[0273] That is to say, considering that the angles that the sensor for detecting the angle value of the first included angle can detect are limited, by controlling the robotic arm 100 to adjust the first included angle to the preset angle that the sensor can detect within the first preset angle range, the attitude of the robotic arm 100 can be adjusted to an accurate angle, thereby improving the reliability of the processor to control the robotic arm 100 to return to the cabin.
[0274] In another possible implementation manner, the processor controls the robotic arm 100 to enter the cabin 201, and further includes:
[0275] Step F: When the angular value of the first included angle is outside the first preset angle range and the second preset angle range, the processor controls the robotic arm 100 to adjust the angular value of the first included angle to the second preset angle range.
[0276] It can be understood that for the situation where the angular value of the first included angle is outside the first preset angle range and the second preset angle range, reference can be made to the relevant description in the aforementioned Step E, which will not be elaborated here.
[0277] That is to say, when the processor determines that the posture of the robotic arm 100 is the intermediate posture between the first posture and the second posture according to the posture information, the processor can control the robotic arm 100 to directly adjust from the intermediate posture to the second posture (i.e., control the robotic arm 100 to return to the cabin), thereby reducing the complexity of the processor controlling the robotic arm 100 to return to the cabin.
[0278] It can be understood that the processor controlling the robotic arm 100 to adjust the angular value of the first included angle to the second preset angle range may include: the processor controlling the robotic arm 100 to adjust the first included angle to the preset angle within the second preset angle range.
[0279] It can be understood that the preset angle within the second preset angle range is the angle that the in-place switch can detect (such as 0°). Reference can be made to the relevant description of the preset angle within the first preset angle range above, which will not be elaborated here.
[0280] That is to say, considering the limited angle that the sensor for detecting the angular value of the first included angle can detect, the processor controls the robotic arm 100 to adjust the first included angle to the preset angle within the second preset angle range that the sensor can detect, thereby improving the reliability of the processor to adjust the posture of the robotic arm 100, and thus improving the reliability of the processor to control the robotic arm 100 to return to the cabin.
[0281] It should be understood that as described in the relevant content of the second included angle in the aforementioned Step E, the second included angle is also related to the processor controlling the robotic arm 100 to return to the cabin. The control of the robotic arm 100 by the processor according to the second included angle will be described below.
[0282] In a possible implementation manner, the second posture further includes: the angular value of the second included angle is the first angle. The second included angle is the included angle between the extension direction of the robotic arm 100 and the length direction 2012 of the cabin body 201. The first angle is the angle determined according to the support arm 60 entering or leaving the cabin body 201.
[0283] It can be understood that for the second included angle, reference can be made to the Figure 3 relevant description of the included angle α above, which will not be elaborated here.
[0284] In addition, when the support arm 60 enters or leaves the cabin body 201, asFigure 1 The second included angle shown should be 0°, or as Figure 5 shown, the second included angle should be 90°. In other words, the first angle can be 0° or 90°, depending on the design of the support 60 and the cabin body 201, and the embodiments of the present application do not make specific limitations in this regard.
[0285] It can also be understood that according to the descriptions of the first angle in the foregoing step E and step D, when the processor controls the support arm 60 to enter the cabin body 201, the second included angle should be adjusted to the first angle first, so that the angle value of the first included angle can be adjusted to the second preset angle range. Otherwise, the support arm 60 will collide with the side wall of the cabin body 201 or block the movement of the support arm 60 towards the installation surface 2011.
[0286] That is to say, the second posture also includes that the angle value of the second included angle is the first angle, so that the support arm 60 can move towards the installation surface 2011 to adjust the angle value of the first included angle to the second preset angle range.
[0287] In a possible implementation manner, when the processor controls the robotic arm 100 to enter the cabin body 201, it further includes:
[0288] Step G: When the angle value of the second included angle is between the first angle and the second angle, the processor controls the robotic arm 100 to adjust the angle value of the second included angle to the second angle. The second angle is an angle determined according to a sensor for detecting the angle value of the second included angle.
[0289] It can be understood that the sensor for detecting the angle value of the second included angle is similar to the sensor for detecting the angle value of the first included angle, and this sensor can be a limit switch. For example, the first joint 10 can adopt a brushed motor. Combining Figure 1 and Figure 3 it can be known that the key angles of the second included angle (i.e., included angle α) are 0° and 90°. Furthermore, the limit switch for detecting the angle value of the second included angle can only detect 0° and 90°. Therefore, the first angle is 0°, and the second angle is 90°.
[0290] In addition, the angle values that the above limit switch can detect including 0° and 90° are only examples, and it can also be other angles, depending on the actual implementation, and no limitations are imposed in this regard.
[0291] That is to say, considering that the angles that the sensor for detecting the angle value of the second included angle can detect are limited, by controlling the robotic arm 100 to adjust the second included angle to the second angle that the sensor can detect, the processor can adjust the posture of the robotic arm 100 to an accurate angle, thereby improving the reliability of the processor to control the robotic arm 100 to return to the cabin.
[0292] In a possible implementation, the robotic arm 100 further includes a gripper 90; the first posture further includes that the third included angle is within a third preset angle range. The third included angle is the included angle between the jaws in the gripper 90 and the central axis of the gripper 90. The third preset angle range is an angle range determined according to the unfolded state of the gripper 90 when it is not gripping an object. The second posture further includes that the third included angle is within a fourth preset angle range. The fourth preset angle range is an angle range determined according to the clamped state of the gripper when it is not gripping an object.
[0293] It can be understood that the third included angle can refer to the included angle γ in Figure 3 , which will not be elaborated here.
[0294] The third preset angle range and the fourth preset angle range are introduced separately below.
[0295] Regarding the third preset angle range
[0296] It can be understood that according to the different structures of the gripper 90, the third preset angle range determined according to the unfolded state of the gripper 90 when it is not gripping an object is different.
[0297] For example, as Figure 3 shown, when the gripper 90 is in the unfolded state of not gripping an object, the third included angle (i.e., the included angle γ) is 90°, that is, the third preset angle range is 90°.
[0298] In addition, according to the different settings of the fifth joint 40 on the gripper 90, the third preset angle range can be [90°, 95°], [90°, 95°], [90°, 120°], [89°, 95°], or [85°, 100°], etc. The embodiments of the present application do not make specific limitations on this.
[0299] Regarding the fourth preset angle range
[0300] It can be understood that according to the different structures of the gripper 90, the fourth preset angle range determined according to the clamped state of the gripper 90 when it is not gripping an object is different.
[0301] For example, as Figure 3 shown, when the gripper 90 is in the clamped state of not gripping an object, the third included angle is 0°, that is, the third preset angle range is 0°.
[0302] For another example, if the jaws of the gripper 90 are arranged in a staggered manner, then in the clamped state, the third included angle may be a negative angle, such as -10°, -20°, or -40°, etc. The embodiments of the present application do not make specific limitations on this.
[0303] It can be understood that according to the different jaw structures of the gripper 90, the fourth preset angle range can be [0°, 5°], [0°, 10°], [-10°, 0°], [-20°, 0°], or [-20°, 10°], etc. The embodiments of the present application do not make specific limitations on this.
[0304] That is to say, the first posture further includes the posture of the gripper 90 in the unfolded state of not gripping an object, and the second posture further includes the posture of the gripper 90 in the clamped state of not gripping an object. By adjusting the state of the gripper 90 from the unfolded state to the clamped state, the controller can avoid the gripper 90 colliding with the side wall of the cabin 201 during the process of the robotic arm 100 entering the cabin 201.
[0305] In a possible implementation manner, the processor controls the robotic arm 100 to enter the cabin 201, and further includes:
[0306] Step H: When the angle value of the third included angle is outside the third preset angle range and the fourth preset angle range, the processor controls the gripper 90 to adjust the angle value of the third included angle to the third preset angle range.
[0307] It can be understood that when the angle value of the third included angle is outside the third preset angle range and the fourth preset angle range, it can be considered that the gripper 90 is in an intermediate state between the above-mentioned unfolded state and the clamped state, that is, the state of the gripper 90 gripping an object (or a remaining object). When the gripper 90 is in the above intermediate state, the gripper 90 should be controlled to adjust to the unfolded state of not gripping an object to avoid the object gripped by the gripper 90 blocking the cabin 201, resulting in the robotic arm 100 being unable to completely enter the cabin 201.
[0308] That is to say, when the processor determines that the gripper 90 is in the intermediate state of gripping an object according to the posture information, the processor controls the gripper 90 to adjust the third included angle to the third preset angle range (that is, controls the gripper 90 to reset to the unfolded state of not gripping an object), which can prevent the object gripped by the gripper 90 from blocking the cabin 201, thereby eliminating the uncertainty during the process of the robotic arm 100 entering the cabin 201, and thus improving the reliability of the processor controlling the robotic arm 100 to return to the cabin.
[0309] In a possible implementation manner, the processor controls the gripper 90 to adjust the angle value of the third included angle to the third preset angle range (that is, step H), including: the processor controls the gripper 90 to adjust the angle value of the third included angle to the preset angle in the third preset angle range. The preset angle in the third preset angle range is the angle determined according to the sensor for detecting the angle value of the third included angle.
[0310] It can be understood that the sensor for detecting the angular value of the third included angle can be, for example, a limit switch. The limit switch can detect whether the third included angle is one of several limited angles such as 0° or 90°. For example, assuming that the third preset angle range is [90°, 95°] and the fourth preset angle range is [0°, 5°], and the angular values that the limit switch can detect include 0° and 90°, then the preset angle in the third preset angle range can be 90°.
[0311] It should be understood that the above-mentioned limit switch for monitoring the angular value of the third included angle is only an example, and the sensor for detecting the angular value of the third included angle can also be other sensors, which are not limited herein.
[0312] In addition, the angular values that the above-mentioned limit switch can detect including 0° and 90° are only examples, and it can also be other angles, depending on the actual implementation, which are not limited herein.
[0313] That is to say, considering that the angles that the sensor for detecting the angular value of the third included angle can detect are limited, the processor adjusts the third included angle to the preset angle that the sensor can detect within the third preset angle range by controlling the clamping member 90, so that the attitude of the robotic arm 100 can be adjusted to an accurate angle, thereby improving the reliability of the processor to control the robotic arm 100 to return to the cabin.
[0314] It should be understood that in the embodiments of the present application, for the first attitude, the included angle between the connecting arm 70 and the supporting arm 60, and the included angle between the connecting arm 70 and the working arm 80 are not limited. In other words, in the first attitude, the angular value of the included angle between the connecting arm 70 and the supporting arm 60 can be any angular value, and the angular value of the included angle between the connecting arm 70 and the working arm 80 can be any angular value.
[0315] In addition, for the second attitude, when the robotic arm 100 further includes a connecting arm 70 and a working arm 80, the included angle between the connecting arm 70 and the supporting arm 60, and the included angle between the working arm 80 and the supporting arm 70 can be limited, which will be described below.
[0316] In a possible implementation manner, the robotic arm 100 further includes a connecting arm 70 that rotates relative to the supporting arm 60, and a working arm 80 that rotates relative to the connecting arm 70; the second attitude further includes: the angular value of the included angle between the connecting arm 70 and the supporting arm 60 is within a fifth preset angle range, and the angular value of the included angle between the working arm 80 and the connecting arm 70 is within a sixth preset angle range. The fifth preset angle range is an angle range determined according to the state that the connecting arm 70 is accommodated in the cabin 201. The sixth preset angle range is an angle range determined according to the state that the working arm 80 is accommodated in the cabin 201.
[0317] It can be understood that when the robotic arm 100 is in the folded state where it is entirely accommodated within the cabin 201, the support arm 60, the connecting arm 70, and the working arm 80 are substantially parallel to each other. Thus, for the fifth preset angle range and the sixth preset angle range, reference can be made to the relevant description of the second preset angle range. For example, the fifth preset angle range can be [-15°, 0°], or [-10°, 0°], or [-5°, 0°], etc., and the sixth preset angle range can be [-15°, 0°], or [-10°, 0°], or [-5°, 0°], etc. Details are not elaborated here.
[0318] That is to say, when the robotic arm 100 further includes the connecting arm 70 and the working arm 80, the second posture further includes the posture where the connecting arm 70 and the working arm 80 are accommodated within the cabin 201, thereby completing the retraction of the connecting arm 70 and the working arm 80.
[0319] Next, in combination with the above steps E to G, taking Figure 1 and Figure 3 the structure of the robotic arm 100 shown as an example, the actions of the processor controlling the robotic arm 100 to enter the cabin 201 are described in the following three cases.
[0320] Case 1
[0321] It should be understood that in this case, the first included angle (i.e., the included angle β) is 90°, the second included angle (i.e., the included angle α) is 90°, and the third included angle (i.e., the included angle γ) is between 0° and 90°. In other words, in Case 1, the robotic arm 100 is in the grasping state (or called the carrying state).
[0322] In Case 1, the processor controls the robotic arm 100 to enter the cabin 201, including the following steps.
[0323] Step 1: The processor controls the robotic arm 100 to extend forward.
[0324] For example, as Figure 4 shown, the processor controls the included angle between the connecting arm 70 and the support arm 60 to become smaller, and the included angle between the support arm 70 and the working arm 80 to become larger, so that the gripper 90 can be as far away from the body 200 as possible.
[0325] Step 2: The processor controls the gripper 90 to be in the deployed state.
[0326] It can be understood that when the gripper 90 is away from the body 200, the processor controls the gripper 90 to adjust the third included angle to the third preset angle range, that is, the processor controls the gripper 90 to be in the deployed state without gripping an object, so as to put down the object and prevent the object from falling into the cabin 201.
[0327] For example, in combination with the relevant description of the foregoing step H, the processor can control the gripper 90 to adjust the third included angle to a preset angle that can be detected by a sensor within a third preset angle range.
[0328] Step 3: The processor controls the support arm 60 to adjust the second included angle to 0°.
[0329] It can be understood that when the second included angle is 0°, that is, the projection 701 of the connecting arm 70 on the mounting surface 2011 is parallel to the length direction 2012 of the cabin body 201, so as to facilitate the subsequent rotation of the support arm 60 towards the mounting surface 2011.
[0330] Step 4: The processor controls the support arm 60 to adjust the first included angle to 0°.
[0331] It can be understood that when the first included angle is adjusted to 0°, that is, the support arm 60 enters the cabin body 201.
[0332] In addition, during the process of adjusting the first included angle to 0° as described above, the connecting arm 70 and the working arm 80 are also adjusted accordingly to avoid collision between the connecting arm 70 and the working arm 80 and the side wall of the cabin body 201.
[0333] Step 5: The processor controls the gripper 90 to adjust from the unfolded state to the clamped state.
[0334] Step 6: The processor controls the connecting arm 70 and the working arm 80 to retract, so that the robotic arm 100 completely enters the cabin body 201.
[0335] Case 2
[0336] It should be understood that the difference between Case 2 and Case 1 is that: the processor adjusts the angle value of the first included angle to a preset angle within the first preset range, adjusts the angle value of the second included angle to a second angle, and adjusts the angle value of the third included angle to a third preset angle range (i.e., Step 2), and then the processor can execute the subsequent Steps 3 to 6.
[0337] It can be understood that Case 2 can also be referred to as the robotic arm being in the clamping preparation posture.
[0338] Case 3
[0339] It should be understood that the difference between Case 3 and Case 1 is that: the robotic arm 100 may be in the intermediate process of leaving the cabin body 201. At this time, the first included angle is 0°, the second included angle is 0°, and the third included angle is 0°. Then the processor can execute the subsequent Step 6.
[0340] It can be understood that Case 3 can also be referred to as the robotic arm being in the intermediate posture of leaving the cabin.
[0341] It can be understood that the above cases 1 to 3 are only examples, and the robotic arm 100 may also be in other situations (for example, the first included angle is 90°, and the second and third included angles are both 0°. In this case, the processor can execute steps 4 to 6). The embodiments of the present application do not make specific limitations on this.
[0342] It can be understood that to facilitate the processor to control the robotic arm 1 to return to the cabin, before the processor controls the robotic arm 100 to enter the cabin body 201, the processor can execute a pre-recovery process to facilitate the control of the robotic arm 100 in case of an abnormality.
[0343] Optionally, before the processor controls the robotic arm 100 to enter the cabin body 201, Figure 4 The method shown also includes:
[0344] The processor executes a pre-recovery process. The pre-recovery process includes at least one of the following:
[0345] The processor clears the error status;
[0346] The processor turns off the emergency stop state of the motor;
[0347] The processor masks the overheat alarm of the motor;
[0348] Or, the processor turns off the monitoring thread of the motor.
[0349] It can be understood that the above error status may include one or several of the following:
[0350] The error status generated due to the failure of the sensor for monitoring the working environment of the robotic arm 100;
[0351] The error status generated due to the communication abnormality between the processor and the slave processor for controlling the motor;
[0352] Or, the error status generated due to the abnormality of the motor (such as the temperature abnormality, current abnormality, or running time abnormality described in S401, etc.).
[0353] It can also be understood that the emergency stop state of the motor is that due to the temperature abnormality or current abnormality of the motor, etc., the processor quickly cuts off the power supply of the motor. In addition, the processor turning off the emergency stop state of the motor can be understood as the processor re-supplying power to the motor.
[0354] It can also be understood that the processor masking the overheat alarm of the motor is mainly used to prevent the processor from being unable to read the electrical parameters (such as current) and angle information of the motor due to continuous alarms.
[0355] It can also be understood that the monitoring thread of the motor may include, for example, a motor electrical parameter detection thread, or a motor angle detection thread update, etc. In addition, the monitoring thread and the control process of the processor controlling the manipulator 100 to enter the cabin 201 are two parallel threads. By shutting down the monitoring thread, the interference of the monitoring thread on the control process of the manipulator 100 entering the cabin 201 can be avoided.
[0356] It should be understood that when the processor determines that an abnormality has occurred based on information from a sensor used to monitor the working environment of the robotic arm 100, or when an abnormality has occurred in communication between the processor and a slave processor used to control the motor, the processor can clear the error state without shutting down the motor's emergency stop state, shielding the motor's overheating alarm, or shutting down the motor's monitoring thread, etc.
[0357] Optionally, after the processor controls the robot arm 100 to enter the cabin 201, Figure 4 The method shown also includes:
[0358] The processor unmasks the overheat alarm of the motor;
[0359] And / or, the processor restarts the motor monitoring thread.
[0360] It is understood that in the pre-recovery process, if the processor shields the overheat alarm of the motor, then after the processor controls the mechanical arm 100 to enter the cabin 201, the shield should be removed so that an alarm can be issued when the motor overheats. In addition, in the pre-recovery process, if the processor shuts down the monitoring thread of the motor, then after the processor controls the mechanical arm 100 to enter the cabin 201, the monitoring thread should be restarted so that the electrical parameters and angle information of the motor can be detected.
[0361] Because in the embodiment of the present application, when the cleaning robot determines that the robotic arm 100 is outside the cabin 201 and an abnormality has occurred based on the information of the robotic arm 100, the robotic arm 100 is controlled to enter the cabin 201. This can reduce the impact of unreliable resetting of the robotic arm 100 on the user, ensure the consistency of the posture of the robotic arm 100, and reduce the error impact of the sensor feedback of the posture information of the robotic arm 100, thereby avoiding damage to the function of the cleaning robot, improving the reliability and stability of the cleaning robot in performing tasks, and thereby improving the user experience.
[0362] For example, compared to relying on sending a prompt message to the user to prompt the user to intervene and reset the robotic arm 100, controlling the robotic arm 100 to enter the cabin 201 can reduce the degree of dependence of the robotic arm 100 on user intervention during the recovery process, thereby reducing the impact caused by the unreliable user resetting of the robotic arm 100, thereby avoiding damage to the function of the cleaning robot.
[0363] For another example, compared with resetting the robotic arm 100 to the standby state, controlling the robotic arm 100 to enter the cabin 201 can further reset the robotic arm 100, thereby ensuring the consistency of the posture of the robotic arm 100, reducing the influence of sensor errors, and thus reducing the influence on the subsequent posture control of the robotic arm 100.
[0364] It can also be understood that in the case of an abnormality occurring outside the cabin 201 where the robotic arm 100 is located, controlling the robotic arm 100 to enter the cabin 201 can also avoid affecting subsequent basic cleaning tasks. For example, when the robotic arm 100 is stuck by the bed during the execution of a task, after the robotic arm 100 enters the cabin 201, the cleaning robot can continue to perform basic cleaning tasks, avoiding damage to the functions of the cleaning robot.
[0365] Figure 6 It is a schematic flow of a control method for a cleaning robot provided by an embodiment of the present application Figure 2 As Figure 6 shown, the method includes the following steps.
[0366] S601. The processor obtains information of the robotic arm.
[0367] It can be understood that step S601 can refer to S401, which will not be elaborated here.
[0368] S602. The processor determines whether to send a prompt message according to the information of the robotic arm. The prompt message is used to prompt the user to intervene.
[0369] It can be understood that if so, step S603 is executed; if not, step S605 is executed.
[0370] S603. The processor sends a prompt message to the user.
[0371] It can be understood that step S604 can be step A in S402, which will not be elaborated here.
[0372] S604. The processor determines to execute the automatic recovery process in response to the user's operation instruction.
[0373] It can be understood that step S604 can refer to step B in S402, which will not be elaborated here.
[0374] S605. The processor executes the pre-recovery process.
[0375] It can be understood that the pre-recovery process can refer to the relevant description in S402, which will not be elaborated here.
[0376] S606. The processor determines whether the robotic arm is in a posture with inaccurate angle information according to the posture information of the robotic arm.
[0377] It can be understood that postures with inaccurate angle information may include at least one of the following:
[0378] The angle value of the first included angle is between 0° and 90°; the angle value of the second included angle is between 0° and 90°; the angle value of the third included angle is between 0° and 90°.
[0379] It should be understood that for postures with inaccurate angle information, reference can be made to the relevant descriptions in S402, which will not be elaborated here.
[0380] In addition, if the robotic arm is in a posture with inaccurate angle information, step S607 is executed; if the robotic arm is in a posture with accurate angle information, step S608 is executed.
[0381] S607. The processor controls the robotic arm to adjust from a posture with inaccurate angle information to a posture with accurate angle information.
[0382] S608. The processor judges the posture of the robotic arm.
[0383] If the robotic arm is in a grasping posture, step S609 is executed; if the robotic arm is in a pre-gripping posture, step S610 is executed; if the robotic arm is in an intermediate posture for exiting the cabin, step S611 is executed.
[0384] It can be understood that for the above-mentioned grasping posture, reference can be made to Case 1 in S402, for the pre-gripping posture, reference can be made to Case 2 in S402, and for the intermediate posture for exiting the cabin, reference can be made to Case 3 in S402, which will not be elaborated here.
[0385] S609. The processor controls the robotic arm to put down the object.
[0386] It can be understood that for the relevant implementation of step S609, reference can be made to Steps 1 to 2 in S402, which will not be elaborated here.
[0387] S610. The processor controls the support arm in the robotic arm to enter the cabin.
[0388] It can be understood that for the relevant implementation of step S610, reference can be made to Steps 3 to 4 in S402, which will not be elaborated here.
[0389] S611. The processor controls the connecting arm and the working arm in the robotic arm to enter the cabin.
[0390] It can be understood that for the relevant implementation of step S611, reference can be made to Steps 5 to 6 in S402, which will not be elaborated here.
[0391] Optionally, Figure 6 The method shown further includes:
[0392] S612. The processor removes the shielding of the overheat alarm for the motor and / or restarts the monitoring thread of the motor.
[0393] It can be understood that for the relevant implementation of step S612, reference can be made to the relevant description in S402, which will not be elaborated here.
[0394] In the embodiment of the present application, when the processor determines an abnormality based on the information of the robotic arm, the processor can first determine whether to send a prompt message to prompt the user to intervene, and after the determination, judge the posture of the robotic arm to determine whether the posture of the robotic arm is a posture with inaccurate angle information, and then adjust the posture of the robotic arm to a posture with accurate angle information, thereby improving the reliability of the processor to control the robotic arm to return to the cabin.
[0395] The above introduction has been made to the method embodiments provided by the embodiments of the present application. Correspondingly, the embodiments of the present application also provide a control device for a cleaning robot, and this control device is used to implement the above various methods. This control device can be the processor in the above method embodiments, or a device or equipment including the above processor, or a component applicable to the above processor.
[0396] Figure 7 It is a schematic structural diagram of a control device for a cleaning robot provided by the embodiments of the present application. As Figure 7 shown, the cleaning robot includes a control device 700, and this control device 700 may include modules or units corresponding to implementing the above method embodiments. In a possible design, the control device 700 includes: a processing unit 702. Optionally, this control device 700 may further include a storage unit 701 for storing device program codes and / or data. It can be understood that the above processing unit 702 can also be referred to as a processing module.
[0397] For example, in one embodiment, the processing unit 702 is configured to: when the robotic arm is outside the cabin, obtain the information of the robotic arm; when an abnormality is determined based on the information of the robotic arm, control the robotic arm to enter the cabin.
[0398] In one embodiment, the information of the robotic arm includes the information of sensors for monitoring the working environment of the robotic arm and / or the information of motors for driving the robotic arm to adjust its posture.
[0399] In one embodiment, the processing unit 702 is configured to: when it is determined that the robotic arm is abnormal based on the information of the motor, control the cleaning robot to send a prompt message, and the prompt message is used to prompt the user to intervene; in response to the user's operation instruction, control the robotic arm to enter the cabin.
[0400] In one embodiment, determining the occurring abnormality based on the information of the sensor includes that the sensor fails, and / or there is an obstacle within the movement range of the robotic arm.
[0401] In one embodiment, determining the occurring abnormality based on the information of the motor includes at least one of the following: the temperature of the motor is outside the preset temperature range; the electrical parameters of the motor are outside the preset electrical parameter range; or, the operating time of the motor exceeds the preset time range, and the operating time of the motor is the time for the motor to drive the robotic arm to adjust its posture.
[0402] In one embodiment, the robotic arm includes a support arm mounted on the body, and the support arm rotates relative to the mounting surface on the body; the processing unit 702 is further configured to: obtain the posture information of the robotic arm, where the posture information includes the angular value of the first included angle, and the first included angle is the included angle between the support arm and the mounting surface; when it is determined that the robotic arm is in the first posture according to the posture information, control the robotic arm to adjust from the first posture to the second posture, the first posture includes that the angular value of the first included angle is within the first preset angle range, and the first preset angle range is an angle range determined according to the state of the support arm outside the cabin, and the second posture includes that the angular value of the first included angle is within the second preset angle range, and the second preset angle range is an angle range determined according to the state of the support arm accommodated in the cabin.
[0403] In one embodiment, the processing unit 702 is further configured to: when the angular value of the first included angle is outside the first preset angle range and the second preset angle range, control the robotic arm to adjust the angular value of the first included angle to the first preset angle range.
[0404] In one embodiment, the processing unit 702 is further configured to: control the robotic arm to adjust the angular value of the first included angle to the preset angle within the first preset angle range, and the preset angle within the first preset angle range is an angle determined according to the sensor for detecting the angular value of the first included angle.
[0405] In one embodiment, the angular value of the second included angle is the first angle, the second included angle is the included angle between the extending direction of the robotic arm and the length direction of the cabin, and the first angle is an angle determined according to the support arm entering or leaving the cabin.
[0406] In one embodiment, the processing unit 702 is further configured to: when the angular value of the second included angle is between the first angle and the second angle, control the robotic arm to adjust the angular value of the second included angle to the second angle, and the second angle is an angle determined according to the sensor for detecting the angular value of the second included angle.
[0407] In one embodiment, the robotic arm further includes a gripper; the first posture further includes that the third included angle is within a third preset angle range, where the third included angle is the included angle between the jaws in the gripper and the central axis of the gripper, and the third preset angle range is an angle range determined according to the unfolded state of the gripper when it is not gripping an object. The second posture further includes that the third included angle is within a fourth preset angle range, and the fourth preset angle range is an angle range determined according to the clamped state of the gripper when it is not gripping an object.
[0408] In one embodiment, the processing unit 702 is configured to:
[0409] When the angular value of the third included angle is outside the third preset angle range and the fourth preset angle range, control the gripper to adjust the angular value of the third included angle to the third preset angle range.
[0410] In one embodiment, the processing unit 702 is configured to: control the gripper to adjust the angular value of the third included angle to a preset angle within the third preset angle range, and the preset angle within the third preset angle range is an angle determined according to a sensor for detecting the angular value of the third included angle.
[0411] In one embodiment, the robotic arm further includes a connecting arm that rotates relative to the support arm, and a working arm that rotates relative to the connecting arm; the second posture further includes: the angular value of the included angle between the connecting arm and the support arm is within a fifth preset angle range, and the angular value of the included angle between the working arm and the connecting arm is within a sixth preset angle range. The fifth preset angle range is an angle range determined according to the state where the connecting arm is accommodated in the cabin, and the sixth preset angle range is an angle range determined according to the state where the working arm is accommodated in the cabin.
[0412] Since the control device 700 provided in this embodiment can execute the above method embodiment, the technical effects it can obtain can be referred to the above method embodiment and will not be elaborated here.
[0413] It should be understood that the processing unit 702 involved in the control device 700 can be implemented by a processor or processor-related circuit components, and can be a processor or a processing unit.
[0414] Exemplarily, Figure 8 FIG. is a schematic structural diagram of another control device of a cleaning robot provided by an embodiment of the present application. The control device 800 may include a processor 801. In a possible design, the control device 800 may further include a memory 802 and / or a transceiver 803. Among them, the processor 801 is coupled to the memory 802 and the transceiver 803, and can be connected through a communication bus, for example.
[0415] Next, in combination with Figure 8 Specific introductions will be made to the respective components of the control device 800:
[0416] Among them, the processor 801 is the control center of the control device 800, which can be a single processor or a collective term for multiple processing elements. For example, the processor 801 is one or more central processing units (CPUs), or can be an application specific integrated circuit (ASIC), or one or more integrated circuits configured to implement the embodiments of the present application. For example: one or more digital signal processors (DSPs), or one or more field programmable gate arrays (FPGAs).
[0417] In a possible design solution, the processor 801 can execute various functions of the control device 800 by running or executing software programs stored in the memory 802 and calling data stored in the memory 802.
[0418] In a specific implementation, as an embodiment, the processor 801 can include one or more CPUs, such as Figure 8 the CPU0 and CPU1 shown in
[0419] In a specific implementation, as an embodiment, the control device 800 can also include multiple processors, such as Figure 8 the processor 801 and the processor 804 shown in
[0420] Among them, the memory 802 is used to store the software program for executing the solution of the present application and is controlled by the processor 801 to execute. The specific implementation manner can refer to the above method embodiments and will not be elaborated here.
[0421] In a possible design, the memory 802 can be a read-only memory (ROM) or other types of static storage devices that can store static information and instructions, a random access memory (RAM) or other types of dynamic storage devices that can store information and instructions, or an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM), or other optical disc storage, optical disc storage (including compact discs, laser discs, optical discs, digital versatile discs, Blu-ray discs, etc.), magnetic disk storage media, or other magnetic storage devices, or any other medium that can be used to carry or store the desired program code in the form of instructions or data structures and can be accessed by a computer, but is not limited thereto. The memory 802 can be integrated with the processor 801 or exist independently and be coupled to the processor 801. The embodiments of the present application do not make specific limitations on this.
[0422] The transceiver 803 is used for communication with other devices. For example, the transceiver 803 can be used to communicate with the user's UE to obtain the user's operation instructions.
[0423] In a possible design, the transceiver 803 can include a receiver and a transmitter ( Figure 8 not shown separately). Among them, the receiver is used to implement the receiving function, and the transmitter is used to implement the transmitting function.
[0424] In a possible design, the transceiver 803 can be an input / output interface or an interface circuit for inputting and / or outputting signals.
[0425] In a possible design, the transceiver 803 can be integrated with the processor 801 or exist independently and be coupled to the processor 801. The embodiments of the present application do not make specific limitations on this.
[0426] It should be noted that Figure 8 the structure of the control device 800 shown does not constitute a limitation on the control device. The actual control device may include more or fewer components than shown, or combine certain components, or have different component arrangements.
[0427] In addition, the control device 800 can execute the above method embodiments, so the technical effects it can obtain can refer to the above method embodiments and will not be elaborated here.
[0428] In a possible implementation, an embodiment of the present application further provides a computer-readable storage medium, on which a computer program or instruction is stored. When the computer program or instruction is executed by a computer, the functions of the foregoing method embodiment are implemented.
[0429] In a possible implementation, an embodiment of the present application further provides a computer program product, which implements the functions of the foregoing method embodiment when executed by a computer.
[0430] In the foregoing embodiments, it can be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented using a software program, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the processes or functions according to the embodiments of the present application are generated in whole or in part. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions may be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. The computer-readable storage medium may be any available medium that can be accessed by a computer, or a data storage device such as a server or data center that includes one or more media integrated therein. The available medium may be a magnetic medium (e.g., a floppy disk, a hard disk, a magnetic tape), an optical medium, or a semiconductor medium (e.g., a solid state drive (SSD)).
[0431] Those of ordinary skill in the art can realize that the units and algorithm steps of the examples described in conjunction with the embodiments disclosed herein can be implemented by electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are executed in a hardware or software manner depends on the specific application and design constraints of the technical solution. Professional technicians can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of the present application.
[0432] Those skilled in the art can clearly understand that for the convenience and conciseness of description, the specific working processes of the systems, devices, and units described above can refer to the corresponding processes in the foregoing method embodiments and will not be described herein again.
[0433] In several embodiments provided by the present application, it should be understood that the disclosed systems, devices, and methods can be implemented in other ways. For example, the device embodiments described above are merely illustrative. For example, the division of the units is only a logical function division. In actual implementation, there may be other division methods. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the displayed or discussed couplings or direct couplings or communication connections to each other can be through some interfaces. The indirect couplings or communication connections of the devices or units can be in electrical, mechanical, or other forms.
[0434] The units described as separate components may or may not be physically separated. The components displayed as units may or may not be physical units, that is, they can be located in one place or distributed to multiple network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0435] In addition, in each embodiment of the present application, the functional units can be integrated in one processing unit, or each unit can exist physically alone, or two or more units can be integrated in one unit.
[0436] If the function is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on such an understanding, the technical solution of the present application, in essence, or the part that contributes to the prior art, or a part of this 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 for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in each embodiment of the present application. The foregoing storage medium includes: USB flash drives, mobile hard disks, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical discs, and other various media that can store program codes.
[0437] Although the present application has been described in connection with various embodiments, those skilled in the art will understand and realize other variations of the disclosed embodiments by viewing the drawings, the disclosure, and the appended claims. In the claims, the word "comprising" does not exclude other components or steps, and the singular "a" or "an" does not exclude a plurality. A single processor or other unit may implement several functions recited in the claims. Certain measures are recited in mutually different dependent claims, but this does not mean that these measures cannot be combined to produce good results.
[0438] Although the present application has been described in connection with specific features and their embodiments, it is obvious that various modifications and combinations can be made without departing from the scope of the present application. Accordingly, the specification and drawings are merely exemplary illustrations of the present application as defined by the appended claims, and are considered to cover any and all modifications, variations, combinations, or equivalents within the scope of the present application. Obviously, those skilled in the art can make various changes and modifications to the present application without departing from the scope of the present application. Thus, if these modifications and variations of the present application fall within the scope of the claims of the present application and their equivalent technologies, the present application is also intended to include these changes and modifications.
Claims
1. A control method for a cleaning robot, characterized in that, The cleaning robot includes: a main body, a robotic arm disposed on the main body, and a cabin for accommodating the robotic arm in a folded state; the method includes: When the robotic arm is outside the cabin, obtaining information of the robotic arm; When it is determined that an abnormality has occurred based on the information of the robotic arm, controlling the robotic arm to enter the cabin.
2. The method according to claim 1, wherein The information of the robotic arm includes information of sensors for monitoring the working environment of the robotic arm, and / or information of motors for driving the robotic arm to adjust its posture.
3. The method according to claim 2, wherein When it is determined that an abnormality has occurred based on the information of the robotic arm, controlling the robotic arm to enter the cabin includes: When it is determined that the robotic arm is abnormal based on the information of the motor, controlling the cleaning robot to send a prompt message for prompting the user to intervene; In response to the user's operation instruction, controlling the robotic arm to enter the cabin.
4. The method according to claim 2 or 3, characterized in that, The abnormality determined based on the information of the sensor includes that the sensor fails, and / or there is an obstacle within the movement range of the robotic arm.
5. The method according to claim 2 or 3, characterized in that, The abnormality determined based on the information of the motor includes at least one of the following: The temperature of the motor is outside the preset temperature range; The electrical parameters of the motor are outside the preset electrical parameter range; Or, the running time of the motor exceeds the preset time range, where the running time of the motor is the time for the motor to drive the robotic arm to adjust its posture.
6. The method according to any one of claims 1 to 3, characterized in that, The robotic arm includes a support arm mounted on the main body, and the support arm rotates relative to the mounting surface on the main body; controlling the robotic arm to enter the cabin includes: Obtaining the posture information of the robotic arm, where the posture information includes the angle value of a first included angle, and the first included angle is the included angle between the support arm and the mounting surface; When it is determined that the robotic arm is in a first posture based on the posture information, controlling the robotic arm to adjust from the first posture to a second posture, where the first posture includes that the angle value of the first included angle is within a first preset angle range, and the first preset angle range is an angle range determined according to the state of the support arm outside the cabin, and the second posture includes that the angle value of the first included angle is within a second preset angle range, and the second preset angle range is an angle range determined according to the state of the support arm accommodated in the cabin.
7. The method according to claim 6, wherein Controlling the robotic arm to enter the cabin further includes: When the angle value of the first included angle is outside the first preset angle range and the second preset angle range, controlling the robotic arm to adjust the first included angle to the first preset angle range.
8. The method according to claim 7, wherein Controlling the robotic arm to adjust the first included angle to the first preset angle range includes: Controlling the robotic arm to adjust the angle value of the first included angle to a preset angle within the first preset angle range, and the preset angle within the first preset angle range is an angle determined according to the sensor for detecting the angle value of the first included angle.
9. The method according to claim 6, wherein The second posture further includes: the angular value of the second included angle is a first angle, the second included angle is the included angle between the extending direction of the robotic arm and the length direction of the cabin, and the first angle is an angle determined according to the entry or exit of the support arm into or from the cabin.
10. The method according to claim 9, wherein Controlling the robotic arm to enter the cabin further includes: When the angular value of the second included angle is between the first angle and the second angle, controlling the robotic arm to adjust the angular value of the second included angle to the second angle, and the second angle is an angle determined according to a sensor for detecting the angular value of the second included angle.
11. The method according to claim 6, characterized in that, The robotic arm further includes a gripper; the first posture further includes that the third included angle is within a third preset angular range, the third included angle is the included angle between the jaws in the gripper and the central axis of the gripper, and the third preset angular range is an angular range determined according to the unfolded state of the gripper when no object is being gripped. The second posture further includes that the third included angle is within a fourth preset angular range, and the fourth preset angular range is an angular range determined according to the clamped state of the gripper when no object is being gripped.
12. The method according to claim 11, wherein Controlling the robotic arm to enter the cabin further includes: When the angular value of the third included angle is outside the third preset angular range and the fourth preset angular range, controlling the gripper to adjust the angular value of the third included angle to the third preset angular range.
13. The method according to claim 12, characterized in that, Controlling the gripper to adjust the angular value of the third included angle to the third preset angular range includes: Controlling the gripper to adjust the angular value of the third included angle to a preset angle within the third preset angular range, and the preset angle within the third preset angular range is an angle determined according to a sensor for detecting the angular value of the third included angle.
14. The method according to any one of claims 6 to 13, characterized in that, The robotic arm further includes a connecting arm that rotates relative to the support arm and a working arm that rotates relative to the connecting arm; the second posture further includes: the angular value of the included angle between the connecting arm and the support arm is within a fifth preset angular range, and the angular value of the included angle between the working arm and the connecting arm is within a sixth preset angular range. The fifth preset angular range is an angular range determined according to the state where the connecting arm is accommodated in the cabin, and the sixth preset angular range is an angular range determined according to the state where the working arm is accommodated in the cabin.
15. A control device for a cleaning robot, characterized in that, The cleaning robot includes: a main body, a robotic arm provided on the main body, and a cabin for accommodating the robotic arm in a folded state; the control device includes a processing module, and the processing module is configured to: When the robotic arm is outside the cabin, obtain information about the robotic arm; When it is determined that an abnormality has occurred according to the information about the robotic arm, control the robotic arm to enter the cabin.
16. The control device according to claim 15, characterized in that, The information about the robotic arm includes information of sensors for monitoring the working environment of the robotic arm and / or information of motors for driving the robotic arm to adjust its posture.
17. The control device according to claim 16, characterized in that, The processing module is configured to: When it is determined that the robotic arm is abnormal based on the information of the motor, control the cleaning robot to send a prompt message for prompting the user to intervene. In response to the operation instruction of the user, control the robotic arm to enter the cabin.
18. The control device according to claim 16 or 17, characterized in that The abnormality determined according to the information of the sensor includes that the sensor fails, and / or there is an obstacle within the movement range of the robotic arm.
19. The control device according to claim 16 or 17, characterized in that, The abnormality determined according to the information of the motor includes at least one of the following: The temperature of the motor is outside the preset temperature range. The electrical parameters of the motor are outside the preset electrical parameter range. Or, the running time of the motor exceeds the preset time range, and the running time of the motor is the time for the motor to drive the robotic arm to adjust its posture.
20. The control device according to any one of claims 15 to 17, characterized in that The robotic arm includes a support arm installed on the body, and the support arm rotates relative to the mounting surface on the body; the processing module is further configured to: Obtain the posture information of the robotic arm, where the posture information includes the angle value of a first included angle, and the first included angle is the included angle between the support arm and the mounting surface. When it is determined that the robotic arm is in the first posture according to the posture information, control the robotic arm to adjust from the first posture to the second posture. The first posture includes that the angle value of the first included angle is within a first preset angle range, and the first preset angle range is an angle range determined according to the state of the support arm outside the cabin. The second posture includes that the angle value of the first included angle is within a second preset angle range, and the second preset angle range is an angle range determined according to the state of the support arm accommodated in the cabin.
21. The control device according to claim 20, characterized in that, The processing module is further configured to: When the angle value of the first included angle is outside the first preset angle range and the second preset angle range, control the robotic arm to adjust the angle value of the first included angle to the first preset angle range.
22. The control device according to claim 21, characterized in that, The processing module is further configured to: Control the robotic arm to adjust the angle value of the first included angle to a preset angle within the first preset angle range, and the preset angle within the first preset angle range is an angle determined according to the sensor for detecting the angle value of the first included angle.
23. The control device according to claim 20, characterized in that, The second posture further includes: the angle value of a second included angle is a first angle, and the second included angle is the included angle between the extending direction of the robotic arm and the length direction of the cabin, and the first angle is an angle determined according to the support arm entering or leaving the cabin.
24. The control device according to claim 23, characterized in that, The processing module is further configured to: When the angle value of the second included angle is between the first angle and a second angle, control the robotic arm to adjust the angle value of the second included angle to the second angle, and the second angle is an angle determined according to the sensor for detecting the angle value of the second included angle.
25. The control device according to claim 20, characterized in that, The robotic arm further includes a gripper; the first posture further includes that the third included angle is within a third preset angle range, where the third included angle is the included angle between the jaws in the gripper and the central axis of the gripper, and the third preset angle range is an angle range determined according to the unfolded state of the gripper when it is not gripping an object. The second posture further includes that the third included angle is within a fourth preset angle range, and the fourth preset angle range is an angle range determined according to the clamped state of the gripper when it is not gripping an object.
26. The control device according to claim 25, characterized in that, The processing module is configured to: When the angle value of the third included angle is outside the third preset angle range and the fourth preset angle range, control the gripper to adjust the angle value of the third included angle to the third preset angle range.
27. The control device according to claim 26, characterized in that, The processing module is configured to: Control the gripper to adjust the angle value of the third included angle to a preset angle within the third preset angle range, and the preset angle within the third preset angle range is an angle determined according to a sensor for detecting the angle value of the third included angle.
28. The control device according to any one of claims 20 to 27, characterized in that The robotic arm further includes a connecting arm that rotates relative to the support arm, and a working arm that rotates relative to the connecting arm; the second posture further includes: the angle value of the included angle between the connecting arm and the support arm is within a fifth preset angle range, and the angle value of the included angle between the working arm and the connecting arm is within a sixth preset angle range. The fifth preset angle range is an angle range determined according to the state where the connecting arm is accommodated in the cabin, and the sixth preset angle range is an angle range determined according to the state where the working arm is accommodated in the cabin.
29. A cleaning robot, characterized in that, The cleaning robot includes: a main body, a robotic arm and a cabin provided on the main body, where the cabin is used to accommodate the robotic arm in a folded state. Among them, the main body includes a processor, and the processor is used to make the processor execute the control method according to any one of claims 1-14 through logic circuits and / or executing instructions.
30. A computer-readable storage medium, characterized in that, The computer-readable storage medium includes instructions, and when the instructions are run by a processor, the control method according to any one of claims 1-14 is implemented.
31. A computer program product, characterized in that, The computer program product includes instructions, and when the instructions are run on a computer, the computer is made to execute the control method according to any one of claims 1-14.