0% found this document useful (0 votes)
91 views

Matlab PDF

This document contains MATLAB code and explanations for generating various signals and sequences, including ramp, square wave, sawtooth wave, triangular wave, sine wave, sinc wave, unit impulse, and unit step signals. It is from Chapter 3 of the textbook "Basic Simulation Lab with MATLAB" by authors Dr Bhanu Bhaskara and Siddhartha Bhaskara, published by Tata McGrawHill in July 2010. The chapter provides the code needed to generate these common signals using MATLAB.

Uploaded by

alejo_tc
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
91 views

Matlab PDF

This document contains MATLAB code and explanations for generating various signals and sequences, including ramp, square wave, sawtooth wave, triangular wave, sine wave, sinc wave, unit impulse, and unit step signals. It is from Chapter 3 of the textbook "Basic Simulation Lab with MATLAB" by authors Dr Bhanu Bhaskara and Siddhartha Bhaskara, published by Tata McGrawHill in July 2010. The chapter provides the code needed to generate these common signals using MATLAB.

Uploaded by

alejo_tc
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

Text Book : Basic Simulation Lab with MATLAB

Authors : Dr Bhanu Bhaskara, Siddhartha Bhaskara


Publisher : Tata McGrawHill, 1
st
Edition, July 2010
Chapter 3: Generation of Signals and Sequences
S.No MATLAB Code Explanation
1. t = 0 : 0.001 : 1; Generate a vector of 1001 samples for t
with a value between 0 & 1 with an
increment of 0.001
2. y = 0.5 * t; Generate a linear ramp with a slope of 0.5
3. plot( t , y ); Plot the graph
4. xlabel ('Time Index t (sec.)'); Label the X-axis
5. ylabel ('Amplitude'); Label the Y-axis
6. title ('Ramp Signal Sequence'); Add an appropriate title to the graph
Table 3.1 : MATLAB code for Ramp Signal Generation
S.No MATLAB Code Explanation
1. t = 0 : 0.0001 : 0.1; Generate a vector of 10001 samples
for t with a value between 0 & 0.1
with an increment of 0.0001
2. y = square ( 2 * pi * 50 * t); Generate a square wave of frequency
50 Hz, by calling the MATLAB in-
built function square.
3. plot (t , y); axis ( [ 0 0.1 -2 2 ] ); Plot the graph. Adjust the X and Y
coordinates to view a few cycles of the
square wave.
4. xlabel ('Time Index t (sec.)');
ylabel ('Amplitude');
Label the X and Y axes
5. title ('Square Wave Signal Sequence'); Add an appropriate title to the graph
Table 3.2 : MATLAB code for Square Wave Signal Generation
Text Book : Basic Simulation Lab with MATLAB
Authors : Dr Bhanu Bhaskara, Siddhartha Bhaskara
Publisher : Tata McGrawHill, 1
st
Edition, July 2010
S.No MATLAB Code Explanation
1. fs = 10000; Set the sampling frequency fs as
10000.
2. t = 0 : 1/fs : 1.5; Generate a vector of 15001 samples
for t with a value between 0 & 1.5
with an increment of 0.0001
3. x = sawtooth (2 * pi * 100 * t); Generate a Saw Tooth wave of
frequency 100 Hz, by calling the
MATLAB built-in function
sawtooth.
4. plot( t , x ); axis ( [ 0 0.05 -1 1 ] ); Plot the graph. Adjust the X and Y
coordinates to view a few cycles of
the Saw Tooth wave.
5. xlabel ('Time Index t (sec.)');
ylabel ('Amplitude');
Label the X and Y axes
6. title ('Sawtooth Wave Signal Sequence'); Add an appropriate title to the
graph
Table 3.3 : MATLAB code for Saw Tooth Wave Generation
Text Book : Basic Simulation Lab with MATLAB
Authors : Dr Bhanu Bhaskara, Siddhartha Bhaskara
Publisher : Tata McGrawHill, 1
st
Edition, July 2010
S.No MATLAB Code Explanation
1. fs = 10000; Set the sampling frequency fs as
10000.
2. t = 0 : 1/fs : 1.5; Generate a vector of 15001 samples
for t with a value between 0 & 1.5
with an increment of 0.0001
3. x = sawtooth (2 * pi * 50 * t , 0.5); Generate a Triangular wave of
frequency 50 Hz, by calling the
MATLAB built-in function
sawtooth with 0.5 as the duty cycle
parameter.
4. plot(t,x); axis ( [ 0 0.1 -1 1 ] ); Plot the graph. Adjust the X and Y
coordinates to view a few cycles of
the triangular wave.
5. xlabel ('Time Index t (sec.)');
ylabel ('Amplitude');
Label the X and Y axes
6. title ('Triangular Wave Signal Sequence'); Add an appropriate title to the graph
Table 3.4 : MATLAB Code for Triangular Wave Generation
Text Book : Basic Simulation Lab with MATLAB
Authors : Dr Bhanu Bhaskara, Siddhartha Bhaskara
Publisher : Tata McGrawHill, 1
st
Edition, July 2010
S.No MATLAB Code Explanation
1. N=20; Set a limit 20 for X-axis coordinate
time.
2. t = -N : .0001 : N; Generate a vector of 400001 samples
for t with a value between -20 & 20
with a step size of 0.0001. The X-
axis range is from -20 to +20.
3. theta = input('The phase angle is '); Input the desired Phase Angle for the
variable called theta
4. x = sin (2 * pi * 50 * t + theta); Generate a Sine Wave of frequency
50 Hz and desired phase angle
theta, by calling the MATLAB
built-in function sin.
5. plot( t , x ); axis( [-.04 .04 -1 1] ); Plot the graph. Adjust the X and Y
coordinates to view a few cycles of
the Sine wave.
6. grid; Insert horizontal and vertical grid in
the graph for easy measurement of
parameters.
7. xlabel ('Time Index t (sec.)');
ylabel ('Amplitude');
Label the X and Y axes
8. title ('Sinusoidal Signal of Frequency 50 Hz
and Desired Phase');
Add an appropriate title to the graph
Table 3.5 : MATLAB Code for Sine Wave Signal Generation
S.No MATLAB Code Explanation
1. t = linspace(-5 , 5); Generate a vector of 100 linearly
spaced samples for t with a value
between -5 & 5
2. y = sinc(t); Call the built-in 'Sinc' function to
generate the Sinc signal of 100
samples
3. plot( t , y ); Plot the graph.
4. xlabel ('Time Index t (sec.)');
ylabel ('Amplitude');
Label the X and Y axes
5. title ('Sinc Signal Sequence'); Add an appropriate title to the graph
Table 3.6 : MATLAB Code for Sinc Signal Generation
Text Book : Basic Simulation Lab with MATLAB
Authors : Dr Bhanu Bhaskara, Siddhartha Bhaskara
Publisher : Tata McGrawHill, 1
st
Edition, July 2010
S.No MATLAB Code Explanation
1. clc; Clear Command Window for a clean
view
2. clear all; Clear all the previously defined
variables
3. m1 = input ( ' Please input a NEGATIVE
number for m1 ');
Set a limit for negative X-axis
4. m2 = input ( ' Please input a POSITIVE
number for m2 ');
Set a limit for positive X-axis
5. m = [m1 : m2]; Define the range for X-axis
6. x = zeros(1,m2-m1+1); Create a row vector of zeros
7. m0 = input ( ' Type 0 for Unit Impulse,
negative/ positive no. for delayed/ advanced
signal ');
Define the place of the single unit
impulse on the X-axis
8. x(m0-m1+1) = 1; Set the amplitude of the unit impulse
as 1 at the defined place
9. stem( m , x ); axis( [ m1 m2 -1.5 1.5 ] ); Plot the graph as stems. Adjust the X
and Y coordinates to view a nice
graph.
10. xlabel ('Time Index m (sec.)');
ylabel ('Amplitude');
Label the X and Y axes
11. title ('Unit Impulse Signal Sequence'); Add an appropriate title to the graph
Table 3.7 : MATLAB Code for Unit Impulse Signal Generation
Text Book : Basic Simulation Lab with MATLAB
Authors : Dr Bhanu Bhaskara, Siddhartha Bhaskara
Publisher : Tata McGrawHill, 1
st
Edition, July 2010
S.No MATLAB Code Explanation
1. clc; clear all; Clear Command Window and all the
previously defined variables for a
clean view
2. k1 = input ( ' Please input a NEGATIVE
number for k1 ');
Set a limit for negative X-axis
3. k2 = input ( ' Please input a POSITIVE
number for k2 ');
Set a limit for positive X-axis
4. k0 = input ( ' Type 0 for normal Unit Step, a
negative or positive no. for a shifted one ');
Decide on the type of Unit Step
desired and accordingly feed an input
5. k = [k1 : k2]; Define the range for X-axis
6. x = zeros(1,k2-k1+1); Create a row vector of zeros
7. x( k0-k1+1 : end ) = 1; Set the amplitude of the unit step as
1 from the place of starting until
end.
8. stem( k , x );
axis ( [ k1 k2 -1.5 1.5 ] );
Plot the graph as stems. Adjust the X
and Y coordinates to view a decent
looking graph.
9. xlabel ('Time Index k (sec.)');
ylabel ('Amplitude');
Label the X and Y axes
10. title ('Unit Step Signal Sequence'); Add an appropriate title to the graph
Table 3.8 : MATLAB Code for Unit Step Signal Generation

You might also like