Jump to content
PLC Forum


Bonna2212

Mancata corrisponenza visualizzazione online

Recommended Posts

Bonna2212

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

Share this post


Link to post
Share on other sites

max.bocca

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.

Share this post


Link to post
Share on other sites
Ctec

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".

Share this post


Link to post
Share on other sites
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.

Edited by Marco Fornaciari

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...