exponenta event banner

Протокол EtherCAT ® с аналоговыми подчиненными устройствами ввода-вывода Beckhoff ® EL3062 и EL4002

В этом примере показано взаимодействие с устройствами EtherCAT с помощью аналоговых терминалов ввода/вывода Beckhoff ® EL3062 и EL4002.

Требования

Для запуска этого примера необходима сеть EtherCAT, состоящая из целевого компьютера в качестве EtherCAT Master устройства и двух аналоговых входов/выходов EL3062 и EL4002 в качестве EtherCAT Slave устройств. В этом примере требуется выделенный сетевой порт, зарезервированный для EtherCAT с помощью инструмента настройки Ethernet на целевом компьютере. Используйте зарезервированный порт для обмена данными EtherCAT. Этот порт является дополнением к порту, используемому для канала Ethernet между разработчиками и целевыми компьютерами.

Для тестирования этой модели:

  1. Подключите зарезервированный сетевой порт на целевом компьютере к сетевому входному порту соединителя Beckoff ® EK1100.

  2. Собрать клеммы EL3062 и EL4002 с помощью ответвителя EK1100.

  3. Закольцовывание портов ввода-вывода: Подключите каждый выходной порт терминала EL4002 к соответствующему входному порту терминала EL3062.

  4. Убедитесь, что клеммы оснащены необходимым 24-вольтовым источником питания.

  5. Постройте и загрузите модель на целевой объект.

Полный пример настройки сети EtherCAT, модели главного узла EtherCAT и сборки, а затем запуска приложения реального времени см. в разделе Моделирование сетей EtherCAT.

Открытие модели

Эта модель создает два синусоидальных сигнала и посылает их на EL4002 терминал. Модель принимает значения входного сигнала от терминала EL3062.

Блок инициализации EtherCAT требует наличия файла конфигурации ENI в текущей папке. Скопируйте файл конфигурации примера из папки примеров в текущую папку. Чтобы открыть модель, в окне команды MATLAB введите:

open_system(fullfile(matlabroot,'toolbox','slrealtime','examples','slrt_ex_ethercat_beckhoff_aio'));

Рис. 1. Модель EtherCAT с использованием аналоговых подчиненных устройств ввода-вывода Beckhoff ® EL3062 и EL4002.

Настройка модели

Откройте маску для блока EtherCAT Init и проверьте предварительно заданные значения. Ведомые устройства EtherCAT, которые последовательно соединены вместе с кабелем Ethernet, являются устройствами, также называемыми сетью EtherCAT. Индекс устройства выбирает одну такую цепную EtherCAT-сеть. Номер порта Ethernet определяет порт Ethernet, используемый для доступа к этому устройству. Блок EtherCAT Init соединяет эти два блока таким образом, что другие блоки EtherCAT используют индекс устройства для связи с подчиненными устройствами в этой сети EtherCAT.

Если имеется только одна подключенная сеть подчиненных устройств EtherCAT и зарезервирован только один порт Ethernet с помощью инструмента настройки Ethernet, используйте Device Index = 0 и Ethernet Port Number = 1.

При необходимости создайте файл ENI для различных подчиненных устройств A/D D/A

Если требуется создать новый файл ENI, необходимо использовать сторонний конфигуратор EtherCAT, такой как TwinCAT 3 компании Beckhoff, устанавливаемый на компьютере разработчика. Файл конфигурации EtherCAT (ENI), предварительно настроенный для этой модели, - BeckhoffAIOconfig.xml.

Файл ENI (EtherCAT Network Information - сетевая информация EtherCAT), поставляемый в данном примере, имеет EK1100 с подключенными ведомыми устройствами EL3062 и EL4002 в указанном порядке. При наличии различных аналоговых модулей ввода-вывода необходимо создать новый файл ENI для этой коллекции.

Обзор процесса создания файла ENI см. в разделе Настройка EtherCAT-сети с помощью TwinCAT 3.

