dronecan / DSDL

DSDL Protocol Description files for DroneCAN
MIT License
22 stars 60 forks source link

Feature Request: Measurement Range #8

Open flybrianfly opened 2 years ago

flybrianfly commented 2 years ago

I would like to add messages to define measurement ranges for DroneCAN sensor nodes. For example, one great use of DroneCAN would be to stack air data sensors, i.e. one with a range of 0 - 20 m/s, one with a range of 0 - 40 m/s, etc. This way you can get better accuracy at low speeds and be able to switch to the higher speed sensor when the low speed sensor saturates. You can imagine similar situations with the IMU / INS (i.e. an accel with a +/-4g range and a second sensor with a +/- 40g range).

To effectively use sensors with multiple measurement ranges, subscribers would need to know the measurement ranges of the publishers. I think this could be accomplished by either:

  1. The subscriber requesting this message from the publisher, or
  2. The publisher broadcasting this message at a low rate (i.e. 1 Hz)

I also think the measurement variance could be included with this message, enabling the high rate messages to be smaller in size and more efficient, especially for the limited bandwidth in CAN 2.0. I'm happy to contribute, but would like to gauge community interest before heading down this path.