Управление ШД по Modbus

Шаговые и серво двигатели, шпиндели, инверторы.
Аватара пользователя
Serg
Мастер
Сообщения: 21844
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5133
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Управление ШД по Modbus

Сообщение Serg »

Подскажите драйвера ШД, которыми можно управлять по Modbus(RS485)? Не настраивать, а именно УПРАВЛЯТЬ - например чтоб мог по команде проехать указанное расстояние с указанной скоростью.

Читать описания на сайтах магазинов я и сам умею. Так-же умею и читать доки, но в тех, которые я находил в лучшем случае написано, что можно управлять, но при это совершенно нет информации о там как это делать - какие команды давать и в какие регистры что писать. :thinking:
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
Maxekb77
Мастер
Сообщения: 1649
Зарегистрирован: 05 окт 2013, 00:04
Репутация: 285
Настоящее имя: Максим
Откуда: Екатеринбург
Контактная информация:

Re: Управление ШД по Modbus

Сообщение Maxekb77 »

Вчера 2DM556-RC приехал, вроде как и модбас и can может, в выходные буду смотреть чего там и как
Аватара пользователя
Serg
Мастер
Сообщения: 21844
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5133
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Управление ШД по Modbus

Сообщение Serg »

Было-бы интересно...
На них натыкался, но информации практически 0, даже на сайте производителя... :(
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
Maxekb77
Мастер
Сообщения: 1649
Зарегистрирован: 05 окт 2013, 00:04
Репутация: 285
Настоящее имя: Максим
Откуда: Екатеринбург
Контактная информация:

Re: Управление ШД по Modbus

Сообщение Maxekb77 »

В общем помучал, особо в детали не лез но да задание можно отправлять по modbus или can.
Только китайцы как то извернулись, в общем для моих задач оно не подходит - с панели максимальный ток я могу ограничить а по модбас почему то нет.
Аватара пользователя
MX_Master
Мастер
Сообщения: 6659
Зарегистрирован: 27 июн 2015, 19:45
Репутация: 2805
Настоящее имя: Миша
Контактная информация:

Re: Управление ШД по Modbus

Сообщение MX_Master »

Можно попробовать рулить драйверами типа TMC2208 через переходник RS485-UART. Оно, канеш, не модбас, но всё же :freak:
vmarkiv
Мастер
Сообщения: 509
Зарегистрирован: 21 янв 2012, 00:23
Репутация: 32
Откуда: Ивано-Франковск
Контактная информация:

Re: Управление ШД по Modbus

Сообщение vmarkiv »

У меня была идея , используя регистры TMC5160 , на Ардуине сделать переходник на Modbus . Проект хотел сделать на Flprog . Как образец для шагового привода есть файлы https://pan.baidu.com/s/1c8JeYu7LuPG9J1 ... 7482468654 ( скачать не могу ). Ну и Ananas - там много интересного - https://www.ananasstepper.com/
Ну и - https://en.nanotec.com/ , панель Weintek может к приводу подключаться
Аватара пользователя
Serg
Мастер
Сообщения: 21844
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5133
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Управление ШД по Modbus

Сообщение Serg »

За ссылки спасибо, завтра поизучаю.
Но похоже решение будет совсем иным - сделаю для своего ПЛК модуль расширения Modbus-Stepgen, чтоб потом не гонятся за какими-то уникальными драйверами. Завтра схему-плату нарисую и пока будет делаться и ехать наверняка софт "рожу".
С другими ПЛК тоже будет совместимо... :)
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
vmarkiv
Мастер
Сообщения: 509
Зарегистрирован: 21 янв 2012, 00:23
Репутация: 32
Откуда: Ивано-Франковск
Контактная информация:

Re: Управление ШД по Modbus

Сообщение vmarkiv »

Были наброски для FLprog управления шаговым двигателем
Вложения
Stepper_Flprog.zip
(187.95 КБ) 38 скачиваний
Аватара пользователя
Serg
Мастер
Сообщения: 21844
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5133
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Управление ШД по Modbus

Сообщение Serg »

Спасибо, но посмотреть не получается - свежескачанный flprog падает при открытии любого файла.
Да и не актуальны они - уже родил макет собственного модуля на stm32l031f6p: 2 независимых канала step/dir до 100кГц, в принципе можно и до ~5МГц, но "на верхах" дискретность установки частоты будет слишком маленькая. За одно сделал то, что давно собиралься попробовать - библиотечку Modbus RTU и ASCII, по максимуму использующую соотв. аппаратную поддержку в stm32. Получилось очень простая и компактная реализация, прерывание генерится только после прихода последнего байта пакета. Modbus сервер и два шагогенератора заняли ~15kB Flash и 2.3kB RAM. Заказал платы, жду...
Пока жду быстренько набросал аналогичный Modbus модуль на 2 энкодера, тоже платы жду. :)
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
vmarkiv
Мастер
Сообщения: 509
Зарегистрирован: 21 янв 2012, 00:23
Репутация: 32
Откуда: Ивано-Франковск
Контактная информация:

Re: Управление ШД по Modbus

