
bladeRF के लिए रीयल-टाइम GPS सिग्नल सिम्युलेटर
बहुत मोटा प्रयोगात्मक कार्यान्वयन gps-sdr-sim का वास्तविक समय सिग्नल उत्पादन के लिए। कोड bladeRF के साथ काम करता है और Windows 10 तथा Ubuntu 20.04 पर परीक्षण किया गया है।
Usage: bladegps [options]
Options:
-e <gps_nav> RINEX navigation file for GPS ephemerides (required)
-y <yuma_alm> YUMA almanac file for GPS almanacs
-u <user_motion> User motion file (dynamic mode)
-g <nmea_gga> NMEA GGA stream (dynamic mode)
-l <location> Lat,Lon,Hgt (static mode) e.g. 35.274,137.014,100
-t <date,time> Scenario start time YYYY/MM/DD,hh:mm:ss
-T <date,time> Overwrite TOC and TOE to scenario start time
-d <duration> Duration [sec] (max: 86400)
-x <XB_number> Enable XB board, e.g. '-x 200' for XB200
-i Interactive mode: North='w', South='s', East='d', West='a'
-I Disable ionospheric delay for spacecraft scenario
-p Disable path loss and hold power level constant
Nuand wiki पृष्ठ पर दिए गए निर्देशों का पालन करें और Windows Desktop के लिए Visual Studio 2013 Express के साथ स्रोत से bladeRF लाइब्रेरी बनाएँ। मान लें कि आपने पहले ही pthread और libusb फ़ाइलें डाउनलोड कर ली हैं और अपने Windows वातावरण के लिए bladeRF लाइब्रेरी को सफलतापूर्वक बनाया है।
Configuration Properties -> C/C++ -> General -> Additional Include Directories में निम्नलिखित फ़ोल्डरों के पथ जोड़ें:
Configuration Properties -> Linker -> General -> Additional Library Directories में निम्नलिखित फ़ोल्डरों के पथ जोड़ें:
Configuration Properties -> Linker -> Input -> Additional Dependencies में अतिरिक्त लाइब्रेरीज़ का नाम निर्दिष्ट करें:
Build -> Build Solution चलाएँसफल बिल्ड के बाद, आप Release फ़ोल्डर में निष्पादन योग्य पा सकते हैं। कोड चलाने के लिए आपको निम्नलिखित DLLs की प्रतियाँ उसी फ़ोल्डर में रखनी चाहिए:
वर्तमान निर्देशिका के बगल में एक निर्देशिका में bladeRF स्रोत प्राप्त करें
$ cd ..
$ git clone [email protected]:Nuand/bladeRF.git
bladeRF होस्ट लाइब्रेरी बनाएँ
$ cd bladeRF/host
$ mkdir build
$ cd build
$ cmake ..
$ make
bladeGPS बनाएँ
$ cd ../../../bladeGPS
$ make
Xcode स्थापित करें
Xcode कमांड लाइन टूल्स स्थापित करें
$ xcode-select --install
MacPorts स्थापित करें
port के लिए एक सिमलिंक बनाएँ
$ sudo ln -s /opt/local/bin/port /usr/local/bin/port
bladeRF स्थापित करें
$ sudo port install bladeRF +tecla
cmake स्थापित करें
$ sudo port install cmake
वर्तमान निर्देशिका के बगल में एक निर्देशिका में bladeRF स्रोत प्राप्त करें
$ cd ..
$ git clone [email protected]:Nuand/bladeRF.git
bladeRF होस्ट लाइब्रेरी बनाएँ
$ cd bladeRF/host
$ mkdir build
$ cd build
$ cmake ..
$ make && sudo make install
libomp और wget स्थापित करें
$ sudo port install libomp
$ sudo port install wget
_MACOSX के लिए OpenMP पथ के साथ संकलित करें और bladeGPS बनाएँ
$ cd ../../../bladeGPS
$ make CFLAGS=”-I/opt/local/include/libomp _MACOSX”
एक Dockerfile Ubuntu 20.04 इमेज से बनाया गया था जो आपको सेकंडों में एक डॉकर कंटेनर चालू करने की अनुमति देता है।
डॉकर इमेज बनाएँ
$ cd docker
$ docker build -t bladegps .
bladegps कमांड सीधे चलाएँ
$ docker run -it --rm --privileged --device /dev/ttyUSB0 bladegps \
/bin/bash -c "bladegps -e /opt/bladeGPS/brdc3300.18n -l 35.274,137.014,100 -d 86400"
डॉकर CLI से bladegps कमांड चलाएँ
$ docker run -it --rm --privileged --device /dev/ttyUSB0 bladegps /bin/bash
bladegps@cb744220dea3:~$ bladegps -e /opt/bladeGPS/brdc3300.18n -l 35.274,137.014,100 -d 86400
एक docker-compose.yml उदाहरण प्रदान किया गया है, यदि आप bladegps को एक सेवा के रूप में चलाना चाहते हैं, जो अवधि समाप्त होने पर पुनः आरंभ होता है। docker-compose का उपयोग करके सेवा शुरू करने से पहले कमांड और डिवाइस नाम संपादित करें।
डॉकर-कंपोज़ सेवा को पृष्ठभूमि में चलाएँ
$ cd docker
$ docker-compose up -d
डॉकर-कंपोज़ प्रक्रिया स्थिति जाँचें
$ docker-compose ps
यदि चाहें, तो सेवा चला रहे कंटेनर से कनेक्ट करें
$ docker-compose exec bladegps /bin/bash
समाप्त होने पर सेवा को बंद करें
$ docker-compose down
Copyright © 2015-2022 Takuji Ebinuma
MIT License के अंतर्गत वितरित।