LIDAR docs

This commit is contained in:
alex
2016-10-16 21:58:14 +01:00
parent 97344b508b
commit ca1f62ee74
2 changed files with 61 additions and 39 deletions

View File

@@ -21,51 +21,64 @@ Signal Server is a very resource intensive multicore application. Only publish i
Additional programs/scripts will be required to prepare inputs such as .sdf tiles (srtm2sdf.c), 3D antenna patterns (.ant) and user defined clutter (.udt) or manipulate the bitmap output (.ppm). More information can be found in the SPLAT! project. Additional programs/scripts will be required to prepare inputs such as .sdf tiles (srtm2sdf.c), 3D antenna patterns (.ant) and user defined clutter (.udt) or manipulate the bitmap output (.ppm). More information can be found in the SPLAT! project.
## Installation ## Installation
```sh
$ make
``` ```
make
```
## Test
```
./test.sh
```
## Parameters ## Parameters
``` ```
---| Signal Server 2.80 |--- Version: Signal Server 2.94 (Built for 64 DEM tiles at 1200 pixels)
RF propagation simulator by Alex Farrant, 2E0TDW License: GNU General Public License (GPL) version 2
Set for 64 tiles at 1200 pixels/degree
REFERENCE DATA Radio propagation simulator by Alex Farrant QCVS, 2E0TDW
-sdf Directory containing SRTM derived .sdf tiles Based upon SPLAT! by John Magliacane, KD2BD
-lid WGS84 ASCII grid tile (LIDAR) with dimensions and resolution defined in header
-udt User defined CSV clutter file Usage: signalserver [data options] [input options] [output options] -o outputfile
INPUT
Data:
-sdf Directory containing SRTM derived .sdf DEM tiles
-lid ASCII grid tile (LIDAR) with dimensions and resolution defined in header
-udt User defined point clutter as decimal co-ordinates: 'latitude,longitude,height'
-clt MODIS 17-class wide area clutter in ASCII grid format
Input:
-lat Tx Latitude (decimal degrees) -70/+70 -lat Tx Latitude (decimal degrees) -70/+70
-lon Tx Longitude (decimal degrees) -180/+180 -lon Tx Longitude (decimal degrees) -180/+180
-txh Tx Height (above ground) -txh Tx Height (above ground)
-rla (Optional) Rx Latitude for PPA (decimal degrees) -70/+70 -rla (Optional) Rx Latitude for PPA (decimal degrees) -70/+70
-rlo (Optional) Rx Longitude for PPA (decimal degrees) -180/+180 -rlo (Optional) Rx Longitude for PPA (decimal degrees) -180/+180
-f Tx Frequency (MHz) 20MHz to 100GHz (LOS after 20GHz) -f Tx Frequency (MHz) 20MHz to 100GHz (LOS after 20GHz)
-erp Tx Effective Radiated Power (Watts) -erp Tx Effective Radiated Power (Watts) including Tx+Rx gain
-rxh Rx Height(s) (optional. Default=0.1) -rxh Rx Height(s) (optional. Default=0.1)
-rxg Rx gain dBi (optional for text report)
-hp Horizontal Polarisation (default=vertical) -hp Horizontal Polarisation (default=vertical)
-gc Ground clutter (feet/meters) -gc Random ground clutter (feet/meters)
-m Metric units of measurement -m Metric units of measurement
-te Terrain code 1-6 (optional) -te Terrain code 1-6 (optional)
-terdic Terrain dielectric value 2-80 (optional) -terdic Terrain dielectric value 2-80 (optional)
-tercon Terrain conductivity 0.01-0.0001 (optional) -tercon Terrain conductivity 0.01-0.0001 (optional)
-cl Climate code 1-6 (optional) -cl Climate code 1-6 (optional)
OUTPUT Output:
-dbm Plot Rxd signal power instead of field strength -dbm Plot Rxd signal power instead of field strength
-rt Rx Threshold (dB / dBm / dBuV/m) -rt Rx Threshold (dB / dBm / dBuV/m)
-o Filename. Required. -o Filename. Required.
-R Radius (miles/kilometers) -R Radius (miles/kilometers)
-res Pixels per tile. 300/600/1200/3600 (Optional. LIDAR res is defined within the tile) -res Pixels per tile. 300/600/1200/3600 (Optional. LIDAR res is within the tile)
-pm Propagation model. 1: ITM, 2: LOS, 3: Hata, 4: ECC33, -pm Propagation model. 1: ITM, 2: LOS, 3: Hata, 4: ECC33,
5: SUI, 6: COST-Hata, 7: FSPL, 8: ITWOM, 9: Ericsson 5: SUI, 6: COST-Hata, 7: FSPL, 8: ITWOM, 9: Ericsson, 10: Plane earth
-pe Propagation model mode: 1=Urban,2=Suburban,3=Rural -pe Propagation model mode: 1=Urban,2=Suburban,3=Rural
-ked Knife edge diffraction (Already on for ITM) -ked Knife edge diffraction (Already on for ITM)
DEBUGGING Debugging:
-t Terrain greyscale background -t Terrain greyscale background
-dbg Verbose debug messages -dbg Verbose debug messages
-ng Normalise Path Profile graph -ng Normalise Path Profile graph
-haf Halve 1 or 2 (optional) -haf Halve 1 or 2 (optional)
-nothreads Turn off threaded processing -nothreads Turn off threaded processing
``` ```
### REFERENCE DATA ### REFERENCE DATA
@@ -79,16 +92,16 @@ SDF formatted tiles can be created by converting SRTM tiles (30m or 90m) in HGT
#### -lid #### -lid
##### WGS84 ASCII grid tile (LIDAR) with dimensions and resolution defined in header ##### WGS84 ASCII grid tile (LIDAR) with dimensions and resolution defined in header
LIDAR data can be used providing it is in ASCII grid format with WGS84 projection. Super tiles with up to 10000 rows by 10000 cols have been tested. Unlike a normal ASCII Grid file, this expects additional box bounds to be defined in the header as follows with this example for a 50.41km square tile. Cellsize should be in meters and co-ordinates must be in WGS84 decimal degrees. LIDAR data can be used providing it is in ASCII grid format with WGS84 projection. Resolutions up to 25cm have been tested. 2m is recommended for a good trade off. Cellsize should be in degrees and co-ordinates must be in WGS84 decimal degrees.
To load multiple tiles use commas eg. -lid tile1.asc,tile2.asc. When working large areas, multiple smaller tiles are much more efficient than a single super-tile.
``` ```
ncols 5041 ncols 2454
nrows 5041 nrows 1467
xllcorner 6.44681098949985 xllcorner -1.475333294357
yllcorner 58.1638386261566 yllcorner 53.378635095801
xurcorner 7.28124500979768 cellsize 0.000006170864
yurcorner 58.6306585538797 NODATA_value 0
cellsize 10 0 0 0 0 0 0 0 0 0 0 0 0 0 ...
NODATA_value 0
``` ```
#### -udt #### -udt

