Aiuto parametrica Siemens
-
- Newbie
- Messaggi: 9
- Iscritto il: venerdì 6 giugno 2025, 20:45
Aiuto parametrica Siemens
-
- God
- Messaggi: 5337
- Iscritto il: venerdì 1 febbraio 2008, 11:28
- Località: Modena
Re: Aiuto parametrica Siemens
Ho fatto tradurre da AI, una macro FANUC che esegue cava conica, per parametrica SIEMENS. Non è una fresatura a spirale, esegue la cava conica con tante interpolazioni circolari. Potrebbero esserci errori di sintassi, da prendere solo come esempio, spunto e poi verificare.
I dati necessari sono diametro maggiore e diametro minore, della cava conica, se non si hanno, e si ha solo i gradi, con la trigonometria è possibile calcolarsi i due diametri. Comunque è gia tanto avere un esempio da modificare, che risolva esattamente il tuo problema è troppo
Per chiamarla da programma principale, forse basta scrivere il nome del sottoprogramma, ma non conosco molto bene siemens, dovresti informarti. Nel programma principale assegna i valori ai parametri R
Esempio cava conica parametrica siemens
I dati necessari sono diametro maggiore e diametro minore, della cava conica, se non si hanno, e si ha solo i gradi, con la trigonometria è possibile calcolarsi i due diametri. Comunque è gia tanto avere un esempio da modificare, che risolva esattamente il tuo problema è troppo

Per chiamarla da programma principale, forse basta scrivere il nome del sottoprogramma, ma non conosco molto bene siemens, dovresti informarti. Nel programma principale assegna i valori ai parametri R
Esempio cava conica parametrica siemens
Codice: Seleziona tutto
; --------------------------------------------------------
; Realizza una tasca conica con passate in Z
; Richiede: compensazione raggio utensile attiva (G41)
; --------------------------------------------------------
PROC conica
; --- Parametri ricevuti dal programma principale ---
; R1 = A = Diametro inferiore
; R2 = B = Diametro superiore
; R3 = C = Profondità totale
; R4 = F = Avanzamento
; R5 = X = Centro X
; R6 = Y = Centro Y
; R7 = D = Diametro utensile
; R8 = R = Profondità per passata Z
; --- Calcoli iniziali ---
R9 = R2 / 2 ; Raggio superiore
R10 = TRUNC(R3 / R8 + 0.9999) ; Numero passate (arrotonda in eccesso)
R11 = R3 / R10 ; Profondità effettiva per passata
R12 = R11 ; Profondità Z iniziale
R13 = R9 ; Raggio attuale
; --- Posizionamento iniziale ---
G0 X=R5 + R9 - R7/2 Y=R6
G0 Z=R12 + 5
G1 Z=0 F=R4
; --- Prima discesa ---
G91
G1 Z=-R12 F=R4
G90
; --- Ciclo di fresatura passate in Z ---
WHILE (R13 * 2) >= R1
; Cerchio completo alla profondità corrente
G3 I=-(R13 - R7/2) F=R4
; Avanza Z
R12 = R12 + R11
; Controlla se superata profondità finale
IF R12 <= R3 THEN
R13 = R13 - (R9 / R10) ; Riduce raggio
G0 X=R5 + R13 - R7/2 Y=R6
G1 Z=-R12 F=R4
ELSE
EXIT
ENDIF
ENDWHILE
; --- Ritorno a Z di sicurezza ---
G91 G0 Z=100
G90
M17
CIAO A TUTTI !
-
- Newbie
- Messaggi: 9
- Iscritto il: venerdì 6 giugno 2025, 20:45
Re: Aiuto parametrica Siemens
Grazie mille appena riesco provo se funziona 

-
- Newbie
- Messaggi: 9
- Iscritto il: venerdì 6 giugno 2025, 20:45
Re: Aiuto parametrica Siemens
Nel programma sorgente devo scrivere le variabili R, i primi calcoli e richiamare il sottoprogramma L1?
Il resto va scritto tutto nel sottoprogramma che devo richiamare nel programma sorgente?
Il resto va scritto tutto nel sottoprogramma che devo richiamare nel programma sorgente?
-
- God
- Messaggi: 5337
- Iscritto il: venerdì 1 febbraio 2008, 11:28
- Località: Modena
Re: Aiuto parametrica Siemens

CIAO A TUTTI !
-
- Newbie
- Messaggi: 9
- Iscritto il: venerdì 6 giugno 2025, 20:45
Re: Aiuto parametrica Siemens
Scusami volevo solo sapere cosa scrivere nel sottoprogramma visto che il sottoprogramma serve solo per fare ripetere una parte di istruzione se questa "macro" ha già dentro il numero di ripetizioni per eseguire le interpolazioni coniche il sottoprogramma non serve ho visto però che chiude con M17 che è fine sottoprogramma a differenza di M30 che è fine programma.
Poi avevo un dubbio su questa istruzione
Cerchio completo alla profondità corrente
G3 I=-(R13 - R7/2) F=R4
Basta solo la I per interpolare (coordinata centro in X)
Comunque ti ringrazio proverò appena riesco hai fatto già molto grazie mille
Poi avevo un dubbio su questa istruzione
Cerchio completo alla profondità corrente
G3 I=-(R13 - R7/2) F=R4
Basta solo la I per interpolare (coordinata centro in X)
Comunque ti ringrazio proverò appena riesco hai fatto già molto grazie mille

