Vai al contenuto
PLC Forum


Puntatori


powermoro

Messaggi consigliati

Ciao a tutti, ho 22 anni e da un anno lavoro come programmatore plc in un'azienda produttrice di impianti di asciugatura. Oggi, per la prima volta da quando programmo, mi trovo a dover modificare un programma fatto da una persona decisamente con piu esperienza di me. L'impianto in se consiste in un carro che porta dei cesti contenenti materiale in una speciale centrifuga, per poi portarli alla stazione di scarico e successivamente di nuovo al carico; Il principio è circa quello degli impianti galvanici, per intenderci. Ora mi trovo a dover aggiungere una seconda centrifuga e non so come fare, perchè nel suo programma ho scoperto che ha utilizzato dei "puntatori", dei quali precedentemente non avevo mai sentito parlare.Qualcuno puo aiutarmi?in cosa consistono questi puntatori e come posso intervenire su di essi per effettuare correttamente la modifica? Grazie in anticipo

Daniele

Link al commento
Condividi su altri siti


il puntatore non è altro che l'indirizzamento indiretto di una variabile. Cioè per leggere una determinata variabile o si scrive direttamente il suo proprio indirizzo o lo si "calcola" indirettamente tramite puntatore.

Prendiamo ad esempio 10 registri con i seguenti valori:

%MW0 = 9

%MW1 = 8

%MW2 = 7

%MW3 = 6

%MW4 = 5

%MW5 = 4

%MW6 = 3

%MW7 = 2

%MW8 = 1

%MW9 = 0

se volessi leggere il valore di %MW7 potrei scrivere in diversi modi:

direttamente %MW7

indirettamente con un puntatore costante %MW0[7] (dove 7 sono i registri a partire da %MW0)

indirettamente con un puntatore variabile %MW0[%MW2] (dove %MW2 contiene il numero di registri a partire da %MW0)

(per inciso con Unity, essendo questo linguaggio identico a PL7Pro, è anche possibile fare dei calcoli aritmetici all'interno delle parentesi ed puntare a puntatori di puntatori fino ad 8 annidamenti)

In sostanza quando trovi dei puntatori tu devi per prima cosa vedere quanto vale la variabile all'interno delle parentesi quadrate e quindi calcolare l'indirizzo a cui "punta" sommando il valore all'indirizzo di partenza della variabile fuori delle parentesi.

Link al commento
Condividi su altri siti

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