Varying PWM dutycycle with session-based interface in Data Acqusition Toolbox
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Hi,
I want to vary the duty cycle of PWM without stopping the session. My code is based on this example: http://uk.mathworks.com/help/daq/examples/generate-pulse-width-modulated-signals-using-ni-devices.html.
s = daq.createSession('ni');
ch = addCounterOutputChannel(s,'Dev1', 0, 'PulseGeneration')
ch = s.Channels(1);
ch.Frequency = 50;
ch.InitialDelay = 0;
ch.DutyCycle = 0.1;
s.Rate = 1000;
s.DurationInSeconds = 10;
s.startForeground();
If I want to change the duty cycle, I currently have to use this code, but it creates a jutter:
s.stop
ch.DutyCycle = 0.05
startBackground(s)
Can anyone suggest an alternative that does not require stopping the session? The documentation suggests that I can change without stopping the session, see bottom line of http://uk.mathworks.com/help/daq/ref/dutycycle.html, but this does not work in practice and I get an error message.
FYI I'm using this to control a servo.
Many thanks
1 comentario
jAwA
el 5 de Jul. de 2016
Any news on this? I am also very interested in a solution for this issue for a DC motor control with PWM.
Respuestas (0)
Comunidades de usuarios
Más respuestas en Power Electronics Control
Ver también
Categorías
Más información sobre Data Acquisition Toolbox Supported Hardware en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!