plc_hector Inserito: 10 aprile 2015 Segnala Inserito: 10 aprile 2015 Buongiorno a tutti Devo usare l'indirizzamento N7:[N10:0] usato con un MOV in RSLogix 500 ma non trovo la dicitura da usare in RSLogix 5000, qualquno sa come si deve fare? Grazie in anticipo.
plc_hector Inserita: 10 aprile 2015 Autore Segnala Inserita: 10 aprile 2015 Mi sono dimenticato da dire che secondo il manuale di conversione dovrebbe essere N7[N10_0] ma questo non lo prende. Grazie di nuovo.
Henon Inserita: 16 aprile 2015 Segnala Inserita: 16 aprile 2015 (modificato) Attraverso l'indicizzazione Array Per cambiare dinamicamente l'elemento dell'array che il vostro riferimenti logici, l'uso di tag o espressione come indice per puntare all'elemento. Questo è simile a indirizzamento indiretto in PLC-5 logica. È possibile utilizzare questi operatori in una espressione per specificare un indice di matrice: Operator Description + add - subtract/negate * multiply / divide AND AND FRD BCD to integer NOT complement OR OR TOD integer to BCD SQR square root XOR exclusive ORFor example:Definitions Example Description N7 defined as INT[256] N7[5] Questo esempio si fa riferimento elemento 5 nella matrice. Il riferimento è statico perché il valore pedice rimane costante. N10 defined as INT[256] N10_0 defined as DINT MOV the value 5 into N10_0 N7[N10_0] Questo esempio si fa riferimento elemento 5 nella matrice. Il riferimento è dinamico poiché la logica può cambiare l'indice cambiando il valore di N10_0. N7 defined as INT[256] N10_0 defined as DINT Offset defined as DINT MOV the value 2 into N10_0 MOV the value 5 into Offset N7[N10_0 + Offset] Questo elemento esempio riferimenti 7 (2 + 5) nella matrice. Il riferimento è dinamico poiché la logica può cambiare l'indice cambiando il valore di posizione o di offset. Assicurarsi che qualsiasi indice di matrice immesso è entro i confini della matrice specificata. Le istruzioni che vedono array come un insieme di elementi generano un errore grave (tipo 4, codice 20) se un pedice supera la dimensione corrispondente. Modificato: 16 aprile 2015 da Giuseppe Signorella
Henon Inserita: 16 aprile 2015 Segnala Inserita: 16 aprile 2015 Non puoi indicizzare indirettamente inserendo come puntatore un altro elemento array, ma devi mettere come puntatore una Tag, come quella che hai detto tu N10_0, ma puoi chimarla come vuoi Quindi N7[Pointer] oppure N7[Pointer / 2+Increment] non puoi scrivere N7[ N10[0] ] ma devi sostituire con N10[0] con una Tag (Tipo Pointer) chiaramente per ottenere i tuo compito prima devi trascrivere il Valore contenuto in N10[0] nella tag Pointer, usa l'istruzione MOV N10[0] => Pointer
Giuseppe Signorella Inserita: 16 aprile 2015 Segnala Inserita: 16 aprile 2015 Ciao Henon, Cortesemente utilizza la lingua Italiana all'interno dei post, perché l'uso di una lingua differente oltre ad essere contro il regolamento, rende difficoltosa la comprensione del concetto espresso. Grazie per la collaborazione.
plc_hector Inserita: 27 aprile 2015 Autore Segnala Inserita: 27 aprile 2015 Buongiorno a tutti Grazie della risposta Henon, ho fatto come hai detto nel'ultimo post. Buon lavoro a tutti.
Messaggi consigliati
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 accountAccedi
Hai già un account? Accedi qui.
Accedi ora