# 개발 환경
- 메인보드: [ASUS]ROG Maximus XI Hero-Wifi(Z390)
- CPU: [Intel]i7-8700
- 램: [Samsung]DDR4 21300 32G(16x2)
- 운영체제: Ubuntu 20.04
- NS3: 3.34
- GNU plot: 5.4version, QT terminal type
# 목표
NS3에서 제공하는 example code인 lena-dual-stripe.cc 를 이용하여, 아래 사진과 같은 REM 출력할 것.
REM 출력 방법은 NS3 model library에 설명서 참조해서 진행.
# REM 출력 단계
1. src/lte/examples폴더 안에 들어있는 lena-dual-stripe.cc파일을 scratch 폴더 안에 넣는다.
2. parameter 비교 및 확인
1) NS3 model library 문서에서 설정한 parameter.
2) lena-dual-stripe.cc 에서 설정되어있는 Global paramter 확인
./waf --run lena-dual-stripe --command-template="%s --PrintGlobals"
3. channel 수정(NS3 3.33인 경우)
lena-dual stripe.cc 코드를 보면 아래 사진과 같이 channel 정보가 0으로 되어있음.
"/channelList/2"로 수정되어야 Downlink channel로 설정되어, error발생하지 않음.
4. lena-dual stripe 코드를 다음 명령어를 통해 실행시킴
no-op, event3, event24
1) no-op default:
./waf --run="lena-dual-stripe --simTime=50 --nBlocks=0 --nMacroEnbSites=7 --nMacroEnbSitesX=2 --epc=1 --useUdp=0 --outdoorUeMinSpeed=16.6667 --outdoorUeMaxSpeed=16.6667 --ns3::LteHelper::HandoverAlgorithm=ns3::NoOpHandoverAlgorithm --ns3::RadioBearerStatsCalculator::DlRlcOutputFilename=no-op-DlRlcStats.txt --ns3::RadioBearerStatsCalculator::UlRlcOutputFilename=no-op-UlRlcStats.txt --ns3::PhyStatsCalculator::DlRsrpSinrFilename=no-op-DlRsrpSinrStats.txt --ns3::PhyStatsCalculator::UlSinrFilename=no-op-UlSinrStats.txt --RngRun=1" > no-op.txt
2) no-op REM Print
./waf --run="lena-dual-stripe --simTime=50 --nBlocks=0 --nMacroEnbSites=7 --nMacroEnbSitesX=2 --epc=1 --useUdp=0 --outdoorUeMinSpeed=16.6667 --outdoorUeMaxSpeed=16.6667 --ns3::LteHelper::HandoverAlgorithm=ns3::NoOpHandoverAlgorithm --ns3::RadioBearerStatsCalculator::DlRlcOutputFilename=no-op-DlRlcStats.txt --ns3::RadioBearerStatsCalculator::UlRlcOutputFilename=no-op-UlRlcStats.txt --ns3::PhyStatsCalculator::DlRsrpSinrFilename=no-op-DlRsrpSinrStats.txt --ns3::PhyStatsCalculator::UlSinrFilename=no-op-UlSinrStats.txt --RngRun=1 --generateRem=1" > no-op.txt
5. 생성 파일 확인
다음과 같은 3개의 파일들이 생성됨.
1)enbs.txt, 2)ues.txt, 3)lena-dual-stripe.rem
5. GNUPLOT 출력 코드 작성
lena-rem.cc 안에 주석처리 되어있는 코드를 참고하면 됨.
// here's a minimal gnuplot script that will plot the above:
//
// set view map;
// set term x11;
// set xlabel "X"
// set ylabel "Y"
// set cblabel "SINR (dB)"
// plot "rem.out" using ($1):($2):(10*log10($4)) with image
6. GNUPLOT 실행하기.
lena-dual-stripe.rem 파일명을 rem.out으로 변경
위 3개 파일이 저장되어있는 폴더에서 다음 명령어 실행하기.
gnuplot -p enbs.txt ues.txt GNUPLOT 출력 코드.gnu
gnuplot GNUPLOT 출력 코드.gnu
7. REM 선명도
기본 제공 코드로는 resolution이 낮아서 다음과 같이 흐리멍텅하게 나옴.
선명하게 출력하기 위해서는 resolution을 다음의 코드에서 100을 1000으로 변경필요.
remHelper->SetAttribute ("XRes", UintegerValue(100));
remHelper->SetAttribute ("YRes", UintegerValue (100));
'NS3기반 LTE 시스템 레벨 시뮬레이터 > NS-3' 카테고리의 다른 글
[NS-3][우분투 20.04][lena-rem-sector-antenna]REM Print (0) | 2021.10.12 |
---|---|
[NS-3][우분투 20.04][lena-rem]REM Print (0) | 2021.10.12 |
[NS-3][우분투 20.04]NS3 실행하기 (0) | 2021.09.07 |
[NS-3][우분투 20.04]NS3 설치 2 (waf error) (0) | 2021.08.07 |
[NS-3][우분투 20.04]NS3 설치 (0) | 2021.08.07 |
댓글