Project75 Inserita: 24 febbraio 2022 Autore Segnala Inserita: 24 febbraio 2022 11 minuti fa, acquaman ha scritto: Ma hai verificato che valori ci sono dentro l'array soglie? Per evitare questo problema, crea gli array soglie che vanno da 0..3, se per qualche motivo i valori dell'indice sono a 0 il plc non va in stop. Ho provato da 0 a 3 e da 0 a 4, stesso problema
acquaman Inserita: 24 febbraio 2022 Segnala Inserita: 24 febbraio 2022 40 minuti fa, acquaman ha scritto: Ma hai verificato che valori ci sono dentro l'array soglie?
Project75 Inserita: 24 febbraio 2022 Autore Segnala Inserita: 24 febbraio 2022 1 minuto fa, acquaman ha scritto: Andando online?
Project75 Inserita: 24 febbraio 2022 Autore Segnala Inserita: 24 febbraio 2022 2 minuti fa, acquaman ha scritto: No, dalla sfera di cristallo. Ho mandato foto, i valori sono 1,2 e 3
acquaman Inserita: 24 febbraio 2022 Segnala Inserita: 24 febbraio 2022 No, tu hai mandato la foto dei move, ma se non c'è nessun contatto chiuso i move non lavorano e il valore degli indici resta a 0. Hai verificato il valore che c'è negli indici?
acquaman Inserita: 24 febbraio 2022 Segnala Inserita: 24 febbraio 2022 3 ore fa, acquaman ha scritto: prima di questo blocco metti un controllo su questi indici se il valore è compreso tra 1 e 3. Comunque questo non l'hai fatto, c'è l'istruzione limit.
Project75 Inserita: 24 febbraio 2022 Autore Segnala Inserita: 24 febbraio 2022 3 minuti fa, acquaman ha scritto: Comunque questo non l'hai fatto, c'è l'istruzione limit. Si ma la cpu non va in run, come faccio a controllare valore?
acquaman Inserita: 24 febbraio 2022 Segnala Inserita: 24 febbraio 2022 Se dopo il contatto negato metti un confronto che l'indice deve essere >= a 1 e un secondo confronto che l'indice deve essere <=3, se l'indice è 0 o maggior di 3 non esegui i move e se il valore dell'indice è il tuo problema (come ipotizziamo) non mandi in stop il plc.
Project75 Inserita: 24 febbraio 2022 Autore Segnala Inserita: 24 febbraio 2022 15 minuti fa, acquaman ha scritto: Comunque questo non l'hai fatto, c'è l'istruzione limit.
Project75 Inserita: 24 febbraio 2022 Autore Segnala Inserita: 24 febbraio 2022 1 minuto fa, acquaman ha scritto: E va ancora in stop? Si, ora e in run perché ho messo OB programming error, come aveva detto batta......
acquaman Inserita: 24 febbraio 2022 Segnala Inserita: 24 febbraio 2022 Sei sicuro che il problema sia in quel segmento, da quello che si vede dalla foto li funziona.
Project75 Inserita: 24 febbraio 2022 Autore Segnala Inserita: 24 febbraio 2022 5 minuti fa, acquaman ha scritto: Sei sicuro che il problema sia in quel segmento, da quello che si vede dalla foto li funziona. Funziona dopo aver inserito OB PROGRAMMING ERROR, altrimenti la cpu non va in run, il problema è lì perché dalla diagnostica se clicco su 'apri nell'editor' mi porta in quel segmento.....
acquaman Inserita: 24 febbraio 2022 Segnala Inserita: 24 febbraio 2022 Ma se non ricordo male se ci fosse un errore anche con l'OB, il simbolino dovrebbe essere rosso.
Project75 Inserita: 24 febbraio 2022 Autore Segnala Inserita: 24 febbraio 2022 15 minuti fa, acquaman ha scritto: Ma se non ricordo male se ci fosse un errore anche con l'OB, il simbolino dovrebbe essere rosso. Si, ma se tolgo OB programming error la cpu non si avvia e rimane acceso LED arancione
acquaman Inserita: 24 febbraio 2022 Segnala Inserita: 24 febbraio 2022 Metti a dura prova le persone, Quello segnato è un contatore? Può essere che quando avvii il plc il contatore è 0, quindi non carica i valori dell'indice che restano a zero. Mettendo l'ob, il plc non va in stop, carichi un valore nel contatore che a sua volta carica un valore nell'indice? L'array indice non è ritentivo, prova a mettere i valori di avvio 1, 2, 3 nell'array dell'indice e prova. Cosi quando avvii il plc nell'indici trovi già un valore e non dovrebbe andare in errore anche senza l'ob.
Livio Orsini Inserita: 24 febbraio 2022 Segnala Inserita: 24 febbraio 2022 6 minuti fa, acquaman ha scritto: Può essere che quando avvii il plc il contatore è 0, Se nessuno lo inizializza sicuramente è a zero. E buona pratica alla prima scansione lanciare una funzione che predisponga tutte le vriabili al valore iniziale voluto. E anche buona pratica creare array che vanno da 0 a n, non da 1 a n. In questo modo si evitano tanti giri a vuoto per ricercare malfunzionamenti.
Project75 Inserita: 24 febbraio 2022 Autore Segnala Inserita: 24 febbraio 2022 12 minuti fa, acquaman ha scritto: Metti a dura prova le persone, Quello segnato è un contatore? Può essere che quando avvii il plc il contatore è 0, quindi non carica i valori dell'indice che restano a zero. Mettendo l'ob, il plc non va in stop, carichi un valore nel contatore che a sua volta carica un valore nell'indice? L'array indice non è ritentivo, prova a mettere i valori di avvio 1, 2, 3 nell'array dell'indice e prova. Cosi quando avvii il plc nell'indici trovi già un valore e non dovrebbe andare in errore anche senza l'ob. Niente non va 🤔
acquaman Inserita: 24 febbraio 2022 Segnala Inserita: 24 febbraio 2022 Questo segmento, è prima di quello dove vai in errore? Prova a togliere il contatto segnato, almeno siamo sicuri che un valore dentro gli indici ci sono.
Project75 Inserita: 24 febbraio 2022 Autore Segnala Inserita: 24 febbraio 2022 18 minuti fa, acquaman ha scritto: Questo segmento, è prima di quello dove vai in errore? Prova a togliere il contatto segnato, almeno siamo sicuri che un valore dentro gli indici ci sono. Ho tolto contatto ed è andato via l'errore lo rimesso e ora funziona, sicuramente perché è rimasto memorizzato ultimo valore, secondo me la soluzione è fare larray 0a2 così la cpu si avvia anche se il blocco non è in funzione, e se il blocco non è in funzione l'indice soglia rimarrà a zero perchè il confronto == del contatore stara sempre attivo perche a 0 qundo il blocco non è richiamato e di conseguenza l'indice dell'array non andrà fuori limite, giusto?
Project75 Inserita: 24 febbraio 2022 Autore Segnala Inserita: 24 febbraio 2022 Oppure metto un confronto == del contatore a 0 così se il contatore è a 0 l'indice soglia 1 e a 1, l'indice soglia 2 e a 2 e l'indice soglia 3 e a 3. Giusto?
acquaman Inserita: 24 febbraio 2022 Segnala Inserita: 24 febbraio 2022 Oppure togli quel contatto cosi se non hai nessun valore nel contatore a prescindere carichi un valore dentro gli indici, poi se il contatore ha il valore 2 sovrascrive gli indici. Non voglio fare critiche, ma quando una persona scrive non è li con te a vedere cosa succede, e spesso vengono inserite domande per cercare di capire cosa succede, chi risponde dovrebbe innanzitutto dare più informazioni possibili, in secondo luogo rispondere alle domande poste per cercare di far capire la situazione senza che l'altro tiri ad indovinare. 1 ora fa, acquaman ha scritto: Quello segnato è un contatore? 38 minuti fa, acquaman ha scritto: Questo segmento, è prima di quello dove vai in errore?
batta Inserita: 24 febbraio 2022 Segnala Inserita: 24 febbraio 2022 Se ci dai la possibilità di scaricare il progetto, di sicuro l'errore lo troviamo.
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