forked from Archive/PX4-Autopilot
launchdetection: add minimal throttle, fix parameter update
This commit is contained in:
parent
95c20ba9f9
commit
d1e991f1f0
|
@ -43,7 +43,8 @@
|
|||
#include <systemlib/err.h>
|
||||
|
||||
LaunchDetector::LaunchDetector() :
|
||||
launchdetection_on(NULL, "LAUN_ALL_ON", false)
|
||||
launchdetection_on(NULL, "LAUN_ALL_ON", false),
|
||||
throttle_min(NULL, "LAUN_THR_MIN", false)
|
||||
{
|
||||
/* init all detectors */
|
||||
launchMethods[0] = new CatapultLaunchMethod();
|
||||
|
@ -83,10 +84,11 @@ bool LaunchDetector::getLaunchDetected()
|
|||
void LaunchDetector::updateParams() {
|
||||
|
||||
warnx(" LaunchDetector::updateParams()");
|
||||
//launchdetection_on.update();
|
||||
launchdetection_on.update();
|
||||
throttle_min.update();
|
||||
|
||||
for (uint8_t i = 0; i < sizeof(launchMethods)/sizeof(LaunchMethod); i++) {
|
||||
//launchMethods[i]->updateParams();
|
||||
launchMethods[i]->updateParams();
|
||||
warnx("updating component %d", i);
|
||||
}
|
||||
|
||||
|
|
|
@ -59,11 +59,14 @@ public:
|
|||
void updateParams();
|
||||
bool launchDetectionEnabled() { return (bool)launchdetection_on.get(); };
|
||||
|
||||
float getMinThrottle() {return throttle_min.get(); }
|
||||
|
||||
// virtual bool getLaunchDetected();
|
||||
protected:
|
||||
private:
|
||||
LaunchMethod* launchMethods[1];
|
||||
control::BlockParamInt launchdetection_on;
|
||||
control::BlockParamFloat throttle_min;
|
||||
|
||||
|
||||
};
|
||||
|
|
|
@ -33,11 +33,11 @@
|
|||
****************************************************************************/
|
||||
|
||||
/**
|
||||
* @file fw_pos_control_l1_params.c
|
||||
* @file launchdetection_params.c
|
||||
*
|
||||
* Parameters defined by the L1 position control task
|
||||
* Parameters for launchdetection
|
||||
*
|
||||
* @author Lorenz Meier <lm@inf.ethz.ch>
|
||||
* @author Thomas Gubler <thomasgubler@gmail.com>
|
||||
*/
|
||||
|
||||
#include <nuttx/config.h>
|
||||
|
@ -65,3 +65,8 @@ PARAM_DEFINE_FLOAT(LAUN_CAT_A, 30.0f);
|
|||
// @Description LAUN_CAT_A * LAUN_CAT_T serves as threshold to trigger launch detection
|
||||
// @Range > 0, in seconds
|
||||
PARAM_DEFINE_FLOAT(LAUN_CAT_T, 0.05f);
|
||||
|
||||
// @DisplayName Throttle setting while detecting the launch
|
||||
// @Description The throttle is set to this value while the system is waiting for the takeoff
|
||||
// @Range 0 to 1
|
||||
PARAM_DEFINE_FLOAT(LAUN_THR_MIN, 0.0f);
|
||||
|
|
|
@ -1028,7 +1028,7 @@ FixedwingPositionControl::control_position(const math::Vector2f ¤t_positio
|
|||
}
|
||||
|
||||
} else {
|
||||
throttle_max = 0.0f;
|
||||
throttle_max = launchDetector.getMinThrottle();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue