Robotik und autonome Systeme

 

MATLAB und Simulink 
für mobile Roboter

MATLAB® und Simulink® bieten Algorithmen, Modellierungs- und Simulations-Tools, ROS und Hardware-Konnektivität für die Entwicklung von autonomen mobilen Robotern (AMRs), Service-Robotern und anderen unbemannten Landfahrzeugen (UGVs).

Mit MATLAB und Simulink ist Folgendes möglich:

  • Import von virtuellen Modellen Ihres Roboters und Optimierung der Anforderungen an Mechanik und Elektronik
  • Simulation von Sensormodellen für Inertial-Navigationssysteme und GNSS-Sensoren
  • Lokalisierung des Roboters mithilfe von Algorithmen wie Partikelfilter und Monte-Carlo-Lokalisierung
  • Erzeugung von Umgebungskarten mithilfe von SLAM-Algorithmen (Simultaneous Localization and Mapping)
  • Bestimmung optimaler Bahnen mithilfe von Bahnplanungsalgorithmen wie A* und RRT
  • Evaluierung der Bahnoptimalität mithilfe von Bahnmetriken wie Gleichmäßigkeit und Entfernung zu Hindernissen
  • Navigation in dynamischen Umgebungen mithilfe von Regelungsalgorithmen zur Bahnverfolgung und Hindernisvermeidung
  • Automatische Generierung des Produktionscodes für die Zielhardware

Der Einsatz von MATLAB und Simulink 
für mobile Roboter

Plattform-Entwicklung

Erzeugen oder importieren Sie physikalische Modelle und simulieren Sie die Roboterdynamik für Roboter mit Rädern und Beinen. Wenden Sie reale Rahmenbedingungen wie Kontaktkräfte und Drehmomente an, um die Auswirkungen Ihrer Algorithmen auf die Hardwareplattform zu analysieren. Mit MATLAB und Simulink ist Folgendes möglich:

  • Einsatz von kinematischen Bewegungsmodellen und Rad-Encodern für die klassischen mobilen Roboterausführungen wie Differentialantrieb oder Ackermann-Lenkung
  • Entwurf eines detaillierten dynamischen Modells mit der Modellierung physikalischer Systeme der Robotermechanik
  • Import von mechanischen Entwürfen aus CAD-Software und deren Verbindung mit Elektrik- und Regelungssystemen in einem einzigen Simulationsmodell
  • Schnittstelle zu externen Robotersimulatoren wie z. B. Gazebo für die Umgebungsmodellierung
  • Verbindung mit ROS/ROS2-Middleware

Erfassung und Lokalisierung

Erfassung und Lokalisierung

Indem Sie die Roboter-Sicht aktivieren, können Sie Umgebungskarten erstellen und Ihren mobilen Roboter lokalisieren. Zur Entwicklung von Kartierungs-, Lokalisierungs- und Objekterkennungsanwendungen kommen Sensormodelle und vorgefertigte Algorithmen zum Einsatz, damit Ihr mobiler Roboter seine Umgebung und seinen Standort erkennen kann. Mit MATLAB und Simulink ist Folgendes möglich:


Bewegungsplanung und -steuerung

Finden Sie Wege für Ihren mobilen Roboter, damit dieser sein Ziel erreicht. Generieren Sie Wegpunkte und senden Sie Steuerbefehle, um einem globalen Pfad oder einer lokalen Bewegungslinie zu folgen. Für die Navigation eines mobilen Roboters in einer unbekannten Umgebung bieten MATLAB und Simulink such- und stichprobenbasierte Planungsalgorithmen sowie pfadfolgende Regelungsalgorithmen. Mithilfe von MATLAB und Simulink kann Ihr Roboter:


Simulationsbasierter Test-Workflow

Simulationsgestützte Tests

Erkennen Sie Designfehler durch die Simulation und reduzieren Sie dadurch das Risiko und die Kosten von Hardwaretests. MATLAB und Simulink bieten interaktive Apps und Simulations-Tools zur Optimierung der Leistung sowie der Entwicklungs- und Testzeit für Ihre mobilen Roboteranwendungen. Mit MATLAB und Simulink ist Folgendes möglich:

  • Erzeugung von Bewegungslinien zur Emulation von Sensorbewegungen und zur Kalibrierung ihrer Leistung
  • Beseitigung von Fehlerquellen der Rad-Encoder durch Analyse der Odometrieschätzung
  • Verwendung von abstrakten Modellen zur direkten Validierung Ihrer autonomen Algorithmen oder zur Erstellung von Higher-Fidelity-Modellen
  • Verbindung mit Gazebo zur Durchführung von zeitsynchronen Co-Simulationen und zum Testen Ihrer Algorithmen in Closed-Loop-Simulationen
  • Durchführung von Navigationsalgorithmen in verschiedenen Edge-Case-Szenarien vor deren Einsatz auf der mobilen Plattform
  • Automatische Generierung von C/C++, VHDL®/Verilog®, CUDA® C/C++ Code zur Verwendung beim Rapid-Prototyping und in der Produktion