Автор Тема: Поворотное устройство на шаговых двигателях с интерфейсом Ethernet  (Прочитано 14655 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн RA3SAD Alexey

  • Постоялец
  • ***
  • Сообщений: 140
  • Репутация: +51/-1
  • QRA: KO94VS
По просьбе коллег выкладываю свои наработки по поворотному устройству на шаговых двигателях с интерфейсом Ethernet.
Контроллер ПУ выполнен на готовой плате из Китая. Сердцем контроллера является МК STM32F407VET6.
Особенностью ПУ является отсутствие каких-либо датчиков углов поворота. Контроль осуществляется подсчетом шагов двигателей (как в ЧПУ) с учетом редукторов.
В качестве привода используются шаговые двигатели NEMA23 (1.8 град./шаг) совместно с редукторами NMRV типоразмера 030 с передаточным числом 1:80.
Проверенные в работе драйверы ШД - TB6600, DM556 с выставленным микрошагом 3200 на один оборот. Питание двигателей - 28-30В.
Управление осуществляется с помощью написанного ПО. В этом ПО реализован собственно протокол командно-информационного обмена, взаимодействие с внешним софтом (встроен Rotctl сервер и клиент подключения к драйверу Орбитрона DDE2IP). Сетевой обмен между клиентом и контроллером происходит асинхронно по UDP, сообщения о состоянии ОПУ приходят в режиме Real time с периодичностью примерно 20 fps.
В контроллере реализовано два типа выполнения команд - задача (task) и ручное управление (manual). В обоих случаях работает плавный разгон и торможение. Выполнение команд по осям производится независимо друг от друга. Каждая ось может вращаться в любой момент времени.
Настройки сети контроллера по умолчанию - IP 192.168.34.50, MASK 255.255.255.0, GATEWAY 192.168.34.254
При первом запуске на ПК должен быть установлен IP 192.168.34.10
Софт под Windows выложу чуть позже, не пролазит по объему. Для Linux версии необходимо установить недостающие библиотеки Qt (будут ошибки при запуске на их отсутствие в системе), сборку производил в старой Ubuntu 18.04.6
За неделю непрерывного тестирования 24/7 в режиме сопровождения устройство себя не убило (ничего не свернуто и не порвано)
Небольшое видео работы устройства тут - https://www.youtube.com/watch?v=ZDmWg2Do7oI
« Последнее редактирование: 12 Апрель 2023, 09:41:34 от RA3SAD Alexey »

Оффлайн rw2wr

  • Старожил
  • ****
  • Сообщений: 346
  • Репутация: +47/-34
Алексей, спасибо! Ждем софт под окна.

Оффлайн RA3SAD Alexey

  • Постоялец
  • ***
  • Сообщений: 140
  • Репутация: +51/-1
  • QRA: KO94VS
Под Win положил пока тут - https://r3s.su/stm/STMRotator-SM-client.zip
Драйвер для Орбитрона DDE2IP (последняя версия) - http://r3s.su/stm/dde2ip.rar , инструкция как поставить - https://r3s.su/index.php?/topic/377-orbitron-%D0%B4%D1%80%D0%B0%D0%B9%D0%B2%D0%B5%D1%80-dde2ip/&ct=1681282291
« Последнее редактирование: 12 Апрель 2023, 09:52:52 от RA3SAD Alexey »

Оффлайн rw2wr

  • Старожил
  • ****
  • Сообщений: 346
  • Репутация: +47/-34
Спасибо! Жалко китайцы так оперативно не работают...

Оффлайн Sergi

  • Модератор форума
  • Ветеран
  • *****
  • Сообщений: 3836
  • Репутация: +723/-278
  • FD - The contest
  • QRA: KN69
Особенностью ПУ является отсутствие каких-либо датчиков углов поворота. Контроль осуществляется подсчетом шагов двигателей (как в ЧПУ) с учетом редукторов.

Совсем никаких калибровочных концевика или геркона/оптопары, все только на том факте, что червяк в nrmv не провернется?
--... ...-- -.. . ..- --.. ..--- .... --..

Оффлайн RA3SAD Alexey

  • Постоялец
  • ***
  • Сообщений: 140
  • Репутация: +51/-1
  • QRA: KO94VS
Я принял за аксиому, что с таким передаточным числом провернуть червяк не сломав не возможно

Оффлайн R1TX

  • Ветеран
  • *****
  • Сообщений: 702
  • Репутация: +167/-27
  • ex RA1TEX
  • QRA: KO58NM
Спасибо Алексей, за разработку очень нужная штука и не только спутникам.
Здесь просто не хватает концевых датчиков. От излишнего наклона вниз . И перехлеста кабеля.
Алексей 73!

Оффлайн R1TX

  • Ветеран
  • *****
  • Сообщений: 702
  • Репутация: +167/-27
  • ex RA1TEX
  • QRA: KO58NM
хотя наверное можно их приспособить под сигнал DIR контроллера.
Алексей 73!

Оффлайн RA3SAD Alexey

  • Постоялец
  • ***
  • Сообщений: 140
  • Репутация: +51/-1
  • QRA: KO94VS
хотя наверное можно их приспособить под сигнал DIR контроллера.
Я сделаю по возможности вход для внешнего сигнала экстренной остановки механизма "на землю".

Оффлайн rw2wr

  • Старожил
  • ****
  • Сообщений: 346
  • Репутация: +47/-34
В программах управления чпу станками есть возможность установить софт лимиты по всем осям. Может и здесь тоже можно прописать ограничения на определенные углы? Ну и концевики никто не отменял.

Оффлайн RA3SAD Alexey

  • Постоялец
  • ***
  • Сообщений: 140
  • Репутация: +51/-1
  • QRA: KO94VS
В программах управления чпу станками есть возможность установить софт лимиты по всем осям. Может и здесь тоже можно прописать ограничения на определенные углы? Ну и концевики никто не отменял.
В ПО клиенте есть ограничение на поворот при выполнении задачи. Оно задается в настройках. Если сформировалась задача и углы превышают предельно допустимые, то дальше них поворота не будет. При ручном управлении ограничения умышленно нет, это сделано для удобства выставки на "ноль" или произвольного тестового вращения. Также при ручном вращении команда отправляется с заданной периодичностью (несколько раз в сек) и если повторная команда на ручное вращение не пришла вовремя - происходит полная остановка механизма, это сделано для предотвращения неконтролируемого движения при потере связи ПО <---> Контроллер.

Оффлайн RC3UE

  • Ветеран
  • *****
  • Сообщений: 1515
  • Репутация: +282/-72
  • 13 el F9FT/21 el F9FT
  • QRA: LO07NG
Не надо никаких "конечников". Это дополнительная точка отказа.
Вот представьте себе - поворотка стоИт на "макушке" 20м мачты, в механизм попала вода и "конечник" "подгнил".
Продолжение требуется?

Вот этого вполне достаточно -
В ПО клиенте есть ограничение на поворот при выполнении задачи....Также при ручном вращении команда отправляется с заданной периодичностью (несколько раз в сек) и если повторная команда на ручное вращение не пришла вовремя - происходит полная остановка механизма, это сделано для предотвращения неконтролируемого движения при потере связи ПО <---> Контроллер.
Ну ещё не забыть отключающую ВСЁ питание "красную кнопку" сделать. :)

