Project

General

Profile

pom component

Ports

measure (multiple in)

Data structure
  • struct ::or_pose_estimator::state measure

    • struct ::or::time::ts ts

      • long sec

      • long nsec

    • boolean intrinsic

    • optional< struct ::or::t3d::pos > pos

      • double x

      • double y

      • double z

    • optional< struct ::or::t3d::att > att

      • double qw

      • double qx

      • double qy

      • double qz

    • optional< struct ::or::t3d::vel > vel

      • double vx

      • double vy

      • double vz

    • optional< struct ::or::t3d::avel > avel

      • double wx

      • double wy

      • double wz

    • optional< struct ::or::t3d::acc > acc

      • double ax

      • double ay

      • double az

    • optional< struct ::or::t3d::aacc > aacc

      • double awx

      • double awy

      • double awz

    • optional< struct ::or::t3d::pos_cov > pos_cov

      • double cov[6]

    • optional< struct ::or::t3d::att_cov > att_cov

      • double cov[10]

    • optional< struct ::or::t3d::att_pos_cov > att_pos_cov

      • double cov[12]

    • optional< struct ::or::t3d::vel_cov > vel_cov

      • double cov[6]

    • optional< struct ::or::t3d::avel_cov > avel_cov

      • double cov[6]

    • optional< struct ::or::t3d::acc_cov > acc_cov

      • double cov[6]

    • optional< struct ::or::t3d::aacc_cov > aacc_cov

      • double cov[6]


frame (multiple out)

Data structure
  • struct ::or_pose_estimator::state frame

    • struct ::or::time::ts ts

      • long sec

      • long nsec

    • boolean intrinsic

    • optional< struct ::or::t3d::pos > pos

      • double x

      • double y

      • double z

    • optional< struct ::or::t3d::att > att

      • double qw

      • double qx

      • double qy

      • double qz

    • optional< struct ::or::t3d::vel > vel

      • double vx

      • double vy

      • double vz

    • optional< struct ::or::t3d::avel > avel

      • double wx

      • double wy

      • double wz

    • optional< struct ::or::t3d::acc > acc

      • double ax

      • double ay

      • double az

    • optional< struct ::or::t3d::aacc > aacc

      • double awx

      • double awy

      • double awz

    • optional< struct ::or::t3d::pos_cov > pos_cov

      • double cov[6]

    • optional< struct ::or::t3d::att_cov > att_cov

      • double cov[10]

    • optional< struct ::or::t3d::att_pos_cov > att_pos_cov

      • double cov[12]

    • optional< struct ::or::t3d::vel_cov > vel_cov

      • double cov[6]

    • optional< struct ::or::t3d::avel_cov > avel_cov

      • double cov[6]

    • optional< struct ::or::t3d::acc_cov > acc_cov

      • double cov[6]

    • optional< struct ::or::t3d::aacc_cov > aacc_cov

      • double cov[6]


Services

get_history_length (attribute)

Outputs
  • double history_length


set_history_length (attribute)

Inputs
  • double history_length


get_filter_period (attribute)

Outputs
  • unsigned long fperiodms Filter period (ms)


set_filter_period (attribute)

Inputs
  • unsigned long fperiodms (default "1") Filter period (ms)

Throws
  • exception ::pom::e_sys

    • short code

    • string<128> what


get_prediction_model (attribute)

Outputs
  • enum ::pom::prediction_model pmodel Prediction model ∈ { constant_velocity, constant_acceleration }


set_prediction_model (attribute)

Inputs
  • enum ::pom::prediction_model pmodel Prediction model ∈ { constant_velocity, constant_acceleration }


get_process_noise (attribute)

Outputs
  • double max_jerk Maximum jerk

  • double max_dw Maximum angular acceleration


set_process_noise (attribute)

Inputs
  • double max_jerk (default "200") Maximum jerk

  • double max_dw (default "50") Maximum angular acceleration


get_mag_field (attribute)

Outputs
  • struct ::pom::ids::mag_field magdir

    • double x X (T)

    • double y Y (T)

    • double z Z (T)

Get the expected magnetic field vector at current location.


set_mag_field (attribute)

Inputs
  • struct ::pom::ids::mag_field magdir

    • double x X (T)

    • double y Y (T)

    • double z Z (T)

Define the expected magnetic field vector at current location.

Data must be given in world frame coordinates.

Warning The service does not enforce any convention on the global frame in which data is given. The frame must be consistent with the expected frame of any absolute position and orientation measurements received by the component.

add_measurement (activity)

Inputs
  • string<128> port Input port name

  • double x (default "0") X offset (m)

  • double y (default "0") Y offset (m)

  • double z (default "0") Z offset (m)

  • double roll (default "0") roll offset (rad)

  • double pitch (default "0") pitch offset (rad)

  • double yaw (default "0") yaw offset (rad)

Throws
  • exception ::pom::e_sys

    • short code

    • string<128> what

Context

Add a measurement source.

Offset indicates the sensor position in body frame, relative to the point for which the state is estimated.


replay (activity)

Inputs
  • string<128> path (default "pom-measurements.log") Log file name

Throws
  • exception ::pom::e_sys

    • short code

    • string<128> what

Context

Replay a measurement log file


set_position (function)

Inputs
  • double x (default "0") (m)

  • double y (default "0") (m)

  • double z (default "0") (m)

  • double roll (default "0") (deg)

  • double pitch (default "0") (deg)

  • double yaw (default "0") (deg)

  • double precision (default "0.05") Position precision (m or rad)

Set the current position.

This sets the current state to the given position (meters and degrees). This is the position that will be published until new measurements arrive.

The precision is intepreted as 3 times the standard deviation.

Note If new measurements include a position or orientation measurement, they will override the state set by this function.

log_state (activity)

Inputs
  • string<64> path (default "/tmp/pom.log") Log file name

  • unsigned long decimation (default "1") Reduced logging frequency

Throws
  • exception ::pom::e_sys

    • short code

    • string<128> what

Context
  • In task io (frequency 1000.0 Hz)

Log state


log_measurements (activity)

Inputs
  • string<64> path (default "/tmp/pom-measurements.log") Log file name

Throws
  • exception ::pom::e_sys

    • short code

    • string<128> what

Context
  • In task io (frequency 1000.0 Hz)

Log measurements


log_stop (function)

Stop logging


log_info (function)

Outputs
  • double state_miss Missed log state rate

  • double measurements_miss Missed log measurements rate

Show missed log entries rate


Tasks

io

Context
Throws
  • exception ::pom::e_sys

    • short code

    • string<128> what


filter

Context
Throws
  • exception ::pom::e_sys

    • short code

    • string<128> what