A mobile robot trajectory tracking system and method in a wireless packet loss environment
By integrating the Chinese Remainder Theorem and multiple description coding with model predictive control, the problem of decreased trajectory tracking accuracy of mobile robots in wireless packet loss environments was solved, and high-precision trajectory tracking was achieved under unstable communication link conditions.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- NANTONG UNIV
- Filing Date
- 2026-03-26
- Publication Date
- 2026-06-05
AI Technical Summary
In wireless communication packet loss environments, the trajectory tracking accuracy of mobile robots decreases, and existing technologies struggle to achieve high-precision trajectory tracking control under unreliable communication links and physical limitations.
By combining the Chinese Remainder Theorem and multiple description coding with model predictive control, and through state perception, encoding, transmission, decoding and predictive optimization, high-probability accurate reconstruction and optimization of robot state and control commands can be achieved.
In wireless packet loss environments, high-precision trajectory tracking of mobile robots was achieved, and the robot state could still be accurately reconstructed even when some descriptions were lost, thus improving the tracking accuracy of the system in random packet loss environments.
Smart Images

Figure CN122151935A_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of mobile robot control technology, and particularly relates to a mobile robot trajectory tracking system and method in a wireless packet loss environment. Background Technology
[0002] Mobile robots play a vital role in smart factories, intelligent logistics, and specialized operations, and their precise and stable trajectory tracking control is fundamental to completing complex tasks. Classical tracking control methods perform well under ideal communication conditions; however, in practical applications, robots often interact with control units via wireless networks for status feedback and commands. Therefore, the unreliability of the communication link, especially random data packet loss, seriously threatens the stability and tracking accuracy of the control system.
[0003] Existing research on packet loss in networked control mainly focuses on two levels. First, from a control theory perspective, it aims to increase controller robustness at the design level. Mainstream solutions often utilize state estimators to achieve accurate state estimation and suppress estimation errors; however, these methods generally do not integrate state estimation with the control strategy for joint optimization. Second, from a communication perspective, solutions emphasize mitigating packet loss at the network layer, employing techniques such as automatic repeat request protocols and packet buffering. These methods introduce deterministic or random delays, resulting in latency errors.
[0004] Communication links are inherently limited by physical constraints and communication resources, often restricting them to transmitting only a portion of the data. Traditional schemes typically rely on single-channel transmission of codewords, making them susceptible to packet loss and transmission failure. To address this, the raw data can be converted into specific codewords using the Chinese Remainder Theorem (CRT). A multi-description coding scheme can then be used to divide the original signal into multiple equally important descriptions, which can then be transmitted simultaneously through independent channels, potentially improving the reliability of transmitted measurement data.
[0005] The Chinese Remainder Theorem, a classic number theory tool, enables redundant representation of integers using a set of pairwise coprime moduli. Even if some remainders are lost, the original information can still be uniquely or with high probability recovered. To ensure reliable measurement transmission, a multiple description coding scheme divides the original signal into multiple equally important descriptions and transmits them simultaneously through independent channels. Therefore, the corresponding decoder can reconstruct the original signal based on the number of successfully received descriptions; as the number of received descriptions increases, the error decreases.
[0006] Model Predictive Control (MPC) can explicitly handle the input-output constraints of multivariable systems and perform model-based forward optimization. Currently, with the development of 5G and the Industrial Internet, MPC has been widely used in fields such as robotics, intelligent transportation, and smart manufacturing.
[0007] To address the degradation of mobile robot trajectory tracking accuracy in wireless packet loss environments, joint optimization of encoding / decoding and predictive control can be implemented. At the communication level, the Chinese Remainder Theorem and the packet loss resistance of multiple description coding (MPC) are utilized to achieve high-probability, accurate reconstruction of the original state information, providing high-quality state information for the controller. At the control level, the inherent predictive optimization capabilities of MPC are leveraged to achieve precise control under adverse communication conditions. Currently, there is no method for mobile robot trajectory tracking control that combines encoding / decoding and predictive control, making it worthy of further research. Summary of the Invention
[0008] Purpose of the invention: This invention provides a mobile robot trajectory tracking system and method in a wireless packet loss environment. By integrating the Chinese Remainder Theorem, multiple description coding, and model predictive control, it effectively solves the problem of decreased trajectory tracking accuracy in wireless communication packet loss environments.
[0009] The system includes a state awareness module, an uplink encoding module, an uplink transmission module, an uplink decoding module, a model prediction module, a downlink encoding module, a downlink transmission module, and a downlink decoding module;
[0010] The state perception module measures the robot's real-time state through sensors;
[0011] The uplink coding module, based on the Chinese Remainder Theorem and multi-description coding, discretizes and quantizes the robot's real state to generate two remainder descriptions.
[0012] The uplink transmission module transmits the two remainder descriptions generated by the uplink encoding module to the remote control terminal;
[0013] The uplink decoding module of the remote control terminal decodes and reconstructs the state based on the remainder description received at the current moment;
[0014] The model prediction module at the remote control terminal performs rolling optimization based on the decoded and reconstructed state to generate the optimal control command;
[0015] The downlink encoding module, based on the Chinese Remainder Theorem and multi-description encoding, discretizes and quantizes the optimal control command of the robot to generate two remainder descriptions, which are then sent to the mobile robot via the downlink transmission module.
[0016] The mobile robot's downlink decoding module will reconstruct the optimal control command based on the remainder received at the current moment, driving the robot to complete the trajectory tracking task.
[0017] At the initial moment, in the state perception module, the mobile robot uses its initial starting position as the origin of the coordinate system and its initial orientation as the heading angle. Initial state of the mobile robot ,in, It is the origin of the robot's coordinates. It represents the initial heading angle; T indicates transpose.
[0018] Mobile robots in The state at each moment is obtained through sensors on the mobile robot, where For time index, , For the maximum time index value, the sensor obtains the first... The state at each moment is denoted as ,in, Indicates the first The position at that moment For the first The heading angle at any given moment;
[0019] The mobile robot in The state components at each time step are represented as follows: , , ,in Heading angle State components The value of is restricted, among which Set state components The range of variation is , The range of variation is , The range of variation is , The range of variation is ;in , and These represent the mobile robots in Minimum value of coordinates on the axis, Minimum values of coordinates on the axis and minimum heading angle; , and These represent the mobile robots in Maximum value of coordinates on the axis The maximum value of the coordinates on the axis and the maximum value of the heading angle.
[0020] The uplink encoding module uses a uniform quantizer to process the state components acquired by the state sensing module. Quantization encoding is performed: First, the continuous state components are... Mapped to integer index value :
[0021] (1),
[0022] in, State components The upper limit of integer index values, that is... Mapped to Within the range, This indicates that the input value is rounded to the nearest integer.
[0023] The uplink encoding module uses the Chinese Remainder Theorem to encode integer index values. Perform the modulo operation, that is, use the selected coprime positive integers. and (Also known as the modulus), the remainder is calculated according to equation (2):
[0024] (2),
[0025] in, and They represent modulo operations respectively. Operations and Modulus Operations, and The resulting pair of remainder descriptions; the uplink encoding module converts the remainder descriptions and It is then passed to the uplink transmission module for transmission.
[0026] The uplink transmission module describes the remainder. and It is transmitted simultaneously to the uplink decoding module through two independent communication channels;
[0027] Using variables and Let each represent the remainder description. and In the At what point was the data successfully received or lost? ; Remainder description In the The message was successfully received at that moment. Remainder description In the A moment was lost; Remainder description In the The message was successfully received at that moment. Remainder description In the Several moments were lost, among which... ;
[0028] In the The probability of packet loss occurring at any given moment is: , ,in, Indicates the probability of an event occurring. and Remainder descriptions Description of the probability of packet loss and the remainder The probability of packet loss.
[0029] In the uplink decoding module, there are four possible scenarios:
[0030] In the first case, if the remainder description and If none of the components are lost and all are received, then solve the congruence equation given in equation (4) to obtain the state components. The unique integer solution :
[0031] (3),
[0032] in, and To use the Chinese Remainder Theorem to find integer index values The coprime positive integers selected for the modulo operation (also known as the modulus). For integer index values Total modulus, To exclude the modulus Partial product, To exclude the modulus Partial product, and They are respectively Regarding the model inverse and Regarding the model The inverse element, Modulo Operations; and The congruence equations given by equation (3) are satisfied;
[0033] In the second scenario, if only the remainder description is received... The general solution may be: ,in, Description of only received remainder Traversal coefficients in the case of The value range is 0 to All integers between Within the possible range of values, choose different... , making The value of is the minimum, let's denote this minimum value. for ,but As state components Integer solutions;
[0034] The third scenario is if only the remainder description is received. Obtain integer solutions , for Take the smallest value ,in, Only the remainder was received Traversal coefficients in the case of The value range is 0 to All integers between, i.e. ;
[0035] It should be noted that: Represents the previous state component (the first one) (State components at time) Integer solutions, when season ,in, Represents the initial state components of the mobile robot. ;
[0036] State components in three cases Integer solutions By performing dequantization, integer solutions are mapped to state estimates. ;
[0037] The fourth case is when both remainder descriptions are lost. State component estimates Set as ,in, Indicates the previous moment (the first moment) The estimated state components at time ( ), if Then let ,in Represents the initial state components of the mobile robot;
[0038] Remainder Description and None were lost, only the remainder description was received. Only the remainder description was received. Description of remainder and State component estimates for all four scenarios are lost. It is given by the following formula:
[0039] (4),
[0040] in, Remainder description and In the case of all being lost, Represents the robot's initial state components. State components Integer solutions, and State components The minimum and maximum values;
[0041] The estimated state components of the mobile robot are obtained through decoding: , and And record For the first State estimation at each time step;
[0042] Based on the current state estimate, determine whether the mobile robot has reached the target endpoint. If so, then apply the optimal control command, i.e., the optimal angular velocity. If set to empty, otherwise, generate the model predictive control MPC reference trajectory: First, find the nearest target trajectory point on the target trajectory, specifically by solving the following problem:
[0043] ,
[0044] in, Index the target trajectory point closest to the current mobile robot position. and The indexes are respectively The x and y coordinates of the target trajectory point, and State components The estimated value and The estimated value;
[0045] From the index Start taking it from the back There are target trajectory points used as reference trajectories (therefore, there are a total of ... One reference trajectory point, Also known as the prediction step size, if there are not enough target trajectory points, the last target trajectory point is taken and repeated;
[0046] Will The reference state at each reference trajectory point is written as ,in, , and They represent the first The x-coordinate, y-coordinate, and heading angle of the mobile robot at each reference trajectory point ;
[0047] when At this time, the reference state ,in Is the index as The reference state on the reference trajectory point corresponding to the target trajectory point;
[0048] The reference angular velocity of the mobile robot on the reference trajectory is calculated using the curvature of the target trajectory. ,in, , The linear velocity of the mobile robot, Is the index as The curvature of the target trajectory at the target trajectory point;
[0049] when At this time, the reference angular velocity equal ,in, Is the index as The curvature of the target trajectory at the target trajectory point;
[0050] make Reference control commands for the target trajectory points;
[0051] Solve the Model Predictive Control (MPC) optimization problem to obtain the optimal control command: in the first... At each moment, state estimation Given the initial conditions, the optimal control sequence is obtained by solving a quadratic programming problem. Let the predicted state be... ,in, , , and They are the predicted ones Axis coordinates Axis coordinates and heading angle;
[0052] Predictive control command ;
[0053] Let the state deviation Control deviation ;
[0054] Define trajectory tracking error for:
[0055] ,
[0056] in, For the first One state deviation (i.e., State deviation at time ), control input weight matrix for Diagonal matrix, state error weight matrix for Diagonal matrix, terminal weight matrix for diagonal matrix; It is a positive definite matrix. and It is a positive semi-definite matrix;
[0057] Consider two dynamic constraints: Constraint 1 is: ,in, Indicates the first One state deviation (i.e., State deviation at time ), Indicates the first One state deviation (i.e., State deviation at time ), For the first One control deviation, and Indicates the first A predicted state (i.e., Predicted state at time In reference state and reference control commands The parameter matrix after performing a first-order Taylor expansion on the above, where, ;
[0058] Constraint 2 is: ;
[0059] The objective of Model Predictive Control (MPC) is to minimize trajectory tracking error. That is, to find a set of predictive control commands This enables the predicted state of the mobile robot. As close as possible to the reference state Simultaneously predict control commands Also, get as close as possible to the reference control command. To satisfy the constraints of dynamics, the quadratic programming problem that the MPC controller needs to solve can be written as:
[0060] (5),
[0061] in, For the optimal control sequence to achieve the expected goal, st represents the constraint;
[0062] Solve the quadratic programming problem given by equation (5) to obtain the optimal control sequence. .
[0063] Select the first optimal control quantity In Encoding is performed through the downlink encoding module. The optimal angular velocity obtained by the MPC controller in the model prediction module;
[0064] The downlink encoding module utilizes a uniform quantizer to determine the optimal angular velocity. Quantization encoding is performed: First, the optimal angular velocity is... Mapped to integer index value :
[0065] (6),
[0066] in, Optimal angular velocity The upper limit of integer index values, that is... Mapped to Within the range;
[0067] for The downlink encoding module uses the Chinese Remainder Theorem to perform a remainder operation, that is, for the integer index value of the optimal angular velocity. Using selected coprime positive integers and (Also known as the modulus), the remainder is calculated using the following formula:
[0068] (7),
[0069] in, and They represent modulo operations respectively. Operations and Modulus Operations, and The resulting pair of remainder descriptions; the downlink encoding module converts the remainder descriptions and It is passed to the downlink transmission module for transmission.
[0070] The downlink transmission module describes the remainder. and It is transmitted simultaneously to the downlink decoding module through two independent communication channels;
[0071] Using variables and Let each represent the remainder description. and In the The moment it is successfully received or lost, Remainder description In the The message was successfully received at that moment. Remainder description In the A moment was lost; Remainder description In the The message was successfully received at that moment. Remainder description In the Several moments were lost, among which... ; in the The probability of packet loss occurring at any given moment is: , ,in, Indicates the probability of an event occurring. and Remainder descriptions Description of the probability of packet loss and the remainder The probability of packet loss.
[0072] In the downlink decoding module, there are four possible scenarios:
[0073] In the first case, if the remainder description and If none of the signals are lost and all signals are received, then the congruence equation given in equation (8) is solved to obtain the optimal angular velocity. The unique integer solution :
[0074] (8),
[0075] in, and To use the Chinese Remainder Theorem to find the integer index value of the optimal angular velocity The coprime positive integers selected for the modulo operation (also known as the modulus). For integer index values Total modulus, To exclude the modulus Partial product, To exclude the modulus Partial product, and They are respectively Regarding the model inverse and Regarding the model The inverse element, Modulo Operations; and Satisfy the congruence equation given by equation (8);
[0076] In the second scenario, if only the remainder description is received... The general solution may be: ,in, Description of only received remainder Traversal coefficients in the case of The value range is 0 to All integers between, i.e. Within the possible range of values, choose different... , making The value of is the minimum, let's denote this minimum value. for ,in, It refers to the first The integer solution for the optimal angular velocity at time t is then As the optimal angular velocity Integer solutions;
[0077] The third scenario is if only the remainder description is received. Integer solutions are obtained using the same method. , for Take the smallest value ,in, Description of only received remainder Traversal coefficients in the case of The value range is 0 to All integers between, i.e. ;
[0078] It should be noted that: Indicates the first The integer solution of the optimal angular velocity at time t, when season ;
[0079] Optimal angular velocity for three cases Integer solutions By dequantizing, the integer solution is obtained. Mapped to the optimal angular velocity estimate ;
[0080] The fourth case is when both remainder descriptions are lost. Then the optimal angular velocity estimate Set as ,in, It refers to the first The optimal angular velocity estimate at time t, if Then let ;
[0081] Remainder Description and None were lost, only the remainder description was received. Only the remainder description was received. Description of remainder and The optimal angular velocity estimates for all four scenarios were lost. :
[0082] (9),
[0083] in, Remainder description and The case where all values are lost; if the optimal angular velocity estimate is... Non-empty and The mobile robot updates its position using the decoded optimal angular velocity estimate, and updates... Otherwise, trajectory tracking ends.
[0084] The present invention also provides a mobile robot trajectory tracking method based on the system, comprising the following steps:
[0085] Step 1: Set the update cycle (sampling cycle) on the remote control terminal. Set the maximum angular velocity constraint for the mobile robot. and linear velocity Generate target trajectory ,in, and The range of values for are respectively and and the target trajectory is expressed in arc length Divided into equally spaced intervals Target trajectory points ( If the integer is a positive integer much greater than 1, then the index is... The x-coordinates and y-coordinates of the target trajectory points are as follows: and , Take the index as The tangent direction of the target trajectory point and The angle between the positive axes is the reference heading angle at the target trajectory point. ; Calculate the index as curvature at the target trajectory point , as the target trajectory curvature of the mobile robot; set the mobile robot at index . The reference state on the target trajectory point is Set the range of change of the state components of the mobile robot. ,in, ,Right now, , , , , , Set the upper limit of integer index values for the state components of the mobile robot. and coprime positive integers and Set the upper limit of the integer index value for the optimal angular velocity of the mobile robot. and prediction step size Obtain the state error weight matrix Control input weight matrix Terminal weight matrix ;
[0086] Step 2: Set the update cycle (sampling cycle) on the mobile robot. and maximum angular velocity constraint Set the range of change of state components ; Get the upper limit of the integer index value of the state component and coprime positive integers and Set the maximum time index value. ;set up ;
[0087] Step 3: The mobile robot obtains its current position through the state perception module. and heading angle And record the current state as ;
[0088] Step 4: The mobile robot's uplink encoding module processes the state components acquired by the state perception module. , and Based on the Chinese Remainder Theorem and multiple description coding, two remainder descriptions are generated respectively. and ;
[0089] Step 5, the mobile robot's uplink transmission module describes the remainder. and The data is simultaneously transmitted to the uplink decoding module of the remote control terminal through two independent communication channels.
[0090] Step 6: The uplink decoding module of the remote control terminal obtains the estimated state components of the mobile robot based on the loss situation described by the remainder, the Chinese Remainder Theorem, and multiple description decoding. , and , and record as As the current (number) State estimation at each time point;
[0091] Step 7: The model prediction module on the remote control terminal estimates whether the mobile robot has reached the target endpoint based on the current state. If so, it sends the optimal control command (i.e., the optimal angular velocity). If left blank, the model prediction module on the remote control terminal will generate a reference trajectory based on the current state estimate, including: the index of the nearest target trajectory point on the target trajectory. , Reference state at each reference trajectory point ,in, Reference angular velocity of the mobile robot ,in, Then, the remote control terminal, based on the reference state, solves a quadratic programming problem that minimizes the trajectory tracking error to obtain the optimal control command, i.e., the optimal angular velocity. ;
[0092] Step 8: The downlink coding module of the remote control terminal generates two remainder descriptions of the optimal control pointer based on the Chinese Remainder Theorem and multi-description coding. and Then, it is simultaneously transmitted to the downlink decoding module of the mobile robot through two independent communication channels;
[0093] Step 9: The downlink decoding module of the mobile robot, based on the loss of the remainder description, and using the Chinese Remainder Theorem and multiple description decoding, obtains the optimal angular velocity estimate. If the optimal angular velocity estimate is Non-empty and The mobile robot updates its position using the decoded optimal angular velocity estimate, and updates... Then, proceed to step 3; otherwise, proceed to step 10.
[0094] Step 10, the method ends.
[0095] The present invention also provides an electronic device, including a processor and a memory, the memory storing program code that, when executed by the processor, causes the processor to perform the steps of the method.
[0096] The present invention also provides a storage medium storing a computer program or instructions that, when the computer program or instructions are run on a computer, execute the steps of the method described.
[0097] In a wireless packet loss environment, this method encodes the current state information of the mobile robot based on the Chinese Remainder Theorem and multiple description coding, and transmits it to the remote control terminal. The remote control terminal aims to minimize the trajectory tracking error and takes the limited angular velocity of the mobile robot as a condition. Based on the input reference trajectory and reference angular velocity, as well as the current state of the mobile robot obtained through wireless transmission, the remote control terminal uses model predictive control to generate the optimal control command. Based on the Chinese Remainder Theorem and multiple description coding, the optimal control command is encoded and transmitted to the robot's actuator, driving the robot to complete the desired trajectory tracking task in a wireless packet loss environment, thereby minimizing the trajectory tracking error.
[0098] Beneficial effects: 1. Accurate state reconstruction: By integrating a multi-description decoder that incorporates the motion constraints of the mobile robot, even if some transmitted descriptions are lost, the continuous state of the robot, such as position, heading, and speed, can be accurately reconstructed.
[0099] 2. Improve the system's tracking accuracy in random packet loss environments. Even when one description is completely lost, the system can still accurately reconstruct the current state with a high probability using another description and robot kinematic constraints. The system maintains high tracking accuracy even in harsh communication environments where both channels have a packet loss rate of 0.6%. Attached Figure Description
[0100] The present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments, and the advantages of the present invention in the above and / or other aspects will become clearer.
[0101] Figure 1 This is a system block diagram of the method of the present invention.
[0102] Figure 2 This is a system schematic diagram of the method of the present invention.
[0103] Figure 3 This refers to the heading angle of the present invention under different packet loss rates.
[0104] Figure 4 This invention relates to the robot's position under different packet loss rates.
[0105] Figure 5 This refers to the trajectory tracking error of the present invention under different packet loss rates. Detailed Implementation
[0106] like Figure 1 As shown, the mobile robot needs to maintain a constant linear velocity. The system moves from its initial position to its target endpoint along the target trajectory. During system initialization, the target trajectory is pre-set at the control terminal. The curve equation of the target trajectory is set as follows: ,in, and The range of values for are respectively and , For the target trajectory in Coordinates on the axis (i.e., the x-coordinate). For the target trajectory in The coordinates on the axis (i.e., the ordinate). This represents a parameterized mapping function. For target trajectory tracking, time... Discretization, with a sampling period set to Then, the distance the mobile robot moves within one sampling period is... The target trajectory is defined by arc length. Divided into equally spaced intervals Target trajectory points ( (If it is a positive integer much greater than 1). Then the index is... The x-coordinates and y-coordinates of the target trajectory points are as follows: and , For index is and The target trajectory point, let , , , (when season Set the mobile robot at index [index missing]. The reference heading angle at the target trajectory point is . This indicates that the index is The tangent direction of the target trajectory point and The angle along the positive direction of the axis. (from (Counterclockwise rotation of the axis is positive, clockwise rotation is negative). Reference heading angle. Given by equation (1):
[0107] (1),
[0108] in, This is the arctangent function. Additionally, it should be noted that the mobile robot will not encounter [a specific issue] during its movement. In the case where the index is... The target trajectory point is set, and the curvature of the target trajectory of the mobile robot is set to be... Specifically written as .Will Store it for later use. Set the mobile robot at index [index missing]. Reference state on the target trajectory point , where T represents transpose.
[0109] In order to perform target trajectory tracking, time Discretization, with a sampling period set to Then the first The actual time represented by each moment is ,in For time index, , The maximum time index value. The joint encoding / decoding and predictive control system considered in this invention uses... For the periodic state perception, control, and update, that is, in the first period... At any given moment, the mobile robot performs state perception, encoding, transmission, decoding, prediction calculation, and command execution. The first step is to set the state perception, encoding, transmission, decoding, prediction calculation, and command execution of the mobile robot at each time point. At any given moment, the position of the mobile robot in the two-dimensional planar coordinate system (global coordinate system) is: ,in, For mobile robots in coordinates on the axis For mobile robots in Coordinates on the axis. Set the first... At any given moment, the actual heading angle of the mobile robot in the two-dimensional coordinate system (global coordinate system) is: .here, express The angle between the axis and the actual heading of the mobile robot. (from (Counterclockwise rotation of the axis is positive, clockwise rotation is negative). The robot's kinematic equations are used for calculation and updates in the model prediction module. Based on the mobile robot's motion capability constraints, the executable range of the angular velocity is set as follows: ,in, This indicates the maximum angular velocity that the mobile robot can achieve. Indicates the mobile robot in the The angular velocity at each moment.
[0110] like Figure 2As shown, this embodiment provides a mobile robot trajectory tracking system in a wireless packet loss environment, consisting of eight parts: a state perception module, an uplink encoding module, an uplink transmission module, an uplink decoding module, a model prediction module, a downlink encoding module, a downlink transmission module, and a downlink decoding module. First, the state perception module measures the robot's real state in real time using sensors. The uplink encoding module, based on the Chinese Remainder Theorem and multi-description coding, discretizes and quantizes the robot's real state, generating two remainder descriptions. The uplink transmission module transmits the two remainder descriptions generated by the uplink encoding module to the remote control terminal. During this transmission, data loss may occur. The uplink decoding module at the control terminal decodes and reconstructs the state based on the remainder description received at the current moment. Next, the model prediction module at the control terminal performs rolling optimization based on the decoded and reconstructed state to generate the optimal control command. Then, the downlink encoding module, also based on the Chinese Remainder Theorem and multi-description coding, discretizes and quantizes the robot's optimal control command, generating two remainder descriptions. These two remainder descriptions are sent to the mobile robot terminal through the downlink transmission module. During this transmission process, data loss may also occur. Finally, the robot's downlink decoding module will reconstruct the optimal control command based on the remainder received at the current moment, driving the robot to complete the trajectory tracking task.
[0111] The following section will elaborate on the working process and interrelationships of the eight modules: state awareness module, uplink coding module, uplink transmission module, uplink decoding module, model prediction module, downlink coding module, downlink transmission module, and downlink decoding module.
[0112] At the initial moment, in the state perception module, the mobile robot uses its initial starting position as the origin of the coordinate system and its initial orientation as the heading angle. The initial state of the mobile robot is denoted as ,in, It is the origin of the robot's coordinates. This is the initial heading angle, i.e., the robot's initial orientation. The mobile robot in the... The state at any given moment is obtained through sensors on the mobile robot, such as odometers, Hall effect sensors, vision sensors, and gyroscopes. For time index, The sensor obtains the first... The state at each moment is denoted as ,in, Indicates the first The position at that moment For the first The heading angle at a given moment.
[0113] For ease of mathematical expression, the mobile robot is represented in the first... The state components at each time step are represented as follows: , , .in Due to the limited activity area and heading angle of mobile robots... State components The possible values of will also be limited, among which Set state components The range of variation is In other words, The range of variation is , The range of variation is , The range of variation is .in , and These represent the mobile robots in Minimum value of coordinates on the axis, Minimum values of coordinates on the axis and minimum heading angle; , and These represent the mobile robots in Maximum value of coordinates on the axis The maximum value of the coordinates on the axis and the maximum value of the heading angle. In fact, , , , , , .
[0114] The uplink encoding module uses a uniform quantizer to process the state components acquired by the state sensing module. Quantization encoding is performed. First, the continuous state components are... Mapped to integer index value :
[0115] (2),
[0116] in, State components The upper limit of integer index values, that is... Mapped to Within the range, This indicates that the input value is rounded to the nearest integer. For The uplink encoding module uses the Chinese Remainder Theorem to perform a modulo operation, that is, using selected coprime positive integers. and (Also known as the modulus), the remainder is calculated according to equation (3):
[0117] (3),
[0118] in, and They represent modulo operations respectively. And modulus Operations, and This describes the resulting pair of remainders. It should be noted that: and Satisfying the congruence equation given by equation (4), the uplink encoding module describes the remainder. and It is then passed to the uplink transmission module for transmission.
[0119] The uplink transmission module describes the remainder. and Data is transmitted simultaneously to the uplink decoding module through two independent communication channels. Due to imperfect channel transmission characteristics or external interference, packet loss may occur during data transmission from the uplink module. This can be mitigated by utilizing variables. and Let each represent the remainder description. and In the At what point was the data successfully received or lost? .make Remainder description In the The message was successfully received at that moment. Remainder description In the A moment was lost; Remainder description In the The message was successfully received at that moment. Remainder description In the Several moments were lost, among which... Thus, in the first The probability of packet loss occurring at any given moment is: , ,in, Indicates the probability of an event occurring. and Remainder descriptions Description of the probability of packet loss and the remainder The probability of packet loss.
[0120] In the uplink decoding module, if the remainder description and If none of the components are lost and all are received, then solve the congruence equation given in equation (4) to obtain the state components. The unique integer solution :
[0121] (4),
[0122] in, and To use the Chinese Remainder Theorem to find integer index values The coprime positive integers selected for the modulo operation (also known as the modulus). For integer index values Total modulus, To exclude the modulus Partial product, To exclude the modulus Partial product, and They are respectively Regarding the model inverse and Regarding the model The inverse element, Modulo Calculation. If only the remainder description is received. The general solution may be: ,in, Only the remainder was received The traversal coefficient in this case ranges from 0 to... All integers between, i.e. Within the possible range of values, choose different... , making The value of is the minimum, let's denote this minimum value. for ,but As state components Integer solutions. If only the remainder description is received. Integer solutions are obtained using the same method. , for Take the smallest value ,in, Only the remainder was received The traversal coefficient in this case ranges from 0 to... All integers between It should be noted that: Represents the previous state component (the first one) (State components at time) Integer solutions, when season ,in, Represents the initial state components of the mobile robot. For the state components in the above three cases... Integer solutions By performing dequantization, integer solutions are mapped to state estimates. Actually, there is a fourth case, namely, the remainder description. and Both remainder descriptions are lost, which can be further divided into two sub-cases: 1) When both remainder descriptions are lost and At that time, the estimated value of the state components Set as ,in, Indicates the previous moment (the first moment) State component estimates at time ( ); 2) When both remainder descriptions are lost and At that time, then order ,in This represents the initial state components of the mobile robot. Thus, the remainder describes... and None were lost, only the remainder description was received. Only the remainder description was received. Description of remainder and State component estimates for all four scenarios are lost. It is given by the following formula:
[0123] (5),
[0124] in, Remainder description and In the case of all being lost, Represents the robot's initial state components. State components The upper limit of integer index values, State components Integer solutions, and State components The minimum and maximum values.
[0125] Therefore, the estimated state components of the mobile robot obtained through decoding are: , and And record For the first State estimation at each time step.
[0126] Then, based on the current state estimate, it is determined whether the mobile robot has reached the target endpoint. If it has reached the endpoint, the optimal control command (i.e., optimal angular velocity) is then applied. If left blank, otherwise, generate an MPC reference trajectory. First, find the nearest target trajectory point on the target trajectory; specifically, this is for solving the problem: ,in, Index the target trajectory point closest to the current mobile robot position. and The indexes are respectively The x and y coordinates of the target trajectory point, and State components The estimated value and The estimated value. From the index. Start taking it backwards again There are target trajectory points used as reference trajectories (therefore, there are a total of ... One reference trajectory point, Also known as the prediction step size, if there are not enough target trajectory points, the last target trajectory point is used and the process is repeated. For the sake of simplicity, this will be referred to as... The reference state at each reference trajectory point is written as ,in, , and They represent the first The x-coordinate, y-coordinate, and heading angle of the mobile robot at each reference trajectory point In fact, when At this time, the reference state ,in Is the index as The reference state on the reference trajectory point corresponding to the target trajectory point.
[0127] The reference angular velocity of the mobile robot on the reference trajectory can be calculated using the curvature of the target trajectory. ,in, The linear velocity of the mobile robot, (Only the first part is counted) (reference angular velocity at each reference trajectory point) Is the index as The curvature of the target trajectory at the target trajectory point. Similarly, when At this time, the reference angular velocity equal ,in, Is the index as The curvature of the target trajectory at the target trajectory point.
[0128] make Here are the reference control commands at the reference trajectory points. Next, we solve the MPC optimization problem to obtain the optimal control commands. In the... At each moment, state estimation Using the initial conditions, the optimal control sequence is obtained by solving a quadratic programming problem. Let the predicted state be... ,in, , , and They are the predicted ones Axis coordinates Axis coordinates and heading angle. Assume the predictive control command is... ,in, This is the predicted angular velocity.
[0129] Let the state deviation be The control deviation is The trajectory tracking error is defined as: ,in, For the first One state deviation (i.e., State deviation at time ), weight matrix for diagonal matrix for diagonal matrix for Diagonal matrix. It is a positive definite matrix. and It is a positive semi-definite matrix. Here, consider two dynamic constraints. Constraint 1 is: ,in, Indicates the first One state deviation (i.e., State deviation at time ), Indicates the first One state deviation (i.e., State deviation at time ), For the first One control deviation, and It is the first A predicted state (i.e., Predicted state at time ), in reference state and reference control commands The parameter matrix after performing a first-order Taylor expansion on the above, where, Constraint 2 is a control variable constraint, because Therefore, constraint 2 is: .
[0130] The goal of the MPC controller is to minimize trajectory tracking error. That is, to find a set of predictive control commands This enables the predicted state of the mobile robot. As close as possible to the reference state Simultaneously predict control commands Also, get as close as possible to the reference control command. And satisfy the constraints of dynamics. Therefore, the quadratic programming problem that the MPC controller needs to solve can be written as:
[0131] (6),
[0132] in, The optimal control sequence is required to achieve the desired objective.
[0133] Ultimately, due to the control weight matrix in the trajectory tracking error... Positive definite, state weight matrix and The problem is semi-definite, and all constraints are linear. Therefore, the quadratic programming problem given by equation (6) is a convex optimization problem. An interior-point solver can find the global optimum within the feasible region. Solving the quadratic programming problem given by equation (6) yields the optimal control sequence. .
[0134] Select the first optimal control quantity (Right now, time In ) Encoding is performed through the downlink encoding module. The optimal angular velocity is obtained by the MPC controller in the model prediction module. The downlink encoding module uses a uniform quantizer to process the optimal angular velocity. Quantization encoding is then performed. First, the optimal angular velocity is... Mapped to integer index value :
[0135] (7),
[0136] in, Optimal angular velocity The upper limit of integer index values, that is... Mapped to Within the range, This indicates that the input value is rounded to the nearest integer. For The downlink encoding module uses the Chinese Remainder Theorem (CRT) to perform a remainder operation on the optimal angular velocity. Integer index value Using selected coprime positive integers and (Also known as the modulus), the remainder is calculated using the following formula:
[0137] (8),
[0138] in, and They represent modulo operations respectively. Operations and Modulus Operations, and This describes the resulting pair of remainders. It should be noted that: and The congruence equation given by equation (9) is satisfied; the downlink coding module describes the remainder. and It is passed to the downlink transmission module for transmission.
[0139] The downlink transmission module describes the remainder. and Data is transmitted simultaneously to the downlink decoding module through two independent communication channels. Due to imperfect channel transmission characteristics or external interference, packet loss may occur during data transmission by the downlink module. Utilizing variables... and Let each represent the remainder description. and In the The moment it is successfully received or lost. Let Remainder description In the The message was successfully received at that moment. Remainder description In the A moment was lost; Remainder description In the The message was successfully received at that moment. Remainder description In the Several moments were lost, among which... Thus, in the first The probability of packet loss occurring at any given moment is: , ,in, Indicates the probability of an event occurring. and Remainder descriptions Description of the probability of packet loss and the remainder The probability of packet loss.
[0140] In the downlink decoding module, if the remainder description and If none of the signals are lost and all are received, then solve the congruence equation given in equation (9) to obtain the optimal angular velocity. The unique integer solution :
[0141] (9),
[0142] in, and To use the Chinese Remainder Theorem to find the integer index value of the optimal angular velocity The coprime positive integers selected for the modulo operation (also known as the modulus). For integer index values Total modulus, To exclude the modulus Partial product, To exclude the modulus Partial product, and They are respectively Regarding the model inverse and Regarding the model The inverse element, Modulo Calculation. If only the remainder description is received. The general solution may be: ,in, Only the remainder was received The traversal coefficient in this case ranges from 0 to... All integers between, i.e. Within the possible range of values, choose different... , making The value of is the minimum, let's denote this minimum value. for ,in, It refers to The integer solution for the optimal angular velocity at time t is then As the optimal angular velocity Integer solutions. If only the remainder description is received. Integer solutions are obtained using the same method. , for Take the smallest value ,in, Description of only received remainder The traversal coefficient in this case ranges from 0 to... All integers between, i.e. It should be noted that: Indicates the first The integer solution of the optimal angular velocity at time t, when season The optimal angular velocity for the three cases above. Integer solutions By performing a dequantization operation, it is mapped to the optimal angular velocity estimate. Actually, there is a fourth case, namely, the remainder description. and Both are lost, which can be further divided into two sub-cases: 1) When both remainder descriptions are lost and At that time, the optimal angular velocity estimate Set as ,in, It refers to 1) Optimal angular velocity estimate at time; 2) When both remainder descriptions are lost and At that time, then order Thus, the remainder describes and None were lost, only the remainder description was received. Only the remainder description was received. Remainder Description and The optimal angular velocity estimates for all four scenarios were lost. :
[0143] (10)
[0144] in, Remainder description and The case where all values are lost. If the optimal angular velocity estimate is... Non-empty and The mobile robot updates its position using the decoded optimal angular velocity estimate, and updates... Otherwise, trajectory tracking ends.
[0145] The entire process repeats from the state awareness module, forming a control sequence of perception, uplink encoding, uplink transmission, uplink decoding, model prediction, downlink encoding, downlink transmission, and downlink decoding, until the tracking task is completed.
[0146] This embodiment also provides a mobile robot trajectory tracking method based on the system, specifically including the following steps:
[0147] Step 1: Set the update cycle (sampling cycle) on the remote control terminal. Set the maximum angular velocity constraint for the mobile robot. and linear velocity Generate target trajectory ,in, and The range of values for are respectively and and the target trajectory is expressed in arc length Divided into equally spaced intervals points ( If the integer is a positive integer much greater than 1, then the index is... The x-coordinates and y-coordinates of the target trajectory points are as follows: and , Take the index as The tangent direction of the target trajectory point and The angle between the positive axes is the reference heading angle at the target trajectory point. ; Calculate the index as curvature at the target trajectory point , as the target trajectory curvature of the mobile robot; set the mobile robot at index . The reference state on the target trajectory point is Set the range of change of the state components of the mobile robot. ,in, ,Right now, , , , , , Set the upper limit of integer index values for the state components of the mobile robot. and coprime positive integers and Set the upper limit of the integer index value for the optimal angular velocity of the mobile robot. and prediction step size Obtain the state error weight matrix Control input weight matrix Terminal weight matrix ;
[0148] Step 2: Set the update cycle (sampling cycle) on the mobile robot. Maximum angular velocity constraint and linear velocity Set the range of change of state components ; Get the upper limit of the integer index value of the state component and coprime positive integers and Set the maximum time index value. ;set up ;
[0149] Step 3: The mobile robot obtains its current position through the state perception module. and heading angle And record the current state as ;
[0150] Step 4: The mobile robot's uplink encoding module processes the state components acquired by the state perception module. , and Based on the Chinese Remainder Theorem and multiple description coding, two remainder descriptions are generated respectively. and ;
[0151] Step 5, the mobile robot's uplink transmission module describes the remainder. and The data is simultaneously transmitted to the uplink decoding module of the remote control terminal through two independent communication channels.
[0152] Step 6: The uplink decoding module of the remote control terminal obtains the estimated state components of the mobile robot based on the loss situation described by the remainder, the Chinese Remainder Theorem, and multiple description decoding. , and , and record as As the current (number) State estimation at each time point;
[0153] Step 7: The model prediction module on the remote control terminal estimates whether the mobile robot has reached the target endpoint based on the current state. If so, it sends the optimal control command (i.e., the optimal angular velocity). If left blank, the model prediction module on the remote control terminal will generate a reference trajectory based on the current state estimate, including: the index of the nearest target trajectory point on the target trajectory. , Reference state at each reference trajectory point ,in, Reference angular velocity of the mobile robot ,in, Then, the remote control terminal, based on the reference state, solves a quadratic programming problem that minimizes the trajectory tracking error to obtain the optimal control command, i.e., the optimal angular velocity. ;
[0154] Step 8: The downlink coding module of the remote control terminal generates two remainder descriptions of the optimal control pointer based on the Chinese Remainder Theorem and multi-description coding. and Then, it is simultaneously transmitted to the downlink decoding module of the mobile robot through two independent communication channels;
[0155] Step 9: The downlink decoding module of the mobile robot, based on the loss of the remainder description, and using the Chinese Remainder Theorem and multiple description decoding, obtains the optimal angular velocity estimate. If the optimal angular velocity estimate is Non-empty and The mobile robot updates its position using the decoded optimal angular velocity estimate, and updates... Then, proceed to step 3; otherwise, proceed to step 10.
[0156] Step 10, the method ends.
[0157] The following is a simulation experiment conducted on a Windows 10 computer using Python. The experimental environment included Python 3.10.3, matplotlib version 3.10.8, numpy version 2.2.6, and cvxpy version 1.7.5. The target trajectory set in the experiment was: , , The initial position is set to , Heading angle The linear velocity is set to Sampling period Seconds, the two coprime moduli of the uplink are set to , and the upper limit of integer index values. ,in, The two coprime moduli of the downlink are also set to , and the upper limit of integer index values. Set the prediction step size State error weight matrix Control input weight matrix Terminal weight matrix Maximum angular velocity .
[0158] Different combinations of packet loss rates were set in the experiment, and the packet loss in uplink transmission was denoted as . Packet loss in downlink transmission is denoted as The packet loss combination is set as follows: and , and , and , and , and .
[0159] from Figure 3 , Figure 4 and Figure 5 The results show that when the packet loss rate is and Below this, the actual heading angle deviation and position deviation are small, the tracking effect is relatively good, and the trajectory tracking error remains at a low level. When the packet loss rate is... and At this point, the trajectory tracking error will increase slightly, but it can still track normally. When the packet loss rate is... and At that time, the actual heading angle deviation and position deviation are large, resulting in a large trajectory tracking error.
[0160] This invention provides a mobile robot trajectory tracking system and method in a wireless packet loss environment. Many methods and approaches exist for implementing this technical solution; the above description is merely a preferred embodiment of the invention. It should be noted that those skilled in the art can make various improvements and modifications without departing from the principles of this invention, and these improvements and modifications should also be considered within the scope of protection of this invention. All components not explicitly stated in this embodiment can be implemented using existing technologies.
Claims
1. A mobile robot trajectory tracking system under wireless packet loss environment, characterized in that, It includes a state awareness module, an uplink coding module, an uplink transmission module, an uplink decoding module, a model prediction module, a downlink coding module, a downlink transmission module, and a downlink decoding module; The state perception module measures the robot's real-time state through sensors; The uplink coding module, based on the Chinese Remainder Theorem and multi-description coding, discretizes and quantizes the robot's real state to generate two remainder descriptions. The uplink transmission module transmits the two remainder descriptions generated by the uplink encoding module to the remote control terminal; The uplink decoding module of the remote control terminal decodes and reconstructs the state based on the remainder description received at the current moment; The model prediction module at the remote control terminal performs rolling optimization based on the decoded and reconstructed state to generate the optimal control command; The downlink encoding module, based on the Chinese Remainder Theorem and multi-description encoding, discretizes and quantizes the optimal control command of the robot to generate two remainder descriptions, which are then sent to the mobile robot via the downlink transmission module. The mobile robot's downlink decoding module will reconstruct the optimal control command based on the remainder received at the current moment, driving the robot to complete the trajectory tracking task.
2. The system according to claim 1, characterized in that, At the initial moment, in the state perception module, the mobile robot uses its initial starting position as the origin of the coordinate system and its initial orientation as the heading angle. Initial state of the mobile robot ,in, It is the origin of the robot's coordinates. It represents the initial heading angle; T indicates transpose; Mobile robots in The state at each moment is obtained through sensors on the mobile robot, where For time index, , For the maximum time index value, the sensor obtains the first... The state at each moment is denoted as ,in, Indicates the first The position at that moment For the first The heading angle at any given moment; The mobile robot in The state components at each time step are represented as follows: , , ,in Heading angle State components The value of is restricted, among which Set state components The range of variation is , The range of variation is , The range of variation is , The range of variation is ;in , and These represent the mobile robots in Minimum value of coordinates on the axis, Minimum values of coordinates on the axis and minimum heading angle; , and These represent the mobile robots in Maximum value of coordinates on the axis The maximum value of the coordinates on the axis and the maximum value of the heading angle.
3. The system according to claim 2, characterized in that, The uplink encoding module uses a uniform quantizer to process the state components acquired by the state sensing module. Quantization encoding is performed: First, the continuous state components are... Mapped to integer index value : (1), in, State components The upper limit of integer index values, that is... Mapped to Within the range, This indicates that the input value is rounded to the nearest integer. The uplink encoding module uses the Chinese Remainder Theorem to encode integer index values. Perform the modulo operation, that is, use the selected coprime positive integers. and Perform the remainder calculation according to equation (2): (2), in, and They represent modulo operations respectively. Operations and Modulus Operations, and The resulting pair of remainder descriptions; the uplink encoding module converts the remainder descriptions and It is then passed to the uplink transmission module for transmission.
4. The system according to claim 3, characterized in that, The uplink transmission module describes the remainder. and It is transmitted simultaneously to the uplink decoding module through two independent communication channels; Using variables and Let each represent the remainder description. and In the At what point was the data successfully received or lost? ; Remainder description In the The message was successfully received at that moment. Remainder description In the A moment was lost; Remainder description In the The message was successfully received at that moment. Remainder description In the Several moments were lost, among which... ; In the The probability of packet loss occurring at any given moment is: , ,in, Indicates the probability of an event occurring. and Remainder descriptions Description of the probability of packet loss and the remainder The probability of packet loss; In the uplink decoding module, there are four possible scenarios: In the first case, if the remainder description and If none of the components are lost and all are received, then solve the congruence equation given in equation (4) to obtain the state components. The unique integer solution : (3), in, and To use the Chinese Remainder Theorem to find integer index values The coprime positive integers selected for the modulo operation. For integer index values Total modulus, To exclude the modulus Partial product, To exclude the modulus Partial product, and They are respectively Regarding the model inverse and Regarding the model The inverse element, Modulo Operations; and The congruence equations given by equation (3) are satisfied; In the second scenario, if only the remainder description is received... The general solution may be: ,in, Description of only received remainder Traversal coefficients in the case of The value range is 0 to All integers between Within the possible range of values, choose different... , making The value of is the minimum, let's denote this minimum value. for ,but As state components Integer solutions; The third scenario is if only the remainder description is received. Obtain integer solutions , for Take the smallest value ,in, Only the remainder was received Traversal coefficients in the case of The value range is 0 to All integers between, i.e. ; It should be noted that: Represents the previous state component Integer solutions, when season ,in, Represents the initial state components of the mobile robot. ; State components in three cases Integer solutions By performing dequantization, integer solutions are mapped to state estimates. ; The fourth case is when both remainder descriptions are lost. State component estimates Set as ,in, This represents the estimated value of the state components at the previous time step. Then let ,in Represents the initial state components of the mobile robot; Remainder Description and None were lost, only the remainder description was received. Only the remainder description was received. Description of remainder and State component estimates for all four scenarios are lost. It is given by the following formula: (4), in, Remainder description and In the case of all being lost, Represents the robot's initial state components. State components Integer solutions, and State components The minimum and maximum values; The estimated state components of the mobile robot are obtained through decoding: , and And record For the first State estimation at each time step; Based on the current state estimate, determine whether the mobile robot has reached the target endpoint. If so, then apply the optimal control command, i.e., the optimal angular velocity. If set to empty, otherwise, generate the model predictive control MPC reference trajectory: First, find the nearest target trajectory point on the target trajectory, specifically by solving the following problem: , in, Index the target trajectory point closest to the current mobile robot position. and The indexes are respectively The x and y coordinates of the target trajectory point, and State components The estimated value and The estimated value; From the index Start taking it from the back The target trajectory points are used as reference trajectories. If there are not enough target trajectory points, the last target trajectory point is used and the process is repeated. Will The reference state at each reference trajectory point is written as ,in, , and They represent the first The x-coordinate, y-coordinate, and heading angle of the mobile robot at each reference trajectory point ; when At this time, the reference state ,in Is the index as The reference state on the reference trajectory point corresponding to the target trajectory point; The reference angular velocity of the mobile robot on the reference trajectory is calculated using the curvature of the target trajectory. ,in, , The linear velocity of the mobile robot, Is the index as The curvature of the target trajectory at the target trajectory point; when At this time, the reference angular velocity equal ,in, Is the index as The curvature of the target trajectory at the target trajectory point; make Reference control commands for the target trajectory points; Solve the Model Predictive Control (MPC) optimization problem to obtain the optimal control command: in the first... At each moment, state estimation Given the initial conditions, the optimal control sequence is obtained by solving a quadratic programming problem. Let the predicted state be... ,in, , , and They are the predicted ones Axis coordinates Axis coordinates and heading angle; Predictive control command ; Let the state deviation Control deviation ; Define trajectory tracking error for: , in, For the first Each state deviation controls the input weight matrix. for Diagonal matrix, state error weight matrix for Diagonal matrix, terminal weight matrix for diagonal matrix; It is a positive definite matrix. and It is a positive semi-definite matrix; Consider two dynamic constraints: Constraint 1 is: ,in, Indicates the first One state deviation, Indicates the first One state deviation, For the first One control deviation, and Indicates the first A predicted state in the reference state and reference control commands The parameter matrix after performing a first-order Taylor expansion on the above, where, ; Constraint 2 is: ; The objective of Model Predictive Control (MPC) is to minimize trajectory tracking error. That is, to find a set of predictive control commands This enables the predicted state of the mobile robot. As close as possible to the reference state Simultaneously predict control commands Also, get as close as possible to the reference control command. To satisfy the constraints of dynamics, the quadratic programming problem that the MPC controller needs to solve can be written as: (5), in, For the optimal control sequence to achieve the expected goal, st represents the constraint; Solve the quadratic programming problem given by equation (5) to obtain the optimal control sequence. .
5. The system according to claim 4, characterized in that, Select the first optimal control quantity In Encoding is performed through the downlink encoding module. The optimal angular velocity obtained by the MPC controller in the model prediction module; The downlink encoding module utilizes a uniform quantizer to determine the optimal angular velocity. Quantization encoding is performed: First, the optimal angular velocity is... Mapped to integer index value : (6), in, Optimal angular velocity The upper limit of integer index values, that is... Mapped to Within the range; for The downlink encoding module uses the Chinese Remainder Theorem to perform a remainder operation, that is, for the integer index value of the optimal angular velocity. Using selected coprime positive integers and The remainder is calculated using the following formula: (7), in, and They represent modulo operations respectively. Operations and Modulus Operations, and The resulting pair of remainder descriptions; the downlink encoding module converts the remainder descriptions and It is passed to the downlink transmission module for transmission.
6. The system according to claim 5, characterized in that, The downlink transmission module describes the remainder. and It is transmitted simultaneously to the downlink decoding module through two independent communication channels; Using variables and Let each represent the remainder description. and In the The moment it is successfully received or lost, Remainder description In the The message was successfully received at that moment. Remainder description In the A moment was lost; Remainder description In the The message was successfully received at that moment. Remainder description In the Several moments were lost, among which... ; in the The probability of packet loss occurring at any given moment is: , ,in, Indicates the probability of an event occurring. and Remainder descriptions Description of the probability of packet loss and the remainder The probability of packet loss.
7. The system according to claim 6, characterized in that, In the downlink decoding module, there are four possible scenarios: In the first case, if the remainder description and If none of the signals are lost and all signals are received, then the congruence equation given in equation (8) is solved to obtain the optimal angular velocity. The unique integer solution : (8), in, and To use the Chinese Remainder Theorem to find the integer index value of the optimal angular velocity The coprime positive integers selected for the modulo operation. For integer index values Total modulus, To exclude the modulus Partial product, To exclude the modulus Partial product, and They are respectively Regarding the model inverse and Regarding the model The inverse element, Modulo Operations; and Satisfy the congruence equation given by equation (8); In the second scenario, if only the remainder description is received... The general solution may be: ,in, Description of only received remainder Traversal coefficients in the case of The value range is 0 to All integers between, i.e. Within the possible range of values, choose different... , making The value of is the minimum, let's denote this minimum value. for ,in, It refers to the first The integer solution for the optimal angular velocity at time t is then As the optimal angular velocity Integer solutions; The third scenario is if only the remainder description is received. Integer solutions are obtained using the same method. , for Take the smallest value ,in, Description of only received remainder Traversal coefficients in the case of The value range is 0 to All integers between, i.e. ; Indicates the first The integer solution of the optimal angular velocity at time t, when season ; Optimal angular velocity for three cases Integer solutions By dequantizing, the integer solution is obtained. Mapped to the optimal angular velocity estimate ; The fourth case is when both remainder descriptions are lost. Then the optimal angular velocity estimate Set as ,in, It refers to the first The optimal angular velocity estimate at time t; if Then let ; Remainder Description and None were lost, only the remainder description was received. Only the remainder description was received. Description of remainder and The optimal angular velocity estimates for all four scenarios were lost. : (9), in, Remainder description and The case where all values are lost; if the optimal angular velocity estimate is... Non-empty and The mobile robot updates its position using the decoded optimal angular velocity estimate, and updates... Otherwise, trajectory tracking ends.
8. A mobile robot trajectory tracking method based on the system described in any one of claims 1 to 7, characterized in that, Includes the following steps: Step 1: Set the update cycle on the remote control terminal. Set the maximum angular velocity constraint for the mobile robot. and linear velocity Generate target trajectory ,in, and The range of values for are respectively and and the target trajectory is expressed in arc length Divided into equally spaced intervals If there are 1 target trajectory point, then the index is 1. The x-coordinates and y-coordinates of the target trajectory points are as follows: and , Take the index as The tangent direction of the target trajectory point and The angle between the positive axes is the reference heading angle at the target trajectory point. ; Calculate the index as curvature at the target trajectory point , as the target trajectory curvature of the mobile robot; set the mobile robot at index . The reference state on the target trajectory point is Set the range of change of the state components of the mobile robot. ,in, ,Right now, , , , , , Set the upper limit of integer index values for the state components of the mobile robot. and coprime positive integers and Set the upper limit of the integer index value for the optimal angular velocity of the mobile robot. and prediction step size Obtain the state error weight matrix Control input weight matrix Terminal weight matrix ; Step 2: Set the update cycle on the mobile robot. and maximum angular velocity constraint Set the range of change of state components ; Get the upper limit of the integer index value of the state component and coprime positive integers and Set the maximum time index value. ;set up ; Step 3: The mobile robot obtains its current position through the state perception module. and heading angle And record the current state as ; Step 4: The mobile robot's uplink encoding module processes the state components acquired by the state perception module. , and Based on the Chinese Remainder Theorem and multiple description coding, two remainder descriptions are generated respectively. and ; Step 5, the mobile robot's uplink transmission module describes the remainder. and The data is simultaneously transmitted to the uplink decoding module of the remote control terminal through two independent communication channels. Step 6: The uplink decoding module of the remote control terminal obtains the estimated state components of the mobile robot based on the loss situation described by the remainder, the Chinese Remainder Theorem, and multiple description decoding. , and , and record as This serves as an estimate of the current state. Step 7: The model prediction module on the remote control terminal determines whether the mobile robot has reached the target endpoint based on the current state estimate. If so, the optimal control command is set to empty; otherwise, the model prediction module on the remote control terminal generates a reference trajectory based on the current state estimate, including: the index of the nearest target trajectory point on the target trajectory. , Reference state at each reference trajectory point ,in, Reference angular velocity of the mobile robot ,in, Then, the remote control terminal, based on the reference state, solves a quadratic programming problem that minimizes the trajectory tracking error to obtain the optimal control command, i.e., the optimal angular velocity. ; Step 8: The downlink coding module of the remote control terminal generates two remainder descriptions of the optimal control pointer based on the Chinese Remainder Theorem and multi-description coding. and Then, it is simultaneously transmitted to the downlink decoding module of the mobile robot through two independent communication channels; Step 9: The downlink decoding module of the mobile robot, based on the loss of the remainder description, and using the Chinese Remainder Theorem and multiple description decoding, obtains the optimal angular velocity estimate. If the optimal angular velocity estimate is Non-empty and The mobile robot updates its position using the decoded optimal angular velocity estimate, and updates... Then, proceed to step 3; otherwise, proceed to step 10. Step 10, the method ends.
9. An electronic device, characterized in that, It includes a processor and a memory, the memory storing program code that, when executed by the processor, causes the processor to perform the steps of the method as described in claim 8.
10. A storage medium, characterized in that, It stores a computer program or instructions that, when run on a computer, perform the steps of the method as described in claim 8.