Ports

rotor_input (out)

Data structure
  • struct ::or_rotorcraft::input rotor_input

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

      • unsigned long sec

      • unsigned long nsec

    • enum ::or_rotorcraft::control_type control ∈ { velocity, throttle }

    • sequence< double, 8 > desired


rotor_measure (in)

Data structure
  • struct ::or_rotorcraft::output rotor_measure

    • sequence< struct ::or_rotorcraft::rotor_state, 8 > rotor

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

        • unsigned long sec

        • unsigned long nsec

      • boolean emerg

      • boolean spinning

      • boolean starting

      • boolean disabled

      • double velocity

      • double throttle

      • double consumption

      • double energy_level


state (in)

Data structure
  • struct ::or_pose_estimator::state state

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

      • unsigned long sec

      • unsigned long nsec

    • boolean intrinsic

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

      • double x

      • double y

      • double z

      • double qw

      • double qx

      • double qy

      • double qz

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

      • double cov[28]

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

      • double vx

      • double vy

      • double vz

      • double wx

      • double wy

      • double wz

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

      • double cov[21]

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

      • double ax

      • double ay

      • double az

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

      • double cov[6]


reference (in)

Data structure
  • struct ::or_pose_estimator::state reference

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

      • unsigned long sec

      • unsigned long nsec

    • boolean intrinsic

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

      • double x

      • double y

      • double z

      • double qw

      • double qx

      • double qy

      • double qz

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

      • double cov[28]

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

      • double vx

      • double vy

      • double vz

      • double wx

      • double wy

      • double wz

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

      • double cov[21]

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

      • double ax

      • double ay

      • double az

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

      • double cov[6]


Services

set_saturation (attribute)

Inputs
  • struct ::nhfc::ids::servo_s::sat_s sat

    • double x

    • double v

    • double ix


set_servo_gain (attribute)

Inputs
  • struct ::nhfc::ids::servo_s::gain_s gain

    • double Kpxy

    • double Kpz

    • double Kqxy

    • double Kqz

    • double Kvxy

    • double Kvz

    • double Kwxy

    • double Kwz

    • double Kixy

    • double Kiz


set_mass (attribute)

Inputs
  • double mass


set_vlimit (attribute)

Inputs
  • double vmin

  • double vmax


set_servo_geom (attribute)

Inputs
  • double d

  • double kf

  • double c


set_servo_emerg (attribute)

Inputs
  • struct ::nhfc::ids::servo_s::emerg_s emerg

    • double descent

    • double dx

    • double dq

    • double dv

    • double dw


get_servo_parameters (attribute)

Outputs
  • struct ::nhfc::ids::servo_s servo

    • struct ::nhfc::ids::servo_s::sat_s sat

      • double x

      • double v

      • double ix

    • struct ::nhfc::ids::servo_s::gain_s gain

      • double Kpxy

      • double Kpz

      • double Kqxy

      • double Kqz

      • double Kvxy

      • double Kvz

      • double Kwxy

      • double Kwz

      • double Kixy

      • double Kiz

    • double mass

    • double vmin

    • double vmax

    • double fmin

    • double fmax

    • double d

    • double kf

    • double c

    • double ramp

    • struct ::nhfc::ids::servo_s::emerg_s emerg

      • double descent

      • double dx

      • double dq

      • double dv

      • double dw


get_desired (attribute)

Outputs
  • struct ::or_pose_estimator::state desired

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

      • unsigned long sec

      • unsigned long nsec

    • boolean intrinsic

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

      • double x

      • double y

      • double z

      • double qw

      • double qx

      • double qy

      • double qz

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

      • double cov[28]

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

      • double vx

      • double vy

      • double vz

      • double wx

      • double wy

      • double wz

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

      • double cov[21]

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

      • double ax

      • double ay

      • double az

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

      • double cov[6]


servo (activity)

Throws
  • exception ::nhfc::e_input

Context

Track a desired position


set_state (function)

Inputs
  • struct ::or::t3d::pos pos: Position

    • double x

    • double y

    • double z

    • double qw

    • double qx

    • double qy

    • double qz

  • struct ::or::t3d::vel vel: Velocity

    • double vx

    • double vy

    • double vz

    • double wx

    • double wy

    • double wz

  • struct ::or::t3d::acc acc: Acceleration

    • double ax

    • double ay

    • double az

Context

Set the desired state


set_position (function)

Inputs
  • double x

  • double y

  • double z

  • double yaw

Context

Set the desired position


set_current_position (activity)

Throws
  • exception ::nhfc::e_input

Context

Set the desired position


stop (function)

Context

Stop tracking a desired position


log (function)

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

Throws
  • exception ::nhfc::e_sys

    • short code

    • string<128> what

Log state


log_stop (function)

Stop logging


Tasks

main

Context