No version for distro humble showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/simone-contorno/prox_mpc.git
VCS Type git
VCS Version main
Last Updated 2026-07-28
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Test-fixture prox_mpc::Model plugins for the ProxMPC stack. These fault-injection models exercise controller fail-safe paths that the bundled models cannot reach (for example a non-finite command). Not for production use.

Additional Links

Maintainers

  • Simone Contorno

Authors

No additional authors.

prox_mpc_test_models

ROS 2 Jazzy

Test-fixture prox_mpc::Model plugins for the ProxMPC stack.

These are fault-injection models that exercise controller fail-safe paths the bundled production models cannot reach. They are registered against the same prox_mpc::Model base as the core models, so prox_mpc_controller loads them through its ordinary pluginlib path during testing - no test-only seam in production code.

Not for production use. This package exists only to drive tests.

Table of Contents

Overview

The package is a header-and-plugin fixture: it contributes one deliberately faulty prox_mpc::Model implementation and its pluginlib registration, with no executable and no ROS node. It is a <test_depend> of prox_mpc_controller, so it is present only when that package’s tests are built.

Models

Plugin name Class Purpose
prox_mpc_test_models/NonFiniteTwist prox_mpc_test_models::NonFiniteTwistModel Finite linear dynamics (state [x, y, theta], control [v, omega]) so the QP converges and reports PROXQP_SOLVED with a finite first control, but toTwist() deliberately returns a non-finite command (linear.x = NaN).

The NonFiniteTwist model is the only seam that reaches the controller’s non-finite-command fail-safe: a finite-mapping model cannot produce a non-finite twist from a finite control, so this fixture is required to cover that branch. The controller test asserts the controller brakes at the model deceleration limit and then escalates to nav2_core::NoValidControl once the failure budget is spent.

How It Is Used

The package is a <test_depend> of prox_mpc_controller. Its plugins are registered against the prox_mpc::Model base (through prox_mpc_test_models_plugins.xml, exported for the prox_mpc_core base package), so the controller’s pluginlib::ClassLoader<prox_mpc::Model>("prox_mpc_core", ...) discovers them by name.

Prerequisites

  • ROS 2 Jazzy on Ubuntu 24.04.
  • prox_mpc_core (the prox_mpc::Model base and its build export).
  • Eigen3, geometry_msgs, pluginlib, proxsuite (>= 0.6.5), rclcpp, resolved by rosdep.

Build

cd ~/ros2_ws
source /opt/ros/jazzy/setup.bash
colcon build --symlink-install --packages-select prox_mpc_core prox_mpc_test_models
source install/setup.bash
ros2 plugin list --package prox_mpc_test_models   # lists prox_mpc_test_models/NonFiniteTwist

ros2 plugin list --package prox_mpc_test_models reports the fixture’s plugin under the prox_mpc::Model base; the --package value is the package that installs the plugin description, not the base package.

Project Structure

prox_mpc_test_models/
├── include/prox_mpc_test_models/
│   └── non_finite_twist_model.hpp
├── src/
│   └── plugins.cpp
├── CHANGELOG.rst
├── CMakeLists.txt
├── package.xml
├── prox_mpc_test_models_plugins.xml
└── README.md

The package ships no test suite of its own; it is the fixture that the prox_mpc_controller tests load.

License

Apache-2.0. Each source file carries a short SPDX-License-Identifier: Apache-2.0 header.

CHANGELOG

Changelog for package prox_mpc_test_models

1.0.0 (2026-07-28)

  • Initial release: fault-injection prox_mpc::Model plugin (NonFiniteTwist) used by the controller test suite to exercise fail-safe branches through the real pluginlib load path.
  • Contributors: Simone Contorno

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged prox_mpc_test_models at Robotics Stack Exchange

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/simone-contorno/prox_mpc.git
VCS Type git
VCS Version main
Last Updated 2026-07-28
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Test-fixture prox_mpc::Model plugins for the ProxMPC stack. These fault-injection models exercise controller fail-safe paths that the bundled models cannot reach (for example a non-finite command). Not for production use.

Additional Links

Maintainers

  • Simone Contorno

Authors

No additional authors.

prox_mpc_test_models

ROS 2 Jazzy

Test-fixture prox_mpc::Model plugins for the ProxMPC stack.

These are fault-injection models that exercise controller fail-safe paths the bundled production models cannot reach. They are registered against the same prox_mpc::Model base as the core models, so prox_mpc_controller loads them through its ordinary pluginlib path during testing - no test-only seam in production code.

Not for production use. This package exists only to drive tests.

Table of Contents

Overview

The package is a header-and-plugin fixture: it contributes one deliberately faulty prox_mpc::Model implementation and its pluginlib registration, with no executable and no ROS node. It is a <test_depend> of prox_mpc_controller, so it is present only when that package’s tests are built.

Models

Plugin name Class Purpose
prox_mpc_test_models/NonFiniteTwist prox_mpc_test_models::NonFiniteTwistModel Finite linear dynamics (state [x, y, theta], control [v, omega]) so the QP converges and reports PROXQP_SOLVED with a finite first control, but toTwist() deliberately returns a non-finite command (linear.x = NaN).

The NonFiniteTwist model is the only seam that reaches the controller’s non-finite-command fail-safe: a finite-mapping model cannot produce a non-finite twist from a finite control, so this fixture is required to cover that branch. The controller test asserts the controller brakes at the model deceleration limit and then escalates to nav2_core::NoValidControl once the failure budget is spent.

How It Is Used

The package is a <test_depend> of prox_mpc_controller. Its plugins are registered against the prox_mpc::Model base (through prox_mpc_test_models_plugins.xml, exported for the prox_mpc_core base package), so the controller’s pluginlib::ClassLoader<prox_mpc::Model>("prox_mpc_core", ...) discovers them by name.

Prerequisites

  • ROS 2 Jazzy on Ubuntu 24.04.
  • prox_mpc_core (the prox_mpc::Model base and its build export).
  • Eigen3, geometry_msgs, pluginlib, proxsuite (>= 0.6.5), rclcpp, resolved by rosdep.

Build

cd ~/ros2_ws
source /opt/ros/jazzy/setup.bash
colcon build --symlink-install --packages-select prox_mpc_core prox_mpc_test_models
source install/setup.bash
ros2 plugin list --package prox_mpc_test_models   # lists prox_mpc_test_models/NonFiniteTwist

ros2 plugin list --package prox_mpc_test_models reports the fixture’s plugin under the prox_mpc::Model base; the --package value is the package that installs the plugin description, not the base package.

Project Structure

prox_mpc_test_models/
├── include/prox_mpc_test_models/
│   └── non_finite_twist_model.hpp
├── src/
│   └── plugins.cpp
├── CHANGELOG.rst
├── CMakeLists.txt
├── package.xml
├── prox_mpc_test_models_plugins.xml
└── README.md

The package ships no test suite of its own; it is the fixture that the prox_mpc_controller tests load.

License

Apache-2.0. Each source file carries a short SPDX-License-Identifier: Apache-2.0 header.

CHANGELOG

Changelog for package prox_mpc_test_models

1.0.0 (2026-07-28)

  • Initial release: fault-injection prox_mpc::Model plugin (NonFiniteTwist) used by the controller test suite to exercise fail-safe branches through the real pluginlib load path.
  • Contributors: Simone Contorno

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged prox_mpc_test_models at Robotics Stack Exchange

No version for distro kilted showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/simone-contorno/prox_mpc.git
VCS Type git
VCS Version main
Last Updated 2026-07-28
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Test-fixture prox_mpc::Model plugins for the ProxMPC stack. These fault-injection models exercise controller fail-safe paths that the bundled models cannot reach (for example a non-finite command). Not for production use.

Additional Links

Maintainers

  • Simone Contorno

Authors

No additional authors.

prox_mpc_test_models

ROS 2 Jazzy

Test-fixture prox_mpc::Model plugins for the ProxMPC stack.

These are fault-injection models that exercise controller fail-safe paths the bundled production models cannot reach. They are registered against the same prox_mpc::Model base as the core models, so prox_mpc_controller loads them through its ordinary pluginlib path during testing - no test-only seam in production code.

Not for production use. This package exists only to drive tests.

Table of Contents

Overview

The package is a header-and-plugin fixture: it contributes one deliberately faulty prox_mpc::Model implementation and its pluginlib registration, with no executable and no ROS node. It is a <test_depend> of prox_mpc_controller, so it is present only when that package’s tests are built.

Models

Plugin name Class Purpose
prox_mpc_test_models/NonFiniteTwist prox_mpc_test_models::NonFiniteTwistModel Finite linear dynamics (state [x, y, theta], control [v, omega]) so the QP converges and reports PROXQP_SOLVED with a finite first control, but toTwist() deliberately returns a non-finite command (linear.x = NaN).

The NonFiniteTwist model is the only seam that reaches the controller’s non-finite-command fail-safe: a finite-mapping model cannot produce a non-finite twist from a finite control, so this fixture is required to cover that branch. The controller test asserts the controller brakes at the model deceleration limit and then escalates to nav2_core::NoValidControl once the failure budget is spent.

How It Is Used

