Ch 1. 진폭 변조 (AM): Step by Step

 

 

소개

변조는 저주파 메시지에 들어있는 정보를 전달하기 위해 고주파 반송파 신호 특성이 변경되는 과정입니다. 데이터를 변조하지 않고 베이스밴드 신호(또는 정보)를 전송하는 것이 이론적으로는 가능하나 정보를 반송파에 변조하여 메시지를 전송하는 것이 훨씬 더 효율적입니다. 고주파 파형은 보다 작은 수신용 안테나가 있어도 되며 가용 대역폭을 효율적으로 사용하고 여러 데이터 유형을 전송할 만큼 유연성이 좋습니다. 다양한 변조 방식을 아날로그 및 디지털 변조에 사용할 수 있습니다.

 

 

배경

진폭 변조(AM)는 고정 주파수 반송파 신호의 진폭(Amplitude)이 연속적으로 바뀌며 메시지에 있는 데이터를 나타내는 아날로그 변조 방식입니다. 반송파는 보통 메시지의 정보를 포락선 상에 “운반”하는 데 사용하는 고주파 정현파입니다. 그 결과는 이중 사이드밴드 신호(Double-SideBand Signal)로, 반송파 주파수의 중앙에 위치하며 원래 신호의 두배의 대역폭을 갖습니다.

 

 

그림 1 - AM 신호의 시간 영역

 

 

그림 2 – AM 신호의 주파수 영역

 

진폭 변조를 나타내는 데 보통 다음과 같은 알고리즘을 이용합니다.

 

같은항들을 모아 위의 방정식을 간단히 하면 다음과 같습니다.

y(t) = (C + Msin(ωmt + φ))sin(ωct)

 

AM 변조를 이용하는 주 장점은 회로 구현(특히 수신용일 경우)이 매우 간단하여 쉽게 널리 이용될 수 있다는 점입니다. 하지만 AM 변조는 신호의 전력과 대역폭을 낭비하게 됩니다. 반송파에는 신호 전력 대부분이 필요하나 실제로는 어떤 정보도 갖고 있지 않습니다. AM은 상위 사이드밴드와 하위 사이드밴드 모두에서 중복된 정보를 전송하기 때문에 두 배의 대역폭이 필요합니다.

 

 

프로그래밍

다음 프로그램 과정은 위에서 AM용으로 제시한 두 방정식을 구현하는 VI를 작성하는 방법을 설명합니다. “AM Modulation_Exercise.vi”를 엽니다. 이미 만들어져 있는 프런트패널과  블록다이어그램을 검사합니다. 이 VI를 완성하면 반송파 및 데이터 신호 모두의 진폭과 주파수를 선택할 수 있으며 신호의 시간 및 주파수 영역을 살펴 볼 수도 있습니다. 그래프에서는 변조 매개변수(진폭과 주파수)의 변화에 따른 반송파 및 사이드밴드 신호의 동작을 보여줍니다. 아래 프런트패널에서는 완성된 VI의 작동 상황을 나타냅니다.

 

 

그림 3 – 완성된 AM 변조 VI

 

블록다이어그램은 AM 신호 성분 정보를 표시 및 제어하는 여러 컨트롤 및 그래프가 들어있는 While Loop로 이루어집니다.

 

그림 4 – AM 변조 블록다이어그램의 예

 

1)  블록다이어그램에 “더하기”와 “빼기”  함수를 배치합니다. “Carrier Frequency” 및 “Modulation Frequency” 슬라이더 컨트롤을 “더하기”의 입력쪽에 연결합니다. “Carrier Frequency”는 빼기 함수에 있는 위쪽 입력단에, “Modulation Frequency”는 아래쪽 입력단에 각각 연결하여 두 값을 뺍니다.

 

2)  블록다이어그램에 “신호 시뮬레이션” Express VI를 배치하면, 신호 시뮬레이션 함수를 구성할 수 있는 대화상자가 열립니다. 정현파로 신호 유형을 선택하고 주파수를 10Hz로, 진폭을 1V로 각각 설정합니다. 초당 샘플을 100,000으로 늘립니다. 샘플개수 옆의 자동 옵션을 선택 해제하여 샘플 개수를 100,000으로 설정합니다. 그러면 대화상자가 아래 모양과 비슷하게 될 것입니다.

 

그림 5 – 신호 시뮬레이션 Express VI용 마지막 대화상자 옵션

 

