Three-motor omnidirectional double-wheel self-balancing robot and control method thereof
Patent Information
- Application Number
- CN202611213547.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-08-11
- Publication Date
- 2026-10-27
AI Technical Summary
1.自由度受限,运动模式单一:传统双轮机器人通常仅在平面内进行简单平衡控制和运动,难以应对复杂动态环境,其中,欠驱动系统自由度不足,无法独立控制所有运动,在复杂任务中易出现不稳定或失控;过驱动系统虽增强运动能力,但多个驱动装置协调困难,控制复杂度显著增加
1.本申请采用三电机独立驱动架构,前轮控制前进与转向,后轮全向轮实现平衡调节,显著提升机动灵活性,突破传统双轮机器人自由度受限缺陷,实现平面内任意点旋转与全向运动,机器人兼具直行、原地转向、横向滑移等能力,高低速工况均可维持自平衡,环境适配性大幅增强,适应狭窄空间及复杂路径规划需求。
Smart Images

Figure CN122976758A_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of robotics technology, specifically relating to a three-motor omnidirectional dual-wheel self-balancing robot and its control method. Background Technology
[0002] With the rapid development of robotics technology, mobile robots are increasingly widely used in intelligent transportation, urban delivery, logistics warehousing, and service industries. Wheeled robots, due to their simple structure, low cost, and high mobility, have become a research focus. Two-wheeled robots, based on the inverted pendulum principle, achieve balance control, forward movement, and steering by adjusting wheel speed and angle. The key to their design lies in balancing motion stability and accuracy in dynamic environments. Existing two-wheeled robot technology mainly faces the following problems: 1. Limited degrees of freedom and limited motion modes: Traditional two-wheeled robots typically only perform simple balance control and motion in a plane, making it difficult to cope with complex dynamic environments. In particular, underactuated systems have insufficient degrees of freedom and cannot independently control all motions, making them prone to instability or loss of control in complex tasks. While overactuated systems enhance motion capabilities, the coordination of multiple drive devices is difficult, significantly increasing control complexity.
[0003] 2. The contradiction between dynamic modeling and real-time control is prominent: Newton-Euler method, as a classic dynamic modeling method, can accurately describe the dynamics of the system, but its high computational complexity and numerous parameters lead to delays in real-time control. While surrogate models based on machine learning can handle nonlinear problems, they are highly dependent on the quality and quantity of training data, and their "black box" characteristics affect interpretability, making it difficult to meet the requirements of control reliability.
[0004] 3. Insufficient adaptability of control algorithms: Model-based control methods perform well in small-scale motion, but require nonlinear methods such as sliding mode control when the attitude changes over a large range. The algorithm design is complex and the computational cost is high. On the other hand, reinforcement learning methods without model-based approaches are flexible, but they are slow to train and have poor real-time performance. Their application in high-dimensional spaces still faces significant challenges. Summary of the Invention
[0005] To address the problems existing in the prior art, a three-motor omnidirectional two-wheel self-balancing robot and its control method are provided. This device adopts a three-motor independent drive architecture, with the front wheels controlling forward movement and steering, and the rear omnidirectional wheels achieving balance adjustment. A linear control method based on a simplified dynamic model is employed to improve modeling accuracy and real-time performance, achieving coordinated control of low-speed rear wheel balancing and high-speed front wheel steering, significantly enhancing mobility, stability, and adaptability to complex environments.
[0006] This invention provides a three-motor omnidirectional dual-wheel self-balancing robot, comprising: Frame; The front leg support is rotatably mounted on the front end of the frame and is driven to rotate by a steering motor to control the robot's steering. The front walking wheels are rotatably connected to the front leg brackets and driven to rotate by the front wheel motor. Their rotation axis is perpendicular to the forward direction of the frame to drive the robot forward. Rear leg support, which is mounted at the rear end of the vehicle frame; The rear omnidirectional wheel is rotatably connected to the rear leg support and is driven to rotate by the rear wheel motor. Its rotation axis is parallel to the forward direction of the frame to facilitate the robot's steering. A force sensor, installed in the middle of the frame, provides feedback on balance data to dynamically adjust the robot's control parameters.
[0007] Furthermore, it also includes: The auxiliary wheel is located on the belly of the frame and is driven by a linkage mechanism to be retracted or extended, with its axis of rotation parallel to the forward direction of the frame.
[0008] Furthermore, the linkage mechanism includes a first link and a third link, both of which are rotatably connected to the vehicle frame; The third link is hinged to the second link at its distal end, the first link is hinged to the middle of the second link at its distal end, and the auxiliary wheel is rotatably connected to the distal end of the second link. A retractable motor, mounted on the frame, is used to drive the third link to rotate, thereby enabling the auxiliary wheels to be retracted or deployed.
[0009] Furthermore, a tray is provided above the force sensor, and a heavy object is placed in the tray. The force sensor is used to detect the pressure distribution of the heavy object in real time to provide feedback on balance data.
[0010] A control method for a three-motor omnidirectional two-wheeled self-balancing robot, employing the aforementioned three-motor omnidirectional two-wheeled self-balancing robot, includes: performing kinematic modeling based on the robot's structural characteristics to obtain the robot's forward kinematic equations, expressed as: (2.19); In the formula, and For robots in The velocity components in the inertial coordinate system represent the robot's velocity along the frame and its velocity perpendicular to the frame, respectively. r For the wheel radius, L For the frame length, The yaw rate of the robot about its vertical axis is given by the workspace, which contains the three degrees of freedom corresponding to the robot's planar motion. , , The control space is the front wheel steering angle. and front and rear wheel speeds and .
[0011] Furthermore, based on the kinematic equations, dynamic modeling is performed, including: Angular momentum calculation: Based on the angular velocity and linear velocity of each part of the robot, calculate the angular momentum of each part relative to its own center of mass. The angular momentum includes: the rotational angular momentum around its own center of mass and the orbital angular momentum of the center of mass around the system reference point. The total angular momentum is obtained by superimposing the angular momentum vectors of each part.
[0012] External torque calculation: The external forces acting on the system include: the gravitational torque formed by the weight of each part, with the point of application being the center of mass of each part, and the frictional torque at the contact points between the front and rear wheels and the ground; the line connecting the contact points of the front and rear wheels is selected as the torque reference axis. Since the torque component of the frictional force along the line connecting the contact points is zero, the gravitational torque of each part is equal to the product of the mass of that part, the gravitational acceleration, and the perpendicular distance from the center of mass to the torque axis. The gravitational torques of each part are superimposed to obtain the total external torque; The dynamic equations are established as follows: According to the angular momentum theorem, the rate of change of the total angular momentum of the system with respect to time is equal to the total external torque acting on the robot, expressed by the formula: (2.27); In the formula, The rate of change of total angular momentum. This represents the total external torque.
[0013] Furthermore, instantaneous center of gravity spatial kinematic modeling is performed, including: Coordinate system establishment: A heading coordinate system is established with the robot's current heading as the reference. The projection positions of the front traveling wheel and the rear omnidirectional wheel on the ground correspond to two known points in the instantaneous center space, respectively. The velocity directions of the front and rear wheel centers are perpendicular to the lines connecting them to the instantaneous centers. Instantaneous center position determination: Based on the geometric constraints of the front and rear wheel velocity directions, the velocity direction of the front wheel is determined by the steering angle, and the velocity direction of the rear omnidirectional wheel is determined by its lateral rolling characteristics. The intersection of the perpendicular lines of the two velocity directions is the instantaneous center position. Kinematic constraints: The front wheels are assumed to have no sideslip, and the rear omnidirectional wheels have no velocity constraints along the frame direction but no sideslip perpendicular to the frame direction; Control space transformation: Using the instantaneous center coordinates and the linear velocity around the instantaneous center as workspace variables, the three control quantities—the steering angle of the front traveling wheel, the angular velocity of the front traveling wheel, and the angular velocity of the rear omnidirectional wheel—are solved inversely through geometric relationships.
[0014] Furthermore, the steering angle of the front traveling wheels, the angular velocity of the front traveling wheels, and the angular velocity of the rear omnidirectional wheels are expressed by the following formulas: (3.10); (3.11); (3.12); In the formula, The steering angle of the front wheels. The angular velocity of the forward-moving wheels is the rotational speed. The angular velocity of the rear omnidirectional wheel's rotation. x and y These are the x-coordinate and y-coordinate of the instantaneous center of gravity, respectively. v Let be the linear velocity around the instantaneous center.
[0015] Furthermore, a layered control architecture with inner and outer loops is adopted: the inner loop uses a PD controller, which adjusts the control based on the target roll angle. and from a practical perspective The difference is used to adjust the acceleration of the rear wheel motor. The outer ring uses a PI controller, based on the target speed of the rear wheel motor. and current speed The difference is used to adjust the target roll angle, thereby correcting the target roll angle.
[0016] Furthermore, specific methods for using a PID controller include: Calculate the theoretical roll angle: Calculate the radius of rotation at the current moment, and then, based on the principle that the component of gravity in the horizontal plane equals the centripetal force of rotation, calculate the theoretical roll angle. The formula is expressed as: (3.14); In the formula, It is the rotation angle of the steering motor (9) at the current moment. Let be the radius of rotation at the current moment. Let be the linear velocity around the instantaneous center at the current moment; Outer loop PI control: The outer loop uses the difference between the target speed and the actual speed of the rear wheel motor as the input error. The outer loop output is the roll angle correction, used to adjust the robot's target roll posture. When the actual speed is lower than the target value, the outer loop output increases the target roll angle; when the actual speed is higher than the target value, the outer loop output decreases the target roll angle. The formula is expressed as: (3.16); In the formula, This is the roll angle correction amount. The speed proportional gain of the outer loop is used to quickly respond to speed errors. The velocity integral gain of the outer loop is used to gradually eliminate steady-state deviations. For speed error, This is the integral accumulation of the speed error; Pan angle synthesis: The target pan angle includes: the theoretical pan angle calculated based on instantaneous center of gravity kinematics, reflecting the inherent pan degree required to maintain the current motion; and the correction amount from the outer loop PI output, used to compensate for velocity tracking errors. The sum of the two is the final tracking target of the inner loop PD, expressed by the formula: (3.17); In the formula, The overall target roll angle, The theoretical roll angle, This is the roll angle correction amount; Inner-loop PD control: The inner loop uses the difference between the target roll angle and the actual roll angle as the input error, and simultaneously introduces angular velocity error for differential lead compensation. The inner loop output is the target angular acceleration of the rear wheel motor, which is integrated to obtain the motor speed command, expressed by the formula: (3.19); In the formula, The target angular acceleration for the rear wheel motor. This is the proportional gain of the inner ring's roll angle, used to respond to roll angle errors. The differential gain of the inner ring's roll angle is used to suppress changes in angular velocity. For angular error, The theoretical rate of change of the roll angle, This represents the rate of change of the actual roll angle; Force sensor feedback and status update: The controller acquires the robot's current tilt angle and angular velocity in real time through the inertial measurement unit as inner loop feedback, and acquires the actual speed of the rear wheels through the motor encoder as outer loop feedback. Within each control cycle, the controller recalculates the error and updates the control output based on the latest feedback data, forming a continuous closed-loop adjustment, expressed by the formula: (3.20); In the formula, This is the speed command for the rear wheel motor at the current moment. To control the cycle, The speed of the rear wheel motor in the previous control cycle. The target angular acceleration is the rear wheel motor.
[0017] The present invention provides a three-motor omnidirectional dual-wheel self-balancing robot and its control method, which has the following beneficial effects: 1. This application adopts a three-motor independent drive architecture, with the front wheel controlling forward movement and steering, and the rear omnidirectional wheel realizing balance adjustment, which significantly improves maneuverability and flexibility, breaks through the limitation of the degree of freedom of traditional two-wheeled robots, and realizes rotation and omnidirectional movement at any point in the plane. The robot has the ability to move in a straight line, turn on the spot, and slide laterally. It can maintain self-balance under high and low speed conditions, greatly enhances environmental adaptability, and adapts to the needs of narrow spaces and complex path planning.
[0018] 2. This application introduces an instantaneous center of rotation spatial kinematic modeling method, which breaks through the limitation of traditional two-wheeled robot steering constrained by the vehicle frame orientation. It determines the instantaneous turning center based on the intersection of the vertical lines of the front and rear wheel velocities and establishes a mapping relationship between the target motion and the roll angle. This modeling method simplifies the omnidirectional motion calculation logic, allowing the robot to flexibly turn around any point on the plane, significantly improving the robot's planar maneuvering degree of freedom and its ability to adapt to complex scene steering.
[0019] 3. This application adopts a hierarchical control architecture with an outer-loop PI speed closed loop and an inner-loop PD tilt angle closed loop. The outer loop corrects the target tilt angle, and the inner loop quickly suppresses tilt angle fluctuations. Combined with a simplified dynamic model, the nonlinear control is linearized. Compared with the traditional single-loop PID controller, this hierarchical structure relies on precise dynamic parameters to optimize the control quantity, which has a stronger ability to resist external disturbances. It can achieve coordinated convergence of balance attitude and driving speed, and the trajectory tracking accuracy is significantly improved.
[0020] 4. This application relies on system identification technology to calibrate key parameters of robot dynamics, and specifically corrects the deviations in theoretical models caused by friction and nonlinearity. Compared with pure theoretical modeling, it significantly improves the fit of the dynamic model, obtains dynamic parameters that are close to reality, reduces computational complexity, ensures real-time control, provides a reliable benchmark for closed-loop control, and can achieve stepwise convergence of roll angle and rear wheel speed, ensuring that the control system responds to changes in the external environment in real time.
[0021] 5. This application uses a six-dimensional force sensor to detect the pressure distribution of heavy objects in real time and dynamically adjust control parameters, enabling the robot to automatically adapt to the shift in center of gravity when the load changes, maintain a stable motion trajectory, and improve the stability and reliability of scenarios such as warehousing and logistics. At the same time, the direct connection through countersunk bolts effectively reduces the risk of bolt loosening due to vibration caused by movement. All structural modules adopt a quick disassembly and assembly design, which significantly reduces disassembly and maintenance time and further improves the reliability and stability of the overall structure. Attached Figure Description
[0022] Figure 1 This is a front view of the overall structure disclosed in an embodiment of the present invention; Figure 2 This is a top view of the overall structure disclosed in the embodiments of the present invention; Figure 3 This is a side view of the overall structure disclosed in an embodiment of the present invention; Figure 4 This is a schematic diagram of the robot coordinate system and parameters disclosed in an embodiment of the present invention; Figure 5 This is a schematic diagram of the relationship between the robot's projection and instantaneous center in the heading frame, as disclosed in an embodiment of the present invention. Figure 6 This is a schematic diagram of the inner and outer loop PID controller disclosed in an embodiment of the present invention; Figure 7 This is a schematic diagram of the auxiliary wheel portion in its stored state as disclosed in an embodiment of the present invention; Figure 8 This is a schematic diagram of the auxiliary wheel section in its unfolded state as disclosed in an embodiment of the present invention.
[0023] Explanation of reference numerals in the attached figures: 1. Frame; 2. Front wheel; 3. Rear omnidirectional wheel; 4. Front wheel motor; 5. Rear wheel motor; 6. Support frame; 7. Side support legs; 8. Auxiliary wheel; 9. Steering motor; 10. Force sensor; 11. First link; 12. Second link; 13. Third link; 14. Storage motor; 15. Pin; 16. Socket; 17. Front leg bracket; 18. Rear leg bracket; 19. Driver; 20. Battery; 21. Tray. Detailed Implementation
[0024] To make the objectives, technical solutions, and advantages of this application clearer, the technical solutions of this application 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 application, and not all of them. All other embodiments obtained by those skilled in the art based on the embodiments of this application without creative effort are within the scope of protection of this application.
[0025] like Figures 1-8 As shown, this embodiment discloses a three-motor omnidirectional dual-wheel self-balancing robot, including: Frame 1, which is used for overall structural support; The front leg support 17 is rotatably mounted on the front end of the frame 1 and is driven to rotate by the steering motor 9 to control the robot's steering. The steering motor 9 is fixedly connected to the frame 1, and the output shaft of the steering motor 9 is connected to the front leg support 17 to realize the steering of the robot's front legs. The front walking wheel 2 is rotatably connected to the front leg support 17 and driven to rotate by the front wheel motor 4. Its rotation axis is perpendicular to the forward direction of the frame 1 to drive the robot forward. The front wheel motor 4 is a hub motor, coaxially embedded in the center hole of the spoke of the front walking wheel 2. The stator of the hub motor is fixedly connected to the front leg support 17, and the rotor of the hub motor is rigidly connected to the hub of the front walking wheel 2 to directly drive the front walking wheel 2 to rotate around the front leg support 17, so as to realize the robot's walking. The rear leg support 18 is fixedly installed at the rear end of the frame 1; The rear omnidirectional wheel 3 is rotatably connected to the rear leg support 18 and driven to rotate by the rear wheel motor 5. Its rotation axis is parallel to the forward direction of the frame 1 to cooperate with the robot's steering. The rear wheel motor 5 is fixedly connected to the rear leg support 18, and the output shaft of the rear wheel motor 5 is connected to the rear omnidirectional wheel 3 to drive the rear omnidirectional wheel 3 to rotate around the rear leg support 18. The robot employs omnidirectional wheels, which are not subject to speed constraints in the direction of the frame 1, while the speed perpendicular to the direction of the frame 1 is independently controlled by the rear wheel motor 5, thereby ensuring the robot's maneuverability and flexibility in multiple directions.
[0026] Force sensor 10 is installed in the middle of the frame 1 to provide feedback balance data and thus dynamically adjust the robot's control parameters. A tray 21 is provided above the force sensor 10, and a heavy object is placed in the tray 21. The force sensor 10 is used to detect the pressure distribution of the heavy object in real time to provide feedback balance data.
[0027] Force sensor 10 is a six-dimensional force sensor that can simultaneously measure three orthogonal force components and three orthogonal torque components in three-dimensional space. By calculating the coupled data of force and torque in each direction, it can reconstruct the position of the center of gravity and the mass distribution of the heavy object in real time. When the weight in the pallet 21 shifts or is increased or decreased, the six-dimensional force sensor transmits the detected pressure distribution change to the control system. The control system then dynamically corrects the target tilt angle and motor output parameters accordingly, enabling the robot to automatically adapt to the shift in center of gravity when the load changes, maintain a stable motion trajectory, and improve the stability and reliability of scenarios such as warehousing and logistics.
[0028] It also includes: auxiliary wheel 8, which is located on the belly of frame 1 and is driven by a linkage mechanism to be retracted or deployed, with its axis of rotation parallel to the forward direction of frame 1.
[0029] The linkage mechanism includes a first link 11 and a third link 13, both of which are rotatably connected to the frame 1; The third link 13 is hinged to the second link 12 at its far end, the first link 11 is hinged to the middle of the second link 12 at its far end, and the auxiliary wheel 8 is rotatably connected to the far end of the second link 12. The retractable motor 14 is mounted on the frame 1 and is used to drive the third link 13 to rotate so as to retract or unfold the auxiliary wheel 8. The retraction or unfolding direction of the auxiliary wheel is perpendicular to the forward direction of the frame 1.
[0030] When the storage motor 14 drives the third link 13 to rotate, the first link 11 rotates synchronously. The second link 12 moves in translation under the constraint of the first link 11 and the third link 13, thereby driving the auxiliary wheel 8 to unfold downwards to contact the ground, providing auxiliary support for the robot, or to be stored upwards close to the belly of the frame 1 to avoid interfering with normal walking.
[0031] The first link 11, the second link 12, the third link 13, together with the frame 1, form a four-bar linkage transmission structure. The movement trajectory of the links is constrained by the geometric dimensions of the mechanism, and the movement path is fixed and controllable. The force is evenly distributed in the four-bar hinged transmission, avoiding structural deformation caused by concentrated force at a single point. It can buffer the vibration load generated by road bumps, and the transmission is free from sudden impacts, with continuous and smooth operation.
[0032] Meanwhile, to ensure the stability of the four-bar linkage at the highest and lowest points, an electromagnetic relay and a pin 15 structure are incorporated into the design to lock the linkage mechanism, further enhancing stability and safety during movement. Specifically, the third link 13 is fixedly connected to a disc, which has several holes 16. The electromagnetic relay drives the pin 15 to move, allowing the pin 15 to be inserted into the hole 16.
[0033] The pin 15 is slidably connected to the second link 12, and a spring is provided between the pin 15 and the second link 12. The spring enables the pin 15 to reliably extend and retract to return to its original position. The electromagnetic relay, as the core drive and control element, can switch between on and off states via electrical control signals. When the linkage mechanism moves to the preset highest and lowest limit positions, the control system outputs an electrical signal to trigger the electromagnetic relay to work. Relying on the electromagnetic attraction force, the pin 15 is driven to extend linearly and accurately insert into the corresponding hole 16 inside the disk. When the mechanism needs to switch motion states, the electromagnetic relay is de-energized and demagnetized, the magnetic attraction force disappears, and the spring drives the pin 15 to automatically retract and reset, releasing the locking constraint on the disk and the third linkage 13.
[0034] In terms of structural design, this robot adopts a lightweight design scheme combining aluminum alloy and carbon fiber plates. Specifically, countersunk through holes are designed into the carbon fiber plates, and threaded holes are machined into the mating aluminum parts for direct connection using countersunk bolts. This design not only completely hides the bolt heads on the carbon fiber surface, improving the overall integrity and aesthetics of the structure, but also eliminates the need for nuts in traditional structures, effectively reducing the risk of bolt loosening due to vibrations caused by movement.
[0035] In addition, each structural module adopts a quick-assembly and disassembly design, which eliminates the need for any nuts or additional fasteners, significantly reducing the system's disassembly and maintenance time and further improving the reliability and stability of the overall structure.
[0036] To ensure the robot's stability during movement, the driver 19 and battery 20 are respectively suspended at the front and rear of the frame 1. The driver 19 is used to control the front wheel motor 4, and the battery 20 is used for overall power supply. The above design lowers the robot's center of gravity, balances the front and rear weight distribution of the vehicle body, and avoids the center of gravity of the frame 1 from shifting. It can significantly suppress the robot's tilt and pitch sway during movement, reduce the risk of tipping over under bumpy and speed-changing conditions, and greatly improve the dynamic motion stability and anti-interference ability of the whole machine.
[0037] In addition, inclined support frames 6 are fixedly connected to both sides of the frame 1. Side support legs 7 are rotatably connected to the support frames 6. The lower surfaces of the front walking wheels 2 and the rear omnidirectional wheels 3 are flush. The lower surface of the side support legs 7 is higher than the lower surface of the front walking wheels 2. The side support legs 7 prevent the robot from tipping over or being damaged in an unstable state.
[0038] A control method for a three-motor omnidirectional two-wheel self-balancing robot, employing the aforementioned three-motor omnidirectional two-wheel self-balancing robot, includes: Based on the robot's structural features, kinematic modeling is performed, and the robot's coordinate system and parameters are as follows: Figure 4 As shown, Figure 4 This is a schematic diagram of the robot coordinate system and parameters disclosed in an embodiment of the present invention. When performing kinematic modeling, a right-handed coordinate system is used to describe the robot. Inertial coordinate system Fixed to the ground, among which The direction is vertically downward. The direction is to the right along the paper, in In the coordinate system, the centroid coordinate system Fixed at the midpoint of the frame C From the origin on the ground O Pointing to the center of gravity of the frame C position vector The formula is expressed as: (2.1); In the formula, and These are respectively along the direction of frame 1 and perpendicular to frame 1. relatively Around Axis rotation heading angle Foreleg coordinate system Fixed at the connection between the front leg and the frame 1 F Midpoint of the frame C Pointing to the hinge point of the front leg F position vector The formula is expressed as: (2.2); In the formula,L For the frame length, Vertically downwards, relatively Around Rotation angle is hind leg coordinate system Fixed at the connection between the rear leg and the frame 1 R Midpoint of the frame C Pointing to the hinge point of the hind leg R position vector The formula is expressed as: (2.3); In the formula, and Parallel coordinate systems of the front and rear wheels and Fixed at the center of the wheel, front hinge point F Pointing to the center of the front wheel A position vector Rear hinge point R Pointing to the center of the rear wheel B position vector The formula is expressed as: (2.4); (2.5); In the formula, h The height from the wheel to frame 1 is calculated by rotating the wheel around the frame. and Rotation and The contact points between the front and rear wheels and the ground are respectively P and Q The center of the front wheel A to the front wheel ground contact point P position vector The center of the rear wheel B to the rear wheel ground contact point Q position vector The formula is expressed as: (2.6); (2.7); Since this application focuses on the motion of an omnidirectional two-wheeled robot in a plane, it is assumed that the robot's tilt angle is zero. In this case, the vector... , , Both are in the vertically downward direction, and the vectors , Parallel, Vector , Parallel, robot's yaw angle Front wheel steering angle and the rotation angle of the front and rear wheels. and In the initial state, the formula is expressed as: (2.8); (2.9); (2.10); Therefore, vector 、 、 、 、 parallel, and Homogeneous transformation matrix between coordinate systems It means that, among them, , 、 、 、 The translation vector is expressed by the formula: (2.11); (2.12); (2.13); (2.14); The corresponding rotation matrices are respectively 、 、 , ,in, Indicates circling In Axis rotation The rotation matrix.
[0039] Assuming the front wheel 2 does not slip, and the rear omnidirectional wheel 3 has no speed constraint along the direction of the frame 1 and does not slip in the direction perpendicular to the frame 1, the contact point with the ground... P and Q There are three velocity constraint equations, and their position formulas are expressed as follows: (2.15); (2.16); The velocity at the contact point is the derivative of its position with respect to time. When the front traveling wheel 2 and the rear omnidirectional wheel 3 do not slip with the ground in a certain direction, the velocity component of the contact point in that direction should be zero. Therefore, the nonholonomic constraint equation can be obtained, expressed as: (2.17); (2.18); In the formula, exist and The components in the direction are all zero. exist Since the component in the directional direction is zero, the robot's forward kinematics equations can be obtained by solving the above constraint equations. The formula is expressed as: (2.19); In the formula, and For robots in The velocity components in the inertial coordinate system represent the robot's velocity along the frame and its velocity perpendicular to the frame, respectively. r For the wheel radius, L For the frame length, The yaw rate of the robot about its vertical axis is given by the workspace, which contains the three degrees of freedom corresponding to the robot's planar motion. , , The control space is the front wheel steering angle. and front and rear wheel speeds and .
[0040] Based on the kinematic equations, dynamic modeling is performed, including: To simplify the robot's dynamics calculations, the system is divided into five parts: frame, front legs, rear legs, front wheels, and rear wheels. By assuming simplified shapes for each part, the complex dynamics problem is transformed into a manageable model. The frame is simplified to a cuboid with mass... and moment of inertia The frame's movement is only affected by the front legs and the front and rear wheels, mainly involving the movement along the... and Translational motion in direction, and rotational motion Rotational motion in a certain direction.
[0041] The forelegs are simplified as a cylinder, and their mass is assumed to be... Moment of inertia is The forelegs are arranged around their axis. The angle of rotation is This angle represents the relative rotation angle between the frame 1 and the front leg support 17. The rear leg is simplified as a cylinder, and its mass is assumed to be... Moment of inertia is The rear leg section is fixedly connected to the frame section 1, and there is no translation or rotation between the two modules. The front and rear wheels are simplified as cylinders, with the front wheel having a mass of... The mass of the rear wheel is The corresponding moment of inertia is and front wheel around The angle of rotation is Rear wheel around The angle of rotation is .
[0042] Based on the Newton-Euler method, the dynamic model of a two-wheeled robot system can be decomposed into multiple independent dynamic equations. Assuming that the body and each drive wheel can be regarded as rigid bodies, the Newton and Euler equations are applied respectively. For each component, its center of mass position, mass, moment of inertia, and the external forces and torques it is subjected to are considered, and finally the dynamic equation of the robot as a whole is derived.
[0043] Angular momentum calculation: Based on the angular velocity and linear velocity of each part of the robot, calculate the angular momentum of each part relative to its own center of mass. The angular momentum includes: the rotational angular momentum around its own center of mass and the orbital angular momentum of the center of mass around the system reference point. The total angular momentum is obtained by superimposing the angular momentum vectors of each part.
[0044] When calculating the system's equations of motion, it is first necessary to calculate the angular velocity and linear velocity of each component. The angular velocity and linear velocity of each component are solved by the kinematic relationships of each component. The angular velocity of the frame includes the yaw angular velocity. and roll rate The angular velocity of the front leg is determined by the angular velocity of the frame and the rotation angle between the frame and the front leg. The angular velocity of the front wheel is determined by the frame, front legs, and rotational angular velocity. The angular velocity of the rear wheel is determined by the frame and its rotational angular velocity. The decision is made. The angular momentum of each part is expressed by the formula: (2.20); In the formula, For the first Partial moment of inertia relative to the axis of rotation, For the first Partial angular velocity, For the first Partial quality, For the first The position vector of part of the centroid to the reference point. For the first The linear velocity of a portion of the center of mass is used to calculate the total angular momentum of the system, expressed by the formula: (2.21); In the dynamic equations, the influence of external forces also needs to be considered. The main external forces include the robot's own weight and the frictional force when the front and rear wheels contact the ground. To simplify the calculation, we choose to derive the system's dynamic equations by calculating the angular momentum and the torque of the external torque about the line connecting the robot's two grounding points. The formula for the line connecting the two grounding points is expressed as: (2.22); External torque calculation: The external forces acting on the system include: the gravitational torque formed by the weight of each part, with the point of application being the center of mass of each part, and the frictional torque at the contact points between the front and rear wheels and the ground; the line connecting the contact points of the front and rear wheels is selected as the torque reference axis. Since the torque component of the frictional force along the line connecting the contact points is zero, the gravitational torque of each part is equal to the product of the mass of that part, the gravitational acceleration, and the perpendicular distance from the center of mass to the torque axis. The gravitational torques of each part are superimposed to obtain the total external torque; During the calculation, the point of application is and Friction in The torque on the system is recorded as 0, therefore the external torque only considers the system's gravity. The external torque. Ultimately, the formula for the external torque is: (2.23); (2.24); In the formula, For the first Part of the external torque, For the first Partial quality, For the first The distance from the partial center of mass to the point of application of gravity, angular momentum, and external torque relative to... The torque is expressed by the formula: (2.25); (2.26); The dynamic equations are established as follows: According to the angular momentum theorem, the rate of change of the total angular momentum of the system with respect to time is equal to the total external torque acting on the robot, expressed by the formula: (2.27); In the formula, The rate of change of total angular momentum. This represents the total external torque.
[0045] Perform instantaneous center-of-space kinematic modeling, including: Coordinate system establishment: A heading coordinate system is established with the robot's current heading as the reference. The projection positions of the front walking wheel 2 and the rear omnidirectional wheel 3 on the ground correspond to two known points in the instantaneous center space, respectively. The velocity directions of the front and rear wheel centers are perpendicular to the lines connecting them to the instantaneous center. like Figure 5 As shown, Figure 5 This is a schematic diagram of the relationship between the robot's projection in the heading frame and the instantaneous center of gravity, as disclosed in an embodiment of the present invention. In the instantaneous center of gravity space, the workspace is... ,in and These represent the instantaneous center coordinates in the current heading frame. Let the linear velocity of the robot around the instantaneous center be denoted by . Instantaneous center position determination: Based on the geometric constraints of the velocity directions of the front and rear wheels, the velocity direction of the front directional wheel 2 is determined by the steering angle, and the velocity direction of the rear omnidirectional wheel 3 is determined by its lateral rolling characteristics. The intersection of the perpendicular lines of the two velocity directions is the instantaneous center position. Dot and The coordinates of the point projected into the heading system are respectively and Instantaneous Heart Point The coordinates are Therefore, we can obtain a vector, expressed by the formula: (3.3); (3.4); The formula for the velocity vectors of the front and rear wheel centers in the heading frame is expressed as: (3.5); (3.6); Control space transformation: Using the instantaneous center coordinates and the linear velocity around the instantaneous center as workspace variables, the three control quantities, the steering angle of the front traveling wheel 2, the rotational angular velocity of the front traveling wheel 2, and the rotational angular velocity of the rear omnidirectional wheel 3, are solved inversely through geometric relationships.
[0046] Kinematic constraints: front travel wheel 2 is assumed to have no sideslip, and rear omnidirectional wheel 3 has no velocity constraint along the frame direction but no sideslip perpendicular to the frame direction; The equations for the instantaneous center space and the control space can be solved using the following three formulas, expressed as follows: (3.7); (3.8); (3.9); The steering angle of the front traveling wheel 2, the rotational angular velocity of the front traveling wheel 2, and the rotational angular velocity of the rear omnidirectional wheel 3 are expressed by the following formulas: (3.10); (3.11); (3.12); In the formula, The steering angle of the front wheels 2. The rotational angular velocity of the front traveling wheel 2 is... The rotational angular velocity of the rear omnidirectional wheel 3. x and y These are the x-coordinate and y-coordinate of the instantaneous center of gravity, respectively. v Let be the linear velocity around the instantaneous center.
[0047] By introducing the instantaneous center of rotation spatial kinematic modeling method, the limitation of traditional two-wheeled robot steering by the frame orientation is overcome. The instantaneous center of rotation is determined by the intersection of the vertical lines of the front and rear wheel velocities, and the mapping relationship between the target motion and the roll angle is established. This modeling method simplifies the omnidirectional motion calculation logic, allowing the robot to flexibly turn around any point on the plane, significantly improving the robot's planar maneuvering degree of freedom and its ability to adapt to complex scene steering.
[0048] like Figure 6 As shown, Figure 6 This is a schematic diagram of the inner and outer loop PID controller disclosed in an embodiment of the present invention, which adopts an inner and outer loop hierarchical control architecture: the inner loop uses a PD controller, based on the target roll angle. and from a practical perspective The difference is used to adjust the acceleration of the rear wheel motor 5. The outer ring uses a PI controller, based on the target speed of the rear wheel motor 5. and current speed The difference is used to adjust the target tilt angle, thereby correcting the target tilt angle. The combination of inner and outer loop control can achieve balanced control of robot motion and bring the rear wheel motor 5 to near the target speed.
[0049] Specific methods for using PID controllers include: The controller acquires the robot's tilt angle in real time via the IMU (Inertial Measurement Unit). and roll rate These data are used to calculate the system error and serve as inputs to the inner-loop controller, while also considering the input quantities in the instantaneous center space. The theoretical roll angle at the current moment is calculated. Calculate the theoretical roll angle: First, calculate the radius of rotation at the current moment. The formula is expressed as: (3.13); Then, based on the principle that the component of gravity in the horizontal plane is equal to the centripetal force of rotation, the theoretical roll angle is calculated. The formula is expressed as: (3.14); In the formula, It is the current angle of rotation of steering motor 9. Let be the radius of rotation at the current moment. Let be the linear velocity around the instantaneous center at the current moment; Outer loop PI control: The outer loop uses the difference between the target speed and the actual speed of the rear wheel motor 5 as the input error. The outer loop output is the roll angle correction amount, used to adjust the robot's target roll posture. When the actual speed is lower than the target value, the outer loop output increases the target roll angle; when the actual speed is higher than the target value, the outer loop output decreases the target roll angle. The output value of the outer loop PI controller is the correction amount for the target roll angle. The formula is expressed as: (3.15); (3.16); In the formula, This is the roll angle correction amount. The speed proportional gain of the outer loop is used to quickly respond to speed errors. The velocity integral gain of the outer loop is used to gradually eliminate steady-state deviations. For speed error, This is the integral accumulation of the speed error; Pan angle synthesis: The target pan angle includes: the theoretical pan angle calculated based on instantaneous center of gravity kinematics, reflecting the inherent pan degree required to maintain the current motion; and the correction amount from the outer loop PI output, used to compensate for velocity tracking errors. The sum of the two is the final tracking target of the inner loop PD, expressed by the formula: (3.17); In the formula, The overall target roll angle, The theoretical roll angle, This is the roll angle correction amount; Inner-loop PD control: The inner loop uses the difference between the target roll angle and the actual roll angle as the input error, expressed by the formula: (3.18); Simultaneously, angular velocity error is introduced for differential advance compensation. The inner loop output is the target angular acceleration of the rear wheel motor 5. After integration, the motor speed command is obtained, expressed by the formula: (3.19); In the formula, The target angular acceleration of the rear wheel motor 5, This is the proportional gain of the inner ring's roll angle, used to respond to roll angle errors. The differential gain of the inner ring's roll angle is used to suppress changes in angular velocity. For angular error, The theoretical rate of change of the roll angle, This represents the rate of change of the actual roll angle; Force sensor 10 feedback and status update: The controller acquires the robot's current tilt angle and angular velocity in real time through the inertial measurement unit as inner loop feedback, and acquires the actual speed of the rear wheels through the motor encoder as outer loop feedback. Within each control cycle, the controller recalculates the error and updates the control output based on the latest feedback data, forming a continuous closed-loop adjustment, expressed by the formula: (3.20); In the formula, This is the speed command for the rear wheel motor 5 at the current moment. To control the cycle, The speed of the rear wheel motor 5 in the previous control cycle. The target angular acceleration is the rear wheel motor 5.
[0050] A hierarchical control architecture is adopted, consisting of an outer-loop PI speed closed loop and an inner-loop PD tilt angle closed loop. The outer loop corrects the target tilt angle, while the inner loop quickly suppresses tilt angle fluctuations. Combined with a simplified dynamic model, the nonlinear control is linearized. Compared with the traditional single-loop PID controller, this hierarchical structure relies on precise dynamic parameters to optimize the control quantity, which has a stronger ability to resist external disturbances. It can achieve coordinated convergence of balance attitude and driving speed, and the trajectory tracking accuracy is significantly improved.
[0051] The embodiments of this application have been described above with reference to the accompanying drawings. However, this application is not limited to the specific embodiments described above. The specific embodiments described above are merely illustrative and not restrictive. Those skilled in the art can make many other forms under the guidance of this application without departing from the spirit and scope of the claims, and all of these forms are within the protection scope of this application.
Claims
1. A three-motor omnidirectional dual-wheel self-balancing robot, characterized in that, include: Frame (1); The front leg support (17) is rotatably mounted on the front end of the frame (1) and driven to rotate by the steering motor (9) to control the robot's steering. The front walking wheel (2) is rotatably connected to the front leg bracket (17) and driven to rotate by the front wheel motor (4). Its rotation axis is perpendicular to the forward direction of the frame (1) to drive the robot forward. Rear leg support (18), which is mounted at the rear end of the frame (1); The rear omnidirectional wheel (3) is rotatably connected to the rear leg support (18) and driven to rotate by the rear wheel motor (5). Its rotation axis is parallel to the forward direction of the frame (1) to cooperate with the robot's steering. Force sensor (10) is installed in the middle of the frame (1) to provide feedback balance data so as to dynamically adjust the control parameters of the robot.
2. The three-motor omnidirectional dual-wheel self-balancing robot according to claim 1, characterized in that, Also includes: The auxiliary wheel (8) is located on the belly of the frame (1) and is driven by a linkage mechanism to be retracted or unfolded. Its axis of rotation is parallel to the forward direction of the frame (1).
3. A three-motor omnidirectional dual-wheel self-balancing robot according to claim 2, characterized in that, The linkage mechanism includes a first link (11) and a third link (13) that are rotatably connected to the frame (1). The third link (13) is hinged to the second link (12) at its far end, the first link (11) is hinged to the middle of the second link (12) at its far end, and the auxiliary wheel (8) is rotatably connected to the far end of the second link (12). A storage motor (14) is mounted on the frame (1) to drive the third link (13) to rotate so as to store or unfold the auxiliary wheel (8).
4. A three-motor omnidirectional dual-wheel self-balancing robot according to claim 1, characterized in that, The force sensor (10) is provided with a tray (21) above it, and a heavy object is placed in the tray (21). The force sensor (10) is used to detect the pressure distribution of the heavy object in real time to provide feedback on balance data.
5. The control method for a three-motor omnidirectional dual-wheel self-balancing robot according to claim 1, characterized in that, The three-motor omnidirectional two-wheel self-balancing robot according to any one of claims 1-4 includes: performing kinematic modeling based on the robot's structural features to obtain the robot's forward kinematic equations, expressed as follows: (2.19); In the formula, and For robots in The velocity components in the inertial coordinate system represent the robot's velocity along the frame and its velocity perpendicular to the frame, respectively. r For the wheel radius, L For the frame length, The yaw rate of the robot about its vertical axis is given by the workspace, which contains the three degrees of freedom corresponding to the robot's planar motion. , , The control space is the front wheel steering angle. and front and rear wheel speeds and .
6. The control method for a three-motor omnidirectional dual-wheel self-balancing robot according to claim 5, characterized in that, Based on the kinematic equations, dynamic modeling is performed, including: Angular momentum calculation: Based on the angular velocity and linear velocity of each part of the robot, calculate the angular momentum of each part relative to its own center of mass. The angular momentum includes: the rotational angular momentum about its own center of mass and the orbital angular momentum of the center of mass about the system reference point. The angular momentum vectors of each part are superimposed to obtain the total angular momentum. External torque calculation: The external forces acting on the system include: the gravitational torque formed by the weight of each part, with the point of application being the center of mass of each part, and the frictional torque at the contact points between the front and rear wheels and the ground; the line connecting the contact points of the front and rear wheels is selected as the torque reference axis. Since the torque component of the frictional force along the line connecting the contact points is zero, the gravitational torque of each part is equal to the product of the mass of that part, the gravitational acceleration, and the perpendicular distance from the center of mass to the torque axis. The gravitational torques of each part are superimposed to obtain the total external torque; The dynamic equations are established as follows: According to the angular momentum theorem, the rate of change of the total angular momentum of the system with respect to time is equal to the total external torque acting on the robot, expressed by the formula: (2.27); In the formula, The rate of change of total angular momentum. This represents the total external torque.
7. The control method for a three-motor omnidirectional dual-wheel self-balancing robot according to claim 6, characterized in that, Perform instantaneous center-of-space kinematic modeling, including: Coordinate system establishment: A heading coordinate system is established based on the robot's current heading. The projection positions of the front walking wheel (2) and the rear omnidirectional wheel (3) on the ground correspond to two known points in the instantaneous center space, respectively. The velocity directions of the front and rear wheel centers are perpendicular to the lines connecting them to the instantaneous center. Instantaneous center position determination: According to the geometric constraints of the velocity directions of the front and rear wheels, the velocity direction of the front wheel (2) is determined by the steering angle, and the velocity direction of the rear omnidirectional wheel (3) is determined by its lateral rolling characteristics. The intersection of the perpendicular lines of the two velocity directions is the instantaneous center position. Kinematic constraints: The front traveling wheel (2) is assumed to have no sideslip, and the rear omnidirectional wheel (3) has no velocity constraint along the frame direction but no sideslip perpendicular to the frame direction; Control space transformation: Using the instantaneous center coordinates and the linear velocity around the instantaneous center as workspace variables, the three control quantities are solved by geometric relationship: the steering angle of the front traveling wheel (2), the rotational angular velocity of the front traveling wheel (2), and the rotational angular velocity of the rear omnidirectional wheel (3).
8. The control method for a three-motor omnidirectional dual-wheel self-balancing robot according to claim 7, characterized in that, The steering angle of the front traveling wheel (2), the rotational angular velocity of the front traveling wheel (2), and the rotational angular velocity of the rear omnidirectional wheel (3) are expressed by the following formula: (3.10); (3.11); (3.12); In the formula, The steering angle of the front wheel (2) The rotational angular velocity of the forward-moving wheel (2) is... The rotational angular velocity of the rear omnidirectional wheel (3) is... x and y These are the x-coordinate and y-coordinate of the instantaneous center of gravity, respectively. v Let be the linear velocity around the instantaneous center.
9. The control method for a three-motor omnidirectional dual-wheel self-balancing robot according to claim 7, characterized in that, A layered control architecture with inner and outer loops is adopted: the inner loop uses a PD controller, which adjusts the control based on the target roll angle. and from a practical perspective The difference is used to adjust the acceleration of the rear wheel motor (5). ; The outer ring uses a PI controller, based on the target speed of the rear wheel motor (5). and current speed The difference is used to adjust the target roll angle, thereby correcting the target roll angle.
10. The control method for a three-motor omnidirectional dual-wheel self-balancing robot according to claim 9, characterized in that, Specific methods for using PID controllers include: Calculate the theoretical roll angle: Calculate the radius of rotation at the current moment, and then, based on the principle that the component of gravity in the horizontal plane equals the centripetal force of rotation, calculate the theoretical roll angle. The formula is expressed as: (3.14); In the formula, It is the rotation angle of the steering motor (9) at the current moment. Let be the radius of rotation at the current moment. Let be the linear velocity around the instantaneous center at the current moment; Outer loop PI control: The outer loop uses the difference between the target speed and the actual speed of the rear wheel motor (5) as the input error, and the outer loop output is the roll angle correction amount, which is used to adjust the target roll posture of the robot. When the actual speed is lower than the target value, the outer loop output increases the target roll angle, and when the actual speed is higher than the target value, the outer loop output decreases the target roll angle. The formula is expressed as: (3.16); In the formula, This is the roll angle correction amount. The speed proportional gain of the outer loop is used to quickly respond to speed errors. The velocity integral gain of the outer loop is used to gradually eliminate steady-state deviations. For speed error, This is the integral accumulation of the speed error; Pan angle synthesis: The target pan angle includes: the theoretical pan angle calculated based on instantaneous center of gravity kinematics, reflecting the inherent pan degree required to maintain the current motion; and the correction amount from the outer loop PI output, used to compensate for velocity tracking errors. The sum of the two is the final tracking target of the inner loop PD, expressed by the formula: (3.17); In the formula, The overall target roll angle, The theoretical roll angle, This is the roll angle correction amount; Inner loop PD control: The inner loop uses the difference between the target roll angle and the actual roll angle as the input error, and simultaneously introduces angular velocity error for differential advance compensation. The inner loop output is the target angular acceleration of the rear wheel motor (5), which is integrated to obtain the motor speed command, expressed by the formula: (3.19); In the formula, The target angular acceleration of the rear wheel motor (5) is... This is the proportional gain of the inner ring's roll angle, used to respond to roll angle errors. The differential gain of the inner ring's roll angle is used to suppress changes in angular velocity. For angular error, The theoretical rate of change of the roll angle, This represents the rate of change of the actual roll angle; Force sensor (10) feedback and status update: The controller obtains the robot's current tilt angle and angular velocity in real time through the inertial measurement unit as inner loop feedback, and obtains the actual speed of the rear wheel through the motor encoder as outer loop feedback. In each control cycle, the controller recalculates the error and updates the control output based on the latest feedback data, forming a continuous closed loop adjustment, expressed by the formula: (3.20); In the formula, This is the speed command for the rear wheel motor (5) at the current moment. To control the cycle, The speed of the rear wheel motor (5) in the previous control cycle, The target angular acceleration is the rear wheel motor (5).