Задачка на G-code!

Обсуждение аспектов работы с CAМ программами, подготовка моделей, настройка постпроцессоров, настройка параметров инструментов, обсуждение стратегий обработки, симуляция обработки. Вопросы по G-коду.
senya
Новичок
Сообщения: 1
Зарегистрирован: 20 янв 2016, 02:10
Репутация: 0
Контактная информация:

Задачка на G-code!

Сообщение senya »

Всем привет! Подскажите как облегчить задачу! Нужно написать G-code, 9999 комбинаций точек(по координатам), если при условии что в одной комбинации, 4 точки из десяти возможных. То есть шпиндель должен подъезжать на 4 точек последовательно 0001, 0002, 0003...4215...9999 Возможно как то можно упростить задачу и не писать все 9999! комбинаций в ручную?
Вложения
dabe42f8a7f2.png (2087 просмотров) <a class='original' href='./download/file.php?id=69330&sid=c542e34ec51b1a4c25fd8803435f410c&mode=view' target=_blank>Загрузить оригинал (20.81 КБ)</a>
Аватара пользователя
michael-yurov
Почётный участник
Почётный участник
Сообщения: 11626
Зарегистрирован: 26 июл 2012, 00:10
Репутация: 4634
Настоящее имя: Михаил Львович
Откуда: Новоуральск
Контактная информация:

Re: Задачка на G-code!

Сообщение michael-yurov »

senya писал(а):9999 комбинаций точек(по координатам)
Что такое комбинации точек по координатам?
senya писал(а):если при условии что в одной комбинации, 4 точки из десяти возможных.
Если, при условии... то что?
senya писал(а):в одной комбинации, 4 точки из десяти возможных
А! дошло! Ты там смартфон разблокировать пытаешься!
Так бы и сказал!
Аватара пользователя
AndyBig
Мастер
Сообщения: 3971
Зарегистрирован: 07 мар 2014, 04:01
Репутация: 1121
Откуда: юг России
Контактная информация:

Re: Задачка на G-code!

Сообщение AndyBig »

michael-yurov писал(а):А! дошло! Ты там смартфон разблокировать пытаешься!
Точно, а я вижу что-то знакомое, но никак не мог въехать что это и для чего :D
Проще собрать конструкцию из 4 серв и подключить ее к ардуине (прости меня, господи) :D
Упс, не... Не из четырех :)
Тогда вот несложная конструкция:
https://www.youtube.com/watch?v=VOVhPpe2dr0
:)

ЗЫ: а если вставить в шпиндель трубчатое алмазное сверло и включить шпиндель, то проблема блокировки будет решена опусканием шпинделя на 5мм ниже поверхности экрана в одной любой точке :D
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Задачка на G-code!

Сообщение Nick »

под linuxcnc:
нужно только координаты цифр переписать.
Только вот не отключится ли телефон?
Ну и вместо 19 поставить 9999.

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

O<goto> SUB
	O<goto-if> IF		[#1 EQ 0]
		G0X0Y0
	O<goto-if> ELSEIF	[#1 EQ 2]
		G0X10Y0
	O<goto-if> ELSEIF	[#1 EQ 3]
		G0X0Y0
	O<goto-if> ELSEIF	[#1 EQ 4]
		G0X0Y0
	O<goto-if> ELSEIF	[#1 EQ 5]
		G0X0Y0
	O<goto-if> ELSEIF	[#1 EQ 6]
		G0X0Y0
	O<goto-if> ELSEIF	[#1 EQ 7]
		G0X0Y0
	O<goto-if> ELSEIF	[#1 EQ 8]
		G0X0Y0
	O<goto-if> ELSEIF	[#1 EQ 9]
		G0X0Y0
	O<goto-if> ENDIF	
O<goto> ENDSUB

O<goto-1> SUB
(DEBUG,#1)
	O<goto> CALL [#1 mod 10]
	O<goto> CALL [fix[#1/10] mod 10]
	O<goto> CALL [fix[#1/100] mod 10]
	O<goto> CALL [fix[#1/1000] mod 10]
O<goto-1> ENDSUB 

#1 = 0
O100 REPEAT [19]
	O<goto-1> CALL [#1]
	#1 = [#1+1]
O100 ENDREPEAT 

M02
nefton
Новичок
Сообщения: 1
Зарегистрирован: 18 апр 2016, 09:56
Репутация: 0
Настоящее имя: Maxim
Контактная информация:

Re: Задачка на G-code!

Сообщение nefton »

Делов на 3 мин в С++ )))
не помню только Gкод комментария

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

#include <iostream>
#include <vector>
#include <ctime>
#include <fstream>

using namespace std;


int main(){

	
	ofstream file("c:/ooo.txt");
	
	int N = 10;
	
	for (int i1 = 0; i1 < 10; i1++){
		for (int i2 = 0; i2 < 10; i2++){
			for (int i3 = 0; i3 < 10; i3++){
				for (int i4 = 0; i4 < 10; i4++){

					file << "; " << i1 << i2 << i3 << i4 << endl;
					file << "N" << N++ << " G0 Xxpos" << i1 << " Yypos" << i1 << " Zzup" << endl;
					file << "N" << N++ << " G0 Xxpos" << i1 << " Yypos" << i1 << " Zdown" << endl;
					file << "N" << N++ << " G0 Xxpos" << i1 << " Yypos" << i1 << " Zzup" << endl;
					file << endl;
					file << "N" << N++ << " G0 Xxpos" << i2 << " Yypos" << i2 << " Zzup" << endl;
					file << "N" << N++ << " G0 Xxpos" << i2 << " Yypos" << i2 << " Zdown" << endl;
					file << "N" << N++ << " G0 Xxpos" << i2 << " Yypos" << i2 << " Zzup" << endl;
					file << endl;
					file << "N" << N++ << " G0 Xxpos" << i3 << " Yypos" << i3 << " Zzup" << endl;
					file << "N" << N++ << " G0 Xxpos" << i3 << " Yypos" << i3 << " Zdown" << endl;
					file << "N" << N++ << " G0 Xxpos" << i3 << " Yypos" << i3 << " Zzup" << endl;
					file << endl;
					file << "N" << N++ << " G0 Xxpos" << i4 << " Yypos" << i4 << " Zzup" << endl;
					file << "N" << N++ << " G0 Xxpos" << i4 << " Yypos" << i4 << " Zdown" << endl;
					file << "N" << N++ << " G0 Xxpos" << i4 << " Yypos" << i4 << " Zzup" << endl;
					file << endl;
				}
			}
		}
	}

	file.close();

	cout << endl << endl;	system("pause");

	return 0;
}
Вложения
ooo.txt
(3.63 МБ) 1000 скачиваний
Ответить

Вернуться в «CAM пакеты»