0% found this document useful (0 votes)
2 views30 pages

Problem Based Learning All Signal System PDF

The document is a report on Problem Based Learning (PBL) for Signals and Systems, detailing coding activities for continuous and discrete time signals, including operations like time shifting, scaling, reversal, addition, and multiplication. It also covers system property verification through simulations, focusing on linearity, time-invariance, and causality. The report includes code snippets and plotting results for various signal operations and system tests.

Uploaded by

Gaurav Patil
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views30 pages

Problem Based Learning All Signal System PDF

The document is a report on Problem Based Learning (PBL) for Signals and Systems, detailing coding activities for continuous and discrete time signals, including operations like time shifting, scaling, reversal, addition, and multiplication. It also covers system property verification through simulations, focusing on linearity, time-invariance, and causality. The report includes code snippets and plotting results for various signal operations and system tests.

Uploaded by

Gaurav Patil
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

Problem Based Learning (PBL) Report

Signals and Systems (BE04009051)

NAME : PRAJAPATI VRAJKUMAR


HITESHKUMAR EN NUMBER : 250603109015
COLLAGE : GEC,GODHRA
DEPATMENT :
ELECTRICAL SEM : 4th

GOVERNMENT ENGINEERING CILLAGE GODHRA


Activity 1: signal operation coding
Title : developed code for CT & DT signal
 Continuous Time signal
1. TIME SHIFTING SIGNAL:

// Time Shifting of a Continuous-Time (CT) Signal


clf(); // Clear current figure
t = -5:0.01:5; // Define time range

// Original Signal: A triangular pulse centered at 0

// Logic: 1 - |t| for |t| <= 1, else 0


x = (1 - abs(t)) .* (abs(t) <= 1);

// 1. Time Delay: x(t - 2) -> Shift Right by 2 units


t_delay = t - 2;
x_delay = (1 - abs(t_delay)) .* (abs(t_delay) <= 1);

// 2. Time Advance: x(t + 2) -> Shift Left by 2 units


t_advance = t + 2;
x_advance = (1 - abs(t_advance)) .* (abs(t_advance) <= 1);

// --- Plotting Results ---


subplot(3,1,1);

plot(t, x, 'b', 'linewidth', 2);


title("Original Signal x(t)");
xgrid();

subplot(3,1,2);

plot(t, x_delay, 'r', 'linewidth', 2);


title("Time Delay: x(t - 2) [Shift Right]");
xgrid();

subplot(3,1,3);

plot(t, x_advance, 'g', 'linewidth', 2);


title("Time Advance: x(t + 2) [Shift
Left]"); xlabel("Time (t)");

xgrid();

2. SCALING SIGNAL :

// Time Scaling of a Continuous-Time (CT) Signal


clf(); // Clear graphics window
t = -5:0.01:5; // Time range
// Original Signal: Triangular pulse centered at
0 x = (1 - abs(t)) .* (abs(t) <= 1);

// 1. Time Compression: x(2t) -> Squeezed by factor of 2


t_comp = 2 * t;
x_comp = (1 - abs(t_comp)) .* (abs(t_comp) <= 1);

// 2. Time Expansion: x(0.5t) -> Stretched by factor of 2


t_exp = 0.5 * t;
x_exp = (1 - abs(t_exp)) .* (abs(t_exp) <= 1);

// --- Plotting Results ---


subplot(3,1,1);
plot(t, x, 'b', 'linewidth', 2);
title("Original Signal x(t)");
xgrid();

