Counterweight control method, device, robot, medium and program product

By setting a movable counterweight on the robot chassis and dynamically adjusting its position according to the task and sensor data, the problem that the fixed counterweight cannot balance the center of mass is solved, and the stability and safety of the robot when carrying heavy objects are improved.

CN116277146BActive Publication Date: 2025-09-12HAI ROBOTICS CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202111576457.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-12-21
Publication Date
2025-09-12
Estimated Expiration
2041-12-21

AI Technical Summary

Technical Problem

The fixed counterweight in the prior art cannot effectively balance the center of mass of the robot, causing the robot to easily shake or fall over when carrying heavy objects, affecting the stability and safety of the operation.

Method used

By setting a movable counterweight on the robot's mobile chassis and generating control instructions based on the robot's picking and placing tasks, cargo weight and data from the angular velocity sensor, the position and speed of the counterweight are dynamically adjusted to balance the robot's center of mass.

Benefits of technology

It improves the stability and safety of the robot when carrying heavy objects, expands the weight range that the robot can carry, and enhances the flexibility of balance control.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116277146B_ABST
    Figure CN116277146B_ABST
Patent Text Reader

Abstract

The embodiments of the present disclosure provide a control method, device, robot, medium and program product for a counterweight block, the method comprising: generating a control instruction for the counterweight block according to one or more of the picking and placing tasks corresponding to the robot, the action type of the picking and placing device of the robot, the weight of the cargo corresponding to the robot and the angular velocity of the robot in various directions output by an angular velocity sensor provided on the robot; controlling the movement of the counterweight block according to the control instruction to balance the robot; wherein the cargo corresponding to the robot comprises one or more of the cargo placed on the cargo storage area of ​​the robot, the cargo on the picking and placing device of the robot and the cargo that the robot needs to extract, and through the adaptive movement control of the counterweight block, the balance of the robot during the execution of the task is ensured, the robot is avoided from shaking or even tipping over, and the stability and safety of the robot's picking and placing operations are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of intelligent warehousing technology, and in particular to a control method, device, robot, medium and program product for a counterweight block. Background Art

[0002] Warehousing is a crucial part of the logistics process. Robots can replace manual labor in handling goods and play a crucial role in smart warehousing and logistics.

[0003] When the robot is picking up and placing goods, the center of mass of the robot will change as the robot's picking and placing device moves. When the goods carried by the robot are too heavy, the robot may shake or even fall over during the process of picking up and placing goods. Therefore, it is necessary to add a counterweight block to improve the stability of the robot.

[0004] However, the counterweight blocks in the related art are usually fixed counterweight blocks, which have limited ability to balance the center of mass of the robot and cannot meet the needs. Summary of the Invention

[0005] The present disclosure provides a control method, device, robot, medium and program product for a counterweight block, which improves the flexibility of adjusting the center of mass of the robot by moving the counterweight block, thereby improving the stability of the robot during operation.

[0006] In a first aspect, an embodiment of the present disclosure provides a method for controlling a counterweight, the method being applied to a robot including a mobile chassis and a counterweight disposed on the mobile chassis, the method comprising:

[0007] A control instruction for the counterweight is generated based on one or more of the picking and placing tasks corresponding to the robot, the action type of the picking and placing device of the robot, the weight of the cargo corresponding to the robot, and the angular velocity of the robot in various directions output by an angular velocity sensor provided on the robot; and according to the control instruction, the movement of the counterweight is controlled to balance the robot; wherein the cargo corresponding to the robot includes one or more of the cargo placed on the cargo storage area of ​​the robot, the cargo on the picking and placing device of the robot, and the cargo that the robot needs to pick up.

[0008] Optionally, generating a control instruction for the counterweight according to one or more of a picking and placing task corresponding to the robot, an action type of a picking and placing device of the robot, a weight of the cargo corresponding to the robot, and an angular velocity of the robot in various directions output by an angular velocity sensor provided on the robot includes:

[0009] When the motion type of the picking and placing device is a vertical type, a control instruction for the counterweight is generated according to the center of mass of the robot, the center of mass of the counterweight, the center of mass of the picking and placing device, the weight of the counterweight, and the weight of the picking and placing device, so that the center of mass of the robot, the center of mass of the counterweight, and the center of mass of the picking and placing device are collinear, and the product of the weight of the counterweight and a first distance is greater than or equal to the product of the weight of the picking and placing device and a second distance; wherein the first distance is the distance between the center of mass of the counterweight and the center of mass of the robot, and the second distance is the distance between the center of mass of the picking and placing device and the center of mass of the robot.

[0010] Optionally, generating a control instruction for the counterweight according to one or more of a picking and placing task corresponding to the robot, an action type of a picking and placing device of the robot, a weight of the cargo corresponding to the robot, and an angular velocity of the robot in various directions output by an angular velocity sensor provided on the robot includes:

[0011] When the movement type of the picking and placing device is a horizontal type, the control instructions of the counterweight block are generated according to the angular velocity of the robot in various directions output by the angular velocity sensor provided on the robot.

[0012] Optionally, generating a control instruction for the counterweight according to the angular velocity of the robot in each direction output by an angular velocity sensor provided on the robot includes:

[0013] The resultant angular velocity of the robot is determined according to the angular velocity of the robot in each direction output by the angular velocity sensor provided on the robot; and the control instruction of the counterweight is generated according to the resultant angular velocity of the robot.

[0014] Optionally, generating a control instruction for the counterweight according to the combined angular velocity of the robot includes:

[0015] The target position and moving speed of the counterweight are determined according to the combined angular velocity of the robot; and a control instruction for the counterweight is generated according to the target position and moving speed of the counterweight.

[0016] Accordingly, controlling the movement of the counterweight according to the control instruction includes:

[0017] According to the control instruction, the counterweight is controlled to move to the target position at the moving speed.

[0018] Optionally, generating a control instruction for the counterweight according to one or more of a picking and placing task corresponding to the robot, an action type of a picking and placing device of the robot, a weight of the cargo corresponding to the robot, and an angular velocity of the robot in various directions output by an angular velocity sensor provided on the robot includes:

[0019] Determine the center of mass offset parameter of the robot based on one or more of the picking and placing tasks corresponding to the robot, the action type of the picking and placing device of the robot, and the weight of the cargo corresponding to the robot; and generate a control instruction for the counterweight block based on the center of mass offset parameter of the robot.

[0020] Optionally, determining the center of mass offset parameter of the robot according to one or more of a picking and placing task corresponding to the robot, an action type of a picking and placing device of the robot, and a weight of the cargo corresponding to the robot includes:

[0021] The motion trajectory of the robot's picking and placing device is determined according to the picking and placing task corresponding to the robot or the action type of the robot's picking and placing device; the center of mass offset parameters of the robot at each time node during the action of the picking and placing device are determined according to the motion trajectory of the robot's picking and placing device and the weight of the cargo corresponding to the robot.

[0022] Accordingly, the control instructions for the counterweight block are generated according to the center of mass offset parameters of the robot, including:

[0023] According to the center of mass offset parameters of the robot at each time point during the operation of the picking and placing device, control instructions for the counterweight block corresponding to each time point are generated.

[0024] Optionally, determining the motion trajectory of the robot's picking and placing device according to the picking and placing task corresponding to the robot or the action type of the robot's picking and placing device includes:

[0025] The motion trajectory of the robot's picking and placing device is determined based on the picking and placing task corresponding to the robot or the action type of the robot's picking and placing device, and a pre-established first corresponding relationship; wherein the first corresponding relationship is used to describe the correspondence between the motion trajectory of the picking and placing device and one or both of the picking and placing task corresponding to the robot and the action type of the robot's picking and placing device.

[0026] Optionally, after generating control instructions for the counterweight corresponding to each time node according to the center of mass offset parameter of the robot at each time node during the operation of the picking and placing device, the method further includes:

[0027] For each time node, during the movement of the configuration block based on the control instruction corresponding to the time node, the angular velocity output by the angular velocity sensor corresponding to the time node is obtained, and the resultant angular velocity corresponding to the time node is obtained according to the angular velocity output by the angular velocity sensor corresponding to the time node; according to the resultant angular velocity corresponding to each time node, the new target position of the counterweight block corresponding to each time node is obtained; for each time node, according to the target position of the counterweight block corresponding to the time node, the control instruction of the counterweight block corresponding to the time node is modified to control the counterweight block to move to the target position corresponding to the time node.

[0028] Optionally, the method further includes:

[0029] The motion type of the cargo picking and placing device is determined according to the operating parameters of the driving motor of the cargo picking and placing device.

[0030] In a second aspect, an embodiment of the present disclosure further provides a control device for a counterweight, the device being applied to a robot, the robot comprising a mobile chassis and a counterweight, the counterweight being disposed on the mobile chassis, the device comprising:

[0031] An instruction generation module is used to generate a control instruction for the counterweight block based on one or more of the following: the picking and placing tasks corresponding to the robot, the action type of the picking and placing device of the robot, the weight of the cargo corresponding to the robot, and the angular velocity of the robot in various directions output by the angular velocity sensor provided on the robot; a control module is used to control the movement of the counterweight block according to the control instruction to balance the robot; wherein the cargo corresponding to the robot includes one or more of the cargo placed on the cargo storage area of ​​the robot, the cargo on the picking and placing device of the robot, and the cargo that the robot needs to pick up.

[0032] In the third aspect, an embodiment of the present disclosure further provides a robot comprising: a mobile chassis, a counterweight, a cargo picking and placing device, and at least one processor, wherein the counterweight is arranged on the mobile chassis, and the at least one processor is used to execute the counterweight control method provided in any embodiment corresponding to the first aspect of the present disclosure.

[0033] In a fourth aspect, an embodiment of the present disclosure further provides a computer-readable storage medium, in which computer-executable instructions are stored. When a processor executes the computer-executable instructions, a method for controlling a counterweight block as provided in any embodiment corresponding to the first aspect of the present disclosure is implemented.

