explicit InertialNode( |
| ) |
Creates an InertialNode object.
connection | The Connection object used for communication. |
Error_Connection: A problem occured with the Connection.
Gets InertialNodeInfo for this Node. The first time this function is called, it will send multiple commands to the device to get all required information. Note: This will be invalid when the InertialNode is destroyed.
A reference to the InertialNodeInfo for this Node.
Error_Communication: There was no response to the command. The command timed out.
Error_InertialCmdFailed: The command has failed. Check the error code for more details.
Error_Connection: Information failed to be loaded for this Node.
Gets a reference to the InertialNodeFeatures for this device. Note: This will be invalid when the InertialNode is destroyed.
Error_NotSupported: The model is not supported by MSCL.
Error_Communication: There was no response to the command. The command timed out.
Error_InertialCmdFailed: The command has failed. Check the error code for more details.
Error_Connection: Information failed to be loaded for this Node.
static std::string deviceName( |
| ) |
Static function for creating the universal sensor name that should be used for SensorCloud.
serial const std::string& | The serial number of the inertial node. This should be identical to calling the <serialNumber> function on an InertialNodeInfo object (see InertialNode::info). |
The universal sensor name.
const SampleRates& supportedSampleRates( |
| ) |
Gets a list of the supported sample rates for an InertialTypes::InertialCategory.
category | The InertialTypes::InertialCategory to get the sample rate list for. |
A SampleRates list containing all the supported sample rates for the provided channel.
Error_InertialCmdFailed: The command has failed.
Error_Communication: Timed out waiting for a response.
Error_NotSupported: The InertialTypes::InertialCategory is not supported by this node.
Error_Connection: A connection error has occurred with the InertialNode.
Error: The InertialTypes::ChannelField is invalid.
InertialDataPackets getDataPackets( |
| ) |
Gets up to the requested amount of data packets that have been collected.
timeout uint32 | The timeout, in milliseconds, to wait for data if necessary (default of 0). |
maxPackets uint32 | The maximum number of packets to return. If this is 0 (default), all packets will be returned. |
A vector of InertialDataPackets containing all the data packets that are available up to the requested number of packets.
Error_Connection: A connection error has occurred with the InertialNode.
Gets the total number of data packets that are currently in the buffer.
The total number of data packets that are currently in the buffer.
void timeout( |
| ) |
Sets the timeout to use when waiting for responses from Inertial commands.
timeout uint64 | The timeout (in milliseconds) to set for Inertial commands. |
Gets the timeout to use when waiting for responses from Inertial commands.
The timeout (in milliseconds) used for Inertial commands.
Gets the name of the InertialNode. This is the universal sensor name that should be used for uploading to SensorCloud. This is the same as calling InertialNode::deviceName.
The universal sensor name.
Pings the Node to check for communication. Sends the "Ping" command to the device.
true if successfully pinged the node, false if failed.
Error_Connection: A connection error has occurred with the InertialNode.
Suspends streaming (if enabled) or wakes the device from sleep (if sleeping), putting the device in an idle mode. After this command is used, the resume command may be used to put the Node back into the mode it was previously in before setToIdle was called.
Error_Communication: There was no response to the command. The command timed out.
Error_InertialCmdFailed: The command has failed. Check the error code for more details.
Error_Connection: A connection error has occurred with the InertialNode.
Places the Node back in the mode it was in before issuing the setToIdle command. If the setToIdle command was not issued, then the device is placed in default mode.
Error_Communication: There was no response to the command. The command timed out.
Error_InertialCmdFailed: The command has failed. Check the error code for more details.
Error_Connection: A connection error has occurred with the InertialNode.
uint16 getDataRateBase( |
| ) |
Gets the Data decimation base for the data rate calculations of the specified <InertialType>.
type | The InertialTypes::InertialCategory to get the Data decimation base for. |
The decimation base for the data rate calculations.
Error_NotSupported: The command or InertialTypes::InertialCategory is not supported by this Node.
Error_Communication: There was no response to the command. The command timed out.
Error_InertialCmdFailed: The command has failed. Check the error code for more details.
Error_Connection: A connection error has occurred with the InertialNode.
InertialChannels getActiveChannelFields( |
| ) |
Gets the current active channel fields for the specified InertialTypes::InertialCategory.
category | The InertialTypes::InertialCategory to get the current message format for. |
An InertialChannels object containing the channels that make up the data message format for the specified InertialTypes::InertialCategory.
Error_NotSupported: The command or InertialTypes::InertialCategory is not supported by this Node.
Error_Communication: There was no response to the command. The command timed out.
Error_InertialCmdFailed: The command has failed. Check the error code for more details.
Error_Connection: A connection error has occurred with the InertialNode.
void setActiveChannelFields( |
| ) |
Sets the current active channel fields for the specified InertialTypes::InertialCategory. Note that this function does not add to the existing message format (active channels), but overwrites it entirely.
category | The InertialTypes::InertialCategory to set the message format for. |
channels const InertialChannels& | The InertialChannels object containing the channels to set the message format to. Passing an empty InertialChannels object will effectively disable all channels. |
Error_NotSupported: The command or InertialTypes::InertialCategory is not supported by this Node.
Error_Communication: There was no response to the command. The command timed out.
Error_InertialCmdFailed: The command has failed. Check the error code for more details.
Error_Connection: A connection error has occurred with the InertialNode.
Error: An InertialChannel in the channels parameter is not part of the specified InertialTypes::InertialCategory's descriptor set.
Gets the current communication mode that the node is in.
The communication mode the node is in. This is an advanced command, and therefore the communication modes for your device should be researched to determine what each communication mode is.
Error_NotSupported: The command or InertialTypes::InertialCategory is not supported by this Node.
Error_Communication: There was no response to the command. The command timed out.
Error_InertialCmdFailed: The command has failed. Check the error code for more details.
Error_Connection: A connection error has occurred with the InertialNode.
void setCommunicationMode( |
| ) |
Sets the communication mode for the node. Note: The node info will be reset when doing this and therefore will require being fetched again the next time it is requested.
communicationMode uint8 | The communication mode to set. This is an advanced command, and therefore the communication modes for your device should be researched to determine what each communication mode is. |
Error_Communication: There was no response to the command. The command timed out.
Error_InertialCmdFailed: The command has failed. Check the error code for more details.
Error_Connection: A connection error has occurred with the InertialNode.
void enableDataStream( |
| ) |
Enables or disables continuous data streaming for the node.
category | The InertialTypes::InertialCategory to enable/disable streaming for. |
enable bool | Whether to enable (true) or disable (false) continuous streaming (Default of true). |
Error_NotSupported: The command or InertialTypes::InertialCategory is not supported by this Node.
Error_Communication: There was no response to the command. The command timed out.
Error_InertialCmdFailed: The command has failed. Check the error code for more details.
Error_Connection: A connection error has occurred with the InertialNode.
Resets the filter to the initialize state. Note: If the auto-initialization feature is disabled, the initial attitude or heading must be set in order to enter the run state after a reset.
Error_NotSupported: The command is not supported by this Node.
Error_Communication: There was no response to the command. The command timed out.
Error_InertialCmdFailed: The command has failed.
Error_Connection: A connection error has occurred with the InertialNode.
Gets the state of the automatic initialization upon device startup.
true if auto-initialization is enabled, false if it is disabled.
Error_NotSupported: The command is not supported by this Node.
Error_Communication: There was no response to the command. The command timed out.
Error_InertialCmdFailed: The command has failed.
Error_Connection: A connection error has occurred with the InertialNode.
void setAutoInitialization( |
| ) |
Sets the state of the automatic initialization upon device startup.
enable bool | Whether to enable (true) or disable(false) auto-initialization. |
Error_NotSupported: The command is not supported by this Node.
Error_Communication: There was no response to the command. The command timed out.
Error_InertialCmdFailed: The command has failed.
Error_Connection: A connection error has occurred with the InertialNode.
void setInitialAttitude( |
| ) |
Sets the initial attitude. Node: This command can only be issues in the "INIT" state and should be used with a good estimate of the vehicle attitude.
attitude const EulerAngles& | The EulerAngles (in radians) representing the sensor body frame with respect to the local NED frame. |
Error_NotSupported: The command is not supported by this Node.
Error_Communication: There was no response to the command. The command timed out.
Error_InertialCmdFailed: The command has failed.
Error_Connection: A connection error has occurred with the InertialNode.
void setInitialHeading( |
| ) |
Sets the initial heading. Node: This command can only be issues in the "INIT" state and should be used with a good estimate of heading. The device will use this value in conjunction with the output of the accelerometers to determine the initial attitude estimate.
heading float | The heading to set (in radians). |
Error_NotSupported: The command is not supported by this Node.
Error_Communication: There was no response to the command. The command timed out.
Error_InertialCmdFailed: The command has failed.
Error_Connection: A connection error has occurred with the InertialNode.
Gets the sensor to vehicle frame transformation matrix using roll, pitch, and yaw Euler angles. These angles define the rotation from the sensor body from to the fixed vehicle frame.
The EulerAngles object containing the roll, pitch, and yaw result (in radians).
Error_NotSupported: The command is not supported by this Node.
Error_Communication: There was no response to the command. The command timed out.
Error_InertialCmdFailed: The command has failed. Check the error code for more details.
Error_Connection: A connection error has occurred with the InertialNode.
void setSensorToVehicleTransformation( |
| ) |
Sets the sensor to vehicle frame transformation matrix using roll, pitch, and yaw Euler angles (in radians). These angles define the rotation from the sensor body from to the fixed vehicle frame.
angles const EulerAngles& | The EulerAngles object containing the roll, pitch, and yaw (in radians) to set. |
Error_NotSupported: The command is not supported by this Node.
Error_Communication: There was no response to the command. The command timed out.
Error_InertialCmdFailed: The command has failed. Check the error code for more details.
Error_Connection: A connection error has occurred with the InertialNode.
Gets the sensor to vehicle frame offset, expressed in the sensor frame.
The PositionOffset object containing the x, y, and z position (in meters) result.
Error_NotSupported: The command is not supported by this Node.
Error_Communication: There was no response to the command. The command timed out.
Error_InertialCmdFailed: The command has failed. Check the error code for more details.
Error_Connection: A connection error has occurred with the InertialNode.
void setSensorToVehicleOffset( |
| ) |
Sets the sensor to vehicle frame offset, expressed in the sensor frame.
offset const PositionOffset& | The PositionOffset object containing the x, y, and z position (in meters) to set. |
Error_NotSupported: The command is not supported by this Node.
Error_Communication: There was no response to the command. The command timed out.
Error_InertialCmdFailed: The command has failed. Check the error code for more details.
Error_Connection: A connection error has occurred with the InertialNode.
Gets the antenna offset, expressed in the sensor frame.
The PositionOffset object containing the x, y, and z position (in meters) result.
Error_NotSupported: The command is not supported by this Node.
Error_Communication: There was no response to the command. The command timed out.
Error_InertialCmdFailed: The command has failed. Check the error code for more details.
Error_Connection: A connection error has occurred with the InertialNode.
void setAntennaOffset( |
| ) |
Sets the antenna offset, expressed in the sensor frame.
offset const PositionOffset& | The PositionOffset object containing the x, y, and z position (in meters) to set. |
Error_NotSupported: The command is not supported by this Node.
Error_Communication: There was no response to the command. The command timed out.
Error_InertialCmdFailed: The command has failed. Check the error code for more details.
Error_Connection: A connection error has occurred with the InertialNode.