A few years ago when the amateur satellite AO-51 transmitted a beacon message on the 50th anniversary of Sputnik, it was enough to rekindle my interest in amateur radio (which had lain dormant for nearly a decade) and got me working amateur satellites. On April 16, 17 and 18, there is an Echoes of Apollo/Moonbounce day scheduled, which is a celebration of all things radio-lunar. EME or Moonbounce communications has always fascinated me, but has seemed very far out of reach of the small HOA limited antennas that I might be able to deploy. But this year, the radio observatory at Arecibo, Puerto Rico will be active, and its a really, really big antenna. There has been some traffic on the Moon Net mailing list that people have successfully received these signals using smallish yagi antennas, so I think I am going to give it a try.
K1JT posted the predicted hours of operation for Arecibo, so the question became “where will the moon be at that time?” My idea is to tripod mount an 10 or 12 element Yagi and aim it in the rough direction, and try to do some field recording using my FT-817 and a laptop. I was curious as to what elevation I would need, and it would be good to make sure that no buildings obscured my view.
I could have used any of a number of astronomy software programs, or even Google Earth (and Sky) or the Microsoft World Wide Telescope. But I’m a bit of a homebrewer when it comes to calculation, and I like having nice tabular data. So, I rapidly coded up this little python program which uses the PyEphem library:
#!/usr/bin/env python import sys import os import optparse import ephem from math import degrees from datetime import date, datetime h = ephem.Observer() m = ephem.Moon() # K1JT mentioned these as likely times for moonbounce operations # from the Arecibo Radio Observatory in Puerto Rico... datetimes = [('2010/4/16 16:45', '2010/4/16 19:30'), ('2010/4/17 17:40', '2010/4/17 20:20'), ('2010/4/18 18:40', '2010/4/18 21:25')] # I'm currently in grid CM87ux, which is centered here. me = ephem.Observer() me.lat, me.long = ('37.979166666666671', '-122.29166666666666') moon = ephem.Moon() print " MOON LOCATION ".center(55, "=") print ("Observer at %.2f, %.2f" % (degrees(me.lat), degrees(me.long))).center(55, '-') print for sd, ed in datetimes: sd = ephem.Date(sd) ed = ephem.Date(ed) me.date = sd print "Time (UTC) Time (Local) Alt Az " print "--------------------+---------------------+-----------+" while me.date <= ed: moon.compute(me) print "%02d/%02d/%02d %02d:%02d:%02d |" % me.date.tuple(), lt = ephem.localtime(me.date) print "%02d/%02d/%02d %02d:%02d:%02d |" % (lt.year, lt.month, lt.day, lt.hour, lt.minute, lt.second), print '%4.1f %5.1f|' % (degrees(moon.alt), degrees(moon.az)) me.date = ephem.Date(me.date + 5 * ephem.minute) print "--------------------+---------------------+-----------+" print
Running this produced the following table for my home location:
==================== MOON LOCATION ==================== ---------------Observer at 37.98, -122.29-------------- Time (UTC) Time (Local) Alt Az --------------------+---------------------+-----------+ 2010/04/16 16:44:59 | 2010/04/16 09:44:59 | 23.8 80.1| 2010/04/16 16:49:59 | 2010/04/16 09:49:59 | 24.7 80.8| 2010/04/16 16:54:59 | 2010/04/16 09:54:59 | 25.7 81.4| 2010/04/16 16:59:59 | 2010/04/16 09:59:59 | 26.6 82.1| 2010/04/16 17:04:59 | 2010/04/16 10:04:59 | 27.6 82.8| 2010/04/16 17:09:59 | 2010/04/16 10:09:59 | 28.5 83.4| 2010/04/16 17:14:59 | 2010/04/16 10:14:59 | 29.5 84.1| 2010/04/16 17:19:59 | 2010/04/16 10:19:59 | 30.4 84.8| 2010/04/16 17:24:59 | 2010/04/16 10:24:59 | 31.4 85.5| 2010/04/16 17:29:59 | 2010/04/16 10:29:59 | 32.4 86.2| 2010/04/16 17:34:59 | 2010/04/16 10:34:59 | 33.3 86.9| 2010/04/16 17:39:59 | 2010/04/16 10:39:59 | 34.3 87.6| 2010/04/16 17:44:59 | 2010/04/16 10:44:59 | 35.3 88.3| 2010/04/16 17:49:59 | 2010/04/16 10:49:59 | 36.2 89.0| 2010/04/16 17:54:59 | 2010/04/16 10:54:59 | 37.2 89.7| 2010/04/16 17:59:59 | 2010/04/16 10:59:59 | 38.1 90.4| 2010/04/16 18:04:59 | 2010/04/16 11:04:59 | 39.1 91.2| 2010/04/16 18:09:59 | 2010/04/16 11:09:59 | 40.1 91.9| 2010/04/16 18:14:59 | 2010/04/16 11:14:59 | 41.0 92.7| 2010/04/16 18:19:59 | 2010/04/16 11:19:59 | 42.0 93.5| 2010/04/16 18:24:59 | 2010/04/16 11:24:59 | 43.0 94.3| 2010/04/16 18:29:59 | 2010/04/16 11:29:59 | 43.9 95.1| 2010/04/16 18:34:59 | 2010/04/16 11:34:59 | 44.9 95.9| 2010/04/16 18:39:59 | 2010/04/16 11:39:59 | 45.8 96.7| 2010/04/16 18:44:59 | 2010/04/16 11:44:59 | 46.8 97.6| 2010/04/16 18:49:59 | 2010/04/16 11:49:59 | 47.8 98.5| 2010/04/16 18:54:59 | 2010/04/16 11:54:59 | 48.7 99.4| 2010/04/16 18:59:59 | 2010/04/16 11:59:59 | 49.7 100.3| 2010/04/16 19:04:59 | 2010/04/16 12:04:59 | 50.6 101.2| 2010/04/16 19:09:59 | 2010/04/16 12:09:59 | 51.6 102.2| 2010/04/16 19:14:59 | 2010/04/16 12:14:59 | 52.5 103.2| 2010/04/16 19:19:59 | 2010/04/16 12:19:59 | 53.4 104.2| 2010/04/16 19:24:59 | 2010/04/16 12:24:59 | 54.4 105.3| 2010/04/16 19:29:59 | 2010/04/16 12:29:59 | 55.3 106.4| --------------------+---------------------+-----------+ Time (UTC) Time (Local) Alt Az --------------------+---------------------+-----------+ 2010/04/17 17:39:59 | 2010/04/17 10:39:59 | 24.9 78.1| 2010/04/17 17:44:59 | 2010/04/17 10:44:59 | 25.9 78.7| 2010/04/17 17:49:59 | 2010/04/17 10:49:59 | 26.8 79.4| 2010/04/17 17:54:59 | 2010/04/17 10:54:59 | 27.7 80.0| 2010/04/17 17:59:59 | 2010/04/17 10:59:59 | 28.7 80.6| 2010/04/17 18:04:59 | 2010/04/17 11:04:59 | 29.6 81.3| 2010/04/17 18:09:59 | 2010/04/17 11:09:59 | 30.6 81.9| 2010/04/17 18:14:59 | 2010/04/17 11:14:59 | 31.5 82.6| 2010/04/17 18:19:59 | 2010/04/17 11:19:59 | 32.5 83.3| 2010/04/17 18:24:59 | 2010/04/17 11:24:59 | 33.4 83.9| 2010/04/17 18:29:59 | 2010/04/17 11:29:59 | 34.4 84.6| 2010/04/17 18:34:59 | 2010/04/17 11:34:59 | 35.3 85.3| 2010/04/17 18:39:59 | 2010/04/17 11:39:59 | 36.3 86.0| 2010/04/17 18:44:59 | 2010/04/17 11:44:59 | 37.3 86.6| 2010/04/17 18:49:59 | 2010/04/17 11:49:59 | 38.2 87.3| 2010/04/17 18:54:59 | 2010/04/17 11:54:59 | 39.2 88.0| 2010/04/17 18:59:59 | 2010/04/17 11:59:59 | 40.1 88.7| 2010/04/17 19:04:59 | 2010/04/17 12:04:59 | 41.1 89.5| 2010/04/17 19:09:59 | 2010/04/17 12:09:59 | 42.1 90.2| 2010/04/17 19:14:59 | 2010/04/17 12:14:59 | 43.0 90.9| 2010/04/17 19:19:59 | 2010/04/17 12:19:59 | 44.0 91.7| 2010/04/17 19:24:59 | 2010/04/17 12:24:59 | 44.9 92.5| 2010/04/17 19:29:59 | 2010/04/17 12:29:59 | 45.9 93.3| 2010/04/17 19:34:59 | 2010/04/17 12:34:59 | 46.9 94.1| 2010/04/17 19:39:59 | 2010/04/17 12:39:59 | 47.8 94.9| 2010/04/17 19:44:59 | 2010/04/17 12:44:59 | 48.8 95.7| 2010/04/17 19:49:59 | 2010/04/17 12:49:59 | 49.7 96.6| 2010/04/17 19:54:59 | 2010/04/17 12:54:59 | 50.7 97.4| 2010/04/17 19:59:59 | 2010/04/17 12:59:59 | 51.6 98.3| 2010/04/17 20:04:59 | 2010/04/17 13:04:59 | 52.6 99.3| 2010/04/17 20:09:59 | 2010/04/17 13:09:59 | 53.5 100.2| 2010/04/17 20:14:59 | 2010/04/17 13:14:59 | 54.5 101.2| 2010/04/17 20:19:59 | 2010/04/17 13:19:59 | 55.4 102.2| --------------------+---------------------+-----------+ Time (UTC) Time (Local) Alt Az --------------------+---------------------+-----------+ 2010/04/18 18:40:00 | 2010/04/18 11:40:00 | 25.8 77.7| 2010/04/18 18:45:00 | 2010/04/18 11:45:00 | 26.7 78.3| 2010/04/18 18:49:59 | 2010/04/18 11:49:59 | 27.6 79.0| 2010/04/18 18:54:59 | 2010/04/18 11:54:59 | 28.6 79.6| 2010/04/18 18:59:59 | 2010/04/18 11:59:59 | 29.5 80.3| 2010/04/18 19:04:59 | 2010/04/18 12:04:59 | 30.4 80.9| 2010/04/18 19:09:59 | 2010/04/18 12:09:59 | 31.4 81.6| 2010/04/18 19:14:59 | 2010/04/18 12:14:59 | 32.3 82.2| 2010/04/18 19:19:59 | 2010/04/18 12:19:59 | 33.3 82.9| 2010/04/18 19:24:59 | 2010/04/18 12:24:59 | 34.2 83.6| 2010/04/18 19:29:59 | 2010/04/18 12:29:59 | 35.2 84.2| 2010/04/18 19:34:59 | 2010/04/18 12:34:59 | 36.1 84.9| 2010/04/18 19:39:59 | 2010/04/18 12:39:59 | 37.1 85.6| 2010/04/18 19:44:59 | 2010/04/18 12:44:59 | 38.0 86.3| 2010/04/18 19:49:59 | 2010/04/18 12:49:59 | 39.0 87.0| 2010/04/18 19:54:59 | 2010/04/18 12:54:59 | 39.9 87.7| 2010/04/18 19:59:59 | 2010/04/18 12:59:59 | 40.9 88.4| 2010/04/18 20:04:59 | 2010/04/18 13:04:59 | 41.9 89.1| 2010/04/18 20:09:59 | 2010/04/18 13:09:59 | 42.8 89.8| 2010/04/18 20:14:59 | 2010/04/18 13:14:59 | 43.8 90.6| 2010/04/18 20:19:59 | 2010/04/18 13:19:59 | 44.7 91.3| 2010/04/18 20:24:59 | 2010/04/18 13:24:59 | 45.7 92.1| 2010/04/18 20:29:59 | 2010/04/18 13:29:59 | 46.6 92.9| 2010/04/18 20:34:59 | 2010/04/18 13:34:59 | 47.6 93.7| 2010/04/18 20:39:59 | 2010/04/18 13:39:59 | 48.6 94.5| 2010/04/18 20:44:59 | 2010/04/18 13:44:59 | 49.5 95.3| 2010/04/18 20:49:59 | 2010/04/18 13:49:59 | 50.5 96.2| 2010/04/18 20:54:59 | 2010/04/18 13:54:59 | 51.4 97.1| 2010/04/18 20:59:59 | 2010/04/18 13:59:59 | 52.4 98.0| 2010/04/18 21:04:59 | 2010/04/18 14:04:59 | 53.3 98.9| 2010/04/18 21:09:59 | 2010/04/18 14:09:59 | 54.3 99.8| 2010/04/18 21:14:59 | 2010/04/18 14:14:59 | 55.2 100.8| 2010/04/18 21:19:59 | 2010/04/18 14:19:59 | 56.1 101.8| 2010/04/18 21:24:59 | 2010/04/18 14:24:59 | 57.1 102.9| --------------------+---------------------+-----------+
From this, I determined that I could probably mount the antenna at a fixed 30 degree elevation, aimed mostly east, and I’d likely (given the width of the main lobe of my proposed antenna) be good to go, without any additional guiding.
Now, I just need to get the antenna constructed.
Mark,
Thanks for the great post – I’m looking forward to trying to cobble together some sort of yagi and seeing if I can pick up the signal myself.
Thanks,
Josh
KD8HRX
Along with Brandon Craig Rhodes I’m sure, thanks for using PyEphem (it uses libastro from my XEphem project).
Elwood