Настраиваем контроллер to_pci.

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
tims
Опытный
Сообщения: 103
Зарегистрирован: 21 фев 2017, 00:57
Репутация: 5
Настоящее имя: Тим
Откуда: СПб
Контактная информация:

Re: Настраиваем контроллер to_pci.

Сообщение tims »

Предполагаю что на Linuxcnc можно назначить линейку на вход pid, выход этого пид на вход второго pid на который заведён энкодер, а с него уже выход на серву. Но чем это лучше чем просто линейка?
Servothred отрабатывает 1 раз в 1мс обычно и к нему привязано обновление задания и считывание энкодеров.
Аватара пользователя
uralpt
Мастер
Сообщения: 651
Зарегистрирован: 23 ноя 2015, 14:31
Репутация: 104
Настоящее имя: евгений
Откуда: Миасс
Контактная информация:

Re: Настраиваем контроллер to_pci.

Сообщение uralpt »

если честно, не совсем понял. Вы описываете алгоритм, когда в серву напрямую заводится сигнал от линейки? Как реализовано в современных поколениях серв?

У меня вопрос гораздо проще. Мне нужно на плате получить, к примеру, 10 энкодеров. И все :)) Вернее, пока все. Какой будет алгоритм - пока не важно.
tims
Опытный
Сообщения: 103
Зарегистрирован: 21 фев 2017, 00:57
Репутация: 5
Настоящее имя: Тим
Откуда: СПб
Контактная информация:

Re: Настраиваем контроллер to_pci.

Сообщение tims »

UAVpilot писал(а):Возможно на kflop "двойная петля" и реализуется - тут можно разве что надеяться и верить. А вот с LinuxCNC просто верить не получится - там в конфиге нужно будет чётко прописать что именно надо будет делать с показаниями энкодера и линейки.
Например простой вопрос: какие данные будут главней, от энкодера или от линейки?

А проверить можно и с LPT.
Я пытался предположить как описать энкодер и линейку в конфиге linuxcnc.
В этой плате вроде заявлено 5 энкодеров и завсти остальные на свободные пины не получится так как частота опроса пинов 1кгц.
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Настраиваем контроллер to_pci.

Сообщение Serg »

uralpt писал(а):Если решения нет - то эта плата мне не подходит.
Решения по "двойной петле" просто не существует. Вне зависимости от платы.
Если в дополнение к сервоприводу устанавливается линейка, то сигнал позиции с энкодера просто не используется, а вместо него используются данные о позиции с линейки. И никаких "двойных петель".
tims писал(а):Предполагаю что на Linuxcnc можно назначить линейку на вход pid, выход этого пид на вход второго pid на который заведён энкодер, а с него уже выход на серву.
Для чего? :) Я не зря спрашивал кто из них будет главным. Представьте, что энкодер показывает позицию N, а линейка позицию M - кому верить?
uralpt писал(а):Мне нужно на плате получить, к примеру, 10 энкодеров. И все :))
Просто покупаете нужное количество плат и всё. :)
tims писал(а):Я пытался предположить как описать энкодер и линейку в конфиге linuxcnc.
одинаково.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
tims
Опытный
Сообщения: 103
Зарегистрирован: 21 фев 2017, 00:57
Репутация: 5
Настоящее имя: Тим
Откуда: СПб
Контактная информация:

Re: Настраиваем контроллер to_pci.

Сообщение tims »

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

Re: Настраиваем контроллер to_pci.

Сообщение Serg »

Ну завёл ты в ЧПУ данные о скорости мотора привода - что ты с ними там делать будешь?..
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
tims
Опытный
Сообщения: 103
Зарегистрирован: 21 фев 2017, 00:57
Репутация: 5
Настоящее имя: Тим
Откуда: СПб
Контактная информация:

Re: Настраиваем контроллер to_pci.

Сообщение tims »

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

Re: Настраиваем контроллер to_pci.

Сообщение Serg »

tims писал(а):Гипотетически, если на линейке мало меток (редкие), в серводрайвере нет контура скорости (такое вообще бывает?) на моторе есть энкодер с большим количеством меток, заведение контура скорости в lcnc улучшит результат?
Как ты его реализуешь в LinuxCNC? И главное зачем?
Поддержание заданной скорости привода не является задачей ЧПУ. Задача ЧПУ задать приводу скорость (и направление) движения, а если привод движется быстрее или медленнее, то ЧПУ аварийно останавливается и отказывается работать с таким приводом.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
uralpt
Мастер
Сообщения: 651
Зарегистрирован: 23 ноя 2015, 14:31
Репутация: 104
Настоящее имя: евгений
Откуда: Миасс
Контактная информация:

Re: Настраиваем контроллер to_pci.

Сообщение uralpt »

наверное, стоит разделить задачу на 2 части

1. входы для энкодеров, количество более 5.
UAVpilot предложил решение - несколько плат. Ну неправильно как-то. Меня больше интересует, жертвуя свободными входами на плате, организация полноценных входов для энкодеров.