subplot(3,1,2);
plot(t, x_comp, 'r', 'linewidth', 2);
title("Time Compression:
x(2t)"); xgrid();

subplot(3,1,3);

plot(t, x_exp, 'g', 'linewidth', 2);


title("Time Expansion: x(0.5t)");
xlabel("Time (t)");

xgrid();
3. REVARSAL SIGNAL :

// Time Reversal of a Continuous-Time (CT) Signal


clf(); // Clear graphics window
t = -5:0.01:5; // Time range

// Original Signal: A Ramp signal from 0 to 2

// It is 0 everywhere else.
x = t .* (t >= 0 & t <= 2);

// Time Reversal: x(-t)

// We replace 't' with '-t' in the signal definition


t_rev = -t;
x_rev = t_rev .* (t_rev >= 0 & t_rev <= 2);

// --- Plotting Results ---


subplot(2,1,1);
plot(t, x, 'b', 'linewidth', 2);

title("Original Signal x(t) - [Ramp from 0 to 2]");


xgrid();
subplot(2,1,2);

plot(t, x_rev, 'm', 'linewidth', 2);

title("Time Reversal: x(-t) - [Reflected across Y-axis]");


xlabel("Time (t)");
xgrid();

4. ADDITION :

clf();

t = -2:0.01:6; // Define time range

// Signal 1: A Positive Ramp starting at t=0

// Mathematical: x1(t) = t for t >= 0, capped at 2


x1 = t .* (t >= 0 & t <= 2) + 2 * (t > 2);

// Signal 2: A Delayed Step Signal starting at t=3

// Mathematical: x2(t) = 1 for t >= 3


x2 = 1 * (t >= 3);

// Resultant Signal: y(t) = x1(t) + x2(t)


y_add = x1 + x2;
// --- Plotting Results ---
subplot(3,1,1);
plot(t, x1, 'b', 'linewidth', 2);
title("Signal 1: Ramp Signal x1(t)");
gca().data_bounds = [-1,0 ; 6,4]; // Adjust axes for visibility
xgrid();

subplot(3,1,2);

plot(t, x2, 'g', 'linewidth', 2);


title("Signal 2: Step Signal x2(t)");
gca().data_bounds = [-1,0 ; 6,4];
xgrid();

subplot(3,1,3);

plot(t, y_add, 'r', 'linewidth', 2);


title("Result: Addition y(t) = x1(t) +
x2(t)"); xlabel("Time (t)");
gca().data_bounds = [-1,0 ; 6,4];
xgrid();

5. MULTIPLICATION OF SIGNAL:
clf();

t = -4:0.01:4; // Time range

// Signal 1: A Triangular Pulse (The "Envelope")

// Base from -2 to 2, Peak height 1 at t=0


x1 = (1 - abs(t)/2) .* (abs(t) <= 2);

// Signal 2: A higher frequency Sine Wave


x2 = sin(2 * %pi * 2 * t); // 2 Hz frequency

// Resultant Signal: y(t) = x1(t) .* x2(t)


// We use '.*' for element-by-element multiplication
y_mult = x1 .* x2;

// --- Plotting Results ---


subplot(3,1,1);
plot(t, x1, 'b', 'linewidth', 2);

title("Signal 1: Triangular Message x1(t)");


gca().data_bounds = [-4,-1.2 ; 4,1.2];
xgrid();

subplot(3,1,2);

plot(t, x2, 'g', 'linewidth', 1);


title("Signal 2: Sine Carrier x2(t)");
gca().data_bounds = [-4,-1.2 ; 4,1.2];
xgrid();

subplot(3,1,3);
plot(t, y_mult, 'r', 'linewidth', 2);

title("Result: Multiplication y(t) = x1(t) * x2(t)");


xlabel("Time (t)");
gca().data_bounds = [-4,-1.2 ; 4,1.2];
xgrid();

 Discrete Time signal

1. TIME SHIFTING OF SIGNAL:

clf();
clear;

// 1. Data Setup
n = -5:10;
x = [zeros(1,5), ones(1,3), zeros(1,8)]; // Pulse at n=0,1,2

x_shift = [zeros(1,8), ones(1,3), zeros(1,5)]; // Shifted to n=3,4,5

// 2. Force open a specific Graphic


Window f = scf(0);
f.figure_name = "DT Shifting Result";
// 3. Draw Plot 1
subplot(2,1,1);
plot2d3('gnn', n, x); // 'gnn' ensures standard step look
e = gce(); [Link].mark_style = 9; // Add dots
xtitle("Original Signal x[n]");

// 4. Draw Plot 2
subplot(2,1,2);
plot2d3('gnn', n, x_shift);
e = gce(); [Link].mark_style = 9;
xtitle("Shifted Signal x[n-3]");

// 5. Force Scilab to show the window


show_window();
drawnow();

2. SCALING OF SIGNAL :

// RESET AND FORCE GRAPHICS

clf();
clear;
// 1. Define the original index and signal
n = 0:10;
x = n; // A simple ramp signal: 0, 1, 2, ..., 10

// 2. Time Scaling (Downsampling by 2)

// This picks every 2nd sample: x[0], x[2], x[4]...


n_scale = 0:1:length(n)/2;
x_scale = x(1:2:length(n));

// 3. Force open a specific Graphic


Window f = scf(0);
f.figure_name = "Discrete Time Scaling (Downsampling)";

// 4. Plot Original Signal


subplot(2,1,1);
plot2d3('gnn', n, x); // Discrete stem plot

e = gce(); [Link].mark_style = 9; // Add dots to


stems xtitle("Original Ramp x[n]");
xgrid();

// 5. Plot Scaled Signal


subplot(2,1,2);
// Adjust n axis for the downsampled signal length
n_down = 0:length(x_scale)-1;
plot2d3('gnn', n_down, x_scale);

e = gce(); [Link].mark_style = 9;

xtitle("Scaled Signal x[2n] (Downsampled by 2)");


xlabel("n (Samples)");
xgrid();

// 6. Force display
show_window();
drawnow();

3. REVERSAL OF SIGNAL :

// RESET AND FORCE GRAPHICS

clf();
clear;

// 1. Define index and an asymmetrical signal


n = -5:5;
// Original: A ramp from n=0 to n=3, else 0
x = [0, 0, 0, 0, 0, 0, 1, 2, 3, 0, 0];

// 2. Time Reversal: x[-n]

// We flip the array 'x' horizontally using 'flipdim'


x_rev = flipdim(x, 2);
// 3. Force open Graphic Window
f = scf(0);
f.figure_name = "DT Time Reversal";

// 4. Plot Original Signal


subplot(2,1,1);
plot2d3('gnn', n, x);

e = gce(); [Link].mark_style = 9; // Add dots


xtitle("Original Signal x[n]");
xgrid();

// 5. Plot Reversed Signal


subplot(2,1,2);

plot2d3('gnn', n, x_rev);

e = gce(); [Link].mark_style = 9;
xtitle("Reversed Signal x[-n] (Reflected)");
xlabel("n (Samples)");
xgrid();

// 6. Force display
show_window();
drawnow();
4. MULTIPLICATION OF SIGNAL :

clf();
clear;

// 1. Define the index n


n = -5:10;

// 2. Signal 1: A Ramp Signal r[n]


// Mathematical: x1[n] = n for n >= 0
x1 = n .* (n >= 0);

// 3. Signal 2: A Pulse/Window Signal

// Mathematical: x2[n] = 1 for 0 <= n <= 5, else 0


x2 = (n >= 0 & n <= 5);

// 4. Multiplication: y[n] = x1[n] .* x2[n]


// Note the '.*' for element-by-element multiplication
y_mult = x1 .* x2;

// 5. Force open Graphic Window


f = scf(0);

f.figure_name = "Discrete Time Multiplication";

// 6. Plotting
subplot(3,1,1);

plot2d3('gnn', n, x1);

e1 = gce(); [Link].mark_style = 9;
xtitle("Signal 1: Ramp x1[n]");

subplot(3,1,2);

plot2d3('gnn', n, x2);

e2 = gce(); [Link].mark_style = 9;
xtitle("Signal 2: Pulse Window x2[n]");

subplot(3,1,3);
plot2d3('gnn', n, y_mult);
e3 = gce(); [Link].mark_style = 9;
xtitle("Result: y[n] = x1[n] * x2[n]");
xlabel("n (Samples)");

// 7. Final Force Display


show_window();
drawnow();
Activity 2 : system property verification via simulation
Title : simulate the system
1. LINEARITY SYSTEM :

// Linearity Test for a System: y(t) = 2 * x(t)


clf();
clear;

t = 0:0.01:2;

// 1. Define Two Inputs

x1 = sin(2*%pi*t); // Input 1
x2 = cos(2*%pi*t); // Input 2
a = 2; b = 3; // Scaling constants

// 2. Path A: Apply System to Combined Inputs T[a*x1 + b*x2]


x_combined = a*x1 + b*x2;
y_pathA = 2 * x_combined; // The System Operation

// 3. Path B: Combine Scaled Outputs a*T[x1] + b*T[x2]


y1 = 2 * x1;
y2 = 2 * x2;

y_pathB = a*y1 + b*y2;

// 4. Verification (Difference should be zero)


diff = y_pathA - y_pathB;

// --- Plotting ---


f = scf(0);
subplot(2,1,1);
plot(t, y_pathA, 'b', 'linewidth', 2);

plot(t, y_pathB, 'r--', 'linewidth', 2);


xtitle("Comparison of Path A and Path B");
hl = legend(["T[ax1 + bx2]"; "aT[x1] + bT[x2]"]);

subplot(2,1,2);

plot(t, diff, 'g');

xtitle("Difference (If zero, System is Linear)");


xlabel("Time (t)");

show_window();
drawnow();
2. TIME IN-VARENET SYSTEM :

// Time-Invariance Test: y(t) = x(t)^2

// FORCE CLEAR

clf();
clear;

// 1. Time Setup
t = 0:0.01:5;
tau = 1; // Delay of 1 second

// 2. Original Input and its System Output


x = sin(2*%pi*t); // Original Signal

y = x.^2; // Original Output (System squares the input)

// 3. Path A: System response to Delayed Input

// We delay the input first: x(t - tau)


x_delayed = sin(2*%pi*(t - tau));
y_pathA = x_delayed.^2;

// 4. Path B: Delayed version of Original Output

// We take the original output 'y' and shift it


y_pathB = [zeros(1, tau/0.01), y(1:$-tau/0.01)];

// 5. Force Window and Plot

f = scf(1); // Force window #1


f.figure_name = "Time Invariance Test Results";

subplot(2,1,1);

plot(t, y_pathA, 'b', 'linewidth', 2);

xtitle("Path A: System[x(t - tau)]");


xgrid();

subplot(2,1,2);
plot(t, y_pathB, 'r--', 'linewidth', 2);
xtitle("Path B: y(t - tau)");
xlabel("Time (t)");
xgrid();

// FINAL FORCE TO SHOW

show_window();
drawnow();

3. CAUSALITY SYSTEM :
// Verification of
Causality clf();
clear;

t = 0:0.01:5;

x = (t >= 1 & t <= 2); // Input pulse from t=1 to t=2

// --- System 1: Causal System y(t) = x(t) + x(t - 0.5) ---

// Note: Output starts at t=1 (when input starts)


x_delayed = ( (t - 0.5) >= 1 & (t - 0.5) <= 2 );
y_causal = x + x_delayed;

// --- System 2: Non-Causal System y(t) = x(t + 1) ---

// Note: Output starts at t=0 (BEFORE input starts at t=1!)


y_noncausal = ( (t + 1) >= 1 & (t + 1) <= 2 );

// --- Plotting with Force Window


---f = scf(0);
f.figure_name = "Causality Test";

subplot(2,1,1);

plot(t, x, 'k--', 'linewidth', 1); // Original Input for reference


plot(t, y_causal, 'b', 'linewidth', 2);
xtitle("Causal System: Output depends on Present & Past");
legend(["Input x(t)"; "Output y(t)"]); xgrid();

subplot(2,1,2);

plot(t, x, 'k--', 'linewidth', 1);

plot(t, y_noncausal, 'r', 'linewidth', 2);


xtitle("Non-Causal System: Output starts BEFORE Input (depends on Future)");
legend(["Input x(t)"; "Output y(t)"]);
xlabel("Time (t)"); xgrid();

show_window();
drawnow();
4. STABILITY SYSTEM :

// Verification of Stability (BIBO)


clf();
clear;

t = 0:0.1:10;

x = ones(1, length(t)); // Bounded Input: A constant 1

// --- System 1: Stable System y(t) = sin(x(t)) ---

// The output will stay between -1 and 1


y_stable = sin(x);

// --- System 2: Unstable System y(t) = exp(t) * x(t) ---

// The output grows to infinity as time increases


y_unstable = exp(t) .* x;
// --- Plotting with Force Window
---f = scf(0);
f.figure_name = "Stability Test (BIBO)";

subplot(2,1,1);

plot(t, y_stable, 'b', 'linewidth', 2);

xtitle("Stable System: Output remains Bounded (finite)");


gca().data_bounds = [0,-2 ; 10,2]; // Keep scale clear
xgrid();

subplot(2,1,2);

plot(t, y_unstable, 'r', 'linewidth', 2);


xtitle("Unstable System: Output grows to
Infinity"); xlabel("Time (t)");

xgrid();

// Force the window to


show show_window();
drawnow();
Activity 3 : DIY Mini Project
Title : Active Low Pass Filter For Reconstruction

Introduction

Define the project’s purpose. A reconstruction filter (also known as an anti-imaging


filter) is used in Digital-to-Analog Conversion (DAC) to smooth out "stepped" or
"staircase" output signals into a continuous analog waveform.
Objective: To design and implement a first-order active low-pass filter to reconstruct a
smooth analog signal from a sampled input.
2. Theory & Circuit Design

Explain why an active filter is used rather than a passive one. Key advantages include
providing gain (amplification) and high input impedance to prevent loading on the
previous stage.

 Key Formula: The cutoff frequency (𝒇𝒄) is determined by the resistor (R)

𝒇𝒄
and capacitor (C):

𝟏
= 𝟐𝝅𝑹𝑪
 Gain: For a non-inverting configuration, gain (𝑭𝒄) is set by feedback
resistors (𝑹𝒇) and (𝑹𝒂):

𝑹𝒇
𝑨𝒗 = 𝟏 +
𝑹𝒂
The working of an Active Low-Pass Reconstruction Filter can be broken down into three
simple steps. Essentially, it takes a "staircase" digital signal and smooths it out into a clean
analog wave.
1. Signal Entry (The RC Network)

 The input signal (which looks like sharp steps from a DAC) first hits the Resistor (R)
and Capacitor (C).
 Low Frequencies: The capacitor has high reactance (resistance to AC), so low-
frequency signals pass easily to the Op-Amp.
 High Frequencies: The capacitor acts like a short circuit to ground for high-
frequency noise and "sharp corners" of the steps. This effectively "rounds off" the
signal.
2. Buffer and Amplification (The Op-Amp)
 The Op-Amp is the "Active" part. It has a High Input Impedance, meaning it doesn't
"drain" or "load" the signal coming from your microcontroller or DAC.
 Because it’s in a Non-Inverting Configuration, it takes that rounded signal and
provides Gain.

 The feedback resistors (𝑅𝑓) and (𝑅1)) determine how much the signal is amplified. If
you just want a 1:1 copy, you can set it up as a "Voltage Follower."
3. Reconstruction (The Output)

 By removing the high-frequency components (the "noise" created by sampling), the


circuit "reconstructs" the original smooth waveform.
 The Low Output Impedance of the Op-Amp ensures that the signal stays strong even

when you connect it to a speaker, headphones, or another circuit .


Components Required

List the hardware needed for your DIY setup:

 Operational Amplifier: Commonly an IC 741 or TL081.


 Resistors & Capacitors: Specific values based on your target \(f_{c}\) (e.g.,
\(10\text{ k}\Omega\) and \(0.01\text{ }\mu\text{F}\) for a \(1.59\text{ kHz}\)
cutoff).
 Power Supply: Typically a dual symmetrical supply (e.g., \(\pm12\text{V}\) or
\(\pm15\text{V}\)).

 Tools: Breadboard, jumper wires, function generator, and oscilloscope


Implementation Procedure

1. Simulation: Use tools like LTSpice or Multisim to verify the frequency response
before building.
2. Assembly: Construct the circuit on a breadboard.

3. Measurement: Apply a sine wave at various frequencies. Record the output voltage
(𝑉𝑜𝑢𝑡) and calculate gain in dB:

𝑉𝑜𝑢𝑡
(
)
Gain
(dB)=20𝑙𝑜𝑔10
𝑉𝑖𝑛

Results & Discussion

 Frequency Response Curve: Plot gain (dB) vs. frequency (Hz) on semi-log paper.
The curve should be flat in the passband and drop at -20 dB/decade after the
cutoff.
 Reconstruction Proof: Show "Before" (stepped/sampled signal) and "After"
(smooth sine wave) oscilloscope screenshots to prove the reconstruction effect.

Conclusion

This project successfully demonstrates how an active low-pass filter can smooth out
"staircase" digital signals into clean analog waves. By using an Op-Amp, the circuit not only
removes high-frequency noise but also keeps the signal strong and stable. The final results
show that the output closely matches the original signal with very little distortion. Overall,
this filter is a simple yet powerful tool for high-quality sound and signal reconstruction
Activity 4 : Research & Application Review
Title : Applications of Signals and Systems in Power
Electronics, Electrical Machines, and Protection Systems

1. Introduction

Signals and Systems is a core subject in electrical engineering that deals with the analysis and
processing of signals. A signal is a function that conveys information about a physical
phenomenon such as voltage, current, or power. A system is an entity that processes input
signals to produce an output.
In real-world engineering, signals and systems concepts are widely used in:

 Power electronics
 Electrical machines
 Protection systems
Important tools such as Fourier Series, Fourier Transform, and Laplace Transform help
engineers analyze system behavior in both time and frequency domains.
2. Application in Power Electronics

Power electronics involves conversion and control of electrical power using semiconductor
devices.
2.1 Harmonic Analysis using Fourier Series

 Output of inverters and converters is usually non-sinusoidal, containing harmonics.


Using Fourier Series:

 Any waveform can be expressed as sum of sine and cosine components


 Helps identify harmonic frequencies
Application:

 Design of filters to reduce harmonics


 Improvement of power quality
2.2 PWM Signal Analysis

 Pulse Width Modulation (PWM) is widely used in


inverters. Signals & Systems helps to:

 Analyze switching signals


 Study frequency spectrum using Fourier Transform
2.3 System Modeling of Converters

 Converters behave like dynamic systems.


Using Laplace Transform:

 Analyze transient response


 Design controllers
 Check system stability
3. Application in Electrical Machines
Electrical machines operate using electrical signals and require analysis for performance and
control.
3.1 Transient Analysis

 During starting or fault conditions, machines show transient


behavior. Using Laplace Transform:

 Analyze current and voltage variation


 Study dynamic response
3.2 Condition Monitoring

 Faults in machines generate vibration signals.


Using Fourier Transform:

 Convert time signal → frequency domain


 Detect faults such as:
 Bearing failure
 Rotor imbalance
3.3 Motor Control Systems

 Modern motor drives use control systems.


Signals & Systems helps in:
 System modeling
 Controller design (PID control)
 Stability analysis
4. Application in Protection Systems

 Protection systems detect and isolate faults in power systems.


◆ 4.1 Fault Detection

 Faults cause sudden changes in current and voltage.


Signal processing helps:

 Detect abnormal conditions


 Classify faults
4.2 Digital Relays

 Modern relays use digital signal processing.


Fourier Transform is used to:

 Extract fundamental frequency (50 Hz)


 Filter unwanted harmonics
◆ 4.3 Travelling Wave Protection

 High-speed protection uses wave propagation signals.


Analysis in:

 Time domain
 Frequency domain
5. Real Application Case Study
 PWM Inverter in Solar Power System
 Solar panels generate DC power
 Inverter converts DC → AC using PWM technique
 Output waveform is not pure sine wave
Using Signals & Systems:

 Fourier Series is used to analyze harmonics


 Filters are designed to reduce distortion
 System response is analyzed for stability
Result:

 Improved efficiency
 Better power quality
 Reliable operation
6. Diagrams
◆ (a) PWM Waveform

(b) Block Diagram of System

(c) Harmonic Waveform

7. Importance of Signals and Systems

 Helps in understanding real-world electrical signals


 Essential for system design and analysis
Widely used in modern technologies like:

 Smart grids
 Electric vehicles
 Renewable energy systems
8. Conclusion

Signals and Systems is a powerful subject that plays a vital role in practical electrical engineering
applications. It provides essential tools to analyze, design, and improve systems used in
power electronics, machines, and protection. By using techniques like Fourier and Laplace
transforms, engineers can ensure efficient, stable, and safe operation of modern electrical
systems.
9. References

 Oppenheim & Willsky – Signals and Systems


 B.P. Lathi – Linear Systems and Signals
 NPTEL Lectures on Signals and Systems
 IEEE Research Papers on Power Electronics and Protection Systems

You might also like