Хочу в этой теме обсудить вопрос синхронизируемых подач в 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. — положительный — то сделать это
Rпараметр в G76 рассчет
трудности :
1. нет полной информации — как работает интерпретатор (да и быть ее не могло )
2. все это на писано на си (со всеми для меня вытекающими )
Последний раз редактировалось nkp 27 июн 2013, 20:46, всего редактировалось 2 раза.
Re: G76 и G33
Сообщение Nick » 04 фев 2013, 13:13
А что именно не так работает?
Вообще в примере какая-то хитрая обработка. Интереснно, как будет проходить синхронизация на углах траектории?
Use the Console, Luke.
Re: G76 и G33
Сообщение nkp » 04 фев 2013, 13:23
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
то — да — довольно хитрая
Стандартный цикл нарезки резьбы по G76 для стойки FANUС (симулятор станка с ЧПУ)
но хитрость эта вынужденая — так как нет возможности проще прописать команду переменного шага
Источник: www.cnc-club.ru
Основные принципы программирования нарезки резьбы.
Код G32 — нарезание резьбы с постоянным шагом за один проход.
Код G92 — цикл нарезки резьбы постоянного шага.
Код G76 — цикл нарезки многозаходной резьбы.
Код G34 — нарезание резьбы переменного шага за один проход
(опция системы ЧПУ).
В процессе нарезки резьбы частота вращения шпинделя и скорость подачи каретки должны быть синхронизированы для получения нужного количества витков резьбы. Поэтому, существуют определенные правила, которыми следует руководствоваться при нарезании резьбы:
1. До начала программирования цикла нарезки резьбы нужно установить необходимые режимы работы шпинделя по кодам G97 (частота вращения в об/мин) и G99 (величина подачи на один оборот шпинделя).
2. Инструмент должен быть установлен в точку старта цикла нарезки резьбы в строках УП, предшествующих строке с кодом нарезки резьбы. Эта строка не должна содержать параметры, определяющие снятие прямой или радиусной фаски.
3. В конце резьбы должен быть обеспечен зазор для обеспечения торможения каретки. Этот зазор называется минимальным расстоянием остановки и может быть рассчитан по следующей формуле:
МИНИМ. РАССТОЯНИЕ ОСТАНОВКИ = (частота вращения шпинделя (об/мин) * шаг резьбы)/1800
4. До начала прохода резьбонарезной инструмент должен быть позиционирован достаточно далеко от точки начала резьбы для того, чтобы обеспечить ускорение каретки, необходимое для получения заданного шага резьбы. Этот зазор называется минимальным расстоянием начала
цикла, которое для основных процессов нарезания резьбы может быть рассчитано по следующей формуле:
МИНИМАЛЬНОЕ РАССТОЯНИЕ НАЧАЛА ЦИКЛА = МИНИМ. РАССТ. ОСТАНОВКИ * 3.605
В процессе нарезки резьбы коррекция частоты вращения шпинделя запрещена (зафиксировано значение 100%).
Выбор числа проходов при нарезании резьбы.
Шаг; мм | 1,5 | 2,5 | 3,5 | 4,0 | 6,0 | |||
Число витков на дюйм | ||||||||
Число проходов | 3-6 | 4-9 | 5-11 | 6-13 | 7-15 | 8-17 | 10-20 | 11-22 |
Середина диапазона является хорошей отправной точкой для большинства стандартных приложений.
Для большинства материалов существует правило: чем выше прочность, тем большее число проходов нужно выбирать.
Общее эмпирическое правило: меньшее количество проходов лучше, чем более высокая скорость.
Поперечная подача на один проход должна обеспечивать одинаковый коэффициент использования станка.
Цикл нарезки резьбы с постоянным шагом за один проход по коду G32.
X (U) = X — координата конечной точки нарезания резьбы (не программируется при нарезке цилиндрической резьбы).
Z (W) = Z — координата конечной точки нарезания резьбы.
F (модальный) = шаг резьбы.
Q = начальный угол нарезки резьбы (например, Q180000 = угол 180°).
Последовательность программирования одного прохода нарезания резьбы по коду G32:
1. Резьбонарезной инструмент позиционируется (по коду G0) в начальную точку прохода.
2. Программируется строка с кодом G32 для выполнения одного прохода.
3. Программируются строки быстрой подачи (по коду G0) для перемещения инструмента в начальную точку следующего прохода.
Нарезание резьбы постоянного шага по коду G32. Пример № 1.
УП обработки деталей.
О1001 (G32 EXAMPLE 1);
(НАРЕЗАНИЕ РЕЗЬБЫЗА ОДИН ПРОХОД);
Источник: poisk-ru.ru
коническая дюймовая резьба по G76
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.
Примечание: вашему сообщению потребуется утверждение модератора, прежде чем оно станет доступным.
Сейчас на странице 0 пользователей
Нет пользователей, просматривающих эту страницу.
Сообщения
У «PROGRAMMER ENABLE» приоритет выше.
K22.7 нужно установить 1
Я думаю надо загрузить ему опять чужой архив, который работает, сделать там смену инструмента, потом посмотреть что получилось во всех реле K22 во всех его битах Затем загрузить родной архив и выставить биты К22 в соответствии с тем что получилось там, с чужим архивом Это быстрее чем разбираться какой бит за что отвечает P.S. Ну, или просто сбросить все биты К22 в ноль
Без диагностики на месте сложно вам еще что-то посоветовать.
Фазы соответствуют, проверил.
Если К22.0 =1 то можно попробовать сбросить его вручную.
Уважаемые, подскажите, где и что можно нажать, чтоб изменить корректор на радиус инструмента в солидкам, генерирую программу, выдаёт.. T10 M06 G43 H10 G41 D51 Откуда . ять он берет D51, и как сделать чтоб стало D10
да я изначально и в обсуждении не участвовал, появился когда меня позвали Потому что сразу понял что в данном случае без личной диагностики тут можно долго гадать. Тем более что вы сами получаете информацию только по телефону
- IPS Theme by IPSFocus
- Язык
- Стиль
- Политика конфиденциальности
- Реклама на форуме
CAD/CAM/CAE Russian Community Board Powered by Invision Community
Источник: cccp3d.ru