The package is a <test_depend> of prox_mpc_controller. Its plugins are registered against the prox_mpc::Model base (through prox_mpc_test_models_plugins.xml, exported for the prox_mpc_core base package), so the controller’s pluginlib::ClassLoader<prox_mpc::Model>("prox_mpc_core", ...) discovers them by name.

Prerequisites

  • ROS 2 Jazzy on Ubuntu 24.04.
  • prox_mpc_core (the prox_mpc::Model base and its build export).
  • Eigen3, geometry_msgs, pluginlib, proxsuite (>= 0.6.5), rclcpp, resolved by rosdep.

Build

cd ~/ros2_ws
source /opt/ros/jazzy/setup.bash
colcon build --symlink-install --packages-select prox_mpc_core prox_mpc_test_models
source install/setup.bash
ros2 plugin list --package prox_mpc_test_models   # lists prox_mpc_test_models/NonFiniteTwist

ros2 plugin list --package prox_mpc_test_models reports the fixture’s plugin under the prox_mpc::Model base; the --package value is the package that installs the plugin description, not the base package.

Project Structure

prox_mpc_test_models/
├── include/prox_mpc_test_models/
│   └── non_finite_twist_model.hpp
├── src/
│   └── plugins.cpp
├── CHANGELOG.rst
├── CMakeLists.txt
├── package.xml
├── prox_mpc_test_models_plugins.xml
└── README.md

The package ships no test suite of its own; it is the fixture that the prox_mpc_controller tests load.

License

Apache-2.0. Each source file carries a short SPDX-License-Identifier: Apache-2.0 header.

CHANGELOG

Changelog for package prox_mpc_test_models

1.0.0 (2026-07-28)

  • Initial release: fault-injection prox_mpc::Model plugin (NonFiniteTwist) used by the controller test suite to exercise fail-safe branches through the real pluginlib load path.
  • Contributors: Simone Contorno

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged prox_mpc_test_models at Robotics Stack Exchange

No version for distro lyrical showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/simone-contorno/prox_mpc.git
VCS Type git
VCS Version main
Last Updated 2026-07-28
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Test-fixture prox_mpc::Model plugins for the ProxMPC stack. These fault-injection models exercise controller fail-safe paths that the bundled models cannot reach (for example a non-finite command). Not for production use.

Additional Links

Maintainers

  • Simone Contorno

Authors

No additional authors.

prox_mpc_test_models

ROS 2 Jazzy

Test-fixture prox_mpc::Model plugins for the ProxMPC stack.

These are fault-injection models that exercise controller fail-safe paths the bundled production models cannot reach. They are registered against the same prox_mpc::Model base as the core models, so prox_mpc_controller loads them through its ordinary pluginlib path during testing - no test-only seam in production code.

Not for production use. This package exists only to drive tests.

Table of Contents

Overview

The package is a header-and-plugin fixture: it contributes one deliberately faulty prox_mpc::Model implementation and its pluginlib registration, with no executable and no ROS node. It is a <test_depend> of prox_mpc_controller, so it is present only when that package’s tests are built.

Models

Plugin name Class Purpose
prox_mpc_test_models/NonFiniteTwist prox_mpc_test_models::NonFiniteTwistModel Finite linear dynamics (state [x, y, theta], control [v, omega]) so the QP converges and reports PROXQP_SOLVED with a finite first control, but toTwist() deliberately returns a non-finite command (linear.x = NaN).

The NonFiniteTwist model is the only seam that reaches the controller’s non-finite-command fail-safe: a finite-mapping model cannot produce a non-finite twist from a finite control, so this fixture is required to cover that branch. The controller test asserts the controller brakes at the model deceleration limit and then escalates to nav2_core::NoValidControl once the failure budget is spent.

How It Is Used

The package is a <test_depend> of prox_mpc_controller. Its plugins are registered against the prox_mpc::Model base (through prox_mpc_test_models_plugins.xml, exported for the prox_mpc_core base package), so the controller’s pluginlib::ClassLoader<prox_mpc::Model>("prox_mpc_core", ...) discovers them by name.

Prerequisites

  • ROS 2 Jazzy on Ubuntu 24.04.
  • prox_mpc_core (the prox_mpc::Model base and its build export).
  • Eigen3, geometry_msgs, pluginlib, proxsuite (>= 0.6.5), rclcpp, resolved by rosdep.

Build

cd ~/ros2_ws
source /opt/ros/jazzy/setup.bash
colcon build --symlink-install --packages-select prox_mpc_core prox_mpc_test_models
source install/setup.bash
ros2 plugin list --package prox_mpc_test_models   # lists prox_mpc_test_models/NonFiniteTwist

ros2 plugin list --package prox_mpc_test_models reports the fixture’s plugin under the prox_mpc::Model base; the --package value is the package that installs the plugin description, not the base package.

Project Structure

prox_mpc_test_models/
├── include/prox_mpc_test_models/
│   └── non_finite_twist_model.hpp
├── src/
│   └── plugins.cpp
├── CHANGELOG.rst
├── CMakeLists.txt
├── package.xml
├── prox_mpc_test_models_plugins.xml
└── README.md

The package ships no test suite of its own; it is the fixture that the prox_mpc_controller tests load.

License

Apache-2.0. Each source file carries a short SPDX-License-Identifier: Apache-2.0 header.

CHANGELOG

Changelog for package prox_mpc_test_models

1.0.0 (2026-07-28)

  • Initial release: fault-injection prox_mpc::Model plugin (NonFiniteTwist) used by the controller test suite to exercise fail-safe branches through the real pluginlib load path.
  • Contributors: Simone Contorno

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged prox_mpc_test_models at Robotics Stack Exchange

No version for distro rolling showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/simone-contorno/prox_mpc.git
VCS Type git
VCS Version main
Last Updated 2026-07-28
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Test-fixture prox_mpc::Model plugins for the ProxMPC stack. These fault-injection models exercise controller fail-safe paths that the bundled models cannot reach (for example a non-finite command). Not for production use.

Additional Links

Maintainers

  • Simone Contorno

Authors

No additional authors.

prox_mpc_test_models

ROS 2 Jazzy

Test-fixture prox_mpc::Model plugins for the ProxMPC stack.

These are fault-injection models that exercise controller fail-safe paths the bundled production models cannot reach. They are registered against the same prox_mpc::Model base as the core models, so prox_mpc_controller loads them through its ordinary pluginlib path during testing - no test-only seam in production code.

Not for production use. This package exists only to drive tests.

Table of Contents

Overview

The package is a header-and-plugin fixture: it contributes one deliberately faulty prox_mpc::Model implementation and its pluginlib registration, with no executable and no ROS node. It is a <test_depend> of prox_mpc_controller, so it is present only when that package’s tests are built.

Models

Plugin name Class Purpose
prox_mpc_test_models/NonFiniteTwist prox_mpc_test_models::NonFiniteTwistModel Finite linear dynamics (state [x, y, theta], control [v, omega]) so the QP converges and reports PROXQP_SOLVED with a finite first control, but toTwist() deliberately returns a non-finite command (linear.x = NaN).

The NonFiniteTwist model is the only seam that reaches the controller’s non-finite-command fail-safe: a finite-mapping model cannot produce a non-finite twist from a finite control, so this fixture is required to cover that branch. The controller test asserts the controller brakes at the model deceleration limit and then escalates to nav2_core::NoValidControl once the failure budget is spent.

How It Is Used

The package is a <test_depend> of prox_mpc_controller. Its plugins are registered against the prox_mpc::Model base (through prox_mpc_test_models_plugins.xml, exported for the prox_mpc_core base package), so the controller’s pluginlib::ClassLoader<prox_mpc::Model>("prox_mpc_core", ...) discovers them by name.

Prerequisites

  • ROS 2 Jazzy on Ubuntu 24.04.
  • prox_mpc_core (the prox_mpc::Model base and its build export).
  • Eigen3, geometry_msgs, pluginlib, proxsuite (>= 0.6.5), rclcpp, resolved by rosdep.

Build

cd ~/ros2_ws
source /opt/ros/jazzy/setup.bash
colcon build --symlink-install --packages-select prox_mpc_core prox_mpc_test_models
source install/setup.bash
ros2 plugin list --package prox_mpc_test_models   # lists prox_mpc_test_models/NonFiniteTwist

ros2 plugin list --package prox_mpc_test_models reports the fixture’s plugin under the prox_mpc::Model base; the --package value is the package that installs the plugin description, not the base package.

Project Structure

prox_mpc_test_models/
├── include/prox_mpc_test_models/
│   └── non_finite_twist_model.hpp
├── src/
│   └── plugins.cpp
├── CHANGELOG.rst
├── CMakeLists.txt
├── package.xml
├── prox_mpc_test_models_plugins.xml
└── README.md

The package ships no test suite of its own; it is the fixture that the prox_mpc_controller tests load.

License

Apache-2.0. Each source file carries a short SPDX-License-Identifier: Apache-2.0 header.

CHANGELOG

Changelog for package prox_mpc_test_models

1.0.0 (2026-07-28)

  • Initial release: fault-injection prox_mpc::Model plugin (NonFiniteTwist) used by the controller test suite to exercise fail-safe branches through the real pluginlib load path.
  • Contributors: Simone Contorno

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged prox_mpc_test_models at Robotics Stack Exchange

