Added more places to initialise the slewing settle delay

This commit is contained in:
2021-02-28 20:03:19 +00:00
parent e9491da707
commit 136ccc8fa9
+8 -2
View File
@@ -1866,6 +1866,7 @@ namespace ASCOM.Meade.net
case "0": case "0":
//We're slewing everything should be working just fine. //We're slewing everything should be working just fine.
LogMessage("DoSlewAsync", "Slewing to target"); LogMessage("DoSlewAsync", "Slewing to target");
SetSlewingMinEndTime();
break; break;
case "1": case "1":
//Below Horizon //Below Horizon
@@ -1901,7 +1902,7 @@ namespace ASCOM.Meade.net
{ {
throw new InvalidOperationException("fault"); throw new InvalidOperationException("fault");
} }
SetSlewingMinEndTime();
break; break;
} }
}); });
@@ -1978,7 +1979,7 @@ namespace ASCOM.Meade.net
var isSlewing = GetSlewing(); var isSlewing = GetSlewing();
if (isSlewing) if (isSlewing)
_earliestNonSlewingTime = _clock.UtcNow + GetTotalSlewingSettleTime(); SetSlewingMinEndTime();
else if (_clock.UtcNow < _earliestNonSlewingTime) else if (_clock.UtcNow < _earliestNonSlewingTime)
isSlewing = true; isSlewing = true;
@@ -1987,6 +1988,11 @@ namespace ASCOM.Meade.net
} }
} }
private void SetSlewingMinEndTime()
{
_earliestNonSlewingTime = _clock.UtcNow + GetTotalSlewingSettleTime();
}
private TimeSpan GetTotalSlewingSettleTime() private TimeSpan GetTotalSlewingSettleTime()
{ {
return TimeSpan.FromSeconds( SlewSettleTime + ProfileSettleTime ); return TimeSpan.FromSeconds( SlewSettleTime + ProfileSettleTime );