Vai al contenuto
PLC Forum


Operazioni Matematiche In Graph - asegnazione di un valore intero all'interno delle azioni di uno s


Messaggi consigliati

Inserito:

Salve, sono alle primissime armi con l'S300 Step 7. Sto cercando di sviluppare delle azioni, che debbono essere usate in sequenza. Sto quindi usando il linguaggio GRAPH. La mia domanda è molto semplice e mi scuso per chi si sentisse "offeso" :P

Nelle AZIONI di ogni step, oltre ad utilizzare i vari Set, Reset dovrei semplicemente assegnare un certo valore ad una mia variabile intera. Ora per fare ciò, tramite il comando CALL, "chiamo" una funzioncina FC che assegna il valore corretto alla mia variabile, ma immagino che sia possibile fare la stessa cosa semplicemnte e piu direttamente con un azione. Però nel manuale non è molto chiaro.

Mi sapreste aiutare?

Grazie.


Inserita:

Salve,

supponiamo che tu debba assegnare il valore 100 alla tua variabile di indirizzo MW200.

La sintassi corretta da usare è la seguente

N MW100 := 100

Nel manuale S7-GRAPH per S7-300/400 Programmazione di comandi sequenziali, questo argomento viene trattato alle pagine 7-11 e 7-12.

In questo caso le sintassi usate come esempio sono A :=B

Dove A rappresenta l'indirizzo della tua variabile, e B la costante da assegnare.

Buona serata

Cagliostro

Inserita:

Scusami,

nell'esempio ti ho parlato di MW200 ed ho usato la MW100....

Saluti

Cagliostro

Inserita:

si in effetti l'assegnazione è chiara e semplice. MA come tipo di azione, cosa devo mettere?

Devo usare l'azione "N" ?? Cio starebbe a significare che quella variabile rimane con quel valore per la durata del passo?

es.

.

.

.

N -> db6.passo := 1

.

.

.

Inserita:

Si, se usi l'evento "N" (not hold) allora l'azione viene eseguita per tutta la durata del passo; mentre se usi gli eventi S0, od S1, l'azione viene eseguita rispettivamente una sola volta od in caso di uscta dal passo, od in caso di entrata nel passo.

Attenzione che la FB, se compilata in modo standard, restituisce già da sè il numero di passo attuale. (In riferimento al tuo ultimo esempio).

mubeta.

Inserita:
Cio starebbe a significare che quella variabile rimane con quel valore per la durata del passo?

Vi rimane per tutto il tempo in cui la variabile non viene elaborata in altri richiami del programma.

Giusto per farti un'esempio, supponiamo che nel passo S4, la tua variabile venga impostata ad un valore X (come detto anche da mubeta il valore con l'aggiunta dell'istruzione S0 o S1 accanto ad N ti permette di impostare la variabile rispettivamente in caso di ingresso o di uscita del passo Sx).

Una volta che esci dal passo S4, la tua variabile mantiene il valore X impostato, perv assumere un valore diverso da X solo se richiamata in altri passi o funzioni del programma.

Saluti

Cagliostro

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