No version for distro ardent showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/simone-contorno/prox_mpc.git
VCS Type git
VCS Version main
Last Updated 2026-07-28
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Test-fixture prox_mpc::Model plugins for the ProxMPC stack. These fault-injection models exercise controller fail-safe paths that the bundled models cannot reach (for example a non-finite command). Not for production use.

Additional Links

Maintainers

  • Simone Contorno

Authors

No additional authors.

prox_mpc_test_models

ROS 2 Jazzy

Test-fixture prox_mpc::Model plugins for the ProxMPC stack.

These are fault-injection models that exercise controller fail-safe paths the bundled production models cannot reach. They are registered against the same prox_mpc::Model base as the core models, so prox_mpc_controller loads them through its ordinary pluginlib path during testing - no test-only seam in production code.

Not for production use. This package exists only to drive tests.

Table of Contents

Overview

The package is a header-and-plugin fixture: it contributes one deliberately faulty prox_mpc::Model implementation and its pluginlib registration, with no executable and no ROS node. It is a <test_depend> of prox_mpc_controller, so it is present only when that package’s tests are built.

Models

Plugin name Class Purpose
prox_mpc_test_models/NonFiniteTwist prox_mpc_test_models::NonFiniteTwistModel Finite linear dynamics (state [x, y, theta], control [v, omega]) so the QP converges and reports PROXQP_SOLVED with a finite first control, but toTwist() deliberately returns a non-finite command (linear.x = NaN).

The NonFiniteTwist model is the only seam that reaches the controller’s non-finite-command fail-safe: a finite-mapping model cannot produce a non-finite twist from a finite control, so this fixture is required to cover that branch. The controller test asserts the controller brakes at the model deceleration limit and then escalates to nav2_core::NoValidControl once the failure budget is spent.

How It Is Used

The package is a <test_depend> of prox_mpc_controller. Its plugins are registered against the prox_mpc::Model base (through prox_mpc_test_models_plugins.xml, exported for the prox_mpc_core base package), so the controller’s pluginlib::ClassLoader<prox_mpc::Model>("prox_mpc_core", ...) discovers them by name.

Prerequisites

  • ROS 2 Jazzy on Ubuntu 24.04.
  • prox_mpc_core (the prox_mpc::Model base and its build export).
  • Eigen3, geometry_msgs, pluginlib, proxsuite (>= 0.6.5), rclcpp, resolved by rosdep.

Build

cd ~/ros2_ws
source /opt/ros/jazzy/setup.bash
colcon build --symlink-install --packages-select prox_mpc_core prox_mpc_test_models
source install/setup.bash
ros2 plugin list --package prox_mpc_test_models   # lists prox_mpc_test_models/NonFiniteTwist

ros2 plugin list --package prox_mpc_test_models reports the fixture’s plugin under the prox_mpc::Model base; the --package value is the package that installs the plugin description, not the base package.

Project Structure

prox_mpc_test_models/
├── include/prox_mpc_test_models/
│   └── non_finite_twist_model.hpp
├── src/
│   └── plugins.cpp
├── CHANGELOG.rst
├── CMakeLists.txt
├── package.xml
├── prox_mpc_test_models_plugins.xml
└── README.md

The package ships no test suite of its own; it is the fixture that the prox_mpc_controller tests load.

License

Apache-2.0. Each source file carries a short SPDX-License-Identifier: Apache-2.0 header.

CHANGELOG

Changelog for package prox_mpc_test_models

1.0.0 (2026-07-28)

  • Initial release: fault-injection prox_mpc::Model plugin (NonFiniteTwist) used by the controller test suite to exercise fail-safe branches through the real pluginlib load path.
  • Contributors: Simone Contorno

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged prox_mpc_test_models at Robotics Stack Exchange

No version for distro bouncy showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/simone-contorno/prox_mpc.git
VCS Type git
VCS Version main
Last Updated 2026-07-28
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Test-fixture prox_mpc::Model plugins for the ProxMPC stack. These fault-injection models exercise controller fail-safe paths that the bundled models cannot reach (for example a non-finite command). Not for production use.

Additional Links

Maintainers

  • Simone Contorno

Authors

No additional authors.

prox_mpc_test_models

ROS 2 Jazzy

Test-fixture prox_mpc::Model plugins for the ProxMPC stack.

These are fault-injection models that exercise controller fail-safe paths the bundled production models cannot reach. They are registered against the same prox_mpc::Model base as the core models, so prox_mpc_controller loads them through its ordinary pluginlib path during testing - no test-only seam in production code.

Not for production use. This package exists only to drive tests.

Table of Contents

Overview

The package is a header-and-plugin fixture: it contributes one deliberately faulty prox_mpc::Model implementation and its pluginlib registration, with no executable and no ROS node. It is a <test_depend> of prox_mpc_controller, so it is present only when that package’s tests are built.

Models

Plugin name Class Purpose
prox_mpc_test_models/NonFiniteTwist prox_mpc_test_models::NonFiniteTwistModel Finite linear dynamics (state [x, y, theta], control [v, omega]) so the QP converges and reports PROXQP_SOLVED with a finite first control, but toTwist() deliberately returns a non-finite command (linear.x = NaN).

The NonFiniteTwist model is the only seam that reaches the controller’s non-finite-command fail-safe: a finite-mapping model cannot produce a non-finite twist from a finite control, so this fixture is required to cover that branch. The controller test asserts the controller brakes at the model deceleration limit and then escalates to nav2_core::NoValidControl once the failure budget is spent.

How It Is Used

The package is a <test_depend> of prox_mpc_controller. Its plugins are registered against the prox_mpc::Model base (through prox_mpc_test_models_plugins.xml, exported for the prox_mpc_core base package), so the controller’s pluginlib::ClassLoader<prox_mpc::Model>("prox_mpc_core", ...) discovers them by name.

Prerequisites

  • ROS 2 Jazzy on Ubuntu 24.04.
  • prox_mpc_core (the prox_mpc::Model base and its build export).
  • Eigen3, geometry_msgs, pluginlib, proxsuite (>= 0.6.5), rclcpp, resolved by rosdep.

Build

cd ~/ros2_ws
source /opt/ros/jazzy/setup.bash
colcon build --symlink-install --packages-select prox_mpc_core prox_mpc_test_models
source install/setup.bash
ros2 plugin list --package prox_mpc_test_models   # lists prox_mpc_test_models/NonFiniteTwist

ros2 plugin list --package prox_mpc_test_models reports the fixture’s plugin under the prox_mpc::Model base; the --package value is the package that installs the plugin description, not the base package.

Project Structure

prox_mpc_test_models/
├── include/prox_mpc_test_models/
│   └── non_finite_twist_model.hpp
├── src/
│   └── plugins.cpp
├── CHANGELOG.rst
├── CMakeLists.txt
├── package.xml
├── prox_mpc_test_models_plugins.xml
└── README.md

The package ships no test suite of its own; it is the fixture that the prox_mpc_controller tests load.

License

Apache-2.0. Each source file carries a short SPDX-License-Identifier: Apache-2.0 header.

CHANGELOG

Changelog for package prox_mpc_test_models

1.0.0 (2026-07-28)

  • Initial release: fault-injection prox_mpc::Model plugin (NonFiniteTwist) used by the controller test suite to exercise fail-safe branches through the real pluginlib load path.
  • Contributors: Simone Contorno

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged prox_mpc_test_models at Robotics Stack Exchange

No version for distro crystal showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/simone-contorno/prox_mpc.git
VCS Type git
VCS Version main
Last Updated 2026-07-28
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Test-fixture prox_mpc::Model plugins for the ProxMPC stack. These fault-injection models exercise controller fail-safe paths that the bundled models cannot reach (for example a non-finite command). Not for production use.

Additional Links

Maintainers

  • Simone Contorno

Authors

No additional authors.

prox_mpc_test_models

ROS 2 Jazzy

Test-fixture prox_mpc::Model plugins for the ProxMPC stack.

These are fault-injection models that exercise controller fail-safe paths the bundled production models cannot reach. They are registered against the same prox_mpc::Model base as the core models, so prox_mpc_controller loads them through its ordinary pluginlib path during testing - no test-only seam in production code.

Not for production use. This package exists only to drive tests.

Table of Contents

Overview

The package is a header-and-plugin fixture: it contributes one deliberately faulty prox_mpc::Model implementation and its pluginlib registration, with no executable and no ROS node. It is a <test_depend> of prox_mpc_controller, so it is present only when that package’s tests are built.

Models

Plugin name Class Purpose
prox_mpc_test_models/NonFiniteTwist prox_mpc_test_models::NonFiniteTwistModel Finite linear dynamics (state [x, y, theta], control [v, omega]) so the QP converges and reports PROXQP_SOLVED with a finite first control, but toTwist() deliberately returns a non-finite command (linear.x = NaN).

The NonFiniteTwist model is the only seam that reaches the controller’s non-finite-command fail-safe: a finite-mapping model cannot produce a non-finite twist from a finite control, so this fixture is required to cover that branch. The controller test asserts the controller brakes at the model deceleration limit and then escalates to nav2_core::NoValidControl once the failure budget is spent.

How It Is Used

