Страница 1 из 2

Карта памяти переменных.

Добавлено: 02 июл 2013, 11:04
Сергей Саныч
Что-то я не нашел, где можно посмотреть распределение памяти переменных LinuxCNC, доступных из G-кода.
Фрагментарно в документации есть, а вот сводной карты не видел.
Конкретно - интересуют значения лимитов осей.

Re: Карта памяти переменных.

Добавлено: 02 июл 2013, 11:47
Nick
Самое полное описание, что я видел тут: http://www.linuxcnc.org/docs/devel/html ... parameters
Это для последней версии, некоторые именные параметры работать не будут в предыдущих версиях.
по пределам осей там вроде нет.

Можно попробовать использовать параметры ini или hal, но опять только в master версии.
типо вот такого: #<_hal[gladevcp.radius.rad-f]>

(
http://linuxcnc.org/dapper/index.php/en ... mitstart=0
http://www.linuxcnc.org/docs/devel/html ... features_a
)

А какая конечная задача?

Re: Карта памяти переменных.

Добавлено: 02 июл 2013, 11:57
Сергей Саныч
Nick писал(а):А какая конечная задача?
Разбираюсь с измерением длины инструмента. Вроде все работает, но получаю предупреждение про то, что "Программа выходит за минимум оси Z" при запуске, хотя потом все исполняется как надо.

Re: Карта памяти переменных.

Добавлено: 02 июл 2013, 11:58
Nick
Покаж программу...

Re: Карта памяти переменных.

Добавлено: 02 июл 2013, 12:11
Сергей Саныч

Код: Выделить всё

; Измерение длины инструмента (tool offset)
; Параметры - место расположения датчика (X, Y) в координатах G53
o<tool_measure> sub
G90
G53 G0 Z-160.
G53 G0 X#1 Y#2
G49
G54
G91 
G38.2 Z-80. F500
G38.3 Z-0.1 ; Для гарантированного срабатывания
G38.4 Z3. F30
#<ToolZ> = [#5063 + #5223]
#<Zoffset> = -270. ; Смещение по Z
#<TLSheight> = 43.23 ; Высота датчика
G38.5 Z1. F200 ;  Для гарантированного отпускания
#<TL> = [#<ToolZ> - #<Zoffset> - #<TLSheight>] 
G90 
G53 G0 Z-100
G43.1 Z[#<TL>]
o<tool_measure> endsub
M02

Re: Карта памяти переменных.

Добавлено: 02 июл 2013, 12:15
Nick
Serg-tmn писал(а):G38.5 Z1. F200 ;  Для гарантированного отпускания
а попробуй сделать G53 G38.5 Z1. F200 (вместо Z1 - минимальный предел)
Хотя не уверен, что сработает, но может...
G53 - перемещение в абсолютных координатах станка.

Re: Карта памяти переменных.

Добавлено: 02 июл 2013, 12:18
Nick
Кстати, зачем тебе 3 пермещения. G38?
для чего это гарантированное срабатывание?
отъедь назад и заново вперед на маленькой скоростью измеряй... или debounce добавь на probe, тогда просто так срабатывать не будет.

Re: Карта памяти переменных.

Добавлено: 02 июл 2013, 12:19
Сергей Саныч
Nick писал(а):а попробуй сделать G53 G38.5 Z1. F200 (вместо Z1 - минимальный предел)
Хотя не уверен, что сработает
правильно, что не уверен. Не работает. Говорит, что с G53 можно только G00 или G01 и ничего больше.

Re: Карта памяти переменных.

Добавлено: 02 июл 2013, 12:20
Nick
Тогда можно так
G53 G0 Z100
G91
G38.2 Z-100
G90

Re: Карта памяти переменных.

Добавлено: 02 июл 2013, 12:23
Nick
а, у тебя так и есть :)
А какие у тебя пределы оси?
И на какой строчке он может вылетать вообще?

Re: Карта памяти переменных.

