Страница 4 из 39
Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел
Добавлено: 25 сен 2013, 17:06
nkp
Impartial писал(а):На питоне там тоже немало написано.
в той части -интерпретатор ,планировщик - это си ,
а нас сейчас больше эти товарищи интересны...
Impartial писал(а):Связано это просто с ленью разбираться с чужим кодом. Написано там довольно понятно.
как то одно противоречит другому :
обсуждать многобуквенно, предполагая токмо об устройстве - не лень ,
"посмотреть" в понятно написанном - лень...
===========
Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел
Добавлено: 25 сен 2013, 17:14
Impartial
nkp писал(а):как то одно противоречит другому :
обсуждать многобуквенно, предполагая токмо об устройстве - не лень ,
Ничего не противоречит. Это же форум. И просто потрындеть правилами не запрещено.

Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел
Добавлено: 25 сен 2013, 17:22
nkp
Impartial писал(а):Ничего не противоречит. Это же форум. И просто потрындеть правилами не запрещено.
да это я хочу зацепить за живое сишников
нам в емс всего то надо :
1) предпросмотр
2) s-разгон
3) коррекция на лету
ну там еще есть 48 пунктов - но это на потом

Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел
Добавлено: 25 сен 2013, 17:27
Nick
Impartial писал(а):Наоборот это как? Объясни.
Это "Разбиение происходит именно на прямые потому что на протяжении сервоцикла скорость по осям постоянна. Верно и наоборот ." обратное Скорость на протяжении сервоцикла постоянна, потому, что разбиение траектории идет по прямым сегментам. Верно и обратное

.
nkp писал(а):да это я хочу зацепить за живое сишников
Не, питон, если хитро написанный, то еще менее читаемый, чем си

.
Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел
Добавлено: 25 сен 2013, 18:16
Impartial
Nick писал(а):Скорость на протяжении сервоцикла постоянна, потому, что разбиение траектории идет по прямым сегментам.
Скорее всего так вернее будет, учитывая что первичный все таки интерполятор.
nkp писал(а):нам в емс всего то надо :
1) предпросмотр
2) s-разгон
3) коррекция на лету
ну там еще есть 48 пунктов - но это на потом
Скорее всего это тот случай когда пользователь не знает чего хочет.
В частности по S кривым ускорений. Кто то где то слышал, но никто не видел и не пробовал.
Этот алгоритм легко реализуется, только те кто знает куда его сунуть не видят в этом смысла.
Такая же ситуация с предосмотром. Вот в маче он есть. Многие им эффективно пользуются? Т.е. "ну никак без него"
Хотелось бы узнать.
Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел
Добавлено: 25 сен 2013, 18:27
aftaev
Impartial писал(а):В частности по S кривым ускорений. Кто то где то слышал, но никто не видел и не пробовал.
Этот алгоритм легко реализуется, только те кто знает куда его сунуть не видят в этом смысла.
Starik ссылку на видео показывал там плазма "мягко" ездит.
Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел
Добавлено: 25 сен 2013, 18:30
nkp
Impartial писал(а):Хотелось бы узнать.
первых два пункта - это как бы от общественности)))
от себя добавил третий ...
я лично пришиваю пуговицы , к пуговицам претензии есть? ©
в стойках 80-х годов даже это было - очень кстати удобно...
---------------
с предпросмотром все разжевано в той же рассылке - емс проигрывает в скорости обработки другим программам
в некоторых случаях именно из-за отсутствия lookahead в полной мере...
--------------------
s-разгон также обсуждался здесь и презентовал свои возможности...
Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел
Добавлено: 25 сен 2013, 18:58
Impartial
Starik писал(а):Вот такую занимательную статейку на тему однажды нарыл...
На форуме cnczone.ru есть очень интересный проект автономного контроллера, реализующий подобный алгоритм расчета траектории.
Мы сравнивали результаты скорости расчетов
http://www.cnczone.ru/forums/index.php? ... st&p=36414
На первый взгляд результаты впечатляющие. Но если ближе присмотреться, то нужно сильно упрощать код программы , чтобы это получить.
Все таки подход к интерпретации кода и планировке траектории в емс более универсальный.
Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел
Добавлено: 25 сен 2013, 22:04
Serg
Nick писал(а):Не, питон, если хитро написанный, то еще менее читаемый, чем си

.
Питон - вообще язык для мазохистов. Как можно что-то писать на языке, прогамма на котором работает не так как задумал программист, а в зависимости от настроек его редактора?..
nkp писал(а):да это я хочу зацепить за живое сишников
А за что ты меня зацепишь, если я могу программить в принципе на любом языке программирования?
Предвидя следующий вопрос: у меня сейчас есть более важная и интересная работа.

