From cd4fc8a8f595650a262f71dd185c22032fc726a2 Mon Sep 17 00:00:00 2001 From: sara Date: Wed, 10 Nov 2021 19:13:23 +0100 Subject: Fading Model und Bilder --- simulation/QAM/QAM16_Simulation.png | Bin 0 -> 75755 bytes simulation/QAM/qam.grc | 6 +++--- simulation/QAM/qam.py | 6 +++--- simulation/QAM_Fading/BPSK_2021-11-10_15-49-16.png | Bin 0 -> 89114 bytes simulation/QAM_Fading/qam_fading.grc | 2 +- simulation/QAM_Fading/qam_fading.py | 11 ++++++----- 6 files changed, 13 insertions(+), 12 deletions(-) create mode 100644 simulation/QAM/QAM16_Simulation.png create mode 100644 simulation/QAM_Fading/BPSK_2021-11-10_15-49-16.png (limited to 'simulation') diff --git a/simulation/QAM/QAM16_Simulation.png b/simulation/QAM/QAM16_Simulation.png new file mode 100644 index 0000000..1342db4 Binary files /dev/null and b/simulation/QAM/QAM16_Simulation.png differ diff --git a/simulation/QAM/qam.grc b/simulation/QAM/qam.grc index ebbb7dc..d74a8fb 100644 --- a/simulation/QAM/qam.grc +++ b/simulation/QAM/qam.grc @@ -54,7 +54,7 @@ blocks: rot_sym: '4' soft_dec_lut: None sym_map: '[0, 1, 3, 2]' - type: 16qam + type: 8psk states: bus_sink: false bus_source: false @@ -463,7 +463,7 @@ blocks: affinity: '' alias: '' comment: '' - constellation: qam_const + constellation: const maxoutbuf: '0' minoutbuf: '0' states: @@ -479,7 +479,7 @@ blocks: affinity: '' alias: '' comment: '' - constellation: qam_const + constellation: const differential: 'True' excess_bw: excess_bw log: 'False' diff --git a/simulation/QAM/qam.py b/simulation/QAM/qam.py index 2b64847..8977787 100755 --- a/simulation/QAM/qam.py +++ b/simulation/QAM/qam.py @@ -90,7 +90,7 @@ class qam(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_16qam().base() + self.const = const = digital.constellation_8psk().base() self.chn_taps = chn_taps = [1.0 + 0.0j, ] ################################################## @@ -443,14 +443,14 @@ class qam(gr.top_block, Qt.QWidget): self.digital_diff_decoder_bb_0 = digital.diff_decoder_bb(4) self.digital_costas_loop_cc_0 = digital.costas_loop_cc(phase_bw, 4, False) self.digital_constellation_modulator_0 = digital.generic_mod( - constellation=qam_const, + constellation=const, differential=True, samples_per_symbol=sps, pre_diff_code=True, excess_bw=excess_bw, verbose=False, log=False) - self.digital_constellation_decoder_cb_0 = digital.constellation_decoder_cb(qam_const) + self.digital_constellation_decoder_cb_0 = digital.constellation_decoder_cb(const) self.digital_cma_equalizer_cc_0 = digital.cma_equalizer_cc(eq_ntaps, eq_mod, eq_gain, 2) self.channels_channel_model_0 = channels.channel_model( noise_voltage=noise_volt, diff --git a/simulation/QAM_Fading/BPSK_2021-11-10_15-49-16.png b/simulation/QAM_Fading/BPSK_2021-11-10_15-49-16.png new file mode 100644 index 0000000..6ae117d Binary files /dev/null and b/simulation/QAM_Fading/BPSK_2021-11-10_15-49-16.png differ diff --git a/simulation/QAM_Fading/qam_fading.grc b/simulation/QAM_Fading/qam_fading.grc index 6986876..082e688 100644 --- a/simulation/QAM_Fading/qam_fading.grc +++ b/simulation/QAM_Fading/qam_fading.grc @@ -467,7 +467,7 @@ blocks: bus_sink: false bus_source: false bus_structure: null - coordinate: [928, 332.0] + coordinate: [960, 332.0] rotation: 0 state: true - name: digital_cma_equalizer_cc_0 diff --git a/simulation/QAM_Fading/qam_fading.py b/simulation/QAM_Fading/qam_fading.py index 9b682e9..7a7ab84 100755 --- a/simulation/QAM_Fading/qam_fading.py +++ b/simulation/QAM_Fading/qam_fading.py @@ -497,7 +497,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, False, 4.0, 0, (0.0,0.1,1.3), (1,0.99,0.97), 8 ) + self.channels_fading_model_0 = channels.fading_model( 8, 10.0/samp_rate, False, 4.0, 0 ) self.channels_channel_model_0 = channels.channel_model( noise_voltage=noise_volt, frequency_offset=freq_offset, @@ -532,13 +532,13 @@ class qam_fading(gr.top_block, Qt.QWidget): self.connect((self.blocks_unpack_k_bits_bb_0, 0), (self.blocks_char_to_float_0, 0)) self.connect((self.blocks_unpack_k_bits_bb_0_0, 0), (self.blocks_char_to_float_0_0, 0)) self.connect((self.blocks_unpack_k_bits_bb_0_1, 0), (self.blocks_char_to_float_0_1, 0)) - self.connect((self.channels_channel_model_0, 0), (self.channels_selective_fading_model_0, 0)) + self.connect((self.channels_channel_model_0, 0), (self.channels_fading_model_0, 0)) self.connect((self.channels_channel_model_0, 0), (self.digital_pfb_clock_sync_xxx_0_0, 0)) self.connect((self.channels_channel_model_0, 0), (self.qtgui_const_sink_x_0, 1)) self.connect((self.channels_channel_model_0, 0), (self.qtgui_freq_sink_x_0, 1)) - self.connect((self.channels_selective_fading_model_0, 0), (self.digital_pfb_clock_sync_xxx_0, 0)) - self.connect((self.channels_selective_fading_model_0, 0), (self.qtgui_const_sink_x_0, 0)) - self.connect((self.channels_selective_fading_model_0, 0), (self.qtgui_freq_sink_x_0, 0)) + self.connect((self.channels_fading_model_0, 0), (self.digital_pfb_clock_sync_xxx_0, 0)) + self.connect((self.channels_fading_model_0, 0), (self.qtgui_const_sink_x_0, 0)) + self.connect((self.channels_fading_model_0, 0), (self.qtgui_freq_sink_x_0, 0)) self.connect((self.digital_cma_equalizer_cc_0, 0), (self.digital_costas_loop_cc_0, 0)) self.connect((self.digital_cma_equalizer_cc_0, 0), (self.qtgui_const_sink_x_1, 0)) self.connect((self.digital_cma_equalizer_cc_0_0, 0), (self.digital_costas_loop_cc_0_0, 0)) @@ -607,6 +607,7 @@ class qam_fading(gr.top_block, Qt.QWidget): def set_samp_rate(self, samp_rate): self.samp_rate = samp_rate self.blocks_throttle_0.set_sample_rate(self.samp_rate) + self.channels_fading_model_0.set_fDTs(10.0/self.samp_rate) self.qtgui_freq_sink_x_0.set_frequency_range(0, self.samp_rate) self.qtgui_freq_sink_x_2_1.set_frequency_range(0, self.samp_rate) self.qtgui_time_sink_x_0.set_samp_rate(self.samp_rate) -- cgit v1.2.1