В Simulink® Library Browser, добавьте блок eQEP из Embedded Coder® Пакет поддержки для процессоров Instruments™ C2000™ Техаса > F2837xD.
Блок eQEP считывает квадратурные импульсы энкодера и увеличивает счетчик положения. Этот блок выводит квадратурный импульс энкодера для механического обтекания положения ротора, когда считывается квадратурный импульс индекса энкодера.
Смотрите раздел Строение интерфейса квадратурного энкодера в параметрах конфигурации модели для строений, связанных с квадратурным энкодером.
В диалоговом окне параметров блоков c28x eQEP сконфигурируйте квадратурный энкодер, чтобы считать количество импульсов квадратурного энкодера в процессоре TI и обернуть выход счетчика импульсов, когда найден импульс индекса, как показано в этой таблице.
Вкладка и параметр в блоке eQEP | Настройки |
---|---|
General> Module | eQEP1 |
General> Sample time | -1 |
Position counter> Output position counter | on |
Position counter> Maximum position counter value (0~4294967295) | 2^16-1 |
Position counter> Position counter reset mode | Reset on the first index event |
Position counter> Output latch position counter on index event | on |
Position counter> Index event latch of position counter | Falling edge |
Переименуйте блок в eQEP.
eQEP1 модуль выбран, потому что квадратурный энкодер соединяется с интерфейсом QEP_A в LaunchPadXL28379d аппаратной плате. Выберите шаг расчета как -1
поскольку библиотечный блок является вызовом функции, инициируемым прерыванием АЦП синхронно. Максимальное значение счетчика положения 2^16-1
поскольку счетчик положения использует 16-битную архитектуру в блоке драйверов библиотеки. Режим сброса счетчика положения на импульсе индекса оборачивает отсчет положения на импульсе индекса.
Добавьте модуль блока драйверов eQEP к mcb_pmsm_foc_sim/Current control
подсистема, как показано на этом рисунке.