В этом примере показано, как создавать файлы сетевой информации EtherCAT (ENI) для использования в Simulink ® Real-Time™ с устройствами EtherCAT.
В примере показаны шаги процесса генерации в EtherCAT Configuration и шаги процесса в плагине TwinCAT XAE для Microsoft Visual Studio ®.
Аппаратные соединения:
EK1100 -- EtherCAT-ответвитель
EL3062 -- EtherCAT-терминал
EL4002 -- EtherCAT-терминал
EL9011 -- Терминал конца шины
Ответвитель EK1100 соединяет EtherCAT с EtherCAT-терминалами (ELxxxx). Одна станция состоит из EK1100 ответвителя, любого количества EtherCAT-терминалов и оконечного терминала шины.
Для подключения питания подключите клеммы 24 В и 0 В EK1100 к клеммам 24 В регулируемого источника питания (RPS) + Ve и -Ve.
Аналоговый входной терминал EL3062 обрабатывает сигналы в диапазоне [-10, 10] В.
Аналоговый выходной вывод EL4002 генерирует сигналы в диапазоне [0, 10] В.
Чтобы настроить EtherCAT-сеть, подключите EtherCAT-устройства к компьютеру разработки, на котором работает EtherCAT-конфигуратор. Это подключение позволяет сканировать и обнаруживать устройства EtherCAT. После создания XML-файла конфигуратором можно повторно подключить EtherCAT-устройства к целевому компьютеру. На этой схеме показаны предлагаемые соединения.
Последней версией TwinCAT является версия 3.x, которая является предпочтительным инструментом настройки.
Субверсия XAE не содержит обработчика полного времени выполнения, работающего в Windows. Это бесплатно доступно на сайте Beckhoff. Для использования с Simulink Real-Time механизм времени выполнения не нужен, так как используется реализация времени выполнения для целевого объекта. Полная версия с движком времени выполнения требует покупки лицензии у Beckhoff.
Программное обеспечение TwinCAT 3.1 требует установки поддерживаемой версии Microsoft Visual Studio. TwinCAT 3.1 использует интеграцию графического интерфейса пользователя MSVC и не имеет графического интерфейса. Версии MSVC, с которыми работает данная версия TwinCAT, обсуждаются в документации TwinCAT. Программа установки находит на компьютере поддерживаемые версии MSVC и устанавливает на них.
Для установки TwinCAT 3.1 XAE:
Перейдите в раздел www.beckhoff.com и выберите Загрузить.
Выберите TwinCAT 3 и загрузите установку.
Установите TwinCAT 3.
Запустите Microsoft Visual Studio.
В меню TwinCAT выберите Show Realtime Ethernet Compatible Devices.
Выберите Ethernet-адаптер для EtherCAT-устройства и нажмите Установить.
Поскольку TwinCAT устанавливает фильтр Ethernet в соответствии с выбранным портом Ethernet, рекомендуется добавить дополнительный порт Ethernet для использования исключительно с EtherCAT, чтобы избежать любых возможных проблем, которые фильтр может вызвать при совместном использовании порта связи Simulink Real-Time с сервером TwinCAT.
Все программы конфигурации EtherCAT используют файлы ESI для описания подчиненных устройств, обнаруженных в сети. Эти программы конфигурации Beckhoff поставляются в основном с устройствами Beckhoff. Для правильной настройки сети EtherCAT с устройствами других производителей может потребоваться получить правильный файл ESI с веб-сайта производителя устройства. Если в сети отсутствует файл ESI для подчиненного устройства, процесс сканирования не заполняет обозреватель решений правильным именем устройства, а переменные чтения и записи являются неправильными.
Чтобы создать новый проект TwinCAT в Visual Studio:
Запустите Visual Studio. Перейдите в раздел Файл > Создать > Проект.
В соответствии с Установленными, избранными Проектами TwinCAT и нажимают OK.
Убедитесь, что проект успешно создан в строке состояния Microsoft Visual Studio.
Введите лицензию, если этот экземпляр впервые используется TwinCAT и установлена полная версия. Если TwinCAT используется в режиме оценки, заполните Captcha.
Обратите внимание на панель обозревателя решений в левой части Visual Studio.
Перейдите в меню TWINCAT и выберите Scan. Также можно щелкнуть правой кнопкой мыши Обозреватель решений > проект TwinCAT > Ввод-вывод > Устройства > Сканирование.
Откроется диалоговое окно с сообщением Все устройства не могут быть найдены автоматически. Нажмите кнопку ОК и дождитесь завершения сканирования. Появится диалоговое окно с сообщением о том, что найдены новые устройства ввода-вывода.
Убедитесь, что флажок установлен, затем нажмите кнопку OK. Появится диалоговое окно с полями Поиск? сообщение. Нажмите «Да». Устройства EtherCAT в сети сканируются и отображаются.
Появится диалоговое окно с запросом на включение режима свободного запуска. Выберите No.
Просмотрите обозреватель решений и проверьте правильность сканирования устройств.
При первом запуске TwinCAT правая информационная панель не отображается. Необходимо дважды щелкнуть любой элемент в древовидном представлении. После этого диалоговое окно информации для любого элемента отображается одним щелчком по этому элементу в древовидном представлении обозревателя решений.

