MATLAB을 이용한 M-ary QAM Simulation (16,64,256)
- 최초 등록일
- 2017.05.08
- 최종 저작일
- 2016.12
- 7페이지/
압축파일
- 가격 2,000원
![할인쿠폰받기](/images/v4/document/ico_det_coupon.gif)
소개글
MATLAB을 이용하여 M-ary QAM 시스템에 관하여 알아보고, MATLAB 코딩을 통해 M-ary QAM에서 M이 16,64,256 일 때 마다 BER의 변화 그래프를 알아본다.
알집 파일 내부에 MATLAB코딩도 포함되어 있습니다.
목차
1. 결과 그림, 프로젝트 요약
2. 최종 결과
3. 설계 중 문제 및 해결과정
본문내용
이번 프로젝트는 MATLAB을 이용하여 M-ary QAM을 코딩하여 BER Curve그래프를 나타내는 것이다. M-ary에서 M이 바뀔 때 마다, 각 distance값이 변하는 점을 유의하여야 하고, 두 개의 basis에 대한 평면을 Real, Imagine 값으로 임의적으로 정의를 하여 나타내어 행렬로 값을 표현한다.
신호를 생성할 때 개수를 정해주고 0,1로 표현할 수 있도록 randi함수를 설정해 주어야 한다. 0,1로 표현하는 것을 유의한다. received data는 신호에 Noise가 더해진 것이므로 Noise를 randn함수를 이용하여 표현하고 이를 기존 신호에 더해주면 된다. reshape함수와 floor 함수, dec2bin 등 MATLAB 기존 함수들을 이용하여 식을 표현하는 것이 식을 구성하는데 조금 더 쉬울수 있음을 유의하여 프로젝트를 작성하였다.
<중략>
그리고 index 행렬 차원을 맞춰 줄 때 64-QAM과 256-QAM 점의 개수가 다르기 때문에 한축당 필요한 점의 개수가 달라 64-QAM일 때는 8개, 256-QAM일 때는 16개의 Gray-Code 값이 필요 한 것을 알 수 있었다.
그리고 16-QAM, 64-QAM, 256-QAM을 한 스크립트에 표현 하려고 하다 보니 if문이 필요하다는 것을 알 수 있었고 if문을 M의 값과 Bit Error Rate 값에 설정하여 M이 16, 64, 256 일 때 각각의 값을 표현 할 수 있도록 설정하였다.
그것을 Subplot으로 하나의 창에 3개의 그래프가 다 들어올 수 있도록 설정하여 프로젝트 값을 추출 하였다.
이번 프로젝트를 통해 QAM을 컴퓨터 상으로 어떻게 표현하는지 그리고 Gray Code를 표현할 때 XOR연산자를 쓰면 유용하다는 점과 basis 2개를 이용하여 좌표를 나타낼 때, 행렬 차원에서는 값이 섞이지 않도록 실수값과 허수값으로 basis를 각각 구분하여 좌표를 나타내는 점, 그리고 행렬 차원에서 값들을 어떻게 바꿔가며 좌표를 표현 할 수 있는지에 대해 많이 배워가게 되는 것 같다.
참고 자료
없음
압축파일 내 파일목록
graycode1.PNG
M-ary QAM Simulation 결과보고서.hwp
QAM_Simulation.m
결과사진.jpg
이론그림.PNG
16qam 변복조.PNG
16-qam그림.PNG
graycode.PNG