Come creare un impulso?

Pubblicato il

(Vineet Singh)

Ci possono essere momenti in cui hai bisogno di un impulso nel codice.

Ad esempio, voglio che un trasportatore funzioni per 6 secondi e poi si fermi per 3 secondi. In tal caso, potrei volerlo fare con un impulso. E può esserci unapplicazione in cui è richiesto il controllo sullorario di attivazione e sullorario di disattivazione o qualsiasi altra applicazione a cui puoi pensare.

Ci sono molti modi per farlo, ma menzionerò quello che ho uso, è semplice e aiuta una migliore visualizzazione.

Sto usando i miei bit di prova e i timer di prova.

I timer TON e TOF utilizzati per creare un impulso

1 . Nello stato iniziale, il bit zz\_vineetTestbits.00 è Off.

2. Ho impostato i valori preimpostati TON e TOF come li desidero. Per ora, ho mantenuto entrambi a 5000 ms.

3. Quando sposto il bit zz\_vineetTest.00, il timer TON si avvierà e dopo 5000 ms sarà Fatto.

4. Non appena il timer TON è terminato, il timer TOF partirà poiché la condizione in quel ramo passerà da True a False.

5. TOF verrà eseguito dopo 5000 ms, e questo farà sì che il ramo con il timer TON diventi falso per un tempo molto breve. Ciò azzera il timer TON e lintero ciclo ricomincia.

6. Quindi ora posso eseguire landamento di zz\_VS\_run e vedrò il seguente impulso:

Generated Pulse, TON 5s / TOF 5s

7. Come hai visto, limpulso generato dà 1 per 5000 ms o 5 secondi e 0 per lo stesso tempo.

8. Consente di modificare la preimpostazione del timer ora per generare un impulso di tempo TON 6 secondi e tempo TOF 3 secondi:

Generated Pulse, TON 6s / TOF 3s

Quindi ora puoi usare zz\_vineetTestbits.01 per avviare e arrestare il nastro trasportatore. Ecco un modo di esempio (zz\_vineetTestbits.00 è presente solo per abilitare / disabilitare gli output):

Codice di esempio

Spero che questo ti aiuti. Salute!

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *