본문 바로가기
반응형

전자/신호 및 시스템30

고조파 성분이 있는 전력 계산 유효전력을 계산하는 식은 다음과 같다. 고조파 성분을 있는 전압과 전류는 다음과 같다. 위 식을 대입하여 정리하면 유효전력은 다음과 같다. 주파수가 다른 성분은 0이 되기 때문에 유효전력은 위식과 같이 각 고조파 성분의 전력을 구한 후 더한 값과 같다. ☞ 유효, 무효, 피상 전력 계산 2023. 6. 21.
시간영역 전력 계산식 시간 영역에서 전압과 전류 샘플을 이용하여 유효전력 P와 무효전력 Q를 계산하는 식은 다음과 같다. 피상 전력 S는 위의 P와 Q를 이용하여 다음과 같이 계산한다. 위 식에서 Q와 S를 계산하는 식은 고조파 성분이 없을 때 적용되고 고조파 성분이 있을 때는 다음과 같이 계산한다. 여기서, V와 I는 각 고조파 성분의 전압과 전류 크기이다. k은 고조파 성분의 차수이다. ☞ 무효전력 계산 논문 2023. 6. 19.
1차 시스템의 Bilinear Transform 1차 시스템의 전달함수는 다음과 같다. Bilinear Transform을 위해 위 식에 다음 식을 대입한다. 위식을 대입하여 정리하면 다음과 같다. ☞ 1차 시스템 특성 2023. 6. 4.
RMS 계산식 RMS(Root Mean Square) 계산식은 다음과 같다. 이산시간에서 RMS은 다음과 같이 계산한다. 계측기에서 위의 식으로 RMS를 계산할 때 True RMS라고 한다. 저가 계측기에서는 위 식을 사용하지 않고 평균한후 일정값을 곱하여 RMS로 표시하기도 한다. 이것은 True RMS가 아니다. 2023. 4. 26.
[Matlab] 디지털 필터 대역폭 구하기 Matlab에서 디지털 필터의 -3dB 대역폭을 구하는 방법은 다음과 같다. a = 0.1; b = 1 - a;; num = [a]; den = [1 -b]; [h,f] = freqz(num,den,100000,1000); plot(f,abs(h),'r','LineWidth',1); grid on; hold on; [val,idx]=min(abs(abs(h)-(1/sqrt(2)))); abs(h(idx)) f(idx) % 대역폭 주파수 위에서 1000은 샘플링 주파수로 단위는 Hz이다. 출력되는 f도 단위는 Hz이다. 2023. 4. 19.
IIR 필터의 대역폭 단순한 IIR 필터는 다음과 같다. y[n] = a*x[n] + (1-a)*y[n-1] 샘플링 주파수가 1kHz일 때 a 값에 따른 주파수 응답특성은 다음과 같다. 가장 밑의 그래프는 a가 0.1이고 0.1씩 증가하여 가장 위의 그래프의 a는 0.9이다. 위 그래프에서 3dB로 떨어지는 대역폭은 다음과 같다. a 대역폭 [Hz] 0.1 16.785 0.2 35.665 0.3 57.380 0.4 83.130 0.5 115.03 0.6 157.31 0.7 220.66 0.8 352.42 0.9 x ☞ IIR 필터 시간 응답특성 ☞ Matlab 주파수 대역폭 구하기 ☞ FIR 필터 주파수 응답 특성 2023. 4. 19.
소리 주파수 스펙트럼 분석 프로그램 Visual Analyser는 마이크로 입력되는 소리의 주파수 스펙트럼을 실시간으로 표시해주는 무료 프로그램이다. 무료이지만 완성도가 높은 프로그램이다. ☞ VA 다운로드 홈페이지 2023. 3. 17.
노치 필터 전달함수 노치 필터(Notch filter)는 Band-stop 필터 중 차단 주파수폭이 매우 좁은 필터를 의미한다. 노치 피렅의 주파수 응답특성은 다음과 같다. 노치 필터의 전달함수는 다음과 같다. 여기서, Q는 Q-factor로 다음과 같다. ωz와 ωp의 크기에 따라 다음의 3가지 종류가 있다. Standard notch는 다음 식과 같다. ω0은 차단주파수(2π × fR)이고 ωc는 차단 범위(2π × BW)이다. 2023. 3. 7.
이동평균 필터 특성 이동평균 필터(Moving Average Filter)에서 아래 식이 성립하면 다음 그래프와 같다. 빨강색은 이동평균 필터의 입력이고 파랑색은 필터의 출력이다. 위 식에서 T는 샘플링 주기, N은 이동평균필터 윈도우 크기, A는 아래 그래프와 같이 입력 신호가 변하는 주기이다. 2022. 12. 27.
DFT 기본파 성분 연산 DFT에서 n=1인 기본파를 구하는 식은 다음과 같다. 위 식에서 N이 12일 때 사인필터의 윈도우는 다음과 같다. 아래 그래프에서 k가 0과 6일때는 0이고 상하좌우로 대칭이 아니다. 코사인필터 위상각과 사인필터 위상각의 차이는 60Hz일 때 90도이고 60Hz가 아닐 때는 90보다 크거나 작다. DFT를 변형하여 다음과 같이 기본파를 구할수도 있다. 위 식에서 사인필터의 윈도우는 다음과 같다. 아래 그래프에서는 0이 되는 점이 없고 상하좌우로 대칭이다. 코사인필터 위상각과 사인필터 위상각의 차이는 60Hz일 때 90도이고 60Hz가 아닐 때도 90도이다. 위 식의 코사인필터와 사인필터의 위상차는 90도이기 때문에 코사인필터를 X에 사인필터를 Y에 그리면 60Hz에서는 원이 되고 그외 주파수에서는 타원.. 2022. 11. 16.
DFT 연산 DFT의 정의는 다음과 같다. 샘플링 크기가 16인 DFT의 기본파 성분(n=1)은 다음 식과 같다. 위 식에서 코사인 필터와 사인 필터를 계산하는 식은 다음과 같다. 코사인함수와 사인함수는 4사분면에서 값의 크기가 동일하기 때문에 곱셈 연산을 1/4으로 줄일 수 있다. 2022. 11. 15.
DFT 주파수 응답특성 DFT(Discrete Fourier Transform)의 정의는 다음과 같다. 위 식은 다음과 같이 나태낼 수 있다. 여기서 코사인 필터는 다음과 같다. 사인 필터는 다음과 같다. 코사인 필터는 다음과 같이 나타낼 수 있다. 위 코사인 필터의 전달함수는 다음과 같다. DFT의 코사인 필터와 사인필터의 주파수 응답특성을 구하는 Matlab 코드는 다음과 같다. (n=1, N=32, 샘플링 주파수 1920 Hz) N = 32; n = 1; k = [0:N-1]; num1 = cos(2*pi*k*n/N); num2 = -sin(2*pi*k*n/N); den = [1]; [h1 w1] = freqz(num1, den, 60*32/2, 60*32); [h2 w2] = freqz(num2, den, 60*32/2.. 2022. 11. 13.
2개 신호의 차이 비교 방법 다음과 같은 2개 신호가 있을 때 2개 신호의 차이는 RMS를 이용하여 계산할 수 있다. RMS를 계산하는 공식은 다음과 같다. 2022. 5. 15.
이동평균 필터 프로그램 코드 이동평균 필터는 과거 데이터를 모두 더한 후 갯수만큼 나누면 된다. 하지만, 이러한 방법은 이동평균 윈도우 크기가 커지면 연산량이 매우 많아진다. 과거 데이터를 모두 더하지 않고도 다음과 같이 이동평균 필터를 구현할 수 있다. (윈도우 크기 100개) sum += input; // 가장 최근 데이터 sum -= buf[buf_idx]; // 가장 과거 데이터 buf[buf_idx] = input; buf_idx++; if(buf_idx>=100) buf_idx = 0; output = sum / 100; sum에 가장 과거 데이터를 빼고 가장 최근 데이터를 합하여 윈도우내의 데이터 합을 구한다. 이 방식은 buf에 들어있는 데이터의 합과 sum이 동일해야 한다. 만약 실행 도중 sum 값이나 buf가 임.. 2022. 5. 11.
Matlab 임의의 입력신호 응답 임의의 입력에 대한 응답은 lsim 함수를 사용하여 구할 수 있다. t = [0:0.1:10]; u = [zeros(1,10) ones(1,91)]; sys = tf(1,[1 1 1]); lsim(sys,u,t) 위와 같이 실행하면 다음과 같이 출력된다. 회색은 입력이고 파랑은 출력이다. 2022. 5. 10.
이동평균 필터의 주파수 응답특성 이동평균 필터는 LPF (Low Pass Filter)이다. 샘플링 주파수가 1kHz이고 이동평균 윈도우의 크기(L)가 2~8개일 때 주파수 응답특성은 다음과 같다. L이 2일 때 LPF 차단주파수는 샘플링 주파수 1kH의 대략 1/4인 약 250Hz이다. L이 2에서 4로 증가하면 LPF 차단주파수는 L이 2개일 때의 대략 1/2(약 125Hz)이 되고 L=6이면 대략 1/3이 되고 L=8이면 대략 1/4가 된다. ☞ 이동평균 필터 코딩 ☞ 이동평균 필터 특성 2022. 4. 29.
차분 방정식의 시간에 대한 함수 계산 다음과 같은 차분 방정식이 있다. 위 식은 다음과 같다. x의 n에 대한 식은 다음과 같이 지수함수이다. 2022. 3. 30.
이동평균 필터를 이용한 사다리꼴 속도 프로파일 다음 그림과 같은 x가 입력일 때 이동평균 필터를 거쳐 출력되는 신호는 X와 같다. 여기서 T는 이동평균 필터의 윈도우 크기이다. 위 신호를 각각 미분하면 다음과 같다. Convolution의 미분은 다음 식이 성립한다. X = MA * x → X' = MA * x' X'와 X는 사다리꼴 속도 프로파일과 위치 파형과 동일하다. 즉, x 데이터를 이동평균하면 사다리꼴 속도 프로파일의 위치값을 얻을 수 있다. ☞ Convolution 특성 ☞ 사다리꼴 속도 프로파일 2022. 2. 16.
Convolution 정의 2개 함수의 Convolution의 정의는 다음과 같다. 함수 f와 함수 g를 Convolution하여 새로운 함수를 생성한다. Convolution는 시스템에서 입력신호에서 출력신호를 계산할 때 사용한다. Convolution은 '매우 복잡한 것'이라는 뜻이다. Convolution 공식 2022. 2. 16.
IIR 필터의 스텝 응답 특성 가장 단순한 IIR 필터는 다음과 같다. y[n] = a*x[n] + (1-a)*y[n-1] a가 0.05, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7일 때 스텝 응답은 다음과 같다. a가 0.1일때 50샘플에서 99.3%에 도달한다. ☞ IIR 필터 주파수 응답 특성 2021. 12. 11.
중간값(Median) 필터 중간값(Median) 필터는 윈도우에서 중간값을 출력하는 필터이다. 중간값 필터는 노이즈 제거에 많이 사용되는 필터로 특히 이미지의 노이즈 제거에 많이 사용된다. 예를 들면 윈도우가 3 샘플일 때 3 샘플 중 중간값을 출력한다. 가끔씩 튀는 노이즈가 있을 때 이와 같은 중간값 필터가 효과적이다. 2021. 2. 23.
Matlab 디지털 필터 설계 디지털 Butterworth LF 필터는 butter 함수를 사용하여 설계할 수 있다.butter 함수의 첫번째 인자는 필터의 차수이고 두번째 인자는 정규화된 차단주파수이다. 아래 코드에서 샘플링 주파수 fs는 1000Hz이고 차단주파수는 300Hz이고 필터 차수는 3이다. fc = 300;fs = 1000; [b,a] = butter(3, fc/(fs/2)); butter 함수로 구해지는 b와 a는 다음 식과 같다. 필터 종류는 butter 이외에 bessellf, cheby1, cheby2, ellip가 있다. Matlab 도움말 2020. 11. 18.
디지털 필터 응답특성 구하기 디지털 필터의 응답특성은 Matlab을 이용하여 구할 수 있다. 다음과 같은 전달함수에서 Step 응답은 다음과 같이 구한다. num = [b(1) b(2) ,,, b(m)]; den = [a(1) a(2) ,,, a(n)]; x = ones(1,100); y = filter(num,den,x); plot(y); 주파수 응답은 다음과 같이 구한다. freqz(num,den,p,f) 위에서 p는 구하는 포인트 개수이고 f는 샘플링 주파수(단위:Hz)이다. 예제 다음과 같은 차분 방정식에서 전달 함수는 다음과 같다. 위 식의 Matlab 코드는 다음과 같다. num = [0.3] den = [1 -0.7] 샘플링 주파수가 1kHz일 때 위 식의 주파수 응답특성은 다음과 같다. 2020. 11. 18.
3dB 의미 신호의 dB 정의는 다음과 같다. -3dB는 다음과 같이 신호가 약 0.707일 때이다. 게인의 주파수 특성에서 3dB는 신호가 1에서 0.707으로 떨어지는 지점이다. 참고로 -6dB는 0.501이다. 전력에서 dB는 다음과 같이 정의한다. 전력 dB에서 -3dB는 약 0.501일 때이다. 2020. 11. 17.
이동평균필터 프로그램 코드 대표적인 FIR 필터인 이동 평균 (Moving Average, MA) 필터는 다음과 같다. 정수형 변수를 사용하여 위 식을 그대로 코딩하면 N으로 나눌 때 오차가 발생하고 그 오차가 누적된다. 이동 평균을 실제로 코딩할 때는 다음과 같이 s를 사용하여 나누기 연산을 제거한다. 여기서 s는 다음과 같다. C로 나타낸 MA 필터는 다음과 같다. s = s + input; s = s - buf[buf_idx]; buf[buf_idx] = input; buf_idx++; if(buf_idx>=500) buf_idx = 0; output = s / 500; MA 필터는 메모리를 많이 사용하는 단점이 있지만 IIR 필터에 비해 동작이 확실하고 디버깅을 아주 쉽게 할 수 있다. 메모리의 여유가 있다면 MA 필터를 .. 2020. 5. 10.
정수형 변수를 사용하여 IIR 필터 구현하기 정수형 변수를 사용하여 IIR (Infinite Impulse Response) 필터를 구현하는 것은 조금 까다롭고 조심해야 할 것이 있다. IIR 필터는 보통 다음과 같이 구현한다. y = (x + y *255) / 256; 하지만, 정수형 변수를 사용하는 위와 같은 코드는 심각한 문제가 있다. 만약, 출력 y가 0이고 입력 x에 1의 입력이 들어온다면 위 명령을 아무리 많이 수행해도 y는 항상 0이 되고 1로 수렴되지 않는다. x가 255일 때도 마찬가지이고 256가 되어야 1이 된다. 이와 같은 문제는 다음과 같이 해결할 수 있다. x = x_in * 256; y = div(x + y*255, 256); y_out = div(y, 256); div 함수는 입력된 2개의 정수 변수를 나눈 후 버림 또.. 2020. 5. 10.
디지털 신호 처리 디지털 신호 처리 (Digital Signal Processing) 디지털 신호 처리는 신호를 시간 영역에서는 샘플링하고 크기 영역에서는 양자화 한다. 하지만, 일반적인 디지털 신호 처리 이론은 양자화는 하지 않고 샘플링만한 Discrete-time Signal Processing을 다룬다. z-변환 ↔ 차분 방정식 변환 다음과 같은 z-변환으로 표현된 전달함수는 차분 방정식(Difference Equation)으로 쉽게 바꿀 수 있다. 위 식을 정리하면 다음과 같다. 위 식은 다음과 같이 차분 방정식으로 변환된다. 여기서 다음과 같은 z-변환의 기본 특성을 이용한다. 역으로 차분 방정식에서 z-변환으로 쉽게 바꿀 수 있다. z-변환의 주파수 응답 특성 z-변환에서 주파수 응답 특성을 구하기 위해서는 z.. 2019. 6. 20.
FIR 필터와 IIR 필터의 차이 FIR (Finite Impulse Response) 필터는 필터에 Impulse 신호를 입력 했을 때 나오는 Impulse Response 출력 신호가 일정 시간 이후에 0이 되는 필터이다. IIR (Infinite Impulse Response) 필터는 Impulse Response 출력 신호가 0에 접근하지만 0이 되지 않는 필터이다. FIR 필터의 형태는 다음과 같이 입력 신호 x 만을 이용하여 구현된다. IIR 필터의 형태는 다음과 같이 입력 신호 x와 이전 출력 신호 y를 함께 이용하여 구현된다. 2019. 4. 16.
칼만필터와 자이로센서 칼만 필터 (Kalman Filter) 칼만 필터는 LQE (Linear Quadratic Estimation)라고도 한다. 노이즈가 있는 신호를 측정할 때 칼만 필터를 사용하면 보다 정확한 값을 얻을 수 있다. 칼만 필터는 1950~60년대에 처음 개발되었다. 칼만 필터는 아폴로 계획의 로켓과 대류간 탄도 미사일과 순항 미사일 등의 항법 컴퓨터에 사용되었다. 칼만 필터 방정식 시스템의 상태 방정식은 다음 식과 같다. 여기서, A = State transition model , B = Input model u = 입력, w = 시스템 노이즈 H = 측정 모델 , v = 측정 노이즈 위의 상태 방정식에서 시스템 노이즈 w와 측정 노이즈 v의 확률 분포는 다음과 같다. 평균은 모두 0이고 편차는 각각 Q과 .. 2018. 4. 9.
주파수 응답특성에 대한 기본 개념 이해 시스템의 주파수 응답특성이란 시스템에 특정 주파수를 입력했을 때 어떤 신호가 출력 되는지를 나타낸다. 다음 그림과 같이 특정 주파수의 신호가 입력될 때 출력 되는 신호는 입력 신호보다 크기와 위상이 달라진다. 이 때 입력되는 주파수에 따라 출력 신호의 크기와 위상은 달라진다. 위의 첫 번째 그림에서와 같이 저주파일 때 약 90%로 크기가 줄고, 두 번째 그림에서와 같이 고주파일 때 약 30%로 크기가 줄어든다. 즉, 위의 시스템은 고주파 신호를 차단하는 LPF 특성을 가진다. 입력 신호의 주파수가 증가할 때 시스템이 이를 제대로 추종하지 못하면 출력 신호의 크기가 작아지고, 이 때 시스템은 응답 속도가 느린 특성을 가진다. 아래의 첫 번째 그림은 응답 속도가 느린 시스템이고 두 번째 그림은 응답 속도가 .. 2018. 2. 28.
반응형