индеецпетя писал(а):Михаил, есть ли на контроллере возможность выделить шину для связи между несколькими контроллерами? Если возможно, то можно было-бы дописать прошивку, в которой все контроллеры имели общую временную ось и при отставании выполнения серворегулирования одной из оси, остальные бы пропорционально замедлялись.
Может это и глупость, и объем такой работы сопоставим с разработкой полноценного контроллера...
Ну, если хочешь добавить физически эту шину данных, и написать свое ПО, то, возможность, как бы есть. Я такое делать, конечно же, не стану, да и не смогу.
Даже если не смотреть, что сложность и объем работы намного выше, чем разработка ЧПУ контроллера с таким функционалом.
На самом деле задача поставлена неправильно. На самом деле тебе нужно всего лишь правильно настроить PID контроллер, но об этом чуть позже.
Ну, вот предположим, что такой функционал существует. Предположим, что получив данные от контроллера все платы сообща сохраняют полученные данные с высокой точностью, не глядя на затраты памяти, и восстанавливают полученную траекторию движения в многомерном пространстве...
Полагаю, что все оси ты настроишь примерно одинаково, и при движении одновременно по нескольким осям все они будут отставать примерно одинаково, например, на 0,1 сек... Какие из осей нужно будет еще сильнее притормозить, чтобы устранить это отставание, и на сколько? Те, которые по неизвестным причинам убежали вперед вектора движения? Но ведь такого не произойдет... А если мы начнем замедлять движение по всем осям для какой-то непонятной цели, у нас отставание от исходного сигнала управления по всем осям еще больше увеличится, а мы, вроде как, добивались обратного...
индеецпетя писал(а):ну а какая разница? буфер одной оси справляется ведь со своим потоком
В ПИД регуляторе нет никакого буфера.
индеецпетя писал(а):просто задержка будет пропорциональна по всем осям,
Она и так, скорее всего пропорциональна при однотипных настройках осей.
индеецпетя писал(а):потом так же синхронно все оси догонят мировую ось времени.
С чего бы это вдруг?
mikehv писал(а):Ну как бы принято такую ситуацию считать критической и привод должен просто сваливаться в ошибку.
Нет никаких причин, чтобы нормально настроенная, исправно работающая ось, отставала. В противном случае это проблема и ее надо решать, а не подтормаживать остальные оси.
Вот это верно! Для того и дана возможность настройки, чтобы настроить электронику в соответствии с возможностями механики.
Если бы ЧПУ умели сами себя полностью настраивать под любое оборудование — было бы круто! И такое, даже, возможно, но это уже не ко мне, это к дяде Виктору...
индеецпетя писал(а):mikehv писал(а):Нет никаких причин, чтобы нормально настроенная, исправно работающая ось, отставала
причина есть и весомая (в буквальном смысле) это масса которую необходимо двигать, у меня не получилось настроить лучше чем 15-20 импульсов отставания а это 0,1 мм
Движимая масса это никак не причина для работы ЧПУ с существенным отставанием.
Получается, что приводы на 99,99% ось разогнали и нужное расстояние проехали, а последние 0,1 мм не осилили? Ну не может такого быть! Дело точно не в возможностях приводов.
индеецпетя писал(а):N1X писал(а):В чем вопрос?
я спросил у разработчика есть ли аппаратная возможность у контроллера поддерживать синхронность перемещения общаясь между собой через шину данных. Только в этом. То что кинематика должна быть в порядке даже обсуждать не стоит
Чтобы поддерживать синхронность перемещения не нужно общаться между осями. Достаточно всем осям точно и своевременно выполнять поставленную задачу.