USBCNC GRBL 4 оси (6 осей!)

Контроллеры, драйверы, датчики, управляющие устройства.
Микола
Новичок
Сообщения: 38
Зарегистрирован: 21 июл 2014, 16:59
Репутация: 3
Настоящее имя: Николай
Откуда: Московская обл.
Контактная информация:

Re: USBCNC GRBL 4 оси

Сообщение Микола »

То что накопал на сегодня.

При $1 = 0 сигнал ENABLE вообще непонятно как себя ведет при этом $4 (инверсия ENABLE) также не меняет сразу полярность и не устанавливается постоянно. С выводом ENABLE меняет статус вывод PC13 (на нем светодиод) но не синхронно а своей жизнью типа через раз (выполнение g0 или g1). Ярослав, посмотрите пожалуйста по возможности.

selenur, хорошая утилита со звучным названием предполагает и совокупность возможностей - можете сделать сразу 6 осей и исчерпать потребности многих. И момент, не знаю к кому вопрос - не сохраняются параметры движения 4 оси.

Полноценной поддержкой 5 и 6 осей вы приобретете поклонников из разряда ювелирки и мелочевки. Ювелирка многоосевая отдельная большая группа, которым мало того что приходится кам системы подбирать так еще и с контроллерами мучаются (бюджет, кривизна).
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4605
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1622
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

Re: USBCNC GRBL 4 оси

Сообщение selenur »

Микола писал(а):selenur, хорошая утилита со звучным названием предполагает и совокупность возможностей - можете сделать сразу 6 осей и исчерпать потребности многих.
Сейчас основной код приведу в порядок, а потом добавлю вывод и остальных осей, тем более пока работа с ними у Ярослава ещё в процессе ;-)
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Аватара пользователя
nebelnoir
Почётный участник
Почётный участник
Сообщения: 65
Зарегистрирован: 24 апр 2014, 20:28
Репутация: 50
Настоящее имя: Ярослав Власов
Откуда: Москва
Контактная информация:

Re: USBCNC GRBL 4 оси

Сообщение nebelnoir »

Мне кажеся что в наших шаговых двигателях микрошаг нужен для плавности хода и уменьшения резонансных явлений. Использовать его для повышения точности (разрешения) - это в некотором роде трюкачество, пригодное в основном для устройств с малыми нагрузками (лазерный резак, 3Д принтер). Небольшая статья на эту тему
iMaks-RS писал(а):На Дисковери часом нет готового порта, хотя-бы 3 оси..
Пока нет.
А какой именно дисковери? (407?)
Микола писал(а):P.S. ставил я задержку отключения ENABLE в 0, он также отключается только сразу. Сегодня еще поиграюсь - светодиод воткну, отпишусь по результатам.
Отпишитесь обязательно! Желательно подробно. Всё поправлю.
Микола писал(а):Тут нет обще принятого сигнала ENABLE для силовой электроники? Кнопкой включаем станок - разрешение на приводы, Выключаем или аварийная остановка - запрет для силовой электроники
Это можно собрать отдельной цепью, сам контроллер ЧПУ в этом случае участвовать не должен.
Аватара пользователя
nebelnoir
Почётный участник
Почётный участник
Сообщения: 65
Зарегистрирован: 24 апр 2014, 20:28
Репутация: 50
Настоящее имя: Ярослав Власов
Откуда: Москва
Контактная информация:

Re: USBCNC GRBL 4 оси

Сообщение nebelnoir »

Микола писал(а):При $1 = 0 сигнал ENABLE вообще непонятно как себя ведет при этом $4 (инверсия ENABLE) также не меняет сразу полярность и не устанавливается постоянно. С выводом ENABLE меняет статус вывод PC13 (на нем светодиод) но не синхронно а своей жизнью типа через раз (выполнение g0 или g1). Ярослав, посмотрите пожалуйста по возможности.
Обязательно!
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4605
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1622
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

Re: USBCNC GRBL 4 оси

Сообщение selenur »

