Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел
Добавлено: 20 сен 2013, 15:48
Пока я пытаюсь догнать вашу мысль, ответьте на вопрос: что такое jerk. В инете только в контексте рыбалки нашел.
Статьи, обзоры, цены на станки и комплектующие.
https://cnc-club.ru/forum/
тут на форуме две темы (по S-разгон ищем))aaleksander писал(а):что такое jerk
Это в идеале, а на самом деле (по крайней мере в условиях LinuxCNC) у нас скорость на протяжении каждого servo-thread постоянна, поэтому функция получается кусочно непрерывно дифференцируемая (на каждом отрезке servo-thread), а на всем времени - просто непрерывная и дифференцируемая.michael-yurov писал(а):Если речь о непрерывно дифференцируемой функции, то как бы у нас вся траектория такая, кроме точек, где необходимо остановитсья для смены направления.
? можешь по подробнее это описать?michael-yurov писал(а):Все равно при дроблении по 1 мс не получится достаточно плавно менять ускорение.
Я просто пару сообщений пропустилmichael-yurov писал(а):Так это я так, для aaleksander объяснял задачу.
Вот здесь у меня уже мозг клинит.Nick писал(а):у нас скорость на протяжении каждого servo-thread постоянна, поэтому функция получается кусочно непрерывно дифференцируемая (на каждом отрезке servo-thread)
А че тут описывать - Видео в теме про фрезу смотрел? трохоидальную обработку видел? там станок делает больше десяти витков по траектории в секунду, что там можно успеть нарегулировать, если у тебя на виток менее 100 сервоциклов?Nick писал(а): можешь по подробнее это описать?
Идея верная. Ее несколько усложнит наличие нескольких осей (нужно будет смотреть из за какой оси нам требуется больше всего сбросить скорость),aaleksander писал(а):Ну например такой приблизительный алгоритм.
третья производная от пути (первая - скорость, вторая - ускорение). Иногда переводят как "рывок".aaleksander писал(а):что такое jerk.
За то, что хорошо, - это то что на маленьких участках ускорения будут ниже, т.к. не будут успевать нарастать до высоких значений, а, соответственно, точность движения по траектории - выше,UAVpilot писал(а):Тут ещё вот какой момент: в случае S-разгона увеличивается время между нулевой скоростью и заданной (наоборот), т.е. увеличивается время, когда режимы резания не соответствуют заданным. А это может быть чревато...
P.S. Т.е. надо ещё соотв. образом согласованно менять обороты шпинделя.
Видео видел, имхо для этого вполне хватит сервоцикла в 1000Гц, в крайнем случае частоту серво периода можно повысить...michael-yurov писал(а):А че тут описывать - Видео в теме про фрезу смотрел? трохоидальную обработку видел? там станок делает больше десяти витков по траектории в секунду, что там можно успеть нарегулировать, если у тебя на виток менее 100 сервоциклов?
Там не то что ускорение плавно изменять не получится, а даже скорость будет скакать, не говоря об отклонении сервоприводов от траектории.
Ну этот момент и при обычном разгоне существует, и шпиндель там никто не синхронизируетUAVpilot писал(а):Тут ещё вот какой момент: в случае S-разгона увеличивается время между нулевой скоростью и заданной (наоборот), т.е. увеличивается время, когда режимы резания не соответствуют заданным. А это может быть чревато...
Частота сервоциклов ограничивается частотой контура регулировки тока, который ограничен частотой шима. Частоту шима поднимать до бесконечности нельзя, иначе будут большие потери в стальном магнитопроводе мотора от токов Фуко. В предельном случае частота контура регулировки тока равна частоте шима. В классическом варианте данные тока в обмотках измеренные в текущем цикле шима используются только в следующем, т.е. есть запаздывание на 1 цикл. В скоростных приводах такой задержки нет. Можно на выход привода поставить фильтр-реактор после которого вместо шима идет аналоговое напряжение, и значит частоту шима можно увеличить во много раз.Nick писал(а):Видео видел, имхо для этого вполне хватит сервоцикла в 1000Гц, в крайнем случае частоту серво периода можно повысить
Да, он.nkp писал(а):кажись это разработчик Kflop(?)
Есть такое, называется "naive cam detector" http://linuxcnc.org/docs/html/gcode/gcode.html#sec:G64michael-yurov писал(а):Пишет, что в LinuxCNC есть некий предпросмотр, который позволяет объединить мелкие сегменты в более крупные отрезки
Почему? Из linuxcnc можно взять любое значение любого пина, хочешь внешний ПИД, просто передаем на него команду на перемещение и все... Вопрос в том, как эту команду передавать... Но и это решаемый вопрос.michael-yurov писал(а):Хотя, казалось бы, его контроллер может производить ПИД расчеты и сам, но если LinuxCNC отдаст эту часть работы он уже не будет LinuxCNC.
Ты наверняка присматриваешься к LinuхCNC на предмет управления ракетой с самонаведением.michael-yurov писал(а):А че тут описывать - Видео в теме про фрезу смотрел? трохоидальную обработку видел? там станок делает больше десяти витков по траектории в секунду, что там можно успеть нарегулировать, если у тебя на виток менее 100 сервоциклов?
Вообще-то EMC создавался для управления вот этой "хоббийной" машинкой http://web.archive.org/web/201005272044 ... /hexa.htmlImpartial писал(а):Она сделана для использования в хоббийных станках с шаговым приводом и управлением через LPT порт.
В нее при создании заложена безопасность использования неподготовленными любителями.
таки да - с самого начала проект был нацелен на управление промышленными станками и в документах NIST (начиная с декабря 1993г)Impartial писал(а): Она сделана для использования в хоббийных станках