Vai al contenuto
PLC Forum


Sfb52 Rdrec Per Slave Profinet Abb Reta-02


Messaggi consigliati

Inserito:

Buondi a tutti,

sto cercando di leggere (e poi scrivere :-) ) un set di dati da un inverter ACS550 via profinet.

Questo inverter monta il modulo RETA 02.

Ho alcune difficoltà nel parametrizzare il richiamo del suddetto SFB.

Vi posto cosa son riuscito a scrivere sin ora:

//indirizzo logico inverter

L 2046

T #L_dWORD

CALL "RDREC" , DB1

REQ :=M0.5 //comando a uno o a zero da VAT

ID :=#L_dWORD

INDEX :=

MLEN :=12

VALID :=

BUSY :=

ERROR :=

STATUS:=

LEN :=

RECORD:=P#DB115.DBX0.0 BYTE 12

in sostanza dovrei leggere un set di dati dallo slave con indirizzo logico 2046, e scrivere il tutto in una apposita DB da 12byte.

I miei dubbi sono i seguenti:

- ho trovato un tool della siemens, che descrive l'ID non come l'indirizzo di diagnostica dello slave, ma bensi della porta dalla quale si sta accedendo allo slave stesso (che per me, sarebbe un normale switch siemens); è vero questo?!

- il parametro INDEX cosa indica esattamente, o meglio, cosa sono i set di dati?!

Ringrazio anticipatamente per le risposte e per l'attenzione.

PS: eventualmente esistono altri blocchi di sistema per leggere dalla periferia profinet?

PS2: i dati che leggo dall'inverter, sono allocati una 12byte di ingressi di periferia, ed effettivamente, caricando i singoli byte, riesco a leggere i valori che mi interssano.

  • 1 month later...

Inserita:

Ciao.

Non ho esperienza diretta nella comunicazione profinet, ma l'uso della sfb52 e 53 è molto simile a quello del protocollo profibus.

Non mi è chiaro del tutto il tuo problema, ma posso risponderti riguardo all'ID e all'INDEX.

L'ID indica l'indirizzo di periferia espresso in esadecimale. Se il tuo drive ha indirizzo PEW256/xxx PAW256/xxx per ID dovrai mettere il valore W#16#100.

L'index è il "riferimento di accesso agli oggetti in profibus", almeno cosi lo definisce il manuale. In pratica se vuoi scrivere o leggere un parametro devi "costruire" il messaggio da trasferire o leggere via profinet e registrarlo nel data record.

Se tu vuoi leggere 1 parametro per esempio il parametro 12.04 (12.04*100=1204 --> 16#4B4) , imposta INDEX a -47 (16#B002F) e MLEN a 10 o maggiore.

Il record deve essere cosi P#DB115.DBX0.0BYTE10.

La lunghezza è 10 perchè il canale di lettura (set di dati) di un parametro ha 10 byte.

Nel record scrivi i seguenti valori in esadecimale (ogni trattino separa un byte) 05-01-01-01-10-01-00-04-00-B4.

Nel dettaglio:

DB115.DBB0 = 05 -- E' un numero che indica la richiesta di riferimento, se hai più richiami di sfb52 o 53 utilizza numeri diversi ogni volta 6,7,8 etc etc.

DB115.DBB1 = 01 -- Tipo di richiesta (ID) se=1 lettura, se=2 scrittura

DB115.DBB2 = 01 -- Sempre 1

DB115.DBB3 = 01 -- Numero di parametri, in questo caso 1

DB115.DBB4 = 10 -- attributo, 10=Valore

DB115.DBB5 = 01 -- numero di elementi

DB115.DBB6 = 00 -- indice di parametro

DB115.DBB7 = 04 -- indice di parametro

DB115.DBB8 = 00 -- subindice di parametro

DB115.DBB9 = B4 -- subindice di parametro

Questi ultimi quattro indicano il parametro che vuoi leggere. 0004 - 00B4 => 4B4 => 1204 => 12.04

Una volta che la sfb52 ti da l'uscita VALID a 1 nel RECORD dovresti leggerti il valore del parametro 12.04

DB115.DBB0 =

DB115.DBB1 =

DB115.DBB2 =

DB115.DBB3 =

DB115.DBB4 =

DB115.DBB5 =

DB115.DBB6 = valore del parametro

DB115.DBB7 = valore del parametro

Uso il condizionale perchè non ho modo di provarlo direttamente.

Se vuoi scrivere 3 parametri imposta il valore di DB115.DBB3 a 3, poi ripeti i seguenti 6 byte (da DBB4 a DBB9) tre volte cambiando l'index e il subindex del parametro e aumneta la dimensione del RECORD.

Per approfondire il discorso ti consiglio di consultare anche il manuale della RPBA-01. E' la scheda dedicata al profibus, ma utilizza lo stesso tipo di parametrizzazione della sfb52e ci sono + esempi.

Una domanda, ma se usando il profilo RETA-02 Vendor object PPO6, non hai già 16 byte in lettura e scrittura liberamente configurabili nella configurazione hardware del remoto oltre alle 4 di default (Controlword-Statusword-Riferimento-Velocitàattuale)?

Spero di esserti stato d'aiuto.

a presto

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