Сообщение vmarkiv »

Отлично , что получилось . Аналогичный проект https://www.crowdsupply.com/good-robotics/wi-fi-stepper https://bitbucket.org/aklofas/wifistepp ... fistepper/ , просто для информации в теме .
Аватара пользователя
Serg
Мастер
Сообщения: 21844
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5133
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Управление ШД по Modbus

Сообщение Serg »

Не, это совсем другое, тут нет ни Modbus, ни генератора шагов.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
at90
Мастер
Сообщения: 579
Зарегистрирован: 08 окт 2011, 23:22
Репутация: 153
Контактная информация:

Re: Управление ШД по Modbus

Сообщение at90 »

У лидшайна есть драйвер EM2RS. В пурике есть в наличии. Никто такие не пробовал?
Фрезы для чпу www.carbidetools.ru
Аватара пользователя
Serg
Мастер
Сообщения: 21844
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5133
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Управление ШД по Modbus

Сообщение Serg »

at90 писал(а): У лидшайна есть драйвер EM2RS. В пурике есть в наличии. Никто такие не пробовал?
Написано, что можно настроить максимум 16 команд перемещения и потом их выполнять - не годится.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
at90
Мастер
Сообщения: 579
Зарегистрирован: 08 окт 2011, 23:22
Репутация: 153
Контактная информация:

Re: Управление ШД по Modbus

Сообщение at90 »

А то мешает перезаписывать комманду. Т.е настроили одну страницу. а меняем только позицию.
Для чпу не годится. А для автоматизации вполне.
Фрезы для чпу www.carbidetools.ru
Аватара пользователя
Serg
Мастер
Сообщения: 21844
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5133
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Управление ШД по Modbus

Сообщение Serg »

at90 писал(а): А для автоматизации вполне.
Как раз для автоматизации совсем не годится. Во первых выбор/запуск такой "команды" производится через несколько дискретных входов, а не по Modbus. Во вторых сильно сомневаюсь , что перепрограммировать эти команды получится простым PLC типа такого https://www.aliexpress.com/item/4001279038167.html. А PLC посерьёзнее как правило и сами хорошо умеют шаги генерить, например https://owen.ru/product/plk110_m02
Таких драйверов я уже кучу разных нашёл, но они не подходят, потому и создал тему.

А то, что я делаю можно использовать даже просто только с операторской панелью, я вот тестирую с такой https://www.aliexpress.com/item/32542135531.html. Этого например вполне достаточно для перемещения упоров на станках типа гибочных, гильотинах, пилах...

А учитывая, что интерфейс RS485 на устройствах поддерживает скорость до 2Mbit/s, то они сгодятся и как модули расширения для много чего.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
at90
Мастер
Сообщения: 579
Зарегистрирован: 08 окт 2011, 23:22
Репутация: 153
Контактная информация:

Re: Управление ШД по Modbus

Сообщение at90 »

Авто хоминг будет?
Фрезы для чпу www.carbidetools.ru
Аватара пользователя
at90
Мастер
Сообщения: 579
Зарегистрирован: 08 окт 2011, 23:22
Репутация: 153
Контактная информация:

Re: Управление ШД по Modbus

Сообщение at90 »

Serg писал(а): 18 фев 2021, 18:42
at90 писал(а): А для автоматизации вполне.
Как раз для автоматизации совсем не годится. Во первых выбор/запуск такой "команды" производится через несколько дискретных входов, а не по Modbus. Во вторых сильно сомневаюсь , что перепрограммировать эти команды получится простым PLC типа такого https://www.aliexpress.com/item/4001279038167.html. А PLC посерьёзнее как правило и сами хорошо умеют шаги генерить, например https://owen.ru/product/plk110_m02
Таких драйверов я уже кучу разных нашёл, но они не подходят, потому и создал тему.

А то, что я делаю можно использовать даже просто только с операторской панелью, я вот тестирую с такой https://www.aliexpress.com/item/32542135531.html. Этого например вполне достаточно для перемещения упоров на станках типа гибочных, гильотинах, пилах...

А учитывая, что интерфейс RS485 на устройствах поддерживает скорость до 2Mbit/s, то они сгодятся и как модули расширения для много чего.
Motion can be started by External IO or RS485 or HMI
Фрезы для чпу www.carbidetools.ru
Аватара пользователя
Serg
Мастер
Сообщения: 21844
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5133
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Управление ШД по Modbus

Сообщение Serg »

at90 писал(а): Авто хоминг будет?
Реализовать не проблема, но нужны входы для концевиков. В первой версии платы они не предусмотрены, ибо тянут за собой кучку других вопросов. Поэтому пока будет средствами PLC. А то и вообще абсолютную магнитую "линейку" применим, чтоб не заморачиваться с хомингом на длине в 3 метра. :)
at90 писал(а): Motion can be started by External IO or RS485 or HMI
Я описания этих команд не нашёл... :wik:
Впрочем я его наверно куплю на пробу - всё равно скоро для тестов понадобится нормальный драйвер ШД, а то я всё мелким 3dпринтерным пользуюсь, ибо вокруг одни сервы. :)
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
at90
Мастер
Сообщения: 579
Зарегистрирован: 08 окт 2011, 23:22
Репутация: 153
Контактная информация:

