31
Python 과 함께 배우는 신호 해석 박섭형 주요 신호 신호의 주파수 Python이용한 정현파의 샘플링과 그래프 그리기 Python과 함께 배우는 신호 해석 7 강. 주요 신호와 주파수 (3 장. 신호의 기초) 박섭형 한림대학교 전자공학과 한림대학교 박섭형 Python과 함께 배우는 신호 해석 7 강. 주요 신호와 주파수 1

Python과 함께 배우는 신호 해석 - 제 7 강. 주요 신호와 주파수 (제 3 …contents.kocw.net/KOCW/document/2014/Hallym/parkseophyeng/07.pdf · Python 과함께 배우는신호

  • Upload
    others

  • View
    92

  • Download
    3

Embed Size (px)

Citation preview

Python과 함께배우는 신호해석

박섭형

주요 신호

신호의주파수

Python을이용한정현파의샘플링과그래프그리기

Python과 함께 배우는 신호 해석

제 7 강. 주요 신호와 주파수

(제 3 장. 신호의 기초)

박섭형

한림대학교 전자공학과

한림대학교 박섭형 Python과 함께 배우는 신호 해석 제 7 강. 주요 신호와 주파수 1

Python과 함께배우는 신호해석

박섭형

주요 신호

신호의주파수

Python을이용한정현파의샘플링과그래프그리기

배울 내용

신호의 분류

신호의 상관 함수상호 상관 함수자기 상관 함수

주요 신호단위 임펄스 신호단위 계단 신호

신호의 주파수

정현파 신호의 샘플링과 그래프 그리기

한림대학교 박섭형 Python과 함께 배우는 신호 해석 제 7 강. 주요 신호와 주파수 2

Python과 함께배우는 신호해석

박섭형

주요 신호

신호의주파수

Python을이용한정현파의샘플링과그래프그리기

단위 계단 신호

연속시간단위계단함수: 헤비사이드계단함수(Heaviside step function)

정의 3.1 (연속시간 단위 계단 함수)

u(t) =

1, for t ≥ 0

0, for t < 0(3.34)

1

2

−2 0 2 4 6 t

u(t)

그림 3.1: 연속시간 단위 계단 함수 u(t)의 그래프.

한림대학교 박섭형 Python과 함께 배우는 신호 해석 제 7 강. 주요 신호와 주파수 3

Python과 함께배우는 신호해석

박섭형

주요 신호

신호의주파수

Python을이용한정현파의샘플링과그래프그리기

단위 계단 신호

이산시간 단위 계단 함수

정의 3.2 (이산시간 단위 계단 함수)이산시간 단위 계단 함수는 다음과 같이 정의된다.

u[n] =

1, n ≥ 0

0, n < 0(3.35)

이산시간 단위 계단 함수의 정의역은 정수의 집합이지만, 이산시간 단위계단 함수의 그래프를 그리거나 시스템의 단위 계단 응답을 구하기 위해서시뮬레이션을 할 때 특정한 구간에서만 이 신호를 사용할 수도 있다. 이런용도로 구간 [n1,n2]에서 u[n − n0] 함수의 정의역과 신호를 동시에반환하는 Python 함수를 stepseq(n0, n1, n2)로 정의하여 사용한다.

한림대학교 박섭형 Python과 함께 배우는 신호 해석 제 7 강. 주요 신호와 주파수 4

Python과 함께배우는 신호해석

박섭형

주요 신호

신호의주파수

Python을이용한정현파의샘플링과그래프그리기

단위 계단 함수의 줄기 그래프를 그리는 Python 스크립트 1

def stepseq(n0, n1, n2):if (n0 > n2) or (n0 < n1) or (n1 > n2):

print("Error: arguments must satisfy n1 <= n0 <= n2")return None

n = np.arange(n1,n2+1)x = (n >= n0) * 1.0return n, x

n, x = stepseq(0, -3, 5)if n != None:

plt.stem (n, x)plt.axis([-3, 5, -0.2, 1.2])plt.show()

한림대학교 박섭형 Python과 함께 배우는 신호 해석 제 7 강. 주요 신호와 주파수 5

Python과 함께배우는 신호해석

박섭형

주요 신호

신호의주파수

Python을이용한정현파의샘플링과그래프그리기

단위 계단 함수의 줄기 그래프를 그리는 Python 스크립트 2

def stepseq(n0, n1, n2):assert (n0 <= n2) and (n0 >= n1) and (n1 <= n2)n = np.arange(n1,n2+1)x = (n >= n0) * 1.0return n, x

n, x = stepseq(0, -3, 5)plt.stem (n, x)plt.axis([-3, 5, -0.2, 1.2])plt.show()

한림대학교 박섭형 Python과 함께 배우는 신호 해석 제 7 강. 주요 신호와 주파수 6

Python과 함께배우는 신호해석

박섭형

주요 신호

신호의주파수

Python을이용한정현파의샘플링과그래프그리기

단위계단함수의줄기그래프를그리는 Python 스크립트실행결과

3 2 1 0 1 2 3 4 50.2

0.0

0.2

0.4

0.6

0.8

1.0

그림 3.2: Python으로 그린 이산시간 단위 계단 함수의 그래프.

>>> n = np.arange(-3,5)>>> narray([-3, -2, -1, 0, 1, 2, 3, 4])>>> n>=0array([False, False, False, True, True, True,True, True], dtype=bool)

한림대학교 박섭형 Python과 함께 배우는 신호 해석 제 7 강. 주요 신호와 주파수 7

Python과 함께배우는 신호해석

박섭형

주요 신호

신호의주파수

Python을이용한정현파의샘플링과그래프그리기

단위 임펄스 신호

이산시간 단위 임펄스

정의 3.3이산시간 단위 임펄스 함수 이산시간 단위 임펄스 함수는 다음과 같이 정수의집합 Z에서 정의되는 크로네커 델타(Kronecker delta) 함수로 표현된다.

δ[n] =

1, n = 0

0, n ̸= 0(3.36)

이산시간 단위 계단 함수와 마찬가지로 이산시간 단위 임펄스의 정의역도정수의 집합이지만, 특정한 구간에서만 이 신호를 사용할 수도 있다. 이런용도로 구간 [n1,n2]에서 δ[n − n0] 함수의 정의역과 신호를 동시에반환하는 Python 함수를 impseq(n0, n1, n2)로 정의하여 사용한다.

한림대학교 박섭형 Python과 함께 배우는 신호 해석 제 7 강. 주요 신호와 주파수 8

Python과 함께배우는 신호해석

박섭형

주요 신호

신호의주파수

Python을이용한정현파의샘플링과그래프그리기

이산시간 단위 임펄스 함수의 줄기 그래프를 그리는 Python스크립트 1

import numpy as npimport matplotlib.pyplot as pltdef impseq(n0, n1, n2):

if (n0 > n2) or (n0 < n1) or (n1 > n2):print("Error: arguments must satisfy n1 <= n0 <= n2")return None

n = np.arange(n1,n2+1)x = (n == n0) * 1.0return n, x

n, x = impseq(0, -3, 5)if n != None:

plt.stem (n, x)plt.axis([-3, 5, -0.2, 1.2])plt.show()

한림대학교 박섭형 Python과 함께 배우는 신호 해석 제 7 강. 주요 신호와 주파수 9

Python과 함께배우는 신호해석

박섭형

주요 신호

신호의주파수

Python을이용한정현파의샘플링과그래프그리기

이산시간 단위 임펄스 함수의 줄기 그래프를 그리는 Python스크립트 2

import numpy as npimport matplotlib.pyplot as pltdef impseq(n0, n1, n2):

assert (n0 <= n2) and (n0 >= n1) and (n1 <= n2)n = np.arange(n1,n2+1)x = (n == n0) * 1.0return n, x

n, x = impseq(0, -3, 5)plt.stem (n, x)plt.axis([-3, 5, -0.2, 1.2])plt.show()

한림대학교 박섭형 Python과 함께 배우는 신호 해석 제 7 강. 주요 신호와 주파수 10

Python과 함께배우는 신호해석

박섭형

주요 신호

신호의주파수

Python을이용한정현파의샘플링과그래프그리기

이산시간 단위 임펄스 함수의 줄기 그래프를 그리는 Python스크립트

3 2 1 0 1 2 3 4 50.2

0.0

0.2

0.4

0.6

0.8

1.0

그림 3.3: Python으로 그린 이산시간 단위 임펄스 함수의 그래프.

>>> n = np.arange(-3,5)>>> narray([-3, -2, -1, 0, 1, 2, 3, 4])>>> n==0array([False, False, False, True, False, False,False, False], dtype=bool)

한림대학교 박섭형 Python과 함께 배우는 신호 해석 제 7 강. 주요 신호와 주파수 11

Python과 함께배우는 신호해석

박섭형

주요 신호

신호의주파수

Python을이용한정현파의샘플링과그래프그리기

signals 모듈 만들기

다음 스크립트를 현재 디렉토리에 signals.py라는 이름으로 저장하자.

import numpy as npdef stepseq(n0, n1, n2):

assert (n0 <= n2) and (n0 >= n1) and (n1 <= n2)n = np.arange(n1,n2+1)x = (n >= n0) * 1.0return n, x

def impseq(n0, n1, n2):assert (n0 <= n2) and (n0 >= n1) and (n1 <= n2)n = np.arange(n1,n2+1)x = (n == n0) * 1.0return n, x

한림대학교 박섭형 Python과 함께 배우는 신호 해석 제 7 강. 주요 신호와 주파수 12

Python과 함께배우는 신호해석

박섭형

주요 신호

신호의주파수

Python을이용한정현파의샘플링과그래프그리기

이산시간 단위 임펄스 신호를 이용한 신호의 표현

이산시간 단위 계단 함수와 이산시간 단위 임펄스 함수의 관계

δ[n] = u[n]− u[n − 1]. (3.37)

import numpy as npimport matplotlib.pyplot as pltdef unitstep(n,k):

return (n>=k)n=np.arange(-3,4)plt.subplot(1,3,1); plt.stem (n, unitstep(n,0))plt.axis([-3, 3, -1, 2])plt.subplot(1,3,2); plt.stem (n, unitstep(n,1))plt.axis([-3, 3, -1, 2])plt.subplot(1,3,3);plt.stem (n, unitstep(n,0)-unitstep(n,1));plt.axis([-3, 3, -1, 2])plt.show()

한림대학교 박섭형 Python과 함께 배우는 신호 해석 제 7 강. 주요 신호와 주파수 13

Python과 함께배우는 신호해석

박섭형

주요 신호

신호의주파수

Python을이용한정현파의샘플링과그래프그리기

이산시간 단위 임펄스 신호를 이용한 신호의 표현

import signalsimport matplotlib.pyplot as pltn, u0 = signals.stepseq(0, -3, 3)n, u1 = signals.stepseq(1, -3, 3)plt.subplot(1,3,1); plt.stem (n, u0)plt.subplot(1,3,2); plt.stem (n, u1)plt.subplot(1,3,3);d = u0 - u1plt.stem (n, d);plt.show()

한림대학교 박섭형 Python과 함께 배우는 신호 해석 제 7 강. 주요 신호와 주파수 14

Python과 함께배우는 신호해석

박섭형

주요 신호

신호의주파수

Python을이용한정현파의샘플링과그래프그리기

이산시간 단위 임펄스 신호를 이용한 신호의 표현

다음 그래프는 이 스크립트의 실행 결과이다.

3 2 1 0 1 2 31.0

0.5

0.0

0.5

1.0

1.5

2.0

3 2 1 0 1 2 31.0

0.5

0.0

0.5

1.0

1.5

2.0

3 2 1 0 1 2 31.0

0.5

0.0

0.5

1.0

1.5

2.0

(a) u[n] (b) u[n − 1] (c) u[n]− u[n − 1]

그림 3.4: δ[n] = u[n]− u[n − 1]을 설명하는 그림.

한림대학교 박섭형 Python과 함께 배우는 신호 해석 제 7 강. 주요 신호와 주파수 15

Python과 함께배우는 신호해석

박섭형

주요 신호

신호의주파수

Python을이용한정현파의샘플링과그래프그리기

이산시간 단위 임펄스 신호를 이용한 신호의 표현

식 (3.4)를 이용하면 다음 식을 얻을 수 있다.

u[n] = u[n]− n[n − 1] + n[n − 1]− n(n − 2) + n(n − 2) + · · ·

= δ[n] + δ[n − 1] + δ[n − 2] + · · · (3.38)

=

∞∑k=0

δ[n − k].

다음 그림은 u[n] = δ[n] + δ[n − 1] + δ[n − 2] + δ[n − 3] + · · · 를 설명하는그림이다.

3 2 10 1 2 3 40.5

0.0

0.5

1.0

1.5

3 2 10 1 2 3 40.5

0.0

0.5

1.0

1.5

3 2 10 1 2 3 40.5

0.0

0.5

1.0

1.5

3 2 10 1 2 3 40.5

0.0

0.5

1.0

1.5

3 2 10 1 2 3 40.5

0.0

0.5

1.0

1.5

u[n] δ[n] δ[n − 1] δ[n − 2] δ[n − 3]

그림 3.5: u[n] = δ[n] + δ[n − 1] + δ[n − 2] + δ[n − 3] + · · · 를 설명하는 그림.

한림대학교 박섭형 Python과 함께 배우는 신호 해석 제 7 강. 주요 신호와 주파수 16

Python과 함께배우는 신호해석

박섭형

주요 신호

신호의주파수

Python을이용한정현파의샘플링과그래프그리기

이산시간 단위 임펄스 신호를 이용한 일반적인 신호의 표현

단위 임펄스 신호는 일반적인 신호를 표현하는 기본 단위로 사용할 수 있다.이산시간 단위 임펄스 신호를 이용하여 일반 신호를 표현할 수 있다.먼저 다음 관계식을 생각해 보자.

x[n]δ[n − k] = x[k]δ[n − k]. (3.39)

이 식을 이용하면 임의의 이산시간 신호 x[n]을 다음과 같이 표현할 수 있다.

x[n] = · · ·+ x[−2]δ[n + 2] + x[−1]δ[n + 1] + x[0]δ[n] + x[1]δ[n − 1] + · · ·

=

∞∑k=−∞

x[k]δ[n − k]. (3.40)

한림대학교 박섭형 Python과 함께 배우는 신호 해석 제 7 강. 주요 신호와 주파수 17

Python과 함께배우는 신호해석

박섭형

주요 신호

신호의주파수

Python을이용한정현파의샘플링과그래프그리기

연속시간 단위 임펄스 함수

연속시간 단위 임펄스 신호는 다음과 같은 디락 델타 함수(Dirac deltafunction)로 정의한다.

정의 3.4 (디락 델타 함수(Dirac delta function))

δ(t) =

+∞, t = 0

0, t ̸= 0, (3.41)

∫ ∞

−∞δ(t)dt = 1. (3.42)

한림대학교 박섭형 Python과 함께 배우는 신호 해석 제 7 강. 주요 신호와 주파수 18

Python과 함께배우는 신호해석

박섭형

주요 신호

신호의주파수

Python을이용한정현파의샘플링과그래프그리기

연속시간 단위 임펄스 함수

다음과 같은 방법으로 디락 델타 함수를 정의하기도 한다.먼저, 다음과 같은 펄스 함수를 정의하자.

정의 3.5 (펄스 함수)

δε(t) =

1

ε, − ε

2≤ t ≤ ε

20, otherwise

, (3.43)

여기에서 ε은 아주 작은 양의 수이다.

한림대학교 박섭형 Python과 함께 배우는 신호 해석 제 7 강. 주요 신호와 주파수 19

Python과 함께배우는 신호해석

박섭형

주요 신호

신호의주파수

Python을이용한정현파의샘플링과그래프그리기

연속시간 단위 임펄스 함수

다음 그림은 ε의 값에 따라서 펄스 함수가 변하는 모습을 그림으로 표현한것이다.

0

1

2

3

4

5

6

7

8

9

10

11

−1 0 1

ε = 1

t 0

1

2

3

4

5

6

7

8

9

10

11

−1 0 1

ε = 0.5

t 0

1

2

3

4

5

6

7

8

9

10

11

−1 0 1

ε = 0.25

t 0

1

2

3

4

5

6

7

8

9

10

11

−1 0 1

ε = 0.1

t

(a) ε = 1.0 (b) ε = 0.5 (c) ε = 0.25 (d) ε = 0.1

그림 3.6: ε의 값에 따라서 펄스 함수 δε(t)가 변하는 모습.한림대학교 박섭형 Python과 함께 배우는 신호 해석 제 7 강. 주요 신호와 주파수 20

Python과 함께배우는 신호해석

박섭형

주요 신호

신호의주파수

Python을이용한정현파의샘플링과그래프그리기

연속시간 단위 임펄스 함수

이 함수는 가로 폭이 ε이고 높이가 1ε인 펄스이다. ε이 작아질수록 가로 폭은

줄어들고 높이는 커지지만, 직사각형 형태의 펄스의 넓이는 항상 1을 유지한다.즉, 다음 식이 성립한다. ∫ ∞

−∞δε(t)dt = 1. (3.44)

이 함수를 사용하여 디락 델타 함수, 즉 연속시간 단위 임펄스 신호를 다음과같이 정의한다.

정의 3.6 (펄스 함수를 이용한 디락 델타 함수 정의)

δ(t) = limε→0

δε(t), (3.45)

δε(t) =

1

ε, − ε

2≤ t ≤ ε

20, otherwise

. (3.46)

한림대학교 박섭형 Python과 함께 배우는 신호 해석 제 7 강. 주요 신호와 주파수 21

Python과 함께배우는 신호해석

박섭형

주요 신호

신호의주파수

Python을이용한정현파의샘플링과그래프그리기

연속시간 단위 임펄스 함수

디락 델타 함수의 그래프는 그림 3.7과 같이 화살표를 같은 수직선으로표현하는데 화살표 옆에 있는 (1)은 이 임펄스 신호의 크기 (또는 면적)이 1인것을 나타내는 것이다.

t

(1)

0

δ(t)

그림 3.7: 연속시간 단위 임펄스 δ(t)의 그래프.

한림대학교 박섭형 Python과 함께 배우는 신호 해석 제 7 강. 주요 신호와 주파수 22

Python과 함께배우는 신호해석

박섭형

주요 신호

신호의주파수

Python을이용한정현파의샘플링과그래프그리기

연속시간 단위 임펄스 신호를 이용한 신호의 표현

식 (3.13)에 정의된 펄스 함수에 f(t)를 곱하면 다음과 같은 식을 얻을 수 있다.

f(t)δε(t) =

f(t)ε

, − ε

2≤ t ≤ ε

20, otherwise

. (3.47)

이 식을 이용하여 f(t)δ(t)를 다음과 같이 구할 수 있다.

f(t)δ(t) = f(t) limε→0

δε(t)

= limε→0

f(t)δε(t)

= limε→0

f(0)δε(t)

= f(0)δ(t).

(3.48)

한림대학교 박섭형 Python과 함께 배우는 신호 해석 제 7 강. 주요 신호와 주파수 23

Python과 함께배우는 신호해석

박섭형

주요 신호

신호의주파수

Python을이용한정현파의샘플링과그래프그리기

연속시간 단위 임펄스 신호를 이용한 신호의 표현

그리고 f(t)δ(t − t0)는 다음과 같이 구할 수 있다.

f(t)δ(t − t0) = f(t) limε→0

δε(t − t0)

= limε→0

f(t)δε(t − t0)

= limε→0

f(t0)δε(t − t0)

= f(t0)δ(t − t0).

(3.49)

식 (3.16)의 양변을 적분하면 다음 식을 얻을 수 있다.∫ ∞

−∞f(t)δ(t − t0)dt =

∫ ∞

−∞f(t0)δ(t − t0)dt

= f(t0)∫ ∞

−∞δ(t − t0)dt

= f(t0).

(3.50)

이 식을 임펄스의 체질 (sifting) 성질 또는 샘플링 성질이라고 한다.한림대학교 박섭형 Python과 함께 배우는 신호 해석 제 7 강. 주요 신호와 주파수 24

Python과 함께배우는 신호해석

박섭형

주요 신호

신호의주파수

Python을이용한정현파의샘플링과그래프그리기

연속시간 단위 임펄스 신호를 이용한 신호의 표현

이 식에서 t에 τ를 대입하고, t0에 t를 대입하면, 임의의 이산시간 신호 x(t)를다음과 같이 표현할 수 있다.

f(t) =∫ ∞

−∞f(τ)δ(τ − t)dτ. (3.51)

이 식은 임의의 연속시간 신호 x(t)를 임펄스 신호의 가중 합으로 나타낸 것이며,이산시간 신호에서는 앞에서 배운대로 식 (3.7)과 같이 임의의 신호 x[n]을이산시간 임펄스 신호의 가중 합으로 나타낼 수 있다. 이 두 식을 비교하면서식이 내포하고 있는 물리적인 의미를 잘 생각해 보자.

한림대학교 박섭형 Python과 함께 배우는 신호 해석 제 7 강. 주요 신호와 주파수 25

Python과 함께배우는 신호해석

박섭형

주요 신호

신호의주파수

Python을이용한정현파의샘플링과그래프그리기

연속시간 신호의 주파수

t

x̃(t) = A sin(2πt/T0)

A

T0

2T0

3T0

2−

T0

2−T0

0

T0

그림 3.8: 연속시간 주기 신호의 예: x̃(t) = A sin(2πt/T0).

이 신호의 기본 주기는 T0이고, 기본 주파수는 f0 = 1T0이다. T0의 단위는 초

(sec)이며, f0의 단위는 /sec, 즉 Hz이다.

한림대학교 박섭형 Python과 함께 배우는 신호 해석 제 7 강. 주요 신호와 주파수 26

Python과 함께배우는 신호해석

박섭형

주요 신호

신호의주파수

Python을이용한정현파의샘플링과그래프그리기

연속시간 신호의 주파수

주기가 T0인 복소지수 신호는 다음과 같다.

x̃(t) = ej 2πT0

t= ej2πf0t = eω0t, (3.52)

여기에서 ω0 = 2πf0로 정의되는 ω0는 각주파수 (angular frequency)라고부른다. 이를 이용하면 정현파 신호를 다음과 같이 표현할 수 있다.

x̃(t) = A sin(2πt/T0) = A sin(2πf0t) = A sin(ω0t), (3.53)

한림대학교 박섭형 Python과 함께 배우는 신호 해석 제 7 강. 주요 신호와 주파수 27

Python과 함께배우는 신호해석

박섭형

주요 신호

신호의주파수

Python을이용한정현파의샘플링과그래프그리기

이산시간 신호의 주파수

연속시간 신호 x(t)를 샘플링 주기 Ts로 샘플링해서 얻은 신호 x[n]

x[n] = x(nTs) = x(n/fs), (3.54)

여기에서 fs =1

Ts는 샘플링 주파수이다.

식 (3.20)으로 표현되는 연속시간 정현파 신호를 샘플링 주파수 Ts로샘플링한 이산시간 신호

x̃[n] = A sin(2πnTs/T0) = A sin(2πnf0/fs) = A sin(2πnf̂0) = A sin(ω̂0),

(3.55)여기에서 f̂0 = f0

fs를 이산시간 신호의 주파수라고 한다. 연속시간 주파수의

단위는 Hz이지만, 이산시간 주파수는 연속시간 주파수와 샘플링 주파수의비율이므로 이산시간 주파수에는 단위가 없다

식 (3.19)로 표현되는 연속시간 복소지수 신호를 샘플링 주파수 Ts로샘플링한 이산시간 복소지수 신호

x̃[n] = ej 2πT0

nTs = ej2π f0fs

n= ej2πf̂0n = ejω̂0n. (3.56)

한림대학교 박섭형 Python과 함께 배우는 신호 해석 제 7 강. 주요 신호와 주파수 28

Python과 함께배우는 신호해석

박섭형

주요 신호

신호의주파수

Python을이용한정현파의샘플링과그래프그리기

Python을 이용한 정현파의 샘플링과 그래프 그리기

x(t) = 20 cos(2π(40)t − 0.4π). (3.57)

import numpy as npimport matplotlib.pyplot as pltTs=0.005; tn = np.arange(0, 0.06+Ts, Ts)xn = 20.*np.cos(2*np.pi*40 * tn - 0.4 * np.pi)plt.subplot(221); plt.plot(tn, xn)plt.subplot(223); plt.stem(tn, xn, 'r')plt.title("Sampled sign signal (Ts = 0.0005)")Ts=0.001; tn = np.arange(0, 0.06+Ts, Ts)xn = 20.*np.cos(2*np.pi*40 * tn - 0.4 * np.pi)plt.subplot(222); plt.plot(tn, xn)plt.subplot(224); plt.stem(tn, xn, 'r')plt.title("Sampled sign signal (Ts = 0.001)")plt.tight_layout(); plt.show()

한림대학교 박섭형 Python과 함께 배우는 신호 해석 제 7 강. 주요 신호와 주파수 29

Python과 함께배우는 신호해석

박섭형

주요 신호

신호의주파수

Python을이용한정현파의샘플링과그래프그리기

Python을 이용한 정현파의 샘플링과 그래프 그리기

그림 3.9: 샘플링을 이용해서 그린 정현파의 그래프.

이 그림에서 연속시간 신호를 그릴 때 샘플의 수가 많은 경우가 우리가 원하는연속시간 신호에 가까운 것을 볼 수 있다. 따라서 그래프를 그릴 때는 샘플 수를충분히 많게 설정할 필요가 있다.

한림대학교 박섭형 Python과 함께 배우는 신호 해석 제 7 강. 주요 신호와 주파수 30

Python과 함께배우는 신호해석

박섭형

주요 신호

신호의주파수

Python을이용한정현파의샘플링과그래프그리기

Python을 이용한 정현파의 샘플링과 그리기

연습 문제 3.1다음 신호의 그래프를 그리는 Python 스크립트를 작성하시오. 단, t의 구간은[−0.25, 0.25]이고, 샘플링 간격은 0.005, 0.0025, 0.001초 세 가지 경우의그래프를 그리시오.

x(t) = 20 cos(2π(40)t − 0.4π) + 10 cos(2π(15)t − 0.25π).

한림대학교 박섭형 Python과 함께 배우는 신호 해석 제 7 강. 주요 신호와 주파수 31