2. Сфера применения (только моя)
- стоит задача - гарантированно попасть в 0,01 при установленных 5 микронных линейках. Одна риска энкодера на моей серве на 5мм винте дает 0,0025мм. Если нужно гарантированно уложиться в 0,01, не отвлекаясь на погрешности механики, то без двух энкодеров - никак.
- реально (физически) на станке - 8 энкодеров.
- на токарнике VFD на шпинделе. Плюс установлю серву с возможностью выбора, от чего будет приводиться шпиндель. Серва обеспечит до 10 об/мин через редуктор. В резцедержке - вращающаяся фреза. Нарезаю фрезой шестерню диаметром 250. При идеальной механике и 10000 энкодере, я получаю 0,2мм погрешности между двумя зубьями. Чтобы обеспечить точность, нужен второй энкодер, который уже "доведет".
mmv
Мастер
Сообщения: 634
Зарегистрирован: 24 май 2016, 21:58
Репутация: 38
Контактная информация:

Re: Настраиваем контроллер to_pci.

Сообщение mmv »

Для того что бы из входов сделать енкодеры много чего нужно переделать. Это не очень просто. Поэтому проще купить две платы(причём тут тоже нужно будет драйвер дописать, а то он только одну плату поддерживает на данный момент).
Ещё STEP/DIR проект буксует, поэтому времени на переделывание чего то другого нет!
Комплект плат PinCET для модернизации станков на Linuxcnc.
http://www.cnc-club.ru/forum/viewtopic. ... 16#p268407
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Настраиваем контроллер to_pci.

Сообщение Serg »

uralpt писал(а):1. входы для энкодеров, количество более 5.
UAVpilot предложил решение - несколько плат. Ну неправильно как-то. Меня больше интересует, жертвуя свободными входами на плате, организация полноценных входов для энкодеров.
Платы Mesa 5i25/6i25, 7i92 поддерживают до 12 энкодеров каждая при добавлении несложной внешней логики. При необходимости можно использовать несколько плат в одной системе.
uralpt писал(а):Если нужно гарантированно уложиться в 0,01, не отвлекаясь на погрешности механики, то без двух энкодеров - никак.
попробуй всётаки сначала ответить на вопрос, который я тут задавал уже несколько раз:
UAVpilot писал(а):Для чего? :) Я не зря спрашивал кто из них будет главным. Представьте, что энкодер показывает позицию N, а линейка позицию M - кому верить?
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
uralpt
Мастер
Сообщения: 651
Зарегистрирован: 23 ноя 2015, 14:31
Репутация: 104
Настоящее имя: евгений
Откуда: Миасс
Контактная информация:

Re: Настраиваем контроллер to_pci.

Сообщение uralpt »

ответ по входам от разработчика принят, огромное спасибо. Будет куда применить - обращусь.

UAVpilot,
знаю про Месу.

представим систему, в которой каждые 50мм установлен датчик Home. Еще на оси есть 12-битный энкодер. Как обычно работаем - приезжаем в Home и от него считаем показания энкодера. Получаем положение инструмента (в пределах двух датчиков Home). В этом случае "главнее" Home метка.
Теперь представим, что у нас каждая риска на линейке - это датчик Home, и нам нужно попасть между рисками.
Технически представляю так - при достижении точки позиционирования по оптолинейке прописываем вызов файла "fine_motion" с переназначением энкодера, другим ПИД и пр.

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

Re: Настраиваем контроллер to_pci.

Сообщение Serg »

uralpt писал(а):представим систему, в которой каждые 50мм установлен датчик Home. Еще на оси есть 12-битный энкодер.
Для чего? Энкодер с индексом эквивалентен энкодеру и по "датчику Home" на каждый оборот энкодера. С линейкой та-же фигня.
uralpt писал(а):Как обычно работаем - приезжаем в Home и от него считаем показания энкодера. Получаем положение инструмента (в пределах двух датчиков Home).
Зачем?! Достаточно в начале работы один раз "отхомиться" и энкодер будет "показывать" абсолютную позицию инструмента.
uralpt писал(а):прописываем вызов файла "fine_motion" с переназначением энкодера, другим ПИД и пр.
И перезапускаем ЧПУ, чтобы эти изменения конфигурации начали действовать... :)

P.S. Раньше был такой технический журнал: "Техника молодёжи", там была забавная рубрика "Зачем просто, если можно сложно?". Вот эта куча "датчиков Home" очень её напоминает... :)
https://www.google.ru/search?q=%D0%97%D ... 1012&dpr=1
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
uralpt
Мастер
Сообщения: 651
Зарегистрирован: 23 ноя 2015, 14:31
Репутация: 104
Настоящее имя: евгений
Откуда: Миасс
Контактная информация:

Re: Настраиваем контроллер to_pci.

Сообщение uralpt »

