This commit is contained in:
Timur A. Fatkhullin 2025-11-02 14:38:44 +03:00
parent c0f274cec0
commit 6fc0b8bb4e
2 changed files with 18 additions and 6 deletions

View File

@ -95,9 +95,13 @@ Asibfm700Mount::error_t Asibfm700Mount::initMount()
logInfo("{} prohibited zones were added successfully", pz_num);
auto mpars = _mountConfig.movingModelParams();
logInfo("");
logInfo("Setup slewing and tracking parameters ...");
auto st_err = setSlewingParams(_mountConfig.movingModelParams());
mpars.slewRateX = _mountConfig.getValue<mcc::MccAngle>("hwMaxRateHA").value_or(0.0);
mpars.slewRateY = _mountConfig.getValue<mcc::MccAngle>("hwMaxRateDec").value_or(0.0);
auto st_err = setSlewingParams(mpars);
if (st_err) {
errorLogging(" An error occured while setting slewing parameters: ", st_err);
}
@ -201,7 +205,8 @@ Asibfm700Mount::error_t Asibfm700Mount::initMount()
logInfo("Start updating telemetry data");
} else {
auto err = lastUpdateError();
logError("Cannot update telemetry data (err = {} [{}])!", err.message(), err.category().name());
logError("Cannot update telemetry data (err = {} [{}, {}])!", err.message(), err.value(),
err.category().name());
}
return mcc::MccGenericMountErrorCode::ERROR_OK;

View File

@ -256,8 +256,6 @@ public:
// re-implements SlewModelT::slewToTarget to fetch input target coordinates from intermediate buffer
error_t slewToTarget(bool slew_and_stop = false)
{
*_mountStatus = mount_status_t::SLEWING;
auto err = TelemetryT::setPointingTarget(_enteredTargetCoordiniates);
if (err) {
*_mountStatus = mount_status_t::ERROR;
@ -265,12 +263,21 @@ public:
return mcc_deduce_error_code(err, MccGenericMountErrorCode::ERROR_SET_TARGET);
}
*_mountStatus = mount_status_t::SLEWING;
auto s_err =
mcc_deduce_error_code(SlewModelT::slewToTarget(slew_and_stop), MccGenericMountErrorCode::ERROR_MOUNT_SLEW);
if (s_err) {
*_mountStatus = mount_status_t::ERROR;
return s_err;
}
if (slew_and_stop) {
*_mountStatus = mount_status_t::IDLE;
}
return mcc_deduce_error_code(SlewModelT::slewToTarget(slew_and_stop),
MccGenericMountErrorCode::ERROR_MOUNT_SLEW);
return s_err;
}
error_t trackTarget()