Микола писал(а):И момент, не знаю к кому вопрос - не сохраняются параметры движения 4 оси
Мой косяк был:
CoreGRBL.zip
(54.73 КБ) 507 скачиваний
вроде теперь нормально.
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Аватара пользователя
nebelnoir
Почётный участник
Почётный участник
Сообщения: 65
Зарегистрирован: 24 апр 2014, 20:28
Репутация: 50
Настоящее имя: Ярослав Власов
Откуда: Москва
Контактная информация:

Re: USBCNC GRBL 4 оси

Сообщение nebelnoir »

Микола писал(а):При $1 = 0 сигнал ENABLE вообще непонятно как себя ведет при этом $4 (инверсия ENABLE) также не меняет сразу полярность и не устанавливается постоянно. С выводом ENABLE меняет статус вывод PC13 (на нем светодиод) но не синхронно а своей жизнью типа через раз (выполнение g0 или g1). Ярослав, посмотрите пожалуйста по возможности.
Сергей ошибся, не $1=0, а $1=255.
Я проверил, всё работает и $1 и $4.
PC13 - это для отладки. Этот выход переключается каждый раз, когда контроллер получает команду. Если мешает, то это можно отключить в настройках прошивки.
Если что-то не получается, пишите что вы делаете подробно! Проверьте ножку выхода сигнала ENABLE - это PA15
Микола
Новичок
Сообщения: 38
Зарегистрирован: 21 июл 2014, 16:59
Репутация: 3
Настоящее имя: Николай
Откуда: Московская обл.
Контактная информация:

Re: USBCNC GRBL 4 оси

Сообщение Микола »

nebelnoir писал(а):Мне кажеся что в наших шаговых двигателях микрошаг нужен для плавности хода и уменьшения резонансных явлений. Использовать его для повышения точности (разрешения) - это в некотором роде трюкачество, пригодное в основном для устройств с малыми нагрузками (лазерный резак, 3Д принтер). Небольшая статья на эту тему
Не кажется:) Микрошаг с появлением шим преследует одну цель - уменьшение резонансных явлений шаговика, об этом честно говорят производители электроники и это не секрет. Уменьшенная дискретность по сути побочный эффект но с учетом современных драйверов и большим моментом шаговиков эту дискретность используют избегая люфты редукторов даже при наличии некоторой непропорциональности/нелинейности положения вала между полюсамии. Контроллер при этом хранит дистанцию и текущее положение, каждый раз сваливая вал к полюсу(хаотично) там набежит километр.

Я не спорю, это негласная информация (правил хорошего тона) промышленного общепринятого поведения и построения машин с синхронным управлением осей. В автоматах допускается отключать монопривод (сигнал ENABLE) с соответствующими временными параметрами и если стопорящий момент шаговика держит нагрузку, для серв такой режим делают оснащая жопу ЭМ тормозом. Утрирую, но попробуйте отключить ENABLE на вертикальном приводе со скоростным винтом (шагом 10-15мм) а в случае с ремнем вообще беда - нагрузка скатиться вниз.
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4605
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1622
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

Re: USBCNC GRBL 4 оси

Сообщение selenur »

nebelnoir писал(а):Сергей ошибся, не $1=0, а $1=255.
Мой косяк, невнимательно прочитал...... ;-)
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Аватара пользователя
nebelnoir
Почётный участник
Почётный участник
Сообщения: 65
Зарегистрирован: 24 апр 2014, 20:28
Репутация: 50
Настоящее имя: Ярослав Власов
Откуда: Москва
Контактная информация:

Re: USBCNC GRBL 4 оси

Сообщение nebelnoir »

Микола писал(а):Утрирую, но попробуйте отключить ENABLE на вертикальном приводе со скоростным винтом (шагом 10-15мм) а в случае с ремнем вообще беда - нагрузка скатиться вниз.
Согласен полностью, даже без "Утрирую" :)
Аватара пользователя
nebelnoir
Почётный участник
Почётный участник
Сообщения: 65
Зарегистрирован: 24 апр 2014, 20:28
Репутация: 50
Настоящее имя: Ярослав Власов
Откуда: Москва
Контактная информация:

Re: USBCNC GRBL 4 оси

Сообщение nebelnoir »