The package is a <test_depend> of prox_mpc_controller. Its plugins are registered against the prox_mpc::Model base (through prox_mpc_test_models_plugins.xml, exported for the prox_mpc_core base package), so the controller’s pluginlib::ClassLoader<prox_mpc::Model>("prox_mpc_core", ...) discovers them by name.

Prerequisites

  • ROS 2 Jazzy on Ubuntu 24.04.
  • prox_mpc_core (the prox_mpc::Model base and its build export).
  • Eigen3, geometry_msgs, pluginlib, proxsuite (>= 0.6.5), rclcpp, resolved by rosdep.

Build

cd ~/ros2_ws
source /opt/ros/jazzy/setup.bash
colcon build --symlink-install --packages-select prox_mpc_core prox_mpc_test_models
source install/setup.bash
ros2 plugin list --package prox_mpc_test_models   # lists prox_mpc_test_models/NonFiniteTwist

ros2 plugin list --package prox_mpc_test_models reports the fixture’s plugin under the prox_mpc::Model base; the --package value is the package that installs the plugin description, not the base package.

Project Structure

prox_mpc_test_models/
├── include/prox_mpc_test_models/
│   └── non_finite_twist_model.hpp
├── src/
│   └── plugins.cpp
├── CHANGELOG.rst
├── CMakeLists.txt
├── package.xml
├── prox_mpc_test_models_plugins.xml
└── README.md

The package ships no test suite of its own; it is the fixture that the prox_mpc_controller tests load.

License

Apache-2.0. Each source file carries a short SPDX-License-Identifier: Apache-2.0 header.

CHANGELOG

Changelog for package prox_mpc_test_models

1.0.0 (2026-07-28)

  • Initial release: fault-injection prox_mpc::Model plugin (NonFiniteTwist) used by the controller test suite to exercise fail-safe branches through the real pluginlib load path.
  • Contributors: Simone Contorno

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged prox_mpc_test_models at Robotics Stack Exchange

No version for distro eloquent showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/simone-contorno/prox_mpc.git
VCS Type git
VCS Version main
Last Updated 2026-07-28
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Test-fixture prox_mpc::Model plugins for the ProxMPC stack. These fault-injection models exercise controller fail-safe paths that the bundled models cannot reach (for example a non-finite command). Not for production use.

Additional Links

Maintainers

  • Simone Contorno

Authors

No additional authors.

prox_mpc_test_models

ROS 2 Jazzy

Test-fixture prox_mpc::Model plugins for the ProxMPC stack.

These are fault-injection models that exercise controller fail-safe paths the bundled production models cannot reach. They are registered against the same prox_mpc::Model base as the core models, so prox_mpc_controller loads them through its ordinary pluginlib path during testing - no test-only seam in production code.

Not for production use. This package exists only to drive tests.

Table of Contents

Overview

The package is a header-and-plugin fixture: it contributes one deliberately faulty prox_mpc::Model implementation and its pluginlib registration, with no executable and no ROS node. It is a <test_depend> of prox_mpc_controller, so it is present only when that package’s tests are built.

Models

Plugin name Class Purpose
prox_mpc_test_models/NonFiniteTwist prox_mpc_test_models::NonFiniteTwistModel Finite linear dynamics (state [x, y, theta], control [v, omega]) so the QP converges and reports PROXQP_SOLVED with a finite first control, but toTwist() deliberately returns a non-finite command (linear.x = NaN).

The NonFiniteTwist model is the only seam that reaches the controller’s non-finite-command fail-safe: a finite-mapping model cannot produce a non-finite twist from a finite control, so this fixture is required to cover that branch. The controller test asserts the controller brakes at the model deceleration limit and then escalates to nav2_core::NoValidControl once the failure budget is spent.

How It Is Used

The package is a <test_depend> of prox_mpc_controller. Its plugins are registered against the prox_mpc::Model base (through prox_mpc_test_models_plugins.xml, exported for the prox_mpc_core base package), so the controller’s pluginlib::ClassLoader<prox_mpc::Model>("prox_mpc_core", ...) discovers them by name.

Prerequisites

  • ROS 2 Jazzy on Ubuntu 24.04.
  • prox_mpc_core (the prox_mpc::Model base and its build export).
  • Eigen3, geometry_msgs, pluginlib, proxsuite (>= 0.6.5), rclcpp, resolved by rosdep.

Build

cd ~/ros2_ws
source /opt/ros/jazzy/setup.bash
colcon build --symlink-install --packages-select prox_mpc_core prox_mpc_test_models
source install/setup.bash
ros2 plugin list --package prox_mpc_test_models   # lists prox_mpc_test_models/NonFiniteTwist

ros2 plugin list --package prox_mpc_test_models reports the fixture’s plugin under the prox_mpc::Model base; the --package value is the package that installs the plugin description, not the base package.

Project Structure

prox_mpc_test_models/
├── include/prox_mpc_test_models/
│   └── non_finite_twist_model.hpp
├── src/
│   └── plugins.cpp
├── CHANGELOG.rst
├── CMakeLists.txt
├── package.xml
├── prox_mpc_test_models_plugins.xml
└── README.md

The package ships no test suite of its own; it is the fixture that the prox_mpc_controller tests load.

License

Apache-2.0. Each source file carries a short SPDX-License-Identifier: Apache-2.0 header.

CHANGELOG

Changelog for package prox_mpc_test_models

1.0.0 (2026-07-28)

  • Initial release: fault-injection prox_mpc::Model plugin (NonFiniteTwist) used by the controller test suite to exercise fail-safe branches through the real pluginlib load path.
  • Contributors: Simone Contorno

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged prox_mpc_test_models at Robotics Stack Exchange

No version for distro dashing showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/simone-contorno/prox_mpc.git
VCS Type git
VCS Version main
Last Updated 2026-07-28
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Test-fixture prox_mpc::Model plugins for the ProxMPC stack. These fault-injection models exercise controller fail-safe paths that the bundled models cannot reach (for example a non-finite command). Not for production use.

Additional Links

Maintainers

  • Simone Contorno

Authors

No additional authors.

prox_mpc_test_models

ROS 2 Jazzy

Test-fixture prox_mpc::Model plugins for the ProxMPC stack.

These are fault-injection models that exercise controller fail-safe paths the bundled production models cannot reach. They are registered against the same prox_mpc::Model base as the core models, so prox_mpc_controller loads them through its ordinary pluginlib path during testing - no test-only seam in production code.

Not for production use. This package exists only to drive tests.

Table of Contents

Overview

The package is a header-and-plugin fixture: it contributes one deliberately faulty prox_mpc::Model implementation and its pluginlib registration, with no executable and no ROS node. It is a <test_depend> of prox_mpc_controller, so it is present only when that package’s tests are built.

Models

Plugin name Class Purpose
prox_mpc_test_models/NonFiniteTwist prox_mpc_test_models::NonFiniteTwistModel Finite linear dynamics (state [x, y, theta], control [v, omega]) so the QP converges and reports PROXQP_SOLVED with a finite first control, but toTwist() deliberately returns a non-finite command (linear.x = NaN).

The NonFiniteTwist model is the only seam that reaches the controller’s non-finite-command fail-safe: a finite-mapping model cannot produce a non-finite twist from a finite control, so this fixture is required to cover that branch. The controller test asserts the controller brakes at the model deceleration limit and then escalates to nav2_core::NoValidControl once the failure budget is spent.

How It Is Used

The package is a <test_depend> of prox_mpc_controller. Its plugins are registered against the prox_mpc::Model base (through prox_mpc_test_models_plugins.xml, exported for the prox_mpc_core base package), so the controller’s pluginlib::ClassLoader<prox_mpc::Model>("prox_mpc_core", ...) discovers them by name.

Prerequisites

  • ROS 2 Jazzy on Ubuntu 24.04.
  • prox_mpc_core (the prox_mpc::Model base and its build export).
  • Eigen3, geometry_msgs, pluginlib, proxsuite (>= 0.6.5), rclcpp, resolved by rosdep.

Build

cd ~/ros2_ws
source /opt/ros/jazzy/setup.bash
colcon build --symlink-install --packages-select prox_mpc_core prox_mpc_test_models
source install/setup.bash
ros2 plugin list --package prox_mpc_test_models   # lists prox_mpc_test_models/NonFiniteTwist

ros2 plugin list --package prox_mpc_test_models reports the fixture’s plugin under the prox_mpc::Model base; the --package value is the package that installs the plugin description, not the base package.

Project Structure

prox_mpc_test_models/
├── include/prox_mpc_test_models/
│   └── non_finite_twist_model.hpp
├── src/
│   └── plugins.cpp
├── CHANGELOG.rst
├── CMakeLists.txt
├── package.xml
├── prox_mpc_test_models_plugins.xml
└── README.md

The package ships no test suite of its own; it is the fixture that the prox_mpc_controller tests load.

License

Apache-2.0. Each source file carries a short SPDX-License-Identifier: Apache-2.0 header.

CHANGELOG

Changelog for package prox_mpc_test_models

1.0.0 (2026-07-28)

  • Initial release: fault-injection prox_mpc::Model plugin (NonFiniteTwist) used by the controller test suite to exercise fail-safe branches through the real pluginlib load path.
  • Contributors: Simone Contorno

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged prox_mpc_test_models at Robotics Stack Exchange

