Синхронизация работы шаговика по датчику положения.

Контроллеры, драйверы, датчики, управляющие устройства.
Leon1
Новичок
Сообщения: 3
Зарегистрирован: 08 фев 2020, 18:15
Репутация: 0
Настоящее имя: Leonid
Контактная информация:

Синхронизация работы шаговика по датчику положения.

Сообщение Leon1 »

Ардуино уно.+ шильд cnc 3.00 + прошивка grbl + Grbl Controller
Нужно чтобы шаговик Z крутил только вперёд и ни шагу назад. (чреватой поломкой механизма)
В связи с постоянным направлением вращения и длительным периодом работы Z возможна разсинхронизация работы механизма относительно заданных координат. Я думаю что в коде лучше сразу прописать лишнее количество шагов, про запас и периодически синхронизировать двигатель Z по датчику (геркон, фотодиод, хол - не важно).
Как это можно реализовать чтобы по необходимости лишние шаги двигателя Z урезались и это не влияло на работу, чтобы небыло заметно в работе всех трех двигателей?
По концевым выключателям? Но это будет влиять на весь процес работы. Может где прописать в прошивке, указать только одно направление вращения и урезание количества шагов по сигналу по датчику касания? Или есть проще варианты.
bolek4321
Мастер
Сообщения: 217
Зарегистрирован: 27 сен 2014, 07:59
Репутация: 38
Контактная информация:

Re: Синхронизация работы шаговика по датчику положения.

Сообщение bolek4321 »

Непонятна причина опасений.
1. вращение в 1 сторону - механический люфт выбран.
2. вход DIR подключить к нужному для задания правильного направления потенциалу. Или посадить его на 0, а направление - сменой концов обмотки.
3. шаговик берут именно потому, что ему не нужна обратная связь по положению, если он работает без перегрузки и не пропускает шаги.
Leon1
Новичок
Сообщения: 3
Зарегистрирован: 08 фев 2020, 18:15
Репутация: 0
Настоящее имя: Leonid
Контактная информация:

Re: Синхронизация работы шаговика по датчику положения.

Сообщение Leon1 »

1. С DIR разобрался и смену концов обмоток не нужно, только установить нужный потенциал на DIR. Удалил контакт который входит в мамку ардуины на самом драйвере 4988 и установил перемычку с DIR на минус (противоположный контакт). Если кому направление вращение не подойдёт - можно через резистор на + питание 3,3В. (тоже на драйвере). Это самый надёжный вариант. Ни чел фактор ни мозг ардуины самостоятельно не сменит направление вращения.
2. Синхронизация работы нужна потому что много если: если без перегрузки, если не пропускает шаги, если правильно шаг выбран и т.д. К примеру. Шаговик вращает диск, для полного оборота 360град. 200шагов. Даже если на 1000 шагов будет пропускать по одному, то через 200 000 это уже будет 200 пропущеных шагов, полный оборот на 360град. будет потерян. Работа шаговика устроена так что количество шагов он никогда не сделает больше чем ему задали, зато пропустить шаг может. И в любом случае - хоть какая то есть вероятность пропуска шага. Если крутить вправо-влево, туда шаг пропустил, сюда шаг пропустил - результат пропуска вычитается, в среднем будет нормально. А если крутить только в одну сторону - каждый пропуск шага суммируется и при большом количестве шагов в одном направлении и случайном пропуске шага, хоть 1 из 1000 со временем приведёт к большой погрешности, что не допускается, последствие -разсинхронизация и поломка механизма. Вот по этому и задался вопросом периодической синхронизацией.
Аватара пользователя
Rom327
Почётный участник
Почётный участник
Сообщения: 2989
Зарегистрирован: 03 апр 2015, 13:23
Репутация: 437
Настоящее имя: Роман
Откуда: Подольск
Контактная информация:

Re: Синхронизация работы шаговика по датчику положения.

Сообщение Rom327 »

Leon1 писал(а):Или есть проще варианты.
Может использовать ШД со встроенной обратной связью (сервопривод) ?
Это сугубо мое мнение, могу и ошибаться...
https://vk.com/rom327
GRBL настройки: http://blogandbux.blogspot.com/2018/07/ ... revod.html
G коды: http://3d-stanki.ru/spravochnik/program ... stankov-2/
bolek4321
Мастер
Сообщения: 217
Зарегистрирован: 27 сен 2014, 07:59
Репутация: 38
Контактная информация:

Re: Синхронизация работы шаговика по датчику положения.

Сообщение bolek4321 »

Leon1 писал(а):2. Синхронизация работы нужна потому что много если: если без перегрузки, если не пропускает шаги, если правильно шаг выбран и т.д
Неубедительно. ШД правильно работает именно при учете всех этих факторов, поэтому его берут не поковыряв пальцем в носу, а после расчетов. Если не хочется считать - нужно взять 86-й а не 28-й габарит (условно говоря), ну и драйвер соответствующий. Все остальное - припарки.
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Синхронизация работы шаговика по датчику положения.

Сообщение Serg »

