Страница 2 из 4
Re: G33.1 и непонятки
Добавлено: 09 июл 2013, 09:01
Nick
ferror может выскакивать при проскальзывании шкива энкодера.
Serg-tmn писал(а):Но чтобы совсем исключить из рассмотрения передачу от шпинделя к энкодеру, можно временно его попробовать закрепить прямо под шпинделем, зажать вал в патрон и посмотреть, что выйдет.
идея класс

Re: G33.1 и непонятки
Добавлено: 09 июл 2013, 09:22
Сергей Саныч
Nick писал(а):идея класс

А то!
я еще одну могу подкинуть - закрепить энкодер сверху (через хорошую муфту) - все равно пиноль в режиме ЧПУ не используется.
Но дело не в этом. Или не только в этом. Частота дергается. Разброс показаний на скорости около 670 об/мин - порядка 10%.
Смотрим ошибку дискретности.
Частота вращения - примерно 11 об/сек. Энкодер выдает за оборот 500 импульсов. Сервоцикл, предположим, 1 мс. Имеем 5,5 импульсов за сервоцикл. Точнее, то 5, то 6. Имеем разброс 20%!
Если подсчитывать не тупо импульсы, а переходы (их в 4 раза больше), можно получить ошибку 5%. Можно считать переходы только одного выхода энкодера - тогда 10%. Так и так - многовато.
Как конкретно сделано - можно только догадываться.
А можно поставить ФНЧ, как предлагает
Lexxa, и посмотреть, что получится.
Re: G33.1 и непонятки
Добавлено: 09 июл 2013, 09:57
Serg
Алексс писал(а):мне они тоже нравятся, но в данном случае это лишнее. проскальзываний там нет.
Наука утверждает, что в любой фрикционной передаче есть проскальзывания, оно потому ещё и называется несинхронная.

Re: G33.1 и непонятки
Добавлено: 09 июл 2013, 10:14
Nick
Serg-tmn писал(а):Если подсчитывать не тупо импульсы, а переходы (их в 4 раза больше), можно получить ошибку 5%. Можно считать переходы только одного выхода энкодера - тогда 10%. Так и так - многовато.
Как конкретно сделано - можно только догадываться.
В стандартном энкодере пишут:
encoder.N.velocity float out
Velocity in scaled units per second. encoder uses an algorithm that greatly reduces quantization noise as compared to simply differentiating the position output. When the magnitude of the true velocity is below min-velocity-estimate, the velocity output is 0.
encoder.N.x4-mode bit i/o
Enables times-4 mode. When true (the default), the counter counts each edge of the quadrature waveform (four counts per full cycle). When false, it only counts once per full cycle. In counter-mode, this parameter is ignored.
Честно говоря, не знаю как это в hostmot2 реализовано, но скорее всего также.
Алексс, ты самое главное в halscope не показал - самое интереснное это скорость! остальное или не увидишь, или бесполезно. Index-enable используется только для начала движения, counts будут просто сильно расти до громадных значений. А вот именно в скорости можно увидеть насколько она прыгает, и тогда уже думать, на что это может повлиять.
Re: G33.1 и непонятки
Добавлено: 09 июл 2013, 10:18
Алексс
Nick писал(а):ты самое главное в halscope не показал - самое интереснное это скорость!
ну как жеж не показал то ?!
кривинькая вся такая

Re: G33.1 и непонятки
Добавлено: 09 июл 2013, 10:25
Nick
Re: G33.1 и непонятки
Добавлено: 09 июл 2013, 10:31
Алексс
я конечно попробую, но этот лопас только кривульку скорости выровняет, а
Код: Выделить всё
net spindle-revs => motion.spindle-revs hm2_7i43.0.encoder.00.position
останется кривиньким...
Re: G33.1 и непонятки
Добавлено: 09 июл 2013, 10:57
Алексс
мельком посмотрел tp на предмет нарезания резьбы - там черт ногу сломит