No version for distro galactic showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/simone-contorno/prox_mpc.git
VCS Type git
VCS Version main
Last Updated 2026-07-28
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Test-fixture prox_mpc::Model plugins for the ProxMPC stack. These fault-injection models exercise controller fail-safe paths that the bundled models cannot reach (for example a non-finite command). Not for production use.

Additional Links

Maintainers

  • Simone Contorno

Authors

No additional authors.

prox_mpc_test_models

ROS 2 Jazzy

Test-fixture prox_mpc::Model plugins for the ProxMPC stack.

These are fault-injection models that exercise controller fail-safe paths the bundled production models cannot reach. They are registered against the same prox_mpc::Model base as the core models, so prox_mpc_controller loads them through its ordinary pluginlib path during testing - no test-only seam in production code.

Not for production use. This package exists only to drive tests.

Table of Contents

Overview

The package is a header-and-plugin fixture: it contributes one deliberately faulty prox_mpc::Model implementation and its pluginlib registration, with no executable and no ROS node. It is a <test_depend> of prox_mpc_controller, so it is present only when that package’s tests are built.

Models

Plugin name Class Purpose
prox_mpc_test_models/NonFiniteTwist prox_mpc_test_models::NonFiniteTwistModel Finite linear dynamics (state [x, y, theta], control [v, omega]) so the QP converges and reports PROXQP_SOLVED with a finite first control, but toTwist() deliberately returns a non-finite command (linear.x = NaN).

The NonFiniteTwist model is the only seam that reaches the controller’s non-finite-command fail-safe: a finite-mapping model cannot produce a non-finite twist from a finite control, so this fixture is required to cover that branch. The controller test asserts the controller brakes at the model deceleration limit and then escalates to nav2_core::NoValidControl once the failure budget is spent.

How It Is Used

The package is a <test_depend> of prox_mpc_controller. Its plugins are registered against the prox_mpc::Model base (through prox_mpc_test_models_plugins.xml, exported for the prox_mpc_core base package), so the controller’s pluginlib::ClassLoader<prox_mpc::Model>("prox_mpc_core", ...) discovers them by name.

Prerequisites

  • ROS 2 Jazzy on Ubuntu 24.04.
  • prox_mpc_core (the prox_mpc::Model base and its build export).
  • Eigen3, geometry_msgs, pluginlib, proxsuite (>= 0.6.5), rclcpp, resolved by rosdep.

Build

cd ~/ros2_ws
source /opt/ros/jazzy/setup.bash
colcon build --symlink-install --packages-select prox_mpc_core prox_mpc_test_models
source install/setup.bash
ros2 plugin list --package prox_mpc_test_models   # lists prox_mpc_test_models/NonFiniteTwist

ros2 plugin list --package prox_mpc_test_models reports the fixture’s plugin under the prox_mpc::Model base; the --package value is the package that installs the plugin description, not the base package.

Project Structure

prox_mpc_test_models/
├── include/prox_mpc_test_models/
│   └── non_finite_twist_model.hpp
├── src/
│   └── plugins.cpp
├── CHANGELOG.rst
├── CMakeLists.txt
├── package.xml
├── prox_mpc_test_models_plugins.xml
└── README.md

The package ships no test suite of its own; it is the fixture that the prox_mpc_controller tests load.

License

Apache-2.0. Each source file carries a short SPDX-License-Identifier: Apache-2.0 header.

CHANGELOG

Changelog for package prox_mpc_test_models

1.0.0 (2026-07-28)

  • Initial release: fault-injection prox_mpc::Model plugin (NonFiniteTwist) used by the controller test suite to exercise fail-safe branches through the real pluginlib load path.
  • Contributors: Simone Contorno

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged prox_mpc_test_models at Robotics Stack Exchange

No version for distro foxy showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/simone-contorno/prox_mpc.git
VCS Type git
VCS Version main
Last Updated 2026-07-28
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Test-fixture prox_mpc::Model plugins for the ProxMPC stack. These fault-injection models exercise controller fail-safe paths that the bundled models cannot reach (for example a non-finite command). Not for production use.

Additional Links

Maintainers

  • Simone Contorno

Authors

No additional authors.

prox_mpc_test_models

ROS 2 Jazzy

Test-fixture prox_mpc::Model plugins for the ProxMPC stack.

These are fault-injection models that exercise controller fail-safe paths the bundled production models cannot reach. They are registered against the same prox_mpc::Model base as the core models, so prox_mpc_controller loads them through its ordinary pluginlib path during testing - no test-only seam in production code.

Not for production use. This package exists only to drive tests.

Table of Contents

Overview

The package is a header-and-plugin fixture: it contributes one deliberately faulty prox_mpc::Model implementation and its pluginlib registration, with no executable and no ROS node. It is a <test_depend> of prox_mpc_controller, so it is present only when that package’s tests are built.

Models

Plugin name Class Purpose
prox_mpc_test_models/NonFiniteTwist prox_mpc_test_models::NonFiniteTwistModel Finite linear dynamics (state [x, y, theta], control [v, omega]) so the QP converges and reports PROXQP_SOLVED with a finite first control, but toTwist() deliberately returns a non-finite command (linear.x = NaN).

The NonFiniteTwist model is the only seam that reaches the controller’s non-finite-command fail-safe: a finite-mapping model cannot produce a non-finite twist from a finite control, so this fixture is required to cover that branch. The controller test asserts the controller brakes at the model deceleration limit and then escalates to nav2_core::NoValidControl once the failure budget is spent.

How It Is Used

The package is a <test_depend> of prox_mpc_controller. Its plugins are registered against the prox_mpc::Model base (through prox_mpc_test_models_plugins.xml, exported for the prox_mpc_core base package), so the controller’s pluginlib::ClassLoader<prox_mpc::Model>("prox_mpc_core", ...) discovers them by name.

Prerequisites

  • ROS 2 Jazzy on Ubuntu 24.04.
  • prox_mpc_core (the prox_mpc::Model base and its build export).
  • Eigen3, geometry_msgs, pluginlib, proxsuite (>= 0.6.5), rclcpp, resolved by rosdep.

Build

cd ~/ros2_ws
source /opt/ros/jazzy/setup.bash
colcon build --symlink-install --packages-select prox_mpc_core prox_mpc_test_models
source install/setup.bash
ros2 plugin list --package prox_mpc_test_models   # lists prox_mpc_test_models/NonFiniteTwist

ros2 plugin list --package prox_mpc_test_models reports the fixture’s plugin under the prox_mpc::Model base; the --package value is the package that installs the plugin description, not the base package.

Project Structure

prox_mpc_test_models/
├── include/prox_mpc_test_models/
│   └── non_finite_twist_model.hpp
├── src/
│   └── plugins.cpp
├── CHANGELOG.rst
├── CMakeLists.txt
├── package.xml
├── prox_mpc_test_models_plugins.xml
└── README.md

The package ships no test suite of its own; it is the fixture that the prox_mpc_controller tests load.

License

Apache-2.0. Each source file carries a short SPDX-License-Identifier: Apache-2.0 header.

CHANGELOG

Changelog for package prox_mpc_test_models

1.0.0 (2026-07-28)

  • Initial release: fault-injection prox_mpc::Model plugin (NonFiniteTwist) used by the controller test suite to exercise fail-safe branches through the real pluginlib load path.
  • Contributors: Simone Contorno

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged prox_mpc_test_models at Robotics Stack Exchange

No version for distro iron showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/simone-contorno/prox_mpc.git
VCS Type git
VCS Version main
Last Updated 2026-07-28
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Test-fixture prox_mpc::Model plugins for the ProxMPC stack. These fault-injection models exercise controller fail-safe paths that the bundled models cannot reach (for example a non-finite command). Not for production use.

Additional Links

Maintainers

  • Simone Contorno

Authors

No additional authors.

prox_mpc_test_models

ROS 2 Jazzy

Test-fixture prox_mpc::Model plugins for the ProxMPC stack.

These are fault-injection models that exercise controller fail-safe paths the bundled production models cannot reach. They are registered against the same prox_mpc::Model base as the core models, so prox_mpc_controller loads them through its ordinary pluginlib path during testing - no test-only seam in production code.

Not for production use. This package exists only to drive tests.

Table of Contents

Overview

The package is a header-and-plugin fixture: it contributes one deliberately faulty prox_mpc::Model implementation and its pluginlib registration, with no executable and no ROS node. It is a <test_depend> of prox_mpc_controller, so it is present only when that package’s tests are built.

Models

Plugin name Class Purpose
prox_mpc_test_models/NonFiniteTwist prox_mpc_test_models::NonFiniteTwistModel Finite linear dynamics (state [x, y, theta], control [v, omega]) so the QP converges and reports PROXQP_SOLVED with a finite first control, but toTwist() deliberately returns a non-finite command (linear.x = NaN).

The NonFiniteTwist model is the only seam that reaches the controller’s non-finite-command fail-safe: a finite-mapping model cannot produce a non-finite twist from a finite control, so this fixture is required to cover that branch. The controller test asserts the controller brakes at the model deceleration limit and then escalates to nav2_core::NoValidControl once the failure budget is spent.

How It Is Used

