Перейти к публикации

CAM программирование


Рекомендованные сообщения

Посоветуйте CAM для программиста.. )

 

Интересно (и необходимо) "вмешаться" в работу CAM, посмотреть какие команды она выдает на микроконтроллеры аппаратуры, вставить в этот поток пару своих команд, если у меня к примеру самодельный ЧПУ станок.

 

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

Более интересно было бы, если бы программа уже работала, и была возможность изменять ее работу в "нужных местах".

Может есть уже систематизированная "философия" работы CAM программы, с использованием которой можно с минимальными затратами влезть в процесс управления станком ну и процесс создания программы для управления станком.

Ссылка на сообщение
Поделиться на других сайтах


УП, выданное CAM через постпроцессор, сам не подает команды никуда. Это просто "ноты" для дирижера. Дирижером тут служит стойка ЧПУ, где все заложено изначально. Если дирижеру подложить незнакомые ноты, он не поймет, что делать. Т.е. стойка выведет ошибку на экран "неверный синтаксис". Весь "синтаксис", которым оперирует стойка, описан в руководстве программиста. При каких событиях в текст УП выводятся конкретные команды (G- и М- функции), задается в постпроцессоре. CAM же просто напросто создает траекторию, используя опции в диалоге операции, которые задает программист ЧПУ.

Изменено пользователем Bully
Ссылка на сообщение
Поделиться на других сайтах

УП, выданное CAM через постпроцессор, сам не подает команды никуда. Это просто "ноты" для дирижера. Дирижером тут служит стойка ЧПУ, где все заложено изначально. Если дирижеру подложить незнакомые ноты, он не поймет, что делать. Т.е. стойка выведет ошибку на экран "неверный синтаксис". Весь "синтаксис", которым оперирует стойка, описан в руководстве программиста. При каких событиях в текст УП выводятся конкретные команды (G- и М- функции), задается в постпроцессоре. CAM же просто напросто создает траекторию, используя опции в диалоге операции, которые задает программист ЧПУ.

 

У меня не производственный процесс, а скорее хобби..

не собираюсь я покупать готовый станок, который понимает только понятные ему "ноты".

У меня есть микроконтроллеры и двигатели, мне нужен софт для управления этим хозяйством.. )

Я типа композитор, который пишет ноты, на вашем жаргоне ).

Ссылка на сообщение
Поделиться на других сайтах

Я типа композитор, который пишет ноты, на вашем жаргоне ).

Композитор, пишущий ноты - это программист ЧПУ. А вы хотите свои ноты с блекджеком и шл.... То, что вы хотите, делает контроллер стойки, это более низкий уровень и ковырять тут нужно уже firmware. Возьмите, опенсорсные прошивки, например отсюда: http://www.linuxcnc.org/(EMC2)  и вмешивайтесь в работу интерполятора (как я понял вам это надо) столько, сколько хотите. А зачем, кстати?

Ссылка на сообщение
Поделиться на других сайтах

Композитор, пишущий ноты - это программист ЧПУ. А вы хотите свои ноты с блекджеком и шл.... То, что вы хотите, делает контроллер стойки, это более низкий уровень и ковырять тут нужно уже firmware. Возьмите, опенсорсные прошивки, например отсюда: http://www.linuxcnc.org/(EMC2)  и вмешивайтесь в работу интерполятора (как я понял вам это надо) столько, сколько хотите. А зачем, кстати?

 

За ссылку спасибо, посмотрю..

Я не совсем в курсе, что такое интерполятор, но вмешиваться я хотел в команды, которые программа передает контроллеру (станку), на случай, если мой станок захочет выполнить нестандартное действие, которое умеет делать только мой станок и не умеет стандартный. Сам контроллер я тоже собирался программировать, но для контроллера много кода не нужно, он примитивный.

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

Изменено пользователем FENIMUS
Ссылка на сообщение
Поделиться на других сайтах
но вмешиваться я хотел в команды, которые программа передает контроллеру (станку),

программа контроллеру ничего не передает. 

 

 

Вы хотите, чтобы стойка делала по УП вещи, которые обычно другие стойки не делают. Это и требует вмешивания в "мозги" стойки. После этого в постпроцессоре (не в CAM, а именно в посте) создается переменная, которая дополнительно заложена (по вашему желанию) в "мозги" стойки. Описывается (в посте), при каких событиях (проход на ускоренной, включение корректора, круговые перемещения и пр.) эта переменная выводится в УП. Сам CAM при этом не претерпевает никаких изменений. Как создавались траектории, так и создаются.

 

Вы просто поймите, что УП (управляющая программа) и те программы, которые вы привыкли писать, это вещи совершенно разного порядка. Поэтому и не получится передать через УП то, что не заложено в мозги стойки. В мозгах как раз и есть то, что вы привыкли писать.

Изменено пользователем Bully
Ссылка на сообщение
Поделиться на других сайтах

программа контроллеру ничего не передает. 

 

А к чему же у вас присоеденены провода от компьютера, или монитора вашего станка? К порту? а портом кто управляет?

Программа в любом случае передает станку данные..

