Skip to content

Inconsistent sensor noise handling #867

Closed
@sdunlap-afit

Description

@sdunlap-afit

Hello, I saw #862 was merged and took a look at the sensor implementations. I am noticing some issues/inconsistencies in the latest develop branch. I have only tested a couple of these, the rest were from code review. Some of these may be intentional, but I wanted to point them out.

  1. magnetometer.cpp: There is no call to noiseModel.setPropMatrix().
  2. coarseSunSensor.cpp:
    • Line 138 still has the 1.5x multiplier for the noise model, but line 159 (fault model) does not. Also, the other sensors no longer have this multiplier.
    • There is no way for the user to set the propagation matrix for the noise model.
  3. simpleVoltEstimator.h: Line 56 AMatrix is private, so there's no way for the user to set the propagation matrix for the noise model.
  4. starTracker.h: Line 72 AMatrix is also private.
  5. imuSensor.cpp: Having to set AMatrix after initializing the simulation is pretty inconvenient. Would it be possible to set it in the constructor instead of in Reset?

Given the above, would it make sense for each sensor to initialize the GaussMarkov object with reasonable defaults in the constructor, and then simply expose (mark public) the GaussMarkov object to the user for further customization? It seems like this would make it easier to keep the various sensors consistent and would make it easier for the user to customize the noise model.

Metadata

Metadata

Assignees

Labels

refactorClean up with no new functionality

Type

No type

Projects

Status

✅ Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions