Project MK8: Radio Telescope Pointing software
Here are pointing/tracking scripts to steer the telescope and track celestial objects. The target you have to select can be the sun, the moon, jupiter, other planets or a well known star.
When running the script,it sends every second the azimuth and altutude angle of the target to a communication port of the PC.
The date and the time is retrieved from the PC. Your motor controller has to convert the the angle data to a speed of the motors.
Further you have to fill in your longitude and latitude location.
The in-accuracy is smaller than 1 arc second; this is 0.00027 degrees. Even milli-arcsecond accuracy is claimed when compared to the Naval Observatory's NOVAS library!see https://github.com/brandon-rhodes/pyephem/issues/7
Every second new pointing values are given, but you can change that to some other interval.
The scripts are written in Python-xy and can be found here https://code.google.com/p/pythonxy/wiki/Downloads.
Included is the an editor called "spider". Programming is like "Basic" in old times. Further you have to add/run the module called pyephem -18.104.22.168.win32-py2.7.exe (md5) from here; https://pypi.python.org/pypi/pyephem/
Finally add the serial module pyserial -2.7.win32_py3k.exe from here; http://sourceforge.net/projects/pyserial/files/pyserial/2.7/
This script is here:ephem11, and lookes like this:
Fig.1 - Python Ephem.
If your controller wants to see a different format then you can change that in the script.
To test it you use two PC's; one with this program running and via a so called zero modem cable the signal goes to the second PC. (Via a null modem cable the send pins from PC1 are connected to the receive pins of PC2 and vice versa; easy to make yourself, google it.) On this second PC you run Hyperterminal with the right settings for instance; 9600 b/s, 8 databits, 1 stopbit, parity; none, flowcontrol; none.
The output looks like this;
Fig.2 - Hyperterminal sample output.
If you want to input the RADEC coordinates of any object you can use radec to azel, and lookes like this:
Fig.1 - Python Radec to Azel.
Sometimes you want the dish not to move (or you have no tracking motor), and let the rotation of the earth do the work. Then it is handy to get the reverse information. You have pointed your telescope to an Azimuth and Elevation angle, and you want to know what RADEC it is looking at. If you want to know that, just fill in the azimuth and elevation, your location, and the date and time in the next script; azel to radec static; it looks like this:
Fig.1 - Python AZEL to RADEC Static.
If you want an update of the RADEC every second you can use this script; azel to radec dynamic; it looks like this:
Fig.1 - Python AZEL to RADEC Dynamic.
Michiel Klaassen november 2014