nemesis85 Inserito: 1 agosto 2014 Segnala Share Inserito: 1 agosto 2014 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 More sharing options...
lelos Inserita: 1 agosto 2014 Segnala Share Inserita: 1 agosto 2014 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 More sharing options...
nemesis85 Inserita: 1 agosto 2014 Autore Segnala Share Inserita: 1 agosto 2014 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 More sharing options...
JumpMan Inserita: 1 agosto 2014 Segnala Share Inserita: 1 agosto 2014 le valvole si aprono ogni 5 milli sencondi mi sembra un tempo veloce per una valvola Link al commento Condividi su altri siti More sharing options...
nemesis85 Inserita: 2 agosto 2014 Autore Segnala Share Inserita: 2 agosto 2014 guarda, sono valvole ultra veloci, per il sorting... Link al commento Condividi su altri siti More sharing options...
Messaggi consigliati
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 accountAccedi
Hai già un account? Accedi qui.
Accedi ora