This repository combines visual servoing projected to a null space operator and Nonlinear Model Predictive Control (NMPC). The controller is used for autonomous navigation over photovoltaic arrays. Project information can be found at: https://aurova-projects.github.io/visual-servo-NMPC_RAL-IROS/
We have tested this application on a DJI Matrice 100 drone with a Jetson Orin onboard computer. As image sensor we have an Intel Realsense D435i camera. In addition, it is necessary to have ROS Noetic and docker installed.
To use our approach you need the Visual Servoing and NMPC package. Also, it is necessary to run the algorithms of the NMPC package inside a docker. This docker is optimized to use Acados and Casadi as NMPC solver for the Jetson Orin platform (ARM architecture). If you want to use the Acados and Casadi solver on an AMD architecture for experiments, you can use the docker for AMD.
This project was carried out thanks to the collaboration of PhD students from the University of Alicante in Spain, Universidad Nacional de San Juan in Argentina and Universidad Indoamérica in Ambato-Ecuador.
We worked together with the research groups of AUROVA (University of Alicante) and INAUT (National University of San Juan).
@ARTICLE{10417074,
author={Velasco-Sánchez, Edison and Recalde, Luis F. and Guevara, Bryan S. and Varela-Aldás, José and Candelas, Francisco A. and Puente, Santiago T. and Gandolfo, Daniel C.},
journal={IEEE Robotics and Automation Letters},
title={Visual Servoing NMPC Applied to UAVs for Photovoltaic Array Inspection},
year={2024},
volume={9},
number={3},
pages={2766-2773},
keywords={Inspection;Autonomous aerial vehicles;Visual servoing;Feature extraction;Cameras;Visualization;Photovoltaic systems;Aerial systems: Perception and autonomy;optimization and optimal control;visual servoing},
doi={10.1109/LRA.2024.3360876}}