Commit Graph

84 Commits

Author SHA1 Message Date
Tom Pittenger 0e775f595d AP_BattMonitor: make param BATT_WATT_MAX plane only 2016-04-21 13:59:45 -07:00
Jonathan Challinger 06ccf88cc9 AP_BattMonitor_SMBus: set AP_Notify powering_off flag 2016-04-21 10:04:37 +10:00
Tom Pittenger 035f3b16a1 AP_BattMonitor: add new param BATT_WATT_MAX
Description: If battery wattage (voltage * current) exceeds this value then the system will reduce max throttle (THR_MAX and TKOFF_THR_MAX) to satisfy this limit. This helps limit high current to low C rated batteries regardless of battery voltage. The max throttle will slowly grow back to THR_MAX (or TKOFF_THR_MAX) if demanding the current max and under the watt max.
2016-03-02 10:14:25 -08:00
Lucas De Marchi 69f6a73c19 Global: fix missing renames for HAL_BOARD_SUBTYPE_LINUX_ERLEBOARD
Commit b87fd58 (AP_HAL: ERLEBOARD legacy support) renamed the define but
forgot some around.
2016-02-19 12:35:18 -02:00
Lucas De Marchi f865e085b1 AP_BattMonitor: add defaults for minlure 2016-02-19 11:55:31 -02:00
Lucas De Marchi 62f50aede7 AP_BattMonitor: replace header guard with pragma once 2016-02-18 14:52:34 -02:00
Peter Barker afafcbc4f3 AP_BattMonitor: correct names of #defines 2016-01-30 12:48:19 -02:00
mirkix b5cb48ba6d AP_BattMonitor: Add BBBMINI defaults 2016-01-28 13:44:44 -02:00
Gustavo Jose de Sousa c2e3f05dbf waf: ardupilotwaf: prefix build context methods with ap_
It helps to distinguish between things from waf and things from ardupilotwaf.
2016-01-22 20:10:29 -02:00
Gustavo Jose de Sousa 3d22490397 waf: examples: use methods from bld instead of ardupilotwaf 2016-01-22 20:10:29 -02:00
Gustavo Jose de Sousa d281067bcc waf: make example binaries be placed in 'examples' dir
This commit makes examples' wscripts use ardupilotwaf.example() instead of
ardupilot.program().
2016-01-15 16:46:41 -02:00
pkancir c117b41188 AP_BattMonitor: add PXF default pins 2016-01-11 15:44:24 -02:00
Jonathan Challinger 8fdbb36827 AP_BattMonitor: add is_powering_off 2016-01-07 15:14:07 +09:00
Jonathan Challinger a3789542cd AP_BattMonitor: fix example build 2015-12-29 10:46:35 -08:00
Lucas De Marchi a096703b06 Global: don't link with AP_Progmem
AP_Progmem is not used anymore.
2015-12-27 15:58:12 -02:00
Lucas De Marchi 0a1dbab24e AP_BattMonitor: remove unused AP_ADC_AnalogSource 2015-12-03 13:32:42 +11:00
Caio Marcelo de Oliveira Filho 6e7b73610d waf: add waf support 2015-12-03 07:54:30 +11:00
Andrew Tridgell 6dd45998f4 AP_BattMonitor: support FMUv4 2015-11-27 18:54:30 +11:00
Caio Marcelo de Oliveira Filho 3b4e18043b AP_BattMonitor: examples use millis/micros/panic functions 2015-11-20 12:29:52 +09:00
Caio Marcelo de Oliveira Filho 9eb945d24f AP_BattMonitor: use millis/micros/panic functions 2015-11-20 12:29:45 +09:00
Andrew Tridgell 8f4ce7f20b build: removed all nocore.inoflag files
these were APM2 specific
2015-11-16 08:05:17 +11:00
Lucas De Marchi 12c88570d7 AP_BattMonitor: remove checks for HAL_BOARD_APM2 and HAL_BOARD_APM1 2015-11-04 12:14:11 +11:00
Lucas De Marchi 831d8acca5 Remove use of PROGMEM
Now variables don't have to be declared with PROGMEM anymore, so remove
them. This was automated with:

    git grep -l -z PROGMEM | xargs -0 sed -i 's/ PROGMEM / /g'
    git grep -l -z PROGMEM | xargs -0 sed -i 's/PROGMEM//g'

The 2 commands were done so we don't leave behind spurious spaces.

AVR-specific places were not changed.
2015-10-30 14:35:16 +09:00
Lucas De Marchi d276029e35 AP_BattMonitor: fix class name after rename in AP_HAL_Linux 2015-10-21 10:11:19 +11:00
Caio Marcelo de Oliveira Filho 8e1e77007e AP_BattMonitor: remove unnecessary includes in example 2015-10-21 09:16:10 +11:00
Caio Marcelo de Oliveira Filho ec52df991c build: compile only the HAL files needed by the board
Instead of requiring every program to specify the HAL related modules,
let the build system do it (in practice everything we compiled depended
on HAL anyway). This allow including only the necessary files in the
compilation.
2015-10-21 09:16:07 +11:00
Caio Marcelo de Oliveira Filho 2e464a53c2 AP_HAL: make code not depend on concrete HAL implementations
The switching between different AP_HAL was happening by giving different
definitions of AP_HAL_BOARD_DRIVER, and the programs would use it to
instantiate.

