Home  >  Article  >  Technology peripherals  >  A silkier control algorithm than PID & Carnegie Mellon University

A silkier control algorithm than PID & Carnegie Mellon University

王林
王林Original
2024-06-09 09:57:28778browse

A silkier control algorithm than PID & Carnegie Mellon University

MPC control algorithm, the full name is Model Predictive Control (Model Predictive Control), is a control technology based on the system dynamic model. It works by predicting the future behavior of the system through mathematical models and optimizing the system's control inputs based on these predictions to achieve the desired output. The core idea of ​​the MPC control algorithm is to obtain the best control input by optimizing the prediction results for a period of time in the future in each control cycle. This optimization is based on some prediction results to optimize the control input of the system to achieve the desired output. The MPC control algorithm is widely used and is especially suitable for control systems that need to satisfy some constraints. By combining system models and optimization techniques, MPC can be used in different industries. The core of the MPC control algorithm lies in its prediction model, which can predict the future system state based on the current state information of the system. The form of the prediction model is not fixed and can be a state space equation, transfer function, step response model, impulse response model, fuzzy model, etc. The specific form depends on the controlled object and the state that needs to be predicted.

TinyMPC is an open source solver tailored for convex model predictive control, providing high-speed calculations. TinyMPC is implemented in C++ with minimal dependencies and is particularly suitable for embedded control and robotics applications on asset-constrained platforms. TinyMPC can handle state and input boundaries as well as second-order constraints. Python, Julia, and MATLAB interfaces are available to help generate code for embedded systems.

Robot Demonstration

TinyMPC provides support for privacy-enhanced computing applications and can be used to bridge the gap between secure multi-party computation and resource-constrained processing platforms. Integrating TinyMPC into robots with insufficient computing power enables them to perform operations quickly and exhibit the advantages of safe execution.

Dynamic Obstacle Avoidance

TinyMPC runs fast enough to relinearize constraints at each time step, allowing it to perform operations on moving obstacles. reasoning. On the left, a virtual sphere centered at the end of the joystick is linearized into a new set of hyperplane constraints at each time step. The algorithm can also handle any number of any meaningful number of arbitrary linear constraints. For example, on the right side, it avoids the end of the stick at the end of the stick while staying in the yz plane.

A silkier control algorithm than PID & Carnegie Mellon University

Extreme Pose Recovery

TinyMPC can initiate recovery under extreme conditions. In this example it is compared to the original controller of Crazyflie 2.1. Only TinyMPC can break through control limits and achieve clean recovery operations.

A silkier control algorithm than PID & Carnegie Mellon University

Figure 8 Tracking

We used the same inventory controller to accomplish the infeasible fast figure-8 tracking task ( The time required to complete a single figure 8 is only possible if the drone is more powerful). TinyMPC and PID are able to stay upright, but TinyMPC's trajectory is closer to a figure-eight shape.

A silkier control algorithm than PID & Carnegie Mellon University

Microcontroller Benchmarks

In microcontroller benchmarks, TinyMPC outperforms the best in speed and memory footprint Advanced solver. We solve randomly generated QP-based MPC problems and compare the iteration time and memory footprint with OSQP. TinyMPC's maximum speedup on OSQP is 8x that of OSQP with much less memory.

A silkier control algorithm than PID & Carnegie Mellon University#TinyMPC is now also able to handle conic constraints! In (b) we benchmark TinyMPC against two existing cone solvers (SCS and ECOS) with embedded support for the rocket soft landing problem. TinyMPC achieves an average speedup of 13x on SCS and 137x on ECOS.

A silkier control algorithm than PID & Carnegie Mellon University#Real-time control requires the solver to return a solution within a strict time window. The trajectory tracking performance of TinyMPC was compared with that of SCS and ECOS on the rocket soft landing problem while artificially varying the amount of time available for each solution. TinyMPC has fewer constraint violations and lower tracking errors than SCS and ECOS across all control durations.

A silkier control algorithm than PID & Carnegie Mellon University Algorithm contributor:

A silkier control algorithm than PID & Carnegie Mellon University

程式碼取得位址:

GitHub - TinyMPC/TinyMPC: Model-predictive control for microcontrollers

#

The above is the detailed content of A silkier control algorithm than PID & Carnegie Mellon University. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn