Spiddy1 Inserito: 30 aprile 2020 Segnala Inserito: 30 aprile 2020 Buon giorno provo a spiegarmi in sostanza ho da pulsare un’analogica in determinate situazione in altre invece tenerla alta di continuo Per fare ciò ho fatto 2 Fb 1 x continuo e 1 x pulsanti che li vado a richiamare nel main in condizione precise il problema lo ho nell’fb Di pulsazioni all’interno ci sono delle memorie(non sono meeker ma memorie Db) con dei ton per regolare anche l’intensita Di lampeggio ed a volte mi succede che le 2 memorie mi restano tutte 2 alte così non pulsa più e basta togliere la corrente dal plc e ridarla e riparte il tutto io ho provato nel main a resettarle se per caso non ho lo start generale però anche se e alto I reset della memoria nell’Fb resta sempre a true succede ogni tanto magari va tutto il giorno e giorni si blocca 3-4 volte lo so che è difficile capire senza codice ma purtroppo fino a lunedì non posso postarlo se per caso mi
step-80 Inserita: 1 maggio 2020 Segnala Inserita: 1 maggio 2020 (modificato) Cosi, a naso, quasi sicuramente dipenderà dalle condizioni con le quali abiliti/disabiliti gli Fb per passare da una condizione all’altra. Se togli EN alla funzione tutto all’interno di essa rimane congelato nell’ultimo stato comandato. Un consiglio? O queste cose le sai fare e bene,altrimenti finchè non si ha la l’esperienza adeguata meglio gestire tutto magari in un’unica FB, dettando solo li dentro le condizioni per le quali la tua analogica dovrà ‘pulsare’ o stare fissa. Il richiamo della funzione fallo sempre nel main ma incondizionato. Dentro di essa andrai poi a gestire le varie eccezioni e/o cambi di stato. Naturalmente il tutto scritto nel modo piu chiaro possibile e scrivendo l’uscita in un rung solo. Modificato: 1 maggio 2020 da step-80
acquaman Inserita: 1 maggio 2020 Segnala Inserita: 1 maggio 2020 Senza codice è impossibile capire il problema, intanto sarebbe interessante capire l'applicazione, non mi è mai capitato di far pulsare uscite analogiche e tra quali valori?
Spiddy1 Inserita: 1 maggio 2020 Autore Segnala Inserita: 1 maggio 2020 Ok per prima cosa tolgo i 2 Fb e li metto tutto sul main così provo e testo,ed e la cosa più semplice per aquaman e un traino filo freddo per saldatura a tig,la velocità del filo e data dall’analogica e se la pulso il filo esce ad impulsi ed escono le cappe tipo saldatura dei telai della bici in alluminio grazie
Spiddy1 Inserita: 1 maggio 2020 Autore Segnala Inserita: 1 maggio 2020 o faccio un fb che l’en lo metto sempre a true o tolgo gli fa e li apro tutti nel main vedo
step-80 Inserita: 1 maggio 2020 Segnala Inserita: 1 maggio 2020 (modificato) Come dice acquaman senza codice è difficile, ma se ho ben capito l’applicazione scrive un determinato valore sull’analogica oppure ad intervalli impostabili scrive il valore poi scrive Zero. Almeno questo è quello che capisco ma non ho esperienze in merito. Se è cosi, mi sembra eccessivo scomodare 2 Fb per scrivere sulla stessa analogica anzi, al 99% il tuo problema sta proprio li... Avrai un selettore fisico o virtuale che decide se pulsare o meno, quindi ti basta leggerlo per prendere le 2 strade. Crei il clock con i tempi che vuoi, chiamiamolo appunto ‘clock’. Ora hai un bit che pulsa con la frequenza che vuoi. Se selettore modalità == Off , scrivi direttamente l’analogica sul canale. Se selettore modalità == On , sul fronte positivo di ‘clock’ carichi il valore sull’analogica, su fronte negativo carichi Zero sull’analogica. Cosi su 2 piedi mi viene in mente questo. Poi se per tua comodità vuoi creare una Fb per farlo, puoi dichiarare una variabile a 16 bit come Output e scrivere li il valore..poi in uscita all’Fb colleghi la tua analogica. Modificato: 1 maggio 2020 da step-80
Spiddy1 Inserita: 1 maggio 2020 Autore Segnala Inserita: 1 maggio 2020 L’analogica bassa non è detto che sia a zero comunque ho 4 valori importabili Analogica Alta Analogica Bassa Tempo Analogica Alta e Tempo Analogica Bassa..ho fatto il tutto con 2 Ton e delle memorie che setto e resetto per fare cio se per caso voi avete qlc idea diversa per fare ciò vi ascolto molto volentieri se dovete farmi qlc esempio fatemelo in Kop per cortesia grazie mille
acquaman Inserita: 1 maggio 2020 Segnala Inserita: 1 maggio 2020 Più che usare 2 TON non vedo altre soluzioni, il fatto che non funziona bisogna vedere il codice. L'FB è sempre richiamato? Se richiami l'FB con il timer già abilitato il timer potrebbe non vedere il fronte di salita e il temporizzatore non parte.
Spiddy1 Inserita: 1 maggio 2020 Autore Segnala Inserita: 1 maggio 2020 Grazie mille una domanda al volo penso che quello sia il software per il logo in tia il fronte viene gestito in maniera diversa sopra ci metto il mio clock user e sotto una variabile booleana che serve a lui per i suoi conti vero? la variabile deve essere diversa tra il blocco fronte di salita o fronte di discesa o la stessa? Grazie
step-80 Inserita: 1 maggio 2020 Segnala Inserita: 1 maggio 2020 Ciao no è un software japan (Mitsubishi) dove i fronti sono gestiti in maniera implicita. Ti consiglio di approfondire il concetto di ‘i suoi conti’ , cosi ti sarà chiaro anche il perchè NON puoi assegnare la stessa variabile al fronte positivo e a quello negativo, almeno se vuoi che il tuo programma giri correttamente. Comunque sia qui sul forum trovi parecchie discussioni che trattano l’argomento fronti.
batta Inserita: 1 maggio 2020 Segnala Inserita: 1 maggio 2020 2 ore fa, Spiddy1 ha scritto: la variabile deve essere diversa tra il blocco fronte di salita o fronte di discesa o la stessa? Se intendi le variabili di appoggio per il rilevamento del fronte, ogni fronte deve avere la sua variabile. Comunque, al posto dei fronti di salita e discesa, puoi anche lavorare con lo stato alto e lo stato basso della variabile.
Spiddy1 Inserita: 2 maggio 2020 Autore Segnala Inserita: 2 maggio 2020 Secondo voi se ho tempi ad esempio 100/200 ms di tempo alto e di tempo bassa mi vengono rilevati i fronti con l’esempio fatto da Step-80? grazie
acquaman Inserita: 2 maggio 2020 Segnala Inserita: 2 maggio 2020 Bisogna vedere il tempo di scansione del plc, se non è altissimo non ci dovrebbero essere problemi, ma con le attuali cpu, a meno che non sia piena, raramente si hanno scansioni vicine ai 100ms che possano darti problemi.
Spiddy1 Inserita: 2 maggio 2020 Autore Segnala Inserita: 2 maggio 2020 Io uso una cpu 1214 di solito grazie
step-80 Inserita: 2 maggio 2020 Segnala Inserita: 2 maggio 2020 (modificato) Come diceva Batta, in questo caso puoi usare anche lo stato alto o basso del segnale. I fronti derivano da una mia mania di trattare i plc come un parente, pensando che facendo continuamente ‘move’ anzichè una volta sola si stanchino e poi abbiano bisogno di riposo 🤣 Comunque sia, anche tu avessi tempi di scansione di 50 ms (cosa altamente improbabile) i fronti verrebbero rilevati comunque. Il problema è che sarebbero in ritardo rispetto all’andamento reale del segnale. Modificato: 2 maggio 2020 da step-80
Spiddy1 Inserita: 3 maggio 2020 Autore Segnala Inserita: 3 maggio 2020 Ho provato e funziona alla grande in simulazione logicamente una domanda,le 2 variabili che ho legato al fronte di salita e al fronte di discesa ha senso quando non sono in ciclo di pulsazione fargli un R per essere sicuri che quando rientro nel ciclo di pulsazione siano tutte e 2 a false?
step-80 Inserita: 3 maggio 2020 Segnala Inserita: 3 maggio 2020 No non ha nessun senso. Quei bit servono al sistema per memorizzare lo stato del clock ed eseguire le istruzioni solo una volta al cambio di stato. Se non dovessi metterle, te ne preoccuperesti?
step-80 Inserita: 3 maggio 2020 Segnala Inserita: 3 maggio 2020 Ecco a cosa servono le memorie di appoggio che ti fa inserire il TIA. Nel mio esempio potrebbero essere 'Memoria_Segnale'. Nello specifico,nel primo segmento il fronte viene generato per una scansione sul passaggio da OFF a ON di 'Segnale'. Se all'accensione del plc il segnale è alto, verrà generato un fronte. Nel secondo rung invece se all'accensione del plc il segnale è alto non viene generato il fronte, ma ci deve essere un cambio di stato da ON a OFF e poi di nuovo ON perchè questo avvenga. Dipende dai casi. Potresti aver necessità di uno o dell'altro sistema. Questo per consigliarti di imparare a staccarti per quanto possibile dai meccanismi preconfezionati e di ragionare con la tua testa , riuscendo ad entrare il piu possibile nella mentalità del plc e su come ragiona lui. Questo ti renderà a poco a poco indipendente. Prova a ragionare su cosa succede nei 2 segmenti e poi se qualcosa non ti è chiaro ci ritorniamo.
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