In 2008, Travis Goodspeed received a healthy dose of inspiration in the form of a presentation given by Adam Laurie on how to map Ku-band satellite downlinks. He recreated the system he witnessed in the presentation and was amused, but notes that the obvious shortcoming of this system was that it could only monitor stationary satellites due to the fact that the dish was also stationary.
Travis wanted to be able to track moving satellites, so he set out to modify a naval telecommunications dish for the purpose. This dish should be perfect for the task, as it was designed to compensate for ship movement in real time. The dish, a Felcom 82B, would lock onto a stationary satellite and use gyroscopes to sense the directional changes of the base. Travis wanted it to do the complete opposite, however -- he needed to track the satellites as they traveled along their path. This meant a complete re-engineering of the control system.
For motor control, Travis is using a BeagleBone going through a stepper motor controller called the EiBotBoard. The BeagleBone is collecting data and sending it inside to server for processing. That data is then displayed in a pretty graphical manner accessible both via web and on his phone.
Handling that data is pretty interesting as well. He is actually using publicly available data on satellite position and path to predict their position to begin tracking. He then uses several scripts to compare the dish position and angle and make adjustments if necessary, then log the resulting data.
Since he's located several hours away from the dish, he's also made some modifications to allow for re-calibration remotely. Marks were made inside the dish corresponding to certain times of the day and a webcam was added. He can now make proper adjustments to make sure his sensors and motors are all aligned as they should be without a two-day trip involved.
If you would like to see more, including the scripts he used and more photos, check out his build documentation.