The package is a <test_depend> of prox_mpc_controller. Its plugins are registered against the prox_mpc::Model base (through prox_mpc_test_models_plugins.xml, exported for the prox_mpc_core base package), so the controller’s pluginlib::ClassLoader<prox_mpc::Model>("prox_mpc_core", ...) discovers them by name.

Prerequisites

  • ROS 2 Jazzy on Ubuntu 24.04.
  • prox_mpc_core (the prox_mpc::Model base and its build export).
  • Eigen3, geometry_msgs, pluginlib, proxsuite (>= 0.6.5), rclcpp, resolved by rosdep.

Build

cd ~/ros2_ws
source /opt/ros/jazzy/setup.bash
colcon build --symlink-install --packages-select prox_mpc_core prox_mpc_test_models
source install/setup.bash
ros2 plugin list --package prox_mpc_test_models   # lists prox_mpc_test_models/NonFiniteTwist

ros2 plugin list --package prox_mpc_test_models reports the fixture’s plugin under the prox_mpc::Model base; the --package value is the package that installs the plugin description, not the base package.

Project Structure

prox_mpc_test_models/
├── include/prox_mpc_test_models/
│   └── non_finite_twist_model.hpp
├── src/
│   └── plugins.cpp
├── CHANGELOG.rst
├── CMakeLists.txt
├── package.xml
├── prox_mpc_test_models_plugins.xml
└── README.md

The package ships no test suite of its own; it is the fixture that the prox_mpc_controller tests load.

License

Apache-2.0. Each source file carries a short SPDX-License-Identifier: Apache-2.0 header.

CHANGELOG

Changelog for package prox_mpc_test_models

1.0.0 (2026-07-28)

  • Initial release: fault-injection prox_mpc::Model plugin (NonFiniteTwist) used by the controller test suite to exercise fail-safe branches through the real pluginlib load path.
  • Contributors: Simone Contorno

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged prox_mpc_test_models at Robotics Stack Exchange

No version for distro lunar showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/simone-contorno/prox_mpc.git
VCS Type git
VCS Version main
Last Updated 2026-07-28
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Test-fixture prox_mpc::Model plugins for the ProxMPC stack. These fault-injection models exercise controller fail-safe paths that the bundled models cannot reach (for example a non-finite command). Not for production use.

Additional Links

Maintainers

  • Simone Contorno

Authors

No additional authors.

prox_mpc_test_models

ROS 2 Jazzy

Test-fixture prox_mpc::Model plugins for the ProxMPC stack.

These are fault-injection models that exercise controller fail-safe paths the bundled production models cannot reach. They are registered against the same prox_mpc::Model base as the core models, so prox_mpc_controller loads them through its ordinary pluginlib path during testing - no test-only seam in production code.

Not for production use. This package exists only to drive tests.

Table of Contents

Overview

The package is a header-and-plugin fixture: it contributes one deliberately faulty prox_mpc::Model implementation and its pluginlib registration, with no executable and no ROS node. It is a <test_depend> of prox_mpc_controller, so it is present only when that package’s tests are built.

Models

Plugin name Class Purpose
prox_mpc_test_models/NonFiniteTwist prox_mpc_test_models::NonFiniteTwistModel Finite linear dynamics (state [x, y, theta], control [v, omega]) so the QP converges and reports PROXQP_SOLVED with a finite first control, but toTwist() deliberately returns a non-finite command (linear.x = NaN).

The NonFiniteTwist model is the only seam that reaches the controller’s non-finite-command fail-safe: a finite-mapping model cannot produce a non-finite twist from a finite control, so this fixture is required to cover that branch. The controller test asserts the controller brakes at the model deceleration limit and then escalates to nav2_core::NoValidControl once the failure budget is spent.

How It Is Used

The package is a <test_depend> of prox_mpc_controller. Its plugins are registered against the prox_mpc::Model base (through prox_mpc_test_models_plugins.xml, exported for the prox_mpc_core base package), so the controller’s pluginlib::ClassLoader<prox_mpc::Model>("prox_mpc_core", ...) discovers them by name.

Prerequisites

  • ROS 2 Jazzy on Ubuntu 24.04.
  • prox_mpc_core (the prox_mpc::Model base and its build export).
  • Eigen3, geometry_msgs, pluginlib, proxsuite (>= 0.6.5), rclcpp, resolved by rosdep.

Build

cd ~/ros2_ws
source /opt/ros/jazzy/setup.bash
colcon build --symlink-install --packages-select prox_mpc_core prox_mpc_test_models
source install/setup.bash
ros2 plugin list --package prox_mpc_test_models   # lists prox_mpc_test_models/NonFiniteTwist

ros2 plugin list --package prox_mpc_test_models reports the fixture’s plugin under the prox_mpc::Model base; the --package value is the package that installs the plugin description, not the base package.

Project Structure

prox_mpc_test_models/
├── include/prox_mpc_test_models/
│   └── non_finite_twist_model.hpp
├── src/
│   └── plugins.cpp
├── CHANGELOG.rst
├── CMakeLists.txt
├── package.xml
├── prox_mpc_test_models_plugins.xml
└── README.md

The package ships no test suite of its own; it is the fixture that the prox_mpc_controller tests load.

License

Apache-2.0. Each source file carries a short SPDX-License-Identifier: Apache-2.0 header.

CHANGELOG

Changelog for package prox_mpc_test_models

1.0.0 (2026-07-28)

  • Initial release: fault-injection prox_mpc::Model plugin (NonFiniteTwist) used by the controller test suite to exercise fail-safe branches through the real pluginlib load path.
  • Contributors: Simone Contorno

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged prox_mpc_test_models at Robotics Stack Exchange

No version for distro jade showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/simone-contorno/prox_mpc.git
VCS Type git
VCS Version main
Last Updated 2026-07-28
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Test-fixture prox_mpc::Model plugins for the ProxMPC stack. These fault-injection models exercise controller fail-safe paths that the bundled models cannot reach (for example a non-finite command). Not for production use.

Additional Links

Maintainers

  • Simone Contorno

Authors

No additional authors.

prox_mpc_test_models

ROS 2 Jazzy

Test-fixture prox_mpc::Model plugins for the ProxMPC stack.

These are fault-injection models that exercise controller fail-safe paths the bundled production models cannot reach. They are registered against the same prox_mpc::Model base as the core models, so prox_mpc_controller loads them through its ordinary pluginlib path during testing - no test-only seam in production code.

Not for production use. This package exists only to drive tests.

Table of Contents

Overview

The package is a header-and-plugin fixture: it contributes one deliberately faulty prox_mpc::Model implementation and its pluginlib registration, with no executable and no ROS node. It is a <test_depend> of prox_mpc_controller, so it is present only when that package’s tests are built.

Models

Plugin name Class Purpose
prox_mpc_test_models/NonFiniteTwist prox_mpc_test_models::NonFiniteTwistModel Finite linear dynamics (state [x, y, theta], control [v, omega]) so the QP converges and reports PROXQP_SOLVED with a finite first control, but toTwist() deliberately returns a non-finite command (linear.x = NaN).

The NonFiniteTwist model is the only seam that reaches the controller’s non-finite-command fail-safe: a finite-mapping model cannot produce a non-finite twist from a finite control, so this fixture is required to cover that branch. The controller test asserts the controller brakes at the model deceleration limit and then escalates to nav2_core::NoValidControl once the failure budget is spent.

How It Is Used

The package is a <test_depend> of prox_mpc_controller. Its plugins are registered against the prox_mpc::Model base (through prox_mpc_test_models_plugins.xml, exported for the prox_mpc_core base package), so the controller’s pluginlib::ClassLoader<prox_mpc::Model>("prox_mpc_core", ...) discovers them by name.

Prerequisites

  • ROS 2 Jazzy on Ubuntu 24.04.
  • prox_mpc_core (the prox_mpc::Model base and its build export).
  • Eigen3, geometry_msgs, pluginlib, proxsuite (>= 0.6.5), rclcpp, resolved by rosdep.

Build

cd ~/ros2_ws
source /opt/ros/jazzy/setup.bash
colcon build --symlink-install --packages-select prox_mpc_core prox_mpc_test_models
source install/setup.bash
ros2 plugin list --package prox_mpc_test_models   # lists prox_mpc_test_models/NonFiniteTwist

ros2 plugin list --package prox_mpc_test_models reports the fixture’s plugin under the prox_mpc::Model base; the --package value is the package that installs the plugin description, not the base package.

Project Structure

prox_mpc_test_models/
├── include/prox_mpc_test_models/
│   └── non_finite_twist_model.hpp
├── src/
│   └── plugins.cpp
├── CHANGELOG.rst
├── CMakeLists.txt
├── package.xml
├── prox_mpc_test_models_plugins.xml
└── README.md

The package ships no test suite of its own; it is the fixture that the prox_mpc_controller tests load.

License

Apache-2.0. Each source file carries a short SPDX-License-Identifier: Apache-2.0 header.

CHANGELOG

Changelog for package prox_mpc_test_models

1.0.0 (2026-07-28)

  • Initial release: fault-injection prox_mpc::Model plugin (NonFiniteTwist) used by the controller test suite to exercise fail-safe branches through the real pluginlib load path.
  • Contributors: Simone Contorno

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged prox_mpc_test_models at Robotics Stack Exchange

