Hi, Please how can I build a PPM modulator in simulink. The block is not available in my matlab. i am using 2008b

3 Comments

Fangjun Jiang
Fangjun Jiang on 19 Dec 2011
What is PPM?
Walter Roberson
Walter Roberson on 19 Dec 2011
Pulse Position Modulation
ska109
ska109 on 13 Feb 2016
I've made it working somehow...

Sign in to comment.

 Accepted Answer

Walter Roberson
Walter Roberson on 19 Dec 2011
Note that is part of the Signal Processing Toolbox.
The Technical Support note that is relevant, here says that
PPM and PWM are described in “Digital and Analog Communication Systems, 5th Ed.by Leon Couch. Pages 209-213 describe these modulations, and show circuits that are used for the modulation.

More Answers (3)

dave
dave on 19 Dec 2011

0 votes

Thank you. I will look through it.
sivasena reddy
sivasena reddy on 8 May 2019
clc;
close all;
clear all;
t=0:0.001:1;
s=sawtooth(2*pi*10*t+pi);
m=0.75*sin(2*pi*1*t);
n=length(s);
for i=1:n
if (m(i)>=s(i))
pwm(i)=1;
elseif (m(i)<=s(i))
pwm(i)=0;
end
end
plot(t,pwm,'g',t,m,'r',t,s,'--b');
ylabel('Amplitude');
axis([0 1 -1.5 1.5]);
xlabel('Time index');
title('PWM Wave');
grid on;

1 Comment

The user had requested Simulink implementation, though.
Also, you appear to be doing PWM (Pulse Width Modification) rather than PPM (Pulse Position Modification)

Sign in to comment.

Atul Kumar
Atul Kumar on 21 Mar 2021
clc;
close all;
clear all;
t=0:0.001:1;
s=sawtooth(2*pi*10*t+pi);
m=0.75*sin(2*pi*1*t);
n=length(s);
for i=1:n
if (m(i)>=s(i))
pwm(i)=1;
elseif (m(i)<=s(i))
pwm(i)=0;
end
end
plot(t,pwm,'g',t,m,'r',t,s,'--b');
ylabel('Amplitude');
axis([0 1 -1.5 1.5]);
xlabel('Time index');
title('PWM Wave');
grid on;

Community Treasure Hunt

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

Start Hunting!