[0034] In a fifth aspect, an embodiment of the present disclosure further provides a computer program product, comprising a computer program, which, when executed by a processor, implements the method for controlling a counterweight block provided in any embodiment corresponding to the first aspect of the present disclosure.

[0035] The control method, device, robot, medium and program product of the counterweight block provided by the embodiments of the present disclosure are for a robot provided with a movable counterweight block on a mobile chassis. According to one or more of the picking and placing tasks corresponding to the robot, the action type of the picking and placing device, the weight of the cargo corresponding to the robot and the angular velocity of the robot in various directions output by the angular velocity sensor, a control instruction of the counterweight block is generated. Based on the control instruction, the counterweight block is moved to balance the robot, thereby avoiding large shaking of the robot during operation, improving the stability and safety of the robot operation. In addition, by balancing the robot with the movable counterweight block, the flexibility of the robot's balance control is improved, so that the robot can carry cargo in a larger weight range, thereby expanding the robot's operating range. BRIEF DESCRIPTION OF THE DRAWINGS

[0036] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and, together with the description, serve to explain the principles of the present disclosure.

[0037] Figure 1A is a schematic structural diagram of a robot provided by an embodiment of the present disclosure;

[0038] Figure 1B yes Figure 1A Schematic diagram of the structure of the mobile chassis of the robot 1;

[0039] Figure 1C yes Figure 1A Schematic diagram of the structure of the mobile chassis of the robot Figure 2 ;

[0040] Figure 1D yes Figure 1B Schematic diagram of the structure of the counterweight module of the robot 1;

[0041] Figure 1E yes Figure 1B Schematic diagram of the structure of the robot's counterweight module Figure 2 ;

[0042] Figure 1F yes Figure 1B Exploded view of the adjustment mechanism of the middle counterweight module;

[0043] Figure 1G yes Figure 1D A schematic structural diagram of the first connecting member in the adjustment mechanism of the middle counterweight module;

[0044] Figure 1Hyes Figure 1B Schematic diagram of the structure of the counterweight block in the counterweight module of the robot;

[0045] Figure 2 A flowchart of a method for controlling a counterweight provided in one embodiment of the present disclosure;

[0046] Figure 3 A flowchart of a method for controlling a counterweight provided in another embodiment of the present disclosure;

[0047] Figure 4 A flowchart of a method for controlling a counterweight provided in another embodiment of the present disclosure;

[0048] Figure 5 A schematic structural diagram of a control device for a counterweight provided in one embodiment of the present disclosure;

[0049] Figure 6 A schematic structural diagram of a robot provided in one embodiment of the present disclosure.

[0050] The above drawings illustrate specific embodiments of the present disclosure, which will be described in more detail below. These drawings and textual descriptions are not intended to limit the scope of the present disclosure in any way, but rather to illustrate the concepts of the present disclosure to those skilled in the art by reference to specific embodiments. DETAILED DESCRIPTION

[0051] Exemplary embodiments will be described in detail herein, with examples illustrated in the accompanying drawings. In the following description, when referring to the drawings, identical numerals in different figures represent identical or similar elements, unless otherwise indicated. The embodiments described in the following exemplary embodiments are not intended to represent all possible embodiments consistent with the present disclosure. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the present disclosure, as detailed in the appended claims.

[0052] The following detailed description of the technical solution of the present disclosure and how the technical solution of the present disclosure solves the above-mentioned technical problems is provided with specific embodiments. The following specific embodiments may be combined with each other, and the same or similar concepts or processes may not be described in detail in some embodiments. The embodiments of the present disclosure will be described below in conjunction with the accompanying drawings.

[0053] The following explains the application scenarios of the embodiments of the present disclosure:

[0054] To improve robot handling efficiency, the main structure of a robot performing handling tasks is typically constructed to a certain height to support the robot's ability to carry multiple items onto its mobile chassis or shelves. When performing tasks such as handling, placing, stacking, and destacking, these robots can experience shifts in the weight or position of the goods they carry, causing the robot's center of gravity or mass to shift. This can cause the robot to sway significantly or even tip over, potentially damaging the goods, the items stored within them, and the robot, resulting in certain losses.

[0055] In order to improve the balance of the above-mentioned robot during operation, in the prior art, a fixed counterweight block is set on the mobile chassis of the robot to lower the center of gravity of the robot and prevent the robot from tipping over due to large fluctuations in the center of gravity during the process of transporting and moving goods.

[0056] The ability to adjust the robot's center of gravity through the balancing method of fixed counterweights is limited. When the cargo carried by the robot is too heavy, or the robot moves the cargo horizontally, the robot's center of gravity or center of mass will still shift significantly, causing the robot to shake significantly during operation, making it prone to collisions and poorly safe for operation.

[0057] In order to improve the flexibility of adjusting the center of mass or gravity of the robot, thereby improving the stability of the robot's operation, the embodiments of the present disclosure provide a robot having a movable counterweight block provided on a mobile chassis and a control method for the counterweight block. The main concept of the control method is:

[0058] Figure 1A is a schematic structural diagram of another robot provided by an embodiment of the present disclosure; Figure 1B yes Figure 1A Schematic diagram of the structure of the mobile chassis of the robot 1; Figure 1C yes Figure 1A Schematic diagram of the structure of the mobile chassis of the robot Figure 2 ; Figure 1D yes Figure 1B Schematic diagram of the structure of the counterweight module of the robot 1; Figure 1E yes Figure 1B Schematic diagram of the structure of the robot's counterweight module Figure 2 ; Figure 1F yes Figure 1B Exploded view of the adjustment mechanism of the middle counterweight module; Figure 1G yes Figure 1D A schematic structural diagram of the first connecting member in the adjustment mechanism of the middle counterweight module; Figure 1H yes Figure 1B Schematic diagram of the structure of the counterweight block in the counterweight module of the robot.

[0059] Reference Figures 1A to 1HThe present disclosure provides a robot 100 including a mobile chassis 10, a main structure 20, and a counterweight module 30. The main structure 20 is disposed above the mobile chassis 10 and can be used to implement functions such as picking up and placing goods, stacking, destacking, and transporting goods by the robot 100.

[0060] Exemplarily, a plurality of rollers may be provided at the bottom of the mobile chassis 10, and the rollers may be universal rollers, which may drive the mobile chassis 10 to move. A roller driving mechanism may also be provided inside the mobile chassis 10, which may drive the rollers to rotate and drive the mobile chassis 10 to move, so that the mobile chassis 10 may move with the main structure 20 and the cargo placed on the mobile chassis 10.

[0061] The counterweight module 30 is arranged in the horizontal plane of the mobile chassis 10. Exemplarily, the mobile chassis 10 may include a bottom plate 11, a top plate and side plates 12, the side plates 12 being enclosed between the bottom plate 11 and the top plate along the circumference of the bottom plate 11, and the counterweight module 30 may be arranged on a side of the bottom plate 11 facing the top plate, or on a side of the bottom plate 11 facing away from the top plate, or on a side of the top plate facing the bottom plate 11, or on a side of the top plate facing away from the bottom plate 11.

[0062] The counterweight module 30 includes an adjustment mechanism 31 and a counterweight block 32. The adjustment mechanism 31 and the counterweight block 32 are connected. The counterweight block 32 can move in the horizontal plane of the mobile chassis 10 under the drive of the adjustment mechanism 31, so that the counterweight block can move adaptively according to the position changes of the main structure above the mobile chassis, the weight and position changes of the cargo, etc., that is, the counterweight module 30 can adjust the center of gravity of the robot 100 when the main structure 20 performs actions such as picking up, placing, stacking, destacking and cargo handling to keep the robot 100 stable.

[0063] Reference Figure 1B and Figure 1C In a first embodiment, the adjustment mechanism 31 may include a first adjustment sub-mechanism 311, which drives the counterweight 32 to move in a first direction. In a second embodiment, the adjustment mechanism 31 may include a second adjustment sub-mechanism 312, which drives the counterweight 32 to move in a second direction. In a third embodiment, the adjustment mechanism 31 may include a first adjustment sub-mechanism 311 and a second adjustment sub-mechanism 312, which may each independently drive the counterweight 32 to move, or may jointly drive the counterweight 32 to move.

[0064] There is an angle between the first direction and the second direction. Optionally, the angle between the first direction and the second direction can be a right angle, an acute angle or an obtuse angle. The specific angle between the first direction and the second direction can be designed according to actual needs and is not specifically limited here.

[0065] For example, the first direction may be the direction of travel of the robot 100, and the second direction may be a direction perpendicular to the direction of travel of the robot 100. Alternatively, the second direction may be the direction of travel of the robot 100, and the first direction may be a direction perpendicular to the direction of travel of the robot 100. Alternatively, the first direction and the second direction may be defined as two other directions in the horizontal plane as needed, as long as they meet the requirements of this embodiment, and will not be further described here.

[0066] Reference Figure 1D The first regulating sub-mechanism 311 may include a first driving assembly 3111, a first connecting member 3112, and a first driving member 3113. The first driving assembly 3111 is connected to the first connecting member 3112, the first connecting member 3112 is connected to the first driving member 3113, and the first driving member 3113 is connected to or abuts against the counterweight 32.

[0067] In a specific implementation, the first driving assembly 3111 drives the first connecting member 3112 , the first connecting member 3112 drives the first driving member 3113 , and the first driving member 3113 drives the counterweight 32 to move along the first direction.

[0068] Reference Figure 1E and Figure 1F The first drive assembly 3111 can include a first motor 3111a, a first driving pulley 3111b, a first driven pulley 3111c, and a first transmission belt 3111d. The first motor 3111a is drivingly connected to the first driving pulley 3111b. The first driving pulley 3111b and the first driven pulley 3111c are spaced apart along a first direction. The first transmission belt 3111d is wound around the first driving pulley 3111b and the first driven pulley 3111c. The first end of the first connecting member 3112 is fixedly connected to the first transmission belt 3111d, and the second end of the first connecting member 3112 is fixedly connected to the first driving member 3113.

