sensor Struct Reference

Structure that defines properties of a sensor attached. More...

#include <lowerleg_struct.h>

Data Fields

int label_id
 Sensor id - (integer)
string sensor_type
 Sensor type.
string point_label
 Point label, in case of optical marker. (as referenced by the OptiTrack software)
string LINK_label
 LINK label to which it is connected.
float xa
 Co-ordinates of sensor origin or attachment point, in the LINK reference frame.
float ya
float za
float rot_matrix [3][3]
float stiffness [10]
float normal_axis [3]
 Axis normal to the sensor (in case of force sensor)
float free_param [10]
 10 parameters for optional sensors
int nb_pulley
 In case of active-wire sensor, number of pulleys used to multiply the sensor displacement.
vector< vector< double > > mdata
vector< vector< int > > point_flag

Detailed Description

Structure that defines properties of a sensor attached.

This structure contains the details of the following:

The type of sensor, the LINK id to which it is attached, the location on the LINK where it is fixed with respect to the LINK frame, the rotation matrix relating the sensor reference frame to LINK reference frame (if it is known).

In case of wire sensors (active or passive), it also includes the coefficients of the (up to) 10 degree polynomial that gives the force exerted by the wire as a function of its length.

In case of a force sensor, the axis normal to the force sensor is specified

In case of a free sensor, optional up to 10 parameters may be provided

Sensor types: accelerometer, active_wire sensor, passive_wire sensor, optical marker, force_sensor, free sensor


Field Documentation

float sensor::free_param[10]

10 parameters for optional sensors

Referenced by read_sensor().

vector< vector<double> > sensor::mdata

2d vector containing data pertaining to motion recorded by specified sensor. mdata[i][0] corresponds to the data timestamp for ith reading, mdata[i][j] corresponds to jth field recorded by the sensor at the ith reading.

Note that in case of optical marker, timestamp is not stored, as the info is not available directly. But index i gives the frame number. mdata[i][j] in this case corresponds to (j+1)th field recorded by the sensor (ie mdata[i][0] is 1st reading and so on).

Referenced by calc_link_frame_opti(), convert_opti_to_mario(), generate_mes_vec_femur(), generate_mes_vec_tib_low(), load_all_measures(), load_collar_accl_data(), load_collar_active_data(), load_collar_opti_data(), load_collar_passive_data(), main(), run_kalman_femur(), and run_kalman_tib_low_theta().

In case of active-wire sensor, number of pulleys used to multiply the sensor displacement.

Referenced by generate_mes_vec_femur(), and read_sensor().

Axis normal to the sensor (in case of force sensor)

Referenced by read_sensor().

vector< vector<int> > sensor::point_flag

In case of optical markers, we need a flag that denotes whether the reading can be trusted or not. This flag is set when a filtering/cleaning function is performed. A value of 1 denotes that the reading is correct (with acceptable noise), while 0 indicates that the reading is absolutely wrong and must be discarded.

This flag is exteremely useful while performing Kalman filtering.

Referenced by load_collar_opti_data(), run_kalman_femur(), set_mes_err_cov(), and set_mes_err_cov_tib().

Point label, in case of optical marker. (as referenced by the OptiTrack software)

Referenced by load_collar_opti_data(), and read_sensor().

float sensor::rot_matrix[3][3]

Rotation matrix relating the sensor reference frame to the LINK reference frame

Referenced by calc_pts_in_collar_base_frame(), and read_sensor().

Sensor type.

Referenced by read_femur(), read_sensor(), and read_tibia().

float sensor::stiffness[10]

Coefficients of the (up to) 10 degree polynomial (in terms of wire length) that describe the force exerted by the wire.

Referenced by read_sensor().

float sensor::xa

Co-ordinates of sensor origin or attachment point, in the LINK reference frame.

Referenced by calc_link_frame_opti(), calc_pts_in_collar_base_frame(), and read_sensor().


The documentation for this struct was generated from the following file:
 All Data Structures Files Functions Variables Typedefs Defines