EtherCAT контроллер дельта-робота

EtherCAT контроллер дельта-робота

1. Общая характеристика проекта

Разработана система EtherCAT-slave-устройства на базе микросхемы LAN9252 с использованием открытого стека SOES. Устройство выполняет функции robot/motion-контроллера для дельта-робота с тремя осями и поддержкой профиля EtherCAT CiA 402, включая режимы PP (Profile Position), PV (Profile Velocity), TQ (Torque) и CSP (Cyclic Synchronous Position)/CSV (Cyclic Synchronous Velocity)/CST (Cyclic Synchronous Torque). Решение интегрируется в стандартные EtherCAT сети и совместимо с промышленными ПЛК и системами управления, включая TwinCAT. Есть возможность подключения внешнего контроллера движения (motion controller).

Аппаратная платформа проекта: Xilinx Zynq-7020 (двухъядерный ARM Cortex-A9 + программируемая логика FPGA), что обеспечивает сочетание производительности и гибкости при реализации контуров управления в жестком реальном времени.

2. Системная архитектура

Система построена на гетерогенной архитектуре с разделением задач по уровням реального времени:

  • ядро #1 — Linux RT (на базе PetaLinux дистрибутива) для сервисных и пользовательских функций;
  • ядро #2 — RTOS ThreadX для задач жесткого реального времени;
  • межъядерное взаимодействие реализовано через OpenAMP;
  • передача сообщений и команд между ядрами осуществляется по RPMsg.

EtherCAT‑slave реализован на базе микросхемы LAN9252. Используется стек SOES с поддержкой SyncManager и механизма Distributed Clocks для синхронизации с EtherCAT‑мастером. Обмен с LAN9252 реализуется через SPI интерфейс.

3. Контуры управления и алгоритмы

  • Контуры управления реализованы в ПЛИС (FPGA), что позволяет обеспечить детерминированное выполнение алгоритмов и фиксированные задержки в цикле управления.
  • Реализованы следующие функции: контур тока; контур скорости; контур позиции; цифровые регуляторы P/PI; прямые и обратные преобразования Clark/Park и Inv.Park; формирование ШИМ (SVPWM) для силовых инверторов.
  • Частоты ШИМ рассчитаны для работы с GaN‑ключами с несущей частотой до 100–200 кГц (в зависимости от конфигурации силовой части и тепловых ограничений).
  • Для обратной связи используются инкрементные энкодеры (A/B/Z): поддержка дифференциальных интерфейсов; аппаратные счетчики на ПЛИС; фильтрация дребезга и защита от ложных фронтов; восстановление абсолютного положения по метке Z.
  • Алгоритмы обратной и прямой кинематики дельта‑робота реализованы на RTOS ThreadX. Выполняются: преобразование декартовых координат XYZ в углы серводвигателей; проверка достижения рабочих ограничений механизма; построение и сглаживание траекторий движения; поддержка профилей ускорений и jerk‑ограничений.

4. Программное обеспечение системы

Программное обеспечение разделено по уровням реального времени.

RTOS ThreadX

  • На стороне RTOS реализованы следующие функции: выполнение EtherCAT‑стека SOES в реальном времени; обработка PDO/SDO‑объектов; управление по профилю CiA 402; выполнение motion‑циклов с фиксированным периодом; синхронизация с Distributed Clocks EtherCAT‑мастера; обработка аварийных состояний двигателей и защит.

RTLinux (PetaLinux)

  • На стороне Linux RT (PREEMPT_RT) реализованы сервисные и пользовательские функции: межпроцессное взаимодействие (IPC); HTTP‑сервер для web‑интерфейса оператора; графическое GUI‑приложение для настройки и диагностики; сбор, хранение и анализ логов (NAND); поддержка сетевых сервисов (Ethernet, SSH, NTP, OPC UA); обновление прошивки (rootfs, app, linux kernel, dtb) и FPGA‑bitstream; взаимодействие с RTOS через OpenAMP/RPMsg.
  • Linux‑уровень не участвует в жестких циклах управления движением и не влияет на время реакции двигателей, выполняя сервисные задачи и человеко‑машинный интерфейс.

5. Силовая электроника и приводная часть

  • Силовая часть реализована в виде отдельного силового модуля для трех осей дельта‑робота.
  • В составе силового модуля: входной корректор коэффициента мощности (PFC); общая DC‑шина; три независимых двухуровневых инвертора; силовые ключи на базе GaN‑транзисторов; токовые датчики; драйверы силовых ключей с гальванической изоляцией.
  • Для силовой части реализованы функции защиты: защита от сверхтоков (OCP); защита от перенапряжения и пониженного напряжения на шине DC; защита от перегрева силовых ключей и контроль обрыва фазы.
  • Отдельная плата управления включает: контроллер на базе Zynq‑7020; FPGA‑логику для контуров управления; интерфейс EtherCAT на LAN9252; интерфейсы для подключения энкодеров; гальваническую развязку между силовой и управляющей частью.

6. Коммуникации и интерфейсы

Поддерживаются следующие интерфейсы и протоколы: EtherCAT (slave), профиль CiA 402; обмен PDO/SDO; RPMsg между Linux и RTOS; IPC на стороне Linux; HTTP/HTTPS для web‑доступа; Ethernet (OPC UA) для подключения к сети предприятия; интерфейсы энкодеров (A/B/Z, дифференциальные линии на стороне PL-FPGA).

7. Тестирование и верификация

  • Система прошла интеграционное и функциональное тестирование в среде TwinCAT как EtherCAT‑slave‑устройство.
  • В ходе тестирования выполнены: автоматическое детектирование узла в сети EtherCAT; проверка корректности профиля CiA 402; настройка и проверка PDO‑маппинга; тестирование режимов PP, PV, TQ, CSP/CSV/CST; отладка контуров управления и траекторного движения; моделирование аварийных режимов и проверка реакции системы.
  • Дополнительно выполнены: нагрузочные испытания приводов под типовыми и экстремальными режимами; измерение задержек и джиттера в EtherCAT‑канале; оценка временных характеристик контуров управления на FPGA.

8. Результаты и преимущества решения

  • Данное решение охватывает полный стек управления дельта‑роботом: силовая электроника (PFC и GaN‑инверторы); приводная часть на трех сервомоторах; обратные связи по инкрементным энкодерам; контуры управления на FPGA в жестком реальном времени; RTOS‑уровень motion‑управления и кинематики; Linux‑уровень диагностики, GUI и сетевых сервисов; EtherCAT‑интеграция с промышленными системами управления.
  • Основные преимущества: жесткое реальное время на уровне контуров управления; открытый стек SOES без привязки к конкретному вендору; высокая частота ШИМ (SVPWM) и эффективность GaN‑ключей; снижение количества силовых плат за счет трех осей на одной плате (одна общая силовая плата); удобная настройка и диагностика через web‑интерфейс и OPC UA; полная совместимость с TwinCAT и EtherCAT‑инфраструктурой.

9. Аппаратная платформа

В проекте используется аппаратная платформа: Xilinx Zynq‑7020 (SoC: ARM + FPGA); LAN9252 — EtherCAT‑slave контроллер; силовая плата на три оси (три PMSM двигателя) с GaN‑ключами TP65H035G4QS и PFC (totem-pole).

Связаться с нами