horizonOpNav#

Executive Summary#

Converter that takes a limb message and camera information and outputs a relative position to the object. This algorithm was developed by J. Christian.

The module PDF Description contains further information on this module’s function, how to run it, as well as testing.

Message Connection Descriptions#

The following table lists all the module input and output messages. The module msg connection is set by the user from python. The msg type contains a link to the message structure definition, while the description provides information on what this message is used for.

Module I/O Messages#

Msg Variable Name

Msg Type

Description

opNavOutMsg

OpNavMsgPayload

output navigation message for relative position

cameraConfigInMsg

CameraConfigMsgPayload

camera config input message

attInMsg

NavAttMsgPayload

attitude input message

limbInMsg

OpNavLimbMsgPayload

limb input message

Class HorizonOpNav#

class HorizonOpNav : public SysModel#

The configuration structure for the horizon OpNav module.

Public Functions

void reset(uint64_t callTime) override#

This resets the module to original states.

Parameters:

callTime – The clock time at which the function was called (nanoseconds)

Returns:

void

void updateState(uint64_t callTime) override#

This method reads in the camera and circle messages and extracts navigation data from them. It outputs the heading (norm and direction) to the celestial body identified in the inertial frame. It provides the heading to the most robust circle identified by the image processing algorithm.

Parameters:

callTime – The clock time at which the function was called (nanoseconds)

Returns:

void

Public Members

Message<OpNavMsgPayload> opNavOutMsg#

[-] output navigation message for relative position

ReadFunctor<CameraConfigMsgPayload> cameraConfigInMsg#

camera config input message

ReadFunctor<NavAttMsgPayload> attInMsg#

attitude input message

ReadFunctor<OpNavLimbMsgPayload> limbInMsg#

limb input message

int32_t planetTarget#

The planet targeted (None = 0, Earth = 1, Mars = 2, Jupiter = 3 are allowed)

double noiseSF#

A scale factor to control measurement noise.

BSKLogger bskLogger = {}#

BSK Logging.