В каких переменных LinuxCNC хранит текущее положение?
-
Bmax77
- Мастер
- Сообщения: 400
- Зарегистрирован: 13 авг 2013, 11:05
- Репутация: 39
- Контактная информация:
В каких переменных LinuxCNC хранит текущее положение?
Хочу сохранять положение инструмента чтобы после смены и пробы новый инструмент возвращался в позицию предыдущего.
- Алексс
- Почётный участник

- Сообщения: 2210
- Зарегистрирован: 20 июл 2012, 15:49
- Репутация: 266
- Заслуга: IQ32
- Настоящее имя: Алексей
- Откуда: Прага
- Контактная информация:
Re: В каких переменных LinuxCNC хранит текущее положение?
g28.1 + g28
Каждая собака, бегущая на поводке впереди хозяина, думает, что ведет его за собой.
-
Bmax77
- Мастер
- Сообщения: 400
- Зарегистрирован: 13 авг 2013, 11:05
- Репутация: 39
- Контактная информация:
Re: В каких переменных LinuxCNC хранит текущее положение?
Ну это как вариант, но должен же быть способ получить текущие координаты станка, реальные или с учетом всех смещений?
- Serg
- Мастер
- Сообщения: 21923
- Зарегистрирован: 17 апр 2012, 14:58
- Репутация: 5183
- Заслуга: c781c134843e0c1a3de9
- Настоящее имя: Сергей
- Откуда: Москва
- Контактная информация:
Re: В каких переменных LinuxCNC хранит текущее положение?
Вообще-то g28 предназначена совсем для другого.
Непонятно вообще желание запоминать положение инструмента перед сменой. Всё равно позиционированием инструмента должна ведать CAM-программа, ведь только она точно знает где продолжится обработка.
Ну или представьте такую ситуацию: закончили работать короткой фрезой, запомнили положение, поменяли фрезу на более длинную, поехали в запомненное положение и приехали фрезой в стол/деталь.
Непонятно вообще желание запоминать положение инструмента перед сменой. Всё равно позиционированием инструмента должна ведать CAM-программа, ведь только она точно знает где продолжится обработка.
Ну или представьте такую ситуацию: закончили работать короткой фрезой, запомнили положение, поменяли фрезу на более длинную, поехали в запомненное положение и приехали фрезой в стол/деталь.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
- Алексс
- Почётный участник

- Сообщения: 2210
- Зарегистрирован: 20 июл 2012, 15:49
- Репутация: 266
- Заслуга: IQ32
- Настоящее имя: Алексей
- Откуда: Прага
- Контактная информация:
Re: В каких переменных LinuxCNC хранит текущее положение?
для чего ?UAVpilot писал(а):Вообще-то g28 предназначена совсем для другого.
четко по мануалу
сохранить и вернуться. читпG28.1 - stores the current absolute position into parameters 5161-5166.
G28 - makes a rapid traverse move from the current position to the absolute position of the values in parameters 5161-5166
Каждая собака, бегущая на поводке впереди хозяина, думает, что ведет его за собой.
-
Bmax77
- Мастер
- Сообщения: 400
- Зарегистрирован: 13 авг 2013, 11:05
- Репутация: 39
- Контактная информация:
Re: В каких переменных LinuxCNC хранит текущее положение?
Я пишу функцию смены инструмента с автоопределением вылета, есть у меня датчик. По этому фрезой мы не въедем никуда, а вот подвести инструмент в то место где закончилась обработка я считаю правильным, ибо САМ не знает как происходит смена, он просто пишет вызов процедуры, и потом брошенный где попало инструмент вот это ОПАСНО.UAVpilot писал(а):Ну или представьте такую ситуацию: закончили работать короткой фрезой, запомнили положение, поменяли фрезу на более длинную, поехали в запомненное положение и приехали фрезой в стол/деталь.
А вот использование G28 прямая дорога фрезой в деталь ибо сохраняются машинные координаты и более длинная фреза точно уйдет в деталь.
Ок, ну а хотябы где хранятся текущие абсолютные координаты? чтобы их можно было вытащить let var=#NNNN?
Последний раз редактировалось Bmax77 03 сен 2013, 14:58, всего редактировалось 1 раз.
- Алексс
- Почётный участник