No version for distro indigo showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/simone-contorno/prox_mpc.git
VCS Type git
VCS Version main
Last Updated 2026-07-28
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Test-fixture prox_mpc::Model plugins for the ProxMPC stack. These fault-injection models exercise controller fail-safe paths that the bundled models cannot reach (for example a non-finite command). Not for production use.

Additional Links

Maintainers

  • Simone Contorno

Authors

No additional authors.

prox_mpc_test_models

ROS 2 Jazzy

Test-fixture prox_mpc::Model plugins for the ProxMPC stack.

These are fault-injection models that exercise controller fail-safe paths the bundled production models cannot reach. They are registered against the same prox_mpc::Model base as the core models, so prox_mpc_controller loads them through its ordinary pluginlib path during testing - no test-only seam in production code.

Not for production use. This package exists only to drive tests.

Table of Contents

Overview

The package is a header-and-plugin fixture: it contributes one deliberately faulty prox_mpc::Model implementation and its pluginlib registration, with no executable and no ROS node. It is a <test_depend> of prox_mpc_controller, so it is present only when that package’s tests are built.

Models

Plugin name Class Purpose
prox_mpc_test_models/NonFiniteTwist prox_mpc_test_models::NonFiniteTwistModel Finite linear dynamics (state [x, y, theta], control [v, omega]) so the QP converges and reports PROXQP_SOLVED with a finite first control, but toTwist() deliberately returns a non-finite command (linear.x = NaN).

The NonFiniteTwist model is the only seam that reaches the controller’s non-finite-command fail-safe: a finite-mapping model cannot produce a non-finite twist from a finite control, so this fixture is required to cover that branch. The controller test asserts the controller brakes at the model deceleration limit and then escalates to nav2_core::NoValidControl once the failure budget is spent.

How It Is Used

The package is a <test_depend> of prox_mpc_controller. Its plugins are registered against the prox_mpc::Model base (through prox_mpc_test_models_plugins.xml, exported for the prox_mpc_core base package), so the controller’s pluginlib::ClassLoader<prox_mpc::Model>("prox_mpc_core", ...) discovers them by name.

Prerequisites

  • ROS 2 Jazzy on Ubuntu 24.04.
  • prox_mpc_core (the prox_mpc::Model base and its build export).
  • Eigen3, geometry_msgs, pluginlib, proxsuite (>= 0.6.5), rclcpp, resolved by rosdep.

Build

cd ~/ros2_ws
source /opt/ros/jazzy/setup.bash
colcon build --symlink-install --packages-select prox_mpc_core prox_mpc_test_models
source install/setup.bash
ros2 plugin list --package prox_mpc_test_models   # lists prox_mpc_test_models/NonFiniteTwist

ros2 plugin list --package prox_mpc_test_models reports the fixture’s plugin under the prox_mpc::Model base; the --package value is the package that installs the plugin description, not the base package.

Project Structure

prox_mpc_test_models/
├── include/prox_mpc_test_models/
│   └── non_finite_twist_model.hpp
├── src/
│   └── plugins.cpp
├── CHANGELOG.rst
├── CMakeLists.txt
├── package.xml
├── prox_mpc_test_models_plugins.xml
└── README.md

The package ships no test suite of its own; it is the fixture that the prox_mpc_controller tests load.

License

Apache-2.0. Each source file carries a short SPDX-License-Identifier: Apache-2.0 header.

CHANGELOG

Changelog for package prox_mpc_test_models

1.0.0 (2026-07-28)

  • Initial release: fault-injection prox_mpc::Model plugin (NonFiniteTwist) used by the controller test suite to exercise fail-safe branches through the real pluginlib load path.
  • Contributors: Simone Contorno

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged prox_mpc_test_models at Robotics Stack Exchange

No version for distro hydro showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/simone-contorno/prox_mpc.git
VCS Type git
VCS Version main
Last Updated 2026-07-28
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Test-fixture prox_mpc::Model plugins for the ProxMPC stack. These fault-injection models exercise controller fail-safe paths that the bundled models cannot reach (for example a non-finite command). Not for production use.

Additional Links

Maintainers

  • Simone Contorno

Authors

No additional authors.

prox_mpc_test_models

ROS 2 Jazzy

Test-fixture prox_mpc::Model plugins for the ProxMPC stack.

These are fault-injection models that exercise controller fail-safe paths the bundled production models cannot reach. They are registered against the same prox_mpc::Model base as the core models, so prox_mpc_controller loads them through its ordinary pluginlib path during testing - no test-only seam in production code.

Not for production use. This package exists only to drive tests.

Table of Contents

Overview

The package is a header-and-plugin fixture: it contributes one deliberately faulty prox_mpc::Model implementation and its pluginlib registration, with no executable and no ROS node. It is a <test_depend> of prox_mpc_controller, so it is present only when that package’s tests are built.

Models

Plugin name Class Purpose
prox_mpc_test_models/NonFiniteTwist prox_mpc_test_models::NonFiniteTwistModel Finite linear dynamics (state [x, y, theta], control [v, omega]) so the QP converges and reports PROXQP_SOLVED with a finite first control, but toTwist() deliberately returns a non-finite command (linear.x = NaN).

The NonFiniteTwist model is the only seam that reaches the controller’s non-finite-command fail-safe: a finite-mapping model cannot produce a non-finite twist from a finite control, so this fixture is required to cover that branch. The controller test asserts the controller brakes at the model deceleration limit and then escalates to nav2_core::NoValidControl once the failure budget is spent.

How It Is Used

The package is a <test_depend> of prox_mpc_controller. Its plugins are registered against the prox_mpc::Model base (through prox_mpc_test_models_plugins.xml, exported for the prox_mpc_core base package), so the controller’s pluginlib::ClassLoader<prox_mpc::Model>("prox_mpc_core", ...) discovers them by name.

Prerequisites

  • ROS 2 Jazzy on Ubuntu 24.04.
  • prox_mpc_core (the prox_mpc::Model base and its build export).
  • Eigen3, geometry_msgs, pluginlib, proxsuite (>= 0.6.5), rclcpp, resolved by rosdep.

Build

cd ~/ros2_ws
source /opt/ros/jazzy/setup.bash
colcon build --symlink-install --packages-select prox_mpc_core prox_mpc_test_models
source install/setup.bash
ros2 plugin list --package prox_mpc_test_models   # lists prox_mpc_test_models/NonFiniteTwist

ros2 plugin list --package prox_mpc_test_models reports the fixture’s plugin under the prox_mpc::Model base; the --package value is the package that installs the plugin description, not the base package.

Project Structure

prox_mpc_test_models/
├── include/prox_mpc_test_models/
│   └── non_finite_twist_model.hpp
├── src/
│   └── plugins.cpp
├── CHANGELOG.rst
├── CMakeLists.txt
├── package.xml
├── prox_mpc_test_models_plugins.xml
└── README.md

The package ships no test suite of its own; it is the fixture that the prox_mpc_controller tests load.

License

Apache-2.0. Each source file carries a short SPDX-License-Identifier: Apache-2.0 header.

CHANGELOG

Changelog for package prox_mpc_test_models

1.0.0 (2026-07-28)

  • Initial release: fault-injection prox_mpc::Model plugin (NonFiniteTwist) used by the controller test suite to exercise fail-safe branches through the real pluginlib load path.
  • Contributors: Simone Contorno

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged prox_mpc_test_models at Robotics Stack Exchange

No version for distro kinetic showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/simone-contorno/prox_mpc.git
VCS Type git
VCS Version main
Last Updated 2026-07-28
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Test-fixture prox_mpc::Model plugins for the ProxMPC stack. These fault-injection models exercise controller fail-safe paths that the bundled models cannot reach (for example a non-finite command). Not for production use.

Additional Links

Maintainers

  • Simone Contorno

Authors

No additional authors.

prox_mpc_test_models

ROS 2 Jazzy

Test-fixture prox_mpc::Model plugins for the ProxMPC stack.

These are fault-injection models that exercise controller fail-safe paths the bundled production models cannot reach. They are registered against the same prox_mpc::Model base as the core models, so prox_mpc_controller loads them through its ordinary pluginlib path during testing - no test-only seam in production code.

Not for production use. This package exists only to drive tests.

Table of Contents

Overview

The package is a header-and-plugin fixture: it contributes one deliberately faulty prox_mpc::Model implementation and its pluginlib registration, with no executable and no ROS node. It is a <test_depend> of prox_mpc_controller, so it is present only when that package’s tests are built.

Models

Plugin name Class Purpose
prox_mpc_test_models/NonFiniteTwist prox_mpc_test_models::NonFiniteTwistModel Finite linear dynamics (state [x, y, theta], control [v, omega]) so the QP converges and reports PROXQP_SOLVED with a finite first control, but toTwist() deliberately returns a non-finite command (linear.x = NaN).

The NonFiniteTwist model is the only seam that reaches the controller’s non-finite-command fail-safe: a finite-mapping model cannot produce a non-finite twist from a finite control, so this fixture is required to cover that branch. The controller test asserts the controller brakes at the model deceleration limit and then escalates to nav2_core::NoValidControl once the failure budget is spent.

How It Is Used