[0069] For example, the first motor 3111a can be selected from various types of motors known to those skilled in the art according to actual needs. The first driving wheel 3111b, the first driven wheel 3111c and the first transmission belt 3111d can be a master gear, a slave gear and a chain, or a master pulley, a slave pulley and a conveyor belt, etc. Figure 1GThe first end of the first connecting member 3112 may be provided with a fixing sleeve, which may be fixedly mounted on the first transmission belt 3111d. The first connecting member 3112 may also clamp the first transmission belt 3111d from both sides, or be fastened to the first transmission belt 3111d via fasteners. The second end of the first connecting member 3112 may be clipped, welded, or fastened to the first driving member 3113 via fasteners.

[0070] In specific implementation, the first motor 3111a drives the first driving wheel 3111b to rotate, the first driving wheel 3111b drives the first driven wheel 3111c to rotate through the first transmission belt 3111d, and the first transmission belt 3111d drives the first driving member 3113 to move through the first connecting member 3112, so that the first driving member 3113 drives the counterweight block 32 to move along the first direction.

[0071] Reference Figure 1E and Figure 1F The first driving member 3113 may include two first connecting rods 3113a and two first driving rods 3113b. The two first connecting rods 3113a extend in a first direction, and the two first driving rods 3113b extend in a second direction. The two first connecting rods 3113a and the two first driving rods 3113b are connected end to end to form a quadrilateral, such as a parallelogram or a rectangle. The second end of the first connecting member 3112 is fixedly connected to one of the two first connecting rods 3113a, and the counterweight 32 is sandwiched between the two first driving rods 3113b.

[0072] In a specific implementation, the first connecting member 3112 drives the two first driving rods 3113b to move back and forth along the first direction through the first connecting rod 3113a, and the two first driving rods 3113b drive the counterweight block 32 to move back and forth along the first direction.

[0073] Reference Figure 1D and Figure 1F The first adjustment sub-mechanism 311 can also include two first slide rails 3114 extending along the first direction, and the two first slide rails 3114 are parallel and spaced apart in the horizontal plane of the mobile chassis 10; the two first connecting rods 3113a respectively cooperate with the two first slide rails 3114 to slide, and the two first driving rods 3113b and the counterweight block 32 are both located between the two first slide rails 3114.

[0074] In specific implementation, the two first sliding rails 3114 can guide and limit the sliding of the two first connecting rods 3113a, thereby ensuring the reliability and smoothness of the two first connecting rods 3113a driving the two first driving rods 3113b to slide along the first direction, and further ensuring the reliability and smoothness of the two first driving rods 3113b driving the counterweight block 32 to move along the first direction.

[0075] Reference Figure 1F Optionally, the first slide rail 3114 is provided with a first slider 3114a sliding along the first slide rail 3114, the first connecting rod 3113a is provided with a first fixed block 3113c, and the first fixed block 3113c is fixedly connected to the first slider 3114a; the second end of the first connecting member 3112 is fixedly connected to the first fixed block 3113c.

[0076] Illustratively, the second end of the first connecting member 3112, the first fixing block 3113c and the first sliding block 3114a may be fastened together by screws, or may be fastened together by other means such as clamping and welding.

[0077] In specific implementation, the first connecting member 3112 drives the first connecting rod 3113a to slide along the first slide rail 3114 through the first fixed block 3113c and the first slider 3114a, so that the first connecting rod 3113a drives the first driving rod 3113b, and the first driving rod 3113b drives the counterweight block 32 to move along the first direction.

[0078] Reference Figure 1D The second regulating sub-mechanism 312 may include a second driving assembly 3121, a second connecting member 3122, and a second driving member 3123. The second driving assembly 3121 is connected to the second connecting member 3122, the second connecting member 3122 is connected to the second driving member 3123, and the second driving member 3123 is connected to or abuts against the counterweight 32.

[0079] In a specific implementation, the second driving assembly 3121 drives the second connecting member 3122 , the second connecting member 3122 drives the second driving member 3123 , and the second driving member 3123 drives the counterweight 32 to move along the second direction.

[0080] Reference Figure 1E and Figure 1F The second drive assembly 3121 may include a second motor 3121a, a second driving pulley 3121b, a second driven pulley 3121c, and a second transmission belt 3121d. The second motor 3121a is in driving connection with the second driving pulley 3121b. The second driving pulley 3121b and the second driven pulley 3121c are spaced apart along the second direction. The second transmission belt 3121d is wound around the second driving pulley 3121b and the second driven pulley 3121c. The first end of the second connecting member 3122 is fixedly connected to the second transmission belt 3121d, and the second end of the second connecting member 3122 is fixedly connected to the second driving member 3123.

[0081] For example, the second motor 3121a can be selected from various types of motors known to those skilled in the art according to actual needs. The second driving wheel 3121b, the second driven wheel 3121c and the second transmission belt 3121d can be a master gear, a slave gear and a chain, or a master pulley, a slave pulley and a conveyor belt, etc. Figure 1G The first end of the second connecting member 3122 may be provided with a fixing sleeve that can be fixedly mounted on the second transmission belt 3121d. The second connecting member 3122 may also clamp the second transmission belt 3121d from both sides, or be fastened to the second transmission belt 3121d via fasteners. The second end of the second connecting member 3122 may be clipped, welded, or fastened to the second driving member 3123 via fasteners.

[0082] In specific implementation, the second motor 3121a drives the second driving wheel 3121b to rotate, and the second driving wheel 3121b drives the second driven wheel 3121c to rotate through the second transmission belt 3121d, and the second transmission belt 3121d drives the second driving member 3123 to move through the second connecting member 3122, so that the second driving member 3123 drives the counterweight block 32 to move along the second direction.

[0083] Reference Figure 1E and Figure 1F The second driving member 3123 may include two second connecting rods 3123a and two second driving rods 3123b. The two second connecting rods 3123a extend in the second direction, and the two second driving rods 3123b extend in the first direction. The two second connecting rods 3123a and the two second driving rods 3123b are connected end to end to form a quadrilateral, such as a parallelogram or a rectangle. The second end of the second connecting member 3122 is fixedly connected to one of the two second connecting rods 3123a, and the counterweight 32 is sandwiched between the two second driving rods 3123b.

[0084] In a specific implementation, the second connecting member 3122 drives the two second driving rods 3123b to move back and forth along the second direction through the second connecting rod 3123a, and the two second driving rods 3123b drive the counterweight block 32 to move back and forth along the second direction.

[0085] Reference Figure 1D and Figure 1F The second adjustment sub-mechanism 312 can also include two second slide rails 3124 extending along the second direction, and the two second slide rails 3124 are parallel and spaced apart in the horizontal plane of the mobile chassis 10; the two second connecting rods 3123a respectively cooperate with the two second slide rails 3124 to slide, and the two second driving rods 3123b and the counterweight block 32 are both located between the two second slide rails 3124.

[0086] In specific implementation, the two second slide rails 3124 can guide and limit the sliding of the two second connecting rods 3123a, thereby ensuring the reliability and smoothness of the two second connecting rods 3123a driving the two second driving rods 3123b to slide along the second direction, and further ensuring the reliability and smoothness of the two second driving rods 3123b driving the counterweight block 32 to move along the second direction.

[0087] Reference Figure 1F Optionally, the second slide rail 3124 is provided with a second slider 3124a that slides along the second slide rail 3124, the second connecting rod 3123a is provided with a second fixed block 3123c, and the second fixed block 3123c is fixedly connected to the second slider 3124a; the second end of the second connecting member 3122 is fixedly connected to the second fixed block 3123c.

[0088] Exemplarily, the second end of the second connecting member 3122, the second fixing block 3123c and the second sliding block 3124a may be fastened together by screws, or may be fastened together by other means such as clamping and welding.

[0089] In specific implementation, the second connecting member 3122 drives the second connecting rod 3123a to slide along the second slide rail 3124 through the second fixed block 3123c and the second slider 3124a, so that the second connecting rod 3123a drives the second driving rod 3123b, and the second driving rod 3123b drives the counterweight block 32 to move along the second direction.

[0090] In one embodiment, the side of the counterweight 32 facing the horizontal surface of the mobile chassis 10 supporting the counterweight 32 can be smooth, and the area of ​​the horizontal surface of the mobile chassis 10 where the counterweight 32 slides can be smooth. This can reduce the friction between the counterweight 32 and the horizontal surface of the mobile chassis 10, thereby ensuring that the counterweight 32 slides smoothly within the horizontal surface of the mobile chassis 10.

[0091] For example, when the counterweight 32 is arranged on the side of the bottom plate 11 of the mobile chassis 10 facing the top plate, the side of the counterweight 32 facing the bottom plate 11 can be set as a smooth surface, and the side of the bottom plate 11 facing the top plate can be set as a smooth surface, so that the counterweight 32 can slide smoothly on the side of the bottom plate 11 facing the top plate.

[0092] Reference Figure 1H Universal balls 321 or universal rollers are provided on one side of the counterweight 32 that faces the horizontal surface of the mobile chassis 10 supporting the movement of the counterweight 32, or on the area of ​​the horizontal surface of the mobile chassis 10 where the counterweight 32 moves. This reduces the friction between the counterweight 32 and the horizontal surface of the mobile chassis 10, thereby ensuring smooth movement of the counterweight 32 within the horizontal surface of the mobile chassis 10.

[0093] For example, when the counterweight 32 is arranged on the side of the bottom plate 11 of the mobile chassis 10 facing the top plate, a universal ball 321 or a universal roller can be set on the side of the counterweight 32 facing the bottom plate 11, or a universal ball 321 or a universal roller can be set on the side of the bottom plate 11 facing the top plate, so that the counterweight 32 can slide smoothly on the side of the bottom plate 11 facing the top plate.

[0094] Optionally, depending on the space occupied by the horizontal plane of the mobile chassis, the counterweight block 32 can be set to move within the entire horizontal plane of the mobile chassis 10, or the counterweight block 32 can be set to move within a portion of the horizontal plane of the mobile chassis 10.

