0.4.1
Loading...
Searching...
No Matches
TimeOutputs.hpp
Go to the documentation of this file.
1
// This file is part of INSTINCT, the INS Toolkit for Integrated
2
// Navigation Concepts and Training by the Institute of Navigation of
3
// the University of Stuttgart, Germany.
4
//
5
// This Source Code Form is subject to the terms of the Mozilla Public
6
// License, v. 2.0. If a copy of the MPL was not distributed with this
7
// file, You can obtain one at https://mozilla.org/MPL/2.0/.
8
9
/// @file TimeOutputs.hpp
10
/// @brief Binary Group 2 - Time Outputs
11
/// @author T. Topp (topp@ins.uni-stuttgart.de)
12
/// @date 2021-07-01
13
14
#pragma once
15
16
#include <cstdint>
17
18
#include <vn/types.h>
19
#include "
util/Vendor/VectorNav/VectorNavTypes.hpp
"
20
21
namespace
NAV::vendor::vectornav
22
{
23
/// @brief Binary Group 2 - Time Outputs
24
struct
TimeOutputs
25
{
26
/// @brief Available data in this struct
27
vn::protocol::uart::TimeGroup
timeField
= vn::protocol::uart::TimeGroup::TIMEGROUP_NONE;
28
29
/// @brief Time since startup.
30
///
31
/// The system time since startup measured in nano seconds. The time since startup is based upon the internal
32
/// TXCO oscillator for the MCU. The accuracy of the internal TXCO is +/- 20ppm (-40C to 85C).
33
uint64_t
timeStartup
{};
34
35
/// @brief Absolute GPS time.
36
///
37
/// The absolute GPS time since start of GPS epoch 1980 expressed in nano seconds.
38
uint64_t
timeGps
{};
39
40
/// @brief Time since start of GPS week.
41
///
42
/// The time since the start of the current GPS time week expressed in nano seconds.
43
uint64_t
gpsTow
{};
44
45
/// @brief GPS week.
46
///
47
/// The current GPS week.
48
uint16_t
gpsWeek
{};
49
50
/// @brief Time since last SyncIn trigger.
51
///
52
/// The time since the last SyncIn event trigger expressed in nano seconds.
53
uint64_t
timeSyncIn
{};
54
55
/// @brief Time since last GPS PPS trigger.
56
///
57
/// The time since the last GPS PPS trigger event expressed in nano seconds.
58
uint64_t
timePPS
{};
59
60
/// @brief UTC time.
61
///
62
/// The current UTC time. The year is given as a signed byte year offset from the year 2000. For example the
63
/// year 2013 would be given as year 13.
64
UTC
timeUtc
{};
65
66
/// @brief SyncIn trigger count.
67
///
68
/// The number of SyncIn trigger events that have occurred.
69
uint32_t
syncInCnt
{};
70
71
/// @brief SyncOut trigger count.
72
///
73
/// The number of SyncOut trigger events that have occurred.
74
uint32_t
syncOutCnt
{};
75
76
/// @brief Time valid status flags.
77
///
78
/// Time valid status flags.
79
///
80
/// Fields: timeOk | dateOk | utcTimeValid | resv | resv | resv | resv | resv
81
/// Bit Offset: 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7
82
///
83
/// Name | Description
84
/// ------------ | ----------------------------------
85
/// timeOk | 1 - GpsTow is valid.
86
/// dateOk | 1 - TimeGps and GpsWeek are valid.
87
/// utcTimeValid | 1 - UTC time is valid.
88
/// resv | Reserved for future use.
89
TimeStatus
timeStatus
{};
90
};
91
92
}
// namespace NAV::vendor::vectornav
VectorNavTypes.hpp
Type Definitions for VectorNav messages.
NAV::vendor::vectornav::TimeStatus
The VPE status bitfield.
Definition
VectorNavTypes.hpp:43
NAV::vendor::vectornav
Definition
AttitudeOutputs.hpp:23
NAV::vendor::vectornav::TimeOutputs
Binary Group 2 - Time Outputs.
Definition
TimeOutputs.hpp:25
NAV::vendor::vectornav::TimeOutputs::gpsWeek
uint16_t gpsWeek
GPS week.
Definition
TimeOutputs.hpp:48
NAV::vendor::vectornav::TimeOutputs::timeUtc
UTC timeUtc
UTC time.
Definition
TimeOutputs.hpp:64
NAV::vendor::vectornav::TimeOutputs::syncOutCnt
uint32_t syncOutCnt
SyncOut trigger count.
Definition
TimeOutputs.hpp:74
NAV::vendor::vectornav::TimeOutputs::gpsTow
uint64_t gpsTow
Time since start of GPS week.
Definition
TimeOutputs.hpp:43
NAV::vendor::vectornav::TimeOutputs::timeField
vn::protocol::uart::TimeGroup timeField
Available data in this struct.
Definition
TimeOutputs.hpp:27
NAV::vendor::vectornav::TimeOutputs::timeGps
uint64_t timeGps
Absolute GPS time.
Definition
TimeOutputs.hpp:38
NAV::vendor::vectornav::TimeOutputs::timeSyncIn
uint64_t timeSyncIn
Time since last SyncIn trigger.
Definition
TimeOutputs.hpp:53
NAV::vendor::vectornav::TimeOutputs::timeStartup
uint64_t timeStartup
Time since startup.
Definition
TimeOutputs.hpp:33
NAV::vendor::vectornav::TimeOutputs::timeStatus
TimeStatus timeStatus
Time valid status flags.
Definition
TimeOutputs.hpp:89
NAV::vendor::vectornav::TimeOutputs::syncInCnt
uint32_t syncInCnt
SyncIn trigger count.
Definition
TimeOutputs.hpp:69
NAV::vendor::vectornav::TimeOutputs::timePPS
uint64_t timePPS
Time since last GPS PPS trigger.
Definition
TimeOutputs.hpp:58
NAV::vendor::vectornav::UTC
Storage class for UTC Time.
Definition
VectorNavTypes.hpp:89
src
util
Vendor
VectorNav
BinaryOutputs
TimeOutputs.hpp
Generated by
1.13.2