Vai al contenuto
PLC Forum


Programma Controllo Valvole


nemesis85

Messaggi consigliati

Ciao colleghi,

Mi presento, sono nuovo del forum, vorrei un aiuto nello svolgere un programmino di qualche rung.

Il sistema consiste nel trasferire via ethernet da un pc industriale ad un plc dei buffer di dati ( matrici) che contengono usa serie di bit che dicono al plc quale valvola aprire e quale no.

Il sistema consiste in una coda circolare, quindi nel trasferire via ethernet dei buffer di 500 byte, cosi composti: matrice 25 righe per 20 colonne. Quindi, ogni riga è composta da 10 WORD, ogni word ha 16 bit per un totale di 108 valvole da comandare. in questo modo occuperei fino alla settima word come dati, in quanto 108 valvole / 16 bit a word fa = 6.75. , le 2 WORD successive rimangono vuote, mentre l'ultima WORD inserisco arbitrariamente dal plc 1111111111111111. (COSI DA AVERLA COME INDICE DI FINE RIGA)

il Plc riceve un buffer dati ogni 125 ms.
Ogni 125 ms il Plc riceve un impulso di sincronizzazione (STROBE) proveniente dal pc che avvisa dell'arrivo di un buffer dati.

L'avanzamento del sistema avviene tramite un encoder che ad ogni impulso invierà la prima riga pronta al modulo di uscita.

Il sistema è sincronizzato da un clock (encoder) che genera un impulso per ogni riga che il sistema deve scodare

nel plc avro quindi, un ingresso ethernet che riceve i vari buffer dal pc.

ingresso ad interrupt che riceve impulsi encoder + impulso di sincronizzazione buffer

eventuale contatore veloce per ricevere impulsi encoder

la configurazione hardware del sistema è la seguente.

CJ2H-CPU64-EIP

CJ1W-INT01 ingressi interrupt

CJ1W-CNT01 contatore veloce

n.7 CJIW-OD213 moduli di uscita veloci

vi ringrazio anticipatamente per l'aiuto, se qualcuno mi aiuta a compilare il programma o crea una bozza di esso ne sarei grato.... per ogni cosa contattatemi, magari posso darvi altri particolari, o sentirci.

grazie saluti a tutti

Link al commento
Condividi su altri siti


ciao

Ogni 125 ms il Plc riceve un impulso di sincronizzazione (STROBE) proveniente dal pc che avvisa dell'arrivo di un buffer dati.

la parte pc come la fai?

quanto è grande il programma visto che usi una cpu 64?

quanti dati devi inviare il pc, nel senso ,che ad ogni invio i dati sono sempre diversi?

i dati sono calcolati da pc in che modo?

una domanda per curiosità :a che frequenza devi pilotare le valvole e che tipo di valvole sono?

Link al commento
Condividi su altri siti

La parte pc la fa un'azienda esterna che mi ha riferito che mi invierà tramite ethernet un buffer di 500 byte ogni 125 ms.

Il programma non so quanto sia grande, proprio per questo chiedo aiuto a voi.

Ad ogni invio dati riceverò sempre 500 byte, ma con contenuti sempre diversi, in quanto le informazioni di apertura che manda il pc sono sempre random.

le valvole si aprono ogni 5 milli sencondi

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