A program or library code would have to explicitly include (and depend)
on the concrete implementation of the HAL, even when using it only via
interface.

The proposed change move this dependency to be link time. There is a
AP_HAL::get_HAL() function that is used by the client code. Each
implementation of HAL provides its own definition of this function,
returning the appropriate concrete instance.

Since this replaces the job of AP_HAL_BOARD_DRIVER, the definition was
removed.

The static variables for PX4 and VRBRAIN were named differently to avoid
shadowing the extern symbol 'hal'.
2015-10-21 09:16:07 +11:00
Lucas De Marchi 6c19f741df AP_BattMonitor: use method for downcast
Instead of just doing a static cast to the desired class, use a method
named "from". Pros:

  - When we have data shared on the parent class, the code is cleaner in
    child class when it needs to access this data. Almost all the data
    we use in AP_HAL benefits from this

  - There's a minimal type checking because now we are using a method
    that can only receive the type of the parent class
2015-09-23 09:01:29 +10:00
Randy Mackay bb891a62d3 BattMonitor: fix parameter descriptions 2015-08-26 11:17:48 +09:00
Gustavo Jose de Sousa ff20124f1d AP_BattMonitor: standardize inclusion of libaries headers
This commit changes the way libraries headers are included in source files:

 - If the header is in the same directory the source belongs to, so the
 notation '#include ""' is used with the path relative to the directory
 containing the source.

 - If the header is outside the directory containing the source, then we use
 the notation '#include <>' with the path relative to libraries folder.

Some of the advantages of such approach:

 - Only one search path for libraries headers.

 - OSs like Windows may have a better lookup time.
2015-08-11 16:28:42 +10:00
Randy Mackay 42c7b4a116 BattMon_SMBus: remove unnecessary I2C semaphore give 2015-08-07 15:50:38 +09:00
Randy Mackay 3dfb447fd7 BattMon: has_current true for Bebop
The bebop does not actually provide current but it does estimate the
percentage of battery remaining
2015-07-23 21:49:32 +09:00
Randy Mackay 8403b504d1 BattMon: add Bebop to monitor param description 2015-07-23 21:49:32 +09:00
Randy Mackay 9482578c60 BattMon: Bebop always uses bebop batt monitor 2015-07-23 21:49:31 +09:00
Randy Mackay 84b6ab0707 BattMon_Bebop: use ARRAY_SIZE
Also remove printf of failure message, instead we should add the battery
monitor health to the SYS_STATUS message sent to the ground station
2015-07-23 21:49:30 +09:00
Randy Mackay 3b36178a0b BattMon_Bebop: init members in constructor 2015-07-23 21:49:29 +09:00
Jean-Baptiste Dubois 35ae562dbe AP_BattMonitor: Add battery support for Bebop Hardware 2015-07-23 21:49:27 +09:00
Przemek Lekston 90378b21da AP_BattMonitor: Fix battery monitor Floating Point Exception in SITL
Adds a sanity check to avoid division by zero when BATT_CAPACITY is set to 0.
2015-06-29 16:42:52 +10:00
mirkix a1d478909a AP_BattMonitor: Add Linux support for example 2015-06-18 09:00:01 +10:00
Andrew Tridgell debe7db861 AP_BattMonitor: convert example from .pde to .cpp 2015-06-01 16:58:11 +10:00
Randy Mackay 5560d3dba1 BattMonitor: fix example sketch 2015-05-12 21:34:24 +09:00
Andrew Tridgell 8055e5792d AP_BattMonitor: fix for HAL_SITL rename 2015-05-05 09:45:55 +10:00
Tom Pittenger dbc01e2f1a BattMon: fix compile warning re to unused variable 2015-04-24 14:18:36 +09:00
Tom Pittenger 0926cf17dd BattMon: fix compile warnings re float constants 2015-04-24 12:27:23 +09:00
Randy Mackay 56d2306a18 BattMon_SMBus_PX4: read capacity 2015-04-11 14:10:22 +09:00
Randy Mackay c6440a48b3 BattMon_Backend: add init and set_capacity methods 2015-04-11 14:10:19 +09:00
Randy Mackay c7dd6ae816 BattMon: SMBus becomes unhealthy after 5sec timeout
Also remove unused internal variable
2015-03-20 11:05:30 +09:00
Randy Mackay c44f304253 BattMon: analog monitor always healthy 2015-03-20 11:05:27 +09:00
Randy Mackay 1217ab9579 BattMon: add get_type method 2015-03-03 15:48:24 +09:00
Emile Castelnuovo 90663664f3 AP_BattMonitor: VRBRAIN deleted unused boards, corrected default batt volt divider. 2015-02-02 08:44:01 +11:00