pause to control pumping time

1 view (last 30 days)
Kuang-Yu WANG
Kuang-Yu WANG on 9 Aug 2018
Commented: Kuang-Yu WANG on 9 Aug 2018
start(p1.t);
pause(pumptime1)
stop(p1.t);
start(p2.t);
pause(pumptime2)
stop(p2.t);
these are my pumping code that i can run very well. However there is still a problem that when I make the pumptime1 smaller than pumptime2, the pumps would stop same time when the pause(pumptime2) is over. while the opposite way can work well. Please help me to figure out whats wrong. Very Thanks!
  6 Comments
Walter Roberson
Walter Roberson on 9 Aug 2018
I suspect we will need to see the functions associated with the timers.
Kuang-Yu WANG
Kuang-Yu WANG on 9 Aug 2018
values=[1 0 0 1 0 0; 1 1 0 1 1 0; 0 1 0 0 1 0; 0 1 1 0 1 1; 0 0 1 0 0 1; 1 0 1 1 0 1]; % perestalitic pump sequence
vleng=length(values); % perestalitic pump sequence
p1.t = timer('TimerFcn',{@pump1_timer, values, vleng},...
'StartDelay',.05,'ExecutionMode','fixedRate');
function pump1_timer(~, ~, values, vleng)
global vc p1
p1.ts = p1.ts +1;
if p1.ts > vleng
p1.ts = 1;
end
vc = vc_set_bits_ac(vc, p1.num, values(p1.ts,:));
end

Sign in to comment.

Answers (0)

Categories

Find more on Simulink in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!