Vai al contenuto
PLC Forum


acquisizione codifica da contraves


RiccardoVis

Messaggi consigliati

Buongiorno, devo rifare da zero, un programma in ladder per acquisire da plc Omron c20, il valore numerico impostato su di un contraves a 4 bit, tale valore, dovrò depositarlo dentro un contatore CNT000 come SV. Nello schema HW, vengono utilizzati 4 ingressi digitali 000.09, 000.10,000.11,000.12 e 000.12 (comune). Grazie.

Link al commento
Condividi su altri siti


Buonasera, appena passo ad indirizzare i valori su DM mi dà errore, cioè non mi consente di specificare indirizzo con DM. Me lo consente con HR0, HR1 etc, però quando vado a trasferire nella cpu, si accende la spia errore memoria sul plc C20 Omron.

 

Link al commento
Condividi su altri siti

E' un C20 (io avevo letto un C200, e con quello ti ho fatto l'esempio il CXprogrammer), mentre tu userai un Syswin, immagino.

Se è un C20 e non un C20H, il contatto sempre ON è il 18.13, non il 253.13 (son dovuto andare a rispulciare, il C20 è roba di circa 30 anni fa...

Inoltre, il C20 non aveva le DM, era un oggetto un po' primitivo.

E in ultimo, non si può assegnare una variabile alla funzione CNT, per cui puoi solo fare conteggi fissi.

Mi dispiace.

 

Link al commento
Condividi su altri siti

Eppure la macchina ha un contraves e nello schema elettrico riporta il collegamento dei 5 bit  per l'acquisizione del valore numerico. Ho provato utilizzando le memorie ritentive HR. Non mi dà errori di compilazione, però quando lo vado a trasferire nella Ram, si accende la spia Error, quella sotto alla spia  di RUN.

Link al commento
Condividi su altri siti

Probabilmente non viene usato un contatore, ma un incremento con confronto. Se il modello è un C20 (e non un C20H o un C200), non si può assegnare una variabile a un contatore né ci sono le DM. Ho ricontrollato sul manuale. Se fosse un C20H, allora avrebbe le DM, ma non rammento se i CNT sono settabili con una variabile.

Hai per caso il programma originale?

Link al commento
Condividi su altri siti

No, il programma originale si è cancellato completamente causa della batteria tampone. Sono intervenuto per rifare da capo il programma. La macchina ora funziona ma mi manca l'inserimento della variabile da codificatore (contraves). Nello schema allegato, i piedini d'ingresso dal 9 al 12 del plc c20

schema c20.jpeg

anzi, mi correggo, dal 9 al 13

Link al commento
Condividi su altri siti

Prova a fare così (il primo blocco è da completare con quello che ti ho postato precedentemente):

image.png.9ede60d25c052d19ba0a18942163f38d.png

Questo calcola il setpoint in base al contraves

image.png.44fedb1ece1e0b42a6b7312cec3e6052.png

Questo a ogni attivazione dell'ingresso 0.7 genera un impulso e conta avanti di uno

 image.png.ae030cc312b77f4e9cc81853797b0f9e.png

Questo confronta il conteggio con il setpoin, e appena sono uguali (una scansione) attiva l'uscita 6.1 e rimette a zero il contatore (autoreset).

 

 

Modificato: da Ctec
Link al commento
Condividi su altri siti

  • 3 weeks later...
il 1/6/2021 at 11:16 , Ctec scrisse:

Prova a fare così (il primo blocco è da completare con quello che ti ho postato precedentemente):

image.png.9ede60d25c052d19ba0a18942163f38d.png

Questo calcola il setpoint in base al contraves

image.png.44fedb1ece1e0b42a6b7312cec3e6052.png

Questo a ogni attivazione dell'ingresso 0.7 genera un impulso e conta avanti di uno

 image.png.ae030cc312b77f4e9cc81853797b0f9e.png

Questo confronta il conteggio con il setpoin, e appena sono uguali (una scansione) attiva l'uscita 6.1 e rimette a zero il contatore (autoreset).

 

 

Grazie per l'aiuto. Ho perfezionato il programma da te postato e funziona correttamente. Grazie veramente di cuore!

 

Link al commento
Condividi su altri siti

il 1/6/2021 at 11:16 , Ctec scrisse:

Prova a fare così (il primo blocco è da completare con quello che ti ho postato precedentemente):

image.png.9ede60d25c052d19ba0a18942163f38d.png

Questo calcola il setpoint in base al contraves

image.png.44fedb1ece1e0b42a6b7312cec3e6052.png

Questo a ogni attivazione dell'ingresso 0.7 genera un impulso e conta avanti di uno

 image.png.ae030cc312b77f4e9cc81853797b0f9e.png

Questo confronta il conteggio con il setpoin, e appena sono uguali (una scansione) attiva l'uscita 6.1 e rimette a zero il contatore (autoreset).

 

 

Grazie per l'aiuto. Ho perfezionato il programma da te postato e funziona correttamente. Grazie veramente di cuore!

L'unico problema è nato col Clear carry, mi da sempre errore nella compilazione. Ho dovuto toglierlo.

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