Vai al contenuto
PLC Forum


Lettura dati pa PLC con libnodave


wolfalone

Messaggi consigliati

Buongiorno a tutti,
sono nuovo di questo forum e sono nuovo anche per quanto riguarda l'uso dei PLC.

La mia necessità è quella di leggere alcuni dati da un PL S7-300 utilizzando la libreria libnodave da Delphi. In particolare devo verificare che un certo bit sia attivo (indicazione che i dati sono presenti per la lettura) per procedere con la lettura di alcuni dati che devono essere archiviati dentro un database Microsoft SQL server. Dopo aver letto i dati devo disattivare il bit precedentemente descritto.
Fino ad ora sono riuscito a leggere i dati e visualizzarli e anche a disattivare il bit, ma la questione che voglio porre è la seguente:

Io leggo un gruppo di byte (una sessantina circa), ma in realtà quelli che a me interessa archiviare sono meno, ma non sono consecutivi nell'ambito dei byte letti. A tale scopo ho inserito una serie di istruzioni tipo quelle seguenti:

    for i := 1 to 14 do
      daveGetU8(dc);
    for i := 1 to 6 do
      daveGetU16(dc);


allo scopo di saltare i dati che non mi interessano. Inoltre il bit che segnala la presenza di dati si trova in fondo al gruppo di byte che leggo. Le mie domandi, quindi sono due:

  • Esiste un metodo più "intelligente" per leggere i dati, saltando quelli che non mi interessano?
  • Conviene leggere prima il bit di controllo e poi leggere i dati o, come faccio adesso, leggere tutti i dati e dopo verificare che il bit sia attivo?

Dico questo perché cercando qua e là ho visto che la lettura da PLC implica un certo tempo ed è meglio limitare le letture per questioni di performance.
Spero di essere stato chiaro poiché, come già detto, sono un neofita dei PLC.
Grazie a tutti

 

Eros

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