Re: Управление ШД по Modbus

Сообщение at90 »

К нему же есть тестовый софт. Я думаю, что через него можно крутить движок. Тоже возьму на пробу.
Есть у китайцев еще несколько вариантов драйверов. Но там с описанием вообще туго.
Фрезы для чпу www.carbidetools.ru
Аватара пользователя
Serg
Мастер
Сообщения: 21844
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5133
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Управление ШД по Modbus

Сообщение Serg »

В итоге купил и слегка потестил два драйвера: Leadshine EM2RS и RTELLIGENT NT60. Это названия серий, внутри серий есть модели на разные токи/напряжения, я на этом останавливаться не буду, кому надо - нагуглит. :)
Тестировался только способ управления RS485+Modbus. И так:

Leadshine EM2RS
У драйвера 7 дискретных входов и 3 дискретных выхода, все программируются на любую имеющуюся функцию. По дефолту первый вход запрограммирован на Enable, все остальные на ничего.
На драйвере есть два порта RS485 в виде гнёзд 8p8c (RJ45), они просто запараллелены, чтобы можно было несколько драйверов соединять в "цепочку" обычными сетевыми патчкордами.
Есть порт RS232 для настройки драйвера через Leadshine Motion Studio, однако разъём нестандартный, к нему нужна вот такая ответная часть: https://www.chipdip.ru/product/ds1066-04f-mu-4f
Набор настроек наверно более менее обычный для Leadshine, однако специальной процедуры автотюнига нет, есть только параметр разрешающий или нет некую автонастройку при включении. Внешне это никак не проявляется, но индуктивность обмоток показывает правильно. Все настройки доступны и через RS485+Modbus.
DIP переключателями можно менять только скорость портов RS485 и RS232, Modbus адрес и включать встроенный терминатор для RS485.
Управления STEP+DIR нет. Но два любых входа можно настроить для управления CW+CWW. Можно настроить входы на JOG в двух вариантах: 1. пока сигнал активен мотор крутится (скорость программируется); 2. при появлении активного сигнала крутится заданное время.
Входы можно запрограммировать на подключение концевиков - будет сам хомиться по Modbus команде или по соотв. дискретному сигналу.
Управлять перемещениями можно как через Modbus, так и дискретными входами. По Modbus можно одной командой задать новую позицию, скорость, оба ускорения, тип позиции (абсолютная/относительная), режим работы (позиционирование или в вращение с заданной скоростью) и выполнить это задание.
Ещё имеются 16 ячеек для таких заданий, их можно заполнить заранее и запускать на выполнение либо Modbus командой или специальным дискретным сигналом, предварительно выбрав адрес "ячейки" другими дискретными сигналами. Можно из любых этих ячеек "собрать" как из кусочков последовательность перемещений и запускать её командой/сигналом. Кусочки можно заставить исполнятся без остановок между ними - просто на их границах скорость будет изменяться с заданными ускорениями.
В самом начале документации в разделе особенностей упоминается Full Closed Loop, но более нигде это не упоминается и энкодер тоже, да и Leadshine позиционирует драйвер как Open Loop. Однако есть параметры управления PID регулятором тока в обмотках, видимо это оно.

RTELLIGENT NT60
У драйвера 6 дискретных входов и 2..4 дискретных выхода в зависимости от модели, все программируются на любую имеющуюся функцию. Особо отмечу такую особенность входов: если в промежутках между опросами контроллером какие-либо входы кратковременно меняли своё состояние туда-обратно, то есть возможность узнать какие это были входы и как менялось состояние.
На драйвере так-же есть два порта RS485 в виде гнёзд 8p8c (RJ45), и они так-же запараллелены, чтобы можно было несколько драйверов соединять в "цепочку" обычными сетевыми патчкордами. Все настройки делаются через Modbus. Для любителей GUI на сайте производителя есть RTConfigurator (RTConfig), но там просто таблица регистров, со значениями и кратким названием, можно покрутить мотором. Иногда глюкает.
Эти драйвера интересны ещё и тем, что умеют управлять как двухфазными так и трёхфазными моторами. Так-же входы можно настроить как энкодерные входы (+5В драйвер предоставляет) и драйвер сможет полноценный Full Closed Loop по позиции. На моделях серии NR60 есть аналоговый вход для аналогового управления скоростью.
Управление аналогично драйверам Leadshine EM2RS с несущественными различиями в командах. STEP+DIR есть.

Доки на них легко гуглятся и через переводчик более-менее нормально читаются, но нужен опыт работы с Modbus и с ШД и сервоприводами - в доках до разъяснения подобных "очевидностей" как обычно не опускаются.
Где купить тоже сами гуглите, при покупке у местных продавцов обязательно уточняйте наличие/сроки, ибо драйвера редкие и практически ни у кого на складах нет.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Ответить

Вернуться в «Двигатели и шпиндели»