DC10DoubleFlyC
D = Device(camming2,camming3, camming4)
C = Funzioni di Calcolo
La funzione DC10DoubleFlyC esegue i calcoli e aggiorna dinamicamente i settori della camma, per poter eseguire un secondo taglio durante il taglio al volo (taglio di prelievo pezzo campione). I parametri da passare alla funzione sono : la lunghezza del pezzo “campione” e lo spazio del carro (slave) dopo il primo taglio, entro il quale si vuole concludere il secondo taglio.
La funzione può essere utilizzata solo nel caso si sia utilizzata la funzione DC1xFlyCut o DC2xFlyCut per la costruzione della camma deputata a gestire il taglio al volo.
Nel caso il taglio non sia fisicamente possibile con i parametri impostati, la funzione restituisce sul parametro “Error” il tipo di errore intervenuto.
IMPLEMENTAZIONE
DC10DoubFlyC(Cam, Param, SpazioSMin, Error)
Parametri:
IN/OUT | TIPO VARIABILE | NOME DI ESEMPIO | DIM | |
---|---|---|---|---|
IN | CAMMING2 CAMMING3 CAMMING4 | Cam | Nome del device utilizzato | |
IN | ARRSYS | Param[1] | L | Lunghezza del pezzo campione (UM) |
IN | ARRSYS | Param[2] | L | Spazio Slave (del carro) dopo il 1° taglio per eseguire il 2° taglio (UM) |
OUT | SYSTEM | SpazioSMin | L | Spazio minimo occorrente per eseguire il 2° taglio(UM) |
OUT | SYSTEM | Errore | B | Variabile di errore camma |
Errore
Una volta richiamata la funzione se ci sono degli errori la variabile di errore assume determinati valori, il significato di tali valori è riassunto di seguito:
0: Nessun errore
1: Parametro “maxvel” del device uguale a 0
2: Parametro “Lunghezza del pezzo campione” uguale a 0
3: Parametro “Spazio Slave 2° taglio” uguale a 0
4: Risoluzione device non corretta
5: Spazio necessario al taglio superiore a quello impostato (spazio minimo necessario riportato su “SpazioSMin”)
Esempio di utilizzo
Un esempio di utilizzo della funzione è il seguente:
... Param[1] = 2000 ;Lunghezza del pezzo campione (UM) Param[2] = 10000 ;Spazio per 2°taglio (UM) DC10DoubFlyC(Cam, Param, SpazioSMin, Error) ...
Note di funzionamento
-
Questa funzione deve essere utilizzata solo se la camma è stata creata con la funzione dc1xFlyCut o dc2xFlyCut.
-
Il secondo taglio viene effettuato in modo analogo al primo, tenendo quindi conto di tutti i tempi di assestamento o di extravelocità impostati sul primo.
-
La funzione blocca il task in cui è inserita fintantochè non ha completato il secondo taglio, è necessario perciò che non sia inserita in un task che deve essere eseguito ad ogni giro logico. Si consiglia, eventualmente, di creare un nuovo task apposito.