Добрый день
Пилил несколько деталей на своем роутере и под конец, когда уже проходил контуры, сдвинулась заготовка. Материал (и время) выкидывать жалко и я знаю, что есть возможность заново закрепить заготовку с уже насверлеными отверстиями и забазироваться по ним. Проблема только в том, что лень идеально выставлять заготовку параллельно осям. Поэтому ведь можно как-то посмотреть текущие координаты пары отверстий и на основании этой инфы подвинуть/повернуть систему координат? Как это сделать?
Поворот координат по двум(трем) точкам
-
- Опытный
- Сообщения: 136
- Зарегистрирован: 20 янв 2017, 13:10
- Репутация: 7
- Настоящее имя: Anton
- Откуда: Алматы
- Контактная информация:
-
- Опытный
- Сообщения: 136
- Зарегистрирован: 20 янв 2017, 13:10
- Репутация: 7
- Настоящее имя: Anton
- Откуда: Алматы
- Контактная информация:
Re: Поворот координат по двум(трем) точкам
Ну эт понятно... а готового решения нет? Чтобы вбить туда координаты точек из файла и реально измеренные, а оно как-нибудь само повернет...
Я делал подобное для сверления платы, чтобы совпадало с фотовыводом. Фотовывод был не ахти какой точный, и пришлось масштабировать/поворачивать точки. Ну там самому пришлось прогу писать, а я думал, что уже какой-нибудь интузиаст такое придумал для LinuxCNC, просто я не нашел.
Я делал подобное для сверления платы, чтобы совпадало с фотовыводом. Фотовывод был не ахти какой точный, и пришлось масштабировать/поворачивать точки. Ну там самому пришлось прогу писать, а я думал, что уже какой-нибудь интузиаст такое придумал для LinuxCNC, просто я не нашел.
- Сергей Саныч
- Мастер
- Сообщения: 9116
- Зарегистрирован: 30 май 2012, 14:20
- Репутация: 2857
- Откуда: Тюмень
- Контактная информация:
Re: Поворот координат по двум(трем) точкам
Обычно такое делают для автоматизированного ввода координат, например [WIKI] Работа с центроискателем в LinuxCNC #1
Но и для ручного ввода измеренных координат можно доработать.
Или вот еще, попроще, для случая, похожего на ваш
Но и для ручного ввода измеренных координат можно доработать.
Или вот еще, попроще, для случая, похожего на ваш
Код: Выделить всё
o<scoffset> sub
; Смещение СК по данным замера координат двух точек (центров отверстий) и заданным их координатам
; Здесь принимаем из полей ввода pyvcp заданные координаты двух точек (#<_x1_setup>, #<_y1_setup>) и (#<_x2_setup>, #<_y2_setup>)
; А фактические координаты, измеренные при помощи центроискателя, уже лежат в переменных (#<_x1_measure>, #<_y1_measure>) и (#<_x2_measure>, #<_y2_measure>)
M66 E2 L0
#<_x1_setup> = #5399
M66 E3 L0
#<_y1_setup> = #5399
M66 E4 L0
#<_x2_setup> = #5399
M66 E5 L0
#<_y2_setup> = #5399
#<dy> = [#<_y2_measure> - #<_y1_measure>]
#<dx> = [#<_x2_measure> - #<_x1_measure>]
#<Am0> = atan[#<dy>]/[#<dx>] ; Угол наклона по данным измерения
#<dy> = [#<_y2_setup> - #<_y1_setup>]
#<dx> = [#<_x2_setup> - #<_x1_setup>]
#<A0> = atan[#<dy>]/[#<dx>] ; Угол наклона по данным задания
#<A> = [#<Am0> - #<A0>] ; Угол поворота CK
G10 P0 L2 X0. Y0. ; Присваиваем текущей точке координаты 0, 0
G10 P0 L2 R[#<A>] ; Поворачиваем СК на найденный угол
G10 P0 L20 X#<_x1_setup> Y#<_y1_setup> ; Выставляем заданные координаты текущей точки
o<scoffset> endsub
Чудес не бывает. Бывают фокусы.
-
- Кандидат
- Сообщения: 41
- Зарегистрирован: 19 апр 2020, 21:11
- Репутация: 2
- Настоящее имя: Александр
- Контактная информация:
Re: Поворот координат по двум(трем) точкам
а я делаю так.
центруюсь по отверстию
затем выставляю по какой то точке, например X100 Y5.5
забиваю это дело в эксель файл и формула мне показывает угол поворота. =ГРАДУСЫ(C4/B4), где С4 - X, a B4 - Y
а потом я просто этот угол вставляю в G код
G68G17X0Y0R5.25
где R это наш угол
и вся система координат XY разворачивается
причем изменяя угол в + поворот против часовой стрелке
а в минус поворот по часовой.
центруюсь по отверстию
затем выставляю по какой то точке, например X100 Y5.5
забиваю это дело в эксель файл и формула мне показывает угол поворота. =ГРАДУСЫ(C4/B4), где С4 - X, a B4 - Y
а потом я просто этот угол вставляю в G код
G68G17X0Y0R5.25
где R это наш угол
и вся система координат XY разворачивается
причем изменяя угол в + поворот против часовой стрелке
а в минус поворот по часовой.
-
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Поворот координат по двум(трем) точкам
когда утомит ексель(ну к старости точно ) напиши - я тебе лично проще штуку пришлюalex030272 писал(а):а я делаю так.
центруюсь по отверстию
затем выставляю по какой то точке, например X100 Y5.5
забиваю это дело в эксель файл и формула мне показывает угол поворота. =ГРАДУСЫ(C4/B4), где С4 - X, a B4 - Y
а потом я просто этот угол вставляю в G код
G68G17X0Y0R5.25
где R это наш угол
и вся система координат XY разворачивается
причем изменяя угол в + поворот против часовой стрелке
а в минус поворот по часовой.
-
- Кандидат
- Сообщения: 41
- Зарегистрирован: 19 апр 2020, 21:11
- Репутация: 2
- Настоящее имя: Александр
- Контактная информация:
Re: Поворот координат по двум(трем) точкам
В личку написалnkp писал(а):когда утомит ексель(ну к старости точно ) напиши - я тебе лично проще штуку пришлюalex030272 писал(а):а я делаю так.
центруюсь по отверстию
затем выставляю по какой то точке, например X100 Y5.5
забиваю это дело в эксель файл и формула мне показывает угол поворота. =ГРАДУСЫ(C4/B4), где С4 - X, a B4 - Y
а потом я просто этот угол вставляю в G код
G68G17X0Y0R5.25
где R это наш угол
и вся система координат XY разворачивается
причем изменяя угол в + поворот против часовой стрелке
а в минус поворот по часовой.