* [modules] Support dual ublox GPS modules
* Fix UCenter
* Fix make test_modules
* Fix: tell ins_ekf2 when no YAW is available
---------
Co-authored-by: Christophe De Wagter <dewagter@gmail.com>
* max bank in deg
* Fix allocation switching problem
* [rot_wing_v3] Updated max bank in all airframes
* Update sw/airborne/modules/checks/preflight_checks.c
Co-authored-by: Gautier Hattenberger <gautier.hattenberger@enac.fr>
* use unit and alt_unit for conversions instead
* remove needless conversion
* Also fix normal INDI to fit the code
---------
Co-authored-by: Ewoud Smeur <e.j.j.smeur@tudelft.nl>
Co-authored-by: Christophe De Wagter <dewagter@gmail.com>
Co-authored-by: Gautier Hattenberger <gautier.hattenberger@enac.fr>
* [rotwing_state] Added free configuration to be requested for rotwing drone
* [rot_wing_eff_sched] Added rate limiter on pusher prop
* [rot_wing_state] fix nav_max_goto_speed setting from state machine
* [rotwing_state] move rotwing free state processor to NAV if statement
* [rot_wing_state] Updated free state in rotwing_state
* [fp] Added free state standby waypoint to rotwing EHVB fp
* [rotwing_state] Removed non used speed_to_target variable
Introducing several changes to the control stask for the stabilization:
- new structures: stabilization, stab (att and/or rates) and thrust (vector)
- more functional approach: stabilization receives the stab and thrust
setpoints from guidance and fill command vector at the end
- modes and sub-modes are redefined (split stab and guidance modes),
some AP modes are removed (FLIP and MODULE)
- RC read functions are removed and replaced by ABI bindings, one for
each part (AP, stab, guidance_h, guidance_v) with dedicated functions
- transition ratio (float in [0-1]) replace transition_percentage (int)
- the AP_MODULE mode is replaced by generated autopilot
- the ABI hack for guidance indi is not needed anymore
- AP generator supports a new 'store' attribute to use return values of
functions
- cleaning of the stabilization API (for setter functions)
* [guidance_indi_hybrid] Added secondary airspeed filtering in guidance
* Rename for clarity: guidance_indi hybrid can have a separate filter
---------
Co-authored-by: Christophe De Wagter <dewagter@gmail.com>
* Add actuator type attribute to command
* Implemented new command based counting of the atuators in the oneloop controller
* Added group attribute to dtd file. Initialize as empty subgroup count of commands. Avoid unnecessary array to list conversion.
* Generate list of names from defined commands
* Use the defined commands number and name in NPS
* Update sw/tools/generators/gen_airframe.ml
Co-authored-by: Gautier Hattenberger <gautier.hattenberger@enac.fr>
* Added logic to remove redundant code
---------
Co-authored-by: Gautier Hattenberger <gautier.hattenberger@enac.fr>
* Make adc sensor mappable from the airframe. Better interface for adc in the rotwing state.
* Added parameters to v3b airframe
* Addressed the comments
* Removed external variable
* PFC for actuator deflections
* [checks] Preflight check actuators
[checks] PFC actuators
merge-error
* Fixes for other airframes
* [pfc] Fix better debug information for actuator checks
* [modules] Fix warnings in test build
* Update conf/modules/imu_mpu9250_i2c.xml
* Update conf/modules/imu_mpu9250_spi.xml
* [uavcan] Fix possible misconfiguration and overflow
---------
Co-authored-by: Freek van Tienen <freek.v.tienen@gmail.com>
* Silent compile warnings in tests
* silent warnings in conf_test
* fix defines: if OLD -> warn and convert. If new, then use. If no old and no new, use default.
* Rotating wing controller moved to rotating wing state
extra airframe
* Update _IDX and rebase
* Requested changes from PR
* Code style
* xml fix
* Update sw/airborne/modules/ctrl/eff_scheduling_rot_wing.c
- harmonize name
- make a 'generic' module with basic linear scheduling
- old ctrl_effectiveness_scheduling was very specific to cyfoam, so
renamed
- add falcon scheduler, related airframe will come later
* remove nav_hybrid dependency from guidance_indi_hybrid
* removed NAV_MAX_SPEED definition from the testing airframe
* removed dependency from max bank angle of guidance
---------
Co-authored-by: Christophe De Wagter <dewagter@gmail.com>
* Rotating wing state machine
* state now drives the wing rotation
* module does not run stand-alone
* Update conf/modules/rotwing_state.xml
Co-authored-by: Dennis van Wijngaarden <D.C.vanWijngaarden@tudelft.nl>
Co-authored-by: Gautier Hattenberger <gautier.hattenberger@enac.fr>
- the exact same basic model is now a NPS FDM
- sim target still woks, it is just an alias to NPS with the proper FDM
- the old ocaml files are removed
- AHRS and INS are bypassed, since the accelerations are not well calculated by the model
- old way (based on ins_vectornav) is not supported anymore
- directly send sensor data and receive commands with a dedicated link
- examples with USB link for better results
- update sphinx documentation
- compilation in a single build
* Squash on master
* fix bebeop2_flow
* Divergence is more noisy than previous time... added a low-pass filter, and allow for a higher threshold...
* fixed the sim, removed warnings, removed double airframe
* cleanup airframe, remove all warnings, allow placing camera parameters in sections
* PPRZLINK
* Silent warnings and compile errors
* reintegrated pprzlink
---------
Co-authored-by: guidoAI <guido.de.croon@gmail.com>
* [wls] make WLS lib, add support for guidance_indi_hybrid
* [wls] update test program
* [wls] restore static matrix size for WLS
* [wls] update test prog
* [indi] ABI thrust message to 3D vector (#3116)
* [indi] ABI thrust message to 3D vector
Common WLS for innerloop and outerloop
Co-authored-by: Christophe De Wagter <dewagter@gmail.com>
* Bound defaults to min in case of NaN
---------
Co-authored-by: Christophe De Wagter <dewagter@gmail.com>
* [guidance_indi] lift effectiveness and set stabilization limits in WEAK (#3117)
* do not allow code to run with insufficient matrix sizes
* Prefer not to roll when able.
* [wls] only check size if WLS is used
---------
Co-authored-by: Christophe De Wagter <dewagter@gmail.com>
Co-authored-by: Ewoud Smeur <e.j.j.smeur@tudelft.nl>