Schemas / I/O

rig.sensor.imu

v1.0.0 · stable maturity: draft 4 fields 0 required

Fields

FieldTypeMeaning
rateHz number> 0 optional Optional. Samples per second. Absent = host default
acceleration vec3 optional Optional. Specific force at load, scene units per second squared, in the sensor frame. Includes gravity. Absent = not measured
angularVelocityDegrees vec3 optional Optional. Angular rate at load, degrees per second, in the sensor frame. Absent = not measured
device entity optional Optional board / network entity; absent = local

Inertial sample. Format when present. Pose is rig.spatial.transform.

acceleration and angularVelocityDegrees are the sample when the document is loaded. An author writes a known reading. A host that saves a running sensor writes the current sample. At rest in +Y-up, acceleration is about [0, g, 0].

Orientation is the entity transform. Do not store a second quaternion here. Covariance, bias, and the sample history stay in the host. A ROS 2 node entity is a valid device - docs/ros.md.

JSON Schema

Resolves at https://rig.works/schemas/rig.sensor.imu.schema.json — raw file.

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://rig.works/schemas/rig.sensor.imu.schema.json",
  "title": "rig.sensor.imu",
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "rateHz": {
      "type": "number",
      "exclusiveMinimum": 0
    },
    "acceleration": {
      "$ref": "./_defs.schema.json#/$defs/vec3"
    },
    "angularVelocityDegrees": {
      "$ref": "./_defs.schema.json#/$defs/vec3"
    },
    "device": {
      "$ref": "./_defs.schema.json#/$defs/entity"
    }
  },
  "x-rig-maturity": "draft"
}

Seen in

robot-lesson.json