[0095] Reference Figure 1A The main structure 20 includes a column frame 21, a fork assembly 22, and a transport mechanism 23. The column frame 21 is disposed on the mobile chassis 10, and the fork assembly 22 and the transport mechanism 23 are disposed on the column frame 21. For example, the column frame 20 may include one column, two columns, or multiple columns. The fork assembly 22 and the transport mechanism 40 may be directly connected to the columns of the column frame 20 or connected via connectors.

[0096] The mobile chassis 10 is provided with a stacking station; the fork assembly 22 can move relative to the column frame 21 in a first horizontal direction or a vertical direction to move cargo toward or away from the stacking station. A transport mechanism 23 is located above the stacking station. The transport mechanism 23 can move up and down relative to the column frame 21 or in a second horizontal direction to transport cargo 40. For example, the first horizontal direction can be the robot's direction of travel, and the second horizontal direction can be a direction perpendicular to the robot's direction of travel.

[0097] Continue to refer to Figure 1A In specific implementations, the fork assembly 22 can move in a lifting direction to retrieve goods from different storage levels of the shelf. The fork assembly 22 carrying goods can move in a first horizontal direction toward the stacking position and stack the goods there. The fork assembly 22 can return to the shelf to continue retrieving goods and continue stacking goods at the stacking position. During this process, the counterweight block 32 of the counterweight module 30, driven by the adjustment mechanism 31, can move in coordination with the movement of the fork assembly 22 and the changes in the weight of the goods on the mobile chassis, thereby maintaining a stable center of gravity and ensuring the stability of the robot.

[0098] For example, the fork assembly 22 can use a telescopic arm to transfer the goods on the shelf into the fork assembly 22 by clamping, or can use a telescopic arm to transfer the goods on the shelf into the fork assembly 22 by pushing and pulling, or can use a suction cup to transfer the goods on the shelf into the fork assembly 22 by adsorption.

[0099] The transport mechanism 40 can move upward and downward in the lifting direction above the stacking position to lift the cargo there. The transport mechanism 40 carrying the cargo can move in the second horizontal direction to the side of the mobile chassis 10 and then descend in the lifting direction to transport the cargo to the side of the mobile chassis 10. Of course, the transport mechanism 40 can also transport cargo from the side of the mobile chassis 10 to the stacking position. During this process, the counterweight 32 of the counterweight module 30, driven by the adjustment mechanism 31, moves in coordination with the movement of the transport mechanism 40 and the weight of the cargo on the mobile chassis, thereby maintaining a stable center of gravity and ensuring the robot's stability.

[0100] Optionally, the robot also includes a control module and a detection module, the detection module and the control module are electrically connected, and the control module and the counterweight module 30 are electrically connected; the detection module is configured to detect the center of gravity position of the robot and transmit it to the control module, and the control module is configured to control the operation of the counterweight module 30 according to the center of gravity position data to adjust the center of gravity position of the robot.

[0101] In summary, the robot provided by the embodiments of the present disclosure includes a mobile chassis, a main structure, and a counterweight module. The main structure is disposed above the mobile chassis, and the counterweight module is disposed within the horizontal plane of the mobile chassis. By configuring the counterweight module to include an adjustment mechanism and a counterweight block, and the adjustment mechanism and the counterweight block are connected, the counterweight block can be driven by the adjustment mechanism to move within the horizontal plane of the mobile chassis. This allows the counterweight block to adaptively move according to changes in the position of the main structure above the mobile chassis, the weight and position of the cargo, and other factors, thereby flexibly adjusting the center of gravity of the robot, thereby maintaining a stable center of gravity and ensuring the stability and safety of the robot.

[0102] Figure 2 This is a flow chart of a method for controlling a counterweight provided in one embodiment of the present disclosure, as shown in FIG. Figure 2 As shown, the counterweight control method is applicable to a robot with a movable counterweight provided on a mobile chassis. The robot may be the robot 100 provided in any of the above embodiments. The method may be executed by a processor on the robot. The counterweight control method provided in this embodiment includes the following steps:

[0103] Step S201: Generate a control instruction for the counterweight block based on one or more of the following: the picking and placing task corresponding to the robot, the action type of the picking and placing device of the robot, the weight of the cargo corresponding to the robot, and the angular velocity of the robot in various directions output by the angular velocity sensor provided on the robot.

[0104] The cargo corresponding to the robot, such as material boxes and cargo boxes, includes one or more of the following: cargo placed in the robot's cargo storage area, cargo on the robot's cargo pick-up and placement device, and cargo to be retrieved by the robot. The robot's cargo storage area is a dedicated area on the robot for storing cargo. It can be an area on the mobile chassis, such as the center area of ​​the mobile chassis, or a temporary storage shelf for the robot. The counterweight can be any heavy object, such as a flywheel or lead block.

[0105] Among them, the picking and placing tasks are tasks that require robots to handle and move goods.

[0106] In some embodiments, the picking and placing tasks may include tasks that require robots to extract goods stored on the storage shelves of the storage system, tasks that require robots to transport goods to the target location, and tasks that require robots to transport goods stored on the robot to the storage system.

[0107] Specifically, the action type of the cargo picking and placing device can be determined according to factors such as the movement direction of the cargo picking and placing device and whether the device carries cargo.

[0108] Specifically, the action type of the picking and placing device can be determined according to the motion trajectory of the picking and placing device, and can also be determined according to the type of task performed by the picking and placing device.

[0109] Specifically, the motion trajectory of the cargo picking and placing device can be determined according to the operating parameters of the motor driving the cargo picking and placing device.

[0110] In some embodiments, the action types of the picking and placing device can be divided into vertical type and horizontal type. The vertical type includes two basic types: vertical upward type and vertical downward type. The horizontal type includes two basic types: horizontal left type and horizontal right type, as well as a movement type composed of multiple combinations of the four basic types.

[0111] In some embodiments, the action types of the picking and placing device can be divided into stacking type, destacking type, shifting type, picking type, placing type, etc. according to the type of task performed.

[0112] In some embodiments, the angular velocity sensor provided on the robot can detect the angular velocity of the robot in at least three mutually perpendicular directions.

[0113] Specifically, the weight of the cargo carried by the robot can be determined based on the records of tasks the robot has performed. Alternatively, the weight of cargo stored in the robot's cargo storage area, such as on a mobile chassis or temporary storage shelves, can be detected using a weight sensor installed in the robot's cargo storage area.

[0114] Specifically, the control instructions for the counterweight block can be generated according to the weight of the goods corresponding to the robot, the picking and placing tasks corresponding to the robot, or the action type of the picking and placing device of the robot.

[0115] Specifically, a control instruction for the counterweight block provided on the mobile chassis of the robot may be generated according to the type of the picking and placing task corresponding to the robot and the weight of the cargo corresponding to the robot.

[0116] In some embodiments, the types of picking and placing tasks can be picking type and placing type. In the picking type, the weight of the cargo carried by the robot will increase, and in the placing type, the weight of the cargo carried by the robot will decrease.

[0117] In some embodiments, the warehouse system's scheduling device can determine the tasks required of each robot based on demand, thereby obtaining the tasks corresponding to each robot. The robot can then divide the tasks to obtain the corresponding pick-up and placement tasks and the execution order of each pick-up and placement task. Then, based on the execution order, control instructions for the counterweights installed on the robot's mobile chassis are generated based on the pick-up and placement tasks corresponding to the robot and the weight of the corresponding cargo.

[0118] Specifically, the position of the robot's center of gravity or center of mass at each time node can be estimated based on the type of pick-up and placement task corresponding to the robot, the total weight of the goods currently carried by the robot, and the weight of the goods to be operated; and then, based on the position of the robot's center of gravity or center of mass at each time node, control instructions for the counterweight blocks set on the robot's mobile chassis are generated to adjust the robot's center of gravity or center of mass to within a set value range.

[0119] Specifically, based on the position of the robot's center of gravity or center of mass at each time node, the target position of the counterweight block at each time node is determined, and then based on the target position of the counterweight block at each time node, a control instruction for the counterweight block is generated to control the counterweight block to move to the corresponding target position at each time node, so that the robot's center of gravity or center of mass is within the set range, so that the robot remains balanced.

[0120] Specifically, a three-dimensional simulation model of the robot can be pre-established. Based on this three-dimensional simulation model, the total weight and placement of the cargo currently carried by the robot, and the weight of the cargo retrieved or deposited by the robot, the position of the robot's center of gravity or center of mass at each time point during the robot's current task can be determined. Based on the position of the robot's center of gravity or center of mass at each time point, control instructions for the counterweights installed on the robot's mobile chassis are generated to adjust the robot's center of gravity or center of mass to within a set range.

[0121] Specifically, the angular velocity of the robot in various directions output by various angular velocity sensors installed on the robot can be collected in real time, and then the robot's resulting angular velocity can be determined based on the robot's angular velocity in various directions; based on the robot's resulting angular velocity, control instructions for the counterweight block are generated to make the robot's resulting angular momentum as close to 0 as possible during the execution of the task.

[0122] Specifically, the position of the center of gravity or center of mass of the robot as a whole at each time node during the operation of the picking and placing device can be determined according to the action type of the robot's picking and placing device and the weight of the goods picked up by the picking and placing device. Then, based on the position of the center of gravity or center of mass of the robot as a whole at each time node, the target position of the counterweight block at each time node can be determined. Then, based on the target position of the counterweight block at each time node, a control instruction of the counterweight block is generated to control the counterweight block to move to the corresponding target position at each time node, so that the center of gravity or center of mass of the robot is within the set range, so that the robot remains balanced.

[0123] Step S202: Control the counterweight to move according to the control instruction to balance the robot.

[0124] In some embodiments, the control instruction of the configuration block may include a target position for the movement of the counterweight block and a moving speed of the counterweight block.

[0125] Specifically, after the control instruction is generated, the movement of the counterweight block can be controlled based on the control instruction, thereby achieving balance control of the robot by moving the counterweight block.

[0126] Specifically, the adjustment mechanism can be controlled based on the generated control instructions, so that the counterweight block is controlled to move within the horizontal plane of the mobile chassis under the drive of the adjustment structure, so that the robot remains stable during the execution of the corresponding task. The adjustment structure can be the adjustment structure 31 mentioned above.

