Self-balancing robot sampling control period calculation method and related device
By constructing a dynamic model of the self-balancing robot and motor control input information, and calculating the sampling control cycle, the problem of resource waste caused by excessively high sampling frequency is solved, and resource saving is achieved while ensuring stability.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- SHENZHEN CITY SAMKOON TECH
- Filing Date
- 2026-04-15
- Publication Date
- 2026-06-30
AI Technical Summary
In existing technologies, the sampling period of self-balancing robots is too conservative, resulting in a sampling frequency that is much higher than the actual requirement under most normal operating conditions, causing a waste of communication and computing resources.
By constructing a dynamic model of a self-balancing robot and motor control input information, the sampling control period is calculated. Cyclic energy constraint information is constructed using instantaneous energy functional, cyclic correlated energy functional, and interval cumulative energy functional. The maximum permissible sampling control period is calculated by combining negative qualitative analysis.
While ensuring system stability, the upper limit of the sampling period is significantly increased to avoid resource waste caused by excessively high sampling frequency, thereby saving communication and computing resources.
Smart Images

Figure CN122045574B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of robot control technology, and in particular to a method for calculating the sampling control cycle of a self-balancing robot and related equipment. Background Technology
[0002] A two-wheeled self-balancing robot is a wheeled mobile robot consisting of a body and two coaxially arranged drive wheels. It is a typical nonlinear underactuated system, and its dynamic stability depends on the real-time response and adjustment of the controller to sensor signals.
[0003] Since communication resources between sensors and controllers are limited in practical industrial applications, it is necessary to introduce a sampling control mechanism between the controller and the sensor to reduce communication load and computational overhead through discretized signal acquisition and processing.
[0004] In related technologies, the sampling period is typically set manually based on experience. Specifically, designers usually set a small, fixed sampling period to ensure that the controller can still respond promptly under dynamic conditions without losing stability margin. However, this approach selects an overly conservative sampling period, resulting in a sampling frequency that is much higher than the actual requirement under most normal operating conditions, leading to a waste of communication and computing resources. Summary of the Invention
[0005] This application proposes a sampling control cycle calculation method and related equipment for a self-balancing robot, which can save communication and computing resources while ensuring stable system operation by calculating the maximum permissible sampling control cycle.
[0006] To achieve the above objectives, a first aspect of this application proposes a method for calculating the sampling control cycle of a self-balancing robot, the method comprising:
[0007] Obtain the dynamic model and motor control input information of the self-balancing robot;
[0008] Based on the dynamic model and the motor control input information, the sampling control description information of the self-balancing robot for any interval time contained in the preset sampling interval is calculated, wherein the preset sampling interval includes the starting sampling time, multiple interval times and the ending sampling time;
[0009] Obtain the instantaneous energy functional, cyclic correlation energy functional, and interval cumulative energy functional of the self-balancing robot at any time interval, and construct cyclic energy constraint information based on the instantaneous energy functional, the cyclic correlation energy functional, and the interval cumulative energy functional;
[0010] The instantaneous energy functional is constructed based on the target system state of the self-balancing robot at any time interval.
[0011] The cyclic correlation energy functional is constructed based on the correlation between the target system state at any interval time and the initial system state at the initial sampling time, and the final system state at the final sampling time. The value of the cyclic correlation energy functional at the initial sampling time is equal to the value at the final sampling time.
[0012] The interval cumulative energy functional is constructed based on the difference between the first integral path energy between any interval time and the starting sampling time and the second integral path energy between any interval time and the ending sampling time. The value of the interval cumulative energy functional at the starting sampling time is equal to the value at the ending sampling time.
[0013] By combining the sampling control description information with the negative qualitative analysis of the cyclic energy constraint information, the sampling control cycle corresponding to the self-balancing robot is calculated.
[0014] Accordingly, a second aspect of this application provides a sampling control cycle calculation device for a self-balancing robot, the device comprising:
[0015] The acquisition module is used to acquire the dynamic model and motor control input information of the self-balancing robot;
[0016] The calculation module is used to calculate the sampling control description information of the self-balancing robot for any interval time contained in the preset sampling interval based on the dynamic model and the motor control input information, wherein the preset sampling interval includes the starting sampling time, multiple interval times and the ending sampling time;
[0017] The construction module is used to obtain the instantaneous energy functional, cyclic correlation energy functional and interval cumulative energy functional of the self-balancing robot at any interval time, and to construct cyclic energy constraint information based on the instantaneous energy functional, the cyclic correlation energy functional and the interval cumulative energy functional;
[0018] The instantaneous energy functional is constructed based on the target system state of the self-balancing robot at any time interval.
[0019] The cyclic correlation energy functional is constructed based on the correlation between the target system state at any interval time and the initial system state at the initial sampling time, and the final system state at the final sampling time. The value of the cyclic correlation energy functional at the initial sampling time is equal to the value at the final sampling time.
[0020] The interval cumulative energy functional is constructed based on the difference between the first integral path energy between any interval time and the starting sampling time and the second integral path energy between any interval time and the ending sampling time. The value of the interval cumulative energy functional at the starting sampling time is equal to the value at the ending sampling time.
[0021] The analysis module is used to perform negative qualitative analysis on the cyclic energy constraint information in conjunction with the sampling control description information, and to calculate the sampling control cycle corresponding to the self-balancing robot.
[0022] In some implementations, the building module is further configured to:
[0023] Calculate the first derivative of the instantaneous energy functional, the second derivative of the cyclically correlated energy functional, and the third derivative of the interval cumulative energy functional;
[0024] Based on the first derivative, the second derivative, the third derivative, and the preset zero equation, the cyclic energy constraint information is determined.
[0025] In some implementations, the building module is further configured to:
[0026] Obtain the integral term of the third derivative, and use the integral inequality based on the free matrix to perform a scaling estimate on the integral term to obtain the integral term estimation information, wherein the integral term is less than or equal to the integral term estimation information;
[0027] The third derivative is adjusted based on the integral term estimation information to obtain derivative adjustment information, wherein the third derivative is less than or equal to the derivative adjustment information;
[0028] The integral scaling upper bound description information is obtained by merging the first derivative, the second derivative, the derivative adjustment information, and the preset zero equation. The integral scaling upper bound description information is greater than or equal to the total energy change rate description information of the self-balancing robot in the preset sampling interval. The total energy change rate description information is calculated based on the sum of the first derivative, the second derivative, the third derivative, and the preset zero equation.
[0029] Based on the relationship between the integral scaling upper bound description information and the preset zero value, target upper bound description information is constructed, and the target upper bound description information is processed by the lemma to obtain cyclic energy constraint information.
[0030] In some embodiments, the sampling control cycle calculation device of the self-balancing robot further includes a cyclic correlation energy functional acquisition module, used for:
[0031] A first augmented vector is constructed based on the first state difference between the target system state at any interval and the initial system state at the initial sampling time, and a second augmented vector is constructed based on the second state difference between the final system state at the final sampling time and the target system state.
[0032] A first time weight parameter is constructed based on the difference between the end sampling time and any interval time, and a second time weight parameter is constructed based on the difference between any interval time and the start sampling time. A third augmented vector is constructed based on the product of the first time weight parameter and the first state difference, and the product of the second time weight parameter and the second state difference.
[0033] Based on the initial system state and the final system state, a fourth augmented vector is constructed, and based on the difference between the first state and the difference between the second state, a fifth augmented vector is constructed.
[0034] Based on the third augmented vector and the fifth augmented vector, a first association term is constructed; based on the third augmented vector and the fourth augmented vector, a second association term is constructed; based on the first augmented vector and the second augmented vector, a third association term is constructed; and based on the first time weight parameter, the second time weight parameter, and the fourth augmented vector, a fourth association term is constructed.
[0035] By combining the first association term, the second association term, the third association term, and the fourth association term, a cyclic correlation energy functional is constructed to characterize the correlation between any time interval and the state within the preset sampling interval.
[0036] In some embodiments, the sampling control period calculation device of the self-balancing robot further includes an interval cumulative energy functional acquisition module, used for:
[0037] A first time weight parameter is constructed based on the difference between the end sampling time and any interval time, and a second time weight parameter is constructed based on the difference between any interval time and the start sampling time;
[0038] The system state of the self-balancing robot is obtained for each interval between any interval time and the initial sampling time, and the system state for each interval time is integrated to obtain the first accumulated energy information accumulated over multiple interval times.
[0039] The system state of the self-balancing robot is obtained for each interval between the end sampling time and any interval time, and the system state for each interval time is integrated to obtain the second accumulated energy information accumulated over multiple interval times.
[0040] An interval cumulative energy functional is constructed based on the difference between the product of the first time weight parameter and the first cumulative energy information, and the product of the second time weight parameter and the second cumulative energy information.
[0041] In some embodiments, the computing module is further configured to:
[0042] Construct the state vector of the self-balancing robot, the state vector including the displacement, velocity, tilt angle, tilt angular velocity, turning angle and turning angular velocity of the self-balancing robot;
[0043] Based on the dynamic model, a differential equation for the evolution of the state vector over time is established to obtain the dynamic description information of the self-balancing robot.
[0044] Based on the motor control input information, determine the control voltage description information output by the multi-loop digital controller at the sampling time;
[0045] By combining the control voltage description information and the dynamic description information, the sampling control description information of the self-balancing robot for any interval time within the preset sampling interval is calculated.
[0046] In some implementations, the analysis module is further configured to:
[0047] Determine the lower and upper bounds of the preset period of the self-balancing robot, and determine the current candidate sampling period based on the lower and upper bounds of the preset period;
[0048] Based on the sampling control description information and the current candidate sampling period, the cyclic energy constraint information is calculated to obtain the calculation result;
[0049] When the calculation result indicates that the cyclic energy constraint information has a feasible solution, the lower bound of the preset period is updated based on the candidate sampling period to obtain the next lower bound of the preset period, and the next sampling interval is constructed based on the upper bound of the preset period and the next lower bound of the preset period. Alternatively, when the calculation result indicates that the cyclic energy constraint information does not have a feasible solution, the upper bound of the preset period is updated based on the candidate sampling period to obtain the next upper bound of the preset period, and the next sampling interval is constructed based on the upper bound of the next preset period and the lower bound of the preset period, and the next sampling interval is updated based on the next upper bound of the next preset period and the next lower bound of the preset period contained in the next sampling interval.
[0050] The step of updating the next sampling interval based on the next preset period upper bound and the next preset period lower bound contained in the next sampling interval is repeated until the difference between the next preset period upper bound and the next preset period lower bound is less than or equal to the preset search accuracy threshold. The corresponding next sampling interval is then determined as the target sampling interval, and the sampling control cycle corresponding to the self-balancing robot is calculated based on the next preset period upper bound and the next preset period lower bound contained in the target sampling interval.
[0051] Accordingly, a third aspect of the embodiments of this application proposes a computer device, which includes a memory and a processor. The memory stores a computer program, and the processor executes the computer program to implement the sampling control cycle calculation method for a self-balancing robot according to any one of the embodiments of the first aspect of this application.
[0052] Accordingly, a fourth aspect of the embodiments of this application proposes a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the sampling control cycle calculation method for a self-balancing robot according to any one of the embodiments of the first aspect of this application.
[0053] This application embodiment obtains the dynamic model and motor control input information of a self-balancing robot; based on the dynamic model and motor control input information, it calculates the sampling control description information of the self-balancing robot for any interval time within a preset sampling interval, wherein the preset sampling interval includes the initial sampling time, multiple interval times, and the final sampling time; it obtains the instantaneous energy functional, cyclic correlation energy functional, and interval cumulative energy functional of the self-balancing robot at any interval time, and constructs cyclic energy constraint information based on the instantaneous energy functional, cyclic correlation energy functional, and interval cumulative energy functional; wherein the instantaneous energy functional is constructed based on the target system state of the self-balancing robot at any interval time; wherein the cyclic correlation... The energy functional is constructed based on the correlation between the target system state at any given time interval and the initial system state at the initial sampling time, as well as the final system state at the final sampling time. The value of the cyclic correlation energy functional at the initial sampling time is equal to its value at the final sampling time. The interval cumulative energy functional is constructed based on the difference between the first integral path energy between any given time interval and the initial sampling time, and the second integral path energy between any given time interval and the final sampling time. The value of the interval cumulative energy functional at the initial sampling time is equal to its value at the final sampling time. By combining the sampling control description information with negative qualitative analysis of the cyclic energy constraint information, the sampling control period corresponding to the self-balancing robot is calculated. In this way, by accurately constructing the energy evolution relationship adapted to the sampling characteristics, the maximum permissible sampling control period in the steady state of the system can be quantitatively calculated. Specifically, compared to the conservatism of background technologies that rely on manual experience to set fixed small periods, this application relaxes the restriction that the energy function must continuously decrease by constructing an energy functional that satisfies cyclic constraints. Combined with negative qualitative analysis using sampling control description information, it can significantly increase the allowable upper limit of the sampling period while ensuring system stability, avoiding the waste of communication and computing resources caused by excessively high sampling frequencies. In summary, this application, through the calculated maximum allowable sampling control period, can save communication and computing resources while ensuring stable system operation. Attached Figure Description
[0054] Figure 1 This is a flowchart of the sampling control cycle calculation method for the self-balancing robot provided in the embodiments of this application;
[0055] Figure 2 This is an example table of parameters for a self-balancing robot model provided in the embodiments of this application;
[0056] Figure 3 This is an example diagram showing the maximum allowable upper bound for different parameters provided in the embodiments of this application;
[0057] Figure 4This is a tilt angle curve diagram of the two-wheeled self-balancing robot provided in the embodiments of this application;
[0058] Figure 5 This is a state response curve diagram of a two-wheeled self-balancing robot provided in an embodiment of this application;
[0059] Figure 6 This is a schematic diagram of the functional modules of the sampling control cycle calculation device for the self-balancing robot provided in the embodiments of this application;
[0060] Figure 7 This is a schematic diagram of the hardware structure of the computer device provided in the embodiments of this application. Detailed Implementation
[0061] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.
[0062] It should be noted that although functional modules are divided in the device schematic diagram and a logical order is shown in the flowchart, in some cases, the steps shown or described may be performed in a different order than the module division in the device or the order in the flowchart. The terms "first," "second," etc., in the specification, claims, and the aforementioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence.
[0063] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. The terminology used herein is for the purpose of describing embodiments of this application only and is not intended to limit this application.
[0064] A two-wheeled self-balancing robot is a wheeled mobile robot consisting of a body and two coaxially arranged drive wheels. It is a typical nonlinear underactuated system, and its dynamic stability depends on the real-time response and adjustment of the controller to sensor signals.
[0065] Since communication resources between sensors and controllers are limited in practical industrial applications, it is necessary to introduce a sampling control mechanism between the controller and the sensor to reduce communication load and computational overhead through discretized signal acquisition and processing.
[0066] In related technologies, the sampling period is typically set manually based on experience. Specifically, designers usually set a small, fixed sampling period to ensure that the controller can still respond promptly under dynamic conditions without losing stability margin. However, this approach selects an overly conservative sampling period, resulting in a sampling frequency that is much higher than the actual requirement under most normal operating conditions, leading to a waste of communication and computing resources.
[0067] Based on this, the embodiments of this application provide a sampling control cycle calculation method and related equipment for a self-balancing robot, which can save communication and computing resources while ensuring stable system operation by calculating the maximum permissible sampling control cycle.
[0068] The sampling control cycle calculation method and related equipment for the self-balancing robot provided in this application are specifically described through the following embodiments. First, the self-balancing robot in the embodiments of this application is described.
[0069] In some implementations, the self-balancing robot can specifically be a two-wheeled self-balancing robot, which is an independent mechatronic system integrating perception, decision-making, and execution functions. The core hardware of the self-balancing robot includes a vehicle body, two drive wheels, a DC geared motor, attitude sensors (such as gyroscopes and accelerometers), an encoder, and an embedded controller (such as an MCU or DSP). The entire control loop of the system is closed-loop on the robot body: the sensors collect physical quantities such as tilt angle, angular velocity, wheel speed, and steering angle in real time; the embedded controller runs a preset control algorithm and directly outputs PWM signals to drive the motor, thereby autonomously maintaining balance and executing motion commands.
[0070] Furthermore, the self-balancing robot can employ a deeply coupled multi-loop digital PID control architecture. Specifically, the velocity loop PI controller, as the inner loop, adjusts according to the deviation between the desired and actual speeds, and its output provides a reference for the angle loop; the angle loop PD controller, as the intermediate layer, performs secondary corrections to the robot's posture based on the tilt angle deviation and its angular velocity, ensuring the robot's upright balance; and the steering loop PD controller, as the outer loop, achieves heading control based on the steering angle deviation. These three control loops are implemented digitally in the embedded controller, working together to form a complete closed-loop negative feedback system, ensuring the robot can recover and maintain stability under various disturbances.
[0071] In some implementations, to minimize the sampling frequency and reduce computational burden and power consumption while ensuring system stability, this application introduces an aperiodic sampling control strategy. Specifically, this application can quantitatively calculate the maximum sampling interval of the system under given PID parameters by solving linear matrix inequalities based on energy functions and cyclic functionals. In this way, while ensuring the dynamic stability of the robot under various working conditions, it can fully leverage the advantages of sampling control technology in reducing processor load and energy consumption, thereby enabling the self-balancing robot to achieve more efficient and reliable autonomous operation at the physical level.
[0072] The method for calculating the sampling control cycle of the self-balancing robot in this application embodiment can be illustrated through the following examples.
[0073] It should be noted that in all specific embodiments of this application, when processing data related to user identity or characteristics, such as user information, user behavior data, user historical data, and user location information, user permission or consent will be obtained first. Furthermore, the collection, use, and processing of this data will comply with relevant laws, regulations, and standards. In addition, when embodiments of this application require access to sensitive personal information of users, separate permission or consent from the user will be obtained through pop-ups or redirects to confirmation pages. Only after obtaining the user's separate permission or consent will the necessary user-related data for the normal operation of the embodiments of this application be obtained.
[0074] In this embodiment, the description will focus on the sampling control cycle calculation device of the self-balancing robot, which can be integrated into a computer device. See [link to relevant documentation]. Figure 1 , Figure 1 This is a flowchart illustrating the steps of a sampling control cycle calculation method for a self-balancing robot provided in this application embodiment. Taking the integration of the sampling control cycle calculation device for the self-balancing robot into a terminal or server as an example, the specific process when the processor on the terminal or server executes the program instructions corresponding to the sampling control cycle calculation method for the self-balancing robot is as follows:
[0075] Step 101: Obtain the dynamic model and motor control input information of the self-balancing robot.
[0076] In some implementations, to construct a closed-loop state-space expression for a two-wheeled self-balancing robot system suitable for non-periodic sampling control scenarios, thereby providing an accurate dynamic description of the system for subsequent stability analysis based on energy functions, the output of a multi-loop digital PID controller can be used as the control input and deeply integrated with the robot's body dynamics model established based on the Lagrange method. This results in the construction of a digital closed-loop state-space equation containing the system matrix, input matrix, and controller gain matrix. This unifies the continuous dynamic characteristics of the physical system with the discrete sampling characteristics of the digital controller within the same analytical framework, thus laying a model foundation for accurately evaluating the stability of the system under a given sampling period.
[0077] A self-balancing robot can be a two-wheeled mobile platform with nonlinear, underactuated characteristics, which maintains its dynamic balance by actively controlling the movement of its two coaxial wheels. For example, it can consist of an inverted pendulum-shaped body and two independently driven wheels on the left and right, used to achieve tasks such as stable walking, steering, and attitude maintenance in complex environments.
[0078] The dynamic model can be a set of mathematical equations based on the Lagrange method or the Newton-Euler method, used to describe the nonlinear coupling relationship between state variables such as robot body displacement, velocity, tilt angle, tilt angle angular velocity, steering angle and steering angular velocity. It can be used to accurately characterize the motion law of the robot under the action of motor driving force.
[0079] Among them, the motor control input information can be a digital voltage control quantity used to drive the left and right wheel motors, which is calculated in real time by the multi-loop digital PID controller based on the feedback signal at the current sampling time. For example, the input voltage value of the left and right wheel motors is formed by the fusion of the desired speed adjustment signal output by the speed loop PI controller, the balance maintenance signal output by the angle loop PD controller, and the steering adjustment signal output by the steering loop PD controller. This is used to convert the controller's decision command into the physical action of the actuator.
[0080] In some implementations, a dynamic model can be constructed to accurately describe the physical motion of a two-wheeled self-balancing robot. First, reasonable assumptions can be made based on the robot's structural characteristics: the robot's components are considered rigid structures, and elastic deformation is ignored; it is assumed that there are no external disturbance forces; the friction between the robot body and the wheels is ignored; and there is no sliding friction between the wheels and the ground. Based on these assumptions, a dynamic model is established using the Lagrange method.
[0081] In some implementations, the dynamic model can be determined by the following set of equations:
[0082] in, This represents the total mass of the self-balancing robot. This represents the distance between the robot's center of gravity and the wheel axle. Indicates the tilt angle of the robot body. Represents gravitational acceleration. This is the actual steering angle. , The masses of the left and right wheels are respectively. For the wheel radius, The distance between the center points of the left and right wheel axles. For the displacement of the self-balancing robot body, The torque coefficients of the left and right wheel motors are... , These are the input voltages for the left and right wheel motors, respectively. The back electromotive force coefficients of the left and right wheel motors are... For the armature resistance of the left and right wheel motors, , The robot body is surrounded by shaft and Moment of inertia of the shaft.
[0083] Specifically, the above system of equations will be introduced from top to bottom. The first equation (that is...) The second equation (i.e.) describes the dynamic relationship of the robot under left-wheel drive. The third equation (i.e.) describes the dynamic relationship of the robot under right-wheel drive. These three equations describe the pitch motion balance of the robot body. They are coupled together to form a complete dynamic model of the two-wheeled self-balancing robot. This dynamic model allows the robot's mechanical motion parameters (such as mass, moment of inertia, and geometric dimensions) and electrical parameters (such as motor torque coefficient and back electromotive force coefficient) to be unified within a mathematical framework, providing a foundation for subsequent control system design.
[0084] In some implementations, to achieve closed-loop control of the self-balancing robot, the motor control voltage information output by the digital PID controller can be obtained. Specifically, for the multi-loop control requirements of a two-wheeled self-balancing robot, a three-layer coupled digital PID control architecture consisting of a speed loop, an angle loop, and a steering loop can be adopted. For example, the motor control input information can be determined in the following way:
[0085] First, the speed loop employs a PI controller, which adjusts based on the deviation between the desired and actual speeds. In some implementations, the output of the speed loop PI controller can be determined in the following way:
[0086] ;
[0087] in Indicates the speed ring proportionality coefficient, This represents the integral coefficient of the velocity loop. Indicates the desired speed. This indicates the actual speed. Specifically, the actual speed... It can be obtained from the wheel speed. ,in, For the wheel radius, , These are the rotational angular velocities of the left and right wheels, respectively. (The output of the speed loop...) Provides an adjustment reference for the tilt angle expectation value of the angle ring.
[0088] Secondly, the angle loop uses a PD controller, which outputs based on the speed loop. Deviation from actual tilt angle and tilt angle and angular velocity Adjust and output control signal In some implementations, the output of the angle loop PD controller can be determined in the following way:
[0089] ;
[0090] in , These are the proportional and differential coefficients of the angle ring, respectively.
[0091] Furthermore, the steering ring employs a PD controller, based on the desired steering angle. Compared with actual steering angle Deviation and steering angular velocity Perform proportional-derivative adjustment and output control signal. In some implementations, the output of the steering ring PD controller can be determined in the following way:
[0092] ;
[0093] in, , These are the proportional and differential coefficients of the steering ring, respectively.
[0094] Based on the control function of the three control loops, the output signal of the PID controller, i.e., the motor control input information of the left and right wheel motors, can be calculated:
[0095]
[0096] in, and These are the gain matrices for the left and right wheel motors, respectively, and can be specifically represented as:
[0097] ;
[0098] ;
[0099] and and The compensation term related to the expected value can be expressed as:
[0100] ;
[0101] ;
[0102] Specifically, the system state vector can be defined as: ;
[0103] Based on the above expression, the control quantity of the angle loop is... As a common drive signal for both left and right wheels, the steering ring controls balance and speed. The steering is achieved by superimposing differentials.
[0104] By using the above methods, a unified system model that integrates physical ontological characteristics and digital control strategies can be obtained. This allows complex nonlinear physical systems to be accurately transformed into digital state-space expressions suitable for stability analysis, thus providing a precise and reliable foundation for the dynamic description of the system in subsequent steps, such as constructing energy functions and deriving low-conservatism sampling-dependent criteria.
[0105] Step 102: Based on the dynamic model and motor control input information, calculate the sampling control description information of the self-balancing robot for any interval time contained in the preset sampling interval, wherein the preset sampling interval includes the starting sampling time, multiple interval times and the ending sampling time.
[0106] In some implementations, in order to unify the continuous dynamic behavior of the physical system with the discrete sampled output of the digital controller within an analyzable framework, a state-space expression describing the state evolution of the system between adjacent sampling times can be constructed by fusing the dynamic model with the motor control input information based on an aperiodic sampling control strategy. This accurately characterizes the dynamic response of the system under digital control and provides an accurate system model foundation for the subsequent construction of the energy function and the derivation of the sample-dependent stability criterion.
[0107] The preset sampling interval can be a predefined time interval defined by two adjacent sampling times.
[0108] Among them, the sampling control description information can be a closed-loop state-space equation calculated based on the dynamic model and motor control input information, which is used to characterize the change law of the system state of the self-balancing robot at any time within the preset sampling interval.
[0109] In some implementations, a state vector is constructed, including robot displacement, velocity, tilt angle, tilt angle angular velocity, steering angle, and steering angular velocity, to fully characterize the system's motion state. Next, based on a dynamic model established using the Lagrange method, the differential equations governing the evolution of the state vector over time are derived, yielding the system's dynamic description information. Then, based on the motor control voltage output by the multi-loop digital PID controller at the sampling time, the control voltage description information is determined. Finally, the control voltage description information is used as input and combined with the dynamic description information to construct a closed-loop state-space expression that reflects the state evolution of the system between adjacent sampling times under aperiodic sampling control, serving as the sampling control description information.
[0110] In some implementations, to construct a state vector that fully describes the dynamic behavior of a two-wheeled self-balancing robot, it is necessary to select a set of minimal independent variables that uniquely determine the system's motion state. Specifically, the state vector can be defined as a column vector containing the robot's displacement, velocity, tilt angle, tilt angular velocity, steering angle, and steering angular velocity. In some implementations, the state vector can be constructed in the following way:
[0111] ;
[0112] in, It is a sub-vector containing variables such as steering angular velocity and tilt angular velocity. This is the integral term for displacement, used to incorporate position-related state information.
[0113] Furthermore, based on the acquired dynamic model, an aperiodic sampling control strategy can be considered, using the input voltages of the left and right wheel motors as the output of the digital PID controller, i.e. ,in The state-space expression of the closed-loop two-wheel self-balancing robot can be determined in the following way:
[0114] ;
[0115] Among them, sampling time satisfy and , For any natural number, The sampling period is and These are the lower and upper bounds of the sampling period, respectively. , , Given the system matrix, it can be specifically represented as:
[0116] ;
[0117] ;
[0118] ;
[0119] in, , ,
[0120] , , The parameters in the matrix are consistent with the physical parameters defined above. By substituting specific values, the system matrix for a specific robot can be obtained, which constitutes the dynamic description information of the system.
[0121] In some implementations, to determine the control voltage description information output by the multi-loop digital controller at the sampling time, the negative feedback output form of the PID controller can be determined. Based on the click control input information, the control voltage description information can be determined in the following ways:
[0122] ;
[0123] Where K is the controller gain matrix, , and These are the gain row vectors for the left and right wheel motors, respectively. For the external vector related to the expected value, , This expression reflects the process by which the controller calculates the control voltage based on the state feedback and expected value information at the current sampling moment.
[0124] In some implementations, to obtain sampled control description information that describes the dynamic behavior of the system at any given time interval, it is necessary to combine the aforementioned control voltage description information with the dynamic description information. First, the dynamic description information is transformed into standard state-space form, and an augmented matrix is defined:
[0125] ;
[0126] ;
[0127] ;
[0128] The dynamic equations of the system can then be expressed as:
[0129] ;
[0130] To eliminate external vectors The influence of this can be addressed by introducing coordinate transformation. Let the system equilibrium point be... satisfy Define new state variables Then, a simplified state-space expression for the closed-loop system can be obtained:
[0131] ;
[0132] in, A is the system matrix, B is the input matrix, and K is the controller gain matrix. This represents the system state. This expression is the desired sampled-sampling control description information, which describes the system state under aperiodic sampled-sampling control from the current sampling time. Until the next sampling time The expression describes the continuous evolution pattern between these states. When t takes any interval within the sampling interval, the expression gives the relationship between the rate of change of the state at that moment and the state at the current moment and the state at the previous sampling moment.
[0133] By using the above methods, a closed-loop sampling system model that integrates the dynamic characteristics of the physical system and the sampling characteristics of the digital controller can be obtained. This model can accurately express the coupling relationship between the discrete control input caused by aperiodic sampling and the continuous state evolution of the system, thereby providing an accurate and reliable dynamic description of the system for subsequent stability analysis based on energy functions and laying the model foundation for low-conservatism sampling period evaluation.
[0134] In some implementations, to unify the multi-loop digital PID control and physical dynamics of a two-wheeled self-balancing robot within a quantifiable mathematical framework, the robot's displacement, velocity, tilt angle, tilt angular velocity, steering angle, and steering angular velocity can be selected as state variables. A differential equation for the evolution of the state vector over time is derived from a dynamic model established using the Lagrange method. Simultaneously, control voltage description information is obtained by fusing the outputs of the velocity loop (PI), angle loop (PD), and steering loop (PD) controllers at the sampling time. This allows for the construction of a closed-loop state-space expression containing the system matrix, input matrix, and controller gain matrix, accurately characterizing the dynamic characteristics of the system under aperiodic sampling control at any given time interval. This provides an accurate mathematical model foundation for subsequent energy function construction and the derivation of low-conservatism stability criteria. For example, step 102 may include:
[0135] (102.1) Construct the state vector of the self-balancing robot. The state vector includes the displacement, velocity, tilt angle, tilt angle angular velocity, turning angle and turning angle velocity of the self-balancing robot.
[0136] (102.2) Based on the dynamic model, establish the differential equation of the state vector evolution over time to obtain the dynamic description information of the self-balancing robot;
[0137] (102.3) Based on the motor control input information, determine the control voltage description information output by the multi-loop digital controller at the sampling time;
[0138] (102.4) Combining the control voltage description information and the dynamic description information, calculate the sampling control description information of the self-balancing robot for any interval time contained in the preset sampling interval.
[0139] The state vector can be a set of minimal independent variables used to fully describe the dynamic behavior of a two-wheeled self-balancing robot. It can include six physical quantities of the self-balancing robot: displacement, velocity, tilt angle, tilt angle angular velocity, steering angle, and steering angular velocity.
[0140] Among them, the dynamic description information can be a set of differential equations established based on the Lagrange method or the Newton-Euler method to characterize the changes of each variable in the state vector over time, which can be used to describe the dynamic evolution of the robot body under the action of motor driving force.
[0141] The multi-loop digital controller can be a digital three-layer control structure consisting of a speed loop PI controller, an angle loop PD controller, and a steering loop PD controller. It can calculate and output control commands in real time based on the feedback signal at the sampling time. For example, the speed loop can output the desired adjustment amount based on the speed deviation, the angle loop can output the balance maintenance amount based on the tilt angle deviation, and the steering loop can output the steering adjustment amount based on the steering deviation. The three work together to achieve the stability and steering control of the self-balancing robot.
[0142] Among them, the control voltage description information can be the digital voltage signal used to drive the left and right wheel motors calculated by the multi-loop digital controller at the sampling time. For example, the input voltage value of the left and right wheel motors is generated by the linear combination of the speed loop, angle loop and steering loop control quantities. It can be used as the input of the actuator to transform the discrete decision of the controller into the continuous physical action of the system, so as to keep it constant in the sampling interval until the next sampling time is updated.
[0143] In some implementations, the state vector of a self-balancing robot can be constructed in the following way:
[0144] ;
[0145] in, It is a subvector containing variables such as steering angular velocity and tilt angular velocity, which can be specifically expanded as , Indicates the steering angular velocity. Indicates the tilt angle and angular velocity. The integral term representing displacement is used to construct the state vector, which fully includes key state variables such as steering angular velocity, tilt angular velocity, and displacement, providing a foundation for the subsequent establishment of state-space expressions.
[0146] In some implementations, to describe the evolution of the state vector over time, differential equations of the state vector can be established based on a dynamic model. Considering an aperiodic sampling control strategy, the input voltages of the left and right wheel motors can be used as the output of a digital PID controller, meaning the control input is updated at the sampling time and remains constant within the sampling interval.
[0147] In some implementations, the state-space representation of a two-wheeled self-balancing robot can be determined in the following way:
[0148] ;
[0149] Among them, sampling time satisfy and , For any natural number, The sampling period is and These are the lower and upper bounds of the sampling period, respectively. , , Given the system matrix, it can be specifically represented as:
[0150] ;
[0151] ;
[0152] ;
[0153] in, , , , , , , .
[0154] By transforming the above equations, the first-order differential equation form of the state vector can be obtained. In some implementations, the dynamic description information can be determined in the following way:
[0155] ;
[0156] in, , , ;
[0157] Understandably, matrix A describes the intrinsic evolution of the system state, while matrix BB describes the influence of the control input on the state changes. This differential equation constitutes the dynamic description information of the self-balancing robot, providing a mathematical model foundation for subsequent analysis of sampled control systems.
[0158] In some implementations, to incorporate the output of the digital PID controller into the system model, the control voltage description information output by the multi-loop digital controller at the sampling time can be determined. Based on the acquired motor control output information, the negative feedback structure of the PID controller is considered.
[0159] In some implementations, the control voltage description information at the sampling time can be determined in the following ways:
[0160]
[0161] in, For the controller gain matrix, and These are the gain matrices for the left and right wheel motors, respectively. The external vector is related to the desired value, containing feedforward compensation information such as integral terms for the desired speed and desired steering angle. This expression reflects the negative feedback characteristic of a digital PID controller: the control output is influenced by the state feedback term at the current sampling time. and external feedforward compensation terms This structure allows the controller to adjust the control input in real time based on the current system state, while also improving detection performance through feedforward compensation.
[0162] In some implementations, in order to obtain a closed-loop system model suitable for stability analysis, the dynamic description information can be combined with the control voltage description information to obtain the state evolution equation of the system at any time within the sampling interval, that is, to construct a closed-loop state-space expression that can reflect the characteristics of aperiodic sampling control.
[0163] First, the control voltage description information is substituted into the dynamic description information. In some implementations, the following can be obtained:
[0164] ;
[0165] This equation describes the system state during the sampling interval. , The continuous evolution law within: the rate of change of the state at the current moment. Depends on the current state The state at the previous sampling time This reflects the hybrid dynamic characteristics of the sampling control system—the system state evolves continuously, but the control input is only updated at the sampling time.
[0166] Furthermore, to simplify the analysis, external vectors can be eliminated. The influence of coordinate transformation. For example, the system equilibrium point can be found by introducing coordinate transformation. Let the system equilibrium point be... satisfy Define new state variables This represents the deviation of the system state from the equilibrium point. After transformation, we can obtain the state-space expression of the closed-loop system without external terms:
[0167] , ;
[0168] Where A is the system matrix, B is the input matrix, and K is the controller gain matrix. Let be the system state deviation vector. This expression represents the sampled control description information, which characterizes the state evolution of the two-wheeled self-balancing robot closed-loop system at any time within any sampling interval under an aperiodic sampled control strategy: the system dynamics are described by the free motion of the continuous system matrix A and the state feedback at the sampling time. The control effect described is jointly determined.
[0169] By using the above methods, complex nonlinear physical systems can be accurately transformed into closed-loop state-space models that include digital PID control characteristics. This allows for a clear expression of the coupling relationship between discrete control inputs caused by aperiodic sampling and the continuous state evolution of the system. Consequently, it provides an accurate and reliable dynamic description of the system for the subsequent construction of energy functions and the derivation of sample-dependent stability criteria, laying a solid model foundation for achieving low-conservatism allowable sampling period evaluation.
[0170] Step 103: Obtain the instantaneous energy functional, cyclic correlation energy functional, and interval cumulative energy functional of the self-balancing robot at any time interval, and construct cyclic energy constraint information based on the instantaneous energy functional, cyclic correlation energy functional, and interval cumulative energy functional.
[0171] Among them, the instantaneous energy functional is constructed based on the target system state of the self-balancing robot at any time interval;
[0172] The cyclic correlation energy functional is constructed based on the correlation between the target system state at any interval time and the initial system state at the initial sampling time, and the final system state at the final sampling time. The value of the cyclic correlation energy functional at the initial sampling time is equal to the value at the final sampling time.
[0173] The interval cumulative energy functional is constructed based on the difference between the first integral path energy between any interval time and the initial sampling time and the second integral path energy between any interval time and the final sampling time. The value of the interval cumulative energy functional at the initial sampling time is equal to the value at the final sampling time.
[0174] In some implementations, to overcome the conservative limitation that the traditional energy function must continuously decrease throughout the entire time domain under aperiodic sampling control, a composite cyclic energy function composed of an instantaneous energy functional, a cyclically correlated energy functional, and an interval cumulative energy functional can be constructed. By utilizing the characteristic that the values of the cyclically correlated energy functional and the interval cumulative energy functional are equal at adjacent sampling times, the system stability criterion can be relaxed from a strict instantaneous negative qualitative condition to an analysis of the overall energy decay trend within the sampling interval. This significantly reduces the conservatism of the stability criterion, thus laying a theoretical foundation for the subsequent derivation of a sampling-dependent criterion that can accurately capture the dynamic characteristics within the sampling interval.
[0175] The instantaneous energy functional can be a quadratic function constructed based on the system's state vector at a certain moment, which can be used to instantly measure the system's energy level at the current moment.
[0176] Among them, the cyclic correlation energy functional can be a functional constructed based on the augmented vector of the current state and the states at both ends of the sampling interval. Its value is equal at the start and end sampling times, which can be used to strengthen the temporal correlation of the system state within the sampling interval, thereby relaxing the strict constraint that the traditional energy function needs to continuously decrease.
[0177] Among them, the interval cumulative energy functional can be a single integral functional constructed based on the integration path from the current time to the two ends of the sampling interval. It can be constructed by the difference between the energy of the first integration path and the energy of the second integration path, and the values are equal at the ends of the sampling interval. It can be used to capture the energy accumulation change trend of the system in the entire sampling interval.
[0178] Among them, the cyclic energy constraint information can be a composite energy function composed of instantaneous energy functional, cyclic correlated energy functional and interval cumulative energy functional, which can be used to comprehensively characterize the energy evolution law of a two-wheeled self-balancing robot system under aperiodic sampling control.
[0179] The target system state can be the real-time state vector of the self-balancing robot at any time t within a preset sampling interval.
[0180] The initial system state can be the state vector of the self-balancing robot at the initial sampling time of the preset sampling interval.
[0181] The end-system state can be the state vector of the self-balancing robot at the end sampling time within a preset sampling interval.
[0182] The first integral path energy can be the cumulative integral of the system state along the time axis from the initial sampling time to the current interval time t.
[0183] The second integral path energy can be the cumulative integral of the system state along the time axis from the current interval time t to the end sampling time.
[0184] In some implementations, to analyze the stability of a two-wheeled self-balancing robot system under aperiodic sampling control, a composite energy function that characterizes the energy evolution trend of the system can be constructed. This composite energy function consists of three parts: an instantaneous energy functional, a cyclic correlation energy functional, and an interval cumulative energy functional, which respectively characterize the system's energy level at the current moment, the state correlation within the sampling interval, and the cumulative energy change within the interval.
[0185] Specifically, in any sampling interval At any time t within the range, obtain the instantaneous energy functional. Cyclic correlation energy functional and interval cumulative energy functional Among them, the cyclic correlation energy functional and interval cumulative energy functional The constraints are satisfied: ; This allows us to relax the traditional requirement that Lyapunov functions must continuously decrease throughout the entire time domain, effectively reducing the conservatism of the stability criterion and laying the foundation for the subsequent derivation of sample-dependent stability conditions.
[0186] Furthermore, by differentiating the three factors along the system state trajectory and then summing them, the composite energy function can be obtained. The composite energy function satisfies that the energy values are equal at adjacent sampling times, i.e. This relaxes the traditional restriction that Lyapunov functions must continuously decrease throughout the entire time domain, effectively reducing the conservatism of the stability criterion and laying the foundation for the subsequent derivation of sample-dependent stability conditions.
[0187] In some implementations, the sufficient conditions for the asymptotic stability of the system (i.e., ...) can be derived by combining integral inequalities based on free matrices and zero inequalities based on the system equations. This is transformed into a set of linear matrix inequalities. These linear matrix inequalities constitute the final cyclic energy constraint information, used to quantitatively evaluate the stability of the system under a given sampling period.
[0188] In some implementations, the instantaneous energy functional can be constructed based on the target system state of the self-balancing robot at the current moment, and is used to measure the system's energy level on an instantaneous basis. This functional can be determined in the following way:
[0189] ;
[0190] in, Let be the system state vector at the current time t (i.e., the target system state), which includes state variables such as displacement, velocity, tilt angle, tilt angular velocity, steering angle, and steering angular velocity; P is a positive definite symmetric matrix, which is the decision variable that needs to be solved using subsequent stability criteria. This quadratic form is the most commonly used energy function in Lyapunov stability analysis, and it can effectively reflect the degree to which the system state deviates from the equilibrium point.
[0191] In some implementations, the cyclic correlation energy functional can be constructed based on the correlation between the current target system state and the initial system state at the start of sampling and the final system state at the end of sampling, respectively, with values equal at the endpoints of the sampling interval. This functional can be determined in the following way:
[0192] ;
[0193] The relevant augmentation variables are defined as follows:
[0194] ;
[0195] ;
[0196] ;
[0197] ;
[0198] ;
[0199] and , Q, U, and M are arbitrary real matrices, and X is an arbitrary real symmetric matrix, all of which are decision variables to be solved. This functional introduces time weights. and This strengthens the correlation between the state at any time within the sampling interval and the states at both ends of the interval, and satisfies the condition that at the sampling time... and Place This demonstrates the cyclical nature of the energy function—it is reset at the sampling point and does not require continuous decrease within the interval.
[0200] In some implementations, the interval cumulative energy functional is constructed based on the difference between the first integral path energy between the current time and the starting sampling time, and the second integral path energy between the current time and the ending sampling time, and takes the same value at the endpoints of the sampling interval, i.e. The functional can be determined in the following way:
[0201] ;
[0202] in, and Let be a positive definite matrix, and be the decision variables to be solved; first integral path energy. Indicates from the start sampling time Weighted energy accumulation up to the current interval time t, second integral path energy This represents the time interval from the current time t to the last sampling time. Weighted energy accumulation. By introducing time weights. and The product and difference of these terms form a functional that can characterize the dynamic changes in energy accumulation within the sampling interval, and also satisfies the condition that at the sampling time... and Place This allows the energy function to fully utilize the state information within the sampling interval, thereby reducing the conservatism of the stability analysis.
[0203] By using the above methods, a composite energy function can be constructed that has equal energy values at the endpoints of the sampling interval and accurately describes the energy evolution within the interval. In this way, the analysis of system stability under aperiodic sampling control can be successfully relaxed from the traditional point-state constraint to the interval constraint. This provides a key theoretical tool for deriving a sampling-dependent stability criterion with lower conservatism, making the evaluated maximum allowable sampling period closer to the true stability boundary of the system.
[0204] In some implementations, to transform the stability analysis of the composite energy function into a mathematically solvable linear matrix inequality, the time derivatives of the instantaneous energy functional, the cyclically correlated energy functional, and the interval cumulative energy functional can be calculated separately and combined with the zero equality constructed based on the system equations to construct a unified expression that accurately characterizes the rate of change of the total energy of the system. This provides a direct mathematical basis for deriving the sample-dependent stability criterion through negative qualitative analysis. For example, step 103, "constructing cyclic energy constraint information based on the instantaneous energy functional, the cyclically correlated energy functional, and the interval cumulative energy functional," may include:
[0205] (103.1) Calculate the first derivative of the instantaneous energy functional, the second derivative of the cyclically correlated energy functional, and the third derivative of the interval cumulative energy functional;
[0206] (103.2) Based on the first derivative, the second derivative, the third derivative and the preset zero equation, determine the cyclic energy constraint information.
[0207] The first derivative can be the result of differentiating the instantaneous energy functional with respect to time t, and can be used to characterize the rate of change of the fundamental energy of the system at an instant.
[0208] The second derivative can be the derivative of the cyclic correlation energy functional with respect to time t. It can be used to quantify the rate of change of state correlation energy within the sampling interval, providing key information for capturing non-periodic sampling characteristics.
[0209] The third derivative can be the derivative of the interval cumulative energy functional with respect to time t, which can be used to characterize the rate of change of the energy accumulation process within the sampling interval.
[0210] Among them, the preset zero equation can be a mathematical expression that is always equal to zero after introducing any free matrix. It can be used to introduce the system equation as a constraint condition into the energy derivative analysis without changing the dynamic characteristics of the original system, thereby increasing the degree of freedom and flexibility of the stability criterion.
[0211] In some implementations, to analyze the changing trend of the composite energy function along the system state trajectory, it is necessary to calculate the derivatives of each component separately. First, for the instantaneous energy functional... Its derivative can be obtained by differentiating it with respect to time. Specifically, the first derivative can be determined in the following way:
[0212] ;
[0213] in, Let P be the system state vector at the current moment, and let P be a positive definite symmetric matrix. The time derivative of the state vector; An augmented vector containing the state at the current time, the start sampling time, and the end sampling time; The coefficient matrix is related to P and the system matrix, and its specific form can be obtained by expanding... And expressed as This is obtained by considering the derivative, which characterizes the rate of change of the system's instantaneous energy over the continuous time domain.
[0214] In some implementations, the cyclic correlation energy functional The derivative (second derivative) can be determined in the following way:
[0215] ;
[0216] Among them, each augmented vector , , , , and time weight parameters , The definition is the same as above; Q, U, M are arbitrary real matrices, and X is an arbitrary real symmetric matrix. By rearranging, we can... Represented in quadratic form:
[0217]
[0218] in, This is a coefficient matrix containing matrices Q, U, M, X, and the system dynamics. The derivative reflects the rate of change of state-related energy within the sampling interval and is a key term for capturing aperiodic sampling characteristics.
[0219] In some implementations, the interval cumulative energy functional The derivative (third derivative) contains the instantaneous term at the current moment and two integral terms. Its derivative can be determined as follows:
[0220] ;
[0221] in, , It is a positive definite matrix. , Integral term , Therefore, the third derivative can be further transformed into:
[0222]
[0223] in, From Extract The coefficient matrix. Integral terms. , .
[0224] In some implementations, to obtain an upper bound expression for the system's total energy derivative, the first, second, and third derivatives can be combined, and a zero equality based on the system equations can be introduced. Total Energy Derivative for:
[0225] ;
[0226] because It contains integral terms that are difficult to process directly. , This requires scaling the system using integral inequalities based on free matrices to obtain its upper bound. Simultaneously, to fully utilize the system's dynamic information, a zero equality constructed based on the system equations is introduced. , , , These zero equations are always equal to zero and can be added arbitrarily to the total derivative expression without changing its value. By reasonably selecting the free matrices in the zero equations, the conservatism of the stability criterion can be further reduced.
[0227] In some implementations, for the integral term and This can be estimated using integral inequalities based on free matrices. Specifically, there exists a free matrix... , Makes the following inequality true:
[0228] ;
[0229] in, , , , To and The relevant coefficient matrix, Substitute this estimate into From the expression, we can obtain:
[0230] ;
[0231] in, To and and , The relevant coefficient matrix. Therefore, the integral inequality can be transformed into a finite-dimensional matrix inequality.
[0232] In some implementations, the sampling control description information corresponding to the self-balancing robot can be used. Construct the following zero equation:
[0233] ;
[0234] ;
[0235] ;
[0236] ;
[0237] in , , Let be any real matrix. Let be the coefficient vector that is dynamically related to the system. Adding these zero equations to the total derivative, we get:
[0238]
[0239]
[0240] in, This is an additional term introduced by the zero equation. Definition = If If it is established, then The system is asymptotically stable.
[0241] In some implementations, in order to ensure For this to hold, it needs to be transformed into a numerically solvable linear matrix inequality. According to Schur's complement lemma, Equivalent to the following cyclic energy constraint information:
[0242]
[0243] in, for The part that does not contain integral inequalities. This matrix inequality is the final cyclic energy constraint information, which is a set of information about the decision variables P, Q, U, M, X. , , , , The linear matrix inequality. By solving this linear matrix inequality, the condition for a given sampling period can be determined. To determine if the system is stable, a binary search method is used to search for the maximum allowable sampling period.
[0244] In this way, the derivatives of the three energy functionals can be organically integrated with the system dynamic equations, thereby constructing a total energy change rate expression that includes both the physical dynamic characteristics of the system and the influence of sampling control. This provides a complete and accurate analytical foundation for subsequent scaling operations using integral inequalities and for deriving low-conservatism linear matrix inequality criteria.
[0245] In some implementations, to transform the derivative of the energy function containing complex integral terms into a numerically solvable linear matrix inequality, the integral term in the third derivative can be estimated using a free matrix-based integral inequality, yielding integral term estimation information, which in turn provides derivative adjustment information. This information is then combined with the first derivative, the second derivative, and a preset zero equality to obtain the integral scaling upper bound description information. Finally, by requiring this upper bound to be less than zero and applying Schur's complement lemma, cyclic energy constraint information is derived. This transforms the system stability conditions into a set of linear matrix inequalities that can be directly solved numerically, thus providing a mathematical basis for subsequent quantitative calculation of the maximum permissible sampling period. For example, (103.2) may include:
[0246] (103.2.1) Obtain the integral term of the third derivative, and use the integral inequality based on the free matrix to perform a scaling estimate of the integral term to obtain the integral term estimate information, wherein the integral term is less than or equal to the integral term estimate information;
[0247] (103.2.2) Adjust the third derivative based on the integral term estimation information to obtain derivative adjustment information, wherein the third derivative is less than or equal to the derivative adjustment information;
[0248] (103.2.3) The integral scaling upper bound description information is obtained by merging the first derivative, the second derivative, the derivative adjustment information and the preset zero equation. The integral scaling upper bound description information is greater than or equal to the total energy change rate description information of the self-balancing robot in the preset sampling interval. The total energy change description information is calculated based on the sum of the first derivative, the second derivative, the third derivative and the preset zero equation.
[0249] (103.2.4) Based on the relationship between the integral scaling upper bound description information and the preset zero value, the target upper bound description information is constructed, and the target upper bound description information is processed by the supplementary lemma to obtain the cyclic energy constraint information.
[0250] The integral term can be a definite integral expression that appears in the third derivative and is difficult to handle directly, such as those contained in the third derivative. and It can be used to characterize the cumulative energy change of the system state within the sampling interval, but its direct processing will bring about infinite-dimensional problems, and scaling estimation is required.
[0251] The integral term estimation information can be a quadratic upper bound expression composed of the current state and the sampled state, obtained by scaling the integral term using the integral inequality based on the free matrix. This expression can be used to transform the integral term into a finite-dimensional matrix inequality form, thereby simplifying subsequent analysis.
[0252] The derivative adjustment information can be a new derivative expression obtained by replacing the integral term with the corresponding integral term estimation information based on the original third derivative. This new derivative expression can be used as an upper bound of the original third derivative to ensure that the inequality direction of the subsequent scaling analysis is correct.
[0253] The description information of the integral scaling upper bound can be the upper bound expression of the total energy change rate obtained by combining the first derivative, the second derivative, the derivative adjustment information and the preset zero equation. It can be used as a conservative estimate of the original total energy change rate, and the system stability is ensured by requiring the upper bound to be negative.
[0254] The description of the total energy change can be a precise expression of the original total energy change rate obtained by summing the first derivative, the second derivative, the third derivative, and a preset zero equation.
[0255] The target upper bound description information can be a matrix inequality condition derived under the condition that the integral scaling upper bound description information is less than zero. It can be used as a sufficient condition for the asymptotic stability of the system. It needs to be transformed into a linear matrix inequality through Schur's complement lemma.
[0256] In some implementations, the third derivative can take the following form:
[0257] ;
[0258] in, , It is a positive definite weighted matrix. , Integral term , representing the cumulative negative energy from the initial sampling time to the current time; integral term This represents the cumulative negative energy from the current time to the final sampling time. Because these two integral terms involve past and future state information, they cannot be directly used for matrix inequality analysis and require scaling.
[0259] In some implementations, in order to integrate the term and Scaling the equation to a more tractable form, we use an integral inequality based on free matrices for estimation. This inequality, by introducing free matrices, provides a tight upper bound on the integral terms. Specifically, there exists a free matrix... and This makes the following inequality hold:
[0260] ;
[0261] Therefore, the third derivative can be further transformed into:
[0262]
[0263] in, From Extract The coefficient matrix. Integral terms. , .
[0264] In some implementations, to obtain an upper bound expression for the system's total energy derivative, the first, second, and third derivatives can be combined, and a zero equality based on the system equations can be introduced. Total Energy Derivative for:
[0265] ;
[0266] because It contains integral terms that are difficult to process directly. , This requires scaling the system using integral inequalities based on free matrices to obtain its upper bound. Simultaneously, to fully utilize the system's dynamic information, a zero equality constructed based on the system equations is introduced. , , , These zero equations are always equal to zero and can be added arbitrarily to the total derivative expression without changing its value. By reasonably selecting the free matrices in the zero equations, the conservatism of the stability criterion can be further reduced.
[0267] In some implementations, for the integral term and This can be estimated using integral inequalities based on free matrices. Specifically, there exists a free matrix... , Makes the following inequality true:
[0268] ;
[0269] in, , , , To and The relevant known coefficient matrix is used to extract state information from the integral term; Let represent the sum of the matrix and its transpose. The right-hand side of this inequality is the estimated information of the integral term, which is the upper bound formed by the quadratic form of the current time and the state of the sampling point, and since , Positive definiteness ensures the feasibility of scaling. This is achieved by selecting an appropriate free matrix. , This allows the upper bound to be as tight as possible, thereby reducing the conservatism of the stability analysis.
[0270] In some implementations, substituting the integral term estimation information into the expression for the third derivative yields the upper bound of the third derivative, i.e., the derivative adjustment information. Specifically, replacing the right-hand side of the above inequality with the original expression... We can obtain:
[0271] ;
[0272] in, It is by The coefficient matrix obtained by rearranging the terms can be represented as follows: .and satisfy This inequality shows that the third derivative is no greater than the quadratic form on the right-hand side, meaning the derivative adjustment information is an upper bound of the original third derivative. In this way, the difficult-to-handle integral terms are transformed into an analytically expressible matrix form, laying the foundation for subsequent merging of the total derivatives.
[0273] In some implementations, to obtain an upper bound on the rate of change of the system's total energy, it is necessary to combine the first derivative, the second derivative, derivative adjustment information, and the zero equation constructed based on the system equations. First, the first derivative... Second derivative The specific form has been given in the steps above, namely:
[0274]
[0275]
[0276] Secondly, in order to make full use of the system's dynamic information, we can use the sampled control description information corresponding to the self-balancing robot. Construct the following zero equation:
[0277] ;
[0278] ;
[0279] ;
[0280] ;
[0281] in , , Let be any real matrix. These zero equations are based on known vectors related to the system matrices A, B, K and the states, and are derived from the system control description information. Their variants are always equal to zero. Adding them to the overall derivative expression does not change their values, but it increases the flexibility of the degrees of freedom and helps to reduce conservatism.
[0282] Furthermore, the first derivative Second derivative By adjusting the derivative information and summing the four zero equations, we can obtain the upper bound of the total energy change rate:
[0283]
[0284] ;
[0285] in, The additional term introduced by the zero equation, specifically in the form of... and Decide. This is the description information of the upper bound of the integral scaling, denoted as... ,in, = .
[0286] It should be noted that the actual total energy change rate It equals the sum of the first, second, and third derivatives and the zero equation (the zero equation is zero), therefore it is less than or equal to this upper bound, that is, the upper bound of the integral scaling describes an upper bound of the true rate of change.
[0287] In some implementations, to ensure asymptotic stability of the system, it is necessary to ensure the total energy change rate. Strictly decreasing over time, that is This holds true for all t. Since Less than or equal to Therefore, if the upper realm can be made <0 for all non-zero If it is established, then there must be Therefore, the upper bound description information of the target is constructed as a requirement matrix. Negative definite, that is, for and , ,in, This is the current sampling period. This condition is related to a decision variable (such as P, Q, U, M, X, ...). , , , , Matrix inequalities (etc.), but containing nonlinear terms. and It cannot be solved directly and needs to be further transformed into a linear matrix inequality form.
[0288] In some implementations, Schur's complement lemma is used to eliminate nonlinear terms in matrix inequalities. This is transformed into an equivalent linear matrix inequality. Specifically, Equivalent to:
[0289]
[0290] in, for The part that does not contain integral inequality terms. This matrix inequality is a linear matrix inequality in terms of the decision variables because all terms are linear combinations of the decision variables. and (This is a known scalar). This is the final cyclic energy constraint information. By solving this linear matrix inequality, it can be determined that within a given sampling period... Does a feasible solution exist? If positive definite matrices P and Q, U, M, X exist, , , , , If the above inequality holds, then the system in the sampling period If the condition is asymptotically stable, then it is asymptotically stable; otherwise, it is unstable.
[0291] By using the above methods, the complex integral-differential energy constraints can be transformed into a set of finite-dimensional linear matrix inequalities. This allows the stability criterion to be transformed into a mathematical form that can be efficiently solved by a computer, while ensuring that the analysis results are relatively conservative. This provides a directly usable numerical tool for the subsequent accurate calculation of the maximum allowable sampling period of the system using the bisection method.
[0292] In some implementations, to construct an energy function that accurately captures the state correlation characteristics within the sampling interval and satisfies endpoint equivalence constraints under aperiodic sampling control, various augmented vectors can be constructed based on the state difference between the current time and the two endpoints of the sampling interval. Weight parameters related to time position are introduced, thereby constructing a cyclic correlation energy functional composed of a linear combination of multiple correlation terms. This tightly correlates the system state at any time within the sampling interval with the states at the two endpoints of the interval, thus providing a basic functional that fully utilizes sampling information for subsequent energy derivative analysis and derivation of low-conservatism stability criteria. For example, the cyclic correlation energy functional can be obtained in the following ways:
[0293] (A.1) Construct a first augmented vector based on the first state difference between the target system state at any interval and the initial system state at the initial sampling time, and construct a second augmented vector based on the second state difference between the final system state at the final sampling time and the target system state;
[0294] (A.2) Construct a first time weight parameter based on the difference between the end sampling time and any interval time, and construct a second time weight parameter based on the difference between any interval time and the start sampling time. Construct a third augmented vector based on the product of the first time weight parameter and the first state difference, and the product of the second time weight parameter and the second state difference.
[0295] (A.3) Based on the initial system state and the final system state, construct the fourth augmented vector, and based on the difference between the first state and the difference between the second state, construct the fifth augmented vector;
[0296] (A.4) Based on the third augmented vector and the fifth augmented vector, construct the first association term; based on the third augmented vector and the fourth augmented vector, construct the second association term; based on the first augmented vector and the second augmented vector, construct the third association term; based on the first time weight parameter, the second time weight parameter and the fourth augmented vector, construct the fourth association term.
[0297] (A.5) Combining the first, second, third and fourth correlation terms, construct a cyclic correlation energy functional to characterize the correlation between any time interval and the state within a preset sampling interval.
[0298] The first augmented vector can be the target system state at any time interval. Initial system state at the start of sampling The extended column vector formed by these elements can be used to establish a direct relationship between the current state and the state at the beginning of the sampling interval in a cyclic functional. For example, it could be: .
[0299] The second augmented vector can be derived from the end-of-system state at the end-of-sampling time. The target system state at any given time interval The extended column vector formed by these elements can be used to establish a direct relationship between the current state and the state at the end of the sampling interval in a cyclic functional. For example, it could be: .
[0300] The first time weight parameter can be based on the last sampling time. A scalar function constructed from the time difference between the current time and the current time interval t can be used to quantify the distance of the current time from the end of the sampling interval, and in cyclic functionals, it is used to weight and adjust the contributions of different time positions. For example, it can be expressed as: .
[0301] The second time weight parameter can be based on the current interval time t and the starting sampling time. A scalar function constructed from the time difference between the two points can be used to quantify how close the current moment is to the start of the sampling interval. For example, it can be expressed as: .
[0302] The third augmented vector can be derived from the first time weight parameters. Difference from the first state The product of and the second time weight parameter Difference from the second state The extended column vector formed by the products of these elements can be used to introduce state change information related to time weights into the cyclic functional, strengthening the dynamic correlation of state evolution within the sampling interval. For example, it can be represented as:
[0303] ;
[0304] The fourth augmented vector can be based on the initial system state. With end system status The constructed extended column vector is used to establish a direct correlation between the states at the two endpoints of the sampling interval in the cyclic functional. For example, it could be:
[0305] ;
[0306] The fifth augmented vector can be based on the first state difference. Difference from the second state The constructed extended column vector can be used to incorporate information about the changes in the states at the current time step and the two endpoints into the cyclic functional. For example, it can be represented as:
[0307] ;
[0308] Among them, the first correlation term can be a quadratic form expression constructed by introducing a free matrix based on the third and fifth augmented vectors, which can be used to characterize the cross-coupling relationship between time-weighted state changes and original state changes.
[0309] The second correlation term can be a quadratic expression constructed by introducing a free matrix based on the third and fourth augmented vectors, which can be used to establish the correlation between time-weighted state changes and the endpoint states of the sampling interval.
[0310] The third association term can be a quadratic expression constructed by introducing a free matrix based on the first augmented vector and the second augmented vector. It can be used to directly establish the association between the current state and the states at both ends of the sampling interval.
[0311] Among them, the fourth correlation term can be a quadratic expression constructed by introducing a symmetric matrix based on the first time weight parameter, the second time weight parameter and the fourth augmented vector. It can be used to introduce endpoint state combination terms related to time weights, further enriching the expressive power of the cyclic functional.
[0312] In some implementations, to combine the augmented vectors into an energy functional, multiple correlation terms can be constructed, each coupling different augmented vectors by introducing a free matrix. Specifically, based on the third augmented vector... and the fifth augmented vector Construct the first association term, based on the third augmented vector. and the fourth augmented vector Construct the second association term based on the first augmented vector. Second augmented vector Construct a third association term based on the first time weight parameter. Second time weighting parameter and the fourth augmented vector Construct the fourth association. In some implementations, these associations can be determined in the following way:
[0313] First related item: ;
[0314] First related item: ;
[0315] Third related item: ;
[0316] Fourth related item: ;
[0317] Here, Q, U, and M are arbitrary real matrices, and X is an arbitrary real symmetric matrix, all of which are decision variables to be solved. The first correlation term couples the time-weighted state change with the original state change; the second correlation term couples the time-weighted state change with the endpoint states; the third correlation term directly couples the difference between the current state and the two endpoints; and the fourth correlation term applies a quadratic weight to the endpoint states through the product of time weights. These correlation terms together constitute the core of the cyclic correlation energy functional, which can flexibly capture various correlations between states within the sampling interval.
[0318] In some implementations, summing the four correlation terms yields the cyclic correlation energy functional characterizing the relationship between any given time interval and the state within a preset sampling interval. In some implementations, the cyclic correlation energy functional can be determined in the following ways:
[0319] ;
[0320] This functional has two properties: First, it satisfies the following at the endpoints of the sampling interval: This is because when hour =0, and after substituting into each augmented vector, all values are 0. Although not zero, multiplied by M and then... =0 coupling, so the third term is 0); similarly, hour =0, and all terms are also zero. Second, by introducing time weights and a free matrix, this functional can flexibly describe the dynamic relationship between the state and the endpoint state at any time within the sampling interval, thus providing a low-conservatism energy function for subsequent stability analysis.
[0321] In this way, a cyclic correlated energy functional composed of multiple augmented vectors and correlation terms can be constructed. This allows for the tight coupling of the system state at any time within the sampling interval with the states at the two endpoints of the interval in a time-weighted manner. At the same time, it ensures the cyclic property that the functional takes equal values at the endpoints of the sampling interval. This provides a mathematical tool for subsequent energy derivative analysis that can fully utilize the state evolution information within the sampling interval, laying a key foundation for reducing the conservatism of the stability criterion.
[0322] In some implementations, to construct an energy function that accurately captures the cumulative energy changes within the sampling interval and satisfies the endpoint equivalence constraint under aperiodic sampling control, a time-location-related weight parameter can be introduced to calculate the integral energy from the start time to the current time (first cumulative energy information) and the integral energy from the current time to the end time (second cumulative energy information). These two weighted combinations constitute the interval cumulative energy functional. This allows for full utilization of the state evolution information within the sampling interval in subsequent stability analysis, providing a key mathematical tool for relaxing the traditional requirement of continuously decreasing energy functions and reducing the conservatism of stability criteria. For example, the interval cumulative energy functional can be obtained in the following ways:
[0323] (B.1) Construct a first time weight parameter based on the difference between the end sampling time and any interval time, and construct a second time weight parameter based on the difference between any interval time and the start sampling time;
[0324] (B.2) Obtain the system state of the self-balancing robot at each interval between any interval time and the initial sampling time, and perform an integral operation on the system state at each interval time to obtain the first accumulated energy information accumulated over multiple interval times;
[0325] (B.3) Obtain the system state of the self-balancing robot at each interval between the end sampling time and any interval time, and perform an integral operation on the system state at each interval time to obtain the second accumulated energy information accumulated over multiple interval times;
[0326] (B.4) Based on the difference between the product of the first time weight parameter and the first cumulative energy information and the product of the second time weight parameter and the second cumulative energy information, an interval cumulative energy functional is constructed.
[0327] The first accumulated energy information can be the accumulated amount obtained by weighted integration of the system state by the self-balancing robot over the time interval from the initial sampling time to the current time interval. It can be used to quantify the degree of energy accumulation of the system from the sampling start point to the current time.
[0328] The second accumulated energy information can be the accumulated amount obtained by weighted integration of the system state by the self-balancing robot during the time period from the current interval to the end sampling time. It can be used to quantify the energy accumulation of the system from the current time to the sampling end time.
[0329] In some implementations, the methods for obtaining the first time weight parameter and the second time weight parameter have been described above and will not be repeated here.
[0330] In some implementations, to quantify the energy accumulation from the initial sampling time to the current time, it is necessary to perform an integral operation on the system state over this time period. Specifically, this involves obtaining the self-balancing robot's state at any given time interval t and its relationship to the initial sampling time. System state at each time point between (where s∈[ The first accumulated energy information is obtained by weighted integration of these states [t], and then integrating these states. In some implementations, the first accumulated energy information can be determined in the following way: .
[0331] in, Let be the system state vector at time s. This is a positive definite weighting matrix used to adjust the contribution weights of different state components to the energy. The integral value represents the weighted energy accumulation of the system state along the time axis from the start of the sampling interval to the current time. It reflects the historical energy of the system during this period and is an important component in the subsequent construction of the interval cumulative energy functional.
[0332] In some implementations, to quantify the energy accumulation from the current time to the final sampling time, the system state over this time period can be integrated. Specifically, the energy accumulated by the self-balancing robot at the final sampling time can be obtained. The system state at each time point between the current interval time t and the current time interval. (where s∈[t, The second accumulated energy information is obtained by weighted integration of these states. In some implementations, the second accumulated energy information can be determined in the following ways:
[0333] ;
[0334] in, Let be the system state vector at time s. This is a positive definite weighted matrix. The integral value represents the weighted energy accumulation of the system state along the time axis from the current moment to the end of the sampling interval. It reflects the expected energy of the system in the future time period and, together with the first accumulated energy information, characterizes the energy distribution throughout the entire sampling interval.
[0335] In some implementations, in order to construct a functional that can return to zero at the endpoints of the sampling interval and reflect the cumulative energy changes within the interval, the first time weighting parameter can be... The product of the first accumulated energy information and the second time weighting parameter The product of the second accumulated energy information and the difference is combined. In some implementations, the interval accumulated energy functional... It can be determined in the following ways:
[0336] ;
[0337] in, Multiply by the first accumulated energy, Multiply by the second accumulated energy, then subtract the two. Therefore, when t= hour, =0, the first integration interval degenerates to zero, therefore =0; when t= hour, =0, the second integration interval degenerates to zero, therefore =0. Second, through the weight parameters. and By adjusting the position of the current point within the interval, the functional can sensitively reflect the impact of the current position on the energy accumulation, providing rich information for subsequent derivative analysis. This form of cyclic functional does not require the energy to decrease monotonically throughout the interval; it only needs to be reset at the sampling point, thus effectively reducing the conservatism of the stability criterion.
[0338] By using the above method, an integral energy functional weighted by a time-weighted parameter can be constructed. This allows the energy accumulation process of the system within the sampling interval to be accurately expressed in the form of continuous integrals. At the same time, it ensures the cyclical property that the functional takes equal values at the endpoints of the sampling interval. This provides a mathematical tool that can fully utilize the state evolution information within the sampling interval for subsequent energy derivative analysis and derivation of low-conservatism stability criteria, making the final evaluated maximum allowable sampling period closer to the true stability boundary of the system.
[0339] Step 104: Combine the sampling control description information with negative qualitative analysis of the cyclic energy constraint information to calculate the sampling control cycle corresponding to the self-balancing robot.
[0340] In some implementations, in order to transform the stability conditions expressed by the cyclic energy constraint information into specific and quantifiable design parameters, the cyclic energy constraint information (i.e., the linear matrix inequality criterion) can be negatively qualitatively analyzed by combining the sampled control description information (i.e., the system state space model), and the optimal solution that satisfies the stability conditions can be iteratively searched using the bisection method. This allows for the quantitative calculation of the maximum allowable sampled control period of the system under the premise of ensuring asymptotic stability, thereby providing a precise theoretical basis for the sampling frequency design and resource optimization of the two-wheeled self-balancing robot control system.
[0341] The sampling control period can be the time interval between two adjacent sampling times in a digital sampling control system. For non-periodic sampling scenarios, this interval usually has time-varying characteristics. For example, the maximum allowable sampling control period that the system can maintain asymptotic stability, obtained by solving the stability criterion and the bisection method in this application, can be used to guide the setting of the sampling frequency in order to minimize the communication burden and control operation overhead while ensuring system stability.
[0342] In some implementations, to quantitatively determine the maximum permissible sampling period of a two-wheeled self-balancing robot under multi-loop digital PID control, a negative qualitative analysis of the system can be performed by combining the sampling control description information (i.e., system state-space model parameters A, B, K) established above with the cyclic energy constraint information (i.e., linear matrix inequality conditions). Specifically, by using the current candidate sampling period... Substituting the linear matrix inequalities corresponding to the cyclic energy constraint information, numerical computation tools (such as the MATLAB LMI toolbox) are used to solve for whether a feasible solution exists. If a feasible solution exists, it indicates that the system can maintain asymptotic stability under the current sampling period; otherwise, the system may become unstable. Based on this feasibility judgment, a bisection method is used to search within the preset sampling period interval. The search proceeds iteratively, continuously narrowing the interval until the interval length meets the preset search accuracy threshold. The sampling period value obtained at this time is the maximum sampling control period that the system can stably tolerate.
[0343] This application embodiment obtains the dynamic model and motor control input information of a self-balancing robot; based on the dynamic model and motor control input information, it calculates the sampling control description information of the self-balancing robot for any interval time within a preset sampling interval, wherein the preset sampling interval includes the initial sampling time, multiple interval times, and the final sampling time; it obtains the instantaneous energy functional, cyclic correlation energy functional, and interval cumulative energy functional of the self-balancing robot at any interval time, and constructs cyclic energy constraint information based on the instantaneous energy functional, cyclic correlation energy functional, and interval cumulative energy functional; wherein the instantaneous energy functional is constructed based on the target system state of the self-balancing robot at any interval time; wherein the cyclic correlation... The energy functional is constructed based on the correlation between the target system state at any given time interval and the initial system state at the initial sampling time, as well as the final system state at the final sampling time. The value of the cyclic correlation energy functional at the initial sampling time is equal to its value at the final sampling time. The interval cumulative energy functional is constructed based on the difference between the first integral path energy between any given time interval and the initial sampling time, and the second integral path energy between any given time interval and the final sampling time. The value of the interval cumulative energy functional at the initial sampling time is equal to its value at the final sampling time. By combining the sampling control description information with negative qualitative analysis of the cyclic energy constraint information, the sampling control period corresponding to the self-balancing robot is calculated. In this way, by accurately constructing the energy evolution relationship adapted to the sampling characteristics, the maximum permissible sampling control period in the steady state of the system can be quantitatively calculated. Specifically, compared to the conservatism of background technologies that rely on manual experience to set fixed small periods, this application relaxes the restriction that the energy function must continuously decrease by constructing an energy functional that satisfies cyclic constraints. Combined with negative qualitative analysis using sampling control description information, it can significantly increase the allowable upper limit of the sampling period while ensuring system stability, avoiding the waste of communication and computing resources caused by excessively high sampling frequencies. In summary, this application, through the calculated maximum allowable sampling control period, can save communication and computing resources while ensuring stable system operation.
[0344] In some implementations, to quantitatively determine the maximum sampling interval that the system can withstand for stable operation under given controller parameters, a bisection iterative search strategy can be employed. Within a search interval defined by preset period upper and lower bounds, the search boundary is dynamically updated and the interval is narrowed continuously using feasibility calculation results based on cyclic energy constraint information (linear matrix inequality criterion) until a preset search accuracy threshold is reached. This accurately obtains the maximum permissible sampling control period that meets the asymptotic stability requirements of the system, thereby providing a quantitative basis for the optimized design of the sampling frequency. For example, step 104 may include:
[0345] (104.1) Determine the lower bound and upper bound of the preset period of the self-balancing robot, and determine the current candidate sampling period based on the lower bound and upper bound of the preset period;
[0346] (104.2) Based on the sampling control description information and the current candidate sampling period, the cyclic energy constraint information is calculated to obtain the calculation results;
[0347] (104.3) When the calculation results indicate that there is a feasible solution to the cyclic energy constraint information, the lower bound of the preset period is updated based on the candidate sampling period to obtain the next lower bound of the preset period, and the next sampling interval is constructed based on the upper bound of the preset period and the next lower bound of the preset period. Alternatively, when the calculation results indicate that there is no feasible solution to the cyclic energy constraint information, the upper bound of the preset period is updated based on the candidate sampling period to obtain the next upper bound of the preset period, and the next sampling interval is constructed based on the upper bound of the next preset period and the lower bound of the preset period, and the next sampling interval is updated based on the upper bound of the next preset period and the lower bound of the next preset period contained in the next sampling interval.
[0348] (104.4) Repeat the step of updating the next sampling interval based on the next preset period upper bound and the next preset period lower bound contained in the next sampling interval until the difference between the next preset period upper bound and the next preset period lower bound is less than or equal to the preset search accuracy threshold. Then, determine the corresponding next sampling interval as the target sampling interval and calculate the sampling control cycle corresponding to the self-balancing robot based on the next preset period upper bound and the next preset period lower bound contained in the target sampling interval.
[0349] The preset lower bound of the period can be the minimum sampling period value that can be set in advance based on engineering experience or system characteristics to ensure the stability of the two-wheeled self-balancing robot system. For example, a sufficiently small positive number can be used as the minimum boundary of the known stable interval during the bisection search process, and gradually increased according to the feasibility results during the iteration process to approach the true maximum period.
[0350] The preset upper bound of the period can be an upper limit of the sampling period determined based on system performance requirements or preliminary estimates, which may lead to system instability. For example, a large initial value can be chosen. It can be used as the maximum boundary of the known potentially unstable interval in the bisection search process, and gradually reduced according to the feasibility results during the iteration process to approximate the true maximum period.
[0351] The calculation result can be the current candidate sampling period. After substituting the linear matrix inequalities composed of sampled control description information and cyclic energy constraint information, the numerical solver determines whether there is a feasible solution to this set of matrix inequalities. For example, if there is a feasible solution (indicating that the system is stable in the current cycle) or if there is no feasible solution (indicating that the system may be unstable in the current cycle), the results can be used to guide the update direction of the endpoints of the bisection search interval.
[0352] The search accuracy threshold can be a pre-set minimum interval length used to terminate the bisection iteration, for example... >0, when the difference between the upper and lower bounds of the preset period is less than or equal to the threshold, it is considered that the midpoint of the current interval is close enough to the true stable boundary, which can be used to ensure that the final maximum allowable sampling control period meets the preset accuracy requirements.
[0353] In some implementations, to quantitatively determine the maximum permissible sampling period of the two-wheeled self-balancing robot under given PID controller parameters, a reasonable search range can first be set. Specifically, based on engineering experience or system characteristics, a smaller sampling period that ensures system stability can be determined as the lower bound of the preset period. For example, take =0.001 seconds; at the same time, a larger sampling period that may cause system instability is determined as the upper bound of the preset period. For example, take =0.1 seconds. Based on this initial search interval. Calculate the current candidate sampling period This candidate period will be used as the evaluation period for this iteration. It will be incorporated into the stability criterion for feasibility testing in subsequent steps.
[0354] In some implementations, the form of the cyclic energy constraint information has been described above and will not be repeated here. The current candidate sampling period... Substituting the cyclic energy constraint information, the system of inequalities is solved using numerical computation tools (such as MATLAB's LMI toolbox or the YALMIP interface). The system is then evaluated to determine if there exists a positive definite matrix P and other free matrices that satisfy all inequalities. If a feasible solution exists, the result indicates that the system can maintain asymptotic stability under the current candidate sampling period. If no feasible solution exists, the result indicates that the sampling period has exceeded the stability tolerance range.
[0355] In some implementations, the search interval can be dynamically adjusted based on the calculation results of the previous step. If the current candidate sampling period... The existence of a feasible solution to the corresponding linear matrix inequality indicates that the system is stable under this period. Therefore, the true value of the stability allowable period may be greater than or equal to... At this point, the lower bound of the preset period is updated to... = Meanwhile, the upper bound of the preset period remains unchanged, thus compressing the search interval to Conversely, if no feasible solution exists, it indicates that the period is too large and has led to system instability. Therefore, the actual maximum allowable period should be less than [a certain value]. At this point, the upper bound of the preset period is updated to... = Meanwhile, the lower bound of the preset period remains unchanged, resulting in a new search interval. In this way, the search interval length is halved in each iteration, gradually approaching the true stable boundary.
[0356] Furthermore, the above steps can be repeated, that is, continuously taking the midpoint within the new search interval and performing LMI feasibility checks, until the length of the current search interval is reached. Less than or equal to the preset search precision threshold (For example =0.0001 seconds). At this time, the midpoint of the current interval. The sampling period is sufficiently close to the maximum allowable sampling control period for system stability, and this is output as the final result. This result represents the maximum sampling period that ensures the asymptotic stability of the closed-loop system of the two-wheeled self-balancing robot under given PID controller parameters, and can be used to guide the setting of sampling frequency in practical engineering.
[0357] By using the above methods, the stability criterion derived from the energy function can be transformed into an efficient numerical search algorithm. This allows for automatic and rapid convergence to the maximum sampling control period that the system can stably tolerate. Consequently, it provides a precise and reliable quantitative basis for the sampling frequency design of the dual-wheel self-balancing robot control system, avoiding the blindness of traditional methods that rely on trial and error, and achieving an optimal balance between system stability and communication resource efficiency.
[0358] For example, based on the actual structure of a two-wheeled self-balancing robot, consider as follows: Figure 2 The model parameters are shown. Given the lower bound of the sampling. Let the PD control gains of the angle loop and steering loop be respectively. , and , For different speed loop PI control gains and The maximum allowable upper bound of sampling for the two-wheeled self-balancing robot control system is calculated based on the stability analysis theorem. like Figure 3 As shown.
[0359] To verify Figure 3To verify the validity of the results, this application conducted two sets of simulation experiments using MATLAB / Simulink. The initial conditions for the first set of tests are as follows: tilt angle... Steering angle tilt angular velocity angular velocity of steering Robot speed The speed loop control gain is selected as... At this time, the maximum allowable sampling period is The system tilt angle response curve is as follows: Figure 4 As shown. Figure 4 The curve shows that the tilt angle of the self-balancing robot gradually stabilizes, indicating that the system can maintain asymptotic stability within this allowable sampling period, thus confirming the accuracy of the theorem analysis of the allowable sampling period.
[0360] To thoroughly evaluate the robustness of the proposed control strategy, especially under varying initial conditions and the influence of sampled control, this application conducted simulation tests using 200 randomly generated initial states. The controller parameters for the angle loop and steering loop remained constant, while the control gain of the speed loop was... The initial conditions vary uniformly within the following range: , , , .according to Figure 3 The result obtained by calculation using the theorem is . Figure 5 The state trajectories of the dual-wheel self-balancing robot control system under different initial states are presented, showing that the system can maintain asymptotic stability under all 200 random scenarios. This fully demonstrates the robustness and practical application value of the sampling control period calculation method proposed in this application under different initial conditions.
[0361] Please see Figure 6 This application also provides a sampling control cycle calculation device for a self-balancing robot, which can implement the above-mentioned sampling control cycle calculation method for a self-balancing robot. The sampling control cycle calculation device for a self-balancing robot includes:
[0362] The acquisition module 61 is used to acquire the dynamic model and motor control input information of the self-balancing robot;
[0363] The calculation module 62 is used to calculate the sampling control description information of the self-balancing robot for any interval time contained in the preset sampling interval based on the dynamic model and motor control input information. The preset sampling interval includes the starting sampling time, multiple interval times and the ending sampling time.
[0364] Module 63 is used to obtain the instantaneous energy functional, cyclic correlation energy functional and interval cumulative energy functional of the self-balancing robot at any interval time, and to construct cyclic energy constraint information based on the instantaneous energy functional, cyclic correlation energy functional and interval cumulative energy functional.
[0365] Among them, the instantaneous energy functional is constructed based on the target system state of the self-balancing robot at any time interval;
[0366] The cyclic correlation energy functional is constructed based on the correlation between the target system state at any interval time and the initial system state at the initial sampling time, and the final system state at the final sampling time. The value of the cyclic correlation energy functional at the initial sampling time is equal to the value at the final sampling time.
[0367] The interval cumulative energy functional is constructed based on the difference between the first integral path energy between any interval time and the starting sampling time and the second integral path energy between any interval time and the ending sampling time. The value of the interval cumulative energy functional at the starting sampling time is equal to the value at the ending sampling time.
[0368] Analysis module 64 is used to perform negative qualitative analysis on the cyclic energy constraint information in combination with the sampling control description information, and to calculate the sampling control cycle corresponding to the self-balancing robot.
[0369] The specific implementation of the sampling control cycle calculation device for the self-balancing robot is basically the same as the specific embodiment of the sampling control cycle calculation method for the self-balancing robot described above, and will not be repeated here. Subject to meeting the requirements of the embodiments of this application, the sampling control cycle calculation device for the self-balancing robot may also be equipped with other functional modules to implement the sampling control cycle calculation method for the self-balancing robot in the above embodiments.
[0370] This application also provides a computer device, which includes a memory and a processor. The memory stores a computer program, and the processor executes the computer program to implement the above-described sampling control cycle calculation method for the self-balancing robot. This computer device can be any smart terminal, including tablet computers, in-vehicle computers, etc.
[0371] Please see Figure 7 , Figure 7 The hardware structure of a computer device according to another embodiment is illustrated. The computer device includes:
[0372] The processor 71 can be implemented using a general-purpose CPU (Central Processing Unit), microprocessor, application-specific integrated circuit (ASIC), or one or more integrated circuits, and is used to execute relevant programs to implement the technical solutions provided in the embodiments of this application.
[0373] The memory 72 can be implemented as a read-only memory (ROM), static storage device, dynamic storage device, or random access memory (RAM). The memory 72 can store the operating system and other application programs. When the technical solutions provided in the embodiments of this specification are implemented through software or firmware, the relevant program code is stored in the memory 72 and called by the processor 71 to execute the sampling control cycle calculation method for the self-balancing robot of this application embodiment.
[0374] Input / output interface 73 is used to implement information input and output;
[0375] The communication interface 74 is used to enable communication and interaction between this device and other devices. Communication can be achieved through wired means (such as USB, network cable, etc.) or wireless means (such as mobile network, WIFI, Bluetooth, etc.).
[0376] Bus 75 transmits information between various components of the device (e.g., processor 71, memory 72, input / output interface 73, and communication interface 74);
[0377] The processor 71, memory 72, input / output interface 73, and communication interface 74 are connected to each other within the device via bus 75.
[0378] This application also provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the above-described method for calculating the sampling control cycle of a self-balancing robot.
[0379] Memory, as a non-transitory computer-readable storage medium, can be used to store non-transitory software programs and non-transitory computer-executable programs. Furthermore, memory may include high-speed random access memory, and may also include non-transitory memory, such as at least one disk storage device, flash memory device, or other non-transitory solid-state storage device. In some embodiments, memory may optionally include memory remotely located relative to the processor, and these remote memories can be connected to the processor via a network. Examples of such networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.
[0380] The embodiments described in this application are for the purpose of more clearly illustrating the technical solutions of the embodiments of this application, and do not constitute a limitation on the technical solutions provided by the embodiments of this application. As those skilled in the art will know, with the evolution of technology and the emergence of new application scenarios, the technical solutions provided by the embodiments of this application are also applicable to similar technical problems.
[0381] Those skilled in the art will understand that the technical solutions shown in the figures do not constitute a limitation on the embodiments of this application, and may include more or fewer steps than shown, or combine certain steps, or different steps.
[0382] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs.
[0383] Those skilled in the art will understand that all or some of the steps in the methods disclosed above, as well as the functional modules / units in the systems and devices, can be implemented as software, firmware, hardware, or suitable combinations thereof.
[0384] The terms “first,” “second,” “third,” “fourth,” etc. (if present) in the specification and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms “comprising” and “having,” and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0385] It should be understood that in this application, "at least one" and "several" refer to one or more, and "multiple" refers to two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, "A and / or B" can represent three cases: only A exists, only B exists, and both A and B exist simultaneously, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, or c can represent: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, and c can be single or multiple.
[0386] In the embodiments provided in this application, it should be understood that the disclosed systems and methods can be implemented in other ways. For example, the system embodiments described above are merely illustrative; for instance, the division of the units described above is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interfaces, devices, or units, and may be electrical, mechanical, or other forms.
[0387] The units described above as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0388] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0389] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes multiple instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this application. The aforementioned storage medium includes various media capable of storing programs, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0390] The preferred embodiments of the present application have been described above with reference to the accompanying drawings, but this does not limit the scope of the claims of the present application. Any modifications, equivalent substitutions, and improvements made by those skilled in the art without departing from the scope and substance of the embodiments of the present application shall be within the scope of the claims of the present application.
Claims
1. A method for calculating the sampling control cycle of a self-balancing robot, characterized in that, The method includes: Obtain the dynamic model and motor control input information of the self-balancing robot; Based on the dynamic model and the motor control input information, the sampling control description information of the self-balancing robot for any interval time contained in the preset sampling interval is calculated, wherein the preset sampling interval includes the starting sampling time, multiple interval times and the ending sampling time; Obtain the instantaneous energy functional, cyclic correlation energy functional, and interval cumulative energy functional of the self-balancing robot at any time interval, and construct cyclic energy constraint information based on the instantaneous energy functional, the cyclic correlation energy functional, and the interval cumulative energy functional; The instantaneous energy functional is constructed based on the target system state of the self-balancing robot at any time interval. The cyclic correlation energy functional is constructed based on the correlation between the target system state at any interval time and the initial system state at the initial sampling time, and the final system state at the final sampling time. The value of the cyclic correlation energy functional at the initial sampling time is equal to the value at the final sampling time. The interval cumulative energy functional is constructed based on the difference between the first integral path energy between any interval time and the starting sampling time and the second integral path energy between any interval time and the ending sampling time. The value of the interval cumulative energy functional at the starting sampling time is equal to the value at the ending sampling time. By combining the sampling control description information with the negative qualitative analysis of the cyclic energy constraint information, the sampling control cycle corresponding to the self-balancing robot is calculated.
2. The sampling control cycle calculation method for a self-balancing robot according to claim 1, characterized in that, The construction of cyclic energy constraint information based on the instantaneous energy functional, the cyclic correlated energy functional, and the interval cumulative energy functional includes: Calculate the first derivative of the instantaneous energy functional, the second derivative of the cyclically correlated energy functional, and the third derivative of the interval cumulative energy functional; Based on the first derivative, the second derivative, the third derivative, and the preset zero equation, the cyclic energy constraint information is determined.
3. The sampling control cycle calculation method for a self-balancing robot according to claim 2, characterized in that, The determination of cyclic energy constraint information based on the first derivative, the second derivative, the third derivative, and a preset zero equation includes: Obtain the integral term of the third derivative, and use the integral inequality based on the free matrix to perform a scaling estimate on the integral term to obtain the integral term estimation information, wherein the integral term is less than or equal to the integral term estimation information; The third derivative is adjusted based on the integral term estimation information to obtain derivative adjustment information, wherein the third derivative is less than or equal to the derivative adjustment information; The integral scaling upper bound description information is obtained by merging the first derivative, the second derivative, the derivative adjustment information, and the preset zero equation. The integral scaling upper bound description information is greater than or equal to the total energy change rate description information of the self-balancing robot in the preset sampling interval. The total energy change rate description information is calculated based on the sum of the first derivative, the second derivative, the third derivative, and the preset zero equation. Based on the relationship between the integral scaling upper bound description information and the preset zero value, target upper bound description information is constructed, and the target upper bound description information is processed by the lemma to obtain cyclic energy constraint information.
4. The sampling control cycle calculation method for a self-balancing robot according to claim 1, characterized in that, The cyclic correlation energy functional is obtained through the following method: A first augmented vector is constructed based on the first state difference between the target system state at any interval and the initial system state at the initial sampling time, and a second augmented vector is constructed based on the second state difference between the final system state at the final sampling time and the target system state. A first time weight parameter is constructed based on the difference between the end sampling time and any interval time, and a second time weight parameter is constructed based on the difference between any interval time and the start sampling time. A third augmented vector is constructed based on the product of the first time weight parameter and the first state difference, and the product of the second time weight parameter and the second state difference. Based on the initial system state and the final system state, a fourth augmented vector is constructed, and based on the difference between the first state and the difference between the second state, a fifth augmented vector is constructed. Based on the third augmented vector and the fifth augmented vector, a first association term is constructed; based on the third augmented vector and the fourth augmented vector, a second association term is constructed; based on the first augmented vector and the second augmented vector, a third association term is constructed; and based on the first time weight parameter, the second time weight parameter, and the fourth augmented vector, a fourth association term is constructed. By combining the first association term, the second association term, the third association term, and the fourth association term, a cyclic correlation energy functional is constructed to characterize the correlation between any time interval and the state within the preset sampling interval.
5. The sampling control cycle calculation method for a self-balancing robot according to claim 1, characterized in that, The interval cumulative energy functional is obtained through the following method: A first time weight parameter is constructed based on the difference between the end sampling time and any interval time, and a second time weight parameter is constructed based on the difference between any interval time and the start sampling time; The system state of the self-balancing robot is obtained for each interval between any interval time and the initial sampling time, and the system state for each interval time is integrated to obtain the first accumulated energy information accumulated over multiple interval times. The system state of the self-balancing robot is obtained for each interval between the end sampling time and any interval time, and the system state for each interval time is integrated to obtain the second accumulated energy information accumulated over multiple interval times. An interval cumulative energy functional is constructed based on the difference between the product of the first time weight parameter and the first cumulative energy information, and the product of the second time weight parameter and the second cumulative energy information.
6. The sampling control cycle calculation method for a self-balancing robot according to claim 1, characterized in that, The step of calculating the sampling control description information of the self-balancing robot for any time interval within a preset sampling interval, based on the dynamic model and the motor control input information, includes: Construct the state vector of the self-balancing robot, the state vector including the displacement, velocity, tilt angle, tilt angular velocity, turning angle and turning angular velocity of the self-balancing robot; Based on the dynamic model, a differential equation for the evolution of the state vector over time is established to obtain the dynamic description information of the self-balancing robot. Based on the motor control input information, determine the control voltage description information output by the multi-loop digital controller at the sampling time; By combining the control voltage description information and the dynamic description information, the sampling control description information of the self-balancing robot for any interval time within the preset sampling interval is calculated.
7. The sampling control cycle calculation method for a self-balancing robot according to claim 1, characterized in that, The step of performing negative qualitative analysis on the cyclic energy constraint information in conjunction with the sampling control description information to calculate the sampling control cycle corresponding to the self-balancing robot includes: Determine the lower and upper bounds of the preset period of the self-balancing robot, and determine the current candidate sampling period based on the lower and upper bounds of the preset period; Based on the sampling control description information and the current candidate sampling period, the cyclic energy constraint information is calculated to obtain the calculation result; When the calculation result indicates that the cyclic energy constraint information has a feasible solution, the lower bound of the preset period is updated based on the candidate sampling period to obtain the next lower bound of the preset period, and the next sampling interval is constructed based on the upper bound of the preset period and the next lower bound of the preset period. Alternatively, when the calculation result indicates that the cyclic energy constraint information does not have a feasible solution, the upper bound of the preset period is updated based on the candidate sampling period to obtain the next upper bound of the preset period, and the next sampling interval is constructed based on the upper bound of the next preset period and the lower bound of the preset period, and the next sampling interval is updated based on the next upper bound of the next preset period and the next lower bound of the preset period contained in the next sampling interval. The step of updating the next sampling interval based on the next preset period upper bound and the next preset period lower bound contained in the next sampling interval is repeated until the difference between the next preset period upper bound and the next preset period lower bound is less than or equal to the preset search accuracy threshold. The corresponding next sampling interval is then determined as the target sampling interval, and the sampling control cycle corresponding to the self-balancing robot is calculated based on the next preset period upper bound and the next preset period lower bound contained in the target sampling interval.
8. A sampling control cycle calculation device for a self-balancing robot, characterized in that, The device includes: The acquisition module is used to acquire the dynamic model and motor control input information of the self-balancing robot; The calculation module is used to calculate the sampling control description information of the self-balancing robot for any interval time contained in the preset sampling interval based on the dynamic model and the motor control input information, wherein the preset sampling interval includes the starting sampling time, multiple interval times and the ending sampling time; The construction module is used to obtain the instantaneous energy functional, cyclic correlation energy functional and interval cumulative energy functional of the self-balancing robot at any interval time, and to construct cyclic energy constraint information based on the instantaneous energy functional, the cyclic correlation energy functional and the interval cumulative energy functional; The instantaneous energy functional is constructed based on the target system state of the self-balancing robot at any time interval. The cyclic correlation energy functional is constructed based on the correlation between the target system state at any interval time and the initial system state at the initial sampling time, and the final system state at the final sampling time. The value of the cyclic correlation energy functional at the initial sampling time is equal to the value at the final sampling time. The interval cumulative energy functional is constructed based on the difference between the first integral path energy between any interval time and the starting sampling time and the second integral path energy between any interval time and the ending sampling time. The value of the interval cumulative energy functional at the starting sampling time is equal to the value at the ending sampling time. The analysis module is used to perform negative qualitative analysis on the cyclic energy constraint information in conjunction with the sampling control description information, and to calculate the sampling control cycle corresponding to the self-balancing robot.
9. A computer device, characterized in that, The computer device includes a memory and a processor. The memory stores a computer program, and when the processor executes the computer program, it implements the sampling control cycle calculation method for the self-balancing robot according to any one of claims 1 to 7.
10. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by the processor, it implements the sampling control cycle calculation method for the self-balancing robot according to any one of claims 1 to 7.
Citation Information
Patent Citations
Stability judgment method considering communication time delay for fixed-period sampling control system
CN110456768A
Battery energy recycling method for underwater robot
CN119229271A