37
test.sh
View File

@@ -1,23 +1,32 @@
#!/bin/bash #!/bin/bash
mkdir test mkdir tests
RAD=10 RAD=5
MAXRAD=30 MAXRAD=40
FRQ=800 FRQ=446
ERP=20 ERP=25
echo "Running 50cm LIDAR test..."
./signalserverLIDAR -lid data/sk3587_50cm.asc -lat 53.383 -lon -1.468 -txh 8 -f 446 -erp 1 -rxh 2 -m -dbm -rt -95 -o tests/lidar_50cm -R 0.5 -t
echo "Converting to PNG..."
convert tests/lidar_50cm.ppm -transparent white -channel Alpha PNG32:tests/lidar_50cm.png
rm tests/lidar_50cm.ppm
rm tests/lidar_50cm.*cf
echo "Running soak test out to $MAXRAD"
while [ $RAD -lt $MAXRAD ]; do while [ $RAD -lt $MAXRAD ]; do
echo "Calculating $FRQ MHz @ $ERP Watts for $RAD km radius..." echo "Calculating $FRQ MHz @ $ERP Watts for $RAD km radius..."
time ./signalserver -m -d /var/SRTM3 -lat 51.47 -lon -1.50 -txh 15 -gc 2 -rxh 2 -m -dbm -rt -120 -R $RAD -erp $ERP -f $FRQ -o test/$RAD -pm 1 -res 1200 -t time ./signalserver -m -sdf data -lat 51.5 -lon -0.50 -txh 15 -rxh 2 -m -dbm -rt -100 -R $RAD -erp $ERP -f $FRQ -o tests/$RAD -pm 1 -res 1200 -t
convert test/$RAD.ppm test/$RAD.png convert tests/$RAD.ppm tests/$RAD.png
rm test/$RAD.ppm rm tests/$RAD.ppm
rm test/$RAD.*cf rm tests/$RAD.*cf
echo "Calculating $FRQ MHz @ $ERP Watts for $RAD km radius (HD mode)..." echo "Calculating $FRQ MHz @ $ERP Watts for $RAD km radius (HD mode)..."
time ./signalserverHD -m -d /var/SRTM1 -lat 51.47 -lon -1.50 -txh 15 -gc 2 -rxh 2 -m -dbm -rt -120 -R $RAD -erp $ERP -f $FRQ -o test/$RAD.hd -pm 1 -res 3600 -t time ./signalserverHD -m -sdf data -lat 51.5 -lon -0.50 -txh 15 -rxh 2 -m -dbm -rt -100 -R $RAD -erp $ERP -f $FRQ -o tests/$RAD.hd -pm 1 -res 3600 -t
convert test/$RAD.hd.ppm test/$RAD.hd.png convert tests/$RAD.hd.ppm tests/$RAD.hd.png
rm test/$RAD.hd.ppm rm tests/$RAD.hd.ppm
rm test/$RAD.*cf rm tests/$RAD.*cf
let RAD=RAD+10 let RAD=RAD+5
done done