[0127] Specifically, based on the target position corresponding to each time node and the moving speed corresponding to each time node in the control instruction, the counterweight block can be controlled to move to the target position corresponding to each time node at the moving speed corresponding to each time node, so that the robot maintains balance at each time node when performing the task.

[0128] The control method of the counterweight block provided in this embodiment is for a robot provided with a movable counterweight block on a mobile chassis. The method generates a control instruction for the counterweight block according to one or more of the picking and placing tasks corresponding to the robot, the action type of the picking and placing device, the weight of the cargo corresponding to the robot, and the angular velocity of the robot in various directions output by the angular velocity sensor. Based on the control instruction, the counterweight block is moved to balance the robot, thereby avoiding large shaking of the robot during operation, improving the stability and safety of the robot operation. In addition, by balancing the robot with the movable counterweight block, the flexibility of the robot's balance control is improved, so that the robot can carry cargo in a larger weight range, thereby expanding the robot's operating range.

[0129] In some embodiments, the robot is a pickup and placement robot, comprising a mobile chassis, a main structure, and a pickup and placement device. The main structure includes a column frame and temporary storage shelves. The temporary storage shelves are multi-layered, each capable of storing one item. The pickup and placement device can be raised and lowered to deposit items on each layer of the temporary storage shelves and to move items stored on each layer of the temporary storage shelves to other locations, such as an operating table or a storage shelf. When the pickup and placement device is raised and lowered after retrieving items, the motion type of the pickup and placement device is vertical.

[0130] In some embodiments, the robot can be a stacking robot, comprising a mobile chassis, a main structure, and a pickup and placement device. The main structure includes a column frame, and a stacking position is provided on the mobile chassis. The pickup and placement device includes a fork assembly and a transport mechanism. The fork assembly can move relative to the column frame in a first horizontal direction and a vertical direction to drive the goods toward or away from the stacking position along the first horizontal and vertical directions. The transport mechanism is located above the stacking position and can move relative to the column frame in a second horizontal direction or a vertical direction to drive the goods toward or away from the stacking position along the second horizontal direction or a vertical direction. The first horizontal direction is perpendicular to the second horizontal direction. When the fork for picking up the goods moves in the vertical direction, or when the transport mechanism moves in the vertical direction, the motion type of the pickup and placement device is vertical. When the transport mechanism moves in the second horizontal direction, the motion type of the pickup and placement device is horizontal.

[0131] In some embodiments, the fork can rotate, and the rotation angle range can be 90°, 270° or other ranges.

[0132] In some embodiments, the fork includes a fork body and a robotic arm assembly, and the robotic arm assembly can be extended and retracted relative to the fork body to drive the goods in and out of the fork body; the handling mechanism includes a support frame and a grabbing arm assembly, and the grabbing arm assembly can be raised and lowered in a vertical direction relative to the support frame to drive the goods stacked on the stacking position in and out of the support frame.

[0133] In some embodiments, the transport mechanism can grab multiple goods or stacks of goods stacked on a palletizing position and move them to a target location, such as a production line, a pallet, or other location.

[0134] Specifically, the fork can stack multiple goods onto the stacking position of the mobile chassis.

[0135] Specifically, the grab arm assembly can be controlled to grab multiple goods stacked on the stacking position into the support frame at one time, and then the transport mechanism can be moved above the target position, and the grab arm assembly can be controlled to release the goods in the support frame to achieve unloading.

[0136] In some embodiments, the amount of goods that the handling mechanism extracts from the palletizing position can be controlled by controlling the grabbing depth of the grabbing arm assembly.

[0137] Optionally, generating a control instruction for the counterweight according to one or more of a picking and placing task corresponding to the robot, an action type of a picking and placing device of the robot, a weight of the cargo corresponding to the robot, and an angular velocity of the robot in various directions output by an angular velocity sensor provided on the robot includes:

[0138] When the motion type of the picking and placing device is a vertical type, a control instruction for the counterweight is generated according to the center of mass of the robot, the center of mass of the counterweight, the center of mass of the picking and placing device, the weight of the counterweight, and the weight of the picking and placing device, so that the center of mass of the robot, the center of mass of the counterweight, and the center of mass of the picking and placing device are collinear, and the product of the weight of the counterweight and a first distance is greater than or equal to the product of the weight of the picking and placing device and a second distance; wherein the first distance is the distance between the center of mass of the counterweight and the center of mass of the robot, and the second distance is the distance between the center of mass of the picking and placing device and the center of mass of the robot.

[0139] In some embodiments, when the picking and placing device performs vertical movement, the picking and placing device may carry goods. The center of mass of the picking and placing device may be the center of mass of the picking and placing device carrying the goods. The weight of the picking and placing device may be replaced by the sum of the weight of the picking and placing device and the weight of the goods carried by the picking and placing device to control the counterweight.

[0140] Specifically, when the movement type of the picking and placing device is a vertical type or when the robot is walking, that is, when the picking and placing device or some components of the picking and placing device move in the vertical direction, the current position of the robot's center of mass, the position of the counterweight block's center of mass, and the position of the center of mass of the moving part of the picking and placing device can be obtained, and then based on the position of the robot's center of mass, the position of the counterweight block's center of mass, the position of the picking and placing device's center of mass, the weight of the counterweight block, and the weight of the picking and placing device, a control instruction for the counterweight block is generated so that the center of mass of the robot, the center of mass of the counterweight block, and the center of mass of the picking and placing device are collinear, and the product of the weight of the counterweight block and the first distance is greater than or equal to the product of the weight of the picking and placing device and the second distance.

[0141] Specifically, a first control instruction can be generated based on the current position of the robot's center of mass, the position of the counterweight's center of mass, and the position of the center of mass of the pickup and placement device, as well as the weight of the counterweight, the weight of the pickup and placement device, and the weight of the cargo carried on the pickup and placement device, to control the movement of the counterweight, so that the center of mass of the robot, the center of mass of the counterweight, and the center of mass of the pickup and placement device after the first movement are collinear, that is, located on a straight line. Furthermore, during the vertical movement of the pickup and placement device, a second control instruction for the counterweight is generated based on the second distance, the weight of the pickup and placement device, the weight of the cargo carried on the pickup and placement device, the first distance, and the weight of the counterweight, to control the movement of the counterweight, so that the center of mass of the robot, the center of mass of the counterweight, and the center of mass of the pickup and placement device after the second movement are collinear, and the product of the weight of the counterweight and the first distance is greater than or equal to the product of the sum of the weight of the pickup and placement device and the weight of the cargo carried and the second distance. That is,

[0142] Optionally, generating a control instruction for the counterweight according to one or more of a picking and placing task corresponding to the robot, an action type of a picking and placing device of the robot, a weight of the cargo corresponding to the robot, and an angular velocity of the robot in various directions output by an angular velocity sensor provided on the robot includes:

[0143] When the movement type of the picking and placing device is a horizontal type, the control instructions of the counterweight block are generated according to the angular velocity of the robot in various directions output by the angular velocity sensor provided on the robot.

[0144] Specifically, when the picking and placing device or the moving part of the picking and placing device (fork or transport mechanism) moves in the horizontal direction, the movement type of the picking and placing device is horizontal type. The angular velocity of the robot in various directions can be determined based on the angular velocity sensor set on the robot, and then the angular velocity of the robot in various directions can be used to generate control instructions for the counterweight block.

[0145] Optionally, generating a control instruction for the counterweight according to the angular velocity of the robot in each direction output by an angular velocity sensor provided on the robot includes:

[0146] The resultant angular velocity of the robot is determined according to the angular velocity of the robot in each direction output by the angular velocity sensor provided on the robot; and the control instruction of the counterweight is generated according to the resultant angular velocity of the robot.

[0147] Specifically, the robot's resultant angular velocity can be determined based on the robot's angular velocity in all directions, and then, based on the law of conservation of angular momentum, control instructions for the counterweight can be generated according to the robot's resultant angular velocity or resultant angular momentum. By controlling the angular momentum generated by the movement of the counterweight, the resultant angular momentum of the entire robot and counterweight can be made 0 or as close to 0 as possible.

[0148] Optionally, the motion type of the picking and placing device may be determined based on operating parameters of a drive motor of the picking and placing device.

[0149] Specifically, the movement type of the pick-up and place device can be determined based on the motor identification of the running drive motor. Different drive motors can be used to drive the pick-up and place device to move in different directions.

[0150] Optionally, generating a control instruction for the counterweight according to one or more of a picking and placing task corresponding to the robot, an action type of a picking and placing device of the robot, a weight of the cargo corresponding to the robot, and an angular velocity of the robot in various directions output by an angular velocity sensor provided on the robot includes:

[0151] Determine the center of mass offset parameter of the robot based on one or more of the picking and placing tasks corresponding to the robot, the action type of the picking and placing device of the robot, and the weight of the cargo corresponding to the robot; and generate a control instruction for the counterweight block based on the center of mass offset parameter of the robot.

[0152] The center of mass offset parameter may be an offset between the position of the center of mass of the entire robot and a set position or a set range.

[0153] Specifically, according to the robot's corresponding picking and placing tasks and the weight of the robot's corresponding goods, the center of mass offset parameters of the robot at each time node when performing the corresponding picking and placing tasks can be estimated, and then based on the center of mass offset parameters of the robot at each time node, control instructions for the counterweight block can be generated to control the movement of the counterweight block within each time node, so that the center of mass of the robot at each time node after the counterweight block moves is located within the set position or set range.

[0154] Specifically, according to the robot's picking and placing action type and the weight of the corresponding goods of the robot, the center of mass offset parameters of the robot at each time node when performing the corresponding picking and placing task can be estimated, and then based on the center of mass offset parameters of the robot at each time node, the control instructions of the counterweight block are generated to control the movement of the counterweight block within each time node, so that the center of mass of the robot at each time node after the counterweight block moves is located in the set position or within the set range.