Ссылка на сообщение
Поделиться на других сайтах

@@FENIMUS, как же вам объяснить на понятном вам языке? Управляет всем СТОЙКА ЧПУ.

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

Изменено пользователем Bully
Ссылка на сообщение
Поделиться на других сайтах
Программа в любом случае передает станку данные..
Программа прочитывается стойкой и передается на исполнение.
но вмешиваться я хотел в команды, которые программа передает контроллеру (станку), на случай, если мой станок захочет выполнить нестандартное действие, которое умеет делать только мой станок и не умеет стандартный
Это М-функциями решается, пишите свою функцию и вызываете при надобности. Все, собственно. Что за нестандартные действия?
Ссылка на сообщение
Поделиться на других сайтах
Это М-функциями решается,
для автора надо заметить, что эта М-функция должна быть забита в стойке. 
Ссылка на сообщение
Поделиться на других сайтах

для автора надо заметить, что эта М-функция должна быть забита в стойке. 

Он этим и хочет заняться.

Ссылка на сообщение
Поделиться на других сайтах
Он этим и хочет заняться.

 @@MFS, извини, уже похоже на придирки, :sad: но отвечу разок - не ХОЧЕТ, а ПРИДЕТСЯ.

 

 

но вмешиваться я хотел в команды, которые программа передает контроллеру (станку)

 

 

PS Хотя могу допустить, немного домыслив, что автор просто изначально задал вопрос неправильно. И вместо "поиска CAM" стоило писать "поиск софта для программирования логики стойки ЧПУ". 

Изменено пользователем Bully
Ссылка на сообщение
Поделиться на других сайтах

Наверное, для начала нужно отталкиваться от того, какие у ТС контроллеры и драйвера стоят.

А потом уже и до плюшек, как Mach3 добраться возможно...

ТС нужно на другой форум, там больше подскажут.

http://vri-cnc.ru/forum/

http://www.cnczone.ru/

http://www.cnc-club.ru/

http://mir-cnc.ru/

http://homecnc.ru/

http://forum.rchobby.ru/

http://forum.woodtools.ru/

etc

Изменено пользователем Dimasik-ola
Ссылка на сообщение
Поделиться на других сайтах

Спасибо за ссылки, я тут еще одну нашел..

http://xn--80aaleuhefmceh2aip5lpa.xn--p1ai/?p=897


Программа прочитывается стойкой и передается на исполнение.

 

Это М-функциями решается, пишите свою функцию и вызываете при надобности. Все, собственно. Что за нестандартные действия?

 

 

да именно М - функцию я имел ввиду..

Я так понял, что программы типа PowerMill создают код из набора команд для конкретной стойки.

Какой станок купил, такой набор команд и будет у твоей стойки?

Шаг влево от стандартных действий и PowerMill бесполезна?

 

Нестандартные действия еще не придумал.. вдруг я захочу обрабатывать деталь сразу пятью фрезами или полировать..

Изменено пользователем FENIMUS
Ссылка на сообщение
Поделиться на других сайтах
Шаг влево от стандартных действий и PowerMill бесполезна?

@@FENIMUS, я уже говорил выше, что CAM тут вообще побоку. Он только траектории создает. G- и M- функции выводит постпроцессор (переводчик траектории в CAM в язык, понятный стойке ЧПУ). Т.е., если у вас в стойке забита нестандартная М- функция (первый этап ваших желаний), то его просто надо описать в постпроцессоре (в любой CAM - второй этап вашей работы) - что это такое и в каких случаях выводится.

вдруг я захочу обрабатывать деталь сразу пятью фрезами
:smile:​ Хоть вопрос и теоретически-абстрактный, интересно, такое вообще можно в постпроцессоре описать? Изменено пользователем Bully
Ссылка на сообщение
Поделиться на других сайтах
да именно М - функцию я имел ввиду.. Я так понял, что программы типа PowerMill создают код из набора команд для конкретной стойки. Какой станок купил, такой набор команд и будет у твоей стойки? Шаг влево от стандартных действий и PowerMill бесполезна?
Полезна. В посте описывается что нужно делать и поехали.

Вообще сравнивая уровень задачи и ваших вопросов, надо признать - уровень первого на несколько порядков выше, чем второго. Если хотите помощи - пишите подробно, что и как хотите.

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

 

Вообще-то существуют агрегатные станки с ЧПУ. Хоть я и не видел (станки с преднастройкой приводов не в счет). Хотелось бы посмотреть, как выглядит УП на такие станки. Или там отдельные УП на каждую позицию?

Ссылка на сообщение
Поделиться на других сайтах

Спасибо за ссылки, я тут еще одну нашел..

http://xn--80aaleuhefmceh2aip5lpa.xn--p1ai/?p=897

 

да именно М - функцию я имел ввиду..

Я так понял, что программы типа PowerMill создают код из набора команд для конкретной стойки.

Какой станок купил, такой набор команд и будет у твоей стойки?

Шаг влево от стандартных действий и PowerMill бесполезна?

 

