Блок управления приводом раздела для многопроцессорного MCUs

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

Много MCUs обеспечивают несколько ядер процессора. Эти дополнительные ядра могут быть усилены, чтобы достигнуть множества целей проекта:

  • Разделите приложение на задачи в реальном времени, такие как законы о надзоре и неоперативные задачи, такие как внешняя коммуникация, диагностика или машинное обучение

  • Разделите алгоритм управления, чтобы работать на нескольких центральных процессорах, чтобы достигнуть более высокого уровня цикла

  • Запустите то же приложение в нескольких центральных процессорах для важных приложений безопасности

В этом примере показано, как разделить приложение блока управления приводом через два центральных процессора TI Delfino F28379D, чтобы достигнуть более высокого времени выборки/PWM частота.

Необходимое оборудование:

  • TI Delfino F28379D LaunchPad или TI Delfino F2837xD основывали плату

  • Моторная плата драйвера BOOSTXL-DRV8305EVM

  • Teknic M 2310P LN 04K PMSM двигатель

Алгоритм управления двигателем раздела

Откройте soc_pmsm_singlecpu_foc модель. Эта модель симулирует один моторный контроллер центрального процессора, содержавшийся в soc_pmsm_singlecpu_ref модели, для постоянного магнита синхронной машины (PMSM).

Мы делим алгоритм управления путем выполнения текущего управления на CPU2, и регулировки скорости и оценки положения на CPU1 соответственно. Передача данных между центральным процессором обработана блоком Interprocess Data Channel. Для получения дополнительной информации смотрите Межпроцессную Передачу данных через Периферийное устройство Выделенного оборудования.

Откройте soc_pmsm_dualcpu_foc модель.

open_system('soc_pmsm_dualcpu_foc');

На вкладке System on Chip нажмите Hardware Settings, чтобы открыть окно Configuration Parameters. Во вкладке Hardware Implementation параметр Блока обработки не сконфигурирован ни к "Одному" указывающему на него, системная модель верхнего уровня.

Откройте soc_pmsm_cpu1_ref модель и откройте soc_pmsm_cpu2_ref модель, чтобы просмотреть алгоритмы, сконфигурированные для каждого центрального процессора. Модели - ссылки, содержавшие в системной модели, сконфигурированы, чтобы работать на c28xCPU1 (CPU1) и c28xCPU2 (CPU2).

На вкладке Simulation нажмите 'Play', чтобы симулировать модель. Откройте Инспектора Данных моделирования и просмотрите сигналы. Этот рисунок показывает результаты одной и двойных моделей CPU в симуляции и развертывании.

Повышение производительности с параллельным выполнением

Используя оба центральных процессора, чтобы выполнить алгоритмы управления позволяет нам достигать более высокой пропускной способности контроллера. В исходной одной модели CPU алгоритм управления берет только по 25us, чтобы выполниться. Чтобы обеспечить запас прочности, одна модель CPU использует частоту PWM 20 кГц, эквивалентных 50us период.

После разделения CPU1 и времена выполнения CPU2 уменьшают до меньше, чем 20us. Разрешение частоты PWM быть увеличением к 40 кГц. В mcb_pmsm_foc_sensorless_f28379d_data.m скрипт, набор PWM_frequency к 40e3 и запуск скрипт, чтобы сконфигурировать модель к новой частоте PWM. С более быстрой выборкой токов усиления контроллера могут затем быть настроены, чтобы достигнуть более быстрого времени отклика.

Разверните модель в TI Delfino F28379D LaunchPad с помощью инструмента SoC Builder. Чтобы открыть инструмент, на вкладке System on Chip, нажимают Configure, Build, & Deploy и выполняют ведомые шаги.

Этот рисунок показывает ответ контроллера от симуляции и развертывания в 25us текущий цикл с частотой PWM на 40 кГц по сравнению с 50us текущий цикл на частоте на 20 кГц. Как ожидалось время нарастания в скорости улучшается с более быстрым текущим циклом приблизительно на 50 процентов.

Ответ скорости является колебательным из-за sensorless алгоритма, для получения дополнительной информации см. Sensorless, Ориентированный на поле на Управление PMSM (Motor Control Blockset)

Смотрите также

Copyright 2020 The MathWorks, Inc.

Для просмотра документации необходимо авторизоваться на сайте