An update on this project...
Im open to other ideas or thoughts good or bad...
Ive gotten 3 of the 4 dishes up and going, they are manually positioned to check out the LNBs and cabling... they work great, but ive had to position them manually with the handcrank.
Now i need to clarify that these dishes will be moved around on the top of a Military S-280 Shelter(s) so they need lots of sensors and capability because they will not be in a fixed location, so everything has to work from an unknown position..
Ive built a PWM (Pulse Width Modulation) circuit and implemented a control Daemon using a Raspberry PI. each dish has a raspberry pi attached to it, and the PI integrates the dishes individual GPS (Furuno GN-79A), AZ, EL, POL Position sensors, Electronic compass, Tilt sensors and limit sensors. The sensors were all already there with the existing AVL controller that i removed (i don't have the control box). I built a custom interface board for the PI to plug into the existing sensors..
There is a custom protocol designed to allow the PI Daemon and the Client to interact
Some key features..
- Everything is connected via the network (video of course is via coax...for now)
- The client software is very flexible and allows control over 4 dishes at once.. (Each on its own thread)
- The client OR dish can compute the proper AZ, EL, POL from its real time gps coords.
- Client can monitor GPS stream from the Dishes or have a local one
- Satellite Details and Positions updated via the web (my website for now)
- GPS Satellite Time can be displayed as a "room clock"
- Real time dish position monitoring and updates (stationary or moving) with 1' precision
Future possibilities..
- being able to move the dish via DiSEqC ( i need to understand more how that all works...got the docs, but not the time)
- Other ideas?
OVERVIEW OF THE CLIENT
GPS Monitoring Screen, shows the current state of the GPS with a Pseudo polar chart indicating sky position (its buggy now). But lets me know the state of the GPS connection being used. This comes from either a locally attached GPS to the client, or one of the GPS interfaces on the dishes over the network.
To position the dish, you simple select the satellite via the dropdown and the client will compute the proper az, el, pol based on the GPS current position. these are then placed in the "Target" fields, and as the dish moves, the "Current" values will change. When the dish is positioned you can "bump" the position buy the up-down arrows on the field. If the client doesnt have a GPS position itself, the client will send the satellite lon to the dish and the dish will compute the necessary az, el, pol itself from its own gps. If the case GPS isnt yet fixed, then the dish tells the client its waiting for it..
This clock is based on the GPS time, although it seems rather obvious, im getting correct time here for accuracy.. system clocks depend on Internet NTP, and this is here to allow clock even without the internet. (plus its just cool)
This is a listing of the satellite name at the Longitude position. This is updated via a webpage on my website which is a simple XML file. i have not really decided what else to put in here, so now its just names and positions...
What else should i put here??
This shows statistics and debug information from the Raspberry Pi, just anything that would be needed to figure out how the pi is running.. Temps, memory, etc..