Каждый файл конфигурации EtherCAT (файл ENI) зависит от конкретной настройки сети, для которой он был создан (например, сеть, обнаруженная на этапе 1 процесса создания файла конфигурации). Файл конфигурации, предоставленный в этом примере, действителен тогда и только тогда, когда EtherCAT-сеть состоит из терминалов EK1100, EL3062 и EL4002.

Файл ENI определяет набор переменных передачи и приема. В этом примере набор переменных приема определяется для каждого входного канала терминала EL3062. Убедитесь, что переменные для канала 1 и канала 2 терминала EL3102 выбраны соответственно в двух блоках приема EtherCAT PDO. Эти две переменные: Term 2 (EL3062).AI Standard Channel 1.Value и Term 2 (EL3062).AI Standard Channel 2.Value.

Набор переменных передачи определен для двух выходных каналов терминала EL4002. Убедитесь, что переменные для канала 1 и канала 2 терминала EL4002 выбраны в двух блоках передачи EtherCAT PDO. Эти две переменные: Term 3 (EL4002).AO Outputs Channel 1.Analog Output и Term 3 (EL4002).AO Outputs Channel 2.Analog Output.

Создание, загрузка и запуск модели

Чтобы построить, загрузить и запустить модель:

  1. В редакторе Simulink в списке целей на вкладке Real-Time выберите целевой компьютер, на котором будет выполняться приложение реального времени.

  2. Нажмите кнопку Run on Target.

Если открыть три области на стороне хоста путем двойного щелчка на каждой области, данные передаются с целевого объекта обратно на компьютер разработки и отображаются там.

Увеличение в первой четверти секунды выполнения для этой модели на всех трех областях показывает:

Область показывает уведомления желтым цветом, а состояние синим. Единственные уведомления имеют значение 1, что означает, что состояние изменилось. Каждый из них выравнивается с шагом вывода состояния. Поскольку этот файл ENI не использует синхронизацию распределенных часов, переход в состояние Op происходит очень быстро, чуть более 0,1 секунды. Кроме того, поскольку этот файл ENI не использует распределенные часы, последние 4 элемента вектора из блока init равны 0.

Scope1 показывает синусоидальный выходной сигнал 1Hz желтым цветом, а значение, считанное A/D синим цветом. Обратите внимание, что вход отсутствует до тех пор, пока состояние EtherCAT не перейдет в состояние Op сразу после 1 секунды. При более жестком увеличении изображения можно заметить, что A/D-сигнал задерживается на несколько тактовых циклов с выхода D/A. Это происходит потому, что A/D считывается до того, как D/A получает команду на новое значение, и A/D значение становится недоступным до следующего времени выборки. Этот D/A подчиненный узел принимает в качестве входного сигнала знак int, но может выводить только в диапазоне [0, + 10] вольт, поэтому входные значения показывают только положительные значения, даже если этот A/D может считывать входные данные из [-10, + 10].

Scope2 показывает синвейв 2Hz, посланный во второй D/A канал, с таким же задержанным началом на входе и задержанным ответом на изменение.

Второй способ - построение модели (slbuild () или ^ B), загрузка из командной строки MATLAB и запуск из командной строки. В этом случае блоки области не отображают данные, но можно использовать инспектор данных моделирования.

Модель предварительно настроена на работу в течение 10 секунд. Если требуется выполнить модель дольше, используйте вкладку МОДЕЛИРОВАНИЕ (MODELING) на панели инструментов редактора модели, чтобы изменить время остановки и перестроить.

Отображение данных целевого компьютера

После запуска модели можно также использовать инспектор данных моделирования для просмотра любого сигнала, помеченного для регистрации сигнала. Сигналы, отмеченные для регистрации сигналов, имеют точку с двумя дугами над ней в редакторе модели.

Остановить и закрыть модель

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

close_system('slrt_ex_ethercat_beckhoff_aio');

См. также