kirko11 Inserito: 4 agosto 2008 Segnala Inserito: 4 agosto 2008 Perchè, in un programma, il richiamo di una Subroutine viene fatto da un Merker speciale (per es. SM0.0 oppure SM0.1)?Saluti.
kamikaze Inserita: 5 agosto 2008 Segnala Inserita: 5 agosto 2008 Non è obbligatorio farlo con quei flag che menzioni , ma in ogni caso è graficamente e logicamente imposto usarea almeno una condizione.Bisogna capire che in PLC S7-200 , non esegue una chiamata ad un sottoprogramma se non viene prima soddisfatta la condizione RLC=1 , vale a dire che vi deve essere una condizione precedente alla chiamata che deve risultare VERA , ad esempio si può richiamare un sottoprogramma con la condizione di un'ingresso , un'uscita oppure un flag.SM0.0 è un flag della memoria speciale "riservata" non modificabile dall'utente che diventa 1 (VERO) a partire dalla prima scansione del programma e per tutta la perdurata del PLC nello stato RUN.Si utilizza per iniziare il ramo di chiamata ad una SBR che debba sempre essere eseguita nel programma , ad esempio la gestione degli allarmi o di una funzione macchina qualsiasi.SM0.1 è un flag della stessa area di memoria di SM0.0 "SB0" , che è 1 (VERO) solamente per la durata del primo ciclo di scansione , diventando poi 0 (FALSO) per tutte le scansioni successive e per tutta la perdurata del PLC nello stato RUN.Si utilizza per iniziare il ramo di chiamata ad una SBR che debba essere eseguita solo una volta , ad esempio una routine di inizializzazione interrupt o inizializzazione PLC , configurazione comunicazione o resettare dei flag che potrebbero essere rimasti ad 1 nella memoria del PLC dall'ultimo spegnimento.CiaoIvan
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