aboutsummaryrefslogtreecommitdiffstats
path: root/simulation/QAM_Fading/qam_fading.py
diff options
context:
space:
mode:
authorsara <sara.halter@gmx.ch>2021-12-07 19:07:40 +0100
committersara <sara.halter@gmx.ch>2021-12-07 19:07:40 +0100
commit9b42aa27102a90050bb48bfe27c6479ccc34baf1 (patch)
tree8a238792928ece019d6e26dffd723adb14befef1 /simulation/QAM_Fading/qam_fading.py
parentAn GUI weitergearbeitet (diff)
downloadFading-9b42aa27102a90050bb48bfe27c6479ccc34baf1.tar.gz
Fading-9b42aa27102a90050bb48bfe27c6479ccc34baf1.zip
FIR Filter Statistical model weiter implementiert
Diffstat (limited to 'simulation/QAM_Fading/qam_fading.py')
-rwxr-xr-xsimulation/QAM_Fading/qam_fading.py20
1 files changed, 18 insertions, 2 deletions
diff --git a/simulation/QAM_Fading/qam_fading.py b/simulation/QAM_Fading/qam_fading.py
index 30f2262..29991e1 100755
--- a/simulation/QAM_Fading/qam_fading.py
+++ b/simulation/QAM_Fading/qam_fading.py
@@ -36,6 +36,7 @@ from argparse import ArgumentParser
from gnuradio.eng_arg import eng_float, intx
from gnuradio import eng_notation
from gnuradio.qtgui import Range, RangeWidget
+import numpy as np
from gnuradio import qtgui
@@ -80,6 +81,7 @@ class qam_fading(gr.top_block, Qt.QWidget):
self.excess_bw = excess_bw = 350e-3
self.timing_loop_bw = timing_loop_bw = 2 * 3.141592653589793 / 100
self.time_offset = time_offset = 1.0
+ self.test = test = 1
self.samp_rate = samp_rate = 32000
self.rrc_taps = rrc_taps = firdes.root_raised_cosine(nfilts, nfilts, 1.0/float(sps), excess_bw, 45*nfilts)
self.phase_bw = phase_bw = 2 * 3.141592653589793 / 100
@@ -88,7 +90,8 @@ class qam_fading(gr.top_block, Qt.QWidget):
self.eq_ntaps = eq_ntaps = 15
self.eq_mod = eq_mod = 1
self.eq_gain = eq_gain = .01
- self.const = const = digital.constellation_qpsk().base()
+ self.const = const = digital.constellation_calcdist([-1-1j, -1+1j, 1+1j, 1-1j], [0, 1, 3, 2],
+ 4, 1).base()
self.chn_taps = chn_taps = [1.0 + 0.0j, ]
##################################################
@@ -165,6 +168,13 @@ class qam_fading(gr.top_block, Qt.QWidget):
self.params_grid_layout_1.setRowStretch(r, 1)
for c in range(0, 1):
self.params_grid_layout_1.setColumnStretch(c, 1)
+ self._test_range = Range(1, 30, 1, 1, 200)
+ self._test_win = RangeWidget(self._test_range, self.set_test, 'test', "counter_slider", int)
+ self.params_grid_layout_0.addWidget(self._test_win, 1, 2, 1, 1)
+ for r in range(1, 2):
+ self.params_grid_layout_0.setRowStretch(r, 1)
+ for c in range(2, 3):
+ self.params_grid_layout_0.setColumnStretch(c, 1)
self.qtgui_time_sink_x_0 = qtgui.time_sink_f(
1024, #size
samp_rate, #samp_rate
@@ -456,7 +466,7 @@ class qam_fading(gr.top_block, Qt.QWidget):
self.digital_constellation_decoder_cb_0 = digital.constellation_decoder_cb(const)
self.digital_cma_equalizer_cc_0_0 = digital.cma_equalizer_cc(eq_ntaps, eq_mod, eq_gain, 2)
self.digital_cma_equalizer_cc_0 = digital.cma_equalizer_cc(eq_ntaps, eq_mod, eq_gain, 2)
- self.channels_selective_fading_model_0 = channels.selective_fading_model( 8, 0, True, 4, 0, (0,0.3e-6), (1,0.39), 3 )
+ self.channels_selective_fading_model_0 = channels.selective_fading_model( 8, 0, False, 4, 0, [(np.pi)], [(1)], 8 )
self.channels_channel_model_0 = channels.channel_model(
noise_voltage=noise_volt,
frequency_offset=freq_offset,
@@ -558,6 +568,12 @@ class qam_fading(gr.top_block, Qt.QWidget):
self.time_offset = time_offset
self.channels_channel_model_0.set_timing_offset(self.time_offset)
+ def get_test(self):
+ return self.test
+
+ def set_test(self, test):
+ self.test = test
+
def get_samp_rate(self):
return self.samp_rate