Robotica con MATLAB y Simulink

Una parte esencial de la robótica, es la de diseñar sistemas autónomos o semiautónomos con capacidad para interaccionar con su entorno, modificándolo y/o moviéndose a través de él. Para ello los robots están provistos de:

  • Sensores: dispositivos de medición de diversos tipos que capturan la información del entorno
  • Actuadores: elementos motores que permiten mover partes del robot o el robot mismo, para interaccionar con el entorno
  • Controladores: elementos lógicos que reciben la información del entorno mediante los sensores y que deciden las acciones que se deben ejecutar de acuerdo a algoritmos previamente programados (normalmente utilizando lenguajes como C)

Programar un robot es diseñar el controlador que gobierna el comportamiento del robot. Debido a la creciente complejidad de la robótica, la modelización y la simulación se están convirtiendo en técnicas esenciales para que los ingenieros comprendan el comportamiento del sistema robótico, entendiendo la forma en la que el controlador funciona a la hora de procesar la percepción del entorno realizada por el robot, así como la gestión de su movilidad e interacción con dicho entorno. La modelización y la simulación en robótica permiten mejorar el diseño del sistema y eliminar errores antes de haber desarrollado ningún prototipo físico.

Un proceso ideal de programación en robótica incluye:

  • La modelización de los sistemas de percepción y movilidad
  • El diseño de los algoritmos de control y su validación mediante simulaciones
  • La programación de los controladores en código C generado directamente a partir de los modelos de simulación

Using ROS blocks to publish and subscribe messages in Simulink. See example.

Using MATLAB and Simulink for robot programming, you can build a scalable robot simulation to prototype, test concept models, and debug inexpensively. Then you can use the high-fidelity models for validation while keeping the rest of the algorithms in the same simulation environment. Once the desired result is obtained in the robot simulation, you can generate standalone executable code for the embedded system from the Simulink model in common programming languages. Using the ROS connectivity from MATLAB and Simulink to a ROS network, you can generate C++ ROS nodes directly from MATLAB and Simulink to test and verify applications on ROS-enabled robots and robot simulators such as Gazebo.

For more details about robot programming, see Robotics System Toolbox™, Navigation Toolbox™, ROS ToolboxMATLAB, and Simulink.



También puede consultar: robotics and autonomous systems, mechatronics, Simscape Multibody, Control System Toolbox, Stateflow, Automated Driving Toolbox, Computer Vision Toolbox, Embedded Coder, MATLAB Coder, Simulink Coder, PID control, inverse kinematics, cloud robotics