Add lines of text to CNC programming code

2 vues (au cours des 30 derniers jours)
freddy alexander  rodriguez torres
Hello, I am trying to generate a code in which after a tool change (depending on the tool) Matlab puts a new line of code with an M7 or M8, for example, within a bunch of text I have this:
N80T16M6
I want Matlab to create a new line with a M7 and M8 like this
N80T16M6
M7
M8
It varies depending on the number after the T (which is the number of the tool) for example T15 would just have M7. Is there a way of programming this? Adding the information of which tool needs what?
Besides this, I want to include in a certain point of the text the stock dimensions, for example (x10::y-5::z-0.1::) just as I wrote it with the parenthesis
and as extra information as I mentioned before this lines of code are within a bunch of lines but always starts with an N number, like this:
Thanks a lot in advance!

Réponses (1)

Walter Roberson
Walter Roberson le 18 Avr 2024
filename_in = '10267.TAP';
[filedir, basename, ext] = fileparts(filename_in);
filename_out = fullfile(filedir, basename + "_out" + ext);
S = readlines(filename_in);
p15 = find(startswith(S, 'N80T15'));
for K = flipud(p15).'
S = [S(1:K); "M7";S(K+1:end)];
end
p16 = startswith(S, 'N80T16');
for K = flipud(p16).'
S = [S(1:K); "M7"; "M8"; S(K+1:end)];
end
writelines(S, filename_out);
  7 commentaires
freddy alexander  rodriguez torres
can you help me adding this features please?
Walter Roberson
Walter Roberson le 2 Mai 2024
filename_in = '1.TXT';
[filedir, basename, ext] = fileparts(filename_in);
filename_out = fullfile(filedir, basename + "_out" + ext);
S = readlines(filename_in);
M6 = find(regexp(S, '^N\d+T\d+M6'));
for K = flipud(M6).'
S = [S(1:K); "M7";S(K+1:end)];
end
writelines(S, filename_out);

Connectez-vous pour commenter.

Catégories

En savoir plus sur Startup and Shutdown dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by