[0155] Figure 3 This is a flowchart of a method for controlling a counterweight block according to another embodiment of the present disclosure. This embodiment is directed to the case where the movement type of the robot's pick-up and placement device is horizontal, that is, the case where the pick-up and placement device or the moving part of the pick-up and placement device moves in the horizontal direction. Figure 2 Based on the embodiment shown, step S201 is further refined, as shown in FIG. Figure 3 As shown, the control method of the counterweight provided in this embodiment may include the following steps:

[0156] Step S301: When the movement type of the picking and placing device of the robot is a horizontal type, the angular velocity of the robot in each direction output by each angular velocity sensor provided on the robot is obtained.

[0157] Specifically, the angular velocity of the robot in each direction output by each angular velocity sensor provided on the robot corresponding to each period can be obtained according to a set period. The set period can be a fixed period or a variable period.

[0158] Furthermore, the set period can be dynamically adjusted based on the combined angular velocity of the robot.

[0159] Step S302: determining the resultant angular velocity of the robot according to the angular velocity of the robot in each direction.

[0160] Among them, the resultant angular velocity is the sum vector of the angular velocities of the robot in all directions.

[0161] Specifically, for each cycle, the resultant angular velocity of the robot corresponding to the cycle is determined according to the angular velocity of the robot in each direction corresponding to the cycle.

[0162] Step S303: determining the target position and moving speed of the counterweight according to the combined angular velocity of the robot.

[0163] Specifically, the target position and moving speed of the counterweight block can be determined according to the combined angular velocity of the robot, the weight of the remaining portion of the robot excluding the counterweight module, and the weight of the counterweight block.

[0164] Specifically, the target position and moving speed of the counterweight corresponding to each cycle are determined according to the combined angular velocity of the robot corresponding to each cycle.

[0165] Furthermore, a dynamic model of the robot can be established in advance, and based on the dynamic model and the robot's angular velocity, the target position and movement speed of the counterweight can be determined so that the overall angular momentum of the robot is 0 or as close to 0 as possible through the movement of the counterweight.

[0166] Step S304: generating a control instruction for the counterweight according to the target position and moving speed of the counterweight.

[0167] Specifically, the control instructions for the counterweight blocks corresponding to each cycle may be generated according to the target position and moving speed of the counterweight blocks corresponding to each cycle.

[0168] Step S305: According to the control instruction, the counterweight is controlled to move to the target position at the moving speed.

[0169] Specifically, according to the control instructions of the counterweight block corresponding to each cycle, the counterweight block is controlled to move to the target position corresponding to the cycle at the moving speed corresponding to the cycle, thereby realizing dynamic balance control of the robot, so that the robot maintains balance in each cycle, avoiding large shaking of the robot and collision.

[0170] In this embodiment, for a robot with a movable counterweight block provided on a mobile chassis, when the robot's picking and placing device moves horizontally, the robot's combined angular velocity is obtained according to the angular velocity of the robot in various directions output by the angular velocity sensor provided on the robot, and a control instruction for the counterweight block is generated based on the combined angular velocity, so as to balance the robot by moving the counterweight block to the target position corresponding to the control instruction at a moving speed corresponding to the control instruction. The movement of the counterweight block is controlled by the real-time angular velocity collected by the angle sensor, which improves the control accuracy, better realizes the dynamic balance control of the robot, avoids large shaking of the robot during operation, and improves the stability and safety of the robot operation.

[0171] Figure 4 A flowchart of a method for controlling a counterweight block according to another embodiment of the present disclosure is provided. Figure 2 Based on the embodiment shown, step S201 is further refined. This embodiment implements a two-stage counterweight control strategy, such as Figure 4 As shown, the control method of the counterweight provided in this embodiment may include the following steps:

[0172] Step S401 : determining a motion trajectory of the robot's picking-and-placing device according to the robot's corresponding picking-and-placing task or the action type of the robot's picking-and-placing device.

[0173] In some embodiments, the picking and placing tasks corresponding to the robot are tasks that the robot is about to perform, and can be sent to the robot's processor by a scheduling device, or manually input into the robot's picking and placing tasks.

[0174] Specifically, after receiving a pickup / placement task and before executing it, the robot's processor can divide the task into subtasks based on the task content and motion type. Each subtask corresponds to a different motion type for the robot's pickup / placement device. Furthermore, the motion type of the robot's pickup / placement device can be determined based on the subtask currently being executed by the robot.

[0175] Specifically, the robot's picking and placing device will adopt a set mode when performing various tasks, and then the movement trajectory of the robot's picking and placing device can be determined according to the picking and placing tasks performed by the picking and placing device.

[0176] Furthermore, the motion trajectory of the pick-up and placement device can be determined based on the pick-up and placement tasks corresponding to the robot and the storage location of the goods corresponding to the pick-up and placement tasks. The storage location of the goods can be a storage shelf, a robot stacking position, a robot temporary storage shelf, an operating table, a conveyor line connection, and other locations.

[0177] For example, taking the example of a robot needing to pick up a material box stored in a preset storage location on a storage shelf, the picking task can be divided into three subtasks. The first subtask is to lift the picking and placing device to the height corresponding to the preset storage location. In some embodiments, the picking and placing device also needs to move along a first horizontal direction to align with the preset storage location, rotate the picking and placing device so that the robotic arm assembly faces the preset storage location, and control the robotic arm assembly to extend toward the preset storage location, thereby pulling the material box on the preset storage location to the picking and placing device body; the second subtask is to drive the material box to the top of the stacking position or a certain layer of the temporary storage shelf after the picking and placing device extracts the material box, thereby placing the material box on the robot.

[0178] Specifically, the motion trajectory of the robot's picking and placing device may be determined according to a correspondence between the motion type of the robot's picking and placing device and the motion trajectory of the robot's picking and placing device.

[0179] Optionally, determining the motion trajectory of the robot's picking and placing device according to the picking and placing task corresponding to the robot or the action type of the robot's picking and placing device includes:

[0180] The motion trajectory of the robot's picking and placing device is determined based on the picking and placing task corresponding to the robot or the action type of the robot's picking and placing device, and a pre-established first corresponding relationship; wherein the first corresponding relationship is used to describe the correspondence between the motion trajectory of the picking and placing device and one or both of the picking and placing task corresponding to the robot and the action type of the robot's picking and placing device.

[0181] Specifically, a trajectory of the robot's picking and placing device can be determined based on the robot's corresponding picking and placing task or the action type of the robot's picking and placing device, as well as a pre-established first correspondence. The trajectory can then be initialized based on the initial storage location and target storage location of the robot's corresponding goods, thereby obtaining the robot's picking and placing device's motion trajectory. The robot's corresponding picking and placing task requires moving the corresponding goods from the initial storage location to the target storage location.

[0182] Step S402 : determining the center of mass offset parameter of the robot at each time point during the operation of the picking and placing device according to the motion trajectory of the picking and placing device of the robot and the weight of the cargo corresponding to the robot.

[0183] Specifically, a dynamic model of the robot can be established based on parameters such as the weight, material, size, and connection relationship of each component of the robot. Then, based on the determined motion trajectory of the robot's picking and placing device, the weight of the cargo corresponding to the robot, and the dynamic model, the position of the robot's center of mass at each time node during the movement of the robot's picking and placing device can be estimated. Then, based on the position of the robot's center of mass corresponding to each time node, the center of mass offset parameter of the robot corresponding to each time node can be obtained.

[0184] Specifically, the center of mass offset parameter or center of mass offset of the robot corresponding to each time node may be calculated based on the position of the center of mass of the robot corresponding to each time node and the desired setting range or setting position of the center of mass of the robot.

[0185] Step S403 : generating control instructions for the counterweight corresponding to each time node according to the center of mass offset parameter of the robot at each time node during the operation of the picking and placing device.

[0186] Specifically, for each time node, the target position of the counterweight block corresponding to the time node can be determined based on the center of mass offset parameter of the robot corresponding to the time node, and then the control instructions of the configuration block corresponding to the time node can be generated based on the target position of the counterweight block corresponding to the time node.

[0187] Specifically, the center of mass offset curve of the robot during the operation of the picking and placing device can be determined according to the center of mass offset parameters of the robot corresponding to each time node. Based on the center of mass offset curve, the control instructions of the counterweight block are generated to adjust the center of mass offset curve to fall within the preset envelope through the movement of the counterweight block.

[0188] By obtaining the robot's future motion trajectory based on the pick-up and placement tasks that the robot is about to perform, or the type of movement that the pick-up and placement device is about to perform, the position of the robot's center of mass at each time node when the robot's pick-up and placement device performs actions based on the motion trajectory is estimated. Then, based on the estimated robot's center of mass offset parameters, the counterweight block is controlled in advance to avoid robot imbalance due to control lag.

[0189] Step S404: For each time node, while the configuration block is moved based on the control instruction corresponding to the time node, obtain the angular velocity output by the angular velocity sensor corresponding to the time node, and obtain the resultant angular velocity corresponding to the time node based on the angular velocity output by the angular velocity sensor corresponding to the time node.

[0190] In order to improve the accuracy of the robot's balance, while or after controlling the movement of the counterweight block based on the movement type of the picking and placing device or the corresponding picking and placing task, at each time node, the angular velocity of the robot in each direction detected by the angular velocity sensor set on the robot at that time node is read, and then the combined angular velocity of the robot corresponding to the time node is obtained.

[0191] Step S405 : determining a new target position of the counterweight corresponding to each time node according to the combined angular velocity corresponding to each time node.

[0192] Specifically, for each time node, based on the combined angular velocity corresponding to the time node, a new target position of the counterweight corresponding to the time node is determined.

[0193] Furthermore, the new target position and new moving speed of the counterweight corresponding to the time node can be determined based on the combined angular velocity corresponding to the time node and the dynamic model of the robot.

[0194] Step S406: for each time node, modify the control instruction of the counterweight block corresponding to the time node according to the target position of the counterweight block corresponding to the time node, so as to control the counterweight block to move to the target position corresponding to the time node.

