Измерительный цикл PROBE для Sinumerik 808d

Fanuc, Okuma, Sinumerik и т.д.
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6191
Откуда: Казахстан.
Контактная информация:

Измерительный цикл PROBE для Sinumerik 808d

Сообщение aftaev »

Написал свой удобный мне измерительный цикл для щупа(Renishaw).
Цикл останавливается при столкновении, есть калибровка щупа, поиск центра, измерение детали.

Цикл написал в MDA, нужные параметры редактируются в переменных. Все работает. Но это малость не удобно и не наглядно.

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

;********* ТИП ПОИСКА *************
DEF REAL TYPE=0		;0=Поиск XY, 1=Х, 2=Y, 3=Z
DEF REAL IN_OUT=0	;0=СНАРУЖИ, 1=ВНУТРИ
;********* ОСНОВНЫЕ ПАРАМЕТРЫ *************
DEF REAL MOVE_X=120		;Размер детали по X(мм)
DEF REAL MOVE_Y=50 		;Размер детали по Y(мм)
DEF REAL MOVE_Z=10 		;Глубина опускания щупа(мм)
DEF REAL PROBE_SPEEDZ=300 	;Скорость опусканию щупа(мм/мин)
DEF REAL PROBE_SPEED=3000 	;Скорость быстрого поиска(мм/мин)
DEF REAL PROBE_SPEED2=100	;Скорость среднего поиска(мм/мин)
DEF REAL PROBE_SPEED3=1	;Скорость медленного поиска(мм/мин)
DEF REAL PROBE_MOVE=10 	;Отскок среднего поиска(мм)
DEF REAL PROBE_MOVE2=0.5 	;Отскок медленного поиска(мм)
DEF REAL S_SPINDLE=500	;Обороты шпинедля(об/мин)
;********* ДЛЯ КАЛИБРОВКи *************
DEF REAL GAUGE_X=100		;Эталон(КМД) по X(мм) 
DEF REAL DIAL_BALL=6.372	;Диаметр шарика щупа(мм)

;********* РЕЗУЛЬТАТЫ ИЗМЕРЕНиЯ  *************
;Расчет диам. шара 	R18
;Расчет детали Х 	R19
;Расчет детали Y 	R20

Прописал цикл как по мануалу, в меню пользовательских циклов с красивыми картинками.
Нефурычит :pssdoff:
808scr3.png (7133 просмотра) <a class='original' href='./download/file.php?id=180011&sid=a6d3571ee9a098fc2629c5cd868d00fc&mode=view' target=_blank>Загрузить оригинал (20.32 КБ)</a>
При выполнении цикла вылазит ошибка. Что то не то с передачей данных из меню :thinking:
СКРиН ОШИБКИ.png (7133 просмотра) <a class='original' href='./download/file.php?id=180008&sid=a6d3571ee9a098fc2629c5cd868d00fc&mode=view' target=_blank>Загрузить оригинал (23.57 КБ)</a>
Пользовательский цикл в архиве.
CYCLE PROBE.rar
(66.96 КБ) 433 скачивания
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
Аватара пользователя
Lexxa
Мастер
Сообщения: 2703
Зарегистрирован: 16 дек 2011, 16:48
Репутация: 319
Настоящее имя: Алексей
Откуда: ryazan
Контактная информация:

Re: Измерительный цикл PROBE для Sinumerik 808d

Сообщение Lexxa »

Судя по шапке у тебя переменные в цикле объявляется def...
А чтобы передавать параметр, тебе нужно заголовок сделать типа
proc mycycle1(int vary, real var2,...)
А в самом цикле тогда def real var1 не писать..
P.S. маска тут непричем, сам цикл не смотрел ещё, оплачивать можно в стимуляторе.
:bender:
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6191
Откуда: Казахстан.
Контактная информация:

Re: Измерительный цикл PROBE для Sinumerik 808d

Сообщение aftaev »

Lexxa писал(а):Судя по шапке у тебя переменные в цикле объявляется def...
Это для того чтобы цикл можно открыть в MDA и ручками править параметры. У меня два разных файла. Один для работы в MDA, другой для пользвательского цикла. Шапки файлах разные.

