Vai al contenuto
PLC Forum


Impostare Val. Minimo e Massimo di Variabili


LucaR9

Messaggi consigliati

Ciao a tutti,

 

avrei necessità di creare uno script o un qualcosa che mi permetta di impostare automaticamente i limiti di una variabile, in modo da avere un +/-10 di ogni valore delle variabili da impostare nell' area della variabile nelle proprietà della variabile ricetta HMI.

Attualmente devo inserire manualmente ogni variabile, come ad esempio avendo:

DB_Var.Var1_Value

DB_Var.Var1_Lim_Inf

DB_Var.Var1_Lim_Sup 

 

Ho creato un VB Script sull' HMI che mi somma/sottrae (se premuto un pulsante) 10 al valore di Var1_Value. Avendo molte variabili (nell' ordine delle centinaia) risulta molto macchinoso eseguire il calcolo per tutte le variabili.  

Mi chiedo quindi se esista un modo più rapido per fare questo calcolo su molte variabili.

 

Grazie per il supporto,

Luca

Link al commento
Condividi su altri siti


Ciao

io per gestire un archivio di utensili dove ogni utensile è composto da 8 profili diversi ed ogni profilo è composto da 11 dati, e per gestire il tutto ho solo creato 8 variabili indicizzate (ho usato l'indirizzo assoluto e non il simbolo) e creato uno script, che mi calcola tutti gli indirizzi delle variabili partendo da indici che passo allo script come ingressi, di seguito lo script che ho creato:

Function Selezione_PROFILO(ByVal STAZIONE_n, ByVal Byte_STAZIONE, ByVal PROFILO_n, ByVal Byte_PROFILO, ByVal Offset_Primo_Dato)

Dim OFFSET_STAZIONE, OFFSET_PROFILO

If STAZIONE_n<=0 Then
	STAZIONE_n=0
End If

OFFSET_STAZIONE = (STAZIONE_n * Byte_STAZIONE) + Offset_Primo_Dato
OFFSET_PROFILO = PROFILO_n * Byte_PROFILO
'                                     --------------------------------------   UDT5 PROFILO  -----------------------------------
SmartTags("ADR_Nome") 			= OFFSET_STAZIONE    						'Nome Utensile
SmartTags("ADR_Profilo")		= (OFFSET_STAZIONE + 22) + OFFSET_PROFILO			'Nome Profilo
SmartTags("ADR_Altezza")		= (OFFSET_STAZIONE + 42) + OFFSET_PROFILO			'Altezza utensile
SmartTags("ADR_Dia_Lavoro") 		= (OFFSET_STAZIONE + 46) + OFFSET_PROFILO			'Diametro lavoro
SmartTags("ADR_Dia_Massimo") 		= (OFFSET_STAZIONE + 50) + OFFSET_PROFILO			'Diametro Massimo
SmartTags("ADR_N_Giri") 		= (OFFSET_STAZIONE + 54) + OFFSET_PROFILO			'Numero giri
SmartTags("ADR_Velocita_Min") 		= (OFFSET_STAZIONE + 58) + OFFSET_PROFILO			'Velocita minima
SmartTags("ADR_Velocita_Max") 		= (OFFSET_STAZIONE + 62) + OFFSET_PROFILO			'Velocita massima
SmartTags("ADR_Sovra-Materiale")	= (OFFSET_STAZIONE + 66) + OFFSET_PROFILO			'Sovra-Materiale
SmartTags("ADR_OFFSET-Profilo") 	= (OFFSET_STAZIONE + 70) + OFFSET_PROFILO			'Offset profilo (Correzione posizione battuta)
SmartTags("ADR_Pos_Verticale_Batt")	= (OFFSET_STAZIONE + 74) + OFFSET_PROFILO			'Posizione verticale battuta mobile uscita

' Copiatura in Uscita il numero profilo selezionato per illuminare il pulsante relativo al profilo selezionato
Selezione_PROFILO = PROFILO_n

End Function

 

Saluti

Link al commento
Condividi su altri siti

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...