for the tests we also tried with a parametric program (made by my friend).

The purpose of this program was to exclude Mach4 for thread calculations.

he only had to carry out the instructions provided by mathematical calculations.

some past emails, cslab told us that the trajectories are calculated by Mach4, CSMIO just needs to synchronize (and here it does it well, because we tried to disturb the rotation of the spindle with a wooden rod while running the wire, and not lost the pace despite revolutions that varied by about 10 or 15 shifts).

nevertheless, if the thread was passed over again, the thread was slowly damaged.

we evaluated the conditions:

the defaut lathe has trapezoidal belts between the engine and gearbox.

the trapeze belts, as is known, have oscillating rotation.

since turns oscillate for that cause, we have deduced that for the calculations a certain number of turns is taken into consideration, and the thread is valid.

the cycle is repeated, and due to oscillation (given by the trapezoid) another rpm value is taken.

by varying the turns the calculations also vary.

and this could be the cause.

ArtSoft and CsLab should communicate well how to solve the problem.

unfortunately now my friend has influence.

as soon as it heals, we run the tests again and insert the images of the results.

I attach the parametric program.

%

O1

(............................................)

(.........INIZIO DATI DA INSERIRE............)

(............................................)

T202 (FILETTATORE, INTERNO o ESTERNO)

G97 S500 M3

G99

G61

(............................................)

#101=10 (POSIZIONAMANTO..Z..)

#102=105 (POSIZIONAMENTO..X..)

#103=100 (DIAMETRO INIZIO FILETTO)

#104=97.4 (DIAMETRO FINE FILETTO)

#105=1 ( 1 FILETTO ESTERNO -1 FILETTO INTERNO )

#106=12 (NUMERO PASSATE)

#107=0.02 (SOVRAMETALLO PER FINITURA SUL DIAMETRO)

#108=1 (PASSATE DI FINITURA. MINIMO 1)

#109=1 ( 0 INCREMENTO RADIALE 1 INCREMENTO X/Z+ -1 INCREMENTO X/Z- )

#110=30 (ANGOLO DI ENTRATA FILETTO)

#111=30 (..Z.. FINALE. METTERE VALORE SENZA SEGNO)

#112=2 (PASSO FILETTO)

(............................................)

(.........FINE DATI DA INSERIRE............)

(............................................)

%

#120=[#103-#104-#107] (METALLO DA ASPORTARE)

#121=[#120/#106] (INCREMENTO IN X)

#121=[#121*#105]

#122=TAN[#110]

#123=[#121/2] (INCREMENTO Z)

#123=[#123*#122] (INCREMENTO Z)

#123=[#123*#109] (INCREMENTO Z)

G0 Z#101 (POSIZIONE INIZIO PROGRAMMA)

G0 X#102 (POSIZIONE INIZIO PROGRAMMA)

#130=#103 (NUOVO VALORE PER SOTTOPROGRAMMA IN X)

#131=#101 (NUOVO VALORE PER SOTTOPROGRAMMA IN Z)

M98 P2 L#106

G0 Z#101 (POSIZIONE INIZIO PROGRAMMA)

G0 X#102 (POSIZIONE INIZIO PROGRAMMA)

#140=[#103-#104] (INCREMENTO Z FINALE)

#140=[#140/2] (INCREMENTO Z FINALE)

#140=[#140*#122] (INCREMENTO Z FINALE)

#140=#101-#140 (INCREMENTO Z FINALE)

M98 P3 L#108

G0 Z#101 (POSIZIONE INIZIO PROGRAMMA)

G0 X#102 (POSIZIONE INIZIO PROGRAMMA)

M30

;

%

O2

#130=[#130-#121]

#131=[#131-#123]

G0 X#130 Z#131

G32 Z-#111 F#112

G0 X#102

G0 Z#101

M99

%

O3

G0 X#104 Z#140

G32 Z-#111 F#112

G0 X#102

G0 Z#101

M99

;