Commit Graph
60 Commits
Author SHA1 Message Date
Daniel Agar 414f9f81d9 move fake GPS to standalone module 2021-02-20 14:13:36 -05:00
Daniel Agar ab0d0fd0be uORB move to PX4 platform layer 2021-02-17 11:25:56 -05:00
Tim 540e4f9464 Uuv position control extension (#16688)
* Commit for the Integration of a position controller for the a Underwater vehicle.
This module is an extension of the uuv_att_control to control an Underwater vehicle to any position, given by the SET_POSITION_TARGET_LOCAL_NED which includes x y z yaw.
Since the position control is designed for a 6DOF Robot, the roll and pitch angle are controlled to be 0.
Additionally there is a stabilization control, which holds the robot at a defined depth, and not move in any direction.

In general the idea is to have this position module to control the position of the uuv. The position module reseives the desired position of the uuv and sends appropriate attitude setpoints to the uuv_attitude_control module.

Additionally the mixer file is adapted, to include the 6 different inputs(x y z roll pitch yaw).

* Commit for the Integration of a position controller for the a Underwater vehicle.
This module is an extension of the uuv_att_control to control an Underwater vehicle to any position, given by the SET_POSITION_TARGET_LOCAL_NED which includes x y z yaw.
Since the position control is designed for a 6DOF Robot, the roll and pitch angle are controlled to be 0.
Additionally there is a stabilization control, which holds the robot at a defined depth, and not move in any direction.

In general the idea is to have this position module to control the position of the uuv. The position module receives the desired position of the uuv and sends appropriate attitude setpoints to the uuv_attitude_control module.

Additionally the mixer file is adapted, to include the 6 different inputs(x y z roll pitch yaw).

Currently not solved/missing:
 - Problem with gazebo model(propeller moving chaotically).
 - Mixer correct gazebo vs real life (has to be tested in the future)
 - correct integration in uuv.apps (when choose which module)
 - very basic controller chosen (could be improved a lot in the future)

* Remove error caused by unused variables and a different build error

* added better description of the parameter. Additionally the group is changed.

* added better description of the parameter. Additionally the group is changed.
Fixed bug about parameter

* Added EOF to the files.

* Removed parameter for direct position control for safety reasons.

* small bugfix
2021-02-15 18:40:28 +01:00
Daniel Agar fb2a199621 delete unmaintaned mkblctrl driver 2021-02-14 10:38:15 +01:00
Daniel Agar 78dff6adcb boards: add CONSTRAINED_MEMORY build option
- currently the main change is that it reduces the max number of ORB multi instances to 4, but usage will be expanded as needed
 - limits number of EKF2 multi instances to 2.
 - enabled on all cortex m4 boards
2021-02-01 08:56:22 +01:00
Matthias Grob 7545249215 Add flight_mode_manager to all targets with mc_pos_control 2020-12-30 10:25:08 -05:00
flbernier bca2d3139a Enable dshot driver for fmu-v4pro 2020-12-09 17:56:11 +01:00
David Sidrane 22bc176885 Added mft for queries 2020-12-02 20:40:23 -05:00
SalimTerryLi 25eca31e3a New board Scumaker AirPi HAT for Raspberry Pi B series 2020-10-01 11:22:47 -04:00
Tanja Baumann b5ebdb8e41 add system command to get and set system time
* add system_time command for all boards
2020-09-26 13:09:01 -04:00
SalimTerryLi 28a6e82698 Introduce new generic ADC driver for ADS1115 chip (#14437) 2020-09-14 11:03:40 -04:00
SalimTerryLi c037dbef21 Rename and move src/drivers/adc to src/drivers/adc/board_adc 2020-09-07 23:09:20 -04:00
Daniel Agar 5507c15bdc boards: move rgbled_pwm startup to appropriate boards 2020-06-08 16:49:46 -04:00
Daniel Agar 746a8f5cf9 commander: reboot/shutdown usability fixes
- always check with state machine before reboot/shutdown
 - respect BOARD_HAS_POWER_CONTROL (shutdown from command, low battery, power button)
 - px4_shutdown_request add optional delay and always execute from HPWORK
 - px4_shutdown_request split out px4_reboot_request
2020-05-06 13:53:54 -04:00
Daniel Agar 06478d9997 delete obsolete SENSORIOCSPOLLRATE/SENSORIOCRESET and systemcmds/config 2020-04-15 23:33:41 -04:00
Daniel Agar 7aa7f0ed95 switch remaining boards to new InvenSense IMU drivers 2020-04-07 09:59:12 -04:00
Julian Oes b01cdafcf6 boards: add esc_battery to build 2020-04-06 15:56:54 +02:00
Daniel Agar ad559a66a1 examples: add simple work_item example module 2020-04-06 09:43:55 -04:00
Daniel Agar ca81175b07 rename drivers/px4fmu -> drivers/pwm_out
- split out header
2020-03-31 19:12:31 -04:00
Daniel Agarandbresch f9794e99f8 move hover_thrust_estimator to new module (mc_hover_thrust_estimator)
* MC_HTE: unitialize with hover_thrust parameter
* MC_HTE: constrain hover thrust setter between 0.1 and 0.9
* MC_HTE: integrate with land detector and velocity controller
* MCHoverThrustEstimator: Always publish an estimate even when not fusing measurements. This is required as the land detector and the position controller need to receive a hover thrust value.

* MC_HTE: use altitude agl threshold to start the estimator
local_position.z is relative to the origin of the EKF while dist_bottom
is above ground

Co-authored-by: bresch <brescianimathieu@gmail.com>
2020-03-11 21:20:54 -04:00
Daniel Agar 4698a09b98 delete unmaintained outback challenge (OBC) bottle drop example 2020-03-05 14:09:31 -05:00
Daniel Agar 779ba0fda5 px4_fmu-v4/v4pro: switch to new InvenSense icm20602/icm20608g IMU drivers
* 8 kHz gyro, 4 kHz accel
 * DLPF disabled
 * scheduled using data ready interrupts
 * FIFO is emptied at 1 kHz by default, but can adjusted via IMU_GYRO_RATEMAX from 250 Hz - 2000 kHz.
 * On both px4_fmu-v4 and px4_fmu-v4pro the secondary IMU is an mpu9250 with the same driver
2020-02-26 01:19:12 +01:00
Daniel Agar 1d226ad2ca invensense icm20608g improvements
- checked register mechanism and simple watchdog
  - driver checks for errors gradually and can reconfigure itself
 - respect IMU_GYRO_RATEMAX at the driver level
 - fixed sensor INT16_MIN and INT16_MAX handling (y & z axis are flipped before publishing)
2020-02-18 22:48:32 -05:00
Daniel Agar dc05ceaad2 create temperature_compensation module
- this is a new module for temperature compensation that consolidates the functionality previously handled in the sensors module (calculating runtime thermal corrections) and the events module (online thermal calibration)
 - by collecting this functionality into a single module we can optionally disable it on systems where it's not used and save some flash (if disabled at build time) or memory (disabled at run time)
2020-01-20 21:42:42 -05:00
Daniel Agar 709961ec8c InvenSense ICM20602 and ICM20608-G: new standalone optimized drivers
- uses the FIFO and SPI DMA to transfer full raw data (8 kHz gyro, 4 kHz accel)
 - new sensor messages for better visibility
   - sensor_{accel, gyro}_fifo: full raw data for optional logging and analysis
   - sensor_{accel, gyro}_status: metadata, clipping, etc
 - currently not enabled by default
2019-12-03 23:21:32 -05:00
Daniel Agar bc182e94e6 sensors split rc_update into new standalone module 2019-11-24 13:25:11 -05:00
Daniel Agar 5aaf1b100b delete unused md25 driver 2019-11-21 18:56:24 -05:00
Daniel Agar 8c38176d77 boards: alphabetize and sync common drivers and modules 2019-11-21 18:56:24 -05:00
Daniel Agar 84fe64b1c2 create new multicopter rate controller module (mc_rate_control) split out of mc_att_control 2019-11-19 17:03:11 -05:00
Daniel Agar 52554f1efa px4_fmu-v4pro: cleanup SPI devs 2019-11-12 11:18:57 -05:00
Daniel Agar 6a0f5249f8 sensors: split out analog battery handling to new standalone battery_status module 2019-10-21 13:40:23 -04:00
Daniel Agar 26364d44c9 px4_work_queue: command line status output and shutdown empty queues
* adds a work_queue systemcmd that will bring a tree view of all active work queues and work items
 * WorkQueues now track attached WorkItems and will shutdown when the last WorkItem is detached
2019-10-02 12:23:17 -04:00
Daniel Agar 0486d69240 delete obsolete segway example 2019-09-28 15:05:50 -04:00
BazookaJoe1900 6ab5c2170e remove unused pca8574 and oreoled drivers 2019-09-04 08:05:08 -07:00
Beat Küng f3fccf53f6 src/drivers/{kinetis,stm32}: move to arch-specific directories 2019-08-30 07:59:44 +02:00
Beat Küng 1cb6c36a00 adc: refactor into arch-specific directories 2019-08-30 07:59:44 +02:00
Beat Küng ab43a83bed platform: restructure (NuttX) architecture-specific code
updated: tone_alarm, px4io_serial, px4_micro_hal
2019-08-30 07:59:44 +02:00
Silvan Fuhrer cedf14e2ba Airspeed Selector: repurpose wind estimator into an airspeed (selection, validation) module.
This new airspeed module does:
  -runns an airspeed validator for every airspeed sensor present, which checks measurement validity and estimates an airspeed scale
  -selects another airspeed sensor if for the current one a failure is detected
  -estimates airspeed with groundspeed-windspeed if no valid airspeed sensor is present
  -outputs airspeed_validated topic

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2019-08-09 10:55:05 +02:00
Daniel Agar 77694183b2 delete position_estimator_inav 2019-08-02 17:38:28 -04:00
Timothy Scott 2ed00c9cb6 Rover: Rewrote gnd_pos_control and removed gnd_att_control (#12239) 2019-07-11 09:39:13 -04:00
Daniel Agar 15d1543f95 create systemcmds/i2cdetect tool to scan i2c bus 2019-07-06 10:28:16 -04:00
Mohammed Kabir b334b75886 Move optical flow drivers to own subdirectory 2019-05-28 23:23:38 -04:00
Beat Küng 914a9b78b6 new airframe for sih, HIL_STATE_QUATERION sent through MAVLink 2019-04-12 09:25:07 +02:00
Hamish Willee 257b90958f Correct links to example docs 2019-03-15 08:05:54 +01:00
Daniel Agar f1d17c9003 camera_capture add to all boards 2019-02-11 14:15:28 -05:00
mcsauder dc5f18bdcd ToneAlarm class refactoring to implement an interface for hardware specific methods and a single ToneAlarm class. 2019-01-28 18:58:04 -08:00
Daniel Agar 739a02022b position_estimator_inav: move to examples (start deprecation) 2019-01-27 22:15:39 +01:00
Daniel Agar 67e5986c9b delete obsolete examples/subscriber 2019-01-23 18:25:18 -05:00
Daniel Agar 693ee4808a delete obsolete examples/publisher 2019-01-23 18:25:18 -05:00
Daniel Agar 8622fa4aac move pca8574 driver to lights 2018-12-04 01:06:54 -05:00