Vai al contenuto
PLC Forum


Sfc85 - Non mi convince...


Messaggi consigliati

matrixsellone
Inserito:

Ciao a tutti.

Oggi ho iniziato lo sviluppo di una piccola applicazione che non deve far altro che, su RLC=1, mi crei un DB di determinata lunghezza e ci copi all'interno alcuni dati del sistema.

Ho provato a richiamare la suddetta funzione, e, come indicato dalla guida, ho posto ambo i limiti massimo e minimo allo stesso valore, in modo che mi venisse creato proprio quel db (300 nel mio caso).

Il problema è che, pur con RET_VAL=0, il DB non viene creato, e il DB300 non esiste nel mio programma.

Utilizzo una CPU 315 2PN/DP.

PS: dato che ci sono vi chiedo anche un'altra cosa: ho fatto passare il manuale siemens riguardo alle funzioni di sistema, ma non ho trovato nulla che sia in grado di restituirmi la lunghezza di un DB... non sapete se esiste una funzione apposita, o comuqnue un modo per ricavare la dimensione di un DB.

Vi ringrazio in anticipo.


Inserita: (modificato)

 Crea DB dinamicamente    


       CALL  "CREAT_DB"                     
       LOW_LIMIT:=W#16#A                //   DB 10
       UP_LIMIT :=W#16#A
       COUNT    :=W#16#C90              //3216 Byte lunghezza 
       RET_VAL  :=MW244                 //MW di appoggio
       DB_NUMBER:=MW244



Legge la lunghezza DB

      AUF     DB 10
      L       DBLG        // carica lunghezza del DB10
      T       MW   100    // trasferisce su MW100

N.B: Risposta da forum Card : Link :whistling:

Modificato: da Savino
matrixsellone
Inserita:

ok...DBLG mi mancava..

Quello che hai scritto nella CALL è esttamente quello che ho scritto io...salvo le meker di appoggio..

evidentemente ho l'errore sotto il naso ma non lo trovo.

Una curiosità... esistono sia il CREA_DB che il CREAT_DB... a quanto ho capito l'unica differenza è che, con il primo, posso scegliere se creare DB con dati ritentivi o meno, mentre nel secondo caso non è possibile... è tutta qui la differenza o mi sto perdendo qualche particolare di fondamentale importanza?

Inserita:
Il problema è che, pur con RET_VAL=0, il DB non viene creato, e il DB300 non esiste nel mio programma.

Il DB non viene generato nel programma ma nella cpu quindi per vederlo devi andare on-line.

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