The package is a <test_depend> of prox_mpc_controller. Its plugins are registered against the prox_mpc::Model base (through prox_mpc_test_models_plugins.xml, exported for the prox_mpc_core base package), so the controller’s pluginlib::ClassLoader<prox_mpc::Model>("prox_mpc_core", ...) discovers them by name.

Prerequisites

  • ROS 2 Jazzy on Ubuntu 24.04.
  • prox_mpc_core (the prox_mpc::Model base and its build export).
  • Eigen3, geometry_msgs, pluginlib, proxsuite (>= 0.6.5), rclcpp, resolved by rosdep.

Build

cd ~/ros2_ws
source /opt/ros/jazzy/setup.bash
colcon build --symlink-install --packages-select prox_mpc_core prox_mpc_test_models
source install/setup.bash
ros2 plugin list --package prox_mpc_test_models   # lists prox_mpc_test_models/NonFiniteTwist

ros2 plugin list --package prox_mpc_test_models reports the fixture’s plugin under the prox_mpc::Model base; the --package value is the package that installs the plugin description, not the base package.

Project Structure

prox_mpc_test_models/
├── include/prox_mpc_test_models/
│   └── non_finite_twist_model.hpp
├── src/
│   └── plugins.cpp
├── CHANGELOG.rst
├── CMakeLists.txt
├── package.xml
├── prox_mpc_test_models_plugins.xml
└── README.md

The package ships no test suite of its own; it is the fixture that the prox_mpc_controller tests load.

License

Apache-2.0. Each source file carries a short SPDX-License-Identifier: Apache-2.0 header.

CHANGELOG

Changelog for package prox_mpc_test_models

1.0.0 (2026-07-28)

  • Initial release: fault-injection prox_mpc::Model plugin (NonFiniteTwist) used by the controller test suite to exercise fail-safe branches through the real pluginlib load path.
  • Contributors: Simone Contorno

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged prox_mpc_test_models at Robotics Stack Exchange

No version for distro melodic showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/simone-contorno/prox_mpc.git
VCS Type git
VCS Version main
Last Updated 2026-07-28
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Test-fixture prox_mpc::Model plugins for the ProxMPC stack. These fault-injection models exercise controller fail-safe paths that the bundled models cannot reach (for example a non-finite command). Not for production use.

Additional Links

Maintainers

  • Simone Contorno

Authors

No additional authors.

prox_mpc_test_models

ROS 2 Jazzy

Test-fixture prox_mpc::Model plugins for the ProxMPC stack.

These are fault-injection models that exercise controller fail-safe paths the bundled production models cannot reach. They are registered against the same prox_mpc::Model base as the core models, so prox_mpc_controller loads them through its ordinary pluginlib path during testing - no test-only seam in production code.

Not for production use. This package exists only to drive tests.

Table of Contents

Overview

The package is a header-and-plugin fixture: it contributes one deliberately faulty prox_mpc::Model implementation and its pluginlib registration, with no executable and no ROS node. It is a <test_depend> of prox_mpc_controller, so it is present only when that package’s tests are built.

Models

Plugin name Class Purpose
prox_mpc_test_models/NonFiniteTwist prox_mpc_test_models::NonFiniteTwistModel Finite linear dynamics (state [x, y, theta], control [v, omega]) so the QP converges and reports PROXQP_SOLVED with a finite first control, but toTwist() deliberately returns a non-finite command (linear.x = NaN).

The NonFiniteTwist model is the only seam that reaches the controller’s non-finite-command fail-safe: a finite-mapping model cannot produce a non-finite twist from a finite control, so this fixture is required to cover that branch. The controller test asserts the controller brakes at the model deceleration limit and then escalates to nav2_core::NoValidControl once the failure budget is spent.

How It Is Used

The package is a <test_depend> of prox_mpc_controller. Its plugins are registered against the prox_mpc::Model base (through prox_mpc_test_models_plugins.xml, exported for the prox_mpc_core base package), so the controller’s pluginlib::ClassLoader<prox_mpc::Model>("prox_mpc_core", ...) discovers them by name.

Prerequisites

  • ROS 2 Jazzy on Ubuntu 24.04.
  • prox_mpc_core (the prox_mpc::Model base and its build export).
  • Eigen3, geometry_msgs, pluginlib, proxsuite (>= 0.6.5), rclcpp, resolved by rosdep.

Build

cd ~/ros2_ws
source /opt/ros/jazzy/setup.bash
colcon build --symlink-install --packages-select prox_mpc_core prox_mpc_test_models
source install/setup.bash
ros2 plugin list --package prox_mpc_test_models   # lists prox_mpc_test_models/NonFiniteTwist

ros2 plugin list --package prox_mpc_test_models reports the fixture’s plugin under the prox_mpc::Model base; the --package value is the package that installs the plugin description, not the base package.

Project Structure

prox_mpc_test_models/
├── include/prox_mpc_test_models/
│   └── non_finite_twist_model.hpp
├── src/
│   └── plugins.cpp
├── CHANGELOG.rst
├── CMakeLists.txt
├── package.xml
├── prox_mpc_test_models_plugins.xml
└── README.md

The package ships no test suite of its own; it is the fixture that the prox_mpc_controller tests load.

License

Apache-2.0. Each source file carries a short SPDX-License-Identifier: Apache-2.0 header.

CHANGELOG

Changelog for package prox_mpc_test_models

1.0.0 (2026-07-28)

  • Initial release: fault-injection prox_mpc::Model plugin (NonFiniteTwist) used by the controller test suite to exercise fail-safe branches through the real pluginlib load path.
  • Contributors: Simone Contorno

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged prox_mpc_test_models at Robotics Stack Exchange

No version for distro noetic showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/simone-contorno/prox_mpc.git
VCS Type git
VCS Version main
Last Updated 2026-07-28
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Test-fixture prox_mpc::Model plugins for the ProxMPC stack. These fault-injection models exercise controller fail-safe paths that the bundled models cannot reach (for example a non-finite command). Not for production use.

Additional Links

Maintainers

  • Simone Contorno

Authors

No additional authors.

prox_mpc_test_models

ROS 2 Jazzy

Test-fixture prox_mpc::Model plugins for the ProxMPC stack.

These are fault-injection models that exercise controller fail-safe paths the bundled production models cannot reach. They are registered against the same prox_mpc::Model base as the core models, so prox_mpc_controller loads them through its ordinary pluginlib path during testing - no test-only seam in production code.

Not for production use. This package exists only to drive tests.

Table of Contents

Overview

The package is a header-and-plugin fixture: it contributes one deliberately faulty prox_mpc::Model implementation and its pluginlib registration, with no executable and no ROS node. It is a <test_depend> of prox_mpc_controller, so it is present only when that package’s tests are built.

Models

Plugin name Class Purpose
prox_mpc_test_models/NonFiniteTwist prox_mpc_test_models::NonFiniteTwistModel Finite linear dynamics (state [x, y, theta], control [v, omega]) so the QP converges and reports PROXQP_SOLVED with a finite first control, but toTwist() deliberately returns a non-finite command (linear.x = NaN).

The NonFiniteTwist model is the only seam that reaches the controller’s non-finite-command fail-safe: a finite-mapping model cannot produce a non-finite twist from a finite control, so this fixture is required to cover that branch. The controller test asserts the controller brakes at the model deceleration limit and then escalates to nav2_core::NoValidControl once the failure budget is spent.

How It Is Used

The package is a <test_depend> of prox_mpc_controller. Its plugins are registered against the prox_mpc::Model base (through prox_mpc_test_models_plugins.xml, exported for the prox_mpc_core base package), so the controller’s pluginlib::ClassLoader<prox_mpc::Model>("prox_mpc_core", ...) discovers them by name.

Prerequisites

  • ROS 2 Jazzy on Ubuntu 24.04.
  • prox_mpc_core (the prox_mpc::Model base and its build export).
  • Eigen3, geometry_msgs, pluginlib, proxsuite (>= 0.6.5), rclcpp, resolved by rosdep.

Build

cd ~/ros2_ws
source /opt/ros/jazzy/setup.bash
colcon build --symlink-install --packages-select prox_mpc_core prox_mpc_test_models
source install/setup.bash
ros2 plugin list --package prox_mpc_test_models   # lists prox_mpc_test_models/NonFiniteTwist

ros2 plugin list --package prox_mpc_test_models reports the fixture’s plugin under the prox_mpc::Model base; the --package value is the package that installs the plugin description, not the base package.

Project Structure

prox_mpc_test_models/
├── include/prox_mpc_test_models/
│   └── non_finite_twist_model.hpp
├── src/
│   └── plugins.cpp
├── CHANGELOG.rst
├── CMakeLists.txt
├── package.xml
├── prox_mpc_test_models_plugins.xml
└── README.md

The package ships no test suite of its own; it is the fixture that the prox_mpc_controller tests load.

License

Apache-2.0. Each source file carries a short SPDX-License-Identifier: Apache-2.0 header.

CHANGELOG

Changelog for package prox_mpc_test_models

1.0.0 (2026-07-28)

  • Initial release: fault-injection prox_mpc::Model plugin (NonFiniteTwist) used by the controller test suite to exercise fail-safe branches through the real pluginlib load path.
  • Contributors: Simone Contorno

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged prox_mpc_test_models at Robotics Stack Exchange