“OK” 버튼을 누릅니다. 그러면 이제 LabVIEW가 신호 시뮬레이션 함수에 필요한 모든 코드를 생성합니다. 블록다이어그램에서 생성된 VI의 하단을 클릭하고 밑으로 끌어 내리면 컨트롤과 인디케이터를 연결할 수 있는 터미널이 보입니다. 다시 만들어진VI를 선택하고 CRTL 키를 누른 상태에서 커서를 다른쪽으로 끌고가면 같은 함수의 VI가 복제되며, 이 함수를 세번 반복하여  복제합니다. 첫 번째 “신호 시뮬레이션” VI에서는 Carrier Amplitude 을 진폭 입력에, Carrier Frequency 를 주파수 입력에 각각 연결합니다. 두 번째 “신호 시뮬레이션” VI에서는 더하기 함수의 출력을 주파수 입력에 연결합니다. 커넥터를 마우스 오른쪽 버튼으로 클릭하고 “생성>>상수”를 선택하여 상수 값 1을 진폭 입력에 연결합니다. 세 번째 “신호 시뮬레이션” VI에서는 빼기 함수의 출력을 주파수 입력에 연결합니다. 다시 한 번 커넥터를 마우스 오른쪽 버튼으로 클릭하고 “생성>>상수”를 선택하여 상수 값 1을 진폭 입력에 연결합니다.

 

3)  블록다이어그램에 “곱하기” 함수를 배치합니다. 두 번째 및 세 번째 “신호 시뮬레이션” VI의 정현파 출력을 곱하기 함수의 입력에 연결합니다. 곱하기 함수의 출력을 “변조 신호” 그래프에 연결합니다. 또한 첫 번째 “신호 시뮬레이션” VI의 출력을 “반송파 신호” 그래프에 연결합니다.

 

4)  블록다이어그램에 “나누기” 함수를 배치합니다. 아래쪽 입력 커넥터위에서 마우스 오른쪽 버튼으로 클릭하여 바로가기 메뉴에서 상수 생성을 선택하고 상수 값 2를 만듭니다. 블록다이어그램 상에서 이 상수와 나누기 함수를 전체 드래그하여 선택한 후 CTRL 키를 누른 상태에서 마우스 커서를 다른 영역으로 가져가 복제본을 만듭니다. 두 개의 나누기 함수 중 하나의 입력에 두 번째 “신호 시뮬레이션” VI의 출력에 연결합니다. 나머지 나누기 함수의 입력에 세 번째 “신호 시뮬레이션” VI의 출력을 연결합니다.

 

5)  블록다이어그램에 “곱하기” 함수를 두 개 배치합니다. 변조 진폭 컨트롤과 “나누기” 함수 중 하나의 출력을 첫 번째 “곱하기” 함수에 연결합니다. 두 번째 “나누기” 함수의 출력과 변조 진폭 컨트롤을 두 번째 “곱하기” 함수에 연결합니다.

 

6)  블록다이어그램에 “빼기” 함수를 배치하고 마지막 단계의 두 “곱하기” 함수의 출력을 모두 입력에 연결합니다. 두 번째 “신호 시뮬레이션” VI의 데이터에서 세 번째 “신호 시뮬레이션” VI의 데이터를 빼도록 “빼기” 함수 입력에 연결합니다.

 

7)  블록다이어그램에 “더하기” 함수를 배치하고 마지막 단계의 “빼기” 함수의 출력을 이 “더하기” 함수에 연결합니다. 또한 첫 번째 “신호 시뮬레이션” VI의 출력을 “더하기” 함수에 연결합니다.

 

8)  블록다이어그램에 “스펙트럼 측정” Express VI를 배치하면 이 함수를 구성할 수 있는 대화상자가 열립니다. 스펙트럼 측정 항에서는 피크를 결과에서는 dB를 선택합니다. 윈도우 옵션에서 “7항 블랙맨-해리스”로 설정합니다. 평균값 연산은 체크하지 말고 그대로 둡니다. 그러면 대화상자가 아래 모양과 비슷해질 것입니다.

 

그림 6 – 스펙트럼 측정 Express VI용 마지막 대화상자 옵션

 

“OK” 버튼을 누릅니다. 그러면 LabVIEW가 스펙트럼 측정 함수에 필요한 코드를 생성합니다. 이전 단계 “더하기” 함수의 출력을 신호 입력 커넥터에 연결합니다. 또한 “더하기” 함수의 출력을 AM Modulated Signal (Time Domain) 그래프에 연결합니다. 마지막으로 스펙트럼 측정 Express VI의 출력을 AM Modulated Signal (Frequency Domain) 그래프에 연결합니다.

 

 

 

이제 VI가 완성되었습니다. 완성된 프로그램의 블록다이어그램은 아래 모양과 비슷할 것입니다. 프런트패널의 메뉴바에 있는 실행 아이콘을 눌러 VI를 실행합니다. 반송파와 변조 진폭 및 주파수 값을 바꾸며 신호에 미치는 영향을 살펴봅니다.

 

그림 6 – 완성된 AM 변조 블록다이어그램

 

<< Back

 Copyright by National Instruments Coporation  & RF designhouse. All rights reserved.