We at Blue Cheese are having an interesting problem. We’re trying to confirm our encoder measurements on our arm with an IMU, but our chosen IMU (the CTRE Pigeon IMU) has given us a few problems.
SKIP THIS PARAGRAPH FOR TL;DR
In order to get measurements, the imu has to be relatively flat upon startup, and in order to be legal, our arm has to start at a rather steep downward angle. We tried offsetting this with an angled mount, however the angle offset causes the IMU to flip over when the arm goes above around 20° above the horizontal. This causes the pigeon to behave strangely (the largest problem being lag).
In short, we’re looking for another IMU, one that either has a valid reading range larger than the Pigeon’s 180° or doesn’t require the same “levelness” during calibration as the Pigeon.
We already use an encoder. Our control system converts desired heights of the tip of the arm into angles, then into encoder setpoints. We use Motion Profiling to then move the arm to those encoder setpoints. Our problem is that, while more reliable than IMU’s, encoders aren’t always reliable (they’re subject to damage or electrical malfunction, for example). The IMU has been (and should be) acting as a failsafe – to prevent catastrophic failure.