Package Summary
| Version | 0.2.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/EasyNavigation/easynav_plugins.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-02-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Juan S. Cely G.
Authors
easynav_mpc_controller
Description
A Model Predictive Controller (MPC) implementation for Easy Navigation.
Authors and Maintainers
- Authors: Intelligent Robotics Lab
- Maintainers: Juan S. Cely G. juanscelyg@gmail.com
Supported ROS 2 Distributions
| Distribution | Status |
|—|—|
| rolling | |
Plugin (pluginlib)
-
Plugin Name:
easynav_mpc_controller/MPCController -
Type:
easynav::MPCController -
Base Class:
easynav::ControllerMethodBase -
Library:
easynav_mpc_controller - Description: A Model Predictive Controller (MPC) implementation for Easy Navigation.
Parameters
All parameters are declared under the plugin namespace, i.e., /<node_fqn>/easynav_mpc_controller/MPCController/....
| Name | Type | Default | Description |
|---|---|---|---|
<plugin>.horizon_steps |
int |
5 |
Number of time steps in the prediction horizon. |
<plugin>.dt |
double |
0.1 |
Integration time step (seconds). |
<plugin>.safety_radius |
double |
0.35 |
Safety radius to check possible collisions. |
<plugin>.max_linear_velocity |
double |
1.5 |
Maximum linear velocity (m/s). |
<plugin>.max_angular_velocity |
double |
1.5 |
Maximum angular velocity (rad/s). |
<plugin>.verbose |
bool |
false |
Show data on terminal about Optimization. |
Interfaces (Topics and Services)
Subscriptions and Publications
| Direction | Topic | Type | Purpose | QoS |
|—|—|—|—|—|
| Publisher | /mpc/path | nav_msgs/msg/path | MPC trajectories generate by Predictive Component. | QoS depth=10 |
| Publisher | /mpc/detection | sensor_msgs::msg::PointCloud2 | Detections used by collision checker. | QoS depth=10 |
Services
This package does not create service servers or clients.
NavState Keys
| Key | Type | Access | Notes |
|—|—|—|—|
| path | nav_msgs::msg::Path | Read | Target path to track. |
| robot_pose | nav_msgs::msg::Odometry | Read | Current robot pose/state. |
| cmd_vel | geometry_msgs::msg::TwistStamped | Read | Last commanded velocity (if provided in state). |
| points | PointPerceptions | Read | Perception point cloud(s) used for costs. |
TF Frames
This controller does not explicitly publish or require TF frames in code.
License
Apache-2.0
Changelog for package easynav_mpc_controller
0.2.1 (2026-02-27)
- 0.2.0
- GPLv3 -> Apache 2.0
- Collision checker scope was changed
- Remove C++20/C++23 features and update to new MethodBase interface
- TFInfo in RTTFBuffer
- Refactor to use TFInfo
- Collision avoidance was improved
- Trim path for MPC
- Obstacles are detected
- MPC with differential model is working
- MPC Controller minimizes path following
- Visualization Marker was added
- MPC controller is working
- MPC was added
- Contributors: Francisco Martín Rico, Francisco Miguel Moreno, José Miguel Guerrero, Juan S. Cely G., Miguel
0.0.2 (2025-10-12)
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged easynav_mpc_controller at Robotics Stack Exchange
Package Summary
| Version | 0.2.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/EasyNavigation/easynav_plugins.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-02-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Juan S. Cely G.
Authors
easynav_mpc_controller
Description
A Model Predictive Controller (MPC) implementation for Easy Navigation.
Authors and Maintainers
- Authors: Intelligent Robotics Lab
- Maintainers: Juan S. Cely G. juanscelyg@gmail.com
Supported ROS 2 Distributions
| Distribution | Status |
|—|—|
| rolling | |
Plugin (pluginlib)
-
Plugin Name:
easynav_mpc_controller/MPCController -
Type:
easynav::MPCController -
Base Class:
easynav::ControllerMethodBase -
Library:
easynav_mpc_controller - Description: A Model Predictive Controller (MPC) implementation for Easy Navigation.
Parameters
All parameters are declared under the plugin namespace, i.e., /<node_fqn>/easynav_mpc_controller/MPCController/....
| Name | Type | Default | Description |
|---|---|---|---|
<plugin>.horizon_steps |
int |
5 |
Number of time steps in the prediction horizon. |
<plugin>.dt |
double |
0.1 |
Integration time step (seconds). |
<plugin>.safety_radius |
double |
0.35 |
Safety radius to check possible collisions. |
<plugin>.max_linear_velocity |
double |
1.5 |
Maximum linear velocity (m/s). |
<plugin>.max_angular_velocity |
double |
1.5 |
Maximum angular velocity (rad/s). |
<plugin>.verbose |
bool |
false |
Show data on terminal about Optimization. |
Interfaces (Topics and Services)
Subscriptions and Publications
| Direction | Topic | Type | Purpose | QoS |
|—|—|—|—|—|
| Publisher | /mpc/path | nav_msgs/msg/path | MPC trajectories generate by Predictive Component. | QoS depth=10 |
| Publisher | /mpc/detection | sensor_msgs::msg::PointCloud2 | Detections used by collision checker. | QoS depth=10 |
Services
This package does not create service servers or clients.
NavState Keys
| Key | Type | Access | Notes |
|—|—|—|—|
| path | nav_msgs::msg::Path | Read | Target path to track. |
| robot_pose | nav_msgs::msg::Odometry | Read | Current robot pose/state. |
| cmd_vel | geometry_msgs::msg::TwistStamped | Read | Last commanded velocity (if provided in state). |
| points | PointPerceptions | Read | Perception point cloud(s) used for costs. |
TF Frames
This controller does not explicitly publish or require TF frames in code.
License
Apache-2.0
Changelog for package easynav_mpc_controller
0.2.1 (2026-02-27)
- 0.2.0
- GPLv3 -> Apache 2.0
- Collision checker scope was changed
- Remove C++20/C++23 features and update to new MethodBase interface
- TFInfo in RTTFBuffer
- Refactor to use TFInfo
- Collision avoidance was improved
- Trim path for MPC
- Obstacles are detected
- MPC with differential model is working
- MPC Controller minimizes path following
- Visualization Marker was added
- MPC controller is working
- MPC was added
- Contributors: Francisco Martín Rico, Francisco Miguel Moreno, José Miguel Guerrero, Juan S. Cely G., Miguel
0.0.2 (2025-10-12)
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged easynav_mpc_controller at Robotics Stack Exchange
Package Summary
| Version | 0.3.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/EasyNavigation/easynav_plugins.git |
| VCS Type | git |
| VCS Version | kilted |
| Last Updated | 2026-02-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Juan S. Cely G.
Authors
easynav_mpc_controller
Description
A Model Predictive Controller (MPC) implementation for Easy Navigation.
Authors and Maintainers
- Authors: Intelligent Robotics Lab
- Maintainers: Juan S. Cely G. juanscelyg@gmail.com
Supported ROS 2 Distributions
| Distribution | Status |
|—|—|
| rolling | |
Plugin (pluginlib)
-
Plugin Name:
easynav_mpc_controller/MPCController -
Type:
easynav::MPCController -
Base Class:
easynav::ControllerMethodBase -
Library:
easynav_mpc_controller - Description: A Model Predictive Controller (MPC) implementation for Easy Navigation.
Parameters
All parameters are declared under the plugin namespace, i.e., /<node_fqn>/easynav_mpc_controller/MPCController/....
| Name | Type | Default | Description |
|---|---|---|---|
<plugin>.horizon_steps |
int |
5 |
Number of time steps in the prediction horizon. |
<plugin>.dt |
double |
0.1 |
Integration time step (seconds). |
<plugin>.safety_radius |
double |
0.35 |
Safety radius to check possible collisions. |
<plugin>.max_linear_velocity |
double |
1.5 |
Maximum linear velocity (m/s). |
<plugin>.max_angular_velocity |
double |
1.5 |
Maximum angular velocity (rad/s). |
<plugin>.verbose |
bool |
false |
Show data on terminal about Optimization. |
Interfaces (Topics and Services)
Subscriptions and Publications
| Direction | Topic | Type | Purpose | QoS |
|—|—|—|—|—|
| Publisher | /mpc/path | nav_msgs/msg/path | MPC trajectories generate by Predictive Component. | QoS depth=10 |
| Publisher | /mpc/detection | sensor_msgs::msg::PointCloud2 | Detections used by collision checker. | QoS depth=10 |
Services
This package does not create service servers or clients.
NavState Keys
| Key | Type | Access | Notes |
|—|—|—|—|
| path | nav_msgs::msg::Path | Read | Target path to track. |
| robot_pose | nav_msgs::msg::Odometry | Read | Current robot pose/state. |
| cmd_vel | geometry_msgs::msg::TwistStamped | Read | Last commanded velocity (if provided in state). |
| points | PointPerceptions | Read | Perception point cloud(s) used for costs. |
TF Frames
This controller does not explicitly publish or require TF frames in code.
License
Apache-2.0
Changelog for package easynav_mpc_controller
0.3.1 (2026-02-27)
- GPLv3 -> Apache 2.0
- Remove C++20/C++23 features and update to new MethodBase interface
- TFInfo in RTTFBuffer
- Refactor to use TFInfo
- Trim path for MPC
- Stop controllers at IDLE
- Obstacles are detected
- Methods were added to access to private attributes
- Optimizer header file was added
- Dependencies were fixed
- MPC with differential model is working
- MPC Controller minimizes path following
- Visualization Marker was added
- CI updated
- MPC controller is working
- Optimizer was changed
- Contributors: Francisco Martín Rico, Francisco Miguel Moreno, José Miguel Guerrero, Juan S. Cely G., Miguel
0.0.2 (2025-10-12)
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged easynav_mpc_controller at Robotics Stack Exchange
Package Summary
| Version | 0.2.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/EasyNavigation/easynav_plugins.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-02-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Juan S. Cely G.
Authors
easynav_mpc_controller
Description
A Model Predictive Controller (MPC) implementation for Easy Navigation.
Authors and Maintainers
- Authors: Intelligent Robotics Lab
- Maintainers: Juan S. Cely G. juanscelyg@gmail.com
Supported ROS 2 Distributions
| Distribution | Status |
|—|—|
| rolling | |
Plugin (pluginlib)
-
Plugin Name:
easynav_mpc_controller/MPCController -
Type:
easynav::MPCController -
Base Class:
easynav::ControllerMethodBase -
Library:
easynav_mpc_controller - Description: A Model Predictive Controller (MPC) implementation for Easy Navigation.
Parameters
All parameters are declared under the plugin namespace, i.e., /<node_fqn>/easynav_mpc_controller/MPCController/....
| Name | Type | Default | Description |
|---|---|---|---|
<plugin>.horizon_steps |
int |
5 |
Number of time steps in the prediction horizon. |
<plugin>.dt |
double |
0.1 |
Integration time step (seconds). |
<plugin>.safety_radius |
double |
0.35 |
Safety radius to check possible collisions. |
<plugin>.max_linear_velocity |
double |
1.5 |
Maximum linear velocity (m/s). |
<plugin>.max_angular_velocity |
double |
1.5 |
Maximum angular velocity (rad/s). |
<plugin>.verbose |
bool |
false |
Show data on terminal about Optimization. |
Interfaces (Topics and Services)
Subscriptions and Publications
| Direction | Topic | Type | Purpose | QoS |
|—|—|—|—|—|
| Publisher | /mpc/path | nav_msgs/msg/path | MPC trajectories generate by Predictive Component. | QoS depth=10 |
| Publisher | /mpc/detection | sensor_msgs::msg::PointCloud2 | Detections used by collision checker. | QoS depth=10 |
Services
This package does not create service servers or clients.
NavState Keys
| Key | Type | Access | Notes |
|—|—|—|—|
| path | nav_msgs::msg::Path | Read | Target path to track. |
| robot_pose | nav_msgs::msg::Odometry | Read | Current robot pose/state. |
| cmd_vel | geometry_msgs::msg::TwistStamped | Read | Last commanded velocity (if provided in state). |
| points | PointPerceptions | Read | Perception point cloud(s) used for costs. |
TF Frames
This controller does not explicitly publish or require TF frames in code.
License
Apache-2.0
Changelog for package easynav_mpc_controller
0.2.1 (2026-02-27)
- 0.2.0
- GPLv3 -> Apache 2.0
- Collision checker scope was changed
- Remove C++20/C++23 features and update to new MethodBase interface
- TFInfo in RTTFBuffer
- Refactor to use TFInfo
- Collision avoidance was improved
- Trim path for MPC
- Obstacles are detected
- MPC with differential model is working
- MPC Controller minimizes path following
- Visualization Marker was added
- MPC controller is working
- MPC was added
- Contributors: Francisco Martín Rico, Francisco Miguel Moreno, José Miguel Guerrero, Juan S. Cely G., Miguel
0.0.2 (2025-10-12)
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged easynav_mpc_controller at Robotics Stack Exchange
Package Summary
| Version | 0.2.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/EasyNavigation/easynav_plugins.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-02-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Juan S. Cely G.
Authors
easynav_mpc_controller
Description
A Model Predictive Controller (MPC) implementation for Easy Navigation.
Authors and Maintainers
- Authors: Intelligent Robotics Lab
- Maintainers: Juan S. Cely G. juanscelyg@gmail.com
Supported ROS 2 Distributions
| Distribution | Status |
|—|—|
| rolling | |
Plugin (pluginlib)
-
Plugin Name:
easynav_mpc_controller/MPCController -
Type:
easynav::MPCController -
Base Class:
easynav::ControllerMethodBase -
Library:
easynav_mpc_controller - Description: A Model Predictive Controller (MPC) implementation for Easy Navigation.
Parameters
All parameters are declared under the plugin namespace, i.e., /<node_fqn>/easynav_mpc_controller/MPCController/....
| Name | Type | Default | Description |
|---|---|---|---|
<plugin>.horizon_steps |
int |
5 |
Number of time steps in the prediction horizon. |
<plugin>.dt |
double |
0.1 |
Integration time step (seconds). |
<plugin>.safety_radius |
double |
0.35 |
Safety radius to check possible collisions. |
<plugin>.max_linear_velocity |
double |
1.5 |
Maximum linear velocity (m/s). |
<plugin>.max_angular_velocity |
double |
1.5 |
Maximum angular velocity (rad/s). |
<plugin>.verbose |
bool |
false |
Show data on terminal about Optimization. |
Interfaces (Topics and Services)
Subscriptions and Publications
| Direction | Topic | Type | Purpose | QoS |
|—|—|—|—|—|
| Publisher | /mpc/path | nav_msgs/msg/path | MPC trajectories generate by Predictive Component. | QoS depth=10 |
| Publisher | /mpc/detection | sensor_msgs::msg::PointCloud2 | Detections used by collision checker. | QoS depth=10 |
Services
This package does not create service servers or clients.
NavState Keys
| Key | Type | Access | Notes |
|—|—|—|—|
| path | nav_msgs::msg::Path | Read | Target path to track. |
| robot_pose | nav_msgs::msg::Odometry | Read | Current robot pose/state. |
| cmd_vel | geometry_msgs::msg::TwistStamped | Read | Last commanded velocity (if provided in state). |
| points | PointPerceptions | Read | Perception point cloud(s) used for costs. |
TF Frames
This controller does not explicitly publish or require TF frames in code.
License
Apache-2.0
Changelog for package easynav_mpc_controller
0.2.1 (2026-02-27)
- 0.2.0
- GPLv3 -> Apache 2.0
- Collision checker scope was changed
- Remove C++20/C++23 features and update to new MethodBase interface
- TFInfo in RTTFBuffer
- Refactor to use TFInfo
- Collision avoidance was improved
- Trim path for MPC
- Obstacles are detected
- MPC with differential model is working
- MPC Controller minimizes path following
- Visualization Marker was added
- MPC controller is working
- MPC was added
- Contributors: Francisco Martín Rico, Francisco Miguel Moreno, José Miguel Guerrero, Juan S. Cely G., Miguel
0.0.2 (2025-10-12)
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged easynav_mpc_controller at Robotics Stack Exchange
Package Summary
| Version | 0.2.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/EasyNavigation/easynav_plugins.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-02-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Juan S. Cely G.
Authors
easynav_mpc_controller
Description
A Model Predictive Controller (MPC) implementation for Easy Navigation.
Authors and Maintainers
- Authors: Intelligent Robotics Lab
- Maintainers: Juan S. Cely G. juanscelyg@gmail.com
Supported ROS 2 Distributions
| Distribution | Status |
|—|—|
| rolling | |
Plugin (pluginlib)
-
Plugin Name:
easynav_mpc_controller/MPCController -
Type:
easynav::MPCController -
Base Class:
easynav::ControllerMethodBase -
Library:
easynav_mpc_controller - Description: A Model Predictive Controller (MPC) implementation for Easy Navigation.
Parameters
All parameters are declared under the plugin namespace, i.e., /<node_fqn>/easynav_mpc_controller/MPCController/....
| Name | Type | Default | Description |
|---|---|---|---|
<plugin>.horizon_steps |
int |
5 |
Number of time steps in the prediction horizon. |
<plugin>.dt |
double |
0.1 |
Integration time step (seconds). |
<plugin>.safety_radius |
double |
0.35 |
Safety radius to check possible collisions. |
<plugin>.max_linear_velocity |
double |
1.5 |
Maximum linear velocity (m/s). |
<plugin>.max_angular_velocity |
double |
1.5 |
Maximum angular velocity (rad/s). |
<plugin>.verbose |
bool |
false |
Show data on terminal about Optimization. |
Interfaces (Topics and Services)
Subscriptions and Publications
| Direction | Topic | Type | Purpose | QoS |
|—|—|—|—|—|
| Publisher | /mpc/path | nav_msgs/msg/path | MPC trajectories generate by Predictive Component. | QoS depth=10 |
| Publisher | /mpc/detection | sensor_msgs::msg::PointCloud2 | Detections used by collision checker. | QoS depth=10 |
Services
This package does not create service servers or clients.
NavState Keys
| Key | Type | Access | Notes |
|—|—|—|—|
| path | nav_msgs::msg::Path | Read | Target path to track. |
| robot_pose | nav_msgs::msg::Odometry | Read | Current robot pose/state. |
| cmd_vel | geometry_msgs::msg::TwistStamped | Read | Last commanded velocity (if provided in state). |
| points | PointPerceptions | Read | Perception point cloud(s) used for costs. |
TF Frames
This controller does not explicitly publish or require TF frames in code.
License
Apache-2.0
Changelog for package easynav_mpc_controller
0.2.1 (2026-02-27)
- 0.2.0
- GPLv3 -> Apache 2.0
- Collision checker scope was changed
- Remove C++20/C++23 features and update to new MethodBase interface
- TFInfo in RTTFBuffer
- Refactor to use TFInfo
- Collision avoidance was improved
- Trim path for MPC
- Obstacles are detected
- MPC with differential model is working
- MPC Controller minimizes path following
- Visualization Marker was added
- MPC controller is working
- MPC was added
- Contributors: Francisco Martín Rico, Francisco Miguel Moreno, José Miguel Guerrero, Juan S. Cely G., Miguel
0.0.2 (2025-10-12)
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged easynav_mpc_controller at Robotics Stack Exchange
Package Summary
| Version | 0.2.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/EasyNavigation/easynav_plugins.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-02-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Juan S. Cely G.
Authors
easynav_mpc_controller
Description
A Model Predictive Controller (MPC) implementation for Easy Navigation.
Authors and Maintainers
- Authors: Intelligent Robotics Lab
- Maintainers: Juan S. Cely G. juanscelyg@gmail.com
Supported ROS 2 Distributions
| Distribution | Status |
|—|—|
| rolling | |
Plugin (pluginlib)
-
Plugin Name:
easynav_mpc_controller/MPCController -
Type:
easynav::MPCController -
Base Class:
easynav::ControllerMethodBase -
Library:
easynav_mpc_controller - Description: A Model Predictive Controller (MPC) implementation for Easy Navigation.
Parameters
All parameters are declared under the plugin namespace, i.e., /<node_fqn>/easynav_mpc_controller/MPCController/....
| Name | Type | Default | Description |
|---|---|---|---|
<plugin>.horizon_steps |
int |
5 |
Number of time steps in the prediction horizon. |
<plugin>.dt |
double |
0.1 |
Integration time step (seconds). |
<plugin>.safety_radius |
double |
0.35 |
Safety radius to check possible collisions. |
<plugin>.max_linear_velocity |
double |
1.5 |
Maximum linear velocity (m/s). |
<plugin>.max_angular_velocity |
double |
1.5 |
Maximum angular velocity (rad/s). |
<plugin>.verbose |
bool |
false |
Show data on terminal about Optimization. |
Interfaces (Topics and Services)
Subscriptions and Publications
| Direction | Topic | Type | Purpose | QoS |
|—|—|—|—|—|
| Publisher | /mpc/path | nav_msgs/msg/path | MPC trajectories generate by Predictive Component. | QoS depth=10 |
| Publisher | /mpc/detection | sensor_msgs::msg::PointCloud2 | Detections used by collision checker. | QoS depth=10 |
Services
This package does not create service servers or clients.
NavState Keys
| Key | Type | Access | Notes |
|—|—|—|—|
| path | nav_msgs::msg::Path | Read | Target path to track. |
| robot_pose | nav_msgs::msg::Odometry | Read | Current robot pose/state. |
| cmd_vel | geometry_msgs::msg::TwistStamped | Read | Last commanded velocity (if provided in state). |
| points | PointPerceptions | Read | Perception point cloud(s) used for costs. |
TF Frames
This controller does not explicitly publish or require TF frames in code.
License
Apache-2.0
Changelog for package easynav_mpc_controller
0.2.1 (2026-02-27)
- 0.2.0
- GPLv3 -> Apache 2.0
- Collision checker scope was changed
- Remove C++20/C++23 features and update to new MethodBase interface
- TFInfo in RTTFBuffer
- Refactor to use TFInfo
- Collision avoidance was improved
- Trim path for MPC
- Obstacles are detected
- MPC with differential model is working
- MPC Controller minimizes path following
- Visualization Marker was added
- MPC controller is working
- MPC was added
- Contributors: Francisco Martín Rico, Francisco Miguel Moreno, José Miguel Guerrero, Juan S. Cely G., Miguel
0.0.2 (2025-10-12)
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged easynav_mpc_controller at Robotics Stack Exchange
Package Summary
| Version | 0.2.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/EasyNavigation/easynav_plugins.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-02-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Juan S. Cely G.
Authors
easynav_mpc_controller
Description
A Model Predictive Controller (MPC) implementation for Easy Navigation.
Authors and Maintainers
- Authors: Intelligent Robotics Lab
- Maintainers: Juan S. Cely G. juanscelyg@gmail.com
Supported ROS 2 Distributions
| Distribution | Status |
|—|—|
| rolling | |
Plugin (pluginlib)
-
Plugin Name:
easynav_mpc_controller/MPCController -
Type:
easynav::MPCController -
Base Class:
easynav::ControllerMethodBase -
Library:
easynav_mpc_controller - Description: A Model Predictive Controller (MPC) implementation for Easy Navigation.
Parameters
All parameters are declared under the plugin namespace, i.e., /<node_fqn>/easynav_mpc_controller/MPCController/....
| Name | Type | Default | Description |
|---|---|---|---|
<plugin>.horizon_steps |
int |
5 |
Number of time steps in the prediction horizon. |
<plugin>.dt |
double |
0.1 |
Integration time step (seconds). |
<plugin>.safety_radius |
double |
0.35 |
Safety radius to check possible collisions. |
<plugin>.max_linear_velocity |
double |
1.5 |
Maximum linear velocity (m/s). |
<plugin>.max_angular_velocity |
double |
1.5 |
Maximum angular velocity (rad/s). |
<plugin>.verbose |
bool |
false |
Show data on terminal about Optimization. |
Interfaces (Topics and Services)
Subscriptions and Publications
| Direction | Topic | Type | Purpose | QoS |
|—|—|—|—|—|
| Publisher | /mpc/path | nav_msgs/msg/path | MPC trajectories generate by Predictive Component. | QoS depth=10 |
| Publisher | /mpc/detection | sensor_msgs::msg::PointCloud2 | Detections used by collision checker. | QoS depth=10 |
Services
This package does not create service servers or clients.
NavState Keys
| Key | Type | Access | Notes |
|—|—|—|—|
| path | nav_msgs::msg::Path | Read | Target path to track. |
| robot_pose | nav_msgs::msg::Odometry | Read | Current robot pose/state. |
| cmd_vel | geometry_msgs::msg::TwistStamped | Read | Last commanded velocity (if provided in state). |
| points | PointPerceptions | Read | Perception point cloud(s) used for costs. |
TF Frames
This controller does not explicitly publish or require TF frames in code.
License
Apache-2.0
Changelog for package easynav_mpc_controller
0.2.1 (2026-02-27)
- 0.2.0
- GPLv3 -> Apache 2.0
- Collision checker scope was changed
- Remove C++20/C++23 features and update to new MethodBase interface
- TFInfo in RTTFBuffer
- Refactor to use TFInfo
- Collision avoidance was improved
- Trim path for MPC
- Obstacles are detected
- MPC with differential model is working
- MPC Controller minimizes path following
- Visualization Marker was added
- MPC controller is working
- MPC was added
- Contributors: Francisco Martín Rico, Francisco Miguel Moreno, José Miguel Guerrero, Juan S. Cely G., Miguel
0.0.2 (2025-10-12)
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged easynav_mpc_controller at Robotics Stack Exchange
Package Summary
| Version | 0.2.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/EasyNavigation/easynav_plugins.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-02-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Juan S. Cely G.
Authors
easynav_mpc_controller
Description
A Model Predictive Controller (MPC) implementation for Easy Navigation.
Authors and Maintainers
- Authors: Intelligent Robotics Lab
- Maintainers: Juan S. Cely G. juanscelyg@gmail.com
Supported ROS 2 Distributions
| Distribution | Status |
|—|—|
| rolling | |
Plugin (pluginlib)
-
Plugin Name:
easynav_mpc_controller/MPCController -
Type:
easynav::MPCController -
Base Class:
easynav::ControllerMethodBase -
Library:
easynav_mpc_controller - Description: A Model Predictive Controller (MPC) implementation for Easy Navigation.
Parameters
All parameters are declared under the plugin namespace, i.e., /<node_fqn>/easynav_mpc_controller/MPCController/....
| Name | Type | Default | Description |
|---|---|---|---|
<plugin>.horizon_steps |
int |
5 |
Number of time steps in the prediction horizon. |
<plugin>.dt |
double |
0.1 |
Integration time step (seconds). |
<plugin>.safety_radius |
double |
0.35 |
Safety radius to check possible collisions. |
<plugin>.max_linear_velocity |
double |
1.5 |
Maximum linear velocity (m/s). |
<plugin>.max_angular_velocity |
double |
1.5 |
Maximum angular velocity (rad/s). |
<plugin>.verbose |
bool |
false |
Show data on terminal about Optimization. |
Interfaces (Topics and Services)
Subscriptions and Publications
| Direction | Topic | Type | Purpose | QoS |
|—|—|—|—|—|
| Publisher | /mpc/path | nav_msgs/msg/path | MPC trajectories generate by Predictive Component. | QoS depth=10 |
| Publisher | /mpc/detection | sensor_msgs::msg::PointCloud2 | Detections used by collision checker. | QoS depth=10 |
Services
This package does not create service servers or clients.
NavState Keys
| Key | Type | Access | Notes |
|—|—|—|—|
| path | nav_msgs::msg::Path | Read | Target path to track. |
| robot_pose | nav_msgs::msg::Odometry | Read | Current robot pose/state. |
| cmd_vel | geometry_msgs::msg::TwistStamped | Read | Last commanded velocity (if provided in state). |
| points | PointPerceptions | Read | Perception point cloud(s) used for costs. |
TF Frames
This controller does not explicitly publish or require TF frames in code.
License
Apache-2.0
Changelog for package easynav_mpc_controller
0.2.1 (2026-02-27)
- 0.2.0
- GPLv3 -> Apache 2.0
- Collision checker scope was changed
- Remove C++20/C++23 features and update to new MethodBase interface
- TFInfo in RTTFBuffer
- Refactor to use TFInfo
- Collision avoidance was improved
- Trim path for MPC
- Obstacles are detected
- MPC with differential model is working
- MPC Controller minimizes path following
- Visualization Marker was added
- MPC controller is working
- MPC was added
- Contributors: Francisco Martín Rico, Francisco Miguel Moreno, José Miguel Guerrero, Juan S. Cely G., Miguel
0.0.2 (2025-10-12)
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged easynav_mpc_controller at Robotics Stack Exchange
Package Summary
| Version | 0.2.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/EasyNavigation/easynav_plugins.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-02-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Juan S. Cely G.
Authors
easynav_mpc_controller
Description
A Model Predictive Controller (MPC) implementation for Easy Navigation.
Authors and Maintainers
- Authors: Intelligent Robotics Lab
- Maintainers: Juan S. Cely G. juanscelyg@gmail.com
Supported ROS 2 Distributions
| Distribution | Status |
|—|—|
| rolling | |
Plugin (pluginlib)
-
Plugin Name:
easynav_mpc_controller/MPCController -
Type:
easynav::MPCController -
Base Class:
easynav::ControllerMethodBase -
Library:
easynav_mpc_controller - Description: A Model Predictive Controller (MPC) implementation for Easy Navigation.
Parameters
All parameters are declared under the plugin namespace, i.e., /<node_fqn>/easynav_mpc_controller/MPCController/....
| Name | Type | Default | Description |
|---|---|---|---|
<plugin>.horizon_steps |
int |
5 |
Number of time steps in the prediction horizon. |
<plugin>.dt |
double |
0.1 |
Integration time step (seconds). |
<plugin>.safety_radius |
double |
0.35 |
Safety radius to check possible collisions. |
<plugin>.max_linear_velocity |
double |
1.5 |
Maximum linear velocity (m/s). |
<plugin>.max_angular_velocity |
double |
1.5 |
Maximum angular velocity (rad/s). |
<plugin>.verbose |
bool |
false |
Show data on terminal about Optimization. |
Interfaces (Topics and Services)
Subscriptions and Publications
| Direction | Topic | Type | Purpose | QoS |
|—|—|—|—|—|
| Publisher | /mpc/path | nav_msgs/msg/path | MPC trajectories generate by Predictive Component. | QoS depth=10 |
| Publisher | /mpc/detection | sensor_msgs::msg::PointCloud2 | Detections used by collision checker. | QoS depth=10 |
Services
This package does not create service servers or clients.
NavState Keys
| Key | Type | Access | Notes |
|—|—|—|—|
| path | nav_msgs::msg::Path | Read | Target path to track. |
| robot_pose | nav_msgs::msg::Odometry | Read | Current robot pose/state. |
| cmd_vel | geometry_msgs::msg::TwistStamped | Read | Last commanded velocity (if provided in state). |
| points | PointPerceptions | Read | Perception point cloud(s) used for costs. |
TF Frames
This controller does not explicitly publish or require TF frames in code.
License
Apache-2.0
Changelog for package easynav_mpc_controller
0.2.1 (2026-02-27)
- 0.2.0
- GPLv3 -> Apache 2.0
- Collision checker scope was changed
- Remove C++20/C++23 features and update to new MethodBase interface
- TFInfo in RTTFBuffer
- Refactor to use TFInfo
- Collision avoidance was improved
- Trim path for MPC
- Obstacles are detected
- MPC with differential model is working
- MPC Controller minimizes path following
- Visualization Marker was added
- MPC controller is working
- MPC was added
- Contributors: Francisco Martín Rico, Francisco Miguel Moreno, José Miguel Guerrero, Juan S. Cely G., Miguel
0.0.2 (2025-10-12)
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged easynav_mpc_controller at Robotics Stack Exchange
Package Summary
| Version | 0.2.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/EasyNavigation/easynav_plugins.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-02-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Juan S. Cely G.
Authors
easynav_mpc_controller
Description
A Model Predictive Controller (MPC) implementation for Easy Navigation.
Authors and Maintainers
- Authors: Intelligent Robotics Lab
- Maintainers: Juan S. Cely G. juanscelyg@gmail.com
Supported ROS 2 Distributions
| Distribution | Status |
|—|—|
| rolling | |
Plugin (pluginlib)
-
Plugin Name:
easynav_mpc_controller/MPCController -
Type:
easynav::MPCController -
Base Class:
easynav::ControllerMethodBase -
Library:
easynav_mpc_controller - Description: A Model Predictive Controller (MPC) implementation for Easy Navigation.
Parameters
All parameters are declared under the plugin namespace, i.e., /<node_fqn>/easynav_mpc_controller/MPCController/....
| Name | Type | Default | Description |
|---|---|---|---|
<plugin>.horizon_steps |
int |
5 |
Number of time steps in the prediction horizon. |
<plugin>.dt |
double |
0.1 |
Integration time step (seconds). |
<plugin>.safety_radius |
double |
0.35 |
Safety radius to check possible collisions. |
<plugin>.max_linear_velocity |
double |
1.5 |
Maximum linear velocity (m/s). |
<plugin>.max_angular_velocity |
double |
1.5 |
Maximum angular velocity (rad/s). |
<plugin>.verbose |
bool |
false |
Show data on terminal about Optimization. |
Interfaces (Topics and Services)
Subscriptions and Publications
| Direction | Topic | Type | Purpose | QoS |
|—|—|—|—|—|
| Publisher | /mpc/path | nav_msgs/msg/path | MPC trajectories generate by Predictive Component. | QoS depth=10 |
| Publisher | /mpc/detection | sensor_msgs::msg::PointCloud2 | Detections used by collision checker. | QoS depth=10 |
Services
This package does not create service servers or clients.
NavState Keys
| Key | Type | Access | Notes |
|—|—|—|—|
| path | nav_msgs::msg::Path | Read | Target path to track. |
| robot_pose | nav_msgs::msg::Odometry | Read | Current robot pose/state. |
| cmd_vel | geometry_msgs::msg::TwistStamped | Read | Last commanded velocity (if provided in state). |
| points | PointPerceptions | Read | Perception point cloud(s) used for costs. |
TF Frames
This controller does not explicitly publish or require TF frames in code.
License
Apache-2.0
Changelog for package easynav_mpc_controller
0.2.1 (2026-02-27)
- 0.2.0
- GPLv3 -> Apache 2.0
- Collision checker scope was changed
- Remove C++20/C++23 features and update to new MethodBase interface
- TFInfo in RTTFBuffer
- Refactor to use TFInfo
- Collision avoidance was improved
- Trim path for MPC
- Obstacles are detected
- MPC with differential model is working
- MPC Controller minimizes path following
- Visualization Marker was added
- MPC controller is working
- MPC was added
- Contributors: Francisco Martín Rico, Francisco Miguel Moreno, José Miguel Guerrero, Juan S. Cely G., Miguel
0.0.2 (2025-10-12)
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged easynav_mpc_controller at Robotics Stack Exchange
Package Summary
| Version | 0.2.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/EasyNavigation/easynav_plugins.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-02-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Juan S. Cely G.
Authors
easynav_mpc_controller
Description
A Model Predictive Controller (MPC) implementation for Easy Navigation.
Authors and Maintainers
- Authors: Intelligent Robotics Lab
- Maintainers: Juan S. Cely G. juanscelyg@gmail.com
Supported ROS 2 Distributions
| Distribution | Status |
|—|—|
| rolling | |
Plugin (pluginlib)
-
Plugin Name:
easynav_mpc_controller/MPCController -
Type:
easynav::MPCController -
Base Class:
easynav::ControllerMethodBase -
Library:
easynav_mpc_controller - Description: A Model Predictive Controller (MPC) implementation for Easy Navigation.
Parameters
All parameters are declared under the plugin namespace, i.e., /<node_fqn>/easynav_mpc_controller/MPCController/....
| Name | Type | Default | Description |
|---|---|---|---|
<plugin>.horizon_steps |
int |
5 |
Number of time steps in the prediction horizon. |
<plugin>.dt |
double |
0.1 |
Integration time step (seconds). |
<plugin>.safety_radius |
double |
0.35 |
Safety radius to check possible collisions. |
<plugin>.max_linear_velocity |
double |
1.5 |
Maximum linear velocity (m/s). |
<plugin>.max_angular_velocity |
double |
1.5 |
Maximum angular velocity (rad/s). |
<plugin>.verbose |
bool |
false |
Show data on terminal about Optimization. |
Interfaces (Topics and Services)
Subscriptions and Publications
| Direction | Topic | Type | Purpose | QoS |
|—|—|—|—|—|
| Publisher | /mpc/path | nav_msgs/msg/path | MPC trajectories generate by Predictive Component. | QoS depth=10 |
| Publisher | /mpc/detection | sensor_msgs::msg::PointCloud2 | Detections used by collision checker. | QoS depth=10 |
Services
This package does not create service servers or clients.
NavState Keys
| Key | Type | Access | Notes |
|—|—|—|—|
| path | nav_msgs::msg::Path | Read | Target path to track. |
| robot_pose | nav_msgs::msg::Odometry | Read | Current robot pose/state. |
| cmd_vel | geometry_msgs::msg::TwistStamped | Read | Last commanded velocity (if provided in state). |
| points | PointPerceptions | Read | Perception point cloud(s) used for costs. |
TF Frames
This controller does not explicitly publish or require TF frames in code.
License
Apache-2.0
Changelog for package easynav_mpc_controller
0.2.1 (2026-02-27)
- 0.2.0
- GPLv3 -> Apache 2.0
- Collision checker scope was changed
- Remove C++20/C++23 features and update to new MethodBase interface
- TFInfo in RTTFBuffer
- Refactor to use TFInfo
- Collision avoidance was improved
- Trim path for MPC
- Obstacles are detected
- MPC with differential model is working
- MPC Controller minimizes path following
- Visualization Marker was added
- MPC controller is working
- MPC was added
- Contributors: Francisco Martín Rico, Francisco Miguel Moreno, José Miguel Guerrero, Juan S. Cely G., Miguel
0.0.2 (2025-10-12)
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged easynav_mpc_controller at Robotics Stack Exchange
Package Summary
| Version | 0.2.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/EasyNavigation/easynav_plugins.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-02-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Juan S. Cely G.
Authors
easynav_mpc_controller
Description
A Model Predictive Controller (MPC) implementation for Easy Navigation.
Authors and Maintainers
- Authors: Intelligent Robotics Lab
- Maintainers: Juan S. Cely G. juanscelyg@gmail.com
Supported ROS 2 Distributions
| Distribution | Status |
|—|—|
| rolling | |
Plugin (pluginlib)
-
Plugin Name:
easynav_mpc_controller/MPCController -
Type:
easynav::MPCController -
Base Class:
easynav::ControllerMethodBase -
Library:
easynav_mpc_controller - Description: A Model Predictive Controller (MPC) implementation for Easy Navigation.
Parameters
All parameters are declared under the plugin namespace, i.e., /<node_fqn>/easynav_mpc_controller/MPCController/....
| Name | Type | Default | Description |
|---|---|---|---|
<plugin>.horizon_steps |
int |
5 |
Number of time steps in the prediction horizon. |
<plugin>.dt |
double |
0.1 |
Integration time step (seconds). |
<plugin>.safety_radius |
double |
0.35 |
Safety radius to check possible collisions. |
<plugin>.max_linear_velocity |
double |
1.5 |
Maximum linear velocity (m/s). |
<plugin>.max_angular_velocity |
double |
1.5 |
Maximum angular velocity (rad/s). |
<plugin>.verbose |
bool |
false |
Show data on terminal about Optimization. |
Interfaces (Topics and Services)
Subscriptions and Publications
| Direction | Topic | Type | Purpose | QoS |
|—|—|—|—|—|
| Publisher | /mpc/path | nav_msgs/msg/path | MPC trajectories generate by Predictive Component. | QoS depth=10 |
| Publisher | /mpc/detection | sensor_msgs::msg::PointCloud2 | Detections used by collision checker. | QoS depth=10 |
Services
This package does not create service servers or clients.
NavState Keys
| Key | Type | Access | Notes |
|—|—|—|—|
| path | nav_msgs::msg::Path | Read | Target path to track. |
| robot_pose | nav_msgs::msg::Odometry | Read | Current robot pose/state. |
| cmd_vel | geometry_msgs::msg::TwistStamped | Read | Last commanded velocity (if provided in state). |
| points | PointPerceptions | Read | Perception point cloud(s) used for costs. |
TF Frames
This controller does not explicitly publish or require TF frames in code.
License
Apache-2.0
Changelog for package easynav_mpc_controller
0.2.1 (2026-02-27)
- 0.2.0
- GPLv3 -> Apache 2.0
- Collision checker scope was changed
- Remove C++20/C++23 features and update to new MethodBase interface
- TFInfo in RTTFBuffer
- Refactor to use TFInfo
- Collision avoidance was improved
- Trim path for MPC
- Obstacles are detected
- MPC with differential model is working
- MPC Controller minimizes path following
- Visualization Marker was added
- MPC controller is working
- MPC was added
- Contributors: Francisco Martín Rico, Francisco Miguel Moreno, José Miguel Guerrero, Juan S. Cely G., Miguel
0.0.2 (2025-10-12)
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged easynav_mpc_controller at Robotics Stack Exchange
Package Summary
| Version | 0.2.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/EasyNavigation/easynav_plugins.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-02-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Juan S. Cely G.
Authors
easynav_mpc_controller
Description
A Model Predictive Controller (MPC) implementation for Easy Navigation.
Authors and Maintainers
- Authors: Intelligent Robotics Lab
- Maintainers: Juan S. Cely G. juanscelyg@gmail.com
Supported ROS 2 Distributions
| Distribution | Status |
|—|—|
| rolling | |
Plugin (pluginlib)
-
Plugin Name:
easynav_mpc_controller/MPCController -
Type:
easynav::MPCController -
Base Class:
easynav::ControllerMethodBase -
Library:
easynav_mpc_controller - Description: A Model Predictive Controller (MPC) implementation for Easy Navigation.
Parameters
All parameters are declared under the plugin namespace, i.e., /<node_fqn>/easynav_mpc_controller/MPCController/....
| Name | Type | Default | Description |
|---|---|---|---|
<plugin>.horizon_steps |
int |
5 |
Number of time steps in the prediction horizon. |
<plugin>.dt |
double |
0.1 |
Integration time step (seconds). |
<plugin>.safety_radius |
double |
0.35 |
Safety radius to check possible collisions. |
<plugin>.max_linear_velocity |
double |
1.5 |
Maximum linear velocity (m/s). |
<plugin>.max_angular_velocity |
double |
1.5 |
Maximum angular velocity (rad/s). |
<plugin>.verbose |
bool |
false |
Show data on terminal about Optimization. |
Interfaces (Topics and Services)
Subscriptions and Publications
| Direction | Topic | Type | Purpose | QoS |
|—|—|—|—|—|
| Publisher | /mpc/path | nav_msgs/msg/path | MPC trajectories generate by Predictive Component. | QoS depth=10 |
| Publisher | /mpc/detection | sensor_msgs::msg::PointCloud2 | Detections used by collision checker. | QoS depth=10 |
Services
This package does not create service servers or clients.
NavState Keys
| Key | Type | Access | Notes |
|—|—|—|—|
| path | nav_msgs::msg::Path | Read | Target path to track. |
| robot_pose | nav_msgs::msg::Odometry | Read | Current robot pose/state. |
| cmd_vel | geometry_msgs::msg::TwistStamped | Read | Last commanded velocity (if provided in state). |
| points | PointPerceptions | Read | Perception point cloud(s) used for costs. |
TF Frames
This controller does not explicitly publish or require TF frames in code.
License
Apache-2.0
Changelog for package easynav_mpc_controller
0.2.1 (2026-02-27)
- 0.2.0
- GPLv3 -> Apache 2.0
- Collision checker scope was changed
- Remove C++20/C++23 features and update to new MethodBase interface
- TFInfo in RTTFBuffer
- Refactor to use TFInfo
- Collision avoidance was improved
- Trim path for MPC
- Obstacles are detected
- MPC with differential model is working
- MPC Controller minimizes path following
- Visualization Marker was added
- MPC controller is working
- MPC was added
- Contributors: Francisco Martín Rico, Francisco Miguel Moreno, José Miguel Guerrero, Juan S. Cely G., Miguel
0.0.2 (2025-10-12)
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged easynav_mpc_controller at Robotics Stack Exchange
Package Summary
| Version | 0.2.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/EasyNavigation/easynav_plugins.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-02-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Juan S. Cely G.
Authors
easynav_mpc_controller
Description
A Model Predictive Controller (MPC) implementation for Easy Navigation.
Authors and Maintainers
- Authors: Intelligent Robotics Lab
- Maintainers: Juan S. Cely G. juanscelyg@gmail.com
Supported ROS 2 Distributions
| Distribution | Status |
|—|—|
| rolling | |
Plugin (pluginlib)
-
Plugin Name:
easynav_mpc_controller/MPCController -
Type:
easynav::MPCController -
Base Class:
easynav::ControllerMethodBase -
Library:
easynav_mpc_controller - Description: A Model Predictive Controller (MPC) implementation for Easy Navigation.
Parameters
All parameters are declared under the plugin namespace, i.e., /<node_fqn>/easynav_mpc_controller/MPCController/....
| Name | Type | Default | Description |
|---|---|---|---|
<plugin>.horizon_steps |
int |
5 |
Number of time steps in the prediction horizon. |
<plugin>.dt |
double |
0.1 |
Integration time step (seconds). |
<plugin>.safety_radius |
double |
0.35 |
Safety radius to check possible collisions. |
<plugin>.max_linear_velocity |
double |
1.5 |
Maximum linear velocity (m/s). |
<plugin>.max_angular_velocity |
double |
1.5 |
Maximum angular velocity (rad/s). |
<plugin>.verbose |
bool |
false |
Show data on terminal about Optimization. |
Interfaces (Topics and Services)
Subscriptions and Publications
| Direction | Topic | Type | Purpose | QoS |
|—|—|—|—|—|
| Publisher | /mpc/path | nav_msgs/msg/path | MPC trajectories generate by Predictive Component. | QoS depth=10 |
| Publisher | /mpc/detection | sensor_msgs::msg::PointCloud2 | Detections used by collision checker. | QoS depth=10 |
Services
This package does not create service servers or clients.
NavState Keys
| Key | Type | Access | Notes |
|—|—|—|—|
| path | nav_msgs::msg::Path | Read | Target path to track. |
| robot_pose | nav_msgs::msg::Odometry | Read | Current robot pose/state. |
| cmd_vel | geometry_msgs::msg::TwistStamped | Read | Last commanded velocity (if provided in state). |
| points | PointPerceptions | Read | Perception point cloud(s) used for costs. |
TF Frames
This controller does not explicitly publish or require TF frames in code.
License
Apache-2.0
Changelog for package easynav_mpc_controller
0.2.1 (2026-02-27)
- 0.2.0
- GPLv3 -> Apache 2.0
- Collision checker scope was changed
- Remove C++20/C++23 features and update to new MethodBase interface
- TFInfo in RTTFBuffer
- Refactor to use TFInfo
- Collision avoidance was improved
- Trim path for MPC
- Obstacles are detected
- MPC with differential model is working
- MPC Controller minimizes path following
- Visualization Marker was added
- MPC controller is working
- MPC was added
- Contributors: Francisco Martín Rico, Francisco Miguel Moreno, José Miguel Guerrero, Juan S. Cely G., Miguel
0.0.2 (2025-10-12)
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged easynav_mpc_controller at Robotics Stack Exchange
Package Summary
| Version | 0.2.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/EasyNavigation/easynav_plugins.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-02-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Juan S. Cely G.
Authors
easynav_mpc_controller
Description
A Model Predictive Controller (MPC) implementation for Easy Navigation.
Authors and Maintainers
- Authors: Intelligent Robotics Lab
- Maintainers: Juan S. Cely G. juanscelyg@gmail.com
Supported ROS 2 Distributions
| Distribution | Status |
|—|—|
| rolling | |
Plugin (pluginlib)
-
Plugin Name:
easynav_mpc_controller/MPCController -
Type:
easynav::MPCController -
Base Class:
easynav::ControllerMethodBase -
Library:
easynav_mpc_controller - Description: A Model Predictive Controller (MPC) implementation for Easy Navigation.
Parameters
All parameters are declared under the plugin namespace, i.e., /<node_fqn>/easynav_mpc_controller/MPCController/....
| Name | Type | Default | Description |
|---|---|---|---|
<plugin>.horizon_steps |
int |
5 |
Number of time steps in the prediction horizon. |
<plugin>.dt |
double |
0.1 |
Integration time step (seconds). |
<plugin>.safety_radius |
double |
0.35 |
Safety radius to check possible collisions. |
<plugin>.max_linear_velocity |
double |
1.5 |
Maximum linear velocity (m/s). |
<plugin>.max_angular_velocity |
double |
1.5 |
Maximum angular velocity (rad/s). |
<plugin>.verbose |
bool |
false |
Show data on terminal about Optimization. |
Interfaces (Topics and Services)
Subscriptions and Publications
| Direction | Topic | Type | Purpose | QoS |
|—|—|—|—|—|
| Publisher | /mpc/path | nav_msgs/msg/path | MPC trajectories generate by Predictive Component. | QoS depth=10 |
| Publisher | /mpc/detection | sensor_msgs::msg::PointCloud2 | Detections used by collision checker. | QoS depth=10 |
Services
This package does not create service servers or clients.
NavState Keys
| Key | Type | Access | Notes |
|—|—|—|—|
| path | nav_msgs::msg::Path | Read | Target path to track. |
| robot_pose | nav_msgs::msg::Odometry | Read | Current robot pose/state. |
| cmd_vel | geometry_msgs::msg::TwistStamped | Read | Last commanded velocity (if provided in state). |
| points | PointPerceptions | Read | Perception point cloud(s) used for costs. |
TF Frames
This controller does not explicitly publish or require TF frames in code.
License
Apache-2.0
Changelog for package easynav_mpc_controller
0.2.1 (2026-02-27)
- 0.2.0
- GPLv3 -> Apache 2.0
- Collision checker scope was changed
- Remove C++20/C++23 features and update to new MethodBase interface
- TFInfo in RTTFBuffer
- Refactor to use TFInfo
- Collision avoidance was improved
- Trim path for MPC
- Obstacles are detected
- MPC with differential model is working
- MPC Controller minimizes path following
- Visualization Marker was added
- MPC controller is working
- MPC was added
- Contributors: Francisco Martín Rico, Francisco Miguel Moreno, José Miguel Guerrero, Juan S. Cely G., Miguel
0.0.2 (2025-10-12)
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged easynav_mpc_controller at Robotics Stack Exchange
Package Summary
| Version | 0.2.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/EasyNavigation/easynav_plugins.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-02-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Juan S. Cely G.
Authors
easynav_mpc_controller
Description
A Model Predictive Controller (MPC) implementation for Easy Navigation.
Authors and Maintainers
- Authors: Intelligent Robotics Lab
- Maintainers: Juan S. Cely G. juanscelyg@gmail.com
Supported ROS 2 Distributions
| Distribution | Status |
|—|—|
| rolling | |
Plugin (pluginlib)
-
Plugin Name:
easynav_mpc_controller/MPCController -
Type:
easynav::MPCController -
Base Class:
easynav::ControllerMethodBase -
Library:
easynav_mpc_controller - Description: A Model Predictive Controller (MPC) implementation for Easy Navigation.
Parameters
All parameters are declared under the plugin namespace, i.e., /<node_fqn>/easynav_mpc_controller/MPCController/....
| Name | Type | Default | Description |
|---|---|---|---|
<plugin>.horizon_steps |
int |
5 |
Number of time steps in the prediction horizon. |
<plugin>.dt |
double |
0.1 |
Integration time step (seconds). |
<plugin>.safety_radius |
double |
0.35 |
Safety radius to check possible collisions. |
<plugin>.max_linear_velocity |
double |
1.5 |
Maximum linear velocity (m/s). |
<plugin>.max_angular_velocity |
double |
1.5 |
Maximum angular velocity (rad/s). |
<plugin>.verbose |
bool |
false |
Show data on terminal about Optimization. |
Interfaces (Topics and Services)
Subscriptions and Publications
| Direction | Topic | Type | Purpose | QoS |
|—|—|—|—|—|
| Publisher | /mpc/path | nav_msgs/msg/path | MPC trajectories generate by Predictive Component. | QoS depth=10 |
| Publisher | /mpc/detection | sensor_msgs::msg::PointCloud2 | Detections used by collision checker. | QoS depth=10 |
Services
This package does not create service servers or clients.
NavState Keys
| Key | Type | Access | Notes |
|—|—|—|—|
| path | nav_msgs::msg::Path | Read | Target path to track. |
| robot_pose | nav_msgs::msg::Odometry | Read | Current robot pose/state. |
| cmd_vel | geometry_msgs::msg::TwistStamped | Read | Last commanded velocity (if provided in state). |
| points | PointPerceptions | Read | Perception point cloud(s) used for costs. |
TF Frames
This controller does not explicitly publish or require TF frames in code.
License
Apache-2.0
Changelog for package easynav_mpc_controller
0.2.1 (2026-02-27)
- 0.2.0
- GPLv3 -> Apache 2.0
- Collision checker scope was changed
- Remove C++20/C++23 features and update to new MethodBase interface
- TFInfo in RTTFBuffer
- Refactor to use TFInfo
- Collision avoidance was improved
- Trim path for MPC
- Obstacles are detected
- MPC with differential model is working
- MPC Controller minimizes path following
- Visualization Marker was added
- MPC controller is working
- MPC was added
- Contributors: Francisco Martín Rico, Francisco Miguel Moreno, José Miguel Guerrero, Juan S. Cely G., Miguel
0.0.2 (2025-10-12)
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged easynav_mpc_controller at Robotics Stack Exchange
Package Summary
| Version | 0.2.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/EasyNavigation/easynav_plugins.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-02-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Juan S. Cely G.
Authors
easynav_mpc_controller
Description
A Model Predictive Controller (MPC) implementation for Easy Navigation.
Authors and Maintainers
- Authors: Intelligent Robotics Lab
- Maintainers: Juan S. Cely G. juanscelyg@gmail.com
Supported ROS 2 Distributions
| Distribution | Status |
|—|—|
| rolling | |
Plugin (pluginlib)
-
Plugin Name:
easynav_mpc_controller/MPCController -
Type:
easynav::MPCController -
Base Class:
easynav::ControllerMethodBase -
Library:
easynav_mpc_controller - Description: A Model Predictive Controller (MPC) implementation for Easy Navigation.
Parameters
All parameters are declared under the plugin namespace, i.e., /<node_fqn>/easynav_mpc_controller/MPCController/....
| Name | Type | Default | Description |
|---|---|---|---|
<plugin>.horizon_steps |
int |
5 |
Number of time steps in the prediction horizon. |
<plugin>.dt |
double |
0.1 |
Integration time step (seconds). |
<plugin>.safety_radius |
double |
0.35 |
Safety radius to check possible collisions. |
<plugin>.max_linear_velocity |
double |
1.5 |
Maximum linear velocity (m/s). |
<plugin>.max_angular_velocity |
double |
1.5 |
Maximum angular velocity (rad/s). |
<plugin>.verbose |
bool |
false |
Show data on terminal about Optimization. |
Interfaces (Topics and Services)
Subscriptions and Publications
| Direction | Topic | Type | Purpose | QoS |
|—|—|—|—|—|
| Publisher | /mpc/path | nav_msgs/msg/path | MPC trajectories generate by Predictive Component. | QoS depth=10 |
| Publisher | /mpc/detection | sensor_msgs::msg::PointCloud2 | Detections used by collision checker. | QoS depth=10 |
Services
This package does not create service servers or clients.
NavState Keys
| Key | Type | Access | Notes |
|—|—|—|—|
| path | nav_msgs::msg::Path | Read | Target path to track. |
| robot_pose | nav_msgs::msg::Odometry | Read | Current robot pose/state. |
| cmd_vel | geometry_msgs::msg::TwistStamped | Read | Last commanded velocity (if provided in state). |
| points | PointPerceptions | Read | Perception point cloud(s) used for costs. |
TF Frames
This controller does not explicitly publish or require TF frames in code.
License
Apache-2.0
Changelog for package easynav_mpc_controller
0.2.1 (2026-02-27)
- 0.2.0
- GPLv3 -> Apache 2.0
- Collision checker scope was changed
- Remove C++20/C++23 features and update to new MethodBase interface
- TFInfo in RTTFBuffer
- Refactor to use TFInfo
- Collision avoidance was improved
- Trim path for MPC
- Obstacles are detected
- MPC with differential model is working
- MPC Controller minimizes path following
- Visualization Marker was added
- MPC controller is working
- MPC was added
- Contributors: Francisco Martín Rico, Francisco Miguel Moreno, José Miguel Guerrero, Juan S. Cely G., Miguel
0.0.2 (2025-10-12)
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged easynav_mpc_controller at Robotics Stack Exchange
Package Summary
| Version | 0.2.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/EasyNavigation/easynav_plugins.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-02-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Juan S. Cely G.
Authors
easynav_mpc_controller
Description
A Model Predictive Controller (MPC) implementation for Easy Navigation.
Authors and Maintainers
- Authors: Intelligent Robotics Lab
- Maintainers: Juan S. Cely G. juanscelyg@gmail.com
Supported ROS 2 Distributions
| Distribution | Status |
|—|—|
| rolling | |
Plugin (pluginlib)
-
Plugin Name:
easynav_mpc_controller/MPCController -
Type:
easynav::MPCController -
Base Class:
easynav::ControllerMethodBase -
Library:
easynav_mpc_controller - Description: A Model Predictive Controller (MPC) implementation for Easy Navigation.
Parameters
All parameters are declared under the plugin namespace, i.e., /<node_fqn>/easynav_mpc_controller/MPCController/....
| Name | Type | Default | Description |
|---|---|---|---|
<plugin>.horizon_steps |
int |
5 |
Number of time steps in the prediction horizon. |
<plugin>.dt |
double |
0.1 |
Integration time step (seconds). |
<plugin>.safety_radius |
double |
0.35 |
Safety radius to check possible collisions. |
<plugin>.max_linear_velocity |
double |
1.5 |
Maximum linear velocity (m/s). |
<plugin>.max_angular_velocity |
double |
1.5 |
Maximum angular velocity (rad/s). |
<plugin>.verbose |
bool |
false |
Show data on terminal about Optimization. |
Interfaces (Topics and Services)
Subscriptions and Publications
| Direction | Topic | Type | Purpose | QoS |
|—|—|—|—|—|
| Publisher | /mpc/path | nav_msgs/msg/path | MPC trajectories generate by Predictive Component. | QoS depth=10 |
| Publisher | /mpc/detection | sensor_msgs::msg::PointCloud2 | Detections used by collision checker. | QoS depth=10 |
Services
This package does not create service servers or clients.
NavState Keys
| Key | Type | Access | Notes |
|—|—|—|—|
| path | nav_msgs::msg::Path | Read | Target path to track. |
| robot_pose | nav_msgs::msg::Odometry | Read | Current robot pose/state. |
| cmd_vel | geometry_msgs::msg::TwistStamped | Read | Last commanded velocity (if provided in state). |
| points | PointPerceptions | Read | Perception point cloud(s) used for costs. |
TF Frames
This controller does not explicitly publish or require TF frames in code.
License
Apache-2.0
Changelog for package easynav_mpc_controller
0.2.1 (2026-02-27)
- 0.2.0
- GPLv3 -> Apache 2.0
- Collision checker scope was changed
- Remove C++20/C++23 features and update to new MethodBase interface
- TFInfo in RTTFBuffer
- Refactor to use TFInfo
- Collision avoidance was improved
- Trim path for MPC
- Obstacles are detected
- MPC with differential model is working
- MPC Controller minimizes path following
- Visualization Marker was added
- MPC controller is working
- MPC was added
- Contributors: Francisco Martín Rico, Francisco Miguel Moreno, José Miguel Guerrero, Juan S. Cely G., Miguel