Страница 1 из 5
G76 и G33
Добавлено: 04 фев 2013, 12:16
nkp
Хочу в этой теме обсудить вопрос синхронизируемых подач в Lcnc.
и рассмотреть все это в связке с
невозможностью возможностью изменения шага ( конусности и т.д)
по данному вопросу гуглиться только один
пример
да - этот код работает - я подробно не разбирался,но
похоже здесь используется тот же пронцип - по которому сначала я и пошел, только обернутый в циклы
а принцип такой - разбивать траекторию на части- и каждой части задавать свой шаг
Код: Выделить всё
G1 F30
M3 S300
X2 Z12
G33 X3 Z 10 K .5
G33 X3.5 Z 8 K .4
G33 X4 Z 6 K .3
G33 X4.5 Z 4 K .2
G33 X5 Z 2 K .1
M2
линейно или нет - это уже второй вопрос
так вот в идеале хотелось бы чтоб в емс была внутренняя такая возможность - чтоб планировщик все это разбивал и присваивал - ну как в
других чпу
Для решения этой задачи необходимы две вещи:
1. выяснить -возможно ли это при данном интерпретаторе (по другому сказать - можно ли обойтись малой кровью,или пол емс надо переписать

)
2. если ответ на п.1. - положительный - то сделать это
трудности :
1. нет полной информации - как работает интерпретатор (да и быть ее не могло

)
2. все это на писано на си (со всеми для меня вытекающими

)
Re: G76 и G33
Добавлено: 04 фев 2013, 13:13
Nick
А что именно не так работает?
Вообще в примере какая-то хитрая обработка. Интереснно, как будет проходить синхронизация на углах траектории?
Re: G76 и G33
Добавлено: 04 фев 2013, 13:23
nkp
Nick писал(а):Вообще в примере какая-то хитрая обработка.
если ты насчет вот этого примера:

