В этом примере показано, как управлять положением двигателя при помощи коммуникации EtherCAT. Электропривод в качестве примера от Инструментов Копли. Этот диск использует CIA-402 (Может В Автоматизации 402), профиль устройства, характерный для многих дисков. Пример может работать с другими дисками CIA-402 EtherCAT, если вы генерируете соответствующий файл ENI.
Этот пример предварительно сконфигурирован, чтобы использовать сеть EtherCAT, которая состоит из целевого компьютера как Ведущее устройство EtherCAT и AEP Accelnet™ диск 180-18 от Средств управления Копли как Ведомое устройство EtherCAT. Соедините поддерживаемое бесщеточное или двигатель кисти к диску. Двигатель в качестве примера, который работает с этим примером, является SM231BE-NFLN от PARKER.
EtherCAT в Simulink Real-Time требует специализированного сетевого порта на целевом компьютере, который резервируется для использования EtherCAT при помощи инструмента конфигурирования Ethernet. Сконфигурируйте выделенный порт для коммуникации EtherCAT, не с IP-адресом. Выделенный порт должен быть отличен от порта, используемого для подключения Ethernet между разработкой и целевыми компьютерами.
Протестировать эту модель:
Соедините порт, который резервируется для EtherCAT в целевом компьютере к порту EtherCAT IN диска Accelnet™.
Соедините двигатель с Диском Accelnet™.
Убедитесь, что диск Accelnet™ предоставляется источником питания на 24 вольта.
Создайте и загрузите модель на цель.
Для полного примера, который конфигурирует сеть EtherCAT, конфигурирует модель главного узла EtherCAT и создает, затем запускает приложение реального времени, смотрите Моделирование Сети EtherCAT.
Эта модель создает синусоиду и модулирует ее путем умножения значением управления ползунком. Модулируемый сигнал отправляется как моторная команда положения в диск.
Блок инициализации EtherCAT требует, чтобы настройка файл ENI присутствовала в текущей папке. Скопируйте конфигурационный файл в качестве примера от папки в качестве примера до текущей папки. Чтобы открыть модель, в командном окне MATLAB, введите:
open_system(fullfile(matlabroot,'toolbox','slrealtime','examples','slrt_ex_ethercatPositionControl'));
Рисунок 1: модель EtherCAT для управления положением двигателя.
Откройте диалоговое окно параметра для блока EtherCAT Init и наблюдайте предварительно сконфигурированные значения. Ведомыми устройствами EtherCAT, которые объединяются в гирляндную цепь вместе с кабелем Ethernet, является Устройство, также называемое сетью EtherCAT. Индекс Устройства выбирает одну такую цепочечную сеть EtherCAT. Номер порта Ethernet идентифицирует который порт Ethernet использовать, чтобы получить доступ к тому Устройству. Блок EtherCAT Init соединяет эти два так, чтобы другие блоки EtherCAT использовали индекс Устройства, чтобы связаться с ведомыми устройствами в той сети EtherCAT.
Если у вас только есть тот соединенная сеть ведомых устройств EtherCAT, и вы только зарезервировали один порт Ethernet с инструментом конфигурирования Ethernet, используйте индекс Устройства = 0 и Номер порта Ethernet = 1.
Если необходимо создать новый файл ENI, необходимо использовать сторонний конфигуратор EtherCAT, такой как TwinCAT 3 от Beckhoff, который вы устанавливаете на компьютере разработчика. Настройкой EtherCAT (ENI) файл, предварительно сконфигурированный для этой модели, является CopleyMotorPositionConfig.xml
.
Каждый файл ENI характерен для точной сетевой настройки, из которой он был создан (например, сеть, обнаруженная на шаге 1 процесса создания конфигурационного файла). Конфигурационный файл предусмотрел этот пример, допустимо, если и только если сеть EtherCAT состоит из одного диска Accelnet™ от Средств управления Копли. Если вы сделали, чтобы различный EtherCAT управлял, который использует профиль CIA-402 CanOpen, этот пример все еще работает, но необходимо создать новый файл ENI, который использует диск. Обратитесь к Банке На веб-сайте Автоматизации в www.can-cia.org для деталей. EtherCAT CoE встраивает обращение CanOpen для использования переменных процесса EtherCAT как транспортный уровень вместо CAN.
Обзор процесса для создания файла ENI в, Конфигурируют Сеть EtherCAT при помощи TwinCAT 3
В данном примере четыре получают переменные PDO, заданы в конфигурационном файле, и три используются в трех блоках Передачи EtherCAT PDO: Управляющее слово, Режимы работы и Целевое Положение Профиля. Четвертая переменная: Целевая Скорость используется в примере EtherCAT® Protocol Motor Velocity Control с Диском Accelnet™.
Переменная Control Word PDO служит, чтобы управлять состоянием диска. Постоянное значение 15 дано как вход с блоком, чтобы установить первые 4 бита на 1 включать диск. Для получения дополнительной информации на побитовом отображении этой переменной, обратитесь к Банке На веб-сайте Автоматизации. Это переменное и побитовое отображение находится в профиле устройства CIA-402.
Переменная Modes of Operation PDO служит, чтобы установить рабочий режим диска. Постоянное значение 8 дано как вход с блоком, чтобы установить режим диска к Cyclic Synchronous Position mode
. Для подробной документации обратитесь к Банке На веб-сайте Автоматизации. Эта переменная находится в профиле устройства CIA-402.
Переменная Profile Target Position PDO служит, чтобы установить желаемое положение. В этом примере команда положения, данная как вход с блоком, является синусоидой, модулируемой постоянным Амплитудным значением, соединенным с управлением ползунком в модели.
Передайте переменные PDO (переданный ведомым устройством), также заданы в конфигурационном файле, и каждый используется в блоке EtherCAT PDO Receive: Actual Motor Position
для диска. Переменная Actual Motor Position PDO указывает на текущее значение моторной позиции чтения в диске. Убедитесь необходимая передача и получите переменные PDO, выбраны в блоках прежде, чем запустить пример. Вы могли должны быть обновить эти переменные. Обратите внимание на то, что EtherCAT обращается к переменным, которые ведомое устройство устанавливает как переменные передачи, которые получены целевой моделью.
Убедитесь, что необходимая передача и получает переменные PDO, выбраны в блоках, как проиллюстрировано в рисунке 1 прежде, чем запустить пример. Вы могли должны быть обновить эти переменные путем открытия диалоговых окон и выбора текущей переменной снова.
Чтобы создать, загрузите и запустите модель:
В Редакторе Simulink, из списка целей на вкладке Real-Time, выбирают целевой компьютер, на котором можно запустить приложение реального времени.
Нажмите Run on Target.
Если вы открываете два осциллографа стороны хоста путем двойного щелчка по каждому, данные переданы от цели назад к компьютеру разработчика и отображены.
Включенный в модель способность управлять амплитудой циклически повторяющегося движения. С Запуском на Целевой кнопке ползунок активен и связан с Амплитудным постоянным блоком.
Модель предварительно сконфигурирована, чтобы запуститься в течение 10 секунд. Если вы хотите запустить модель дольше, выпадающий меню Run on Target и изменить номер на нижней строке. Нажмите зеленую стрелу, чтобы сконфигурировать, создать и запуститься.
Если при запуске модель с помощью Запуска на Целевой кнопке, режим external mode соединяется, и можно дважды щелкнуть по блокам scope и видеть данные по хосту. Кроме того, ползунок активен в режиме external mode.
Определите объем показывает Распределенные Часы, синхронизирующие различие между основным стеком, работающим на целевом компьютере и синхронизацией на диске. Этот файл ENI сконфигурирован, чтобы использовать режим Master Shift для DC. Часы на целевом компьютере настроены, чтобы соответствовать, синхронизация на ссылке EtherCAT отмечают время прихода на работу, первый DC включил ведомое устройство.
Scope1 показывает прогрессию состояния от Неактивного до Init (=1) к PreOp (=2) к SafeOp (=4) в течение очень короткого времени, видимого, если вы увеличиваете масштаб к Op (=8) приблизительно в 4,3 секунды.
Scope2 показывает и синусоиду, отправляемую в (синий) диск и фактическое (желтое) положение. Это масштабируется в право нескольких секунд, когда диск перешел к государственному контролю Op, и внешнее управление запускается. Поскольку моторное оборудование не может ответить мгновенно, и положение, которым управляют, не 0, вы видите фактический подъем положения и промахиваетесь немного перед успокаиванием, чтобы следовать за положением, которым управляют. Задержка между командой и фактический является примерно 18 шагами шага расчета с этим диском. Диспетчер в диске и инерции двигателя ответственен за эту более длинную задержку. Другие диски могут иметь различные характеристики задержки.
После выполнения модели можно использовать Инспектора Данных моделирования, чтобы просмотреть любой сигнал, который был отмечен для логгирования сигнала. Сигналы, отмеченные для логгирования сигнала, имеют точку с двумя дугами выше его в редакторе моделей.
Это - простой пример блока управления приводом. Многочисленные настраиваемые параметры в диске не настроены в этой модели. Корректировка тех потребностей более усовершенствованная модель с помощью блоков CoE/SDO.
Когда пример завершит свой запуск, остановите и закройте модель.
close_system('slrt_ex_ethercatPositionControl');