DSP FINAL

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 7

Systems and Control Systems Assignment

This document outlines the tasks for a Systems and Control Systems assignment.
The assignment focuses on exploring various concepts and applications related to
systems, including system classification, convolution, and GUI-based motor control.

I. Types of System

1. Memory and Memoryless Systems

A. Definition:

Systems can be broadly classified into two categories based on their ability to
"remember" past inputs: memoryless systems and memory systems.

A memory system, also known as a dynamic system, is characterized by its output


being dependent not only on the current input but also on past or future inputs. The system
"remembers" past events, which influence its present response.

On the other hand, a memoryless system, also known as a static system, is


characterized by its output being solely dependent on the current input. The system's
response at any given time (t for continuous-time systems or n for discrete-time systems) is
determined exclusively by the input applied at that specific instant. Past or future values of
the input have no influence on the output.

B. Sample Problems & Solutions:

Determine whether or not each of the following systems are memoryless with input x(t)
and output y(t).

(i) y(t)=x(3t)

put t=1

y(t)=x(3t)

y(1)=x(3(1))

y(1)=x(3)

hence the system with memory as output y(t) depends on future input x(3).

(ii) y(t)=5x(t)

put t= 1

y(1)=5x(1)

hence the system is memoryless as output y(1) depends on present input x(1).

(iii) x(cost)

put t=0

y(0)=x(1)
hence the system with memory as output y(0) depends on future input x(1).

