Vai al contenuto
PLC Forum

Partecipa anche tu alla Live su Youtube martedì 28/01/2025 per festeggiare i 24 anni di PLC Forum

Per ulteriori informazioni leggi questa discussione: https://www.plcforum.it/f/topic/326513-28012025




Sfc 15 - quanti byte posso scambiare al max ??


Messaggi consigliati

David.Stefanutti
Inserito:

Attualmente sto scambiando 2 word tra 2 plc con questa SFC su profibus-DP.

I 2 PLC sono rispettivamente una 315-2DP (Master) e una 314c-2DP (Slave).

A quanto posso arrivare??

Ho cercato parecchio dove guardare?? quello che ho trovato io, nelle caratteristiche della cpu, è :

Per la 314c:

Dati tecnici->Slave Dp->Servizi->Memoria di trasferimento->244 byte I/244 byte O

Per la 315-2DP

Dati tecnici->Maseter Dp->Servizi->Memoria di trasferimento->Max 244 byte

Sono questi???


Inserita:

Selezionando L'SFC in question , e premendo F1 , compare l'.

Scopo dell’SFC 15

L’SFC 15 "DPWR_DAT" è necessaria in quanto con i comandi di trasferimento che hanno accesso alla periferia e all'immagine di processo degli ingressi è possibile scrivere in modo coerente un massimo di quattro byte.

Il limite di scambio dati , e' dato dalla periferia della cpu ( se usi la 2dp della cpu ) o dalla scheda.

tale limite , con un po' di sw , e' infinito ( facendoti un piccolo protocollo e velocita' permettendo)

Ciao

Luca

David.Stefanutti
Inserita: (modificato)

Sinceramente, ho capito poco... ma non perchè ti sei spiegato male!

Devo scambiare dei dati via profibus tra le due cpu e il metodo che ho utilizzato inizialmente è quello con l'SFC 15 e funziona con poco...

CALL "DPWR_DAT"

LADDR :=W#16#C8 // USCITA 200 (VEDI IMPOSTAZIONE HW)

RECORD :=P#DB2.DBX 40.0 WORD 2

RET_VAL:=MW60

ora però devo allargare la quantità di dati non più le 2 word che vedi li

il mio dubbio è:a quante word posso arrivare??

Modificato: da David.Stefanutti
Inserita:

Con SFC14 o 15 , leggi o scrivi in modo coerente da/su una area di periferia

leggi o scrivi in modo coerente max 4 byte per volta , ma questo non ti limita i byte da leggere / scrivere con un SFC, Il limite e' quello della periferia della cpu che utilizzi ( dalle CPU che menzioni , come hai gia' detto e' di 244byte )

Io , personalmente sono arrivato al massimo a circa 140 byte senza problemi . ( quando scrivo con SFC15 , dall'altra parte leggo con SFC14 )

Ovviamente , quello che leggi o scrivi deve combaciare con la configurazione HW in S7

E' il profibus che ti aggiorna le aree di periferia dichiarate in HW , con SFC14 , 15 le leggi / scrivi in modo coerente ( se non ti interessa la coerenza puoi anche fare dei L PIW o T PQW )

Se l'area non ti basta , ti puoi fare una sorta di multipexer

Se non le dichiari in periferia , puoi usare l'SFB/FB 14 "GET" l'SFB/FB 15 "PUT" ( devi avere un indirizzo progettato in netpro)

Ciao

Luca

Inserita:

Scusate, mi è partita la risposta per errore.

Stavo dicendo che forse interpreto male le parole di Luca ma...

l'SFC15 (e anche l'SFC14) permettono di scrivere/leggere 3 oppure PIU' di 4 byte per volta, ovvero ti permettono di eseguire quelle operazioni di gestione della periferia che altrimenti sarebbero limitate a 2 bytes (L PEW...) o 4 bytes (T PAD...).

Certo, volendo puoi leggere anche 20 bytes con L PEW... però devi richiamare l'istruzione per 10 volte... :(

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