You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: LICENSE.md
-14Lines changed: 0 additions & 14 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -14,20 +14,6 @@ The above copyright notice and this permission notice shall be included in all c
14
14
15
15
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -10,6 +10,8 @@ An Attitude and Heading Reference System (AHRS) takes information from the Inert
10
10
11
11
Version 2.2.0 added support for the Nano 33 BLE Sense Rev. 2. Version 2 of the Nano 33 BLE Sense, replaces the LSM9DS1 9 axis IMU with a combination of two IMUs, the BMI270, a 6 axis gyro & accelerometer and the BMM150, a 3 axis magnetometer. In order to support the new hardware, it makes sense to separate the sensor processing from the sensor fusion algorithms. This library version also added the Kalman Filter Fusion option.
12
12
13
+
Version 2.3.0 added support for an Extended Kalman Filter and fixed a number of bugs.
14
+
13
15
A complete description of this library is available in our Medium article: [Reefwing AHRS Arduino Library for Drones](https://reefwing.medium.com/reefwing-ahrs-arduino-library-for-drones-part-1-6d6457231764).
14
16
15
17
## Reefwing IMU Types
@@ -24,7 +26,7 @@ The libraries that use this definition header are:
@@ -62,7 +64,7 @@ To use the Reefwing AHRS Library, you need to also install the Reefwing_imuTypes
62
64
63
65
- Complementary Filter
64
66
- Madgwick Filter
65
-
- Kalman Filter
67
+
-Extended Kalman Filter
66
68
- Mahony Filter
67
69
- Classic Complementary Filter: Euler Angles are updated using trigonometry
68
70
- NONE: Euler angles are calculated but no sensor fusion filter is used.
@@ -216,7 +218,7 @@ This sketch is configured to work with the `MADGWICK`, `MAHONY`, `CLASSIC`, `COM
216
218
-**Madgwick Filter** - uses quaternions and combines a complementary filter approach with adaptive gain to fuse the sensor data.
217
219
-**Mahony Filter** - uses quaternions, another riff on complementary fusion and includes an error correction step to compensate for gyroscope bias.
218
220
-**Classic Complementary Filter** - Euler Angles are updated using trigonometry, apart from this it is similar to the Quaternion version.
219
-
-**Kalman Filter** - can be used to minimise the impact of noise in sensors.
221
+
-**Extended Kalman Filter** - can be used to minimise the impact of noise in sensors.
220
222
-**NONE** - Euler angles are calculated but no sensor fusion is used. This is useful for demonstrating why you need sensor fusion!
221
223
222
224
The loop frequency will vary with the board and fusion algorithm. The `COMPLEMENTARY` filter is a bit slower than the `MADGWICK` and `MAHONY`. We found that we experienced significant gyroscopic drift with the classic complementary filter. The Madgwick and Mahony filters fixes this issue but take a bit longer to settle on an angle. Of the two, Mahony is a bit faster than Madgwick, but the best filter and associated free parameter settings will depend on the application. The `NONE` option is also fast but has crazy gyroscopic drift.
0 commit comments