diff options
author | Lorenz Meier <lm@inf.ethz.ch> | 2013-07-04 15:46:53 +0200 |
---|---|---|
committer | Lorenz Meier <lm@inf.ethz.ch> | 2013-07-04 15:46:53 +0200 |
commit | d72e9929aa7f3066c3c8c6a09df7a9690b3cdbc5 (patch) | |
tree | fc5468f1e05588c7733b2b371f1f485c21ad6d2d /src/modules/controllib/fixedwing.cpp | |
parent | b01673d1d8717b645747b7630382d666c6377c49 (diff) | |
download | px4-firmware-d72e9929aa7f3066c3c8c6a09df7a9690b3cdbc5.tar.gz px4-firmware-d72e9929aa7f3066c3c8c6a09df7a9690b3cdbc5.tar.bz2 px4-firmware-d72e9929aa7f3066c3c8c6a09df7a9690b3cdbc5.zip |
Fixes to fixed wing control example, fixes to the way the control lib publishes estimates
Diffstat (limited to 'src/modules/controllib/fixedwing.cpp')
-rw-r--r-- | src/modules/controllib/fixedwing.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/modules/controllib/fixedwing.cpp b/src/modules/controllib/fixedwing.cpp index 7be38015c..77b2ac806 100644 --- a/src/modules/controllib/fixedwing.cpp +++ b/src/modules/controllib/fixedwing.cpp @@ -130,7 +130,7 @@ BlockUorbEnabledAutopilot::BlockUorbEnabledAutopilot(SuperBlock *parent, const c _attCmd(&getSubscriptions(), ORB_ID(vehicle_attitude_setpoint), 20), _ratesCmd(&getSubscriptions(), ORB_ID(vehicle_rates_setpoint), 20), _pos(&getSubscriptions() , ORB_ID(vehicle_global_position), 20), - _posCmd(&getSubscriptions(), ORB_ID(vehicle_global_position_setpoint), 20), + _posCmd(&getSubscriptions(), ORB_ID(vehicle_global_position_set_triplet), 20), _manual(&getSubscriptions(), ORB_ID(manual_control_setpoint), 20), _status(&getSubscriptions(), ORB_ID(vehicle_status), 20), _param_update(&getSubscriptions(), ORB_ID(parameter_update), 1000), // limit to 1 Hz @@ -213,7 +213,7 @@ void BlockMultiModeBacksideAutopilot::update() // only update guidance in auto mode if (_status.state_machine == SYSTEM_STATE_AUTO) { // update guidance - _guide.update(_pos, _att, _posCmd, _lastPosCmd); + _guide.update(_pos, _att, _posCmd.current, _lastPosCmd.current); } // XXX handle STABILIZED (loiter on spot) as well @@ -225,7 +225,7 @@ void BlockMultiModeBacksideAutopilot::update() _status.state_machine == SYSTEM_STATE_STABILIZED) { // update guidance - _guide.update(_pos, _att, _posCmd, _lastPosCmd); + _guide.update(_pos, _att, _posCmd.current, _lastPosCmd.current); // calculate velocity, XXX should be airspeed, but using ground speed for now // for the purpose of control we will limit the velocity feedback between @@ -239,7 +239,7 @@ void BlockMultiModeBacksideAutopilot::update() float vCmd = _vLimit.update(_vCmd.get()); // altitude hold - float dThrottle = _h2Thr.update(_posCmd.altitude - _pos.alt); + float dThrottle = _h2Thr.update(_posCmd.current.altitude - _pos.alt); // heading hold float psiError = _wrap_pi(_guide.getPsiCmd() - _att.yaw); @@ -328,7 +328,7 @@ void BlockMultiModeBacksideAutopilot::update() _actuators.control[CH_ELV] = _stabilization.getElevator() + _trimElv.get(); _actuators.control[CH_RDR] = _stabilization.getRudder() + _trimRdr.get(); - // currenlty using manual throttle + // currently using manual throttle // XXX if you enable this watch out, vz might be very noisy //_actuators.control[CH_THR] = dThrottle + _trimThr.get(); _actuators.control[CH_THR] = _manual.throttle; |