This repository contains relatively simple GRC blocks to improve averaging of noisy radio astronomy spectra, in a manner resistant to short term interference.
-
grc - directory of GRC xml files, which provide an iterface between GRC and the new python code
-
python - directory of python functions implimenting median filtering (with decimation) of spectra and observing interfaces.
-
examples - directory of test GRC programs and the observing interface.
-
images - directory of images for documenting the code
Note that a data directory will be created when recording data.
http://www.opensourceradiotelescopes.org/wk
The executables are in the examples directory.
The GRC files are:
-
vectordemo.grc - Simple test block comparing the simulated data after averaging and medianing (no data source needed).
-
Integrate_test.grc - More complicated test function using all blocks in the NsfIntegrate Designs except the Osmosdr block.
-
NsfIntegrate60.grc - Block configured to use an AIRSPY mini with 6.0 MHz bandwidth for Radio Astronomy Observations
-
NsfIntegrate20.grc - Block configured to use an RTL SDR dongle with 2.0 MHz bandwidth for Radio Astronomy Observations
-
eventdetect.grc - Event detection demonstration graph.
-
eventwrite.grc - Event detection with writing of events and logging a summary.
The '*.ast' files contain example spectral line observations.
The '*.hot' files contains hot-load calibration observations. The NsfIntegrate blocks can overwrite these files.
Configuration files are used to record some input parameters and allow restarting tests and survey observations.
- Watch60.conf is a configuration file for the NsfIntegrate60.grc AIRSPY 6.0 MHz observing block
- Watch20.conf is a configuration file for the NsfIntegrate20.grc RTLSDR 2.0 MHz observing block
The Watch.not is a Note File describing the astronomical setup. This file also contains a spectrum observation, as the goal of the data header is to allow a complete re-observation, based on the previous header values.
cd examples
export PYTHONPATH=../python:$PYTHONPATH
and update your ~/.gnuradio/config.conf file with this path:
[grc]
local_blocks_path = ./:../grc
Finally run the GRC files:
gnuradio-companion vectordemo.grc
or
gnuradio-companion NsfIntegrate60.grc
To start observing. This graph assumes you have an AIRSPY mini. If you have a different device, you'll have to edit the graph with the appropriate configuration.
The hardkernel.com Odriod XU4 octa-core processor can capture all 6 MHz of data from an AIRSPY-mini, if the 2 GHz processors are selected. After recreating the design on your local computer using GRC, then exit and run python from the command line.
The linux 'taskset' command can be used to select the 2 GHz processors (number 4,5,6 and 7) and one slower processor:
taskset -c 7,6,5,4,3 python NsfIntegrate60.py
You can use the top command to see which processes are using the CPU on your computer.
Move all the other processes to other cores with the taskset commands like:
taskset -pc 0 process-id
Where process-id is one of the higher cpu usage processes on your device.
Figure 1 of LightWork Memo 20: Overview of our place in the Milky Way Galaxy (Left) and 10 Minutes of Observations of the Perseus Arm. The sketch at left shows our Sun (and us) far from the center of the Milky Way. The image was drawn as if we are way above our galaxy. Our galaxy is a disk and the coordinate of the center of our galaxy is at Galactic Longitude = 0. The galactic longitude, latitude coordinates are centered on us. The plot at right shows 9 beautiful minutes of data. With some research, you can figure out that you’ve discovered the Perseus Arm of our Galaxy. The plot shows calibrated intensity (Kelvins) versus the velocity of the hydrogen measured. The observations were taken with telescope Azimuth=180 degrees, and different Elevations (A,E =). The GRC block calculates the Longitude and Latitude (L,L=) for the time of the observations (21:06 to 21:15 UTC).
One key science goal for radio astronomy is detection of flash events. These events originate for distant astronomical sources and radio flashed created when very high energy cosmic rays strike the Earth's atmosphere.
http://www.opensourceradiotelescopes.org/wk
Glen Langston -- glen.i.langston@gmail.com -- 2019 January 20