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>
* [rot_wing nps] add more aerodynamic drag in rotwing simulation
* Triple the CD * surface
---------
Co-authored-by: Christophe De Wagter <dewagter@gmail.com>
* 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
* removed the -o flag because it caussed natnet errors
* smaller obstacle zone for first week testing
* Updated distance measurement script
* 3x3 convolution addition (#97)
Added a convolution algorithm for a general 3x3 kernel
---------
Co-authored-by: robinferede <robinferede@tudelft.nl>
Co-authored-by: yamacbirol <y.birol@student.tudelft.nl>
Co-authored-by: dvanwolffelaar <50547974+pigparty6@users.noreply.github.com>
After #3197, the functions guidance_h_set_xxx are reseting the state so
it creates inconsistent behavior when abusing the 'set_pos' to update
the gcs display.
This mode is not really used and not even recommended. It is also not
implemented in all firmwares. If a direct call to stabilization command
is needed, it should be done with a specific function but not from a
builtin instruction from the flight plan.
It was discussed in #3208, but not applyied because of nav_heli_spinup.
A new h_mode 'NONE' allows to disable guidance and stabilization while in
NAV mode, which allows to set directly the commands.
* [generator] add support for matrix and struct in airframe
update ENAC airframe and code for indi G1 matrix and IMU calib
* update calibration tool output
* JP aircraft removed from ENAC
* Silent compile warnings GVF
* silent warning: periodic freq must be dividable by telemetry freq
* NPS_COMMANDS_NB
* gzip -f since compiling make small targets in a row can have the same file name if compiling is too fast.
* bug fixes: simulation not selecting airframe, error when removing command, ADC not present in simulation
* remove command_trimmed not used warning (indeed not used) + add comments
* RAM3 overflow. Test of module done in RW3.
* coverity - Microjet - SIM
* clean BR
* CDW + tests
* make openuas/mavlab
* Remove Special ARDrones
* conf
* fixed typ in eff_scheduler of rotwing_25kg
* Updated preflight checks for rotwing v3b actuators
* Updated tudelft conf
---------
Co-authored-by: Dennis van Wijngaarden <32736330+Dennis-Wijngaarden@users.noreply.github.com>
* 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>
* [electrical] Add board voltage
[energy] Test energy message
[conf] Fix offset
Testing airspeed fixes
[arch] Fix i2c invalidate buffer when reading
* Revert debug
* Default when not defined
* Send VBoard in ROTORCRAFT_STATUS
---------
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.
* Hide actuator internal driver number. Should never be used in code.
* Bugfix ... these should not be actutator_driver numbers but INDI output numbers