how to implement Simplest down counter

43 visualizzazioni (ultimi 30 giorni)
I recently started to try my hands at matlab and simulink , was implementing a counter in simulink , and implemented a simple up counter which counts upto 50
now i want to implement the simplest down counter , but i found my logic for implementing down counter in simulink is quite big , can anyone suggest a simpler logic for down counter with the explanation .
  5 Commenti
ANKUR WADHWA
ANKUR WADHWA il 18 Lug 2018
Thanks Jim for the help..
Nanupatruni Vamsi
Nanupatruni Vamsi il 11 Dic 2022
Design Down counter from the value of 50 to 5 after counter have to maintain the value of 5

Accedi per commentare.

Risposta accettata

Jim Riggs
Jim Riggs il 15 Lug 2018
Modificato: Jim Riggs il 15 Lug 2018
Your logic seems to suggest that you want something more than just a decrement counter. A simple decrement counter would work exactly the same as an increment counter:
This logic will count down by one. To set a starting value, set the initial condition in the memory block to the desired starting value + 1. So, to start the counter from 20, set the memory initial condition to 21, and the first output from this network is 21-1 = 20.
If you want the counter to stop and hold a value, zero for example, simply add a saturation block:
Set the upper limit in the saturation block to a very large value, and set the lower limit to the desired floor value (0 maybe). This will count down from the initial value in the memory block and hold the lower limit value from the saturation block.
  3 Commenti
ANKUR WADHWA
ANKUR WADHWA il 16 Lug 2018
Thanks for the explanation Jim.. i was not aware of the initial conditions in the memory blocks , i was using the delay block to introduce the delay to get rid of Algebraic Loop . Is is possible to add initial condition in the delay block..?? What other elements in Matlab can be used to work as Memory blocks you specified in your example .
Jim Riggs
Jim Riggs il 16 Lug 2018
Modificato: Jim Riggs il 16 Lug 2018
There are a number of delay function blocks in Simulink, including the one in your sample above. All of these have initial conditions which can be set. Just right-click on the block and select "block parameters".
(also, if you find my answer helpful, please "accept" my answer)

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Event Functions in Help Center e File Exchange

Tag

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by