[0195] Specifically, after determining the new target position of the counterweight block corresponding to each time node, the control instruction of the counterweight block corresponding to the time node is modified based on the new target position corresponding to the time node, so as to modify or update the target position in the control instruction to the new target position, thereby controlling the counterweight block to move to the new target position corresponding to the time node.

[0196] Specifically, after determining the new moving speed and new target position of the counterweight block corresponding to each time node based on the combined angular velocity, the control instruction of the counterweight block corresponding to the time node is modified based on the new moving speed and new target position corresponding to the time node, so as to modify or update the moving speed in the control instruction to the new moving speed and the target position to the new target position, thereby controlling the counterweight block to move to the new target position corresponding to the time node according to the moving speed corresponding to the time node.

[0197] In this embodiment, a two-stage movement control of the counterweight is performed for a robot equipped with a movable counterweight on a mobile chassis. Specifically, the first stage determines the next motion trajectory of the robot's pickup / placement device based on the robot's upcoming pickup / placement task or the type of motion to be performed by the robot's pickup / placement device. Based on this motion trajectory and the weight of the corresponding cargo, the robot estimates the center of mass offset parameters at various time points during the robot's pickup / placement device's movement along the motion trajectory. Based on these center of mass offset parameters, control instructions for the counterweight are generated. Preemptive control of the counterweight is performed based on these control instructions to prevent robot imbalance due to control lag. Specifically, the second stage obtains the robot's angular velocity in various directions at various time points, output by an angular velocity sensor installed on the robot. The resulting angular velocity at each time point is then used to modify the target position and movement velocity of the control instructions at each time point, thereby improving the accuracy of the counterweight movement control. This two-stage movement control of the counterweight improves the timeliness and accuracy of the robot's balance control, thereby better achieving dynamic balance control of the robot.

[0198] Figure 5 A schematic diagram of a control device for a counterweight block according to an embodiment of the present disclosure is provided. The control device for the counterweight block is applied to a robot, which includes a mobile chassis and a counterweight block arranged on the mobile chassis. Figure 5 As shown, the device includes: an instruction generation module 510 and a control module 520.

[0199] Among them, the instruction generation module 510 is used to generate a control instruction for the counterweight block based on one or more of the picking and placing tasks corresponding to the robot, the action type of the picking and placing device of the robot, the weight of the cargo corresponding to the robot, and the angular velocity of the robot in various directions output by the angular velocity sensor provided on the robot; the control module 520 is used to control the movement of the counterweight block according to the control instruction to balance the robot; wherein, the cargo corresponding to the robot includes one or more of the cargo placed on the cargo storage area of ​​the robot, the cargo on the picking and placing device of the robot, and the cargo that the robot needs to pick up.

[0200] Optionally, the instruction generation module 510 is specifically configured to:

[0201] When the motion type of the picking and placing device is a vertical type, a control instruction for the counterweight is generated according to the center of mass of the robot, the center of mass of the counterweight, the center of mass of the picking and placing device, the weight of the counterweight, and the weight of the picking and placing device, so that the center of mass of the robot, the center of mass of the counterweight, and the center of mass of the picking and placing device are collinear, and the product of the weight of the counterweight and a first distance is greater than or equal to the product of the weight of the picking and placing device and a second distance; wherein the first distance is the distance between the center of mass of the counterweight and the center of mass of the robot, and the second distance is the distance between the center of mass of the picking and placing device and the center of mass of the robot.

[0202] Optionally, the instruction generation module 510 is specifically configured to:

[0203] When the movement type of the picking and placing device is a horizontal type, the control instructions of the counterweight block are generated according to the angular velocity of the robot in various directions output by the angular velocity sensor provided on the robot.

[0204] Optionally, the instruction generation module 510 includes:

[0205] The combined angular velocity determination unit is used to determine the combined angular velocity of the robot based on the angular velocity of the robot in each direction output by the angular velocity sensor provided on the robot; the first instruction generation unit is used to generate the control instruction of the counterweight block based on the combined angular velocity of the robot.

[0206] Optionally, the first instruction generating unit is specifically configured to:

[0207] The target position and moving speed of the counterweight are determined according to the combined angular velocity of the robot; and a control instruction for the counterweight is generated according to the target position and moving speed of the counterweight.

[0208] Accordingly, the control module 520 is specifically configured to:

[0209] According to the control instruction, the counterweight is controlled to move to the target position at the moving speed.

[0210] Optionally, the instruction generation module 510 includes:

[0211] The center of mass offset parameter determination unit is used to determine the center of mass offset parameter of the robot based on one or more of the picking and placing tasks corresponding to the robot, the action type of the picking and placing device of the robot, and the weight of the goods corresponding to the robot; the second instruction generation unit is used to generate a control instruction for the counterweight block based on the center of mass offset parameter of the robot.

[0212] Optionally, a center of mass offset parameter determination unit includes:

[0213] The motion trajectory determination subunit is used to determine the motion trajectory of the robot's picking and placing device according to the picking and placing task corresponding to the robot or the action type of the robot's picking and placing device; the center of mass offset parameter determination subunit is used to determine the center of mass offset parameters of the robot at each time point during the action of the picking and placing device according to the motion trajectory of the robot's picking and placing device and the weight of the cargo corresponding to the robot.

[0214] Accordingly, the second instruction generation unit is specifically configured to:

[0215] According to the center of mass offset parameters of the robot at each time point during the operation of the picking and placing device, control instructions for the counterweight block corresponding to each time point are generated.

[0216] Optionally, the motion trajectory determination subunit is specifically configured to:

[0217] The motion trajectory of the robot's picking and placing device is determined based on the picking and placing task corresponding to the robot or the action type of the robot's picking and placing device, and a pre-established first corresponding relationship; wherein the first corresponding relationship is used to describe the correspondence between the motion trajectory of the picking and placing device and one or both of the picking and placing task corresponding to the robot and the action type of the robot's picking and placing device.

[0218] Optionally, the device further includes:

[0219] An instruction adjustment module is used to generate control instructions for the counterweight block corresponding to each time node according to the center of mass offset parameter of the robot at each time node during the operation of the cargo picking and placing device. For each time node, during the period of moving the configuration block based on the control instruction corresponding to the time node, obtain the angular velocity output by the angular velocity sensor corresponding to the time node, and obtain the resultant angular velocity corresponding to the time node according to the angular velocity output by the angular velocity sensor corresponding to the time node; obtain the new target position of the counterweight block corresponding to each time node according to the resultant angular velocity corresponding to each time node; for each time node, modify the control instruction of the counterweight block corresponding to the time node according to the target position of the counterweight block corresponding to the time node to control the counterweight block to move to the target position corresponding to the time node.

[0220] Optionally, the device further includes:

[0221] The motion type determination module is used to determine the motion type of the picking and placing device according to the operating parameters of the driving motor of the picking and placing device.

[0222] The control device for the counterweight block provided in the embodiment of the present disclosure can execute the control method for the counterweight block provided in any embodiment of the present disclosure, and has the corresponding functional modules and beneficial effects of the execution method.

[0223] Figure 6 A schematic diagram of the structure of a robot provided in another embodiment of the present disclosure is shown in FIG. Figure 6 As shown, the robot includes: a mobile chassis 610 , a counterweight 620 arranged on the mobile chassis 610 , a picking and placing device 630 and a processor 640 .

[0224] The processor 640 is configured to execute to implement the present disclosure. Figures 2 to 4 The control method of the counterweight block provided in any of the corresponding embodiments. The counterweight block 620 can be the counterweight block provided in any of the above embodiments.

[0225] For related instructions, please refer to Figures 2 to 4 You can understand the relevant descriptions and effects corresponding to the steps, and will not go into details here.

[0226] In some embodiments, the counterweight 620 can move within the area set by the mobile chassis 610, such as Figure 6 The dotted box in the figure corresponds to the area.

[0227] In some embodiments, the robot may be a stacking robot, a box robot, or the like including a column frame.

[0228] An embodiment of the present disclosure also provides a warehousing system, which includes: scheduling equipment, storage shelves and robots.

[0229] Among them, the robot can Figures 1A to 1H ,as well as Figure 6 The corresponding robot provided in any embodiment. The scheduling device is used to assign tasks to the robot. The storage rack is used to store goods. The storage rack can include multiple layers and multiple columns of storage locations, and each storage location can store one or more goods.

[0230] In some embodiments, the storage system further includes an operating table, a discharger, an elevator, etc. Operators can sort and pack the items stored in the warehouse at the operating table, and the discharger and elevator serve as transfer devices for the goods.

[0231] An embodiment of the present disclosure provides a computer-readable storage medium having a computer program stored thereon, which is executed by a processor to implement the present disclosure. Figures 2 to 4 The control method of the counterweight block provided in any one of the corresponding embodiments.

[0232] Among them, the computer-readable storage medium may be a ROM, a random access memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like.

[0233] The present disclosure also provides a program product, comprising an executable computer program stored in a readable storage medium. At least one processor of a robot can read the computer program from the readable storage medium, and the at least one processor can execute the computer program to cause a counterweight control device to implement the counterweight control method provided in the various embodiments described above.

[0234] In the description of the present disclosure, it should be understood that the terms "center", "longitudinal", "lateral", "length", "width", "thickness", "up", "down", "front", "back", "left", "right", "vertical", "horizontal", "top", "bottom", "inside", "outside" and the like indicate orientations or positional relationships based on the orientations or positional relationships shown in the accompanying drawings, and are only for the convenience of describing the embodiments of the present disclosure and simplifying the description, and do not indicate or imply that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation, and therefore should not be understood as a limitation on the present disclosure.

[0235] In the description of the present disclosure, it should be understood that the terms "including" and "having" and any variations thereof used herein are intended to cover non-exclusive inclusions. For example, a process, method, system, product or apparatus that includes a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to these processes, methods, products or apparatuses.

[0236] Unless otherwise expressly specified or limited, the terms "mounted," "connected," "connected," "fixed," etc. should be understood broadly. For example, they can refer to fixed connections, detachable connections, or integration. They can be directly connected or indirectly connected through an intermediate medium, allowing internal connectivity between two elements or an interaction between two elements. Those skilled in the art will understand the specific meanings of the above terms in this disclosure based on the specific circumstances. In addition, the terms "first," "second," etc. are used for descriptive purposes only and should not be understood to indicate or imply relative importance or implicitly indicate the number of the technical features indicated.

