Achieving Real-Time Robotics Control with MATLAB
From the series: MathWorks Research Summit
DI Florian Enner, HEBI Robotics
HEBI Robotics makes APIs for MATLAB® that enable the real-time control of complex robots from standard MATLAB scripts. This is accomplished by splitting the control problem into two layers:
- A low-level layer that handles low-level concerns such as brushless motor control and hardware drivers for various sensors. This layer runs in a real-time operating system (RTOS) on a microcontroller embedded in various hardware modules in the robot.
- A high-level layer that handles the overall system behavior, including tasks like synchronized communication and logging. This layer runs in MATLAB on any standard consumer OS and communicates with the hardware modules using standard Ethernet and UDP.
This allows code to be quickly prototyped, developed, and iterated upon directly in the standard MATLAB working environment, while at the same time achieving performance virtually indistinguishable from code written C++ in a real-time environment.
Just as important, this layered approach also allows the critical tasks of motor control, sensor processing, and safety monitoring to run in a set of carefully controlled real-time environments distributed throughout the robot. This enables researchers to try out new ideas directly in hardware without worrying about inconsistent performance or damaging the robot hardware.
This discussion provides the technical background and implementation details of the HEBI API for MATLAB. In particular, the discussion shows how the MATLAB Java interface allows the API to create background threads that off-load tasks like communications, synchronization, and logging in order to keep the MATLAB thread available for the main control algorithms and other calculations that are the real focus of a researcher’s work.
More information can be found at:
docs.hebi.us
github.com/hebirobotics
youtube.com/hebirobotics
Published: 21 Feb 2019
Seleziona un sito web
Seleziona un sito web per visualizzare contenuto tradotto dove disponibile e vedere eventi e offerte locali. In base alla tua area geografica, ti consigliamo di selezionare: .
Puoi anche selezionare un sito web dal seguente elenco:
Come ottenere le migliori prestazioni del sito
Per ottenere le migliori prestazioni del sito, seleziona il sito cinese (in cinese o in inglese). I siti MathWorks per gli altri paesi non sono ottimizzati per essere visitati dalla tua area geografica.
Americhe
- América Latina (Español)
- Canada (English)
- United States (English)
Europa
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
Asia-Pacifico
- Australia (English)
- India (English)
- New Zealand (English)
- 中国
- 日本Japanese (日本語)
- 한국Korean (한국어)