Проблема с сигналом ENABLE в другом: задержка в GRBL добавляется только при выключении! При включении почему-то нет.
2018-12-13 16-37-53 Session 1 - PulseView.png
2018-12-13 16-37-53 Session 1 - PulseView.png (5.26 КБ) 2784 просмотра
(на картинке $1=200).
А ведь бывает так, что сигнал ENABLE заведен через реле или сам по себе драйвер шд имеет задержку на включение после своего сигнала ENABLE.
Но для этого в прошивке контроллера я добавил STP_DRIVERS_ENABLE_DELAY в config.h :D
Аватара пользователя
nebelnoir
Почётный участник
Почётный участник
Сообщения: 65
Зарегистрирован: 24 апр 2014, 20:28
Репутация: 50
Настоящее имя: Ярослав Власов
Откуда: Москва
Контактная информация:

Re: USBCNC GRBL 4 оси

Сообщение nebelnoir »

Микола писал(а):ENABLE в пром драйверах шаговиков а также в сервах в режиме (position mode) приводит к сбросу и инициализации и имеет определенное время до 1-2 сек, особенно цифровые с проверкой цепей, напряжения питания и т.д. перед тем как пульнуть ШИМ 50-100В с токами в неск А на мотор. Такая же история происходит в интегральных драйверах типа TB6560, TB6600, THB6128, THB7128.
В TB6600 есть ENABLE и RESET. По моему установка и сброс ENABLE не должна приводить к сбросу микрошага иначе тогда непонятна сама идея данной опции в принципе.
2018-12-13 16-59-53 TB6600HG_datasheet_en_20160610.pdf (ЗАЩИТА) - Adobe Acrobat Reader DC.png (2779 просмотров) <a class='original' href='./download/file.php?id=152579&mode=view' target=_blank>Загрузить оригинал (95.76 КБ)</a>
Микола
Новичок
Сообщения: 38
Зарегистрирован: 21 июл 2014, 16:59
Репутация: 3
Настоящее имя: Николай
Откуда: Московская обл.
Контактная информация:

Re: USBCNC GRBL 4 оси

Сообщение Микола »

selenur писал(а):
nebelnoir писал(а):Сергей ошибся, не $1=0, а $1=255.
Мой косяк, невнимательно прочитал...... ;-)
При $1=255 сигнал ENABLE в стабильном состоянии. Надо наверное комментарий поправить в утилите у "едита" этого параметра. 4 ось сохранилась.

Есть момент в переключении сигнала ENABLE. При изменении полярности $4=0/1 сигнал переключается не сразу а с приходом первой G команды.

Я поясню момент - я не нашел в GRBL такого понятия как включение станка. Наверное концепция иная.
Я пытаюсь подобрать условия формирования "включения/выключения станка". Т.Е. для любого станочника это привычный термин - включение станка подразумевает включение сигнала ENABLE - включаются приводы, кто-то освещение вешает, кто-то еще что. Наступает долгий перерыв и есть понятие выключение станка - отключение приводов и т.д. моторчики не греются отдыхают и т.д. При этом ни контроллер ни управляющий компьютер никто выключать не собирается. Мало того на управляющем компе можно порисовать, чертеж подправить. Начинается работа - "включили" станок, инициализировали оси и в путь. Также часто кнопка аварийной остановки подразумевает "выключение станка" - немедленное отключение приводов. Поясните мне пожалуйста этот момент, такое в GRBL не подразумевается? Можно так сделать что при $1=255 ввод команды $4 немедленно выставляет сигнал. С одной стороны полная эмуляция привычного "включения/выключения" станка, возможность реакции кнопки аварийной остановки (со стороны интерфейсной части) и не нарушение протокола GRBL?
Микола
Новичок
Сообщения: 38
Зарегистрирован: 21 июл 2014, 16:59
Репутация: 3
Настоящее имя: Николай
Откуда: Московская обл.
Контактная информация:

Re: USBCNC GRBL 4 оси

Сообщение Микола »

