Vai al contenuto
PLC Forum

Partecipa anche tu alla Live su Youtube martedì 28/01/2025 per festeggiare i 24 anni di PLC Forum

Per ulteriori informazioni leggi questa discussione: https://www.plcforum.it/f/topic/326513-28012025




Codesys - Che programma è Codesys?


Messaggi consigliati

Inserita: (modificato)

Io lo utilizzo e posso dire che non mi sembra che le variabili vengano aggiornate random.

Se poi scrivi le variabili 2 volte è chiaro che va fatta attenzione, sopratutto sarebbe utile conoscere bene lo strumento che si utilizza in modo da sapere a cosa corrispondono le informazioni rappresentate.

Modificato: da mmore

Inserita:

"Se scrivo 2 volte le variabili........sopratutto sarebbe utile conoscere bene lo strumento che si utilizza in modo da sapere a cosa corrispondono le informazioni rappresentate."

Quello che ho riportato era solo un esempio! Non ha nessun utilizzo pratico.

Quello che voglio dire è che lo stato delle variabili NON viene visualizzato in sincrono con il programma. Ripeto, lo stato delle variabili (visualizzazione), non il valore in esse contenuto. Quello è giusto (per forza di cosa).

"sarebbe utile conoscere bene lo strumento che si utilizza...". Mi sembra un'attimino fuori luogo.

Inserita:

Adriano71,

scusami tanto. Non mi pare di essere stato offensivo. Ho riportato un commento su un esplicito esempio da te indicato. Se poi ti riferivi a tutt'altro.... scusa tanto.

Comunque, se posso essere utile, a questo punto non ho ben capito cos aintendi per "NON viene visualizzato in sincrono con il programma", cioè vuoi dire che il valore indicato da Codesys è "in ritardo" o è "casuale", o altro.

Ciao.

Inserita:

Ti faccio un'altro esempio:

Ho un blocco funzione AAA con la variabile globale Pippo.

Assegno a Pippo il valore 5

In un altro blocco funzione BBB richiamato successivamente alla stessa variabile Pippo gli assegno il valore 10.

Se vado in stato nel blocco AAA non sempre vedo che Pippo ha il valore 5, a volte è 5 a volte è 10.

Questo perchè l'aggiornamento non è sincronizzato con il ciclo CPU.

In Siemens per esempio se scrivi

L 5 5

T Pippo 5

L 10 10

T Pippo 10

quindi lo stato delle variabili è sincrono con il ciclo CPU.

Ti ripeto questo con i prodotti Rexroth

Inserita:

Scusa ho sbagliato la tabulazione nell'esempio Siemens.

I valori numerici più a destra è il valore di Accu1

Inserita:

Ok, credo di aver capito.

Parliamo, in ogni caso, di scrittura multipla della stessa variabile globale o Global_Variable (Pippo).

