Jak utworzyć impuls?

(Vineet Singh)

Mogą być chwile, kiedy potrzebujesz pulsu w kodzie.

Na przykład chcę, aby jeden przenośnik działał przez 6 sekund, a następnie zatrzymywał się na 3 sekundy. W takim razie mógłbym chcieć to zrobić za pomocą pulsu. Może istnieć aplikacja, w której wymagana jest kontrola nad czasem włączenia i wyłączenia, lub dowolna inna aplikacja, o której możesz pomyśleć.

Jest na to wiele sposobów, ale wspomnę o tej, o której użycia, jest to proste i pomaga w lepszej wizualizacji.

Używam moich bitów testowych i timerów testowych.

Timery TON i TOF używane do tworzenia pulsu

1 . W stanie początkowym bit zz\_vineetTestbits.00 jest wyłączony.

2. Ustawiam wartości TON i TOF tak, jak chcę. Na razie utrzymałem oba na 5000 ms.

3. Gdy przełączę bit zz\_vineetTest.00, licznik czasu TON uruchomi się i po 5000 ms będzie Gotowy.

4. Gdy tylko licznik TON zostanie zakończony, licznik czasu TOF uruchomi się, ponieważ stan na tym szczeblu zmieni się z Prawda na Fałsz.

5. TOF zostanie wykonany po 5000 ms, co spowoduje, że szczebel z zegarem TON stanie się fałszywy na bardzo krótki czas. Spowoduje to zresetowanie licznika TON i cały cykl rozpocznie się od nowa.

6. Więc teraz mogę trendować zz\_VS\_run i zobaczę następujący puls:

Generated Pulse, TON 5s / TOF 5s

7. Jak widzieliście, wygenerowany impuls daje 1 przez 5000 ms lub 5 sekund i 0 w tym samym czasie.

8. Zmieńmy licznik czasu Ustaw teraz tak, aby generował impuls o czasie TON 6 sekund i czasie TOF 3 sekundy:

Generated Pulse, TON 6s / TOF 3s

Więc teraz możesz użyć zz\_vineetTestbits.01 do uruchamiania i zatrzymywania przenośnika. Oto jeden przykładowy sposób (zz\_vineetTestbits.00 występuje tylko po to, aby włączyć / wyłączyć wyjścia):

Przykładowy kod

Mam nadzieję, że to pomoże. Pozdrawiam!

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *