Ubuntu17.04 srsLTE 安裝教程
2017年6月27日星期二
很久以前,SRS公司的srsLTE只包含物理層下行鏈路功能,srsUE則是一個全協議棧的SDR UE平臺。最近SRS公司基於OpenLTE開發了一個全協議棧的ENB平臺,並把ENB和UE平臺整合到了srsLTE裏面。所以目前srsLTE平臺是包含了全協議棧的ENB和UE平臺,全協議棧的意思就是說srsLTE平臺裏面的ENB和UE可以直接跟商用手機、商用基站通信。
本博客主要講解基於Ubuntu17.04 srsLTE的安裝和運行方法。
一 srsENB安裝
1. 安裝Ubuntu 17.04系統
可以利用U盤製作安裝盤,安裝過程中注意分區。
2. 安裝配置vim,git等常用工具
sudo apt-get install update
sudo apt-get install vim
sudo apt-get install git
git config --global user.name “your name”
git config --global user.email “your email”
3. 安裝UHD
sudo apt-get install libboost-all-devlibusb-1.0-0-dev python-mako doxygen python-docutils python-requests cmakebuild-essential
git clone git://github.com/EttusResearch/uhd.git
cd uhd; mkdir host/build; cd host/build
cmake -DCMAKE_INSTALL_PREFIX=/usr ..
make -j4
sudo make install
sudo ldconfig
sudo /usr/lib/uhd/utils/uhd_images_downloader.py
安裝完UHD後先找一個USRP對UHD進行測試,如果執行uhd_find_devices能找到相應的USRP設備,則說明UHD安裝成功,安裝UHD的過程結束,下面幾行不用再看。
如果出現uhd庫只能在root權限下調用,比如你只能使用sudo uhd_find_devices才能找到相應的USRP設備,則可以執行
cd /usr/lib/uhd/utils
sudo cp uhd-usrp.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules
sudo udevadm trigger
4. 下載srsLTE源碼
git clone https://github.com/srsLTE/srsLTE
5. 安裝依賴庫
sudo apt-get install libfftw3-dev libmbedtls-devlibboost-all-dev libconfig++-dev libsctp-dev
6. 編譯
cd srsLTE
mkdir build
cd build
cmake ../
make srsenb
二 srsUE安裝
srsENB和srsUE可以安裝在同一臺電腦上,也可以安裝在不同的電腦上。建議安裝在不同的電腦上,這樣運行時實時性較好。
安裝srsUE的方法基本與安裝srsENB一樣。但是最後編譯時需要把makesrsenb 換成 make srsue。
1. 安裝Ubuntu 17.04系統
可以利用U盤製作安裝盤,安裝過程中注意分區。
2. 安裝配置vim,git等常用工具
sudo apt-get install update
sudo apt-get install vim
sudo apt-get install git
git config --global user.name “your name”
git config --global user.email “your email”
3. 安裝UHD
sudo apt-get install libboost-all-devlibusb-1.0-0-dev python-mako doxygen python-docutils python-requests cmakebuild-essential
git clone git://github.com/EttusResearch/uhd.git
cd uhd; mkdir host/build; cd host/build
cmake -DCMAKE_INSTALL_PREFIX=/usr ..
make -j4
sudo make install
sudo ldconfig
sudo /usr/lib/uhd/utils/uhd_images_downloader.py
安裝完UHD後先找一個USRP對UHD進行測試,如果執行uhd_find_devices能找到相應的USRP設備,則說明UHD安裝成功,安裝UHD的過程結束,下面幾行不用再看。
如果出現uhd庫只能在root權限下調用,比如你只能使用sudo uhd_find_devices才能找到相應的USRP設備,則可以執行
cd /usr/lib/uhd/utils
sudo cp uhd-usrp.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules
sudo udevadm trigger
4. 下載srsLTE源碼
git clone https://github.com/srsLTE/srsLTE
5. 安裝依賴庫
sudo apt-get install libfftw3-dev libmbedtls-devlibboost-all-dev libconfig++-dev libsctp-dev
6. 編譯
cd srsLTE
mkdir build
cd build
cmake ../
make srsue
三 運行方法
因爲srsENB和srsUE是全協議棧的ENB和UE,要讓srsUE能成功接入srsENB搭建的無線網,還額外需要一個EPC。但是SRS公司目前沒有開源的EPC,所以我們可以使用OAI的EPC。OAI的EPC搭建過程可以參考http://blog.csdn.net/jxwxg/article/details/73744702。
3.1 srsENB
1. 進入可執行文件目錄,可以看到srsENB的可執行文件srsenb
cd srsLTE/build/srsenb/src
2. 複製配置文件到srsenb所在目錄
cp ../../../srsenb/*.example .
3. 更改配置文件名稱(把名稱後面的“.example”去掉)
mv sib.conf.example sib.conf
mv rr.conf.example rr.conf
mv enb.conf.example enb.conf
mv drb.conf.example drb.conf
4. vim打開enb.conf,對srsENB進行配置。
具體配置參見配置文件裏面的解釋,不用更改配置文件srsUE和srsENB也能成功連接。常用的配置是在enb.conf中打開圖形界面。
[gui]
enable = false
更改爲
[gui]
enable = true
此外還需要在enb.conf中配置MME的地址與OAI MME的地址一致。enb.conf中更改MME的地址如下所示。(把127.0.1.100改爲你MME的地址)
mme_addr = 127.0.1.100
5. 啓動srsENB
sudo ./srsenb enb.conf
3.2 srsUE
1. 進入可執行文件目錄,可以看到srsUE的可執行文件srsue
cd srsLTE/build/srsue/src
2. 複製配置文件到srsue所在目錄
cp ../../../srsue/ue.conf.example .
3. 更改配置文件名稱(把名稱後面的“.example”去掉)
mv ue.conf.example ue.conf
4. vim打開ue.conf,對srsUE進行配置。
具體配置參見配置文件裏面的解釋,不用更改配置文件srsUE和srsENB也能成功連接。常用的配置是在ue.conf中打開圖形界面。
[gui]
enable = false
更改爲
[gui]
enable = true
此外,如果把rx_gain = 50 註釋掉,則srsUE會自動調整接收增益。
rx_gain = 50
更改爲
#rx_gain = 50
5. 啓動srsUE
sudo ./srsue ue.conf
運行成功的效果請參考博客http://blog.csdn.net/jxwxg/article/details/73603577。
上述步驟較多,難免有錯。如果上述教程中有任何問題,請在評論區備註,謝謝!