Re: G33.1 и непонятки
Добавлено: 15 янв 2021, 22:04
tokarka63
Приветствую!)
Подниму старую тему, надеюсь никто не обидится за мои вопросы в чужой теме!?)
Никогда раньше не резал станком резьбу метчиком,но возникла необходимость.....
тестовый код
G90 G07 G54
M61 Q7 G43
M03 S200
G00 Z1
G33.1 Z-20 K1.5
G00 Z1
M02
Происходит следующее, запускает шпиндель, подъезжает на Z1, синхронизируется - едет на Z-20, реверсирует шпиндель и едет дальше до Z-35, останавливает шпиндель и встает, на Z1 не едет.
Станок работает на lpt, самодельный энкодер на 36 меток, канал А и Z метка
По G76 резьбу режет нормально
Есть варианты решить проблему?
Спасибо!!!
Re: G33.1 и непонятки
Добавлено: 15 янв 2021, 22:13
Maxekb77
Отправить на свалку самодельный энкодер.
Re: G33.1 и непонятки
Добавлено: 15 янв 2021, 22:17
tokarka63
Maxekb77 писал(а): ↑15 янв 2021, 22:13
Отправить на свалку самодельный энкодер.
По быстрому не удастся заменить!(
Re: G33.1 и непонятки
Добавлено: 15 янв 2021, 23:19
ex71
я конечно не эксперт, но мне кажется что один сигнал энкодера никак не может интерпретироваться как правильное вращение шпинделя. Их там два должно быть смещенных между собой.
Попробуй все тоже самое сделать с ручным вращением шпинделя. Для этого встраиваешь в разрыв сигнала spindle-at-speed и spindle-on радиокнопки/галочки что угодно. Стартуешь прогу, жмешь паузу, отключаешь шпиндель (spindle-on), активируешь "at-speed", и когда резец дойдет до Z1 начинаешь крутить шпиндель рукой. Если все правильно, то резец поедет после прохождения метки, и ехать будет согласно вращению. Сколько крутишь, столько и едет. Скорость вращения влияет на скорость перемещения. Если крутишь вперед - едет, если назад то не едет. Если повернул назад, то вперед не поедет пока не дойдет до позиции когда ты перестал крутить вперед. Ну то есть координата Z будет привязана к конкретному значению шпинделя.
Для наглядности лучше в hal-meter подключить сигнал энкодера шпинделя - там число увеличивается при вращении вперед, и уменьшается назад. После старта резьбы по индексной метке происходит обнуление значения.
Я думаю что счетчик всегда вперед будет идти. И как следствие вероятно система видит что продолжается закручивание вот и двигает рещец вперед.
Re: G33.1 и непонятки
Добавлено: 15 янв 2021, 23:31
tokarka63
Я примерно так и думаю, но ведь команда на реверс прошла и ее никто не отменял.....
Если обозвать канал А каналом В, то должно вообще все перестать работать!? (G76 и G33.1)
Re: G33.1 и непонятки
Добавлено: 16 янв 2021, 00:12
Serg
ex71 писал(а): ↑
я конечно не эксперт, но мне кажется что один сигнал энкодера никак не может интерпретироваться как правильное вращение шпинделя. Их там два должно быть смещенных между собой.
Для синхронизации шпинделя достаточно одного канала энкодера и индекса - там важна скорость, на направление пофиг. При любом подключении компонент encoder лучше переключить в "counter mode".
Re: G33.1 и непонятки
Добавлено: 16 янв 2021, 00:21
ex71
tokarka63 писал(а): ↑
Если обозвать канал А каналом В, то должно вообще все перестать работать!? (G76 и G33.1)
это вроде не влияет. Там идет два сигнала, которые перекрыты на половину ширины. Так система понимает что если канал А раньше Б идет, значит крутится вперед. А синхрометка лишь для поиска нулевой позиции
А вот как указал Сергей - мне кажется что система должна увидеть обратное вращение. Ну попробуй вручную прогнать - так ты поймешь в какой момент что идет не так.
Re: G33.1 и непонятки
Добавлено: 16 янв 2021, 00:35
ex71
Serg писал(а): ↑16 янв 2021, 00:12
ex71 писал(а): ↑
я конечно не эксперт, но мне кажется что один сигнал энкодера никак не может интерпретироваться как правильное вращение шпинделя. Их там два должно быть смещенных между собой.
Для синхронизации шпинделя достаточно одного канала энкодера и индекса - там важна скорость, на направление пофиг. При любом подключении компонент encoder лучше переключить в "counter mode".
https://www.forum.linuxcnc.org/24-hal-c ... rly#187318
и это далеко не в 1 теме описано и даже Andy про это писал, в 2013 году аж.
Еще утверждают, что скорость разгона и торможения шпинделя может влиять
Re: G33.1 и непонятки
Добавлено: 16 янв 2021, 09:00
Сергей Саныч
А синхронизация и G0 вообще-то совместимы? я просто не в курсе, а сайт linuxcnc.org почему-то не работает.
Ну и непонятно, как одноканальный энкодер будет работать при реверсе и учитывать выбег по инерции.
Re: G33.1 и непонятки
Добавлено: 16 янв 2021, 12:41
Maxekb77
Сергей Саныч писал(а): ↑
А синхронизация и G0 вообще-то совместимы? я просто не в курсе, а сайт linuxcnc.org почему-то не работает.
Нет, но скоро станет известно по сломанному метчику.
Re: G33.1 и непонятки
Добавлено: 16 янв 2021, 13:51
alex_sar
Сергей Саныч писал(а): ↑
Ну и непонятно, как одноканальный энкодер будет работать при реверсе и учитывать выбег по инерции.
да не будет конечно работать. нужен нормальный энкодер обязательно
Re: G33.1 и непонятки
Добавлено: 16 янв 2021, 18:17
Serg
ex71 писал(а): ↑
и это далеко не в 1 теме описано и даже Andy про это писал, в 2013 году аж.
Да, тут я попутал с одним своим случаем: использовался только один канал в виде самодельного диска с отверстиями, а "учёт реверса" делался отдельно в HAL, в соотв. с заданием на шпиндель.
ex71 писал(а): ↑
Еще утверждают, что скорость разгона и торможения шпинделя может влиять
Это в УП можно учесть.
Но всё таки проще использовать для метчика специальный патрон с регулируемым усилием, принцип как у шуруповёртов.