-
- Newbie
- Messaggi: 9
- Iscritto il: venerdì 6 giugno 2025, 20:45
Re: Aiuto parametrica Siemens
Secondo Metà AI è possibile programmare un'interpolazione elicoidale conica utilizzando il linguaggio ISO nel CNC Sinumerik 840D. Ecco un esempio di come potresti farlo:
*Esempio di Codice*
```
nc
O0001
N10 G54 G00 X0 Y0
N20 G43 Z0 H01 M08
N30 #100=50 ; Diametro iniziale
N40 #101=100 ; Diametro finale
N50 #102=200 ; Altezza del cono
N60 #103=5 ; Passo dell'elica
N70 WHILE #102>=0
N80 G01 X[#100/2] Y0 F100
N90 G02 X[#100/2] Y0 I[#100/2] J0
N100 G01 Z[-#103] F100
N110 #100=#100+[#101-#100]/#102*#103
N120 #102=#102-#103
N130 END WHILE
N140 G00 Z100 M09
N150 M30
```
*Spiegazione del Codice*
- Le variabili `#100`, `#101`, `#102` e `#103` sono utilizzate per definire il diametro iniziale, il diametro finale, l'altezza del cono e il passo dell'elica.
- Il ciclo WHILE esegue l'interpolazione elicoidale lungo l'asse Z.
- I comandi G01 e G02 sono utilizzati per eseguire i movimenti lineari e circolari.
*Considerazioni*
- Assicurati di impostare correttamente le variabili in base alle tue esigenze di lavorazione.
- Utilizza la funzione WHILE per eseguire l'interpolazione elicoidale lungo l'asse Z.
- Verifica le specifiche del tuo CNC Sinumerik 840D per confermare la compatibilità dei comandi utilizzati.
*Esempio di Codice*
```
nc
O0001
N10 G54 G00 X0 Y0
N20 G43 Z0 H01 M08
N30 #100=50 ; Diametro iniziale
N40 #101=100 ; Diametro finale
N50 #102=200 ; Altezza del cono
N60 #103=5 ; Passo dell'elica
N70 WHILE #102>=0
N80 G01 X[#100/2] Y0 F100
N90 G02 X[#100/2] Y0 I[#100/2] J0
N100 G01 Z[-#103] F100
N110 #100=#100+[#101-#100]/#102*#103
N120 #102=#102-#103
N130 END WHILE
N140 G00 Z100 M09
N150 M30
```
*Spiegazione del Codice*
- Le variabili `#100`, `#101`, `#102` e `#103` sono utilizzate per definire il diametro iniziale, il diametro finale, l'altezza del cono e il passo dell'elica.
- Il ciclo WHILE esegue l'interpolazione elicoidale lungo l'asse Z.
- I comandi G01 e G02 sono utilizzati per eseguire i movimenti lineari e circolari.
*Considerazioni*
- Assicurati di impostare correttamente le variabili in base alle tue esigenze di lavorazione.
- Utilizza la funzione WHILE per eseguire l'interpolazione elicoidale lungo l'asse Z.
- Verifica le specifiche del tuo CNC Sinumerik 840D per confermare la compatibilità dei comandi utilizzati.
-
- God
- Messaggi: 5337
- Iscritto il: venerdì 1 febbraio 2008, 11:28
- Località: Modena
Re: Aiuto parametrica Siemens
Quello è codice func, in realtà è sbagliato anche per fanun ci sono gli errori.e comunque un Interpolazione circolare e poi discesa in zeta. Interpolazione elicoidale consiste di in programmare una z, la Z programmata non può variare nel tempo posso fare un passo con le con l'interpolazione elicoidale. Esempio se programma Z meno 1 farà un interpolazione elicoidale a meno 1 un passo singolo. Non si può fare un'interpolazionelicoidale che cambia costantemente il diametro, perché un blocco di interpolazione, quello che possiamo fare è ripetere il blocco. Fare uno step con interpolazione circolare o con interpolazione elicoidale non cambia molto. Il cam può lavorare in maniera diversa può creare una reale e interpolazione elicoidale perché il movimento lo fa con tanti piccoli movimenti centesimali in G1. Il sottoprogramma non è una semplice ripetizione del blocco e qualcosa di più complesso, non puoi mettere solo il ciclo whie fare l'interpolazione serve tutto il resto da lì un sottoprogramma.quello che c'è scritto nel sottoprogramma è tutto necessario, il principio è questo calcolo il numero di passate ipotizziamo dieci passate, divido il raggio per 10 e divido la profondità per 10 e ottengo tanti piccoli di triangolini aventi lo stesso angolo, poi nel ciclo incremento diminuisco il raggio e diminuisco la profondità fino a diametro minimo ottenendo il cono. È il principio della riduzione in scala se la comicità è un triangolo ,dividendo i cateti per un certo numero ottengono un triangolo in scala con la stessa conicità.
CIAO A TUTTI !
-
- Newbie
- Messaggi: 9
- Iscritto il: venerdì 6 giugno 2025, 20:45
Re: Aiuto parametrica Siemens
Ho provato ad eseguire programmi col software ma sembra che ci sia qualche errore
-
- Newbie
- Messaggi: 9
- Iscritto il: venerdì 6 giugno 2025, 20:45
Re: Aiuto parametrica Siemens
G2 X0 Y-100 Z-100 I=AC(0) J=AC(0) TURN=9
Esegue l'interpolazione su raggio 100 alla profondità di 100 in 10 volte con passo 10 al giro
Non esiste un modo per dare la conicità?