(для просмотра содержимого нажмите на ссылку)Код: Выделить всё
#1000 = 0.0000 #1100 = 0.3200 #1200 = 0.0450
#1001 = 0.0450 #1101 = 0.2560 #1201 = 0.0450
#1002 = 0.1530 #1102 = 0.2560 #1202 = 0.0450
#1003 = 0.2190 #1103 = 0.2406 #1203 = 0.0440
#1004 = 0.2620 #1104 = 0.2189 #1204 = 0.0430
#1005 = 0.3040 #1105 = 0.1920 #1205 = 0.0420
#1006 = 0.3450 #1106 = 0.1651 #1206 = 0.0410
#1007 = 0.3850 #1107 = 0.1480 #1207 = 0.0400
#1008 = 0.4240 #1108 = 0.1390 #1208 = 0.0390
#1009 = 0.4620 #1109 = 0.1330 #1209 = 0.0380
#1010 = 0.4990 #1110 = 0.1280 #1210 = 0.0370
#1011 = 0.5350 #1111 = 0.1280 #1211 = 0.0360
#1012 = 0.5700 #1112 = 0.1280 #1212 = 0.0350
#1013 = 0.6040 #1113 = 0.1280 #1213 = 0.0340
#1014 = 0.7294 #1114 = 0.1280 #1214 = 0.0330
#1015 = 0.7644 #1115 = 0.1219 #1215 = 0.0350
#1016 = 0.7994 #1116 = 0.1132 #1216 = 0.0350
#1017 = 0.8324 #1117 = 0.1025 #1217 = 0.0330
#1018 = 0.8634 #1118 = 0.0918 #1218 = 0.0310
#1019 = 0.8924 #1119 = 0.0831 #1219 = 0.0290
#1020 = 0.9194 #1120 = 0.0790 #1220 = 0.0270
#1021 = 0.9584 #1121 = 0.0770 #1221 = 0.0260
#1022 = 1.4334 #1122 = 0.0770 #1222 = 0.0250
#1023 = 1.4604 #1123 = 0.0770 #1223 = 0.0260
#1024 = 1.4894 #1124 = 0.0770 #1224 = 0.0280
#1025 = 1.5204 #1125 = 0.0770 #1225 = 0.0300
#1026 = 1.6854 #1126 = 0.0770 #1226 = 0.0320
#1027 = 1.7154 #1127 = 0.0770 #1227 = 0.0320
G20
G64 P0.002
G18
G40 G49
G92.1
M3 S580
#100 = 0.330
#101 = 0.050
#102 = 0.075
#106 = 0.500
#107 = 0.400
#108 = 1.900
#109 = 6.0
#200 = 26
#103 = 100
O100 while [ #200 GE 0 ]
O101 if [#[#200+1100] LT #103]
#103 = #[#200+1100]
O101 endif
#200 = [#200-1]
O100 endwhile
#104 = [#101+#102]
#105 = 1
O102 while [[#103+#104] LT #100]
#104 = [#104+#102]
#105 = [#105+1]
O102 endwhile
G0X#107Z#108
#104 = [#104-#102]
O103 while [#105 GT 0]
#200 = 26
#110 = [#[#200+1100]+#104]
#112 = [#[#200+1000]+[#104*#106]]
G0X[#110+#102]Z[#112+#102]
O105 if [#110 LE #100]
G1F#109X#110Z#112
O105 else
G0X#110Z#112
O105 endif
#200 = [#200-1]
O104 while [ #200 GE 0 ]
#111 = [#[#200+1100]+#104]
#113 = [#[#200+1000]+[#104*#106]]
O106 if [[#110 LE #100] OR [#111 LE #100]]
G1F#109X#111Z#113
O106 else
G0X#111Z#113
O106 endif
#110 = #111
#112 = #113
#200 = [#200-1]
O104 endwhile
O107 if [#111 LT #107]
G0X#107
O107 endif
G0X#107Z#108
#104 = [#104-#102]
#105 = [#105-1]
O103 endwhile
#101 = 0.100
#104 = [#104+#102]
#102 = 0.007
#116 = 0.0004
#105 = 1
O113 while [#104 GE 0]
F30
#200 = 26
#110 = [#[#200+1100]+#104]
#112 = [#[#200+1000]+[#104*#106]]
#114 = [#[#200+1200]]
G0X[#110]Z[#112+#101]
G33 K[#114] X[#110] Z[#112]
#200 = [#200-1]
O114 while [ #200 GE 0 ]
#111 = [#[#200+1100]+#104]
#113 = [#[#200+1000]+[#104*#106]]
#115 = [#[#200+1200]]
G33K#114X#111Z#113
#110 = #111
#112 = #113
#114 = #115
#200 = [#200-1]
O114 endwhile
O117 if [#111 LT #107]
G0X#107
O117 endif
G0X#107Z#108
O118 if [#104 LE [2*#102]]
O119 if [#102 GT #116]
#102 = [#104/2]
O119 endif
O118 endif
#104 = [#104-#102]
#105 = [#105+1]
O113 endwhile
M5
G0X1Z3
M2
то - да - довольно хитрая
но хитрость эта вынужденая - так как нет возможности проще прописать команду переменного шага
Nick писал(а):А что именно не так работает?
да ничего пока не работает
хочеться G76 с параметром - который задает переменный шаг
Re: G76 и G33
Добавлено: 04 фев 2013, 14:07
nkp
Nick писал(а):как будет проходить синхронизация на углах траектории?
это про переходы диаметров???
так емс не знает о них
тут все на G33 (хотя и G76 построена на G33) - то есть вычисляем величину подачи на один оборот
вот отсюда и выплывает концептуальный вопрос:
можно ли в принципе вместо этого коэфициента передать функцию
например:
ну или любым другим (возможным,удобным)способом
чтоб не городить массив на полстраницы или цикл что сам запутаешся

Re: G76 и G33
Добавлено: 04 фев 2013, 14:21
Nick
Переменный шаг.... А что это такое?
Нужно резьбу такую хитрую нарезать?
Тебе нужна равномерная подача в зависимости от Z, а не расстояния XYZ?
------------
Функция постоянная?
Re: G76 и G33
Добавлено: 04 фев 2013, 14:29
zilk
nkp, ты морковку для дровокола хочешь нарезать?

Re: G76 и G33
Добавлено: 04 фев 2013, 16:12
nkp
zilk писал(а):ты морковку для дровокола хочешь нарезать?
на морковку как раз можно шаг и постоянный
ну по крайней мере подключал приятелю движок с морковкой - так у него конус с постоянным шагом
подхватывает и колет
опасная правда штука - грибок я бы поставил с двух сторон - да и в перчатках работать
категорически запрещено - говорю это,так как реально видел картину после "такой " работы
никому не пожелаю....
=====================
а по существу (хотя ту же морковку тоже нужно кому то делать) - мое мнение такое:
есть вещи - которые можно сделать и на обычном токарнике и на чпу (на чпу может быть быстрее,точнее,легче,выгодней и др.варианты)
а есть вещи - которые на обычном станке сделать или очень трудно - или просто невозможно
так вот возможность делать изделия из второй группы должна быть обязательно заложена в стойку
я там выше выкладывал руководство оператора на HAAS
почему бы не стремиться получить такие же возможности ))))
Re: G76 и G33
Добавлено: 04 фев 2013, 16:25
Nick
Не совсем понимаю, что именно сейчас не сделать???
Можешь привести какой-нибудь пример?
Re: G76 и G33
Добавлено: 04 фев 2013, 16:34
nkp
Nick писал(а):что именно сейчас не сделать???
я не говорю что нельзя сделать
может я и не знаю
но то что прямо переменный шаг не задается в ж76 - это очевидно
Nick писал(а):привести какой-нибудь пример?
хотел быстренько найти фотки подобного - толком не нашел ну примерно такие шнеки:

- Выделение(014).jpg (19.9 КБ) 47365 просмотров
Re: G76 и G33
Добавлено: 04 фев 2013, 16:50
Nick
Хмм... не простая задачка...
А если написать цикл с процедурой? Или просто цикл.
Код: Выделить всё
#<zst> = 0
#<zend> = 100
#<z> = #<zst>
#<zstep> = 0.01
#<x> = 10
o100 while [#<z>+#<zstep> LT #<zend> ]
#<z> = [#<z>+#<zstep>]
#<k> = SQRT[#<z>]
G33 X#<x> Z#<z> K#<k>
o100 end while
PS а что, haas такое умеет на чистом Gкоде делать?
Re: G76 и G33
Добавлено: 04 фев 2013, 17:06
nkp
Nick писал(а):А если написать цикл с процедурой? Или просто цикл.
напишем
обязательно напишем цикл
но я поднял эту тему немного разобраться - как ,грубо говоря, этот "цикл" зашить в интерпретатор
разберемся с этим - и другие задачи легче будут решаться
я спросил на их форуме - не планируется ли это в lcnc3
тут на wiki завели страничку - и каждый может оставить свои запросы относительно lcnc3
это как с корректировкой оффсетов был разговор - было бы очень удобно корректировать тло на лету
короче к чему это я - глубже погружаться нужно

Re: G76 и G33
Добавлено: 04 фев 2013, 17:21
nkp
Nick писал(а):PS а что, haas такое умеет на чистом Gкоде делать?
я не видел код по которому изготовили подобный шнек -
но сделали его именно на haas - поэтому я и стал из интереса руководство листать
надо у Lexxa спросить - он должен знать....
Re: G76 и G33
Добавлено: 04 фев 2013, 22:36
Lexxa
с ходу ответить рука не поднимается.
какой хаас, токарный? Мне кажется, что этот шнек сделан на 4- координатном фрезерном из заготовки с токарного.
Есть вариант сделать такую штуку на токарном с игреком, противошпинделем и приводным инструментом. Но это, ихмо, не технологично.
Проще на фрезерном. Завтра у технологов спрошу как такие вещи делать.
Просто на чистом токарнике больно маленькая скорость резания получится и больно большая подача.
upd: Y не обязательно пожалуй, но без приводного инструмента врятли обошлось
Re: G76 и G33
Добавлено: 04 фев 2013, 22:44
vmarkiv
В форуме
http://cnc-club.ru/forum/viewtopic.php? ... 120#p54236 я уже пробовал поднять этот вопрос , но пока деталь сделал на НЦ31 - обидно, однако...
Re: G76 и G33
Добавлено: 04 фев 2013, 22:44
nkp
Lexxa писал(а):Мне кажется, что этот шнек сделан
это просто фото из сети
фото или чертежей оригинала нет
но шнек примерно такой - для пеллет
Lexxa писал(а):Завтра у технологов спрошу как такие вещи делать.
тут не стоит задача любой ценой сделать деталь - выясняем возможность переменного шага в G76
Re: G76 и G33
Добавлено: 04 фев 2013, 22:52
nkp
vmarkiv писал(а):я уже пробовал поднять этот вопрос
так по следам топика и открыта тема
показалось,что не хватает удобного инструментария в емс
Lexxa, я бы тебя попросил узнать у технологов - как обстоят дела с подобными циклами во взрослых стойках
(я имею в виду ж76)
то есть - как в ж-кодах конкретно задается переменный шаг резьбы?
конкретно (если можно) как будет выглядеть сама запись
ну например в емс это выглядит так :
G76 P1.5 Z10 I-5 J0 R1.5 K1.5 Q30 H2 E1 L2 (с постояным шагом естественно)
Re: G76 и G33
Добавлено: 04 фев 2013, 22:56
Lexxa
спрошу не вопрос.
upd:
G76 - нарезание многозаходной резьбы
G32 (код А и В) и G33 (код С) - нарезние резьбы
G34 - нарезание резьбы с переменным шагом.
Re: G76 и G33
Добавлено: 04 фев 2013, 23:04
vmarkiv
По витку с разным шагом К сделать шнек у меня получалось -старт делался по реперу , но по кусочках - нет . В 1990 году я писал для НЦ31 программу для нарезки спиральной винтовой линии с переменным шагом на шарике (сфере ) - процарапать удавалось . Но сейчас ни вспомнить , ни найти програму не могу
Re: G76 и G33
Добавлено: 04 фев 2013, 23:09
Lexxa
вот в фануке нулевке
Re: G76 и G33
Добавлено: 04 фев 2013, 23:14
nkp
Lexxa писал(а):вот в фануке нулевке
вот чего я хочу в емс !!!