You are on page 1of 13 Course Flow Diagram

The arrows here show conceptual flow between ideas. Note the parallel structure between the pink blocks (C-T Freq. Analysis) and the blue blocks (D-T Freq. Analysis).

Signals & Systems

Transfer Function New System Model

Ch. 3: CT Fourier Signal Models

Fourier Series

Periodic Signals

Fourier Transform (CTFT)

Non-Periodic Signals

Ch. 5: CT Fourier System Models

Frequency Response

Based on Fourier Transform  New System Model

Ch. 2 Convolution

C-T System Model

Convolution Integral

D-T System Model

Convolution Sum

Ch. 5: DT Fourier System Models

Freq. Response for DT New Signal
Models
Ch. 1 Intro
C-T Signal Model
Functions on Real Line  Ch. 2 Diff Eqs

C-T System Model

Differential Equations

D-T Signal Model

Difference Equations Zero-State Response Zero-Input Response
Characteristic Eq. System Properties
LTI
Causal
Etc

New System Model  D-T Signal Model
Functions on Integers
New Signal
Model

Ch. 7: Z Trans. Models for DT Signals & Systems

Transfer Function

Model

2/13

Ch. 4: DT Fourier Signal Models

DTFT

(for “Hand” Analysis)

DFT & FFT

(for Computer Analysis)   Powerful
Analysis Tool Based on DTFT
New System Model

Suppose you have a motor whose shaft is connected to a sensor that can measure the angular position of the shaft… its values will range between -π and π.

Output of Sensor when Motor spins at constant angular rate of 5π rad/sec  Motor
Assume that the
sensor generates

Motor and D-T System for Processing

Motor  C-T Signal Representing
Angular Position

Computer-Based D-T System D-T Signal Representing
Angular Position

Now… the trick is to determine how to design the D-T system (i.e., choose the system’s impulse response h[n]) to get a measure of the angular rate r m[n] !!! Computer θ m [n]
Some
h 1 [n]
h 2 [n]
Tricks

Simulate the Angular Position’s D-T Signal in Matlab

%% use some matlab "tricks" to simulate the fact that measured angle lies in –pi to pi theta_m=angle(exp(j*theta)); θ m [n] Some
h 1 [n]
h 2 [n]
Tricks Motor r m[n]   Note: Discontinuities

6/13

stD-T Convolution Approximates Computing a Derivative

y=conv(x, h_1); % Matlab has a command for convolving two signals Comes from Branch of Math
known as “Numerical Methods”  θ m [n]
r m [n]
Some
Motor
h 1 [n]
h 2 [n]
Tricks

Figure 2 from motor_speed.m 7/13

D-T Tricks to Fix the Effects of the Discontinuities

% replace the values with zeros at those locations  θ m [n]
r m [n]
Some
Motor
h 1 [n]
h 2 [n]
Tricks
≈ Correct Values
For Rate

Values from Discontinuities
“Transient” values
“Ramp-Up values
due to convolution
due to convolution

8/13

D-T Convolution to Further Fix the Discontinuities

Figure 3 from motor_speed.m These indicate the
Etc.
sliding blocks 9/13

With a little thought we can convince ourselves that this sliding average is nothing more that convolving the “zero-corrected” signal with a D-T signal that has N ones and zeros elsewhere and then dividing by N:

% do sliding average of 1000 pts to explore effect of N value θ m [n] Some
h 1 [n]
h 2 [n]
Tricks Motor r m[n] Blue: N = 100
Red: N = 1000
Figure 4 from
motor_speed.m This indicates the following trade-off
for the size of the averaging block:

10/13

Exploring Impact of Abrupt Rate Change

Motor  θ m [n]
r m [n]
Some
h 1 [n]
h 2 [n]
Tricks Rate Change

Blue: N = 100 Red: N = 1000 Bigger N gives:
• More accurate measure…
• But… slower response to changes

12/13

13/13