Добавлено: 02 июл 2013, 12:29
Сергей Саныч
Nick писал(а):Кстати, зачем тебе 3 пермещения. G38?
Даже 4 :)
Иногда (очень редко) датчик дает дребезг. Из-за этого, если сразу после G38, особенно на малой скорости, делать простое перемещение, LCNC немедленно ругается, что датчик не вовремя сработал. Поэтому все "потенциально опасные" перемещения делаю только по G38, даже если результат потом не использую. И только отойдя от датчика хотя бы на 1мм, включаю G00.
Nick писал(а):или debounce добавь на probe
Можно, но результат не гарантирован.

Re: Карта памяти переменных.

Добавлено: 02 июл 2013, 12:44
Nick
Хммм, а может вот это дает ошибку:
G53 G0 Z-100

Просто так само по себе не должно уходить за пределы...

Re: Карта памяти переменных.

Добавлено: 02 июл 2013, 13:06
Алексс
Может пригодится мой вариант измерения.

Код: Выделить всё

o<auto-tool-change> sub
(G90 G53 G0 Z0)
(G90 G53 G0 X0 Y0)
g49
g40
g90
g53 g0 z0
g53 g0 x135 y71
G91
G38.2 Z-200 F500
G38.4 Z10 F200
G38.2 Z-5 F30
#<_ToolZ>=#5063
(G43.1 z[#<_ToolZ> - #<_ToolRefZ>])
G43.1 z[#<_ToolZ> - #1000]
G90 G53 G0 Z0
(G90 G53 G0 X50 Y50)
o<auto-tool-change> endsub
M02

Re: Карта памяти переменных.

Добавлено: 02 июл 2013, 13:11
Nick
И у этого перемещения около датчика все на G38 :)
И главное сидят молчат :)

Re: Карта памяти переменных.

Добавлено: 02 июл 2013, 13:22
Сергей Саныч
Nick писал(а):Просто так само по себе не должно уходить за пределы...
А оно и не уходит никуда. Просто ругается при запуске программы. А потом, если нажать "продолжить", всё прекрасно выполняется и ни за какие пределы не уходит.
Алексс писал(а):Может пригодится мой вариант измерения.
Да я и так твой взял за основу ;)

Re: Карта памяти переменных.

Добавлено: 02 июл 2013, 13:25
Алексс
а чо сразу молчат то :)
чтобы картина была полной, краткое описание. надеюсь Серж будет не против :)

скрипт первый - найти ноль заготовки по Z

скрипт второй - найти расстояние между нулем детали и нулем стола (того места, где будет находится датчик при последующих измерениях)

скрипт третий- измерить новый инструмент и настроить длину.

G38.4 Z10 F200 можно зменить на просто отъезд вверх по Z, но так значительно быстрее и учитываются инерционные свойства приводов и тп.

порядок действий:
установить датчик на ноль детали, выполнить скрипт 1;
установить датчик туда, где он будет стоять при работе, выполнить скрипт два;
настройка закончена. потом уже только вызываем скрипт 3 для настройки очередного инструмента.

внимание:
работает только в первой (в одной) системе координат.
координаты датчика забиты жестко в коде. надо заменить на свои или использовать G28/G28.1 или G30/G30.1

Re: Карта памяти переменных.

Добавлено: 02 июл 2013, 13:36
Nick
чтобы картина была полной, краткое описание.
:good: вот так бы сразу :)
Serg-tmn писал(а):А оно и не уходит никуда. Просто ругается при запуске программы. А потом, если нажать "продолжить", всё прекрасно выполняется и ни за какие пределы не уходит.
Т.е. вот это:
Serg-tmn писал(а):G53 G0 Z-100
в пределах оси станка?

Re: Карта памяти переменных.

Добавлено: 02 июл 2013, 13:40
Алексс
G53 G0 Z-100 заменить на
G0 Z-100 и все пойдет

Re: Карта памяти переменных.

Добавлено: 02 июл 2013, 13:43
Nick
Я так думаю тут лучше
G53 G0 Z100
или вообще что-то совсем другое :thinking:.

Re: Карта памяти переменных.

Добавлено: 02 июл 2013, 13:44
Алексс
ой, не, не пойдет :)
ездий всегда в абсолютный ноль по Z (самая верхняя позиция) и все.
это чуть чуть дольше, но зато безопасно.