Antenna Control Unit (ACU)
The Olin Satellite + Spectrum Technology and Policy Group has been developing a low-cost antenna control unit (ACU) that is capable of tracking satellites in Low Earth Orbit (LEO) and Middle Earth Orbit (MEO) with multiple modes of operation and remote control access via a graphic user interface (GUI). The ACU is an effort to increase the availability of low cost user terminal (UT) solutions as the number of communication satellite constellations continue to be deployed over the next decade. The Antenna Control Unit employs a closed loop active tracking algorithm scripted in Python that is based on signal strength to calculate the tracking path for an antenna, and it visualizes a signal-to-noise based heatmap. This algorithm allows the ACU to have a high degree of flexibility as it is able to autonomously predict its own tracking path rather than relying on real time satellite position data.
The selected tracking method developed for the alpha ACU system uses primarily a closed-loop, modified active step tracking technique coupled with two programmed steering functions: signal sweep and scheduler. A closed loop approach was chosen for simplicity of implementation and flexible set up. The developed ACU mitigates the three main disadvantages of a closed loop system (i.e. shadowing, overcorrecting, and blocking) through a combination of the modified step tracking algorithm and scheduler function. Active tracking of the satellite was handled by the unique step tracking algorithm detailed in the next paragraph whereas the two preprogrammed steering functions were implemented to improve acquisition time and accuracy. The signal strength function takes in a set of IQ signal readings from the Pluto Software Defined Radio (SDR) at a specific center frequency & wavelength, set by the Raspberry Pi upon startup. The function takes a Fast Fourier Transform (FFT) of the signal readings to convert the signal into the frequency-domain, which is then repeated 250 times and averages the result to significantly reduce noise. Finally, the function calculates the signal-to-noise ratio (SNR) as the strength of the highest peak (in dB) minus average noise value (in dB).
Radio Signal Pre-Processing
A diagram of the modified step tracking function testing signal strength difference in two axes before extrapolating an orientation trajectory
The ACU utilizes an antenna that is 60 cm in diameter and is mounted to a U-shaped frame that fits around the outer shell onto the tilt shaft. The assembly is supported by a 25 mm pole that can either be buried in the ground or mounted to the side of a house.
The electrical system of the ACU operates as the decision making and power unit: providing power, direction, and speed to the motors. A 24 Volt (V) 5 Amp (A) power supply was used for the entire system. The Raspberry Pi functions as the brains of the unit while the Pluto SDR reads the current received signal strength. Alternatively, any microcontroller that can output 3.3 V logic could have been used, including an Arduino Uno. In this scenario, a Raspberry Pi was used due to its faster compute speeds, ability to multitask, and connect wirelessly to the internet.
The ACU utilizes a signal sweep and scheduler function in the tracking algorithm. The signal sweep locates the satellite without outside position data by checking signal strength at every degree in the pan direction.
A Diagram of the Search Pattern Used in the Signal Sweep
The scheduler function utilizes orbit determination, where an orbit estimator analyzes previous orbits and determines the best fit orbit for the ACU to track. The scheduler function records movement during active tracking and then filters it to interpolate and generate an arc.
Scheduler Function Moving the Receiver Along the Saved Trajectory Path of the Satellite