UAVpilot,
Хорошо, давай просто. Отхомились. Поехали, работаем по энкодеру сервы. В ШВП - люфт, причем неравномерный. Изделие - в брак.
Система же с двумя энкодерами "увидит" люфт, т.к. сначала доедет до ближайшей метки на оптолинейке, и только потом будет ориентироваться на показания дополнительного энкодера. А так как движение будет происходить только в одну сторону, то погрешность на люфт будет сведена практически к нулю.

ну да, перезапуск некошерно :)) Хорошо, в конфиге прописываем все "in" на все энкодеры, а алгоритм работы как описал - едем по линейке, потом читаем по другому каналу показания другого энкодера, доезжаем. Без перезапуска всей системы.

не, я не против любого другого решения. Как можно просто решить задачку с моим шпинделем токарника (чуть выше описал), используя один энкодер? (люфт от ременной передачи гарантированно даст больше 0,2мм на диаметре 250мм). Условие - дорогущие решения в виде безлюфтовых редукторов - ф топку.

допишу. Подсчитал - только применяя редуктор (2-stage, планетарный, со стандартным заводским люфтом 0.25arcmin) получаем уход зуба на 0,9мм. Как/чем его просто скомпенсировать?
Аватара пользователя
solo
Мастер
Сообщения: 1374
Зарегистрирован: 20 окт 2011, 18:39
Репутация: 272
Настоящее имя: Юрий Соловьев
Откуда: Украина Харьков
Контактная информация:

Re: Настраиваем контроллер to_pci.

Сообщение solo »

лично я себе поставил на фрезер (676) линейки с дискретностью 0.005 и довольный как слон , не смотрю ни на люфты ни на натяжение зубчатых ремней все это собрал на компе под LinuxCNC с 2 ЛПТ портами , у меня мах скорость по осям 2800 мм/мин по этому линейку успевает считать ЛПТ порт , даже с таким разрешением линеек у меня получается обрабатывать сталь с точностью не хуже 0.03мм
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Настраиваем контроллер to_pci.

Сообщение Serg »

uralpt писал(а):Система же с двумя энкодерами "увидит" люфт, т.к. сначала доедет до ближайшей метки на оптолинейке, и только потом будет ориентироваться на показания дополнительного энкодера.
Почему нельзя сразу "ориентироваться на показания дополнительного энкодера"?
uralpt писал(а):не, я не против любого другого решения. Как можно просто решить задачку с моим шпинделем токарника (чуть выше описал), используя один энкодер? (люфт от ременной передачи гарантированно даст больше 0,2мм на диаметре 250мм). Условие - дорогущие решения в виде безлюфтовых редукторов - ф топку.
ЧПУ на Jet GH-1440W3 #1, последняя фотка.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
uralpt
Мастер
Сообщения: 651
Зарегистрирован: 23 ноя 2015, 14:31
Репутация: 104
Настоящее имя: евгений
Откуда: Миасс
Контактная информация:

Re: Настраиваем контроллер to_pci.

Сообщение uralpt »

UAVpilot,
потому что не будет привязки к реальному положению инструмента. Люфт (к примеру, в ШВП) равномерно перенесется на все показания. А если износ (люфт) неравномерный, то получится совсем некрасиво.
Разве у любителей б/у станков (я в их числе) редкость износ станины на 0,2-0,5мм? А уж что творят китайские винты на длине 1 метр...

Энкодер на ремешке и у меня (будет :)).
MGG
Мастер
Сообщения: 3673
Зарегистрирован: 08 фев 2016, 16:33
Репутация: 1010
Настоящее имя: Манн Геннадий Геннадьевич
Откуда: Москва
Контактная информация:

Re: Настраиваем контроллер to_pci.

Сообщение MGG »

А почему просто завести линейку не вариант без всех этих танцев с бубнами? Она ведь и будет выбирать все люфты, или я чего-то не понимаю?
http://www.cnc-club.ru/forum/viewtopic. ... 76#p304076 Поставки оборудования для ваших станков
https://www.instagram.com/dtw.moscow/
dtw.moscow@gmail.com
Аватара пользователя
uralpt
Мастер
Сообщения: 651
Зарегистрирован: 23 ноя 2015, 14:31
Репутация: 104
Настоящее имя: евгений
Откуда: Миасс
Контактная информация:

Re: Настраиваем контроллер to_pci.

Сообщение uralpt »

изначально поставленная задача - гарантированно попасть в 0,01 при 5-микронных линейках. Чем точнее, тем лучше.
И вторая, более сложная задача - с той же точностью обеспечить нарезку зуба на 250 мм шестерне. На фрезере, закрепляя заготовку на поворотном столе.
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Настраиваем контроллер to_pci.

Сообщение Serg »

uralpt писал(а):потому что не будет привязки к реальному положению инструмента. Люфт (к примеру, в ШВП) равномерно перенесется на все показания. А если износ (люфт) неравномерный, то получится совсем некрасиво.
Всё равно не понимаю почему люфт будет влиять на линейку?..
uralpt писал(а):изначально поставленная задача - гарантированно попасть в 0,01 при 5-микронных линейках.
И в чём проблема?..
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Ответить

Вернуться в «LinuxCNC»