Чтобы работал пользовательский цикл, все немножко сложнее, там нужна кучка файлов.
Есть файл CYCLE101.SPF. У него шапка выглядит так:

PROC CYCLE101(STRING[6] TYPE, REAL MOVE_X, REAL MOVE_Y, REAL MOVE_Z, P_SPEEDZ, REAL P_SPEED, REAL P_SPEED2, REAL P_SPEED3, REAL P_MOVE, REAL P_MOVE2, REAL S_SPINDLE, REAL GAUGE_X,REAL DIAL_BALL)

DEF закоментированы
;;********* ТИП ПОИСКА *************
;DEF INT TYPE=0 ;0=Поиск XY, 1=Х, 2=Y, 3=Z
;;********* ОСНОВНЫЕ ПАРАМЕТРЫ *************
;DEF REAL MOVE_X=120 ;Размер детали по X(мм)
;DEF REAL MOVE_Y=50 ;Размер детали по Y(мм)
;DEF REAL MOVE_Z=10 ;Глубина опускания щупа(мм)
;DEF REAL P_SPEEDZ=300 ;Скорость опусканию щупа(мм/мин)
;DEF REAL P_SPEED=3000 ;Скорость быстрого поиска(мм/мин)
;DEF REAL P_SPEED2=100 ;Скорость среднего поиска(мм/мин)
;DEF REAL P_SPEED3=1 ;Скорость медленного поиска(мм/мин)
;DEF REAL P_MOVE=10 ;Отскок среднего поиска(мм)
;DEF REAL P_MOVE2=0.5 ;Отскок медленного поиска(мм)
;DEF REAL S_SPINDLE=500 ;Обороты шпинедля(об/мин)
;;********* ДЛЯ КАЛИБРОВКи *************
;DEF REAL GAUGE_X=100 ;Эталон(КМД) по X(мм)
;DEF REAL DIAL_BALL=6.372 ;Диаметр шарика щупа(мм)

