This example shows the simulation of a channel impulse response (CIR) with SNACS. In this example we use the simple CIR file which was generated in Example 03.
We can use the same SNACS configuration file structure as in Example 02 we only have to insert the "snChannel" module and provide the correct CIR file name:
{ Type = "snChannel";
file = "../../examples/example_04/snacs_cir_moving_los_v01.h5";
interpolation_type = "SINC";
interpolation_bandwidth = 10.23e6;
},
The same signal is defined for both signal generation and tracking. The complete configuration file for the simulation example is given below.
You can start it by running
cd snacs/trunk/release
./SNACS-release -f ../../examples/example_04/example_04_gps.cfg
This is a screenshot of the running simulation:
SNACS screenshot of example 04
You can use the MATLAB script plot_snacs_results_example04.m to plot the results:
SNACS simulation result of Example 04
This is the complete configuration file for the simulation example:
17 sampling_frequency = 40e6;
21 conc_buf_length = 0.001;
22 buffers_per_concbuf = 2;
24 result_directory =
"/tmp/snacs-result_example04";
25 append_date_to_outdir =
false;
28 { Type =
"snSignalGenerate";
34 modulation =
"BPSK(n)";
42 file =
"../../examples/example_03/snacs_cir_moving_los_v01.h5";
43 interpolation_type =
"SINC";
44 interpolation_bandwidth = 10.23e6;
48 intermediate_frequency = 15e6;
52 vga_lowest_amplification_dB = -6.0;
53 vga_highest_amplification_dB = 42.5;
56 { Type =
"snSDRStandard";
62 modulation =
"BPSK(n)";
68 intermediate_frequency = 15e6;
69 aquisition_enable =
true;
75 aq_freq_band = 10000.0;
80 tracking_enable =
true;
85 discriminator_type =
"EML";
86 correlation_length = 0.001;
87 early_late_spacing = 1.0;
88 damping_ratio = 0.707;
89 noise_bandwidth = 5.0;
91 corr_func_samples = 13;
92 corr_func_start = -1.5;
93 corr_func_dist = 0.25;
95 write_corr_func =
false;
99 damping_ratio = 0.707;
100 noise_bandwidth = 25.0;
110 UpdateInterval = 500;
112 plot_buffer_length = 0.0001;