Passa al contenuto principale

Esempio 3 - Porte del veicolo

Esempio 3 - Porte del veicolo:​

Compito:​

Si deve contare quante volte viene aperta una porta del veicolo. Inoltre è di interesse il tempo che la porta impiega per aprirsi e chiudersi, al fine di dedurre una possibile usura dell'azionamento. Sono disponibili i segnali OFFEN e GESCHLOSSEN, che passano a true rispettivamente nella posizione finale della porta.

Soluzione:​

TIME_OPEN = stopwatch(!GESCHLOSSEN, OFFEN, {hold: true});
TIME_CLOSE = stopwatch(!OFFEN, GESCHLOSSEN, {hold: true});
COUNT_OFFEN = counter(OFFEN, {storage: 'sto_COUNT'});

Funzioni utilizzate​

Spiegazione:​

  • TIME_OPEN: Con due argomenti, stopwatch() viene chiamata in modalità start-stop. Il cronometro parte quando la porta non è più chiusa e si ferma quando ha raggiunto la posizione finale di apertura. Con l'opzione hold: true il valore misurato viene mantenuto fino al termine di una nuova misura.

  • TIME_CLOSE: Analogo al precedente, qui per la direzione opposta.

  • COUNT_OFFEN: Il contatore counter() conta quante volte compare un fronte positivo sul segnale OFFEN, cioè quante volte la porta è stata aperta. Affinché il valore di conteggio non vada perso con un riavvio del software, anche qui viene indicata una memoria persistente.