Vai al contenuto
PLC Forum


Puntatori


Messaggi consigliati

Inserito:

ciao a tutti,

sto cercando di utilizzare dei puntatori in s7-300 ma mi sorgono un pò di dubbi.

Il problema sta nel fatto che devo tradurre un programma da CX omron a S7-300.

Nel programma originario attraverso la funzione COLLECT (081) posso dare un indirizzo di base (tipo dato DM, lunghezza word), un indirizzo che fa da offset (un'altra DM), ed un indirizzo di destinazione(altra DM). La funzione calcola la dm che voglio partendo dall'indirizzo base ed aggiungendo l'offset, e ne copia il contenuto nella dm con indirizzo di destinazione.

Vi è poi una funzione DISTRIBUTE (080) che copia il contenuto di una dm di origine, in un'altra dm calcolata partendo da un indirizzo di base ed aggiungendo un offset.

In questo modo posso modificando l'offset puntare a varie dm e copiarne il contenuto in una dm di appoggio.

Sto cercando di fare lo stesso con un siemens s7-300 ma sembra così semplice.

Qualche dritta a riguardo????

Grazie


Inserita:

Non conosco l'omron , comunque su siemens vai a vedere SFC 20 che serve per spostare i dati , per come parametrizzare i parametri guarda questa discussione, comunque in questo forum di puntatori se ne è parlato tantissimo

Inserita:

Io li ho utilizzati in questa maniera.

Premessa: in MD1 bisogna preventivamente caricare il valore dell'indice desiderato in formato puntatore (n° di byte * 8)

DB1 e DB2 devono esistere opportunamente compilate.

AUF DB1 //APRO LA DB1 IN CUI SONO CONTENUTI I DATI CHE MI SERVONO

L DBD[MD1] //CARICO IL VALORE CONTENUTO NELLA DOUBLE IL CUI NUMERO (INDICE) E' CONTENUTO IN MD1

T DB2.DBD 0 //TRASFERISCO IL VALORE DOVE MI SERVE

Inserita:

Se cerchi puntatori troverai almeno una decina di discussioni.

Se un giorno la Siemens decidesse di gestire gli indirizzamenti indiretti come fa la Omron si potrebbe liberare un gigabyte dal server di plcforum :lol:

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