gpredict
gpredict copied to clipboard
Rotator controller: improve tracking with flips(go smooth near zenith).
Rotators with 180+ degrees of elevation are capable to go near/through zenith smoothly, without large azimuth rotations. It's useful to keep antenna direction in tolerance limits.
One example to test is FO-29 pass over Moscow/Vnukovo at 18-06-07T17:03+03. I use "rotctld -m 1 --set-conf=min_az=0,max_az=360,max_el=180 -vvvvvv".
Central angle logic(first commit) is needed to implement smooth zenith flip. I'm not sure it makes sense to use the first commit alone. It's also an option to use central_angle() only for rotators with flip support, I'm not sure which way is better.
I'm also thinking about futher improvements in set_flipped_pass()/is_flipped_pass():
- If next pass doesn't go through the end stop we are free to use flip to minimize rotator movement and time to catch next satellite.
- If I'm right it's possible to simplify/refactor is_flipped_pass() using new shortest_azimuth_path()/stoppos_bypass_angle() functions.
Hi @bychek
Thanks for the patch. I am very busy at the moment, so it may take a while before I can review your patches. My original plan was to work on gpredict again around September/October and I don't think I will have much time before that, sorry.