Leon1 писал(а):1. С DIR разобрался и смену концов обмоток не нужно, только установить нужный потенциал на DIR. Удалил контакт который входит в мамку ардуины на самом драйвере 4988 и установил перемычку с DIR на минус (противоположный контакт). Если кому направление вращение не подойдёт - можно через резистор на + питание 3,3В. (тоже на драйвере). Это самый надёжный вариант. Ни чел фактор ни мозг ардуины самостоятельно не сменит направление вращения.
Тот-же человеческий фактор точно также может поменять фазы двигателя...
Leon1 писал(а):Ардуино уно.+ шильд cnc 3.00 + прошивка grbl + Grbl Controller
Leon1 писал(а):Может где прописать в прошивке, указать только одно направление вращения и урезание количества шагов по сигналу по датчику касания? Или есть проще варианты.
Вы сами себя жёстко ограничили в вариантах, поэтому их у вас только два - переделывать прошивку grbl или использовать сервопривод.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Leon1
Новичок
Сообщения: 3
Зарегистрирован: 08 фев 2020, 18:15
Репутация: 0
Настоящее имя: Leonid
Контактная информация:

Re: Синхронизация работы шаговика по датчику положения.

Сообщение Leon1 »

Спасибо.
Чел. фактор - в железо и схему никто больше лезть не будет. Имелось в виду типа не ту кнопку нажать, не туда клацнуть в программе.

Было бы не плохо. Ардуинка должна это делать. Комп, Grbl Controller, послал команду о количестве шагов, а ардуинка включила ШД, получила необходимое количество импульсов, сравнила и выкл. ШД. Вот только как это сделать, вшить в мозг ардуине чтобы она не шаги посылала, а импульсы считала и управляла ШД (вкл, выкл, скорость). При этом остальные два ШД должны работать по шагах. Нужны изменения в прошивке ардуины, изменить прошивку grbl. Я в этом не спец. Но если носом ткнуть что куда, буду учится.

Прошивка под grbl - 3 ШД. Под 2 ШД и сервопривод - не встречал. Может кто видел, подскажите пожалуйста. А если прошивка под 3 ШД и один из них будет с обратной связью - то это вообще супер.
Аватара пользователя
inFamous
Мастер
Сообщения: 801
Зарегистрирован: 04 янв 2018, 15:33
Репутация: 278
Контактная информация:

Re: Синхронизация работы шаговика по датчику положения.

Сообщение inFamous »

Leon1 писал(а):Спасибо.
Чел. фактор - в железо и схему никто больше лезть не будет. Имелось в виду типа не ту кнопку нажать, не туда клацнуть в программе.

Было бы не плохо. Ардуинка должна это делать. Комп, Grbl Controller, послал команду о количестве шагов, а ардуинка включила ШД, получила необходимое количество импульсов, сравнила и выкл. ШД. Вот только как это сделать, вшить в мозг ардуине чтобы она не шаги посылала, а импульсы считала и управляла ШД (вкл, выкл, скорость). При этом остальные два ШД должны работать по шагах. Нужны изменения в прошивке ардуины, изменить прошивку grbl. Я в этом не спец. Но если носом ткнуть что куда, буду учится.

Прошивка под grbl - 3 ШД. Под 2 ШД и сервопривод - не встречал. Может кто видел, подскажите пожалуйста. А если прошивка под 3 ШД и один из них будет с обратной связью - то это вообще супер.
Придумали себе лишний гемморой. Шаговик с энкодером, и то, чтобы спать спокойнее, а так правильно просчитанного шаговика достаточно.
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Синхронизация работы шаговика по датчику положения.

Сообщение Serg »

Leon1 писал(а):Чел. фактор - в железо и схему никто больше лезть не будет.
Ну тогда самый надёжный вариант - это не цеплять внешние резисторы на DIR, а просто поменять фазу, если понадобится. :)
Leon1 писал(а):Прошивка под grbl - 3 ШД. Под 2 ШД и сервопривод - не встречал. Может кто видел, подскажите пожалуйста. А если прошивка под 3 ШД и один из них будет с обратной связью - то это вообще супер.
Гугл - ваше всё! Есть сервоприводы, которые управляются как шаговые.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
shur
Опытный
Сообщения: 158
Зарегистрирован: 09 сен 2011, 22:39
Репутация: 30
Контактная информация:

Re: Синхронизация работы шаговика по датчику положения.

Сообщение shur »

Leon1 писал(а):В связи с постоянным направлением вращения и длительным периодом работы Z возможна разсинхронизация работы механизма относительно заданных координат
Leon1 писал(а):2. Синхронизация работы нужна потому что много если: если без перегрузки, если не пропускает шаги, если правильно шаг выбран и т.д. К примеру. Шаговик вращает диск, для полного оборота 360град. 200шагов. Даже если на 1000 шагов будет пропускать по одному, то через 200 000 это уже будет 200 пропущеных шагов, полный оборот на 360град. будет потерян. Работа шаговика устроена так что количество шагов он никогда не сделает больше чем ему задали, зато пропустить шаг может. И в любом случае - хоть какая то есть вероятность пропуска шага. Если крутить вправо-влево, туда шаг пропустил, сюда шаг пропустил - результат пропуска вычитается, в среднем будет нормально. А если крутить только в одну сторону - каждый пропуск шага суммируется и при большом количестве шагов в одном направлении и случайном пропуске шага, хоть 1 из 1000 со временем приведёт к большой погрешности, что не допускается, последствие -разсинхронизация и поломка механизма. Вот по этому и задался вопросом периодической синхронизацией.
Делайте обратную связь по положению механизма . Линейный или дисковый энкодер - зависит от вашей механики , отслеживайте положение механики по энкодеру и подавайте импульсы СТЕП до
необходимого положения энкодера .
Ответить

Вернуться в «Электроника»