Stap 6: Experimenteren: beperking van het lawaai met een zwevend gemiddelde
Een zwevend gemiddelde (bijvoorbeeld met lengte 8) neemt de laatste 8 metingen en gemiddelde hen. Als het geluid willekeurig is hopen wij dat het zal gemiddeld uit tot in de buurt van 0. Uitvoeren van het experiment met: sim_logging.experiment_showing_noise(). Uitgang van een grafiek.
Mogelijke conclusies:
- Een zwevend gemiddelde elimineert een groot deel van het lawaai
- Hoe langer de bewegende gemiddelde de meer ruisonderdrukking
- De meer voortschrijdend gemiddelde kan verminderen en verstoren van het signaal
De code:
# ------------------------------------------------ def experiment_with_moving_average( self ): print """ Experiment with MovingAverage Looking at different MovingAverage by changing the length. All have the same noise. """ # ------------------------------------------------ self.start_plot( plot_title = "MovingAverage-Part 1/2: No Moving Average" ) self.add_sensor_data( name = "ave len=0", amplitude = 1., noise_amp = .1, delta_t = .1, max_t = 10., run_ave = 0, trigger_value = 0 ) self.show_plot( ) self.start_plot( plot_title = "MovingAverage-Part 2/2: Len 8 and 32" ) self.add_sensor_data( name = "ave len=8", amplitude = 1., noise_amp = .1, delta_t = .1, max_t = 10., run_ave = 8, trigger_value = 0 ) self.add_sensor_data( name = "ave len=32", amplitude = 1., noise_amp = .1, delta_t = .1, max_t = 10., run_ave = 32, trigger_value = 0 ) self.show_plot( )