[Moon] Realtime Moon Tracking - Linux

Zach Leffke zleffke at vt.edu
Mon Jan 21 04:54:29 CET 2019


Hi Berndt,

Yeah, PyEphem and Skyfield are just python packages for use in a larger 
python program.  They are not completed programs that simply work out of 
the box.  That being said, if you are familiar with python programming, 
they are fairly easy to implement.  They can easily be installed with 
'pip' and there are lots of examples online of how to use them.  Took me 
a minute to find it, but here is an example that I wrote for Lunar tracking:

https://github.com/vt-gs/tracking/blob/master/dev/lunar_track.py

Feed in ground station coordinates via the command line flag and it will 
print the lunar az/el to the terminal.


The part that it doesn't do is output to a real time tracking 
controller.  At Virginia Tech we are using Spid Big-RAS/HR rotators with 
MD-01 controllers.  We interface to them over TCP and have created a 
custom tracking daemon that talks to the MD-01 on one side (TCP) and 
listens for custom control commands from a GUI program on the other side 
(also TCP, but about to be upgraded to use the RabbitMQ message passing 
protocol).  The GUI program (not the daemon) can also listen to tracking 
commands from Gpredict (which we also use), reformat the message 
according to our custom protocol, and send them to the daemon for 
automated tracking.  Somewhere buried in there is an 'md01.py' file that 
is the interface to the MD01 (for things like sending pointing commands, 
stop motion, get feedback, etc.) and 'md01_thread.py' that is the larger 
MD01 control thread within the tracking daemon.  In 'md01.py' there is a 
'set_position()' command for feeding in the azimuth and elevation to the 
MD01.

So if one were to glue 'lunar_track.py' and 'md01.py' together, it would 
allow real time updates to the MD01 to stay 'locked' on the moon.  
Alternatively, it probably wouldn't be too difficult to add a UDP socket 
directly into 'lunar_track.py' and have it emit a packet every time it 
recomputes pointing angles.  If you have a controller that already works 
with something like GPredict, then instead of using 'md01.py' you could 
emulate the Gpredict protocol on the UDP output.


So....all of that is a long way of saying....if you are looking to write 
your own program, and like python, then the repo above and the various 
scripts within, might be helpful and at least get you started.  One 
disclaimer though......everything in the above repo is fairly old and 
got pretty bloated and clunky and is about to undergo a major re-write 
this semester as we are overhauling the VT Ground Station core network 
this year.


Hope this helps!

-Zach, KJ4QLP

Research Associate
Aerospace Systems Lab
Ted & Karyn Hume Center for National Security & Technology
Virginia Polytechnic Institute & State University
Work Phone: 540-231-4174
Cell Phone: 540-808-6305

On 1/20/2019 7:47 AM, Berndt Wulf via Moon wrote:
> G'day Zach,
>
> many thanks for your reply. I'll have a read of the PyEphem and 
> Skyfield documentation in the next few days.
>
> I'm looking for software that can control a antenna positioner in 
> realtime or provide AZ/EL position data via a network socket, e.g. UPD.
>
> 73, Berndt
>
> VK5ABN
>
> On 20/1/19 4:04 pm, Zach Leffke via Moon wrote:
>> Hi Berndt,
>>
>> A year ago, I would have recommended PyEphem.  PyEphem is a Python 
>> package that can track astronomical objects (including sun and moon) 
>> as well as satellites (via TLEs).  I've used it a lot for various 
>> projects, mainly for satellites, and it has been as accurate as any 
>> other software on Linux (i've compared my programs against GPredict, 
>> and get the same results).
>>
>> https://rhodesmill.org/pyephem/
>>
>>
>> If you go to that link the lead developer has posted a note about the 
>> deprecation of PyEphem.  This is news to me.  It still exists and 
>> will continue to receive updates for compatibility, but he is no 
>> longer working on it.  It looks like he has endeavored on a complete 
>> re-write for a newer better package called Skyfield. I have yet to 
>> dive in, but based on my experiences with PyEphem and how happy I've 
>> been with it, for new projects I plan to use Skyfield instead.
>>
>> https://rhodesmill.org/skyfield/
>>
>>
>> Good luck!
>>
>> -Zach, KJ4QLP
>>
>> Research Associate
>> Aerospace Systems Lab
>> Ted & Karyn Hume Center for National Security & Technology
>> Virginia Polytechnic Institute & State University
>> Work Phone: 540-231-4174
>> Cell Phone: 540-808-6305
>>
>> On 1/19/2019 10:30 PM, Berndt Josef Wulf via Moon wrote:
>>> G'day,
>>>
>>> I'm looking for Moon real time tracking software that runs on Linux
>>> (Ubuntu), preferably with source code. The majority of software found
>>> so far support Windows only.
>>>
>>> I use GPredict for satellite tracking, but to my surprise it doesn't
>>> support Lunar and Solar tracking.
>>>
>>> 73, Berndt
>>> VK5ABN
>>>
>>> _______________________________________________
>>> Moon mailing list
>>> Moon at moonbounce.info
>>> /mailman/listinfo/moon
>>>
>>> Join eQSL.cc  https://eqsl.cc/qslcard/Index.cfm
>> _______________________________________________
>> Moon mailing list
>> Moon at moonbounce.info
>> /mailman/listinfo/moon
>>
>> Join eQSL.cc  https://eqsl.cc/qslcard/Index.cfm
> _______________________________________________
> Moon mailing list
> Moon at moonbounce.info
> /mailman/listinfo/moon
>
> Join eQSL.cc  https://eqsl.cc/qslcard/Index.cfm


More information about the Moon mailing list