문제 8.43를 "DSP는 MATLAB을 사용하여"

코드 :

%% ------------------------------------------------ ------------------------ 
%% 출력이 m-파일에 대한 정보 
는 fprintf ( '\ n ************ ***********************************************\엔' ); 
fprintf와 ( '<DSP 사용 MATLAB> 문제 8.43 \ n \ n "); 

배너(); 
%% ------------------------------------------------ ------------------------ 

% 디지털 고역 통과 필터 사양 : 
wphp = 0.4 * 파이; 라드의 디지털 % 통과 대역 주파수 
wshp = 0.3 * PI; % 라드 디지털 정지 대역 주파수 
라인란 = 1.0; 통과 대역 리플 % dB에서 
로서는 = 40; % 스톱 밴드 감쇠 dB의 
 
리플 = 10 ^ (-RP / 20) %의 통과 대역 리플 절대
절대의 담당자가 = 10 ^ (-as / 20) %의 스톱 밴드 감쇠

fprintf와 ( "\ n ******* 디지털 고역 DIRECT 형태의 계수 *********** \ n"); 
% [BHP, AHP = butthpf (wphp, wshp Rp가로서는) 
% [BHP, AHP = cheb1hpf (wphp, wshp Rp가로서는) 
% [BHP, AHP = cheb2hpf (wphp, wshp Rp가 으로서는 ) 
[BHP, AHP = eliphpf (wphp, wshp, 라인란로서); 
[C, B, A] = dir2cas (BHP, AHP) 

주파수 응답을 계산 % : 
% [DBLP, maglp, phalp, grdlp, WWLP = freqz_m (BLP, ALP); 
[dbhp, maghp, phahp, grdhp, wwhp = freqz_m (BHP, AHP); 

% ------------------------------------------------- -------------- 
% 찾을 실제 통과 대역 리플 및 최소 정지 대역 감쇠  
% -------------------------- -------------------------------------
delta_w = 2 * PI / 1000; 
Rp_hp = - (분 (dbhp (CEIL (wphp / delta_w + 1) : 1 : 501))); 통과 대역 리플 % 실제

fprintf와 (Rp_hp '. \ nActual 통과 대역 리플 %는 dB이다 .4f \ n "); 

As_hp = - 원형 (최대 (dbhp (1 : 1 : CEIL (wshp / delta_w) +1))); 최소 % 스톱 밴드 감쇠 
는 fprintf ( "\ n 분 정지 대역 감쇠 dB .4f % \ n \ n. 'As_hp); 

%% ------------------------------------------------ ----------------- 
%% 플롯 
%% 오버 전체 아날로그 필터 [0, 5kHz의] inteval 
%% --------------- --------------------------------------------------   

도 ( '오프'NumberTitle ','이름 ','문제 eliphpf 기능별 8.43 타원 고역 ') 
세트 (GCF,'색상 ','흰색 '); 
M = 1; 오메가 % 최대 
Fs를 = 10;

부가 적 줄거리 (2,2,1); 플롯 (Fs를 wwhp * / (2 * PI) maghp); 그리드에, % 축 ([0, M, 0, 120]); 
% xlabel ( '디지털 주파수 \ 유닛 PI'); 
xlabel ( '단위 KHz의 주파수에서 아날로그'); 
ylabel ( '| H |'); 제목 ( '하이 패스 필터의 크기 응답'); 
세트 (GCA 'XTickMode」, 「매뉴얼」, 「XTICK'[0, 0.3, 0.4, M] * fs / 2)로 표시되고,; 
세트 (GCA 'YTickMode」, 「매뉴얼」, 「YTick'[0, 0.8913, 1]); 

부가 적 줄거리 (2,2,2); 플롯 (Fs를 wwhp * / (2 * PI) dbhp); 격자; % 축 ([0, M, -100, 2]); 
% xlabel ( '디지털 주파수 \ 유닛 PI'); 
xlabel ( '단위 KHz의 주파수에서 아날로그'); 
ylabel ( '데시벨'); 제목 ( 'dB의 하이 패스 필터 진도'); 
세트 (GCA, 'XTickMode', '사용 설명서', ' XTICK '[0, 0.3, 0.4, M] * fs / 2)로 표시되고,; 
세트 (GCA 'YTickMode」, 「매뉴얼」, 「YTick'[-70, -40, -1, 0]);
세트 (GCA 'YTickLabelMode」, 「매뉴얼」, 「YTickLabel'[ '70', '40', '1', '0']); 


부가 적 줄거리 (2,2,3); 플롯 (Fs를 wwhp * / (2 * PI) phahp / PI); 그리드; % 축 ([0, M, -1.1, 1.1]); 
% xlabel ( '\ 파이 뉘 디지털 주파수'); 
xlabel ( '단위 KHz의 주파수에서 아날로그'); 
ylabel ( '\ PI 단위 라디안'); 제목 ( '하이 패스 필터 단계 응답'); 
세트 (GCA 'XTickMode」, 「매뉴얼」, 「XTICK'[0, 0.3, 0.4, M] * fs / 2)로 표시되고,; 
세트 (GCA 'YTickMode」, 「매뉴얼」, 「YTick'[-1 : 1 : 1]); 

부가 적 줄거리 (2,2,4-); 플롯 (Fs를 wwhp * / (2 * PI) grdhp); 그리드; % 축 ([0, M, 0, 25]); 
% xlabel ( '디지털 주파수 \ 유닛 PI'); 
xlabel ( '단위 KHz의 주파수에서 아날로그');
ylabel ( '샘플'); 제목 ( '하이 패스 필터 그룹 지연');
세트 (GCA 'YTickMode」, 「매뉴얼」, 「YTick'[0시 10분 25초]); 



% ------------------------------------------------- --------- 
% 2 부 디지털 프로토 타입 저역 통과 필터 
% --------------------------------- ------------------------- 
% 디지털 저역 통과 필터 사양 : 
[wpLP, wsLP, 알파 = hp2lpfre (wphp, wshp); 

타원 LP 필터 파라미터의 계산 % : 
[N, WN = ellipord (wpLP / PI, wsLP / PI, 라인란로서); 
fprintf와 ( "\ n ********** 타원 필터 주문 = % 3.0F \ n ', N) 

% 타원 디지털 저역 통과 필터 디자인 : 
[BLP, ALP = ellip (N, 라인란로서, WN '낮은'); 

[C, B, A] = dir2cas (BLP, ALP)

% 주파수 응답을 계산 : 
[DBLP, maglp, phalp, grdlp, WWLP = freqz_m (BLP, ALP);  
는 fprintf ( "\ n 분 정지 대역 감쇠 dB .4f % \ n \ n. 'As_lp); 
%% ------------------------------------------------ -----------------


% ------------------------------------------------- -------------- 
% 실제 통과 대역 리플 및 최소 정지 대역 감쇠 찾을 
% -------------------------- ------------------------------------- 
delta_w = 2 * PI / 1000; 
Rp_lp = - (분 (DBLP (1 : 1 : CEIL (wpLP / delta_w + 1) +1))); % 실제 통과 대역 리플 

fprintf와는 (Rp_lp '. \ nActual 통과 대역 리플 dB .4f %이다 \ n "); 

As_lp = - 원형 (최대 (DBLP (CEIL (wsLP / delta_w) +1) 1 : 501)); % 최소 정지 대역 감쇠 

%% 플롯 
%% ----------------------------------------- ------------------------   

도 ( '오프'NumberTitle ','이름 ','문제 ellip 기능별 8.43 타원 프로토 타입 저역 통과 ') 
집합 (GCF, '색상', '
M = 1; 오메가 % 최대 

부가 적 줄거리 (2,2,1); 플롯 (WWLP / PI, maglp); 축 ([0, M, 0, 120]); 그리드; 
xlabel ( '\ PI 단위 디지털 주파수'); ylabel ( '| H |'); 
제목 ( '로우 패스 필터의 크기 응답'); 
세트 (GCA 'XTickMode」, 「매뉴얼」, 「XTICK'[0 wpLP, wsLP, PI] / PI); 
세트 (GCA 'YTickMode」, 「매뉴얼」, 「YTick'[0, 0.8913, 1]); 

부가 적 줄거리 (2,2,2); 플롯 (WWLP / PI, DBLP); 축 ([0, M, 
xlabel ( '\ PI 단위 디지털 주파수'); ylabel ( '데시벨');
제목 ( 'dB의 로우 패스 필터 진도'); 
세트 (GCA 'XTickMode」, 「매뉴얼」, 「XTICK'[0 wpLP, wsLP, PI] / PI); 
세트 (GCA 'YTickMode」, 「매뉴얼」, 「YTick'[-70, -40, -1, 0]); 
세트 (GCA 'YTickLabelMode」, 「매뉴얼」, 「YTickLabel'[ '70', '40', '1', '0']); 


부가 적 줄거리 (2,2,3); 플롯 (WWLP / PI, phalp / PI); 축 ([0, M, -1.1, 1.1]); 그리드;
xlabel ( '\ 파이 뉘 디지털 주파수'); ylabel ( '\ PI 단위 라디안'); 
제목 ( '로우 패스 필터 단계 응답'); 
세트 (GCA 'XTickMode」, 「매뉴얼」, 「XTICK'[0 wpLP, wsLP, PI] / PI); 
세트 (GCA 'YTickMode」, 「매뉴얼」, 「YTick'[-1 : 1 : 1]); 

부가 적 줄거리 (2,2,4-); 플롯 (WWLP / PI, grdlp); 축 ([0, M, 0, 25]); 그리드; 
xlabel ( ' \ 유닛 PI ')의 디지털 주파수; ylabel ( '샘플'); 
제목 ( '로우 패스 필터 그룹 지연');
세트 (GCA 'XTickMode」, 「매뉴얼」, 「XTICK'[0 wpLP, wsLP, PI] / PI); 
세트 (GCA 'YTickMode」, 「매뉴얼」, 「YTick'[0 : 5 : 25]);




[N, WN = ellipord (wphp / PI, wshp / PI, 라인란로서); 
fprintf와 ( "\ n ********** 타원 필터 주문 = % 3.0F \ n ', N) 

% 디지털 타원 고역 통과 필터 디자인 : 
[BHP, AHP = ellip (N, 라인란로서, WN ) '고'; 

[C, B, A] = dir2cas (BHP, AHP) 

주파수 응답을 계산 % : 
% [DBLP, maglp, phalp, grdlp, WWLP = freqz_m (BLP, ALP); 
[dbhp, maghp, phahp, grdhp, wwhp = freqz_m (BHP, AHP); 

% ------------------------------------------------- --------------
%는 실제 통과 대역 리플 및 최소 정지 대역 감쇠 찾을 
%를 ---------------------------------------- ----------------------- 
delta_w = 2 * PI / 1000; 
Rp_hp = - (분 (dbhp (CEIL (wphp / delta_w + 1) : 1 : 501))); % 실제 통과 대역 리플 

fprintf와는 (Rp_hp '. \ nActual 통과 대역 리플 %는 dB이다 .4f \ n "); 

As_hp = - 원형 (최대 (dbhp (1 : 1 : CEIL (wshp / delta_w) +1))); 최소 % 스톱 밴드 감쇠 
는 fprintf ( "\ n 분 정지 대역 감쇠 dB .4f % \ n \ n. 'As_hp); 

%% ------------------------------------------------ ----------------- 
%% 플롯 
%% ---------------------------- -------------------------------------   

그림 '오프'( 'NumberTitle', '이름' '문제 ellip 기능별 8.43 타원 고역') 
세트 (GCF, '색상') '흰색'; 
M = 1; 오메가 % 최대 

부가 적 줄거리 (2,2,1); 플롯 (wwhp / PI, maghp); 축 ([0, M, 0, 120]); 그리드; 
xlabel ( '\ PI 단위 디지털 주파수'); ylabel ( '| H |'); 제목 ( '하이 패스 필터의 크기 응답');
세트 (GCA 'XTickMode」, 「매뉴얼」, 「XTICK'[0, 0.3, 0.4, M]); 
세트 (GCA 'YTickMode」, 「매뉴얼」, 「YTick'[0, 0.8913, 1]); 

부가 적 줄거리 (2,2,2); 플롯 (wwhp / PI, dbhp); 축 ([0, M, -100, 2]); 그리드; 
xlabel ( '\ PI 단위 디지털 주파수'); ylabel ( '데시벨'); 제목 ( 'dB의 하이 패스 필터 진도'); 
세트 (GCA 'XTickMode」, 「매뉴얼」, 「XTICK'[0, 0.3, 0.4, M]); 
세트 (GCA 'YTickMode」, 「매뉴얼」, 「YTick'[-70, -40, -1, 0]); 
세트 (GCA 'YTickLabelMode」, 「매뉴얼」, 「YTickLabel'[ '70', '40', '1', '0']); 


부가 적 줄거리 (2,2,3); 플롯 (wwhp / PI, phahp / PI); 축 ([0, M, -1.1, 1.1]); 그리드; 
xlabel ( ' \ 파이 뉘 ')의 디지털 주파수; ylabel ( '\ PI 단위 라디안'); 제목 ( '하이 패스 필터 단계 응답');
세트 (GCA 'XTickMode」, 「매뉴얼」, 「XTICK'[0, 0.3, 0.4, M]); 
세트 (GCA 'YTickMode」, 「매뉴얼」, 「YTick'[-1 : 1 : 1]); 

부가 적 줄거리 (2,2,4-); 플롯 (wwhp / PI, grdhp); 축 ([0, M, 0, 25]); 그리드; 
xlabel ( '\ PI 단위 디지털 주파수'); ylabel ( '샘플'); 제목 ( '하이 패스 필터 그룹 지연'); 
세트 (GCA 'XTickMode」, 「매뉴얼」, 「XTICK'[0, 0.3, 0.4, M]); 
세트 (GCA 'YTickMode」, 「매뉴얼」, 「YTick'[0 : 5 : 25]);

  결과 :

       통과 대역, 정지 대역 설계 사양, 절대 값 유닛

        시스템의 함수로서 일련의 계수 타원 디지털 고역 통과 필터는, 순서 (5)의 순서이고

        eliphpf 함수, 타원 디지털 하이 패스 디자인 스펙트럼 진폭, 위상 및 그룹 지연 응답 스펙트럼 사용

 

        두 번째 작은 문제는 디지털 저역 통과 프로토 타입의 진폭 스펙트럼을 그리는.

        시스템의 함수로서 일련의 계수 타원 디지털 저역 통과 필터

        ellip 함수 (MATLAB 툴박스 기능), 타원 디지털 하이 패스 필터 설계를 사용하는 시스템 기능 직렬 계수는 다음과 같이,

        스펙트럼 진폭 및 위상 스펙트럼 그룹 지연 응답 이하

 

추천

출처www.cnblogs.com/ky027wh-sx/p/11832292.html