AFBR-S50 API Reference Manual v1.5.6
AFBR-S50 Time-of-Flight Sensor SDK for Embedded Software
Loading...
Searching...
No Matches
argus_results_t Struct Reference

The measurement results data structure. More...

#include <argus_res.h>

Collaboration diagram for argus_results_t:

Data Fields

status_t Status
 
ltc_t TimeStamp
 
argus_meas_frame_t Frame
 
union { 
 
   argus_pixel_t   Pixels [ARGUS_PIXELS+1U] 
 
   struct { 
 
      argus_pixel_t   Pixel [ARGUS_PIXELS_X][ARGUS_PIXELS_Y
 
      argus_pixel_t   PixelRef 
 
   }  
 
};  
 
argus_results_bin_t Bin
 
argus_results_aux_t Auxiliary
 
argus_results_debug_tDebug
 

Detailed Description

The measurement results data structure.


This structure contains all information obtained by a single distance measurement on the device:

  • The measurement status can be read from the Status.
  • A timing information is given via the TimeStamp.
  • Information about the frame state is in the Frame structure.
  • The 1D distance results are gathered under Bin.
  • The 3D distance results for each pixel is at Pixels or Pixel.
  • Auxiliary values such as temperature can be found at Auxiliary.
  • Raw data and debug information from the device and API is stored in the optional Debug data structure. Note that this points to an optional structure and can be null!

The pixel x-y orientation is sketched in the following graph. Note that the laser source would be on the right side beyond the reference pixel. See also ADC Channel Mapping

// Pixel Field: Pixel[x][y]
//
// 0 -----------> x
// | O O O O O O O O
// | O O O O O O O O
// | O O O O O O O O O (ref. Px)
// y O O O O O O O O
Examples
01_simple_example.c, 01_simple_example_with_hal_self_test.c, 02_advanced_example.c, 02_advanced_example_with_hal_self_test.c, 03_high_speed_example.c, 04_multi_device_example.c, and 05_simple_example_debug.c.

Field Documentation

◆ [union]

union { ... } argus_results_t

◆ Auxiliary

argus_results_aux_t argus_results_t::Auxiliary

The auxiliary ADC channel data, e.g. sensor temperature.

◆ Bin

◆ Debug

argus_results_debug_t* argus_results_t::Debug

Optional Debug Data. If the pointer is set to a argus_results_debug_t data structure before passing it to the Argus_EvaluateData function, the data structure is filled with internal parameters for debugging purposes.

◆ Frame

argus_meas_frame_t argus_results_t::Frame

The configuration for the current measurement frame.

◆ Pixel

argus_pixel_t argus_results_t::Pixel[ARGUS_PIXELS_X][ARGUS_PIXELS_Y]

Pixel data indexed by x-y-indices.

The pixels are ordered in a two dimensional array that represent the x and y indices of the pixel.

See also ADC Channel Mapping

Contains calibrated range, amplitude and pixel status among others.

◆ PixelRef

argus_pixel_t argus_results_t::PixelRef

Pixel data of the reference pixel.

The reference pixel is an additional pixel that is located at the TX side in order to monitor the health state of the laser output source. It is mainly used to verify normal operation of the laser source and preventing the system from emitting continuous laser light that exceeds the laser safety limits.

Contains calibrated range, amplitude and pixel status among others.

◆ Pixels

argus_pixel_t argus_results_t::Pixels[ARGUS_PIXELS+1U]

Pixel data indexed by channel number n.

Contains calibrated range, amplitude and pixel status among others.

Index n:

  • 0..31: active pixels
  • 32: reference pixel

See also ADC Channel Mapping

◆ Status

status_t argus_results_t::Status

The status of the current measurement frame.

  • 0 (i.e. STATUS_OK) for a good measurement signal.
  • > 0 for warnings and weak measurement signal.
  • < 0 for errors and invalid measurement signal.
Examples
01_simple_example.c, 01_simple_example_with_hal_self_test.c, 02_advanced_example.c, 02_advanced_example_with_hal_self_test.c, and 04_multi_device_example.c.

◆ TimeStamp

ltc_t argus_results_t::TimeStamp

Time in milliseconds (measured since the last MCU startup/reset) when the measurement was triggered.

Examples
01_simple_example.c, 01_simple_example_with_hal_self_test.c, 02_advanced_example.c, 02_advanced_example_with_hal_self_test.c, 03_high_speed_example.c, and 04_multi_device_example.c.

The documentation for this struct was generated from the following file: