Vai al contenuto
PLC Forum


Timer In Structured Text


hack75

Messaggi consigliati

Salve a tutti.

Se avete letto gli altri miei post avrete visto che sono un super principiante ,quindi vi chiedo pazienza se faccio domande stupide.

Volevo sapere se e' possibile creare in structured text una funzione che pone in pausa il programma in esecuzione per tot secondi (una sorta di sleep).

In piu' e' possibile eseguire una subrotine in maniera indipendente dal flusso del programma principale ?

In ultimo ,usando l'emulatore e' possibile inserire dei breakpoint nel codice ?

Grazie a tutti.

Andrea

P.s.

L'ambiente di sviluppo e' rslogix5000.

Modificato: da hack75
Link al commento
Condividi su altri siti


Hack ma chi decide quando queste 2 subroutine devono essere eseguite?

Comunque non credo sia possibile eseguire 2 routine parallelamente. Dovrebbe essere eseguita prima una e poi l'altra.

Saluti.

Link al commento
Condividi su altri siti

In pratica la seconda routine deve inviare un valore in output opportunamente calcolato in maniera continua,mentre un'altra routine effettua altri calcoli.

All'avvio parte il programma che esegue due subroutine .

Ciao

Link al commento
Condividi su altri siti

Si Hack ma in ogni caso non possono essere eseguite parallelamente. Supponiamo di chiamare le due routine con SBR1 e SBR2.

Supponendo di averle inserite in un Task continuo, e supponendo che la scansione legga SBR1 e po SBR2, sarà eseguita prima la 1 e poi la 2.

Link al commento
Condividi su altri siti

  • 2 weeks later...

ciao,

la task main è ciclica e solitamente definisci un timeout,

in task puoi definire una nuova task, a cui attribuisci un tempo di esecuzione, cioè definisci ogni quanto deve essere richiamata.

questa è una definizione generica, devi considerare che il processore è uno, cioè può fare belle cose ma tutte una alla volta.

l'ambiente ti può aiutare un pochino, rockwell o siemens o pippo.

Fossi in te mi chiarirei bene nella testa cosa vuoi fare, perchè avere un main e una task che entra a tempo, o peggio dal main leggere una variabile elaborata dalla task a tempo non è l'optimus, visto che non sai se è appena stata eseguita o cosa.

considera la soluzione di più routine e un main che le controlli, o se ti piace la soluzione rockwell, tieni presente se necessario introdurre semafori alle task.

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