Запуск моделей Simulink в реальном времени на RTOS QNX при помощи Embedded Coder

Михаил
19.08.2013 11:34:06
В предыдущих записях в блоге я рассказывал о некоторых целевых платформах и средах разработки, поддерживаемых Embedded Coder:
Запуск моделей Simulink на Arduino
Поддержка TI MSP430 LaunchPad в Embedded Coder
Embedded Coder встречает Green Hills Software MULTI

В документации к Embedded Coder можно увидеть полный список поддерживаемого оборудования, сред разработки и операционных систем.

В этом посте я расскажу о поддержке (Target Support Package) ОС реального времени QNX в Embedder Coder. Embedded Coder является расширяемой и настраиваемой системой, и, хотя QNX не обозначена в списке выше, поддержка этой RTOS была разрабатана инженерами MathWorks и предоставлена для общего использования. Это позволит всем инженерам, работающим в Simulink и разворачивающим свои системы на QNX, существенно упростить процесс разработки и тестирования, а также адаптировать эту поддержку для своих конкретных нужд.

QNX - это Unix-подобная операционная система реального времени, в первую очередь предназначенная для встраиваемых систем.
Simulink - это лидирующее окружение для симуляции мультидисциплинарных систем и модельно-ориентированного проектирования.
Embedded Coder позволяет вам генерировать С код и разворачивать ваши алгоритмы на целевом аппаратном обеспечении.

Вы можете скачать поддержку с ресурса пользователей File Exchange: http://www.mathworks.com/matlabcentral/fileexchange/42290-qnx-target-support-package-for-embedded-coder.
Либо можете использовать последнюю версию из этого репозитория Github.

Этот Target Support Package был протестирован на платформе Beagleboard xM, работающей под управлением QNX 6.5.1. В принципе, он также должен работать на других целевых платформах QNX, для которых есть BSP. Для этого потребуется внести минимальные изменения в Template Makefile, чтобы использовать другие флаги компилятора.

Как я уже раньше писал, поддержка может заключаться в нескольких аспектах. В данном случае доступна автоматическая связь со средой разработки посредством Makefile (что подразумевает автоматическую компиляцию и линковку после генерации С кода), интеграция с QNX посредством POSIX таймеров (что позволяет запускать ваши многочастотные/многозадачные модели в реальном времени), а также поддержка симуляции в режиме External Mode. Такой режим симуляции позволяет осуществлять калибровку параметров, мониторинг и трассировку сигналов непосредственно из модели Simulink при работе вашего кода на встраиваемом процессоре в реальном времени.

В небольшом видео вы можете увидеть эту поддержку в действии.

Кстати, в Simulink также доступна встроенная поддержка BeagleBoard. Однако, это совсем другая возможность, не имеющая отношения к QNX и Embedded Coder. Больше информации об этом вы можете почерпнуть в предыдущем посте.
Просмотров: 1886
Комментариев: 0
Добавить комментарий