(iv) y(t)=x2 (t)+x(t

since in the problem there is [x(t)].

put t=0

y(t) = x2 (t) + x(t)

y(0) =x2 (0) + x(0)

y(0) = x2 (0) + x(0)

since t = 0, therefore the system is memoryless system.

(v) y(t) = x(t) * x(t-17)

since in the problem there is [x(t-17)]

y(t) = x(t) * x(t-17)

y(0) = x(0) * x(0-17)

y(0) = x2 (-17)

since -17 is negative, therefore the system is memory system.

2. Linear and Non-linear Systems

A. Linear System

A system is said to be linear if it obeys the principle of homogeneity and principle of


superposition.

Principle of Homogeneity

The principle of homogeneity says that a system which generates an output y(t) for
an input x(t) must produce an output ay(t) for an input ax(t).

Superposition Principle

According to the principle of superposition, a system which gives an output 𝑦1(𝑡)


for an input 𝑥1(𝑡) and an output 𝑦2(𝑡) for an input 𝑥2(𝑡) must produce an output [𝑦1(𝑡) +
𝑦2(𝑡)] for an input [𝑥1(𝑡) + 𝑥2(𝑡)].

Therefore, for a continuous-time linear system,

[𝑎𝑦1(𝑡) + 𝑏𝑦2(𝑡)] = [𝑎𝑥1(𝑡) + 𝑏𝑥2(𝑡)] = 𝑎𝑇[𝑥1(𝑡)] + 𝑏𝑇[𝑥2(𝑡)]

Also, for a discrete-time linear system,

[𝑎𝑦1(𝑛) + 𝑏𝑦2(𝑛)] = [𝑎𝑥1(𝑛) + 𝑏𝑥2(𝑛)] = 𝑎𝑇[𝑥1(𝑛)] + 𝑏𝑇[𝑥2(𝑛)]

Hence, we can say that a system is linear if the output of the system due to weighted
sum of inputs is equal to the weighted sum of outputs.
Filter circuits, communications channels, etc. are few examples of linear systems.

 Non-Linear System

A system is said to be a non-linear system if it does not obey the principle of


homogeneity and principle of superposition.

Generally, if the equation describing the system contains square or higher order
terms of input/output or product of input/output and its derivatives or a constant, the
system will be a non-linear system. Triangulation of GPS signals is an example of non-linear
system.

B. Sample Problems & Solutions:

1. (t) = x2(t)

Solution:

y1 (t) = T[x1(t)] = x12(t)

y2 (t) = T[x2(t)] = x22(t)

T [a1 x1(t) + a2 x2(t)] = [ a1 x1(t) + a2 x2(t)]2

Which is not equal to a1 y1(t) + a2 y2(t). Hence the system is said to be non linear.

2. y(t) = 5x(t) + 3

Solution:

y1(t) = 5x1(t) + 3

y2(t) = 5x2(t) + 3

a1x1(t) + a2x2(t) = a1y1(t) + a2y2(t)

a1x1(t) + a2x2(t) = 5a1x1(t) + 5a2x2(t) + 3

a1y1(t) + a2y2(t) = a1[5x1(t) + 3] + a2[5x2(t) + 3]

= 5a1x1(t) + 3a1 + 5a2x2(t) + 3a2

Hence the given system is non-linear.

3. y(t) = x2 (t)

Solution:

y1(t) = x1 2 (t)

y2(t) = x2 2 (t)

a1x1(t) + a2x2(t) = a1y1(t) + a2y2(t)


2 2
a 1 y 1 (t)+a 2 y 2(t)=a 1 x 1 (t )+ a 2 x 2 (t)
2 2
a 1 y 1 (t)+a 2 y 2(t)=a 1 x 1 (t )+ a 2 x 2 (t)

Hence the given system is linear.

For Numerical Example

Check whether the given systems are linear or non-linear systems −

The given system is,

2
d y (t) 2
4. 2
+3 ty ( t )=t x (t)
dt

Consider an input 𝑥1(𝑡) which produces an output 𝑦1(𝑡), then,

2
d y 1(t)
2
+3 ty 1 ( t )=t 2 x 1 (t ) … .(1)
dt

And an input 𝑥2(𝑡) which produces an output 𝑦2(𝑡), then,

2
d y 2(t)
2
+3 ty 2 ( t )=t 2 x 2 ( t ) … .(2)
dt

Now, the linear combination of the equations (1) and (2) gives,

{ }{ }
2 2
d y 1( t ) d y 2 (t )
a 2
+ a 3 ty 1 ( t ) + b 2
+b 3 ty 2 ( t ) =at 2 x 1 ( t )+ b at 2 x 2 ( t )
dt dt

2
d
2
¿
dt

2
t ¿

Where, [𝑎𝑦1(𝑡) + 𝑏𝑦2(𝑡)] is the weighted sum of outputs and [𝑎𝑥1(𝑡) + 𝑏𝑥2(𝑡)] is the
weighted sum of inputs.

Hence, the equation (3) shows that the weighted sum of inputs to the given system
generates an output that is equal to the weighted sum of outputs to each of the individual inputs.
Therefore, the given system is a linear system

dy ( t )
5. 3 + 4 y ( t )=x 2 ( t )
dt

Let the output 𝑦1(𝑡) is corresponding to the input 𝑥1(𝑡), then,

dy 1 ( t ) x
2
3 + 4 y 1 ( t )= ( t ) …. (1)
dt 1

Similarly, the output 𝑦2(𝑡) is corresponding to the input 𝑥2(𝑡), then,

dy 2 ( t ) x
2
3 + 4 y 2 ( t )= ( t ) … .(2)
dt 2
Then, the linear combination (i.e., homogeneity and superposition) of the equations (1) and (2)
can be written as,

{a3
dy 1 ( t )
dt }{
+a 4 y 1 ( t ) + b 3
dy 2 ( t )
dt
+b 4 y 2 ( t ) =} 2
ax 2
1
( t )+
2
b x2
2
(t )

d ax ( ) b x
3 [ ay 1 ( t )+ by 2 ( t ) ] + 4 [ ay 1 ( t )+ by 2 ( t ) ] = t + (t)
dt 1 2

Where, [ay1(t)+by2(t)] is the weighted sum of outputs but [ax21(t)+bx22(t)] is not the
weighted sum of inputs. Here, the principle of superposition is not satisfied. Therefore, the given
system is a non-linear system.

II. CONVOLUTION
A. Definition:

Convolution is a fundamental mathematical operation that combines two signals to


syof the other. It finds extensive applications in areas like filtering, image processing, and
system analysis.

B. Sample Problems & Solutions:

Example 1 : Convolution with a Longer Signal


 x(n) = {1, 2, 3, 4, 5}
h(n) = {1, 1, 1}
find y(n) = x(n) * h(n)
Formula: (𝑛) = ∑𝑘 (𝑘)ℎ(𝑛 − 𝑘)
h(-k): {1, 1, 1}

Step-by-step
n = 0: y(0) = (1 x 1) = 1
n = 1: y(1) = (1 x 1) + (2 x 1) = 3
n = 2: y(2) = (1 x 1) + (2 x 1) + (3 x 1) = 6
n = 3: y(3) = (2 x 1) + (3 x 1) + (4 x 1) = 9
n = 4: y(4) = (3 x 1) + (4 x 1) + (5 x 1) = 12
n = 5: y(5) = (4 x 1) + (5 x 1) = 9
n = 6: y(6) = (5 x 1) = 5

Final Output: y(n) = {1, 3, 6, 9, 12, 9, 5}

Example 2: Convolution with a Filter that Emphasizes High Frequencies

 x(n) = {1, 2, 3, 2, 1} (A simple "pulse")


h(n) = {1, -1, 1} (A filter that emphasizes high frequencies)
find y(n) = x(n) * h(n)

Formula: (𝑛) = ∑𝑘 (𝑘)ℎ(𝑛 − 𝑘)


h(-k): {1, -1, 1}

Step-by-step
n = 0: y(0) = (1 x 1) = 1
n = 1: y(1) = (1 x -1) + (2 x 1) = 1
n = 2: y(2) = (1 x 1) + (2 x -1) + (3 x 1) = 2
n = 3: y(3) = (2 x 1) + (3 x -1) + (2 x 1) = 1
n = 4: y(4) = (3 x 1) + (2 x -1) + (1 x 1) = 2
n = 5: y(5) = (2 x 1) + (1 x -1) = 1
n = 6: y(6) = (1 x 1) = 1

Final Output: y(n) = {1, 1, 2, 1, 2, 1, 1}


Example 3:

h(n) = {1, 2, 1}
x(n) = {2, 3, 1}
y(n) = ?

Step-by-Step:
n = 0: y(0) = 2 x 1 = 2
n = 1: y(1) = (2 x 2) + (3 x 1) = 7
n = 2: y(2) = (2 x 1) + (3 x 2) + (1 x 1) = 9
n = 3: y(3) = (3 x 1) + (1 x 2) = 5
n = 4: y(4) = 1 x 1 = 1

Final Output: y(n) = {2, 7, 9, 5, 1}

Example 4:

h(n) = {1, 1, 1, 1}
x(n) = {2, 3, 1, 0, 1}
y(n) = ?

Step-by-Step:
n = 0: y(0) = 2 x 1 = 2
n = 1: y(1) = (2 x 1) + (3 x 1) = 5
n = 2: y(2) = (2 x 1) + (3 x 1) + (1 x 1) = 6
n = 3: y(3) = (3 x 1) + (1 x 1) + (0 x 1) = 4
n = 4: y(4) = (1 x 1) + (0 x 1) + (1 x 1) = 2
n = 5: y(5) = 0 x 1 + 1 x 1 = 1
n = 6: y(6) = 1 x 1 = 1

Final Output: y(n) = {2, 5, 6, 4, 2, 1, 1}

Example 5: Convolution with a "Moving Average" Filter

h(n) = {1/3, 1/3, 1/3} (This is a simple averaging filter)


x(n) = {2, 4, 6, 8, 10}
y(n) = ?

Step-by-Step:
n = 0: y(0) = (2 x 1/3) = 2/3
n = 1: y(1) = (2 x 1/3) + (4 x 1/3) = 2
n = 2: y(2) = (4 x 1/3) + (6 x 1/3) + (8 x 1/3) = 6
n = 3: y(3) = (6 x 1/3) + (8 x 1/3) + (10 x 1/3) = 8
n = 4: y(4) = (8 x 1/3) + (10 x 1/3) = 6

Final Output: y(n) = {2/3, 2, 6, 8, 6}

III. MATLAB APLICATION


a. Application Name: motorBench® Development Suite

Development Suite is a graphical user interface (GUI) software development tool


designed for Field-Oriented Control (FOC) of electric motors. It leverages the Motor Control
Application Framework (MCAF) to generate source code for MPLAB® X IDE projects,
automatically tunes feedback control gains, and accurately measures crucial motor
parameters. This interactive environment simplifies the process of setting up and operating
new motors, particularly when their characteristics are unknown, saving time for
embedded motor control engineers. The suite integrates with the MPLAB Configurator
(MCC) plug-in for the MPLAB X IDE.

b. Features: Analysis and Discussion


 Automatic Feedback Control Gain Tuning: This feature streamlines the setup process
by automatically adjusting feedback control gains, eliminating the need for manual tuning
and potentially reducing errors.
 Interactive Development Environment: The GUI provides a user-friendly interface for
designing and executing motor control systems. This visual approach makes the
development process more intuitive and accessible.
 Accurate Motor Parameter Measurement: The suite allows for precise measurement
of essential motor parameters, providing valuable insights into the motor's characteristics
and performance.
 Source Code Generation: The tool generates source code compatible with the MPLAB®
X IDE, facilitating smooth integration into existing development workflows and reducing the
need for manual coding.

c. Recommendation for Improvement

 Expanded Motor Type Support: Adding support for a wider range of motor types (e.g.,
AC motors, brushless DC motors, etc.) would enhance the suite's applicability across various
applications and industries.
 Comprehensive User Documentation: Providing detailed user manuals, tutorials, and
online resources would help users fully utilize the tool's capabilities, especially those new to
motor control.
 Enhanced Cross-Platform Compatibility: Extending support to include more
operating systems (e.g., Linux, macOS) would make the tool accessible to a broader user
base.
 Real-time Data Visualization: Integrating real-time data visualization tools would allow
users to monitor motor performance data in real-time, enabling instant analysis and
troubleshooting.

IV. REFERENCE
Signals and Systems: Static and Dynamic System
https://www.tutorialspoint.com/signals-and-systems-static-and-dynamic-system

Signals and Systems: Linear and Non-Linear Systems


https://www.tutorialspoint.com/signals-and-systems-linear-and-non-linear-systems

Workbook, E. (2019, June 22). Memory and Memoryless Systems - Theory | Solved Examples -
ElectricalWorkbook. ElectricalWorkbook. https://electricalworkbook.com/memory-and-
memoryless-systems-theory-solvedexamples/

DSP - Operations on Signals Convolution


https://www.tutorialspoint.com/digital_signal_processing/
dsp_operations_on_signals_convolution.htm

motorBench® Development Suite


https://www.microchip.com/en-us/solutions/technologies/motor-control-and-drive/
motorbench-development-suite

You might also like