Чтобы настроить главный узел EtherCAT, создайте и настройте задачу, затем добавьте входы и выходы в задачу.
Для создания задачи EtherCAT:
В обозревателе решений щелкните правой кнопкой мыши узел Задачи и выберите Добавить новый элемент.
В диалоговом окне «Вставка задачи» выберите TwinCAT Task With Image, укажите имя задачи и нажмите кнопку «ОК».
Выберите созданную задачу. Значение Cycle Ticks определяет время цикла как кратное базовому времени, определенному для элемента реального времени. Время выполнения задачи по умолчанию равно 10 мс. Если используется синхронизация распределенных часов, время выполнения задачи 1-2 мс является самым медленным временем, которое работает в режиме постоянного тока Master Shift.
Создайте хотя бы одну циклическую задачу ввода-вывода. Свяжите эту задачу, по крайней мере, с одной входной переменной и одной выходной переменной на каждом подчиненном устройстве.
Если требуется запустить быстрее, чем 1 мс, необходимо изменить базовое время для элемента «Real-Time» над «Tasks». На вкладке «Параметры» необходимо изменить значение параметра «Базовое время» на более быстрое.
Используя распределенные часы (DC), протокол EtherCAT может синхронизировать время во всех устройствах локальной шины в узком диапазоне допусков. Только некоторые EtherCAT-устройства поддерживают DC. Важно, чтобы устройство, поддерживающее DC, настраивалось соответствующим образом. Например, в примерной конфигурации EL4002 поддерживает DC. Большинство контроллеров движения (приводы двигателей) поддерживают постоянный ток, а некоторые требуют его для перехода в состояние Op.
Для настройки EtherCAT DC:
Включите DC и выберите режим Bus shift или Master shift DC.
Щелкните узел Device n (EtherCAT)
Выберите вкладку EtherCAT на информационной панели.
Нажмите кнопку Advanced Settings (Дополнительные настройки), чтобы открыть новое диалоговое окно.
В диалоговом окне «Дополнительные параметры» выберите страницу «Распределенные часы».
По умолчанию установлен флажок Automatic DC Mode Selection (Автоматический выбор режима постоянного тока), в результате чего, как правило, получается режим DC Master Shift. Первым подчиненным устройством с включенным постоянным током является опорный синхросигнал, и время выполнения Simulink Real-Time слегка сдвигается для выравнивания выполнения с опорным синхросигналом.
Отмените выбор автоматического режима, и вы будете управлять режимом постоянного тока, который нужно использовать, или выключите его.
Если используемый DC не выбран, синхронизация распределенных синхросигналов не выполняется. Это приводит к гораздо более быстрому времени инициализации для перехода в состояние Op, но синхронизация между подчиненными устройствами отсутствует.
При выбранном контроллере постоянного тока используются два различных метода синхронизации между целевой машиной Speedgoat и ведомыми устройствами EtherCAT.
Независимое время постоянного тока использует первый ведомый контроллер постоянного тока в качестве опорного синхросигнала, а целевой машинный синхросигнал слегка настраивается для выполнения модели фазовой синхронизации первого ведомого контроллера постоянного тока.
Время постоянного тока, управляемое TwinCAT Time, должно считываться как управляемое целевым машинным временем в Simulink Real-Time. Это режим сдвига шины, в котором целевая машина является опорным синхросигналом, и время выполнения ведомого устройства слегка сдвигается для фазовой синхронизации целевой машины.
Выберите «Непрерывное измерение времени выполнения» и «Мониторинг окна синхронизации».
Теперь, когда вы выбрали режим DC для использования, вы можете посетить все подчиненные узлы DC в вашей сети и установить их в правильный режим. В этом примере файл ENI поддерживает только один подчиненный контроллер домена, EL4002.
Щелкните узел Term 3 (EL4002) и выберите вкладку DC.
По умолчанию для параметра Operation Mode установлено значение SM-Synchron, которое не синхронизирует выходные данные со временем постоянного тока. Измените режим работы на DC-Synchron. Разные подчиненные устройства имеют разные имена для режима работы.
Нажмите Дополнительные настройки и установите параметры распределенных часов, как показано на рисунке.

Для экспорта и сохранения конфигурации EtherCAT создайте файл ENI:
Щелкните узел устройства EtherCAT и перейдите на вкладку EtherCAT.
Щелкните Экспортировать файл конфигурации (Export Configuration File).
В диалоговом окне «Сохранить как» введите имя файла XML, например simple_adda_eni.xmlи нажмите кнопку «Сохранить». Этот XML-файл является файлом ENI. Имя файла ENI и модели Simulink Real-Time, использующей файл ENI, не может совпадать. У них должны быть разные имена.
При закрытии проекта TwinCAT редактируемая версия этой конфигурации сохраняется в файле проекта. Можно изменить конфигурацию, открыв этот проект и снова экспортировав его в XML.
Импорт устройств часто является частью рабочего процесса для устройств сторонних производителей. Этот процесс используется для настройки устройства, отсутствующего в системе Beckhoff. Под эту категорию попадают многочисленные моторы и их приводы. Иногда необходимо настроить устройство, отсутствующее в системе Beckhoff. TwinCAT EtherCAT master или System Manager использует файлы описания устройств для создания конфигурации в оперативном или автономном режиме.
Описания устройств содержатся в файлах ESI (EtherCAT Slave Information) в формате XML. Эти файлы могут быть запрошены у соответствующего производителя и доступны для загрузки. XML-файл может содержать несколько описаний устройств.
Файлы ESI для EtherCAT-устройств Beckhoff доступны на веб-сайте Beckhoff и хранятся в папке установки TwinCAT. Значение по умолчанию для TwinCAT2: C:\TwinCAT\IO\EtherCAT. Файлы считываются (один раз) при открытии нового окна System Manager, если они изменились с момента последнего открытия окна System Manager.
При использовании конфигуратора TwinCAT установка TwinCAT включает набор файлов Beckhoff ESI, которые были текущими на момент создания сборки TwinCAT. Для TwinCAT 2.11, TwinCAT 3 и более поздних версий можно обновить папку ESI из System Manager, если ПК программирования подключен к Интернету (Option > Update EtherCAT Device Descriptions).