Per quallo che ho potuto vedere (stesso software ma con altri hardware) il valore è il risutato finale (risultato) del ciclo di programma (esattamente come se scrivesse un'uscita DO avresti l'uscita pari a 0 o 1 a seconda dell'ulstima scrittura).

Se vuoi "vedere" il valore di AAA (con tutti i suoi dettagli) cliccando su AAA viene visualizzato l'istanza AAA (piuttosto che BBB se clicchi su BBB).

E' sicuramente diverso da siemens, però (lo dico come parere strettamente personale) non so se meglio o peggio.

Per quanto mi ricguarda la ritengo questione di abitudine (il vantaggio è che se Pippo è scritta due volte leggi sempre il vero valore risultato del ciclo di programma) che magari si riflette su abitudini e modi di scrivere codice.

Questo è quanto intendevo con "sarebbe utile conoscere bene lo strumento", diciamo un po' come quando usiamo (almeno io personalmente lo faccio) un tester per capire se un cavo è in basso isolamento. La lettura è molto attendibile se verifico 5 metri di cavo steso in modo lineare in laboratorio. Se eseguo la stessa prova su un cavo di 200 mt che passa per lunghi tratti in prossimità di cavi con elevate correnti, trafo MT/bt, e chi più ne ha più ne metta, leggerò qualcosa che deve essere "interpretato".

Ciao.

Inserita:

E' vero che il risultato a fine ciclo è ciò che conta, ma penso sia importante anche sapere come si arriva a quel valore. Pensa se la variabile venisse riempita con un valore proveniente da un calcolo di altre variabili. Non avresti modo di sapere il reale comportamento. Inoltre nel caso in cui il valore della variabile influisce su altri calcoli in realtà non saresti in grado di debuggarli.

A questo punto il debug fornito da Codesys si avvicina più al controlla e comanda variabili (con in più la visualizzazione del flusso delle chiamate) che al debug del codice.

Comunque non volevo fare una polemica, volevo semplicemente evidenziare le differenze con un sistema tipo Siemens (che sinceramente ritengo superiore da questo punto di vista)

Inserita:

Adriano71,

premetto che neanche io volevo essere polemico e che non ho nessun interesse a favore del Codesys. Volevo solo contribuire con la mia esperienza sul prodotto e su quanto da me personalmente sperimentato sulla mia pelle. Aggiungo solo che questo "aspetto" (tutt'altro che dettaglio) è trattato in modo differente a seconda del software che si utilizza (se posso citare uno per tutto mi ricordo che anche RS Logix 5 si comporta come in CodeSys).

Ciao.

Inserita:

Salve a tutti!!

Io sono già un paio di anni (almeno) che lavoro anche con cpu ABB e con il Codesys da loro distribuito.

Rispetto alle prime versioni (AC1131 per le KT97 o le KR51), la nuova versione distribuita per l'AC500 (Scusate se parlo solo di ABB ma la mia esperienza con il Codesys si riferisce solo a queste CPU) non funziona affatto male!

Ho fatto processi di medio/bassa difficoltà anche utilizzando SFC e il prodotto finale è risultato soddisfacente (anche se c'è ancora molto da migliorare)!

Io consiglio di smanettarci un po' e abituarsi a qualche stranezza (per esempio l'indicizzazione forzata degli I/O)!

  • 10 months later...
ifachsoftware
Inserita:

Premetto che ho lavorato con Codesys e Wago , ma volevo capire come controllavi le variabili : ossia se piazzi un break point e vai in passo passo a me non è mai capitato di vedere i valori random ...

Ciao :)

  • 4 weeks later...
lissoni.davide
Inserita:

Mi intrometto nella discussione..

Volevo scaricare la versione di codesys dal sito 3S. Mi sono registrato ma ho un dubbio. User name e password li mandano per posta o per posta elettronica? Al termine della registrazione c'e' una frase un po' criptica (.. is travelling to you)

Davide

Inserita:

dovrebbe arrivare entro max. 3 giorni via mail (of course! :-) ). Se non dovesse arrivare, prova a contattarli..magari è successo qualcosa..

lissoni.davide
Inserita:

Seguirò il consiglio... sono passate quasi due settimane!

  • 1 year later...
Inserita:

Io gestisco il mio impianto elettrico di casa con wago sono alle prime armi e per ora sto cercando di ampliare il programma che mi hanno fatto.Sapete dovo trovare delle librerie, con temporizzatori,teporizzatori in ritardo,doppie funzioni da uno stesso pulsante..

  • 1 year later...
Inserita:

Buongiorno a tutti, forse non ho capito l'esempio, ma sul mio L20 Bosch non vedo questo problema anzi riesco finalmente a vedere cosa succede nelle singole istanze.

forse non ho abbastanza esperienza ma sarei grato ad Adriano71 se mi potesse aiutare a realizzare con siemens questo esempio che ho utilizzato su un L20 e ora devo riprodurlo su una 315 2DP.

pippo: ARRAY[0..1000] OF int;
pluto: ARRAY[0..1000] OF int;
paperino : int;

topolino : int;

topolino := pippo[pluto[paperino]];

Grazie

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