Да и у меня собственное мнение по поводу нужных доработок linuxcnc.
Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел
Добавлено: 25 сен 2013, 23:09
michael-yurov
На счет производительности.
В конце статьи
http://cnc-club.ru/forum/viewtopic.php? ... =40#p86426 есть ссылка на сайт, где можно эту программку скачать и потестировать.
Еще на сайте есть видео (мне пришлось увеличить масштаб страницы чтобы что-то там разглядеть)
http://webserv.lurpa.ens-cachan.fr/geo3 ... n_VPOp.swf
На видео хорошо видно, как программа делает несколько итераций, чтобы подобрать и скорости и ускорения и jerk, и при этом уложиться в минимальное время прохождения траектории.
Вот про это я и хотел сказать, когда писал про высокие требования к производительности при подходе к планированию со стороны численного дифференцирования траектории разбитой на мелкие участки.
Нагрузка на процессор при учете параметра jerk возрастает многократно.
Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел
Добавлено: 26 сен 2013, 00:21
Nick
А вот собственно говоря и планировщик траектории от KFlop:
Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел
Добавлено: 26 сен 2013, 00:33
PKM
Nick писал(а):А вот собственно говоря и планировщик траектории от KFlop:
В LinuxCNC чужой код не возьмут, так что делай местный форк и будем наслаждаться предпросмотром

Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел
Добавлено: 26 сен 2013, 05:14
michael-yurov
Похоже пришло время рассказать правду.
В планировщике килофлопа есть где-то небольшой косяк.
(для просмотра содержимого нажмите на ссылку)Иногда на траекториях с дугами происходит что-то не так и станок может пройти угол в пределах порогового не снизив скорость достаточно для безопасного прохождения стыка.
Или же он не строит скругляющую дугу. Не знаю. Но провляется это, как "удар" в движении станка. При этом какая-нибудь ось может сорваться в пропуск шагов.
Если уменьшить пороговый угол (например 15°), то такие грубые углы становятся незаметны и срывов не происходит, но если пороговый угол достаточно большой (25° или больше), то можно "словить косяк".
Если сохранять траекторию только линейными сегменами, то никаких проблем не возникает. Полагаю, где-то есть ошибка в расчетах стыковки линейного сегмента с дугой.
Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел
Добавлено: 26 сен 2013, 08:13
scout
Похоже что пришло время рассказать правду )))
Прочитал всю ветку, вроде как все правильно говорится, но не увидел (может плохо смотрел) прямого указания на критически важное для реализации lookahead допущение: траектория должна быть сглажена. Ошибка отклонения от траектории, понятное дело, не должна быть более некой настроечной величины.
Я делал двух- и более проходный алгоритм: траектория (функция скорости от времени) разбивалась на элементарные отрезки (или параболы) и на них исходя из условий допустимых ускорений-торможений вычислялось время исходя из равенства площадей (перемещений). Эдакий "фильтр" которым "фильтровалась" траектория сначала вперед, потом назад, а иногда и несколько раз туда-сюда.
Все было прекрасно, пока это была одна ось, как только их становилось хотя бы две все портилось: либо появлялся скачок скорости на одной из осей, либо скорости на стыке даже очень маленького угла падали почти до нуля.
Вот сидел я и сильно чесал репу, как же так! А потом увидел исследование программ по сглаживанию траектории...
Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел
Добавлено: 26 сен 2013, 12:04
michael-yurov
scout, это ты для своих станков сам программу управления написал?
Серьезный подход.
scout писал(а):А потом увидел исследование программ по сглаживанию траектории...
Это где конкретно что увидел?
Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел
Добавлено: 26 сен 2013, 12:50
scout
Ну не то чтоб полностью сам, но непосредственное участие принимал и принимаю.
michael-yurov писал(а):Это где конкретно что увидел?
Да здесь на форуме была тема (сейчас не могу найти), сравнивались различные программы, в частности и качество сглаживания.
Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел
Добавлено: 26 сен 2013, 12:54
michael-yurov
scout писал(а):Да здесь на форуме была тема (сейчас не могу найти), сравнивались различные программы, в частности и качество сглаживания.
А , ну да это, наверное, я и писал.
http://cnc-club.ru/forum/viewtopic.php? ... %B5#p52201
Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел
Добавлено: 26 сен 2013, 13:02
scout
Точно, оно!
Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел
Добавлено: 27 сен 2013, 05:56
dpss
Гугл может найти кучу вариантов алгоритмов lookahead если правильно спросить
https://www.google.ru/#newwindow=1&q=lo ... e&safe=off
Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел
Добавлено: 27 сен 2013, 06:13
dpss
В одном из алгоритмов, на который я как то давал ссылку, была весьма здравая идея - обсчитывать lookahead не по времени, привязываясь к таймеру, а по пути. Например каждые 50 микрон, а на крутых изгибах чаще. Так можно сильно сэкономить буферную память, а памяти для хранения скоростного профиля сплайна нужно много.