Vai al contenuto

copia dati da un db di array di word a un db di array di real facendo swap delle word


Messaggi consigliati

Inserito:

Salve

 

ho un problema leggendo dei valori da analizzatori di rete tramite un webserver GAVAZZI.

Sto leggendo a step 21 strumenti , alcuni campi resituiti in real non sono corretti, con un CASModbusScanner i valori vengono letti correttamente, per cui il problema è nell mia lettura, in rete ho trovato un esempio su come leggere e fare swap dell word, il mio problema e poi andare a scivere il valore in un db in cui i device sono indicizzati.

 

Come posso fare?

stralcio di programma

 

IF "MB_TCP_STATUS".DONE THEN
    
    // FOR #i := 0 TO 79 DO
    
    //     // Unisce due WORD in una DWORD e la converte in REAL mantenendo il pattern di bit
    //     #tempDWord.%W1 := "MOD_TCP_PARK_W".DataRaw[#i * 2];       // Word alta
    //     #tempDWord.%W0 := "MOD_TCP_PARK_W".DataRaw[#i * 2+1];         // Word bassa
    
    //     // Converte la DWORD in REAL tramite interpretazione dei bit
    //     #tempreal[#i]:= DWORD_TO_REAL (#tempDWord);
    
    // END_FOR;
    
    "MOD_TCP_RDATA".Device["MB_TCP_STATUS".STEP_TCP] := "MOD_TCP_PARK".PRK;
    "MB_TCP_STATUS".STEP_TCP := "MB_TCP_STATUS".STEP_TCP + 1;
    "MB_TCP_STATUS".REQ := FALSE;
END_IF;

 

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