EtherCAT & LinuxCNC
-
- Мастер
- Сообщения: 953
- Зарегистрирован: 23 фев 2011, 01:50
- Репутация: 36
- Контактная информация:
Re: EtherCAT & LinuxCNC
В большинстве устройств Ethercat используется протокол CANOPEN. Соответственно это стандарты DS301,DS302 ...
Если есть .edf файл производителя оборудования, то там все параметры и где их искать есть в обычном текстовом формате.
Главное найти как установить номер устройства и определить формат PDO и SDO.
Топология сети Ethercat - кольцо, в отличии от Ethernet 100 - звезда.
Не все Ethernet контроллеры в компьютере будут работать с драйверами LinuxCNC. Я видел драйвера для Intel и Realtek.
Если есть .edf файл производителя оборудования, то там все параметры и где их искать есть в обычном текстовом формате.
Главное найти как установить номер устройства и определить формат PDO и SDO.
Топология сети Ethercat - кольцо, в отличии от Ethernet 100 - звезда.
Не все Ethernet контроллеры в компьютере будут работать с драйверами LinuxCNC. Я видел драйвера для Intel и Realtek.
-
- Мастер
- Сообщения: 939
- Зарегистрирован: 29 окт 2017, 14:08
- Репутация: 60
- Настоящее имя: Makc
- Откуда: Ярославль
- Контактная информация:
Re: EtherCAT & LinuxCNC
эээ..я не компилил lcnc, установил из образа с сайта 2.7.14 чтоль тогдашнюю..
драйвера дельта,как помнится. да это и в хмл видно.
драйвера дельта,как помнится. да это и в хмл видно.
-
- Мастер
- Сообщения: 705
- Зарегистрирован: 18 май 2019, 13:23
- Репутация: 96
- Настоящее имя: Андрей
- Контактная информация:
Re: EtherCAT & LinuxCNC
Вот это для меня пока вообще не понятно, что они делают и зачем нужны - еще не искал описания.
Вроде бы PDO это инициализация устройства, которая нужна по факту один раз под конкретное железо?
ну да, 90% сетевух сделаны на базе Realtek и Intel
а драйвер? там у них были сложности с лицензиями. Так как все производители оборудования против использования GPL. а если в составе GPL софта используется и распространяется что-то, то оно автоматически должно стать GPL... И ни berkhoff ни IgH не давали согласия на такую фигню. Поэтому драйвер надо было качать отдельно "под свои нужды".steals_y2k писал(а): ↑ эээ..я не компилил lcnc, установил из образа с сайта 2.7.14 чтоль тогдашнюю..
Ну я дочитал до 31 страницы только, это 2016 год.
Последний раз редактировалось ex71 11 янв 2021, 19:00, всего редактировалось 1 раз.
-
- Мастер
- Сообщения: 1949
- Зарегистрирован: 10 окт 2015, 23:25
- Репутация: 284
- Настоящее имя: Андрей
- Откуда: Красноярск
- Контактная информация:
Re: EtherCAT & LinuxCNC
на сколько я помню наоборот, SDO - конфигурация, вроде даже предварительная, а PDO - рабочие "регистры" для задания ОС и т.д.
-
- Мастер
- Сообщения: 953
- Зарегистрирован: 23 фев 2011, 01:50
- Репутация: 36
- Контактная информация:
Re: EtherCAT & LinuxCNC
Главное отличие PDO от SDO состоит в том, что первый используется для обмена данными в процессе работы, а второй в процессе настройки.
Согласно стандарту CANOpen в каждом подчиненном устройстве может быть 4 sPDO , 4 rPDO и один SDO.
Расшифровывается это как send Processing Data Object, receive Processing Data Object и Service Data Object.
Каждый объект PDO и SDO может содержать до 8 байт данных.
Как будут интерпретированы мастером данные PDO зависит от описания.
И самое главное. Обмен PDO происходит в реалтайме. Хотя прочитать данные, содержащиеся в PDO можно и с помощью SDO, но со значительно большими затратами времени.
Например, обычно к PDO привязывают управление по позиции, скорости, моменту, получение состояния кнопок, энкодеров, разных датчиков итд.
В каждом подчиненном устройстве PDO заранее жестко привязаны к этим параметрам, что отражается в файле описания.
С помощью SDO можно прочитать и изменить любой параметр устройства.
По моему мнению, в связи с тем, что приводы становятся более интеллектуальными и многие функции, например ПИД регуляторы, переносятся в устройства, необходимость в таком стиле управления, как EtherCAT, отпадает.
На мой взгляд более перспективным является EthernetIP или тот же CAN.
Там хотя бы все открыто.
Согласно стандарту CANOpen в каждом подчиненном устройстве может быть 4 sPDO , 4 rPDO и один SDO.
Расшифровывается это как send Processing Data Object, receive Processing Data Object и Service Data Object.
Каждый объект PDO и SDO может содержать до 8 байт данных.
Как будут интерпретированы мастером данные PDO зависит от описания.
И самое главное. Обмен PDO происходит в реалтайме. Хотя прочитать данные, содержащиеся в PDO можно и с помощью SDO, но со значительно большими затратами времени.
Например, обычно к PDO привязывают управление по позиции, скорости, моменту, получение состояния кнопок, энкодеров, разных датчиков итд.
В каждом подчиненном устройстве PDO заранее жестко привязаны к этим параметрам, что отражается в файле описания.
С помощью SDO можно прочитать и изменить любой параметр устройства.
По моему мнению, в связи с тем, что приводы становятся более интеллектуальными и многие функции, например ПИД регуляторы, переносятся в устройства, необходимость в таком стиле управления, как EtherCAT, отпадает.
На мой взгляд более перспективным является EthernetIP или тот же CAN.
Там хотя бы все открыто.
-
- Мастер
- Сообщения: 939
- Зарегистрирован: 29 окт 2017, 14:08
- Репутация: 60
- Настоящее имя: Makc
- Откуда: Ярославль
- Контактная информация:
Re: EtherCAT & LinuxCNC
под что? под сеть? подошёл из комплекта(из образа установки lcnc). причём, сетевая есть и внешняя, в ней тоже работало. реалтек скорее всего.
вот да, я тут мучаюсь сейчас немного, а в драйвере асда-б2 всё есть уже. и я думаю, какую ещё обратную связь надо..
зы. а в эзеркате пробовал тормошить пид, была проблема-вообще ничего не менялось в поведении. ну вот совсем.
-
- Мастер
- Сообщения: 953
- Зарегистрирован: 23 фев 2011, 01:50
- Репутация: 36
- Контактная информация:
Re: EtherCAT & LinuxCNC
Для этого привода никакой дополнительной обратной связи не нужно. Достаточно внутренней обратной связи по энкодеру двигателя.steals_y2k писал(а): ↑ а в драйвере асда-б2 всё есть уже. и я думаю, какую ещё обратную связь надо..
Выберите управление по позиции и управляйте сигналами степ/дир.
Гарантировано не будет пропуска шагов на любых (заявленных в описании) частотах степ/дир.
-
- Мастер
- Сообщения: 1949
- Зарегистрирован: 10 окт 2015, 23:25
- Репутация: 284
- Настоящее имя: Андрей
- Откуда: Красноярск
- Контактная информация:
Re: EtherCAT & LinuxCNC
не уловил логику.. EtherCAT предоставляет приличную пропускную способность + довольно четкие тайминги, CANopen поверх - унификация протокола...Impartial писал(а): ↑12 янв 2021, 00:29 По моему мнению, в связи с тем, что приводы становятся более интеллектуальными и многие функции, например ПИД регуляторы, переносятся в устройства, необходимость в таком стиле управления, как EtherCAT, отпадает.
На мой взгляд более перспективным является EthernetIP или тот же CAN.
Там хотя бы все открыто.
-
- Мастер
- Сообщения: 705
- Зарегистрирован: 18 май 2019, 13:23
- Репутация: 96
- Настоящее имя: Андрей
- Контактная информация:
Re: EtherCAT & LinuxCNC
как я понял от CANOpen ушли как раз
-
- Мастер
- Сообщения: 1949
- Зарегистрирован: 10 окт 2015, 23:25
- Репутация: 284
- Настоящее имя: Андрей
- Откуда: Красноярск
- Контактная информация:
Re: EtherCAT & LinuxCNC
ну не совсем то же самое, ну допустим. а закрытость то в чем?
по чипам - да, согласен, однако они выполняют приличную часть важной и критичной к скорости работы.
по чипам - да, согласен, однако они выполняют приличную часть важной и критичной к скорости работы.
-
- Мастер
- Сообщения: 953
- Зарегистрирован: 23 фев 2011, 01:50
- Репутация: 36
- Контактная информация:
Re: EtherCAT & LinuxCNC
Попробуйте написать устройство EtherCAT. Я когда то пробовал. Это возможно только применив ПЛИС. Вроде идея простая, но чтобы включить в стандартную сеть езеркат не хватает деталей реализации. Спецификация закрыта.
Конечно, я смотрю на это со своей колокольни.
Никакой специфичной работы чипы не выполняют. Они занимаются только обеспечением физического уровня протокола. Все остальное можно сделать с помощью обычного микроконтроллера.
-
- Мастер
- Сообщения: 1949
- Зарегистрирован: 10 окт 2015, 23:25
- Репутация: 284
- Настоящее имя: Андрей
- Откуда: Красноярск
- Контактная информация:
Re: EtherCAT & LinuxCNC
ну по мне реализация физ. уровння, хотя они делают несколько больше, вполне специфичная задача.
да и они конечно не бесплатные, но и не шибко дорогие чтобы изобретать свой велосипед.
ПС спецификация закрыта даже для участников консорциума, или как у них оно называется ?
да и они конечно не бесплатные, но и не шибко дорогие чтобы изобретать свой велосипед.
ПС спецификация закрыта даже для участников консорциума, или как у них оно называется ?
-
- Мастер
- Сообщения: 705
- Зарегистрирован: 18 май 2019, 13:23
- Репутация: 96
- Настоящее имя: Андрей
- Контактная информация:
Re: EtherCAT & LinuxCNC
на чем пробовал?Impartial писал(а): Попробуйте написать устройство EtherCAT
Так то тема интересная, я бы попробовал IO порты собрать так как моторы лучше купить.
да есть чип lan9252, вопрос лишь что примеров работы с ним нету.
некоторый пример вот нашел
-
- Мастер
- Сообщения: 953
- Зарегистрирован: 23 фев 2011, 01:50
- Репутация: 36
- Контактная информация:
Re: EtherCAT & LinuxCNC
Для участников наверное открыта. Я не участник.
Пробовал еще на Циклоне 1 Альтеры + PHY ethernet. Давно это было.
Если программируете, то не стоит морочить голову с езеркат.
Стоит немного переделать драйвер езеркат LinuxCNC и можно получить тоже самое используя микроконтроллер с езернет на борту.
Например STM32F407.
И неограниченные возможности для реализации своих идей.
Пробовал еще на Циклоне 1 Альтеры + PHY ethernet. Давно это было.
Если программируете, то не стоит морочить голову с езеркат.
Стоит немного переделать драйвер езеркат LinuxCNC и можно получить тоже самое используя микроконтроллер с езернет на борту.
Например STM32F407.
И неограниченные возможности для реализации своих идей.
-
- Мастер
- Сообщения: 1949
- Зарегистрирован: 10 окт 2015, 23:25
- Репутация: 284
- Настоящее имя: Андрей
- Откуда: Красноярск
- Контактная информация:
Re: EtherCAT & LinuxCNC
не, я в целом любитель велосипедов, но вот в этом случае хочу попробовать фирменный велосипед )
его таки не идиоты делали, и в целом концепция вполне красивая, сэкономить 1т.р. на спец чипе, имхо, смысла не имеет.
по LAN-ам в планах на них сделать железки, в частности для образовательных целей.
ПС я ничего доказать тут не пытаюсь, так интересно послушать мнения.
его таки не идиоты делали, и в целом концепция вполне красивая, сэкономить 1т.р. на спец чипе, имхо, смысла не имеет.
по LAN-ам в планах на них сделать железки, в частности для образовательных целей.
ПС я ничего доказать тут не пытаюсь, так интересно послушать мнения.
-
- Мастер
- Сообщения: 939
- Зарегистрирован: 29 окт 2017, 14:08
- Репутация: 60
- Настоящее имя: Makc
- Откуда: Ярославль
- Контактная информация:
Re: EtherCAT & LinuxCNC
подниму, пожалуй, тему.
для очередной девицы были закуплены более новые драйвера asd b3, собрал все пакеты, прописал мак..
и в итоге получил мпх.
хмл конфиги от асд а2-е и асд б3-е прилично отличаются.
судя по ошибкам, программный мастер в linuxcnc не понимает новые драйвера... (едут а2-е, проверю эту теорию очень скоро).
есть мысль о покупке аппаратного мастера, но лишь бы Линукс его смог понять..
для очередной девицы были закуплены более новые драйвера asd b3, собрал все пакеты, прописал мак..
и в итоге получил мпх.
хмл конфиги от асд а2-е и асд б3-е прилично отличаются.
судя по ошибкам, программный мастер в linuxcnc не понимает новые драйвера... (едут а2-е, проверю эту теорию очень скоро).
есть мысль о покупке аппаратного мастера, но лишь бы Линукс его смог понять..
-
- Мастер
- Сообщения: 939
- Зарегистрирован: 29 окт 2017, 14:08
- Репутация: 60
- Настоящее имя: Makc
- Откуда: Ярославль
- Контактная информация:
Re: EtherCAT & LinuxCNC
в итоге, с в3-е так и не срослось.
с а2, приехавшими позже, пришлось изменить адреса в драйвере эзеркат для лснс и пересобрать его, дел на пару минут.
с а2, приехавшими позже, пришлось изменить адреса в драйвере эзеркат для лснс и пересобрать его, дел на пару минут.
-
- Новичок
- Сообщения: 5
- Зарегистрирован: 18 янв 2023, 18:06
- Репутация: 0
- Настоящее имя: Vlad
- Контактная информация:
Re: EtherCAT & LinuxCNC
Собираюсь как раз такой мотор под лснс запускать. Можно подробнее - какой драйвер ethercat, какой лснс, и, главное, что и как делать )
Заранее очень благодарен за подробную инструкцию.
Заранее очень благодарен за подробную инструкцию.
-
- Мастер
- Сообщения: 939
- Зарегистрирован: 29 окт 2017, 14:08
- Репутация: 60
- Настоящее имя: Makc
- Откуда: Ярославль
- Контактная информация:
Re: EtherCAT & LinuxCNC
b3? с удовольствием почитаю)
драйвера собирал по ссылкам с линуксснс.орг, надо драйвер эзеркат(и обычный, и -дев) и отдельно по д линуксснс. ссылок нет, всё гуглил..
драйвера собирал по ссылкам с линуксснс.орг, надо драйвер эзеркат(и обычный, и -дев) и отдельно по д линуксснс. ссылок нет, всё гуглил..