Измерение длины инструмента

Post Reply
Kiriller
Posts: 18
Joined: Thu Jun 14, 2018 9:51 am

Измерение длины инструмента

Post by Kiriller » Fri Jul 20, 2018 10:13 pm

Я так понимаю G38.9 мне в помощь? Расскажите, пожалуйста, принцип действия сего кода.
Как прописать тип датчика и его вход?
Как происходит вычисление длинны инструмента?

mycnc
Posts: 140
Joined: Thu May 10, 2018 2:42 pm

Re: Измерение длинны инструмента

Post by mycnc » Sun Jul 22, 2018 2:15 pm

Code: Select all

G53 G90 G38.9 Z[#5473 - 20] F 200.0
По коду едет в заданном направлении заданное расстояние с заданной скоростью.
При срабатывании датчика система останавливает движение и вычисляет длину инструмента исходя из текущей координаты и заданного положения датчика длины инструмента, сохраняет результат в таблице инструмента для данного номера.

Положение датчика, номер входа, нормально замкнутый-разомкнутый - все вводится в Визарде

mycnc-profiles--34.png
mycnc-profiles--34.png (195.51 KiB) Viewed 269 times

Kiriller
Posts: 18
Joined: Thu Jun 14, 2018 9:51 am

Re: Измерение длинны инструмента

Post by Kiriller » Sun Jul 22, 2018 3:27 pm

А если срабатывания так и не произошло? Просто остановится?

mycnc
Posts: 140
Joined: Thu May 10, 2018 2:42 pm

Re: Измерение длинны инструмента

Post by mycnc » Sun Jul 22, 2018 3:48 pm

Вероятно, проедет заданное в команде расстояние.
В команде задано -

Code: Select all

Z[#5473 - 20]
#5473 - это высота датчика длины инструмента, то есть ехать на 20мм ниже датчика -
должно сработать по-любому, даже если фрезы нет вообще.

Kiriller
Posts: 18
Joined: Thu Jun 14, 2018 9:51 am

Re: Измерение длинны инструмента

Post by Kiriller » Sun Jul 22, 2018 7:44 pm

Как прописать номер входа и тип датчика (в какие регистры) без визарда? Есть стойкое ощущение, что визард не работает.

mycnc
Posts: 140
Joined: Thu May 10, 2018 2:42 pm

Re: Измерение длинны инструмента

Post by mycnc » Mon Jul 23, 2018 9:33 pm

Kiriller wrote:
Sun Jul 22, 2018 7:44 pm
Как прописать номер входа и тип датчика (в какие регистры) без визарда? Есть стойкое ощущение, что визард не работает.
Задача визарда сгенерить макрос согласно введенным параметрам.
По кнопке "Generate" новый макрос отображается в окне справа.
По кнопке "Save Macro" он сохоаняется из этого окна в файл.

Можно узнать, что из вышеперечисленного не работает в визарде?

Kiriller
Posts: 18
Joined: Thu Jun 14, 2018 9:51 am

Re: Измерение длинны инструмента

Post by Kiriller » Mon Jul 23, 2018 10:19 pm

Из вышеперечисленного работает все.
Но ни координат датчика, ни номера и типа входа в макросе в итоге в явном виде не прописывается. ( хотя может так и задумано)
Беда в том, что, например, в переменных, соответсвующих координатам датчика, оказывается не то, что и ввожу в визарде. Проверил я это после того, как станок упорно ехал не туда.
На датчит тоже не реагирует, хотя сигнал с него приходит.
Да и фиг бы с ним- я и руками напишу. Датчик бы только прописать!

mycnc
Posts: 140
Joined: Thu May 10, 2018 2:42 pm

Re: Измерение длинны инструмента

Post by mycnc » Wed Jul 25, 2018 8:06 pm

Макрос, полученный из визарда -

Code: Select all

(Tool length measure macro)
(#5431...#5438 - Work area Max)
(#5471...#5479 - Tool Length Sensor position)
#100= 800.0 (Speed Z)
#101= 800.0 (Speed XY)
G28.2 X0 Y0 Z0(save current position into Register1.Z)
G90 G53 G0 Z[#5433-1.0] F#100      (Move up to safe position)
G90 G53 G0 X#5471 Y#5472 F#101    (move to Tool Sensor Position)
G90 G53 G38.9 Z[#5473 - 20] F 200.0
G04 P0.2
G90 G53 G0 Z[#5433-1.0] F#100 (Move up to safe position)
G90 G53 G28.5 F#101 X0 Y0(move back to saved XY/Register1.XY)
G90 G53 G28.5 Z0 F#100 (move down to saved Z/Register1.Z)
M02
ZMAX координата - #5433
Координаты датчика измерения длины инструмента хранятся в переменных
X - #5471, Y- #5472, Z- #5473

Прямых значений в макросе нет.
Сделано, чтобы можно было править координаты положения датчика без генерации макроса.

Номер датчика длины инструмента просылается мимо переменных напрямую в контроллер.
Его значение хранится в cnc-tools.xml

Code: Select all

<value enabled="true" name="cnc-tool-length-sensor-number">15</value>
<value name="cnc-tool-length-sensor-inversion">0</value>
Проверять там не возникало необходимости.

Макрос проверил, все работает.
На всякий случай добавил G90 перед машинными кординатами G53.

Kiriller
Posts: 18
Joined: Thu Jun 14, 2018 9:51 am

Re: Измерение длины инструмента

Post by Kiriller » Sun Jul 29, 2018 8:05 pm

Code: Select all

(Tool length measure macro)
(#20 is fast speed motion length)
(#5421...#5428 - Work area Min)
(#5431...#5438 - Work area Max)
(#5471...#5479 - Tool Length Sensor position)
#100= 800.0 (Speed Z)
#101= 800.0 (Speed XY)
(G28.2 X0 Y0)(save current position into Register1.Z)
(G53 G0 Z[#5433-1.0] F#100)
(Move up to safe position)
(G53 G0 X#5471 Y#5472 F#101) (move to Tool Sensor Position)
G53 G90 G38.9 Z[#5423+2] F 200.0
G04 P0.2
G53 G0 Z[#5433-2.0] F#1000
(Move up to safe position)
(G53 G28.5 F#101 X0 Y0)(move back to saved XY/Register1.XY)
M02
Kak ja i govoril, vizard krivoj- ni datrchik, ni drugie peremennye nikuda ne propisyvaet. Propisal datchuk cherez XML.
G38.9 vrode rabotaet. NO:
1. Dlinna instrumenta v tablicu propisyvaetsa tolko pri ejo obnovlenii. Naprimer, eslio ee zakryt i otkryt zanovo. Ne udobnenko!
2. Na G53 G38.9 ne dejstvuet G90/G91. Kak edet v zadanye mashinnie koordinaty, tak i edet.

mycnc
Posts: 140
Joined: Thu May 10, 2018 2:42 pm

Re: Измерение длины инструмента

Post by mycnc » Sat Aug 11, 2018 2:46 am

1) Сделал видео по работе визарда измерения длины инструмента и самого макроса.


youtu.be/k9tdbP37yEw

Показал, что изменение номера датчика длины работает как и было заложено. При этом перегенерить макрос в самом визарде нет необходимости, так как номер датчика длины инструмента хранится в переменных, сам макрос не изменяется при изменении номера входа.

2) Длина инструмента в таблице инструмента ЧПУ меняется сразу в процессе измерения, но на экране показывается только копия значений, сделанная при открытии. Сделали демон, следящий за изменениями и обновляющий значения на экране. Кроме того добавляем в окно другие поля, которые могут быть полезны при измерении длины инструмента и работе с таблицей инструмента. Если есть пожелания, готов выслушать.

3)Датчик длины инструмента зафиксирован и расположен в машинных координатах. Поэтому G38.9 работает только с машинными абсолютными координатами. Это сделано намеренно и не вижу необходимости это менять.

Post Reply