STM32: clock sync: Simple PI controller for speed adjustments; converges to +-100 usec in few minutes

This commit is contained in:
Pavel Kirienko
2014-04-12 21:21:02 +04:00
parent 67f92628a8
commit d8c37584c0
3 changed files with 28 additions and 31 deletions
@@ -166,8 +166,9 @@ int main()
}
const uavcan::UtcTime utc = uavcan_stm32::clock::getUtc();
lowsyslog("UTC %lu sec, %li corr, %lu jumps\n",
lowsyslog("UTC %lu sec Absolute error: %li usec Speed correction: %liPPM Jumps: %lu\n",
static_cast<unsigned long>(utc.toMSec() / 1000),
static_cast<long>(uavcan_stm32::clock::getPrevUtcAdjustment().toUSec()),
uavcan_stm32::clock::getUtcSpeedCorrectionPPM(),
uavcan_stm32::clock::getUtcAjdustmentJumpCount());
}