A robot leg module and a robot gait control method
By designing a hidden wiring channel and servo actuator drive in the robot's leg structure, the problems of easy damage and poor aesthetics of the wiring harness in the prior art are solved, and the movement flexibility and gait control capability of the robot's legs are improved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- ALIPAY (HANGZHOU) INFORMATION TECH CO LTD
- Filing Date
- 2026-06-17
- Publication Date
- 2026-07-21
AI Technical Summary
Existing robot leg structures suffer from problems such as unstable performance, insufficient flexibility, complex structure, and easily damaged or exposed wiring harnesses that affect aesthetics in terms of gait control and wiring layout.
A robot leg module was designed. By forming a first wiring channel between the leg link and the leg shell, and a second wiring channel between the leg link and the ankle shell, the wiring harness is hidden. Combined with the first and second servo actuators, the leg link and the foot support are driven to rotate around different axes, thereby achieving two-degree-of-freedom motion control.
It improves the safety and aesthetics of the wiring layout, enhances the gait flexibility of the robot's leg structure, and meets the needs of various gait control and posture adjustment.
Smart Images

Figure CN122426327A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of robotics, and in particular to a robot leg module and a robot gait control method. Background Technology
[0002] With the development of robotics technology, various mobile robots are increasingly widely used in industries such as manufacturing, services, education, and consumer electronics. As a key component for achieving mobility, the robot's leg structure, transmission layout, and wiring method directly affect the robot's overall performance and reliability. To meet the mobility needs of different scenarios, higher requirements are being placed on the robot's leg structure's motion flexibility, operational stability, and aesthetic appearance.
[0003] Therefore, how to provide a robot leg structure solution with high gait flexibility and high safety and aesthetics in line layout has become a technical problem that urgently needs to be solved in this field. Summary of the Invention
[0004] In view of this, embodiments of this specification provide a robot leg module to offer a robot leg structure solution with high gait flexibility and high safety and aesthetics in wiring layout. One or more embodiments of this specification also relate to a robot gait control method, a robot gait control device, a computing device, and a computer-readable storage medium.
[0005] According to a first aspect of the embodiments of this specification, a robot leg module is provided, comprising: Body support, leg links, and foot support; A leg shell is fitted around the first connecting part of the leg link near the body support part, and a first wiring channel is formed between the leg link and the leg shell; The second connecting part of the leg link near the foot support is connected to the ankle shell to form a second wiring channel; The body support is equipped with a first servo actuator. The output end of the first servo actuator is connected to the first connecting part for driving the leg link to rotate around the first axis. The foot support is internally provided with a second servo actuator, the output end of which is connected to the second connecting part for driving the foot support to rotate around a second axis; the second axis is perpendicular to the first axis. The body support is provided with a first cable pass-through opening, and the foot support is provided with a second cable pass-through opening. The first cable pass-through opening is connected to the second cable pass-through opening via the first cable routing channel and the second cable routing channel.
[0006] According to a second aspect of the embodiments of this specification, a robot gait control method is provided, applied to a robot, the robot including a first leg structure and a second leg structure, wherein the first leg structure and the second leg structure are the robot leg modules described above, and the robot gait control method includes: Obtain the robot's first position, first yaw angle, and desired second position at a first moment; Based on the first position, the second position, and the first yaw angle, a stride factor, a relative yaw angle, and a direction of travel are determined; the stride factor is used to adjust the stride size of the robot. Based on the stride factor, the relative yaw angle, and the direction of travel, a first reference trajectory for each servo actuator of the first leg structure and a second reference trajectory for each servo actuator of the second leg structure are generated; both the first and second reference trajectories include a reference angular position and a reference angular velocity. Instructions for instructing movement according to the first reference trajectory are sent to each servo actuator of the first leg structure, and instructions for instructing movement according to the second reference trajectory are sent to each servo actuator of the second leg structure.
[0007] According to a third aspect of the embodiments of this specification, a robot gait control device is provided, applied to a robot, the robot including a first leg structure and a second leg structure, the first leg structure and the second leg structure being the robot leg structure described above, the robot gait control device comprising: The acquisition module is used to acquire the robot's first position, first yaw angle, and desired second position at a first moment; The determining module is used to determine the stride factor, relative yaw angle, and direction of travel based on the first position, the second position, and the first yaw angle; the stride factor is used to adjust the stride size of the robot. The generation module is used to generate a first reference trajectory for each servo actuator of the first leg structure and a second reference trajectory for each servo actuator of the second leg structure based on the stride factor, the relative yaw angle, and the direction of travel; both the first reference trajectory and the second reference trajectory include a reference angular position and a reference angular velocity; The transmitting module is used to transmit instructions for moving according to the first reference trajectory to each servo actuator of the first leg structure, and to transmit instructions for moving according to the second reference trajectory to each servo actuator of the second leg structure.
[0008] According to a fourth aspect of the embodiments of this specification, a computing device is provided for use in a robot, the robot including a first leg structure and a second leg structure, the first leg structure and the second leg structure being the robot leg structure described above, the computing device comprising: At least one processor; and, A memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor, which enables the at least one processor to implement the robot gait control method described above.
[0009] According to a fifth aspect of the embodiments of this specification, a computer-readable storage medium is provided that stores computer-executable instructions, which, when executed by a processor, implement the above-described robot gait control method.
[0010] At least one embodiment provided in this specification can achieve the following beneficial effects: In one or more embodiments of this specification, the robot leg structure constructs a continuous internal wiring path from the first wiring port of the body support part through the first wiring channel and the second wiring channel to the second wiring port of the foot support part through the first wiring channel and the second wiring channel. The entire wiring path from the body support part to the foot support part is hidden inside the leg and ankle shells, achieving complete concealment of the wiring harness inside the leg structure and avoiding wiring exposure. This makes the wiring harness less prone to wear or repeated bending damage during robot leg movement, thereby improving the safety and aesthetics of the wiring layout. Furthermore, the robot leg structure can drive the leg link to rotate around the first axis through the first servo actuator and drive the foot support part to rotate around the second axis through the second servo actuator, achieving two-degree-of-freedom motion control of the leg structure. Since the first axis and the second axis are perpendicular to each other, the leg link and the foot support part can rotate around the two mutually perpendicular axes respectively. Thus, the robot's leg structure can achieve independent and combined movements around different axes, meeting various gait control and posture adjustment needs in scenarios such as movement, turning, and posture adjustment, thereby improving the robot's gait movement flexibility. Attached Figure Description
[0011] To more clearly illustrate the technical solutions in the embodiments or prior art of this specification, the drawings used in the description of the embodiments or prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments recorded in this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0012] Figure 1 This is a schematic diagram of the structure of a robot provided in one embodiment of this specification; Figure 2 This is a schematic diagram of the structure of a robot leg module provided in one embodiment of this specification; Figure 3 This is a top view of a robot leg module provided in one embodiment of this specification; Figure 4 This is a schematic diagram of a first servo actuator, a second servo actuator, and a leg linkage provided in one embodiment of this specification; Figure 5 This is an exploded structural diagram of a robot leg module provided in one embodiment of this specification; Figure 6 This is a schematic diagram of a foot shell provided in one embodiment of this specification; Figure 7 This is a cross-sectional wiring diagram of a robot leg module provided in one embodiment of this specification; Figure 8 This is a schematic diagram of a foot circuit board provided in one embodiment of this specification; Figure 9 This is a schematic diagram of the bottom structure of a foot support provided in one embodiment of this specification; Figure 10 This is a flowchart illustrating a robot gait control method according to one embodiment of this specification; Figure 11 This is an overall flowchart of a robot gait control method provided in one embodiment of this specification; Figure 12 This is a schematic diagram of the structure of a robot gait control device provided in one embodiment of this specification; Figure 13 This is a structural block diagram of a computing device provided in one embodiment of this specification.
[0013] Figure label: 1. Robot head module; 2. Robot body module; 3. Robot leg module; 31. Body support; 311. First cable guide; 312. First bearing; 32. Leg link; 321. First connecting part; 322. Second connecting part; 3221. Hole on the second connecting part; 3222. Spline groove on the second connecting part; 33. Leg shell; 34. Ankle shell; 35. First servo actuator; 36. Second servo actuator; 37. Foot support; 371. Foot 3711. Outer casing; 3712. Second wiring port; 3713. Raised structure of foot support; 372. Servo actuator pressure plate; 373. Foot circuit board; 3731. Laser distance sensor; 374. Foot base plate; 3741. Stepped hole; 3742. Light shield; 3743. Laser distance sensor cover plate; 375. Anti-slip pad; 376. Charging coil; 38. First wiring channel; 39. Second wiring channel; 40. Wiring harness. Detailed Implementation
[0014] Many specific details are set forth in the following description to provide a full understanding of this application. However, this application can be implemented in many other ways different from those described herein, and those skilled in the art can make similar extensions without departing from the spirit of this application; therefore, this application is not limited to the specific embodiments disclosed below.
[0015] The terminology used in one or more embodiments of this application is for the purpose of describing particular embodiments only and is not intended to limit the scope of one or more embodiments of this application. The singular forms “a,” “the,” and “the” used in one or more embodiments of this application and in the appended claims are also intended to include the plural forms unless the context clearly indicates otherwise. It should also be understood that the term “and / or” used in one or more embodiments of this application refers to and includes any or all possible combinations of one or more associated listed items.
[0016] It should be understood that although the terms first, second, etc., may be used to describe various information in one or more embodiments of this application, such information should not be limited to these terms. These terms are only used to distinguish information of the same type from one another. For example, first may also be referred to as second without departing from the scope of one or more embodiments of this application, and similarly, second may also be referred to as first. Depending on the context, the word "if" as used herein may be interpreted as "when," "when," or "in response to a determination."
[0017] To make the objectives, technical solutions, and advantages of one or more embodiments of this specification clearer, the technical solutions of one or more embodiments of this specification will be clearly and completely described below in conjunction with specific embodiments and corresponding drawings. Obviously, the described embodiments are only a part of the embodiments of this specification, and not all of them. Based on the embodiments in this specification, all other embodiments obtained by those skilled in the art without creative effort are within the protection scope of one or more embodiments of this specification.
[0018] First, the terms and concepts used in one or more embodiments of this specification will be explained.
[0019] A servo actuator is a power actuator with closed-loop control capabilities, capable of precise positioning and stable output of angle, position, or rotational speed according to control commands. Servo actuators are characterized by fast response speed, high control accuracy, and smooth and reliable operation. They can complete specified actions according to preset logic and are commonly used in robot joints, motion actuators, and automated operation mechanisms requiring precise attitude control.
[0020] A transmission connection (TC) refers to an assembly and mating method that mechanically couples the output end of a power mechanism with a driven component to transmit torque, speed, and rotational motion. Transmission connections achieve smooth power transmission through structural adaptation, featuring reliable transmission, compact structure, and good motion synchronization. They are widely used in various electromechanical equipment, robot joints, and automated transmission devices.
[0021] A spline connection is a transmission connection structure consisting of a toothed external spline and an internal spline groove that mesh with each other. Through the circumferentially distributed teeth, torque transmission and angular synchronization are achieved. This ensures high coaxiality between connected components, uniform force distribution, and stable and reliable transmission. It is suitable for rotary motion mechanisms that require precise transmission, frequent steering, and high torque output.
[0022] An interference fit (IF) is a mechanical assembly where the shaft diameter is larger than the matching bore diameter, and the contact surfaces of the two parts are pressed together after assembly, generating a radial preload. Interference fits rely on the compressive stress after assembly to achieve circumferential fixation and torque transmission. Interference fits are characterized by strong connections, high coaxiality, and the elimination of the need for additional fasteners, and are widely used in the mechanical assembly of bearings, connecting rods, and shafts.
[0023] A limiting rib (LR) is a raised, strip-shaped limiting structure integrally formed on a housing, bracket, or linkage structure. By abutting against mating parts, the limiting rib achieves installation positioning, circumferential limiting, or stroke constraint, preventing component offset, rotation, or overtravel. Limiting ribs are characterized by their simple structure, lack of need for additional fasteners, and high positioning accuracy, and are widely used in robot structural components, electronic product housings, and mechanical assembly structures.
[0024] A mounting arm (MA) is a cantilevered support component used to support and fix servo motors or functional devices. The mounting arm uses its own structure to position, constrain, and assemble devices, limiting their multiple degrees of freedom. Mounting arms are characterized by high support strength, flexible layout, and adaptability to various installation spaces.
[0025] A printed circuit board (PCB) is a rigid or flexible substrate used to carry and connect electronic components. PCBs achieve electrical connections and signal transmission between electronic components by forming conductive lines and pads on an insulating substrate. PCBs are characterized by stable structure, neat wiring, reliable insulation, and ease of mass assembly, and are widely used in various electronic devices, smart terminals, and automated equipment.
[0026] A laser distance sensor (LDS) is a photoelectric sensor that detects the linear distance between itself and the measured surface in real time based on the principle of laser time-of-flight or phase detection. LDS calculates distance values by emitting and receiving laser echo signals, and features high ranging accuracy, fast response speed, and strong resistance to ambient light interference.
[0027] Wireless charging (WC) is a power supply technology that uses electromagnetic induction, magnetic coupling resonance, and other electromagnetic physical principles to transfer electrical energy across space without the need for physical contact with metal wires. Wireless charging relies on electromagnetic fields as the energy transfer medium to complete the energy transfer. It features a simple structure, waterproof and dustproof design, lossless plugging and unplugging, and strong automation adaptability, and is widely used in self-sustaining scenarios such as small intelligent electronic products, mobile robots, and portable smart terminals.
[0028] The transmitting coil (TC) is the core electromagnetic conversion component inside the wireless charging transmitter, typically fixedly mounted on a power supply carrier such as a charging base. The transmitting coil works by rapidly generating a stable alternating magnetic field after receiving an alternating current from the drive circuit, converting the electrical energy within the circuit into electromagnetic energy propagating in space. The transmitting coil is the key component in the entire wireless charging system for outputting energy.
[0029] The receiving coil (RC) is the core sensing component in a wireless charging receiver. The receiving coil senses the alternating magnetic field generated by the transmitting coil in the surrounding space in real time. Based on the principle of electromagnetic induction, it converts the acquired magnetic field energy into alternating electrical energy, which is then rectified and regulated to power and store the battery.
[0030] Yaw angle (YA) refers to the attitude angle of a moving body about its vertical central axis in the horizontal plane. It represents the deviation of the body's current orientation from a reference orientation. Yaw angle is a core attitude parameter for robot steering, attitude correction, and heading control, and it is characterized by its intuitive representation and simple calculation. Yaw angle is widely used in robot navigation, mobile vehicle attitude calculation, and motion control systems.
[0031] Azimuth angle (AZA) is the horizontal angle formed by connecting a line in the horizontal plane from a set reference direction to a target point. It is used to characterize the horizontal relationship between the target and the observation point. Azimuth angle is used to plan the direction of travel and turning angle, and is a key parameter for target approach, path planning, and autonomous navigation. Azimuth angle is widely used in robot localization and navigation, geographic mapping, and intelligent motion control.
[0032] The Sine Wave Model (SWM) is a mathematical model for generating continuous periodic trajectories based on the sine function. By configuring frequency, amplitude, phase, and bias parameters, the SWM model generates smooth and continuous periodic motion curves, which are easy to solve in real time.
[0033] Amplitude (AMP) refers to the maximum deviation of a periodic motion trajectory from its equilibrium center position. Amplitude characterizes the magnitude of changes in joint swaying or periodic motion. It directly determines a robot's stride length and the range of joint swaying, making it a core variable in gait trajectory parameter configuration.
[0034] Phase offset (PO) refers to the difference in the initial phase between multiple periodic motion trajectories with the same frequency. Phase offset can be used to control the timing and coordination of multi-joint movements. Specifically, by setting the phase offset, the robot's left and right legs can swing alternately, and the joint timing can be coordinated, ensuring the robot's gait is coordinated and stable.
[0035] Static offset (SO) refers to the fixed angular offset of the center working position of a periodic motion trajectory relative to the mechanical zero position. Static offset provides a steady-state reference working point for the joint (servo actuator). It is used to adapt to the mechanical installation center position, adjust the initial posture of the joint (servo actuator), and avoid motion limit interference.
[0036] With the development of artificial intelligence and robotics, robots, as an important branch of interactive, educational, and assistive intelligent hardware, have received widespread attention. However, existing robots still suffer from problems in gait control and leg structure design, such as unstable performance, insufficient flexibility, complex structures, and easily damaged or exposed wiring harnesses that affect aesthetics.
[0037] To address the shortcomings of existing technologies, the robot leg structure in this embodiment constructs a continuous internal wiring path from the first wiring port of the body support, through the first wiring channel and the second wiring channel, to the second wiring port of the foot support, via the first wiring channel and the second wiring channel. The entire wiring path from the body support to the foot support is hidden inside the leg and ankle shells, achieving complete concealment of the wiring within the leg structure and preventing exposure. This reduces wear and repeated bending damage during robot leg movement, improving the safety and aesthetics of the wiring layout. Furthermore, the robot leg structure can drive the leg link to rotate around a first axis via a first servo actuator and drive the foot support to rotate around a second axis via a second servo actuator, enabling two-degree-of-freedom motion control. Since the first and second axes are perpendicular, the leg link and foot support can rotate around these two perpendicular axes respectively. Thus, the robot's leg structure can achieve independent and combined movements around different axes, meeting various gait control and posture adjustment needs in scenarios such as movement, turning, and posture adjustment, thereby improving the robot's gait movement flexibility.
[0038] The technical solutions provided in the various embodiments of this specification are described in detail below with reference to the accompanying drawings.
[0039] Please see Figure 1 , Figure 2 and Figure 5 The robot leg module 3 provided in this specification can be applied to a robot, which may specifically be a desktop robot, a welcoming robot, a delivery robot, or other types of service robots, without specific limitations. The robot may include a robot head module 1, a robot body module 2, and a robot leg module 3.
[0040] The robot leg module 3 may include a body support 31, a leg link 32, and a foot support 37. The body support 31 serves as the upper load-bearing structure of the robot leg module 3, connecting to the robot body module 2. The leg link 32 connects the body support 31 and the foot support 37, which serves as the end support structure of the robot leg module 3, contacting a support surface (such as the ground or a table).
[0041] Please see Figure 2 , Figure 5 and Figure 7 In this embodiment of the specification, a leg shell 33 is fitted over the first connecting portion 321 of the leg link 32 near the body support portion 31. A first wiring channel 38 is formed between the leg link 32 and the leg shell 33. Specifically, the leg shell 33 is an inverted frustum-shaped hollow cylindrical structure, and there is a gap between its internal cavity and the outer wall of the leg link 32, which constitutes the first wiring channel 38. The first wiring channel 38 extends along the length of the leg link 32 and is used to accommodate the wire harness 40.
[0042] In this embodiment of the specification, the second connecting portion 322 of the leg link 32 near the foot support portion 37 can be connected to the ankle housing 34 to form a second wiring channel 39. Specifically, the ankle housing 34 is sleeved on the outside of the second connecting portion 322 of the leg link 32, or fixed to the second connecting portion 322 by snap-fitting, screw connection, or other means, and the gap formed between the two constitutes the second wiring channel 39. The second wiring channel 39 can be used to accommodate the wire harness 40 and communicates with the first wiring channel 38.
[0043] Please see Figure 2 and Figure 4 The body support 31 houses a first servo actuator 35. The output end of the first servo actuator 35 is connected to the end of the leg link 32 near the body support 31, driving the leg link 32 to rotate around a first axis. This first axis can be the axis along which the output shaft of the first servo actuator 35 is located. Optionally, the first servo actuator 35 can be a servo motor or a servo motor, and its output shaft can be connected to the upper end of the leg link 32 via a spline or key connection to transmit torque.
[0044] Please see Figure 4 and Figure 5The foot support 37 houses a second servo actuator 36. The output of the second servo actuator 36 is connected to the second connecting part 322 for driving the foot support 37 to rotate around a second axis. This second axis can be the axis along which the output shaft of the second servo actuator 36 is located. The second axis is perpendicular to the first axis. For example, the first axis can be a vertical axis (Z-axis) for realizing leg rotation in the vertical direction; the second axis can be a horizontal axis (X-axis) for realizing foot rotation in the horizontal direction. This arrangement of mutually perpendicular axes allows the leg to obtain two mutually orthogonal rotational degrees of freedom, thus enabling the simulation of complex movements such as stepping and lifting the foot.
[0045] Please see Figure 3 , Figure 6 and Figure 7 The body support 31 has a first cable routing port 311, and the foot support 37 has a second cable routing port 3711. The first cable routing port 311 can connect to the second cable routing port 3711 via a first cable routing channel 38 and a second cable routing channel 39. In practical applications, the wiring harness 40 (such as motor power cables, signal cables, sensor harnesses, etc.) is led out from inside the body support 31, enters the first cable routing channel 38 through the first cable routing port 311, then enters the second cable routing channel 39, and finally enters the foot support 37 through the second cable routing port 3711, connecting to the foot circuit board 373 or the second servo actuator 36. Thus, the wiring harness 40 can be completely hidden inside the leg shell 33 and ankle shell 34, and is not visible from the outside, effectively avoiding wear and aesthetic problems caused by exposed wiring harnesses.
[0046] For further details, please refer to Figure 3 , Figure 4 and Figure 5 In one or more embodiments of this specification, the first connecting portion 321 has a columnar structure. The first connecting portion 321 can be interference-fitted with the first bearing 312 inside the body support portion 31. Specifically, the body support portion 31 may be provided with an annular groove, the first bearing 312 can be fixedly installed in the annular groove, and the first connecting portion 321 can be inserted into the inner ring of the first bearing 312, and interference-fitted with the inner ring of the first bearing 312.
[0047] Combination Figure 6The leg link 32 has a hole 3221 on one side of the second connecting part 322 near the foot support part 37, which mates with the protrusion 3712 of the foot support part 37. The other side has a spline groove 3222 that mates with the output end of the second servo actuator 36. Specifically, the inner side of the foot outer shell 371 of the foot support part 37 may have a protrusion 3712, which can be inserted into the hole 3221 on the second connecting part to form a rotational support. Simultaneously, the external spline on the output shaft of the second servo actuator 36 can engage with the spline groove 3222 on the second connecting part. Therefore, when the second servo actuator 36 rotates, the spline groove 3222 limits the output end of the second servo actuator 36, causing the second servo actuator 36 to rotate around the second axis. Since the second servo actuator 36 is fixedly connected to the foot support part 37, it can drive the foot support part 37 to rotate around the second axis.
[0048] Please see Figure 2 and Figure 5 In one or more embodiments of this specification, the leg housing 33 can be an inverted frustum-shaped hollow cylindrical structure, i.e., a shape that is larger at the top and smaller at the bottom. In practical applications, the bottom of the leg housing 33 may be provided with a fixing groove (not separately labeled in the figure), and the leg connecting rod 32 may be provided with a protrusion (not separately labeled in the figure) that mates with the fixing groove. Through the engagement between the fixing groove at the bottom of the leg housing 33 and the protrusion on the leg connecting rod 32 that mates with the fixing groove, the rotation of the leg housing 33 relative to the leg connecting rod 32 can be prevented, thereby ensuring the stability of the wiring channel and the consistency of the appearance.
[0049] Please see Figure 3 In one or more embodiments of this specification, the first cable passage 311 is a fan-shaped groove provided on the body support 31. Specifically, the outer diameter of the fan-shaped groove is smaller than the inner diameter of the leg housing 33. Thus, when the leg housing 33 is installed, the fan-shaped groove is located in the internal area enclosed by the leg housing 33, allowing the cable harness 40 to pass directly into the first cable routing channel 38 inside the leg housing 33 after exiting the first cable passage 311, without being visible from the outside. Furthermore, the fan-shaped shape of the first cable passage 311 provides a larger space for the cable harness to pass through, and the cable harness 40 will not be compressed when the leg link 32 rotates within a certain angle range.
[0050] Please see Figure 6In one or more embodiments of this specification, the foot support 37 includes a foot housing 371. The second cable pass 3711 is an opening groove provided on the foot housing 371. Specifically, the second cable pass 3711 may be U-shaped. The second cable pass 3711 is located on the side of the foot housing 371 away from the second servo actuator 36. Specifically, the foot housing 371 is shell-shaped, with one side of the foot housing 371 used to accommodate the second servo actuator 36, and the other side having an opening groove as the second cable pass 3711. A wire harness can pass through the second cable pass 3711 and be led upwards through the second wiring channel 39. Figure 6 An opening slot may also be provided on the side of the foot housing 371 near the second servo actuator 36, through which the output end of the second servo actuator 36 can be connected to the spline slot 3222 on the leg link 32.
[0051] In practical applications, the ankle housing 34 and the leg housing 33 can each be provided with a wiring port at their joint. This wiring port can be used to connect the first wiring channel 38 and the second wiring channel 39. Specifically, the lower end of the leg housing 33 and the upper end of the ankle housing 34 can be provided with corresponding notches or openings. When the two are assembled, these notches or openings are aligned to form a wiring harness channel, allowing the wiring harness 40 to enter the second wiring channel 39 without obstruction from the first wiring channel 38.
[0052] Please see Figure 5 and Figure 6 In one or more embodiments of this specification, the foot support portion 37 may also be provided with limiting ribs (not shown in the figure) and a servo actuator pressure plate 372. The limiting ribs can be used to limit the mounting arm of the second servo actuator 36. The servo actuator pressure plate 372 is used to fix the second servo actuator 36 to the foot support portion 37 using fasteners (such as screws). Specifically, the second servo actuator 36 typically has an outwardly extending mounting arm (or fixing ear). During installation, the mounting arm of the second servo actuator 36 can be placed between the limiting ribs inside the foot housing 371 to restrict the horizontal movement of the mounting arm; then, the servo actuator pressure plate 372 is placed downwards from above, pressing down on the mounting arm of the second servo actuator 36, and the servo actuator pressure plate 372 is locked to the foot housing 371 using fasteners (such as screws), thereby restricting the vertical movement of the second servo actuator 36. Thus, through the cooperation of the limiting rib and the servo actuator pressure plate 372, the second servo actuator 36 and the foot support 37 can be fixedly connected in three degrees of freedom, thereby ensuring the stability of power transmission.
[0053] Please see Figure 8 and Figure 9In one or more embodiments of this specification, the foot support 37 further includes a foot circuit board 373 and a foot base plate 374. The foot base plate 374 may be disposed at the bottom of the foot support 37 to enclose the bottom surface of the foot shell 371. The foot circuit board 373 may be disposed inside the foot support 37, above the foot base plate 374. Specifically, the foot circuit board 373 may be a printed circuit board (PCB), or other types of circuit boards, without specific limitation.
[0054] A laser distance sensor 3731 can be installed on the foot circuit board 373. Specifically, the laser distance sensor 3731 can be arranged close to the edge of the foot base 374 to detect the distance between the foot base 374 and the supporting surface (such as a tabletop) to determine whether the robot is at the edge of the supporting surface. In practical applications, the laser distance sensor 3731 can calculate the distance between the robot's foot and the supporting surface by emitting laser light and receiving the reflected light. For example, when the robot walks to the edge of the tabletop, the distance detected by the laser distance sensor 3731 will suddenly increase, thereby triggering the anti-fall logic, controlling the robot to stop moving forward or backward, thus preventing the robot from falling off the tabletop.
[0055] Please see Figure 5 and Figure 9 In one or more embodiments of this specification, the foot support 37 may further include an anti-slip pad 375 and a charging coil 376. The anti-slip pad 375, disposed on the bottom of the foot base plate 374, may be made of a material with a high coefficient of friction, such as silicone, to provide anti-slip friction during robot movement and prevent the robot from slipping.
[0056] The charging coil 376 can be mounted on the foot circuit board 373 for wireless charging of the robot in conjunction with an external charging base. In practical applications, the charging coil 376 can be attached to the foot circuit board 373 with adhesive and electrically connected to the foot circuit board 373 via solder joints.
[0057] In practical applications, the charging coil 376 can specifically be a receiving coil. When the robot is placed on the charging base, the charging coil 376 can couple with the transmitting coil in the charging base to generate an induced current, which, after being processed by the circuit, charges the robot's battery.
[0058] Please see Figure 9In one or more embodiments of this specification, a stepped hole 3741 is provided on the foot plate 374 at the position corresponding to the laser distance sensor 3731. A light-shielding member 3742 and a laser distance sensor cover plate 3743 are disposed within the stepped hole 3741. The light-shielding member 3742 may be made of light-blocking foam or other opaque materials. The light-shielding member 3742 has through holes at the transmitting and receiving points of the laser distance sensor 3731 to prevent crosstalk between the emitted and received light from the laser distance sensor 3731, thereby reducing distance measurement errors.
[0059] The laser distance sensor cover 3743 is used to externally shield the laser distance sensor 3731 while allowing the emitted and received light from the laser distance sensor 3731 to pass through. Optionally, the laser distance sensor cover 3743 can be made of infrared-transparent ink or infrared-transparent plastic, so that the internal laser distance sensor 3731 is not visible from the outside, while not affecting the transmission of infrared light. This ensures that the laser distance sensor 3731 can function normally, while also ensuring that the laser distance sensor 3731 is not visible from the outside (which helps to maintain an aesthetically pleasing appearance).
[0060] Figure 10 This is a flowchart illustrating a robot gait control method according to an embodiment of this specification. This robot gait control method can be applied to a robot, which may include a first leg structure and a second leg structure, wherein the first leg structure and the second leg structure are the aforementioned robot leg modules. Figure 10 As shown, the flow of this robot gait control method may include the following steps: Step 1002: Obtain the robot's first position, first yaw angle, and desired second position at the first moment.
[0061] In the embodiments described in this specification, the robot may include a first leg structure and a second leg structure. The first leg structure may be the left leg structure of the robot, and the corresponding second leg structure may be the right leg structure of the robot; or, the first leg structure may also be the right leg structure of the robot, and the corresponding second leg structure may be the left leg structure of the robot. No specific limitation is made in this regard.
[0062] In the embodiments of this specification, the first moment can be the moment when the robot receives navigation instructions, or the moment when the robot is preparing to enter the next gait control method after completing the previous round of gait control. The first position can be used to represent the spatial position of the robot in the world coordinate system or local coordinate system at the first moment, for example, it can be represented by two-dimensional plane coordinates (x1, y1). The second position can be used to characterize the target position that the robot expects to reach, for example, it can be represented by two-dimensional plane coordinates (x2, y2).
[0063] In practical applications, a robot can obtain its initial position at a given moment using its onboard positioning sensors. This initial position can be represented as the robot's coordinates. Simultaneously, the robot can also obtain its initial yaw angle using attitude sensors (such as an inertial measurement unit), where the initial yaw angle characterizes the angle between the robot's orientation at that moment and a preset reference direction.
[0064] In practical applications, the desired second location can be specified by the user via command, or it can be automatically determined by the robot's control system based on task planning. For example, in a home service scenario, the user can use voice commands to direct the robot to a specific location in the living room. As another example, when the robot needs charging, its control system can determine the location of its charging base as the desired second location.
[0065] Step 1004: Determine the stride factor, relative yaw angle, and direction of travel based on the first position, the second position, and the first yaw angle; the stride factor is used to adjust the stride size of the robot.
[0066] In the embodiments of this specification, a stride factor can be determined based on the distance between the first position and the second position. The stride factor can be used to adjust the stride size of the robot when it walks. For example, when the distance between the first position and the second position is large, a larger stride factor can be determined, allowing the robot to use a larger stride to improve movement efficiency; when the distance between the first position and the second position is small, a smaller stride factor can be determined, allowing the robot to use a smaller stride to achieve precise positioning and avoid overshooting the target point due to excessive stride size.
[0067] In the embodiments of this specification, the relative yaw angle can refer to the angle between the target direction (the direction from the first position to the second position) and the robot's orientation at the first moment, used to quantify the degree to which the robot needs to turn. When the relative yaw angle is zero, it means that the robot's orientation at the first moment is exactly aligned with the second position; when the relative yaw angle is not zero, it means that the robot needs to make turning adjustments during travel.
[0068] In the embodiments of this specification, the direction of travel is used to indicate whether the robot moves forward or backward. Specifically, the target position (second position) can be determined to be in front of or behind the robot based on the numerical characteristics of the relative yaw angle (such as the sign of the cosine value), thereby determining whether the direction of travel is forward or backward.
[0069] Step 1006: Based on the stride factor, the relative yaw angle, and the direction of travel, generate a first reference trajectory for each servo actuator of the first leg structure and a second reference trajectory for each servo actuator of the second leg structure; both the first reference trajectory and the second reference trajectory include a reference angular position and a reference angular velocity.
[0070] In the embodiments described in this specification, the servo actuators included in the first leg structure may include a first servo actuator for driving the leg link to rotate about a first axis and a second servo actuator for driving the foot support to rotate about a second axis. Similarly, the servo actuators included in the second leg structure may also include a first servo actuator for driving the leg link to rotate about a first axis and a second servo actuator for driving the foot support to rotate about a second axis. For example, assuming the first leg structure is the left leg structure of the robot, the first servo actuator and the second servo actuator included in the first leg structure are two servo actuators on the left leg structure of the robot; while the second leg structure corresponds to the right leg structure of the robot, and the first servo actuator and the second servo actuator included in the second leg structure are two servo actuators on the right leg structure of the robot.
[0071] In practical applications, the first reference trajectory may include the reference trajectory corresponding to the first servo actuator of the first leg structure and the reference trajectory corresponding to the second servo actuator of the first leg structure. The second reference trajectory may include the reference trajectory corresponding to the first servo actuator of the second leg structure and the reference trajectory corresponding to the second servo actuator of the second leg structure.
[0072] Both the first reference trajectory and the second reference trajectory can include a reference angular position and a reference angular velocity. The reference angular position can be used to indicate the target angle of each servo actuator at each time, and the reference angular velocity can be used to indicate the target angular velocity of each servo actuator at each time.
[0073] In practical applications, both the first and second reference trajectories can be generated using a sine wave model. Specifically, for each servo actuator, the amplitude of the reference trajectory corresponding to that servo actuator can be determined based on the stride factor and relative yaw angle, and the phase offset of the reference trajectory corresponding to that servo actuator can be determined based on the direction of travel. Combined with the preset static offset corresponding to that servo actuator, a sine wave reference trajectory corresponding to that servo actuator can be generated. The sine wave model can generate smooth and continuous angular position and angular velocity commands, ensuring that the motion trajectories of each servo actuator are continuous in time and without abrupt changes in velocity, thus helping to ensure the coordination and stability of the robot's gait.
[0074] In some embodiments, the first reference trajectory and the second reference trajectory may also be generated using other periodic function models, such as cosine wave models, triangular wave models, square wave models, etc., without specific limitations.
[0075] In the embodiments of this specification, reference trajectories for each servo actuator in the robot's leg structure are generated based on stride factor, relative yaw angle, and direction of travel. This enables the mapping from gait parameters to the reference trajectories of the robot's leg joints (servo actuators). Since the reference trajectories include reference angular positions and reference angular velocities, each servo actuator can operate according to a complete angular position and angular velocity trajectory, facilitating smooth and precise motion control of the robot's leg joints. Furthermore, because the reference trajectories for each servo actuator in the first leg structure and the second leg structure are both generated in coordination based on the same gait parameters (stride factor, relative yaw angle, and direction of travel), the robot can maintain gait coordination and stability during movement.
[0076] Step 1008: Send instructions for moving according to the first reference trajectory to each servo actuator of the first leg structure, and send instructions for moving according to the second reference trajectory to each servo actuator of the second leg structure.
[0077] In the embodiments described in this specification, the instructions may include parameter information and trajectory data points of the reference trajectory. After receiving the instructions, the servo actuators can perform movements according to the reference angle position and reference angular velocity in their respective reference trajectories, thereby driving the robot's leg structure to walk according to the planned gait.
[0078] In practical applications, since the first reference trajectory may include the reference trajectory corresponding to the first servo actuator of the first leg structure and the reference trajectory corresponding to the second servo actuator of the first leg structure, the instruction to instruct movement according to the first reference trajectory is sent to each servo actuator of the first leg structure. Specifically, this may include sending the instruction to instruct movement according to the reference trajectory corresponding to the first servo actuator in the first reference trajectory to the first servo actuator, and sending the instruction to instruct movement according to the reference trajectory corresponding to the second servo actuator in the first reference trajectory to the second servo actuator.
[0079] In practical applications, since the second reference trajectory may include the reference trajectory corresponding to the first servo actuator of the second leg structure and the reference trajectory corresponding to the second servo actuator of the second leg structure, the instruction to instruct movement according to the second reference trajectory is sent to each servo actuator of the second leg structure. Specifically, this may include: sending the instruction to instruct movement according to the reference trajectory corresponding to the first servo actuator in the second reference trajectory to the first servo actuator, and sending the instruction to instruct movement according to the reference trajectory corresponding to the second servo actuator in the second reference trajectory to the second servo actuator.
[0080] In practical applications, the method of sending commands can be selected according to actual needs. For example, commands can be sent to the servo actuator frame by frame according to the order of trajectory data points. This frame-by-frame sending method allows the robot to adjust its trajectory in real time based on sensor feedback during movement, enhancing the adaptability of gait control. Alternatively, the complete reference trajectory can be sent to the servo actuator all at once, and the controller inside the servo actuator can execute it autonomously according to the timing sequence.
[0081] Figure 10 The robot gait control method described herein acquires the robot's first position, first yaw angle, and desired second position at a given moment (e.g., the current moment). Based on this information, it determines a stride factor to adjust the robot's stride length, a relative yaw angle to quantify the degree of turning required, and the robot's desired direction of travel. This generates reference trajectories for the servo actuators of the left and right legs and sends them for execution. This allows the robot to adaptively adjust its stride length and turning amplitude according to the spatial relationship between its own position and the target position. The robot can automatically reduce its stride length as it approaches the target position for precise positioning, and adjust its turning according to the relative yaw angle to smoothly approach the target position. This enables the robot to simultaneously complete forward / backward and turning coordinated movements within a single gait cycle, improving the smoothness and motion accuracy of autonomous navigation.
[0082] based on Figure 10 In addition to the method described in the embodiments of this specification, some specific implementation schemes of the method are also provided, which will be described below.
[0083] Optionally, both the first reference trajectory and the second reference trajectory are generated using a sine wave model; the step of determining the stride factor, relative yaw angle, and direction of travel based on the first position, the second position, and the first yaw angle may specifically include: Determine the distance between the first position and the second position; A stride factor is determined based on the distance; the stride factor is positively correlated with the distance; the stride factor is used to adjust the amplitude in the sine wave model. Based on the first position and the second position, determine the azimuth angle between the first position and the second position; The relative yaw angle is determined based on the azimuth angle and the first yaw angle; The direction of travel is determined based on the relative yaw angle.
[0084] In the embodiments of this specification, the distance between the first position and the second position can be obtained by calculating the Euclidean distance between the coordinates of the first position and the coordinates of the second position. For example, when the first position is (0, 0) and the second position is (3, 4), the calculated Euclidean distance between the two coordinates is 5 units.
[0085] In practical applications, the stride factor can be determined based on the distance between the first and second positions. The stride factor is positively correlated with this distance; that is, the greater the distance between the first and second positions, the larger the stride factor can be. Furthermore, since the stride factor can also be used to adjust the amplitude in the sine wave model, a larger stride factor results in a larger amplitude in the sine wave model, corresponding to a larger stride length for the robot. Specifically, the stride factor is obtained by multiplying the distance between the first and second positions by a preset multiple. This preset multiple can be set and adjusted according to actual needs. For example, assuming a preset multiple of 2 and a distance of 1 unit between the first and second positions, the determined stride factor = 1 × 2 = 2.
[0086] In practical applications, to prevent the robot's stride from being too small and causing low movement efficiency, a lower limit value can be preset for the stride factor. When the stride factor calculated based on the distance between the first and second positions is less than this lower limit value, this lower limit value can be used as the stride factor. The preset lower limit value of the stride factor can be set and adjusted according to actual needs. For example, assuming the preset multiplier is 2, the preset lower limit value of the stride factor is 0.3, and the distance between the first and second positions is 0.1 units, the determined stride factor = 0.1 × 2 = 0.2. Since 0.2 is less than 0.3 (the preset lower limit value), the preset lower limit value of 0.3 is determined as the stride factor.
[0087] In practical applications, to prevent the robot from becoming unstable due to excessively large strides, an upper limit value can be preset for the stride factor. When the stride factor calculated based on the distance between the first and second positions exceeds this upper limit value, the upper limit value can be used as the stride factor. The preset upper limit value of the stride factor can be set and adjusted according to actual needs. For example, assuming a preset multiplier of 2, a preset upper limit value of 2 for the stride factor, and a distance of 1.5 units between the first and second positions, the determined stride factor = 1.5 × 2 = 3. Since 3 is greater than 2 (the preset upper limit value), the preset upper limit value of 2 is determined as the stride factor.
[0088] In the embodiments of this specification, the azimuth angle between the first position and the second position can be determined based on the first position and the second position. The azimuth angle represents the angle between the direction from the first position to the second position and a preset reference direction. Subtracting the first yaw angle from the azimuth angle between the first and second positions yields the relative yaw angle. For example, in a two-dimensional coordinate system, with the preset reference direction being the positive X-axis, and the first position being (0, 0) and the second position being (2, 2), the azimuth angle between the first and second positions is 45°. Assuming the first yaw angle (the angle between the robot's current orientation and the positive X-axis) is 30°, the relative yaw angle = 45° - 30° = 15°, meaning the robot needs to yaw 15° to the left to align with the second position.
[0089] Optionally, determining the direction of travel based on the relative yaw angle may specifically include: Determine whether the cosine value of the relative yaw angle is positive to obtain the first determination result; If the first determination result indicates that the cosine value of the relative yaw angle is positive, then the direction of travel is determined to be forward. If the first determination result indicates that the cosine value of the relative yaw angle is not positive, then the direction of travel is determined to be backward.
[0090] In the embodiments of this specification, if the cosine value of the relative yaw angle is positive, it means that the relative yaw angle is in the range of -90° to 90°, which means that the robot needs to turn no more than 90° to align with the second position. In this case, it means that the second position is in front of the robot, so the direction of travel can be determined to be forward. Similarly, if the cosine value of the relative yaw angle is not positive, it means that the robot needs to turn more than 90° to align with the second position. In this case, it means that the second position is behind the robot, so the direction of travel can be determined to be backward.
[0091] For example, when the relative yaw angle is 30°, the cosine value is positive, indicating that the second position is approximately 30° in front of the robot. The robot can move forward and gradually adjust its orientation until it reaches the second position. As another example, when the relative yaw angle is 150°, the cosine value is negative, indicating that the second position is behind the robot. In this case, if the robot still chooses to move forward, it needs to turn 150° before moving, while choosing to move backward only requires adjusting its orientation by 30° while moving. The backward movement is more efficient.
[0092] In the embodiments described in this specification, the sign of the cosine of the relative yaw angle directly reflects whether the target position (second position) is in front of or behind the robot. The judgment logic is simple and efficient, requiring no complex calculations and resulting in high judgment efficiency. Furthermore, when the target position (second position) is behind the robot, the direction of travel is determined to be backward rather than forward (forward movement requires the robot to turn more than 90° first), which helps reduce unnecessary turning actions and thus improves the robot's motion efficiency.
[0093] Optionally, generating the first reference trajectory of each servo actuator of the first leg structure based on the stride factor, the relative yaw angle, and the direction of travel may specifically include: For each servo actuator in the first leg structure, the amplitude of the first reference trajectory corresponding to the target servo actuator is determined based on the stride factor and the relative yaw angle. Based on the direction of travel, determine the phase offset of the first reference trajectory; Determine the preset static bias corresponding to the target servo actuator; The first reference trajectory of the target servo actuator is generated based on the amplitude of the first reference trajectory, the phase offset of the first reference trajectory, and the preset static offset.
[0094] Similarly, the second reference trajectory for generating each servo actuator of the second leg structure based on the stride factor, the relative yaw angle, and the direction of travel can specifically include: For each servo actuator in the second leg structure, the amplitude of the second reference trajectory corresponding to the target servo actuator is determined based on the stride factor and the relative yaw angle. Based on the direction of travel, determine the phase offset of the second reference trajectory; Determine the preset static bias corresponding to the target servo actuator; The second reference trajectory of the target servo actuator is generated based on the amplitude of the second reference trajectory, the phase offset of the second reference trajectory, and the preset static offset.
[0095] Specifically, the calculation formula for the reference trajectory corresponding to each servo actuator is as follows:
[0096]
[0097]
[0098]
[0099] Formula (1) is the formula for calculating the reference angular position of the servo actuator; Formula (2) is the formula for calculating the reference angular velocity of the servo actuator.
[0100] In formulas (1) and (2), This indicates the reference angular position of the servo actuator i, in degrees or radians; The reference angular velocity of servo actuator i is expressed in degrees per second or radians per second. The amplitude of the servo actuator i is expressed in degrees or radians. Indicates phase shift, in degrees or radians; Indicates the preset static offset, in degrees or radians; Indicates time, in seconds; This indicates the fundamental frequency, measured in Hertz.
[0101] In practical applications, baseband It can determine the speed of the robot's gait. Typically, it can be taken as... =1Hz, when When the frequency is 1Hz, the robot's single-step cycle is 1 second.
[0102] In formulas (3) and (4), This is the default value, which can usually be set to 20; This is also a default value, which can usually be set to 10; Indicates stride factor; Indicates the relative yaw angle. When the value is positive, the robot needs to turn right to reach the second position; When the value is negative, the robot needs to turn left to reach the second position.
[0103] In the embodiments of this specification, for a target servo actuator, the amplitude of the reference trajectory corresponding to the target servo actuator can be determined based on the stride factor and the relative yaw angle. Specifically, if the target servo actuator is the first servo actuator on the right leg of the robot for driving the leg link to rotate around the first axis, and the relative yaw angle is positive (the robot needs to turn right), the amplitude of the reference trajectory corresponding to the target servo actuator can be calculated using formula (3); if the target servo actuator is the first servo actuator on the right leg of the robot for driving the leg link to rotate around the first axis, and the relative yaw angle is negative (the robot needs to turn left), the amplitude of the reference trajectory corresponding to the target servo actuator can be calculated using formula (4); if the target servo actuator is the first servo actuator on the left leg of the robot for driving the leg link to rotate around the first axis, and the relative yaw angle is positive (the robot needs to turn right), the amplitude of the reference trajectory corresponding to the target servo actuator can be calculated using formula (4); if the target servo actuator is the first servo actuator on the left leg of the robot for driving the leg link to rotate around the first axis, and the relative yaw angle is negative (the robot needs to turn left), the amplitude of the reference trajectory corresponding to the target servo actuator can be calculated using formula (3).
[0104] For example, taking the robot needing to turn right as an example, the amplitude is determined using formulas (3) and (4). Assume... It is 20. It is 10. =1; The angle is 40°. Formula (3) can be used to calculate the amplitude of the reference trajectory corresponding to the first servo actuator on the robot's right leg as 10°; formula (4) can be used to calculate the amplitude of the reference trajectory corresponding to the first servo actuator on the robot's left leg as 30°. This allows the robot's left leg to move at a greater angle than its right leg, thus achieving a right turn. Furthermore, through formulas (3) and (4)... The design can be Greater than In the case of taking This can prevent the robot from becoming unstable due to an excessive difference in stride length between its left and right legs.
[0105] In practical applications, if the target servo actuator is a second servo actuator on the left or right leg of the robot that drives the foot support to rotate around the second axis, the amplitude corresponding to the target servo actuator can be a preset value, such as 10°, 15°, etc., without specific limitations.
[0106] In practical applications, the phase offset can be determined based on the direction of travel. Specifically, if the target servo actuator is a second servo actuator on the robot's left or right leg that drives the foot support to rotate around a second axis, the phase offset can be determined as follows when the direction of travel is forward: When the direction of travel is backward, the phase offset can be determined as follows: If the target servo actuator is the first servo actuator on the left or right leg of the robot, which drives the leg link to rotate around the first axis, the phase offset can be zero.
[0107] In the embodiments of this specification, different preset static biases can be set for different servo actuators. For example: if the target servo actuator is a first servo actuator on the left or right leg of the robot for driving the leg link to rotate around a first axis, the preset static bias can be set to zero; if the target servo actuator is a second servo actuator on the left leg of the robot, the preset static bias can be set to 5°; if the target servo actuator is a second servo actuator on the right leg of the robot, the preset static bias can be set to -5°.
[0108] In practical applications, after determining the amplitude, phase offset and preset static offset of the target servo actuator, the reference trajectory of the target servo actuator can be determined using formulas (1) and (2).
[0109] Optionally, after generating the first reference trajectory of the target servo actuator based on the amplitude of the first reference trajectory, the phase offset of the first reference trajectory, and the preset static offset, the process may further include: Based on the first reference trajectory of the target servo actuator, determine the first frame angle and the first frame angular velocity in the first reference trajectory; Polynomial interpolation is performed between the current angle of the target servo actuator and the angle of the first frame, and between the current angular velocity of the target servo actuator and the angular velocity of the first frame, to generate a transition trajectory of a preset duration; The transition trajectory is stitched together before the first frame of the first reference trajectory to obtain the updated first reference trajectory; Correspondingly, the instruction to move according to the first reference trajectory is sent to each servo actuator of the first leg structure, which may specifically include: Instructions for instructing movement according to the updated first reference trajectory are sent to the target servo actuator.
[0110] In the embodiments described in this specification, the first frame angle and the first frame angular velocity are the target angle and target angular velocity of the reference trajectory at the first moment. There may be a certain difference between the current angle of the robot's target servo actuator and the first frame angle, and between the current angular velocity of the target servo actuator and the first frame angular velocity. For example, when the robot receives a gait command, the current angle of servo actuator A is 5°, while the first frame angle of the reference trajectory corresponding to servo actuator A is -10°, resulting in a 15° difference. Jumping directly from the current angle (5°) to the first frame angle (-10°) may trigger a mechanical shock, leading to robot instability.
[0111] In the embodiments of this specification, to prevent mechanical shock caused by sudden changes in the angle or angular velocity of the servo actuator, polynomial interpolation can be performed between the current angle and the first frame angle of the target servo actuator, and between the current angular velocity of the target servo actuator and the first frame angular velocity, to generate a transition trajectory of a preset duration. The polynomial interpolation ensures that the beginning of the transition trajectory is continuous with the current state of the target servo actuator (both the current angle and current angular velocity are continuous), and the end of the transition trajectory is continuous with the first frame state of the reference trajectory (both the first frame angle and first frame angular velocity are continuous). The preset duration can be set and adjusted as needed; for example, it can be set to 0.2 seconds or 0.5 seconds, without specific limitation.
[0112] In practical applications, a polynomial interpolation can be performed between the current angle of the target servo actuator and the first frame angle of its reference trajectory to generate an angle transition trajectory of preset duration. A second polynomial interpolation can be performed between the current angular velocity of the target servo actuator and the first frame angular velocity of its reference trajectory to generate an angular velocity transition trajectory of preset duration. The angle transition trajectory and the angular velocity transition trajectory of preset duration can form the corresponding transition trajectory for the target servo actuator. For example, if the current angle of servo actuator A is 5° and its current angular velocity is 10° / s, and the first frame angle of its reference trajectory is -10° and its first frame angular velocity is 15° / s, with a preset duration of 0.3 seconds, the first polynomial interpolation can generate a curve that smoothly transitions from 5° to -10° in 0.3 seconds, serving as the angle transition trajectory; the second polynomial interpolation can generate a curve that smoothly transitions from 10° / s to 15° / s in 0.3 seconds, serving as the angular velocity transition trajectory.
[0113] In the embodiments described in this specification, a smooth transition from the current state of the servo actuator to the reference trajectory is achieved by inserting a transition trajectory generated by polynomial interpolation before the reference trajectory. Since polynomial interpolation ensures the simultaneous continuity of angle and angular velocity, it can avoid robot shaking or instability caused by sudden changes in motion, which is beneficial to improving the stability of robot movement.
[0114] Optionally, the method may further include: After the robot gait control method is executed once, it is determined whether the distance between the robot's position and the second position is less than or equal to a preset distance threshold, and whether the robot's yaw angle is less than or equal to a preset yaw angle threshold, and a second determination result is obtained. If the second judgment result is yes, then control the robot to stop moving; If the second judgment result is negative, the robot gait control method is re-executed.
[0115] In practical applications, after the robot gait control method is executed once (i.e., after the robot completes one gait cycle according to the reference trajectory), it can be determined whether the gait termination condition is met. The gait termination condition may include: the distance between the robot's current position and the second position is less than or equal to a preset distance threshold, and the robot's relative yaw angle is less than or equal to a preset yaw angle threshold. The preset distance threshold and preset yaw angle threshold can be set and adjusted according to positioning accuracy and task requirements; for example, the preset distance threshold can be set to 0.1 unit length, and the preset yaw angle threshold can be set to 1°.
[0116] In practical applications, since the yaw angle can be used to characterize the angle between the robot's current orientation and the reference orientation, the reference orientation can be set according to actual needs. For example, in a shopping mall payment scenario, the direction in which the desktop robot can face the customer can be determined as the reference orientation. Thus, when the desktop robot moves to a certain target position, it is necessary to ensure that the robot's yaw angle is less than or equal to the preset yaw angle threshold, so that the desktop robot can also face the customer after moving to the target position.
[0117] In the embodiments of this specification, when the gait termination condition is met, it can be determined that the robot has reached the target position (second position) and the orientation meets the requirements, thereby allowing the robot to stop moving. When the gait termination condition is not met, the robot gait control method can be re-executed until the gait termination condition is met.
[0118] In the embodiments of this specification, closed-loop iteration of gait control can be achieved by determining whether the gait termination condition is met after each execution of the gait control method. Since the robot's current position and yaw angle can be reacquired in each iteration, the gait parameters can be updated according to the robot's actual motion state, gradually reducing position and orientation deviations. Because the stride factor is positively correlated with the distance between the first position (e.g., the robot's current position) and the second position (target position), the stride factor can automatically decrease as the robot gradually approaches the target position, and the robot's stride will also gradually decrease, thereby achieving a natural deceleration approach effect and avoiding overshooting the target position.
[0119] Figure 11 This is an overall flowchart of a robot gait control method provided in one embodiment of this specification. Figure 11 As shown, the robot gait control method can specifically include the following steps: Step 1102: Obtain the robot's first position, first yaw angle, and desired second position at the first moment.
[0120] Step 1104: Determine the distance between the first position and the second position, and determine the stride factor based on the distance.
[0121] Step 1106: Determine the azimuth angle between the first position and the second position based on the first position and the second position.
[0122] Step 1108: Determine the relative yaw angle based on the azimuth angle between the first position and the second position and the first yaw angle.
[0123] Step 1110: Determine if the cosine of the relative yaw angle is positive; if yes, proceed to step 1112; if no, proceed to step 1114.
[0124] Step 1112: Determine the direction of travel as forward.
[0125] Step 1114: Determine the direction of travel as backward.
[0126] Step 1116: For the target servo actuator, determine the amplitude of the reference trajectory corresponding to the target servo actuator based on the stride factor and relative yaw angle.
[0127] Step 1118: Based on the direction of travel, determine the phase offset of the reference trajectory corresponding to the target servo actuator.
[0128] Step 1120: Determine the preset static bias corresponding to the target servo actuator.
[0129] Step 1122: Generate a reference trajectory for the target servo actuator based on the amplitude, the phase offset, and the preset static offset.
[0130] Step 1124: Based on the reference trajectory of the target servo actuator, determine the first frame angle and the first frame angular velocity in the reference trajectory.
[0131] Step 1126: Perform polynomial interpolation between the current angle of the target servo actuator and the angle of the first frame, and between the current angular velocity of the target servo actuator and the angular velocity of the first frame, to generate a transition trajectory of a preset duration.
[0132] Step 1128: The transition trajectory is stitched before the first frame of the reference trajectory of the target servo actuator to obtain the updated reference trajectory.
[0133] Step 1130: Send instructions to the target servo actuator to instruct it to move according to the updated reference trajectory.
[0134] Step 1132: Determine if the gait termination condition is met. If yes, end; otherwise, jump to step 1102 and re-execute the robot gait control method. The gait termination condition is that the distance between the robot's current position and the second position is less than or equal to a preset distance threshold, and the robot's yaw angle is less than or equal to a preset yaw angle threshold.
[0135] Figure 12 This is a schematic diagram of a robot gait control device according to one embodiment of this specification. This robot gait control device can be applied to a robot, which may include a first leg structure and a second leg structure, wherein the first leg structure and the second leg structure are the aforementioned robot leg modules. Figure 12 As shown, the robot gait control device may include: The acquisition module 1202 is used to acquire the robot's first position, first yaw angle, and desired second position at a first moment. The determining module 1204 is used to determine the stride factor, relative yaw angle, and direction of travel based on the first position, the second position, and the first yaw angle; the stride factor is used to adjust the stride size of the robot. The generation module 1206 is used to generate a first reference trajectory for each servo actuator of the first leg structure and a second reference trajectory for each servo actuator of the second leg structure based on the stride factor, the relative yaw angle and the direction of travel; both the first reference trajectory and the second reference trajectory include a reference angular position and a reference angular velocity; The sending module 1208 is used to send instructions for moving according to the first reference trajectory to each servo actuator of the first leg structure, and to send instructions for moving according to the second reference trajectory to each servo actuator of the second leg structure.
[0136] based on Figure 12 The embodiments of this specification also provide some specific implementations of the device, which will be described below.
[0137] Optionally, the determining module 1204 may specifically include: A first determining submodule is used to determine the distance between the first position and the second position; The second determining submodule is used to determine a stride factor based on the distance; the stride factor is positively correlated with the distance; the stride factor is used to adjust the amplitude in the sine wave model. The third determining submodule is used to determine the azimuth angle between the first position and the second position based on the first position and the second position; The fourth determining submodule is used to determine the relative yaw angle based on the azimuth angle and the first yaw angle; The fifth determining submodule is used to determine the direction of travel based on the relative yaw angle.
[0138] Optionally, the fifth determining submodule may specifically include: The judgment unit is used to determine whether the cosine value of the relative yaw angle is positive, and to obtain a first judgment result.
[0139] The direction of travel determination unit is used to determine the direction of travel as forward if the first judgment result indicates that the cosine value of the relative yaw angle is positive.
[0140] The direction of travel determination unit is further configured to determine the direction of travel as backward if the first determination result indicates that the cosine value of the relative yaw angle is not positive.
[0141] Optionally, the generation module 1206 may specifically include: The amplitude determination submodule is used to determine the amplitude of the first reference trajectory corresponding to the target servo actuator in each servo actuator of the first leg structure, based on the stride factor and the relative yaw angle. The phase offset determination submodule is used to determine the phase offset of the first reference trajectory based on the travel direction; The static bias determination submodule is used to determine the preset static bias corresponding to the target servo actuator; The reference trajectory generation submodule is used to generate a first reference trajectory for the target servo actuator based on the amplitude of the first reference trajectory, the phase offset of the first reference trajectory, and the preset static offset.
[0142] Optionally, the device may further include: The first frame angle and first frame angular velocity determination module is used to determine the first frame angle and first frame angular velocity in the first reference trajectory based on the first reference trajectory of the target servo actuator; The transition trajectory generation module is used to perform polynomial interpolation between the current angle of the target servo actuator and the angle of the first frame, and between the current angular velocity of the target servo actuator and the angular velocity of the first frame, to generate a transition trajectory of a preset duration. The trajectory update module is used to stitch the transition trajectory before the first frame of the first reference trajectory to obtain the updated first reference trajectory; Correspondingly, the sending module 1208 may specifically include: The instruction sending submodule is used to send instructions for moving according to the updated first reference trajectory to the target servo actuator.
[0143] Optionally, the device may further include: The gait termination condition judgment module is used to determine whether, after the robot gait control method is executed once, the distance between the robot's position and the second position is less than or equal to a preset distance threshold, and the robot's yaw angle is less than or equal to a preset yaw angle threshold, and to obtain a second judgment result. A motion control module is used to control the robot to stop moving if the second judgment result is yes; The re-execution module is used to re-execute the robot gait control method if the second judgment result is negative.
[0144] It is understood that the modules mentioned above refer to computer programs or program segments used to perform one or more specific functions. Furthermore, the distinction between these modules does not imply that the actual program code must also be separate.
[0145] The above is a schematic scheme of a robot gait control device according to this embodiment. It should be noted that the technical solution of this robot gait control device and the technical solution of the robot gait control method described above belong to the same concept. For details not described in detail in the technical solution of the robot gait control device, please refer to the description of the technical solution of the robot gait control method described above.
[0146] Based on the same idea, this specification also provides devices corresponding to the above-described robot gait control method in its embodiments.
[0147] Figure 13 This is a structural block diagram of a computing device according to one embodiment of this specification. This computing device can be applied to a robot, which may include a first leg structure and a second leg structure, wherein the first leg structure and the second leg structure are the robot leg structures described above. Figure 13 As shown, the computing device 1300 may include: Memory 1310 and processor 1320; The memory 1310 is used to store computer programs / instructions, and the processor 1320 is used to execute the computer programs / instructions. When the computer programs / instructions are executed by the processor 1320, they implement the steps of the above-described robot gait control method.
[0148] Specifically, the components of the computing device 1300 include, but are not limited to, a memory 1310 and a processor 1320. The processor 1320 is connected to the memory 1310 via a bus 1330, and the database 1350 is used to store data.
[0149] The computing device 1300 also includes an access device 1340, which enables the computing device 1300 to communicate via one or more networks 1360. Examples of these networks include Public Switched Telephone Network (PSTN), Local Area Network (LAN), Wide Area Network (WAN), Personal Area Network (PAN), or combinations of communication networks such as the Internet. The access device 1340 may include one or more of any type of wired or wireless network interface (e.g., a network interface card (NIC)), such as an IEEE 802.11 Wireless Local Area Network (WLAN) wireless interface, a Wi-MAX (Worldwide Interoperability for Microwave Access) interface, an Ethernet interface, a Universal Serial Bus (USB) interface, a cellular network interface, a Bluetooth interface, a Near Field Communication (NFC) interface, and so on.
[0150] In one embodiment of this specification, the above-described components of the computing device 1300 and Figure 13Other components, not shown, can also be connected to each other, for example, via a bus. It should be understood that... Figure 13 The block diagram of the computing device shown is for illustrative purposes only and is not intended to limit the scope of this application. Those skilled in the art can add or replace other components as needed.
[0151] The computing device 1300 can be any type of stationary or mobile computing device, including mobile computers or mobile computing devices (e.g., tablet computers, personal digital assistants, laptop computers, notebook computers, netbooks, etc.), mobile phones (e.g., smartphones), wearable computing devices (e.g., smartwatches, smart glasses, etc.) or other types of mobile devices, or stationary computing devices such as desktop computers or personal computers (PCs). The computing device 1300 can also be a mobile or stationary server.
[0152] The processor 1320 executes the computer instructions to implement the steps of the above-mentioned robot gait control method.
[0153] The above is a schematic representation of a computing device according to this embodiment. It should be noted that the technical solution of this computing device and the technical solution of the robot gait control method described above belong to the same concept. Details not described in detail in the technical solution of the computing device can be found in the description of the technical solution of the robot gait control method described above.
[0154] An embodiment of this specification also provides a computer-readable storage medium storing computer-executable instructions that, when executed by a processor, implement the steps of the robot gait control method described above.
[0155] The above is an illustrative scheme of a computer-readable storage medium according to this embodiment. It should be noted that the technical solution of this storage medium belongs to the same concept as the technical solution of the robot gait control method described above. For details not described in detail in the technical solution of the storage medium, please refer to the description of the technical solution of the robot gait control method described above.
[0156] The various embodiments in this specification are described in a progressive manner. Similar or identical parts between embodiments can be referred to mutually. Each embodiment focuses on its differences from other embodiments. In particular, for... Figure 13 As the device shown is basically similar to the corresponding method embodiment, the description is relatively simple, and relevant parts can be found in the description of the method embodiment.
[0157] The foregoing has described specific embodiments of this specification. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims may be performed in a different order than that shown in the embodiments and may still achieve the desired result. Furthermore, the processes depicted in the drawings do not necessarily require the specific or sequential order shown to achieve the desired result. In some embodiments, multitasking and parallel processing are possible or may be advantageous. For ease of description, spatial relative terms such as "above," "on top of," "on the upper surface of," "above," etc., are used herein to describe the spatial positional relationship of a device or feature as shown in the figures to other devices or features. It should be understood that spatial relative terms are intended to encompass different orientations in use or operation beyond the orientation of the device as described in the figures. For example, if the device in the figures were inverted, a device described as "above" or "on top of" other devices or structures would subsequently be positioned as "below" or "under" other devices or structures. Thus, the exemplary term "above" can include both "above" and "below." The device may also be positioned in other different ways (rotated 90 degrees or in other orientations), and the spatial relative descriptions used herein will be interpreted accordingly.
[0158] It should be noted that the terminology used herein is for the purpose of describing particular embodiments only and is not intended to limit the exemplary embodiments according to this application. As used herein, the singular form is intended to include the plural form as well, unless the context clearly indicates otherwise. Furthermore, it should be understood that when the terms "comprising" and / or "including" are used in this specification, they indicate the presence of features, steps, operations, devices, components, and / or combinations thereof.
[0159] It should be noted that the terms "first," "second," etc., in the specification, claims, and drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence.
[0160] In the 1990s, improvements to a technology could be clearly distinguished as either hardware improvements (e.g., improvements to the circuit structure of diodes, transistors, switches, etc.) or software improvements (improvements to the methodology). However, with technological advancements, many methodological improvements today can be considered direct improvements to the hardware circuit structure. Designers almost always obtain the corresponding hardware circuit structure by programming the improved methodology into the hardware circuit. Therefore, it cannot be said that a methodological improvement cannot be implemented using hardware physical modules. For example, a Programmable Logic Device (PLD) (such as a Field Programmable Gate Array (FPGA)) is such an integrated circuit whose logic function is determined by the user programming the device. Designers can program and "integrate" a digital system onto a PLD themselves, without needing chip manufacturers to design and manufacture dedicated integrated circuit chips. Furthermore, nowadays, instead of manually manufacturing integrated circuit chips, this programming is mostly implemented using "logic compiler" software. Similar to the software compiler used in program development, the original code before compilation must also be written in a specific programming language, called a Hardware Description Language (HDL). There are many HDLs, such as ABEL (Advanced Boolean Expression Language), AHDL (Altera Hardware Description Language), Confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, and RHDL (Ruby Hardware Description Language). Currently, the most commonly used are VHDL (Very-High-Speed Integrated Circuit Hardware Description Language) and Verilog. Those skilled in the art should also understand that by simply performing some logic programming on the method flow using one of these hardware description languages and programming it into an integrated circuit, the hardware circuit implementing the logical method flow can be easily obtained.
[0161] The controller can be implemented in any suitable manner. For example, it can take the form of a microprocessor or processor and a computer-readable medium storing computer-readable program code (e.g., software or firmware) executable by the (micro)processor, logic gates, switches, application-specific integrated circuits (ASICs), programmable logic controllers, and embedded microcontrollers. Examples of controllers include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20, and Silicon Labs C8051F320. A memory controller can also be implemented as part of the control logic of the memory. Those skilled in the art will also recognize that, in addition to implementing the controller in purely computer-readable program code form, the same functionality can be achieved by logically programming the method steps to make the controller take the form of logic gates, switches, application-specific integrated circuits, programmable logic controllers, and embedded microcontrollers. Therefore, such a controller can be considered a hardware component, and the means included therein for implementing various functions can also be considered as structures within the hardware component. Alternatively, the means for implementing various functions can be considered as both software modules implementing the method and structures within the hardware component.
[0162] The systems, devices, modules, or units described in the above embodiments can be implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer. Specifically, a computer can be, for example, a personal computer, laptop computer, cellular phone, camera phone, smartphone, personal digital assistant, media player, navigation device, email device, game console, tablet computer, wearable device, or any combination of these devices.
[0163] For ease of description, the above devices are described in terms of function, divided into various units. Of course, in implementing this specification, the functions of each unit can be implemented in one or more software and / or hardware components.
[0164] Those skilled in the art will understand that embodiments of the present invention can be provided as methods, systems, or computer program products. Therefore, the present invention can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention can take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0165] This invention is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart illustrations and / or block diagrams. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0166] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0167] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0168] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.
[0169] Memory may include non-persistent storage in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM. Memory is an example of computer-readable media.
[0170] Computer-readable media include both permanent and non-permanent, removable and non-removable media that can store information by any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media does not include transient computer-readable media, such as modulated data signals and carrier waves.
[0171] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.
[0172] This specification can be described in the general context of computer-executable instructions that are executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, etc., that perform a specific task or implement a specific abstract data type. This specification can also be practiced in distributed computing environments, where tasks are performed by remote processing devices connected via a communication network. In distributed computing environments, program modules can reside in local and remote computer storage media, including storage devices.
[0173] The above description is merely an embodiment of this specification and is not intended to limit this specification. Various modifications and variations can be made to this specification by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this specification should be included within the scope of the claims of this specification.
Claims
1. A robot leg module, comprising: Body support, leg links, and foot support; A leg shell is fitted around the first connecting part of the leg link near the body support part, and a first wiring channel is formed between the leg link and the leg shell; The second connecting part of the leg link near the foot support is connected to the ankle shell to form a second wiring channel; The body support is equipped with a first servo actuator. The output end of the first servo actuator is connected to the first connecting part for driving the leg link to rotate around the first axis. The foot support is internally provided with a second servo actuator, the output end of which is connected to the second connecting part for driving the foot support to rotate around a second axis; the second axis is perpendicular to the first axis. The body support is provided with a first cable pass-through opening, and the foot support is provided with a second cable pass-through opening. The first cable pass-through opening is connected to the second cable pass-through opening via the first cable routing channel and the second cable routing channel.
2. The robot leg module according to claim 1, wherein the first connecting part is a columnar structure; the first connecting part is interference-fitted with the first bearing in the body support part; one side of the second connecting part is provided with a hole that cooperates with the protruding structure of the foot support part, and the other side is provided with a spline groove that cooperates with the output end of the second servo actuator.
3. The robot leg module according to claim 1, wherein the leg shell is an inverted frustum-shaped hollow cylindrical structure; the bottom of the leg shell is provided with a fixing groove; and the leg connecting rod is provided with a protrusion that cooperates with the fixing groove.
4. The robot leg module according to claim 1, wherein the first wire passage is a fan-shaped groove disposed on the body support; the outer diameter of the fan-shaped groove is smaller than the inner diameter of the leg shell.
5. The robot leg module according to claim 1, wherein the foot support includes a foot shell; the second wire passage is an opening groove disposed on the foot shell; the opening groove is located on the side of the foot shell away from the second servo actuator.
6. The robot leg module according to claim 1, wherein the ankle shell and the leg shell are respectively provided with wiring ports at the docking point; the wiring ports are used to connect the first wiring channel and the second wiring channel.
7. The robot leg module according to claim 1, wherein the foot support portion is provided with a limiting rib and a servo actuator pressure plate; the limiting rib is used to limit the mounting arm of the second servo actuator; the servo actuator pressure plate is used to fix the second servo actuator to the foot support portion by fasteners.
8. The robot leg module according to claim 1, wherein the foot support further comprises a foot circuit board and a foot base plate; the foot base plate is disposed at the bottom of the foot support; and the foot circuit board is disposed above the foot base plate.
9. The robot leg module according to claim 8, wherein a laser distance sensor is provided on the foot circuit board; the laser distance sensor is arranged near the edge of the foot base plate and is used to detect the distance between the foot base plate and the support surface to determine whether the robot is at the edge of the support surface.
10. The robot leg module according to claim 8, wherein the foot support further includes an anti-slip pad and a charging coil; the anti-slip pad is disposed at the bottom of the foot base plate; the charging coil is disposed on the foot circuit board for wirelessly charging the robot in conjunction with an external charging base.
11. The robot leg module according to claim 8, wherein a stepped hole is provided on the foot base plate corresponding to the position of the laser distance sensor; a light shield and a laser distance sensor cover plate are provided in the stepped hole; the light shield is provided with through holes at the emission and reception positions of the laser distance sensor to prevent crosstalk between the emitted light and the received light of the laser distance sensor; the laser distance sensor cover plate is used to shield the laser distance sensor from the outside and allow the emitted light and the received light to pass through.
12. A robot gait control method, applied to a robot, the robot comprising a first leg structure and a second leg structure, wherein the first leg structure and the second leg structure are robot leg modules as described in any one of claims 1 to 11, the robot gait control method comprising: Obtain the robot's first position, first yaw angle, and desired second position at a first moment; Based on the first position, the second position, and the first yaw angle, a stride factor, a relative yaw angle, and a direction of travel are determined; the stride factor is used to adjust the stride size of the robot. Based on the stride factor, the relative yaw angle, and the direction of travel, a first reference trajectory for each servo actuator of the first leg structure and a second reference trajectory for each servo actuator of the second leg structure are generated; both the first and second reference trajectories include a reference angular position and a reference angular velocity. Instructions for instructing movement according to the first reference trajectory are sent to each servo actuator of the first leg structure, and instructions for instructing movement according to the second reference trajectory are sent to each servo actuator of the second leg structure.
13. The robot gait control method according to claim 12, wherein both the first reference trajectory and the second reference trajectory are generated using a sine wave model; the step of determining the stride factor, relative yaw angle, and direction of travel based on the first position, the second position, and the first yaw angle includes: Determine the distance between the first position and the second position; Determine the stride factor based on the distance; The stride factor is positively correlated with the distance; The stride factor is used to adjust the amplitude in the sine wave model; Based on the first position and the second position, determine the azimuth angle between the first position and the second position; The relative yaw angle is determined based on the azimuth angle and the first yaw angle; The direction of travel is determined based on the relative yaw angle.
14. The robot gait control method according to claim 13, wherein determining the direction of travel based on the relative yaw angle comprises: Determine whether the cosine value of the relative yaw angle is positive to obtain the first determination result; If the first determination result indicates that the cosine value of the relative yaw angle is positive, then the direction of travel is determined to be forward. If the first determination result indicates that the cosine value of the relative yaw angle is not positive, then the direction of travel is determined to be backward.
15. The robot gait control method according to claim 12, wherein generating a first reference trajectory for each servo actuator of the first leg structure based on the stride factor, the relative yaw angle, and the direction of travel includes: For each servo actuator in the first leg structure, the amplitude of the first reference trajectory corresponding to the target servo actuator is determined based on the stride factor and the relative yaw angle. Based on the direction of travel, determine the phase offset of the first reference trajectory; Determine the preset static bias corresponding to the target servo actuator; The first reference trajectory of the target servo actuator is generated based on the amplitude of the first reference trajectory, the phase offset of the first reference trajectory, and the preset static offset.
16. The robot gait control method according to claim 15, after generating the first reference trajectory of the target servo actuator based on the amplitude of the first reference trajectory, the phase offset of the first reference trajectory, and the preset static offset, further includes: Based on the first reference trajectory of the target servo actuator, determine the first frame angle and the first frame angular velocity in the first reference trajectory; Polynomial interpolation is performed between the current angle of the target servo actuator and the angle of the first frame, and between the current angular velocity of the target servo actuator and the angular velocity of the first frame, to generate a transition trajectory of a preset duration; The transition trajectory is stitched together before the first frame of the first reference trajectory to obtain the updated first reference trajectory; The step of sending instructions to the respective servo actuators of the first leg structure to instruct movement according to the first reference trajectory includes: Instructions for instructing movement according to the updated first reference trajectory are sent to the target servo actuator.
17. The robot gait control method according to claim 12, further comprising: After the robot gait control method is executed once, it is determined whether the distance between the robot's position and the second position is less than or equal to a preset distance threshold, and whether the robot's yaw angle is less than or equal to a preset yaw angle threshold, and a second determination result is obtained. If the second judgment result is yes, then control the robot to stop moving; If the second judgment result is negative, the robot gait control method is re-executed.
18. A robot gait control device, applied to a robot, the robot comprising a first leg structure and a second leg structure, wherein the first leg structure and the second leg structure are robot leg structures as described in any one of claims 1 to 11, the robot gait control device comprising: The acquisition module is used to acquire the robot's first position, first yaw angle, and desired second position at a first moment; The determining module is used to determine the stride factor, relative yaw angle, and direction of travel based on the first position, the second position, and the first yaw angle; the stride factor is used to adjust the stride size of the robot. The generation module is used to generate a first reference trajectory for each servo actuator of the first leg structure and a second reference trajectory for each servo actuator of the second leg structure based on the stride factor, the relative yaw angle, and the direction of travel; both the first reference trajectory and the second reference trajectory include a reference angular position and a reference angular velocity; The transmitting module is used to transmit instructions for moving according to the first reference trajectory to each servo actuator of the first leg structure, and to transmit instructions for moving according to the second reference trajectory to each servo actuator of the second leg structure.
19. A computing device applied to a robot, the robot comprising a first leg structure and a second leg structure, the first leg structure and the second leg structure being the robot leg structure according to any one of claims 1 to 11, the computing device comprising: At least one processor; as well as, A memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor to enable the at least one processor to implement the robot gait control method according to any one of claims 12 to 17.
20. A computer-readable storage medium storing computer-executable instructions that, when executed by a processor, implement the robot gait control method according to any one of claims 12 to 17.