Нестандартные действия еще не придумал.. вдруг я захочу обрабатывать деталь сразу пятью фрезами или полировать..

Я тоже сделал себе станочек. Управляется он Мачем3, к примеру добавил в М3 одновременное включение охлаждения, чтоб не прописывать отдельно М8, ну и соответственно выключение М9, впихнул в М5. Но это простенько) И это не работа Кама. Это пользовательские макрокоманды, т.е. работа со стойкой. Под матчем к примеру можно сделать автопривязку инструмента, да много чего, такие вещи можно уже готовые найти на соответствующих форумах.

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.
Примечание: вашему сообщению потребуется утверждение модератора, прежде чем оно станет доступным.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.




  • Сообщения

    • Guhl
      У вас питание силовое на привод приходит? Е09 - отсутствие силового питания
    • Максим604
      В мануале написано что подача при Резьбофрезеровании считается по центру инструмента. Ок. Тогда почему когда пишешь в кам системе, то выдает подачу для движение  по траектории.      Перефразирую.  Нужно нарезать внутреннюю резьбу М20х2.  Фреза 3 зуба ∅12. Скорость резания 50. (Оборотов 1326)  Подача на зуб 0.05   Когда пишу в джи кодах, то выдаётся подача 198.9 мм/мин. С этой подачей станок и режет.    А если написать через шопмилл, то при тех же условиях( скорость резания и подача на зуб), он подачу пересчитывает для центра фрезы.  И выходит подача 80 мм/мин.   И выходит что при одних и тех же условиях меняется время обработки.    Когда пишешь через кам, то подача считается по траектории, а шопмилл считает для центра.    И я не понимаю как правильно считать. И почему именно так.  И в мануалах не нашёл ответа. 
    • maxx2000
      Да вот так ему хочется. Вот такие гады разработчики. Небось и в мануале всё это описали. Я негодую вместе с тобой.
    • Максим604
      Поэтому и вопрос. почему шопмилл подачу меняет, когда пишешь через него(макропеременые), а когда через G код не меняется. как шопмилл просчитывает новую подачу я понимаю, но не понимаю как прравильно и почему именно так правильно, а не наоброт. почему шопмилл переводит подачу с движения по траектории на движение по центру?     
    • Snake 60
      Так а зачем, если вот эта кнопка  сохраняет все детали и подсборки входящие в нее: При желании можно повесить на горячую кнопку через Настройка-Клавиатура Или пересохранить имеется ввиду создать копию с новым именем? Если да, то для этих целей я бы посоветовал крутой макрос с именем Коперник от @tompsongun См. пост выше.
    • maxx2000
      ну хотя бы то что одна написана через макропеременные, вторая в джи кодах. Ты считаешь что при одинаковом результате у них одинаковые алгоритмы?  
    • Максим604
      А что должно смущать?
    • maxx2000
      Ничего не смущает?
    • Максим604
      разные уп, но смысл одинаковый. в первом варианте подача меняется, во втором сохраняется.   Это то что не устраивает   M0 E_MI_TR(1,0,0,"REZBA_D11.9_P2_VARGUS","",1,0.05,2,50,2,1297,-16.2,91,2,10,14,1.0826,1.083,0.1,0,3,0.03937,0.31831,,,,1,0,"ISO_METRIC","M14");*RO* E_MI_TR(1,0,0,"REZBA_D11.9_P2_VARGUS","",1,0.05,2,50,2,1298,-16.2,91,2,10,14,1.0826,1.083,0.1,0,3,0.07874,0.63662,,,,-1,0,"ISO_METRIC","M14");*RO* _E_P002: E_PS_CIR(1,0,0,-14,90,0,,0,,102.5,12.857,30,8,10,0,,);*RO* CALL "END.SPF";#SM;*RO* E_END(0,1,0);*RO* M30 ;#SM;*RO* _____________________________________________   это устраивает N104 T=" ФРЕЗ. РЕЗЬБЫ - 12" N106 M6 N108 G0 X0. Y0. S1326 M3 D1 N110 Z50. N112 Z5. N114 G1 Z-25. F198.9 N116 G41 Y-4.95 N118 G3 X9.95 Y0. Z-24.5 I3.74372 J4.95 N120 Z-22.5 I-9.95 J0. N122 Z-20.5 I-9.95 J0. N124 Z-18.5 I-9.95 J0. N126 Z-16.5 I-9.95 J0. N128 Z-14.5 I-9.95 J0. N130 Z-12.5 I-9.95 J0. N132 Z-10.5 I-9.95 J0. N134 Z-8.5 I-9.95 J0. N136 Z-6.5 I-9.95 J0. N138 Z-4.5 I-9.95 J0. N140 Z-2.5 I-9.95 J0. N142 Z-.5 I-9.95 J0. N144 X0. Y9.95 Z0. I-9.95 J0. N146 X-4.95 Y0. Z.5 I0. J-6.20628 N148 G1 G40 X0.
    • sklide008
      Да точно, подзабыл уже все. а можно ли горячими клавишами открыть деталь из сборки и пересохранить не открывая деталь?
×
×
  • Создать...