Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Configuration block example (in sinks section)

Node name: vehicularFusion

Code Block
"gnssImuFusion// Sensor fusion config
"vehicularFusion": {
    "echoFusedPose": false,
    "endpoint": "tcp://*:88038801",
    "fuser": {
        "fitModel": "ModelGnssImuSimpleCarModel",
        "accelErrordriveModel": 0.01"Differential",
        "omegaErrorvelError": 0.02277777778,
        "measurementErroromegaError": 0.055,
        "imuToCarRotationmeasurementError": {
            "w": 1,
   0.1,
        "xsmoothFit": 0,true
            "y": -1,
            "z": 0
        }
    }
}}
}

This filter needs as input:

  • LPMS-IG1P data source for IMU and GPS data

  • CAN bus and vehcile decoder source

This Filter outputs:

  • fusedVehiclePose (see description below)

Parameter name

Description

Default

echoFusedPose

fusedVehiclePose output is printed to command line

false

endpoint

Output port for the fusion result

8801

fitModel

Model to use for fusion. At the moment only SimpleCarModel is supported.

SimpleCarModel

driveModel

Model to use to calculate car trajectory from CAN bus data. At the moment only Differential is supported.

Differential

velError

Velocity error for Kalman filter. Keep default value.

0.277777778

omegaError

Omega error for Kalman filter. Keep default value.

0.5

measurementError

Measurement error for Kalman filter. Keep default value.

0.1

smoothFit

Enable this option to prevent filter output from jumping between odometry data and GPS measurement. Keep enabled.

true

Output data format

Code Block
{
  "fusedVehiclePose": {
    "acceleration": {
      "x": -0.4263402493894084,
      "y": -0.14872631710022688,
      "z": 9.790632347106932
    },
    "globalPosition": {
      "x": 1.8985360999771979,
      "y": 41.50585830111033
    },
    "lastDataTime": {
      "timestamp": 0
    },
    "position": {
      "x": 0,
      "y": 0
    },
    "timestamp": {
      "timestamp": 48347424440200
    },
    "utmZone": "31T",
    "yaw": 0
  }
}

...

Configuration block example (in sinks section)

Code Block
// Sensor fusion config
"vehicularFusion"gnssImuFusion": {
    "echoFusedPose": false,
    "endpoint": "tcp://*:88018803",
    "fuser": {
        "fitModel": "SimpleCarModelModelGnssImu",
        "driveModelaccelError": 0.01,
  "Differential"      "omegaError": 0.02,
        "velErrormeasurementError": 0.27777777805,
        "imuToCarRotation": {
            "w": 1,
            "omegaErrorx": 0.5,
            "measurementErrory": 0.-1,
            "smoothFitz": true0
        }
    }
}

Output data format

Code Block
{
    "fusedVehiclePose": {
        "acceleration": {
            "x": 0.0,
            "y": 0.0,
            "z": 0.0
        },
        "globalPosition": {
            "x": 1.8982356601544925,
            "y": 41.50544434418204
        },
        "lastDataTime": {
            "timestamp": 0
        },
        "position": {
            "x": -25.38332083641826,
            "y": -36.403733501197635
        },
        "timestamp": {
            "timestamp": 48910226723400
        },
        "utmZone": "31T",
        "yaw": 0.1555754684457767
    }
}

...