Vai al contenuto
PLC Forum


Mancata corrisponenza visualizzazione online


Bonna2212

Messaggi consigliati

Buongiorno a tutti

 

Premetto che sono entrato da poco nel modo della programmazione PLC e di CX-Programmer e chiedo scusa in anticipo per la banalità delle questioni per eventuali errori.

 

Ho implementato una funzione di comparazione CMP con il risultato Flag di maggiore P_GT volevo alzare un bit su wa indirizzo W333.01.

 

Il mio problema è che quando utilizzo la vivsualizzazione online in alcuni casi la colorazione verde che dovrebbe indicare lo stato del programma non corrisponde, mi spiego meglio:

 

Riga colorata in verde fino al contatto, contatto non colorato di verde, linea fra il contatto e la bobina non colorati di verde, bobina verde.

Forse l'imagine è piu chiara della mia spiegazione...


Lo stato della bobina sembra sempre essere quello corretto, però qualcosa non torna e non vorrei mi desse problemi in futuro.

 

aimage.thumb.png.5910f0f62f496cf31dfe30dc24f04531.png 

Grazie mille in anticipo a tutti

Link al commento
Condividi su altri siti


Sono anni che non uso più Omron. 

Potrebbe essere che lo stesso indirizzo sia già utilizzato prova fare una ricerca anche del byte , ,Word o doppia Word.

Link al commento
Condividi su altri siti

E' corretta la visualizzazione. Il flag P_GT viene utilizzato da parecchie istruzioni, per cui il suo valore è valido solo subito dopo l'istruzione che lo ha manipolato (come la CMP che hai usato), per cui il CX non ti può mostrare il valore istantaneo, ma solo quello alla fine del ciclo di scansione, dove viene in ogni caso rimesso a 0. Non è un problema, l'esito è corretto.

Dalla foto non capisco che Plc è; se non è un vecchio CPM o Comunque, usa direttamente le (nuove) istruzioni di comparazione (>, <, >=, <=) che invece ti mostrano il risultato nel punto di applicazione. Nel tuo caso "> D2013 D2014".

Link al commento
Condividi su altri siti

Marco Fornaciari

Giusto quel che dice Ctec.

E il discorso vale per tutti i PLC. (Chiamare PLC uno ZEN o consimile ci vuole molta fantasia, anche perchè funzionano diversamente.)

Il fatto che utilizzi la variabili W è un CS1 o CJx, o programmabile con lo stesso set di istruzioni.

In questo caso usare le vecchie istruzioni delle CPU seri C200 e derivati fa solo consumare più memoria e non aiuta nel debug, anzi.

In ogni caso con i CS1 e CJx bisogna fare attenzione al formato delle variabili, e all'uso corretto dei suffissi L e S: cioè variabile a 32 bit e segno. Nonchè ai formati binario o BDC, molte istruzioni funzionano diversamente: le comparazioni per prime.

Una cosa che noto anche in questo programma è l'uso del bit P_on all'inizio di ogni network: di fatto serve solo se la prima istruzionen della network è una funzione e non sempre.

Questa forma di scrittura serviva nella preistoria di alcuni PLC (ormai dimenticati anche dai musei) e in più consuma memoria inutilmente.

Modificato: da Marco Fornaciari
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...