-
Notifications
You must be signed in to change notification settings - Fork 0
Home
CES-GSS is a satellite tracking and mission planning application. It tracks up to three days worth of satellite passes for user defined missions: where a user mission is a group of selected satellite passes each with their own priority for tracking. The system asks the user to select one satellite at a time and give it a priority or leave the priority at default ( neither low nor high priority). Once the user has met the selection criteria, the satellite passes are scheduled using one of three scheduling algorithms. These passes are displayed on the "next passes" table along with the missions currently selected shown on the "missions" table. Each mission may be deleted from within the table which results in the satellites being rescheduled and the new schedule displayed. There is also an output to CSV for the current schedule for use in reporting or use with other software.
Microsoft Visual C++ Build Tools (for pyephem)
Erlang (may require Microsoft Redistributable C libraries)
RabbitMQ (for Celery)
Node (for front end)
Libraries required can be downloaded using the requirements.pip file in the CES-Ground-Station folder using the command:
pip install -r requirements.pip
Additionally the libraries can be installed individually.
Django (1.11) - pip install Django
Django REST (3.6.2) - pip install djangorestframework
CORS (2.0.2) - pip install django-cors-headers
Celery (3.2.1) - pip install django-celery
Requests (2.13.0) - pip install requests
PyEphem (3.7.6.0) - pip install pyephem
Tweepy (3.5.0) - pip install tweepy
PySerial (3.3) - pip install pyserial
From a command line, go to the CES-Ground-Station folder and run the command
CESGSS all
This will open three command line windows. To also open the site use CESGSS all site
. The first runs Celery, the asynchronous task manager. The second runs Node, the server which hosts the Angular GUI. And the final one starts the Ground Station Django app (the back end).
To open the terminals individually run:
-
CESGSS celery
for just the Celery Terminal -
CESGSS node
for just the Node Server -
CESGSS django
for just the Django Server
Add the -c
flag at the end of the command to open the individual server in the currently open command line window.
To view the app in action, open a web browser and go to "http://localhost:8081", or using the batch file, run the CESGSS site
command.
Alteratively, each server can be started manually:
- Django :
python manage.py runserver
- Celery:
celery -A cesGroundStation worker
- Node:
- Go to CES-Ground-Station/frontend/client
node server
- Webpage: The webpage can be found at
localhost:8081
1. Celery isn't starting, complains about cookies, but I have installed RabbitMQ and Erlang installed. What do I do?
First check RabbitMQ is actually running. You can do this by starting Task Manager, and click the Services tab.
RabbitMQ works with Erlang, and it validates cookies with Erlang first, sometimes the cookies can be different. Go to the erlang installation folder (probably "C:/Program Files/erl8.3") copy the ".erlang.cookie" file and paste it in your user directory ("C:/Users/Me").
From a command line go to the RabbitMQ installation folder and find the sbin folder ("C:\Program Files\RabbitMQ Server\rabbitmq_server-3.6.8\sbin") and run the command:
rabbitmqctl status
If you get something with a lot of curly brackets, RabbitMQ is now working properly.