- Сообщения: 2210
- Зарегистрирован: 20 июл 2012, 15:49
- Репутация: 266
- Заслуга: IQ32
- Настоящее имя: Алексей
- Откуда: Прага
- Контактная информация:
Re: В каких переменных LinuxCNC хранит текущее положение?
кам на 100% знает безопасную высоту на которой можно летать куда хочешь. если она задана не верно то ССЗБ.
на форуме детально описана процедура смены инструмента.
на форуме детально описана процедура смены инструмента.
Каждая собака, бегущая на поводке впереди хозяина, думает, что ведет его за собой.
-
Bmax77
- Мастер
- Сообщения: 400
- Зарегистрирован: 13 авг 2013, 11:05
- Репутация: 39
- Контактная информация:
Re: В каких переменных LinuxCNC хранит текущее положение?
Кам может и знает, но бывают нюансы. По тому и спрашиваю.
Ок. чтобы не разводить полемику, забудем про смену инструмента, как из LinuxCNC получить текущие координаты, желательно с учетом всех текущих смещений на данный момент?
Ок. чтобы не разводить полемику, забудем про смену инструмента, как из LinuxCNC получить текущие координаты, желательно с учетом всех текущих смещений на данный момент?
- Алексс
- Почётный участник

- Сообщения: 2210
- Зарегистрирован: 20 июл 2012, 15:49
- Репутация: 266
- Заслуга: IQ32
- Настоящее имя: Алексей
- Откуда: Прага
- Контактная информация:
Re: В каких переменных LinuxCNC хранит текущее положение?
очень опасно!Bmax77 писал(а):брошенный где попало инструмент вот это ОПАСНО
поэтому инструмент нужно убирать после смены и не разбрасывать где попало.
Каждая собака, бегущая на поводке впереди хозяина, думает, что ведет его за собой.
-
Bmax77
- Мастер
- Сообщения: 400
- Зарегистрирован: 13 авг 2013, 11:05
- Репутация: 39
- Контактная информация:
Re: В каких переменных LinuxCNC хранит текущее положение?
Да у меня тут на днях целый набор сверел пропал, но это так и не приблизило меня к ответу как узнать текущие координаты?Алексс писал(а):поэтому инструмент нужно убирать после смены и не разбрасывать где попало.
- Serg
- Мастер
- Сообщения: 21923
- Зарегистрирован: 17 апр 2012, 14:58
- Репутация: 5183
- Заслуга: c781c134843e0c1a3de9
- Настоящее имя: Сергей
- Откуда: Москва
- Контактная информация:
Re: В каких переменных LinuxCNC хранит текущее положение?
вот тут более развёрнуто: http://www.cnccookbook.com/CCCNCGCodeG2 ... erence.htm
G28 в основном используется как позиция смены инструмента, ибо CAM как правило не знает где именно находится автосменщик. Позиция как правило настраивается один раз при пусконаладке станка.
Используется это примерно так:
G28 Z0 (едем на безопасную высоту)
G28 X100 (объезжаем торчащий крепёж)
G28 (едем в позицию смены)
(меняем инструмент)
G29 Xnnn Ymmm Zkkk (возвращаемся к продолжению работы, куда CAM требует)
G28 в основном используется как позиция смены инструмента, ибо CAM как правило не знает где именно находится автосменщик. Позиция как правило настраивается один раз при пусконаладке станка.
Используется это примерно так:
G28 Z0 (едем на безопасную высоту)
G28 X100 (объезжаем торчащий крепёж)
G28 (едем в позицию смены)
(меняем инструмент)
G29 Xnnn Ymmm Zkkk (возвращаемся к продолжению работы, куда CAM требует)
Правильный CAM (постпроцессор) сначала с помощью G28 уводит инструмент в безопасное место и только потом вызывает процедуру смены инструмента. Сразу вызывать процедуру смены нельзя даже если в ней есть уход на безопасную высоту, ибо в конкретном случае могут использоваться приспособления, в которые можно въехать и на максимальной для станка высоте.Bmax77 писал(а):Я пишу функцию смены инструмента с автоопределением вылета, есть у меня датчик. По этому фрезой мы не въедем никуда, а вот подвести инструмент в то место где закончилась обработка я считаю правильным, ибо САМ не знает как происходит смена, он просто пишет вызов процедуры, и потом брошенный где попало инструмент вот это ОПАСНО.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
- Алексс
- Почётный участник