P.S. В своё время работал в КИПиА. Так вот, в цехах с "агрессивной средой" самой частой причиной отказа исполнительных механизмов (ПР1М и МЭО) были те самые пресловутые "конечники".
Но без них, к сожалению, там было не обойтись..
73! Александр RC3UE (ex RA3UJ, UA3UES)

Оффлайн R1TX

  • Ветеран
  • *****
  • Сообщений: 702
  • Репутация: +167/-27
  • ex RA1TEX
  • QRA: KO58NM
А может каким то образом попасть вода в редуктор и замерзнуть там.
Сцена первая : Мы включили поворотку начали вращать с нуля до 45 градусов элевации, видим а у нас никуда не крутится ну и оставили до оттепели.
Сцена вторая: Система думает что у нее угол элевации например 45 градусов, а мы по человеческому фактору про это тупо забыли видим на экране что у нас 45 градусов и нажимаем поставить в горизонт. Оттепель оттаяло и антенна радостно крутит до упора вниз... бум и дырка в крыше? =)
Для противников концевиков хочу сказать - когда шпиндель на 18т оборотов об стол фрезой фигакнет при ошибке нуля по Z - больно и столу и фрезе и шпинделю и кошельку.
-и самое главное: никто не мешает к этому замечательному приборчику прикрутить мемс гироскоп и забыть про все "влажные" проблемы =)
Алексей 73!

Оффлайн RA3SAD Alexey

  • Постоялец
  • ***
  • Сообщений: 140
  • Репутация: +51/-1
  • QRA: KO94VS
Для элевации сделать концевик не проблема механически. Для азимута надо подумать как лучше. В идеале, конечно, проблему описанную выше решат сервоприводы вместо шаговиков. У них есть собственный энкодер на оси. Но это уже другие $$$. Ещё есть драйверы шд с выходом сигнала alarm, например по току. Если редуктор замёрз ток резко возрастет.
В этот проект можно добавить вход концевиков по осям. Применение энкодеров я бы выделил отдельно. В таком случае счёт шага практически не нужен.
« Последнее редактирование: 12 Апрель 2023, 21:40:12 от RA3SAD Alexey »

Оффлайн RX3DR Александр

  • Модератор
  • Ветеран
  • *****
  • Сообщений: 5048
  • Репутация: +516/-91
  • команда UF3D
  • QRA: KO85XM
Есть шаговики с энкодерами , гибридные .
А как поворотка понимает после отключения где она сейчас стоит (угол).
От чего отталкивается изначально?
ex RX3DUR-UV3DUR