С меню параметры передаются через файл sc.com. Где тоже задаются переменные
//CN101(CYCLE101)
(R/*1 2 3/0/$83020)[TYPE]/B CN101
(R/0 99999.999/120/$83021)[SZ_X]/B CN102
(R/-9999.999 99999.999/50/$83022)[SZ_Y]/B CN103
(R/-9999.999 99999.999/10/$83023)[ENDZ]/B CN104
(R/0 99999.999/200/$83024)[SP_Z]/B CN104
(R/0 99999.999/2000/$83025)[SPD0]/B CN105
(R/1 99999.999/100/$83026)[SPD1]/B CN105
(R/1 99999.999/1/$83027)[SPD2]/B CN105
(R/1 99999.999/10/$83028)[MOV1]/B CN106
(R/1 99999.999/0.5/$83029)[MOV2]/B CN106
(R/1 99999.999/500/$83030)[M3_S]/B CN108
(R/1 99999.999/100/$83031)[GAUG]/B CN102
(R/1 99999.999/6.3/$83032)[BAll]/B CN107
M17
Lexxa писал(а):P.S. маска тут непричем, сам цикл не смотрел ещё, оплачивать можно в стимуляторе.
Я отлаживаю в стоке токарной что дома. Потом переносил на фрезерный станок. То что стойки разные по годам, в токарной(более новой) пофиг на кодировку файла, а для фрезерной нужно UTF-8
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
Аватара пользователя
Lexxa
Мастер
Сообщения: 2703
Зарегистрирован: 16 дек 2011, 16:48
Репутация: 319
Настоящее имя: Алексей
Откуда: ryazan
Контактная информация:

Re: Измерительный цикл PROBE для Sinumerik 808d

Сообщение Lexxa »

Ну хорошо. Пусть два файла.
Cycle101.spf ты положил в папку пользовательских циклов?
Соответственно, если ты в MDA его вызовет, а параметры подсунешь ручками, цикл работает?
Выглядеть это должно так примерно
CYCLE101(1,120,50,10,200,2000,100,1,10,0.5,500,100,6.3))
И цикл старт.
Скорее всего ругается точно так же.
Соответственно вопрос к STRING[6]. Мне кажется, что такие переменные должны передаваться в кавычках.
Это во первых
:bender:
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6191
Откуда: Казахстан.
Контактная информация:

Re: Измерительный цикл PROBE для Sinumerik 808d

Сообщение aftaev »

Lexxa писал(а):Cycle101.spf ты положил в папку пользовательских циклов?
Да.
Lexxa писал(а):Соответственно, если ты в MDA его вызовет, а параметры подсунешь ручками, цикл работает?
Я так не делал. В MDA вроде нет доступа к папке пользовательских циклов.
Lexxa писал(а):Выглядеть это должно так примерно
CYCLE101(1,120,50,10,200,2000,100,1,10,0.5,500,100,6.3))
Так примерно и выглядит когда в АВТО, только еще куча нулей после запятой. На скрине выше видно. Нажимаю Старт и ошибка.
Lexxa писал(а):Соответственно вопрос к STRING[6]. Мне кажется, что такие переменные должны передаваться в кавычках.
Это первый вариант цикла был. Там было в кавычках, потом пробовал STRING[6], а потом все переменные переделал на Real. В самом цикле эта переменная не используется пока что.

У меня другая идея. Нужно Cycle101.spf переписать так чтобы просто принимал параметры и их выводил куда нибудь, например в R. И посмотреть что будет.

Lexxa, как можно в 808д вывести какое либо сообщение. Например: измеренное расстояние Х=43.45мм. Через MSG не получается. Я так понял через него можно вывести только STRING переменные.
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
Аватара пользователя
Lexxa
Мастер
Сообщения: 2703
Зарегистрирован: 16 дек 2011, 16:48
Репутация: 319
Настоящее имя: Алексей
Откуда: ryazan
Контактная информация:

Re: Измерительный цикл PROBE для Sinumerik 808d

Сообщение Lexxa »

aftaev писал(а): CYCLE101.SPF

PROC CYCLE101(STRING[6] TYPE, REAL MOVE_X, REAL MOVE_Y, REAL MOVE_Z, P_SPEEDZ, REAL P_SPEED, REAL P_SPEED2, REAL P_SPEED3, REAL P_MOVE, REAL P_MOVE2, REAL S_SPINDLE, REAL GAUGE_X,REAL DIAL_BALL)
Т.е. в цикле ты объявил, что переменная TYPE у тебя типа STRING.
А в sc.com
aftaev писал(а): //CN101(CYCLE101)
(R/*1 2 3/0/$83020)[TYPE]/B CN101
(R/0 99999.999/120/$83021)[SZ_X]/B CN102
(R/-9999.999 99999.999/50/$83022)[SZ_Y]/B CN103
(R/-9999.999 99999.999/10/$83023)[ENDZ]/B CN104
(R/0 99999.999/200/$83024)[SP_Z]/B CN104
(R/0 99999.999/2000/$83025)[SPD0]/B CN105
(R/1 99999.999/100/$83026)[SPD1]/B CN105
(R/1 99999.999/1/$83027)[SPD2]/B CN105
(R/1 99999.999/10/$83028)[MOV1]/B CN106
(R/1 99999.999/0.5/$83029)[MOV2]/B CN106
(R/1 99999.999/500/$83030)[M3_S]/B CN108
(R/1 99999.999/100/$83031)[GAUG]/B CN102
(R/1 99999.999/6.3/$83032)[BAll]/B CN107
M17
Ты заявляешь, что переменная TYPE у тебя типа REAL, которые как я понимаю вываливается в виде списка, который можно щёлкать кнопкой селект.
Короче. В шапке цикла параметр TYPE исправь на INT. В sc.com параметр TYPE тоже исправь на INT

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

([b]I[/b]/*1 2 3/0/$83020)[TYPE]/B CN101
Ну и в теле CYCLE101.SPF посмотри, что и как ты обрабатываешь с переменной TYPE.
:bender:
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6191
Откуда: Казахстан.
Контактная информация:

Re: Измерительный цикл PROBE для Sinumerik 808d

Сообщение aftaev »

Lexxa писал(а):Т.е. в цикле ты объявил, что переменная TYPE у тебя типа STRING.
А в sc.com
Я по разному пробовал. И всегда в CYCLE101.SPF и sc.com переменные были одинаковые. Скорее всего в последний раз менял файл CYCLE101.SPF , залил в стоку попробовал. Не работает. Вот эту версию и залил на форум.
Lexxa писал(а):Ну и в теле CYCLE101.SPF посмотри, что и как ты обрабатываешь с переменной TYPE.
Эта переменная на будущее. Она нигде не используется. Я ее пробовал убирать. Ничего не меняется.
Стойка ругается на 2 и 12 параметр. Чего то там не ожидается :hehehe:
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
Аватара пользователя
Lexxa
Мастер
Сообщения: 2703
Зарегистрирован: 16 дек 2011, 16:48
Репутация: 319
Настоящее имя: Алексей
Откуда: ryazan
Контактная информация:

Re: Измерительный цикл PROBE для Sinumerik 808d

Сообщение Lexxa »

Допустим у тебя есть цикл который складывает два числа, которые ты передашь в подпрограмму через её параметры, результатом работы подпрограммы будет сложение этих двух значений и вывод результата в виде сообщения и записью их в R параметры.
Соответственно подпрограмма будет выглядеть примерно так:

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

PROC sum(real var1, real var2)
def real var3
var3=var1+vary
msg("variable1="<<var1)
m0
msg()
m0
msg("varable2="<<var2)
m0
msg()
m0
msg("var1+var2="<<var3)
M0
R1=var1
R2=var2
R3=var3
m17
Доступ к подпрограммам есть отовсюду.
Из м-да тоже так можно вызывать подпрограммы.

У тебя путаница с типами. Выложи финальную версию цикла сюда.
:bender:
Аватара пользователя
Lexxa
Мастер
Сообщения: 2703
Зарегистрирован: 16 дек 2011, 16:48
Репутация: 319
Настоящее имя: Алексей
Откуда: ryazan
Контактная информация:

Re: Измерительный цикл PROBE для Sinumerik 808d

Сообщение Lexxa »

И ещё мне кажется,, что имена переменных из cycle101 и описания маски дл cycle101 должны совпадать
:bender:
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6191
Откуда: Казахстан.
Контактная информация:

Re: Измерительный цикл PROBE для Sinumerik 808d

Сообщение aftaev »

Lexxa писал(а):Выложи финальную версию цикла сюда.
CYCLE PROBE.rar
(65.61 КБ) 394 скачивания
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6191
Откуда: Казахстан.
Контактная информация:

Re: Измерительный цикл PROBE для Sinumerik 808d

Сообщение aftaev »

Lexxa писал(а):И ещё мне кажется,, что имена переменных из cycle101 и описания маски дл cycle101 должны совпадать
Это в файле sc.com
//CN101(CYCLE101)
(R/0 99999.999/120/$83021)[SZ_X]/B CN102
(R/-9999.999 99999.999/50/$83022)[SZ_Y]/B CN103
...
M17

Должно совпадать с этим в CYCLE101.SPF
PROC CYCLE101(REAL MOVE_X, REAL MOVE_Y, REAL MOVE_Z, P_SPEEDZ, REAL P_SPEED, REAL P_SPEED2, REAL P_SPEED3, REAL P_MOVE, REAL P_MOVE2, REAL S_SPINDLE, REAL GAUGE_X, REAL DIAL_BALL)
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6191
Откуда: Казахстан.
Контактная информация:

Re: Измерительный цикл PROBE для Sinumerik 808d

Сообщение aftaev »

Lexxa, я что заметил, что важны пробелы и кодировка файла.
Например: УП делается в СолидКам. Загружаю, программа выполняется и в конце мне всегда выдавало ошибку. :attention: Неправильный конец программы.
Стояло М30.
Пробовал М2
Пробовал М17
Все равно ошибку писало :pssdoff:
Пока после М2, Энтер не нажал :hehehe:

Раньше было так, и выдавало ошибку
N2340 M2

Исправил постпроцессор в SolidCam. чтоб выдавал пустую строчку. Ошибка ушла :roll:
...
...
N2340 M2
N2350

Возможно и в циклах где то нужно пробел или что то добавить. На разных версиях 808д, по разному циклы отображаются. Написал в тех. поддержку за обновление. Жду когда на сервер выложат обновление. Сделают образ софткарты, архив пусконаладки и буду пробовать обновляться.
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
Аватара пользователя
Lexxa
Мастер
Сообщения: 2703
Зарегистрирован: 16 дек 2011, 16:48
Репутация: 319
Настоящее имя: Алексей
Откуда: ryazan
Контактная информация:

Re: Измерительный цикл PROBE для Sinumerik 808d

Сообщение Lexxa »

aftaev писал(а): Это в файле sc.com
Должно совпадать с этим в CYCLE101.SPF
Да, проверил. Важна последовательность, а не имена.
Короче твой цикл почти рабочий, малость подправил - у тебя для переменной P_SPEEDZ не указан был тип.
Ну и детские ошибочки типа дефолтное значение переменной вываливается за диапазон значений.
Добавил цикл102 - тоже самое, но как ты и хотел с вариантами TYPE.

Делал на компе, там русского нет...
Вложения
CYCLE PROBE.zip
(67.93 КБ) 399 скачиваний
:bender:
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6191
Откуда: Казахстан.
Контактная информация:

Re: Измерительный цикл PROBE для Sinumerik 808d

Сообщение aftaev »

Спасибо. Попробую вечерком. Сейчас деталька пилит однако.
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6191
Откуда: Казахстан.
Контактная информация:

Re: Измерительный цикл PROBE для Sinumerik 808d

Сообщение aftaev »

Попробовал. Непашит :roll:
Скопировал sc.com, cov.com, CYCLE101.SPF куды надо. HMI перезагрузился.
808scr2.png (6968 просмотров) <a class='original' href='./download/file.php?id=180082&sid=a6d3571ee9a098fc2629c5cd868d00fc&mode=view' target=_blank>Загрузить оригинал (23.71 КБ)</a>
Вместо название кнопок, цифры. Это или кодировка или пробелы. На токарке все нормально. Это решаемо.
808scr1.png (6968 просмотров) <a class='original' href='./download/file.php?id=180081&sid=a6d3571ee9a098fc2629c5cd868d00fc&mode=view' target=_blank>Загрузить оригинал (11.87 КБ)</a>
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
Аватара пользователя
Lexxa
Мастер
Сообщения: 2703
Зарегистрирован: 16 дек 2011, 16:48
Репутация: 319
Настоящее имя: Алексей
Откуда: ryazan
Контактная информация:

Re: Измерительный цикл PROBE для Sinumerik 808d

Сообщение Lexxa »

языковые файлы не забыл?
Попробуй цикл 102 (83002)
:bender:
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6191
Откуда: Казахстан.
Контактная информация:

Re: Измерительный цикл PROBE для Sinumerik 808d

Сообщение aftaev »

Lexxa писал(а):языковые файлы не забыл?
Ты их правил?
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
Аватара пользователя
Lexxa
Мастер
Сообщения: 2703
Зарегистрирован: 16 дек 2011, 16:48
Репутация: 319
Настоящее имя: Алексей
Откуда: ryazan
Контактная информация:

Re: Измерительный цикл PROBE для Sinumerik 808d

Сообщение Lexxa »

Английский да.
Я сделал 102 цикл и для него sc и cov и almc_eng
:bender:
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6191
Откуда: Казахстан.
Контактная информация:

Re: Измерительный цикл PROBE для Sinumerik 808d

Сообщение aftaev »

Lexxa писал(а):Я сделал 102 цикл и для него sc и cov
102 цикл тоже не пашит
808scr2.png (6937 просмотров) <a class='original' href='./download/file.php?id=180085&sid=a6d3571ee9a098fc2629c5cd868d00fc&mode=view' target=_blank>Загрузить оригинал (24.26 КБ)</a>
Lexxa писал(а):almc_eng
При его копировании выдает такое. Это из-за кодировки. При сохранении нужен UTF-8
808scr1.png (6937 просмотров) <a class='original' href='./download/file.php?id=180084&sid=a6d3571ee9a098fc2629c5cd868d00fc&mode=view' target=_blank>Загрузить оригинал (12.83 КБ)</a>
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6191
Откуда: Казахстан.
Контактная информация:

Re: Измерительный цикл PROBE для Sinumerik 808d

Сообщение aftaev »

Lexxa, где нибудь можно посмотреть как сделан Cycle976, Cycle977,Cycle961, для 840й стойки?
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
Ответить

Вернуться в «Промышленные стойки»