nebelnoir писал(а): По моему установка и сброс ENABLE не должна приводить к сбросу микрошага иначе тогда непонятна сама идея данной опции в принципе
Состояние счетчика не меняется, но посмотрите на графиках соответствие сигнала выходного тока на двигатель и ENABLE.
Вот здесь загвоздка - в идеальных условиях(без нагрузки) вероятность что двиг встанет в свое положение высока, но в жизни как всегда. Представьте боковую фрезеровку - проход по X фреза давит на Y с отключенным двигателем, если двигатель и не выдавит за пределы полного шага то при включении может перескочить, на 3D принтерах такая же картина несмотря на малую нагрузку, это как факт - ENABLE ардуиновский GRBL не используют когда запариваются бороться со ступеньками.
Забыл добавить - я ни разу не видел использования внешнего сброса. Ставят RC зарядную цепочку, происходит общий сброс чипа с его логикой при включении. В каких-то чипах его нет. Но это не суть, мож я не совсем прав по поводу инициализации драйверов с этим сигналом но практика использования заставляет поступать как описал выше - неведомо куда встанет шаговик с отключенным питанием если его подпирает винт например с виброгасящей(эластичная вставка) муфтой.
Последний раз редактировалось Микола 13 дек 2018, 18:10, всего редактировалось 1 раз.
Аватара пользователя
nebelnoir
Почётный участник
Почётный участник
Сообщения: 65
Зарегистрирован: 24 апр 2014, 20:28
Репутация: 50
Настоящее имя: Ярослав Власов
Откуда: Москва
Контактная информация:

Re: USBCNC GRBL 4 оси

Сообщение nebelnoir »

Если ты хочешь реализовать это в ручную, то лучше всего поставить отдельную кнопку, разрывающую цепь (можно последовательно с кнопкой аварийной остановки).
Если ты хочешь сделать это автоматом, то для этого и предназначен сигнал PA15 контроллера (STEPPER_DISABLE). Предполагается, что команды посылаются программой отсылающей команды (например UGS) непрерывно. Подразумевается, что буфер контроллера не будет пустовать до самого конца исполняемого Gкода. Поэтому сигнал ENABLE контроллера не будет отключаться до конца выполнения программы! Однако есть известная проблема (если ее можно назвать проблемой) с G4 (задержка). При задержке ENABLE отключается.

Команды $ предполагают настройку станка единожды при его создании или при внесении изменений в конструкцию. Они не для управления.
Аватара пользователя
nebelnoir
Почётный участник
Почётный участник
Сообщения: 65
Зарегистрирован: 24 апр 2014, 20:28
Репутация: 50
Настоящее имя: Ярослав Власов
Откуда: Москва
Контактная информация:

Re: USBCNC GRBL 4 оси

Сообщение nebelnoir »

Микола писал(а):Состояние счетчика не меняется, но посмотрите на графиках соответствие сигнала выходного тока на двигатель и ENABLE.
Что ты имеешь ввиду, несовсем понял?

В итоге я пока не понимаю проблему. Напиши как должно быть и как есть. Почему не устраивает как есть?
Как я понимаю из того что ты написал: при старте программы сигнал ENABLE должен включить двигатели, после полного выполнения программы отключить. Отключение во время работы не допускается. Так? Сейчас по-моему так и есть за исключением G4.
Микола
Новичок
Сообщения: 38
Зарегистрирован: 21 июл 2014, 16:59
Репутация: 3
Настоящее имя: Николай
Откуда: Московская обл.
Контактная информация:

Re: USBCNC GRBL 4 оси

Сообщение Микола »

nebelnoir писал(а):
Микола писал(а):Состояние счетчика не меняется, но посмотрите на графиках соответствие сигнала выходного тока на двигатель и ENABLE.
Что ты имеешь ввиду, несовсем понял?

В итоге я пока не понимаю проблему. Напиши как должно быть и как есть. Почему не устраивает как есть?
Как я понимаю из того что ты написал: при старте программы сигнал ENABLE должен включить двигатели, после полного выполнения программы отключить. Отключение во время работы не допускается. Так? Сейчас по-моему так и есть за исключением G4.
>> Что ты имеешь ввиду, несовсем понял?
На двигатель не подается ток (свободное вращение вала хоть и со стопорением), любой подпор в какую либо сторону и двиг перескочит на шаг или N шагов + состояние счетчика (часть шага). Даж не хочу зарыватьться, я там дописал в ответе.

