Output a square wave with tuneable frequency and phase delay

2 visualizaciones (últimos 30 días)
Tom
Tom el 8 de Abr. de 2013
I am trying to output two square waves to control a stepper motor. I need to be able to change the phase difference between the two waves to control the direction of the motor and I need to change the frequency of the waves to control the speed. I also need to control the number of cycles to control how far the motor travels.
Please help as I have tried quite a lot of different ways and had no success.
  1 comentario
Jon
Jon el 8 de Abr. de 2013
Are you running a loop in MATLAB that sends its output to some physical i/o, or is it in Simulink. Please clarify

Iniciar sesión para comentar.

Respuestas (1)

Jonathan Epperl
Jonathan Epperl el 8 de Abr. de 2013
Showing us some of your prior attempts would certainly help, since we then could avoid suggesting stuff you already tried.
Anyway, whenever I needed square waves, I used a sine wave together with logical operators, e.g.
f = @(t) (sin(2*pi*t)>0)-(sin(2*pi*t)<=0)
should get you a square wave with frequency 1. Adapt it to your needs.

Community Treasure Hunt

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

Start Hunting!

Translated by