- Сообщения: 2210
- Зарегистрирован: 20 июл 2012, 15:49
- Репутация: 266
- Заслуга: IQ32
- Настоящее имя: Алексей
- Откуда: Прага
- Контактная информация:
Re: В каких переменных LinuxCNC хранит текущее положение?
ай спасибо дорогой!UAVpilot писал(а):вот тут более развёрнуто:
вот оно решение моей проблемы:
g91 g28x0y0
красота!
сегодня испытаю.
Каждая собака, бегущая на поводке впереди хозяина, думает, что ведет его за собой.
-
Bmax77
- Мастер
- Сообщения: 400
- Зарегистрирован: 13 авг 2013, 11:05
- Репутация: 39
- Контактная информация:
Re: В каких переменных LinuxCNC хранит текущее положение?
Позор на мою седую голову!!!
Вот ответ 5420-5428 - Current Position including offsets in current program units (X Y Z A B C U V W)
Вот ответ 5420-5428 - Current Position including offsets in current program units (X Y Z A B C U V W)
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: В каких переменных LinuxCNC хранит текущее положение?
Чуть запоздало, но... в последних версиях также работают и #<_x> #<_y> ... #<_w>.Bmax77 писал(а):Вот ответ 5420-5428 - Current Position including offsets in current program units (X Y Z A B C U V W)
Кстати, это локальные координаты, т.е. смена системы координат на них влияет, но это в принципе уже написано.
- ALS
- Опытный
- Сообщения: 159
- Зарегистрирован: 15 ноя 2013, 01:46
- Репутация: 161
- Откуда: Севастополь
- Контактная информация:
Re: В каких переменных LinuxCNC хранит текущее положение?
если уже обсуждалось - прошу тыкнуть носом...
Как (каким образом) эти координаты можно отправить в последовательный порт ?
Задача - повесить над станком внешний LED-дисплей, отображающий текущие координаты.
Как (каким образом) эти координаты можно отправить в последовательный порт ?
Задача - повесить над станком внешний LED-дисплей, отображающий текущие координаты.
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: В каких переменных LinuxCNC хранит текущее положение?
Кто будет этот led перерисовывать? Какая плата?
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: В каких переменных LinuxCNC хранит текущее положение?
так работает:
вот архив с конфигом - можно сразу запустить и пробовать читать устройством:
Код: Выделить всё
#!/usr/bin/python
import serial
import hal, time
ser = serial.Serial('/dev/ttyS0', 9600, timeout=1)
h = hal.component("com-out")
h.newpin("inX", hal.HAL_FLOAT, hal.HAL_IN)
h.newpin("inY", hal.HAL_FLOAT, hal.HAL_IN)
h.newpin("inZ", hal.HAL_FLOAT, hal.HAL_IN)
h.newpin("out", hal.HAL_FLOAT, hal.HAL_OUT)
h.ready()
try:
while 1:
time.sleep(1)
ser.write('%f' % (h['inX']))
ser.write('%f' % (h['inY']))
ser.write('%f' % (h['inZ']))
except KeyboardInterrupt:
raise SystemExit
- Сергей Саныч
- Мастер
- Сообщения: 9116
- Зарегистрирован: 30 май 2012, 14:20
- Репутация: 2858
- Откуда: Тюмень
- Контактная информация:
Re: В каких переменных LinuxCNC хранит текущее положение?
Что-то я туплю
Не могу сообразить, как привязать переменные LCNC к пинам hal
Просто, скажем, чтобы вывести значение переменной (#5xxx или #<_xxx>) на панель pyvcp.
Не могу сообразить, как привязать переменные LCNC к пинам hal
Просто, скажем, чтобы вывести значение переменной (#5xxx или #<_xxx>) на панель pyvcp.
Чудес не бывает. Бывают фокусы.
- ALS
- Опытный
- Сообщения: 159
- Зарегистрирован: 15 ноя 2013, 01:46
- Репутация: 161
- Откуда: Севастополь
- Контактная информация:
Re: В каких переменных LinuxCNC хранит текущее положение?
nkp, большое спасибо, буду пробовать.
Nick, есть разные платы, собираю сам. В их основе - микроконтроллер с аппаратным UART-ом, работающим в 9600-8-N-1, к которому подключены линейки светодиодных индикаторов (или 20х4 LCD). Получается как бы "умный" LED.
Nick, есть разные платы, собираю сам. В их основе - микроконтроллер с аппаратным UART-ом, работающим в 9600-8-N-1, к которому подключены линейки светодиодных индикаторов (или 20х4 LCD). Получается как бы "умный" LED.