По поводу ENABLE. Возможно в GRBL нет такого. Есть привычные состояния контроллеров ЧПУ - станок включен и выключен, при "выключенном" станке контроллер работает можно менять параметры/настройки, для стоек можно загружать файлы. Такая кнопка есть во всех контроллерах ЧПУ начиная от LinuxCNC, Mach3 и до любой стойки.
Я понимаю, что упомянутые контроллеры имеют интерфейсную часть и я соответственно с интерфейсной части могу сформировать сигнал, но раз речь о контроллере движения чтоб не городить рядом с USB проводом дополнительный провод реализовать нормальный сигнал ENABLE (включение и выключение станка, т.е. его силовой и приводной части). Тем более что по моей статистике его в таком исполнении никто не использует. Возможно это нарушит стандарт GRBL, не знаю - может с ребятами связаться и реализовать нормальную схему. Я не привередничаю - многим менял различные контроллеры USB от китайских до российского производства переводя на mach3 со стареньким компом. Я о людях которые не хобби занимаются - они живут и зарабатывают своим инструментом. Просто описываю одну из потребностей. Скажите что нельзя такого - значит нельзя, пусть этот вывод болтается и никем не используется :)
Мож я не правильно изьясняюсь - в mach3 кнопка RESET, на стойках STOP. Т.Е. у контроллера есть соcтояние типа stop при этом он обрабатывает многие команды не связанные с перемещением.
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4605
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1622
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

Re: USBCNC GRBL 4 оси

Сообщение selenur »

Есть ещё выход вкл/выключения охлаждения, М командами управляется, им можно управлять (вместо enable), но нужно проверить не выключают ли его какие либо ситуации.
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Микола
Новичок
Сообщения: 38
Зарегистрирован: 21 июл 2014, 16:59
Репутация: 3
Настоящее имя: Николай
Откуда: Московская обл.
Контактная информация:

Re: USBCNC GRBL 4 оси

Сообщение Микола »

selenur писал(а):Есть ещё выход вкл/выключения охлаждения, М командами управляется, им можно управлять (вместо enable), но нужно проверить не выключают ли его какие либо ситуации.
можно конечно, но это концептуальная вещ. Состояние стоп - сигнал ENABLE снят, настраивай, загружай файлы и т.д. до нехочу. Включаем - сигнал ENABLE устанавливается, включается силовая электроника, при этом включаются новые параметры и настройки загнанные в контроллер. Попробовал сейчас "ОСТАНОВКА/ПРОДОЛЖИТЬ" нет реакции на вывод.
Аватара пользователя
nebelnoir
Почётный участник
Почётный участник
Сообщения: 65
Зарегистрирован: 24 апр 2014, 20:28
Репутация: 50
Настоящее имя: Ярослав Власов
Откуда: Москва
Контактная информация:

Re: USBCNC GRBL 4 оси

Сообщение nebelnoir »

Да нет, всё можно. Но если так, то для этого должна быть специальная команда из интерфейса. Для этого придется убеждать создателя GRBL, чтобы он согласился с такой концепцией, иначе бессмысленно - никто не будет менять интерфейсы (коих очень много) под нас.
Проблема кажется ясна. Думал сделать $1=255 и добавить отключение при исполнении команды M2. Но нет, тогда нельзя сделать несколько деталей подряд.
Я так понимаю требуется следующее грубо говоря: включить движки, сделать N деталей, выключить движки и пойти на обед.
Пока не знаю как это сделать.
Аватара пользователя
nebelnoir
Почётный участник
Почётный участник
Сообщения: 65
Зарегистрирован: 24 апр 2014, 20:28
Репутация: 50
Настоящее имя: Ярослав Власов
Откуда: Москва
Контактная информация:

Re: USBCNC GRBL 4 оси

Сообщение nebelnoir »

Микола писал(а):Попробовал сейчас "ОСТАНОВКА/ПРОДОЛЖИТЬ" нет реакции на вывод.
Что это значит Feed hold/Cycle start? Должно работать, проверил еще раз.
Ответить

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