[0237] In the several embodiments provided in the present disclosure, it should be understood that the disclosed 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 modules is merely a logical function division. In actual implementation, there may be other division methods, such as multiple modules can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interface, device or module, which can be electrical, mechanical or other forms.

[0238] The modules described as separate components may or may not be physically separate, and the components shown as modules may or may not be physical units, that is, they may be located in one place or distributed across multiple network elements. Some or all of the modules may be selected to achieve the purpose of the solution of this embodiment according to actual needs.

[0239] In addition, the functional modules in the various embodiments of the present disclosure may be integrated into a single processing unit, each module may exist physically separately, or two or more modules may be integrated into a single unit. The aforementioned modules may be implemented in the form of hardware or hardware plus software functional units.

[0240] The integrated modules implemented in the form of software functional modules can be stored in a computer-readable storage medium. The software functional modules stored in a storage medium include instructions for causing a computer device (which can be a personal computer, server, or network device, etc.) or a processor to execute some of the steps of the methods described in various embodiments of the present disclosure.

[0241] It should be understood that the processor may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), or application-specific integrated circuits (ASIC). A general-purpose processor may be a microprocessor or any conventional processor. The steps of the method disclosed in the present disclosure may be directly implemented by a hardware processor or implemented by a combination of hardware and software modules in the processor.

[0242] The memory may include a high-speed RAM memory, and may also include non-volatile storage NVM, such as at least one disk memory, and may also be a USB flash drive, a mobile hard disk, a read-only memory, a magnetic disk or an optical disk.

[0243] A bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus. Buses can be categorized as address buses, data buses, and control buses. For ease of illustration, the buses in the figures of this disclosure are not limited to just one bus or just one type of bus.

[0244] The storage medium may be implemented by any type of volatile or non-volatile memory device, or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk. The storage medium may be any available medium that can be accessed by a general-purpose or special-purpose computer.

[0245] An exemplary storage medium is coupled to a processor so that the processor can read information from the storage medium and write information to the storage medium. Of course, the storage medium can also be an integral part of the processor. The processor and the storage medium can be located in an application specific integrated circuit (ASIC). Of course, the processor and the storage medium can also exist as discrete components in an electronic device or a main control device.

[0246] Those skilled in the art will appreciate that all or part of the steps in the above-described method embodiments can be implemented using hardware associated with program instructions. The aforementioned program can be stored in a computer-readable storage medium. When executed, the program performs the steps of the above-described method embodiments. The aforementioned storage medium includes various media capable of storing program code, such as ROM, RAM, magnetic disks, or optical disks.

[0247] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present disclosure, rather than to limit them. Although the present disclosure has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or replace some or all of the technical features therein with equivalents. However, these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of the present disclosure.

Claims

1. A method for controlling a counterweight, characterized in that: The method is applied to a robot, the robot comprising a mobile chassis and a counterweight, the counterweight being arranged on the mobile chassis, the method comprising: generating a control instruction for the counterweight according to one or more of a picking and placing task corresponding to the robot, an action type of the picking and placing device of the robot, a weight of the cargo corresponding to the robot, and an angular velocity of the robot in various directions output by an angular velocity sensor provided on the robot; According to the control instruction, controlling the counterweight to move so as to balance the robot; The cargo corresponding to the robot includes one or more of the cargo placed on the cargo storage area of ​​the robot, the cargo on the cargo picking and placing device of the robot, and the cargo that the robot needs to pick up; The generating of the control instruction for the counterweight according to one or more of the following: a picking and placing task corresponding to the robot, an action type of the picking and placing device of the robot, a weight of the cargo corresponding to the robot, and an angular velocity of the robot in various directions output by an angular velocity sensor provided on the robot, includes: When the action type of the picking and placing device is a vertical type, a control instruction for the counterweight is generated according to the center of mass of the robot, the center of mass of the counterweight, the center of mass of the picking and placing device, the weight of the counterweight, and the weight of the picking and placing device, so that the center of mass of the robot, the center of mass of the counterweight, and the center of mass of the picking and placing device are collinear, and the product of the weight of the counterweight and a first distance is greater than or equal to the product of the weight of the picking and placing device and a second distance; wherein the first distance is the distance between the center of mass of the counterweight and the center of mass of the robot, and the second distance is the distance between the center of mass of the picking and placing device and the center of mass of the robot; or, When the action type of the picking and placing device is a horizontal type, a control instruction for the counterweight is generated according to the angular velocity of the robot in each direction output by an angular velocity sensor provided on the robot; or The motion trajectory of the robot's picking and placing device is determined according to the picking and placing task corresponding to the robot or the action type of the robot's picking and placing device; the center of mass offset parameters of the robot at each time node during the action of the picking and placing device are determined according to the motion trajectory of the robot's picking and placing device and the weight of the goods corresponding to the robot; and the control instructions of the counterweight block corresponding to each time node are generated according to the center of mass offset parameters of the robot at each time node during the action of the picking and placing device.

2. The method according to claim 1, characterized in that Generating a control instruction for the counterweight according to the angular velocity of the robot in each direction output by an angular velocity sensor provided on the robot includes: determining a resultant angular velocity of the robot according to the angular velocity of the robot in each direction output by an angular velocity sensor provided on the robot; A control instruction for the counterweight is generated according to the combined angular velocity of the robot.

3. The method according to claim 2, characterized in that Generating a control instruction for the counterweight according to the combined angular velocity of the robot includes: Determining the target position and moving speed of the counterweight according to the combined angular velocity of the robot; generating a control instruction for the counterweight according to the target position and moving speed of the counterweight; Controlling the movement of the counterweight according to the control instruction includes: According to the control instruction, the counterweight is controlled to move to the target position at the moving speed.

4. The method according to claim 1, wherein Determining a motion trajectory of the robot's picking and placing device according to a picking and placing task corresponding to the robot or an action type of the robot's picking and placing device includes: Determining a motion trajectory of the robot's picking and placing device according to the robot's corresponding picking and placing task or the action type of the robot's picking and placing device and a pre-established first correspondence; The first corresponding relationship is used to describe the corresponding relationship between the motion trajectory of the picking and placing device and one or both of the picking and placing tasks corresponding to the robot and the action type of the picking and placing device of the robot.

5. The method according to claim 1, characterized in that After generating control instructions for the counterweight corresponding to each time node according to the center of mass offset parameter of the robot at each time node during the operation of the picking and placing device, the method further includes: For each time node, while the counterweight is moved based on the control instruction corresponding to the time node, obtaining the angular velocity output by the angular velocity sensor corresponding to the time node, and obtaining the resultant angular velocity corresponding to the time node based on the angular velocity output by the angular velocity sensor corresponding to the time node; According to the angular velocity corresponding to each time node, the new target position of the counterweight corresponding to each time node; For each time node, the control instruction of the counterweight block corresponding to the time node is modified according to the target position of the counterweight block corresponding to the time node, so as to control the counterweight block to move to the target position corresponding to the time node.

6. The method according to any one of claims 1 to 5, characterized in that The method further comprises: The action type of the cargo picking and placing device is determined according to the operating parameters of the driving motor of the cargo picking and placing device.

7. A control device for a counterweight, characterized in that: The device is applied to a robot, the robot comprising a mobile chassis and a counterweight block, the counterweight block being arranged on the mobile chassis, and the device comprising: an instruction generation module, configured to generate a control instruction for the counterweight based on one or more of the following: a picking and placing task corresponding to the robot, an action type of the picking and placing device of the robot, a weight of the cargo corresponding to the robot, and an angular velocity of the robot in various directions output by an angular velocity sensor provided on the robot; A control module, configured to control the movement of the counterweight block according to the control instruction to balance the robot; The cargo corresponding to the robot includes one or more of the cargo placed on the cargo storage area of ​​the robot, the cargo on the cargo picking and placing device of the robot, and the cargo that the robot needs to pick up; The instruction generation module is specifically used to: When the action type of the picking and placing device is a vertical type, a control instruction for the counterweight is generated according to the center of mass of the robot, the center of mass of the counterweight, the center of mass of the picking and placing device, the weight of the counterweight, and the weight of the picking and placing device, so that the center of mass of the robot, the center of mass of the counterweight, and the center of mass of the picking and placing device are collinear, and the product of the weight of the counterweight and a first distance is greater than or equal to the product of the weight of the picking and placing device and a second distance; wherein the first distance is the distance between the center of mass of the counterweight and the center of mass of the robot, and the second distance is the distance between the center of mass of the picking and placing device and the center of mass of the robot; or, When the action type of the picking and placing device is a horizontal type, a control instruction for the counterweight is generated according to the angular velocity of the robot in each direction output by an angular velocity sensor provided on the robot; or The motion trajectory of the robot's picking and placing device is determined according to the picking and placing task corresponding to the robot or the action type of the robot's picking and placing device; the center of mass offset parameters of the robot at each time node during the action of the picking and placing device are determined according to the motion trajectory of the robot's picking and placing device and the weight of the goods corresponding to the robot; and the control instructions of the counterweight block corresponding to each time node are generated according to the center of mass offset parameters of the robot at each time node during the action of the picking and placing device.

8. A robot, characterized in that: include: A mobile chassis, a counterweight, a cargo pick-up and placement device, and at least one processor, wherein the counterweight is arranged on the mobile chassis. The at least one processor is configured to execute the counterweight control method according to any one of claims 1 to 6.

9. A computer-readable storage medium, characterized in that The computer-readable storage medium stores computer-executable instructions. When the processor executes the computer-executable instructions, the method for controlling the counterweight according to any one of claims 1 to 6 is implemented.

10. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the method for controlling a counterweight according to any one of claims 1 to 6 is implemented.

Citation Information

Patent Citations

  • Carrying robot

    CN107758334A

  • Robot balancing device and robot comprising same

    CN210910089U