Changed how the part position is calculated.
This commit is contained in:
@@ -2713,10 +2713,15 @@ namespace Meade.net.Telescope.UnitTests
|
|||||||
_sharedResourcesWrapperMock.Verify(x => x.SendChar(command, false), Times.Once);
|
_sharedResourcesWrapperMock.Verify(x => x.SendChar(command, false), Times.Once);
|
||||||
}
|
}
|
||||||
|
|
||||||
[Test]
|
[TestCase("A", true)]
|
||||||
public void Tracking_Get_WhenDefault_ThenIsTrue()
|
[TestCase("P", true)]
|
||||||
|
[TestCase("L", false)]
|
||||||
|
public void Tracking_Get_WhenGetsValue_ThenIsExpectedResult(string alignmentMode, bool expectedResult)
|
||||||
{
|
{
|
||||||
Assert.That(_telescope.Tracking, Is.True);
|
ConnectTelescope();
|
||||||
|
_testProperties.AlignmentMode = alignmentMode;
|
||||||
|
|
||||||
|
Assert.That(_telescope.Tracking, Is.EqualTo(expectedResult));
|
||||||
}
|
}
|
||||||
|
|
||||||
//[TestCase(true)]
|
//[TestCase(true)]
|
||||||
|
|||||||
@@ -1107,14 +1107,7 @@ namespace ASCOM.Meade.net
|
|||||||
return Retry(6, () =>
|
return Retry(6, () =>
|
||||||
{
|
{
|
||||||
LogMessage("AlignmentMode Get", $"Sending Ack code.");
|
LogMessage("AlignmentMode Get", $"Sending Ack code.");
|
||||||
const char ack = (char)6;
|
var alignmentString = GetAlignmentString();
|
||||||
//ACK <0x06> Query of alignment mounting mode.
|
|
||||||
//Returns:
|
|
||||||
//A If scope in AltAz Mode
|
|
||||||
//D If scope is currently in the Downloader[Autostar II & Autostar]
|
|
||||||
//L If scope in Land Mode
|
|
||||||
//P If scope in Polar Mode
|
|
||||||
var alignmentString = SharedResourcesWrapper.SendChar(ack.ToString());
|
|
||||||
AlignmentModes alignmentMode;
|
AlignmentModes alignmentMode;
|
||||||
switch (alignmentString)
|
switch (alignmentString)
|
||||||
{
|
{
|
||||||
@@ -1189,6 +1182,19 @@ namespace ASCOM.Meade.net
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private string GetAlignmentString()
|
||||||
|
{
|
||||||
|
const char ack = (char)6;
|
||||||
|
//ACK <0x06> Query of alignment mounting mode.
|
||||||
|
//Returns:
|
||||||
|
//A If scope in AltAz Mode
|
||||||
|
//D If scope is currently in the Downloader[Autostar II & Autostar]
|
||||||
|
//L If scope in Land Mode
|
||||||
|
//P If scope in Polar Mode
|
||||||
|
var alignmentString = SharedResourcesWrapper.SendChar(ack.ToString());
|
||||||
|
return alignmentString;
|
||||||
|
}
|
||||||
|
|
||||||
private AlignmentStatus GetScopeAlignmentStatus()
|
private AlignmentStatus GetScopeAlignmentStatus()
|
||||||
{
|
{
|
||||||
LogMessage("GetScopeAlignmentStatus", "Started");
|
LogMessage("GetScopeAlignmentStatus", "Started");
|
||||||
@@ -2251,14 +2257,16 @@ namespace ASCOM.Meade.net
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
LogMessage("Park", $"Parking LX200 Classic");
|
LogMessage("Park", $"Calculating Park Alt Az");
|
||||||
|
var siteLatitude = SiteLatitude;
|
||||||
|
var parkAlt = AlignmentMode == AlignmentModes.algAltAz ? 0 : 90 - siteLatitude;
|
||||||
|
var parkAz = siteLatitude >= 0 ? 180 : 0;
|
||||||
|
|
||||||
|
LogMessage("Park", $"Parking LX200 Classic");
|
||||||
Tracking = false;
|
Tracking = false;
|
||||||
|
|
||||||
LogMessage("Park", $"Calculating Park Altitude");
|
LogMessage("Park", $"Slewing to park position az:{parkAz} alt:{parkAlt}");
|
||||||
var parkAlt = AlignmentMode == AlignmentModes.algAltAz ? 0 : 90 - SiteLatitude;
|
SlewToAltAz(parkAz, parkAlt, false);
|
||||||
LogMessage("Park", $"Slewing to park position az:0 alt:{parkAlt}");
|
|
||||||
SlewToAltAz(0, parkAlt, false);
|
|
||||||
LogMessage("Park", $"Arrived at park position");
|
LogMessage("Park", $"Arrived at park position");
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -3542,6 +3550,11 @@ namespace ASCOM.Meade.net
|
|||||||
var alignmentStatus = GetScopeAlignmentStatus();
|
var alignmentStatus = GetScopeAlignmentStatus();
|
||||||
isTracking = alignmentStatus.Tracking;
|
isTracking = alignmentStatus.Tracking;
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
var alignmentString = GetAlignmentString();
|
||||||
|
isTracking = alignmentString != "L";
|
||||||
|
}
|
||||||
|
|
||||||
LogMessage("Tracking", $"Get = {isTracking}");
|
LogMessage("Tracking", $"Get = {isTracking}");
|
||||||
return isTracking;
|
return isTracking;
|
||||||
|
|||||||
Reference in New Issue
Block a user