Project75 Inserito: 11 ottobre 2021 Segnala Share Inserito: 11 ottobre 2021 Buongiorno, ho creato delle circa 20 variabili wstring nella tabella delle variabili di un pannello TP 1200 comfort, come posso azzerarle? Grazie Link al commento Condividi su altri siti More sharing options...
drn5 Inserita: 11 ottobre 2021 Segnala Share Inserita: 11 ottobre 2021 Miavariabile := "" Ciao Link al commento Condividi su altri siti More sharing options...
Project75 Inserita: 11 ottobre 2021 Autore Segnala Share Inserita: 11 ottobre 2021 17 minuti fa, drn5 ha scritto: Miavariabile := "" Ciao Grazie, potresti spiegare nel dettaglio. Link al commento Condividi su altri siti More sharing options...
drn5 Inserita: 11 ottobre 2021 Segnala Share Inserita: 11 ottobre 2021 Scusami andavo di fretta.... Smarttags("Miavariabile") = "" Questo dentro un vbscript che chiamerai da un evento a piacere. Sempre che tu voglia azzerare da dentro il pannello. Link al commento Condividi su altri siti More sharing options...
Project75 Inserita: 11 ottobre 2021 Autore Segnala Share Inserita: 11 ottobre 2021 36 minuti fa, drn5 ha scritto: Scusami andavo di fretta.... Smarttags("Miavariabile") = "" Questo dentro un vbscript che chiamerai da un evento a piacere. Sempre che tu voglia azzerare da dentro il pannello. Non l'ho fatto mai non ho la più pallida idea, se puoi spiegare con qualche esempio mi faresti una grande cortesia. Grazie mille Link al commento Condividi su altri siti More sharing options...
drn5 Inserita: 11 ottobre 2021 Segnala Share Inserita: 11 ottobre 2021 Le variabili che hai definito nella tabella del pannello possono esser di due tipi: - locali al pannello e quindi esistono solo li e non hanno niente da spartire con il plc collegato - agganciate al plc e quindi fanno riferimento a delle aree di memoria quali db, merker, input, output nel tuo caso sono delle Wstring e ora non so se locali al pannello o agganciate al plc. supponiamo che siano agganciate a Wstring esistenti nel plc e che tu le voglia azzerare. O le azzeri nel plc o le azzeri nel pannello che indirettamente le azzererà nel plc. se le azzeri nel plc e dovrai stabilire tu in quale momento potresti scrivere una riga in SCL che sia tipo : MiaVariabile := ''; se le azzeri nel pannello potresti usare uno VBscript che usi il comando: SmartTags("MiaVariabile") = "" Dato che lo script non vive di vita propria deve essere richiamato. Lo puoi richiamare con un evento legato per esempio ad un Pulsante del pannello o al cambio stato di un Tag (variabile) esistente nel pannello che in fase di definizione alla voce evento richiamerà lo script che hai realizzato per azzerare la MiaVariabile. OK? Ciao Link al commento Condividi su altri siti More sharing options...
Project75 Inserita: 11 ottobre 2021 Autore Segnala Share Inserita: 11 ottobre 2021 1 ora fa, drn5 ha scritto: Le variabili che hai definito nella tabella del pannello possono esser di due tipi: - locali al pannello e quindi esistono solo li e non hanno niente da spartire con il plc collegato - agganciate al plc e quindi fanno riferimento a delle aree di memoria quali db, merker, input, output nel tuo caso sono delle Wstring e ora non so se locali al pannello o agganciate al plc. supponiamo che siano agganciate a Wstring esistenti nel plc e che tu le voglia azzerare. O le azzeri nel plc o le azzeri nel pannello che indirettamente le azzererà nel plc. se le azzeri nel plc e dovrai stabilire tu in quale momento potresti scrivere una riga in SCL che sia tipo : MiaVariabile := ''; se le azzeri nel pannello potresti usare uno VBscript che usi il comando: SmartTags("MiaVariabile") = "" Dato che lo script non vive di vita propria deve essere richiamato. Lo puoi richiamare con un evento legato per esempio ad un Pulsante del pannello o al cambio stato di un Tag (variabile) esistente nel pannello che in fase di definizione alla voce evento richiamerà lo script che hai realizzato per azzerare la MiaVariabile. OK? Ciao Intanto volevo ringraziarti per la disponibilità, comunque le variabili sono locali al pannello e lo script non l'ho utilizzato mai, oltretutto non uso nemmeno il linguaggio scl 1 ora fa, drn5 ha scritto: Le variabili che hai definito nella tabella del pannello possono esser di due tipi: - locali al pannello e quindi esistono solo li e non hanno niente da spartire con il plc collegato - agganciate al plc e quindi fanno riferimento a delle aree di memoria quali db, merker, input, output nel tuo caso sono delle Wstring e ora non so se locali al pannello o agganciate al plc. supponiamo che siano agganciate a Wstring esistenti nel plc e che tu le voglia azzerare. O le azzeri nel plc o le azzeri nel pannello che indirettamente le azzererà nel plc. se le azzeri nel plc e dovrai stabilire tu in quale momento potresti scrivere una riga in SCL che sia tipo : MiaVariabile := ''; se le azzeri nel pannello potresti usare uno VBscript che usi il comando: SmartTags("MiaVariabile") = "" Dato che lo script non vive di vita propria deve essere richiamato. Lo puoi richiamare con un evento legato per esempio ad un Pulsante del pannello o al cambio stato di un Tag (variabile) esistente nel pannello che in fase di definizione alla voce evento richiamerà lo script che hai realizzato per azzerare la MiaVariabile. OK? Ciao Intanto volevo ringraziarti per la disponibilità, comunque le variabili sono locali al pannello e lo script non l'ho utilizzato mai, oltretutto non uso nemmeno il linguaggio scl. Link al commento Condividi su altri siti More sharing options...
cagliostro Inserita: 12 ottobre 2021 Segnala Share Inserita: 12 ottobre 2021 Salve, a seguire dal seguente weblink, https://we.tl/t-WBJpMVltkg puoi scaricare da WeTransfert due brevi video di esempio che ho fatto con lo scopo di renderti il più semplice possibile il controllo che ti presti ad implementare. Sicuramente il tutto specie per la parte inerente lo script può essere decisamente semplificato, ma sono partito dal fatto che non hai mai usato scripts e linguaggi scl o simili. Ho semplicemente attivato lo script per mezzo del pulsante AZZERA STRINGHE che richiama lo script AzzeraStringhe, lo script effettua un move nella variabile interna denominata Stringa vuota assegnandole il valore"" che appunto azzererà poi le tue 20 stringhe. Lo script prosegue copiando poi su ogni singola variabile interna Stringa 1 Stringa 2 etc. etc. il valore contenuto nella variabile AzzeraStringhe facendo così l'azzeramento che ti serve. Link al commento Condividi su altri siti More sharing options...
Project75 Inserita: 12 ottobre 2021 Autore Segnala Share Inserita: 12 ottobre 2021 (modificato) 28 minuti fa, cagliostro ha scritto: Salve, a seguire dal seguente weblink, https://we.tl/t-WBJpMVltkg puoi scaricare da WeTransfert due brevi video di esempio che ho fatto con lo scopo di renderti il più semplice possibile il controllo che ti presti ad implementare. Sicuramente il tutto specie per la parte inerente lo script può essere decisamente semplificato, ma sono partito dal fatto che non hai mai usato scripts e linguaggi scl o simili. Ho semplicemente attivato lo script per mezzo del pulsante AZZERA STRINGHE che richiama lo script AzzeraStringhe, lo script effettua un move nella variabile interna denominata Stringa vuota assegnandole il valore"" che appunto azzererà poi le tue 20 stringhe. Lo script prosegue copiando poi su ogni singola variabile interna Stringa 1 Stringa 2 etc. etc. il valore contenuto nella variabile AzzeraStringhe facendo così l'azzeramento che ti serve. Grazie mille gentilissimo, proverò e ti farò sapere. 😉 Modificato: 12 ottobre 2021 da Project75 Link al commento Condividi su altri siti More sharing options...
Project75 Inserita: 12 ottobre 2021 Autore Segnala Share Inserita: 12 ottobre 2021 Grazie mille cagliostro, ho provato, funziona perfettamente. 🙂 Link al commento Condividi su altri siti More sharing options...
Project75 Inserita: 14 ottobre 2021 Autore Segnala Share Inserita: 14 ottobre 2021 Buongiorno cagliostro, le variabili wstring, create nel pannello sono ritentive? Buongiorno cagliostro, le variabili wstring, create nel pannello, sono ritentive? Link al commento Condividi su altri siti More sharing options...
cagliostro Inserita: 14 ottobre 2021 Segnala Share Inserita: 14 ottobre 2021 Tutte le variabili dichiarate internamente alle Hmi Basic e Comfort non hanno la possibilità di avere la retentività. Puoi solamente inizializzarle a dei valori prefissati che comunque nulla hanno a che fare con la ritenzione. Se per forza le variabili devono essere ritentive, allora dovranno per esempio essere dichiarate in un DB ritentivo del PLC e da li nel data base delle variabili dichiarate come interne alla Hmi vai invece a prenderti quelle definite nel DB a ritenzione. Link al commento Condividi su altri siti More sharing options...
cagliostro Inserita: 14 ottobre 2021 Segnala Share Inserita: 14 ottobre 2021 Altra possibilità sarebbe quella di salvare le variabili interne in un archivio o in un file di testo, quindi sempre per mezzo di un script all'avvio della hmi, prendere le variabili archiviate o quelle messe in un file di testo e copiarle nelle variabili interne. Tuttavia come da te scritto nei post precedenti, non avendo familiarità con Scripts ed altri linguaggi simili, se ti è possibile sceglierei la via della retentività mediante DB su PLC. Link al commento Condividi su altri siti More sharing options...
Project75 Inserita: 14 ottobre 2021 Autore Segnala Share Inserita: 14 ottobre 2021 39 minuti fa, cagliostro ha scritto: Altra possibilità sarebbe quella di salvare le variabili interne in un archivio o in un file di testo, quindi sempre per mezzo di un script all'avvio della hmi, prendere le variabili archiviate o quelle messe in un file di testo e copiarle nelle variabili interne. Tuttavia come da te scritto nei post precedenti, non avendo familiarità con Scripts ed altri linguaggi simili, se ti è possibile sceglierei la via della retentività mediante DB su PLC. Il problema è che nel plc non li posso mettere perché ho già raggiunto il numero massimo di variabili che può gestire la cpu, ecco perché ho utilizzato le variabili del hmi. Link al commento Condividi su altri siti More sharing options...
drn5 Inserita: 14 ottobre 2021 Segnala Share Inserita: 14 ottobre 2021 3 ore fa, Project75 ha scritto: ho già raggiunto il numero massimo di variabili che può gestire la cpu che cpu usi? ottimizza l'ottimizzabile! Ciao Link al commento Condividi su altri siti More sharing options...
cagliostro Inserita: 14 ottobre 2021 Segnala Share Inserita: 14 ottobre 2021 A che % di occupazione sei arrivato nella memoria di lavoro del PLC? A seguire screenshot di esempio Link al commento Condividi su altri siti More sharing options...
Project75 Inserita: 14 ottobre 2021 Autore Segnala Share Inserita: 14 ottobre 2021 La percentuale non la ricordo solo che nel db alcune variabili non mi funzionavano e se avvicinavo il mouse mi diceva che ho raggiunto il numero massimo di variabili da gestire dalla CPU 1215 dc/dc/dc, poi ho chiamato l'otline e mi ha detto che avevo raggiunto il numero massimo di variabili che la cpu poteva elaborare. Guardando la percentuale ora è bassissima, invio foto. Link al commento Condividi su altri siti More sharing options...
cagliostro Inserita: 14 ottobre 2021 Segnala Share Inserita: 14 ottobre 2021 Cosa possa essere successo francamente non ne ho idea, ma dallo screenshot che hai pubblicato, l'effettiva occupazione della memoria di lavoro della CPU ti permette di gestire in tutta tranquillità le tue variabili WString in un DB ritentivo. Prova........ Link al commento Condividi su altri siti More sharing options...
Project75 Inserita: 14 ottobre 2021 Autore Segnala Share Inserita: 14 ottobre 2021 (modificato) Ho già provato, mi da errore, ma non potresti gentilmente inviarmi l'inizio dello script per memorizzare una wstring e poi magari continuo io con le altre? Modificato: 14 ottobre 2021 da Project75 Link al commento Condividi su altri siti More sharing options...
cagliostro Inserita: 14 ottobre 2021 Segnala Share Inserita: 14 ottobre 2021 37 minuti fa, Project75 ha scritto: Ho già provato, mi da errore, ma non potresti gentilmente inviarmi l'inizio dello script per memorizzare una wstring e poi magari continuo io con le altre? Pubblica screenshot dell'errore che hai, grazie. Link al commento Condividi su altri siti More sharing options...
Project75 Inserita: 14 ottobre 2021 Autore Segnala Share Inserita: 14 ottobre 2021 Non sono davanti al PC, mi potresti , se possibile, gentilmente inviare la prima parte dello script? Link al commento Condividi su altri siti More sharing options...
Messaggi consigliati
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 accountAccedi
Hai già un account? Accedi qui.
Accedi ora