diff options
author | James Goppert <james.goppert@gmail.com> | 2013-10-22 05:43:10 -0400 |
---|---|---|
committer | James Goppert <james.goppert@gmail.com> | 2013-10-22 05:43:10 -0400 |
commit | d143e827dcd774548bca6d6b4cb6fb69ef35a826 (patch) | |
tree | 58672449587efcba18dfc399a67bed888fb372ca /src/modules/segway/BlockSegwayController.cpp | |
parent | 108d723a4902086f883136c7de6a75d65256500b (diff) | |
download | px4-firmware-d143e827dcd774548bca6d6b4cb6fb69ef35a826.tar.gz px4-firmware-d143e827dcd774548bca6d6b4cb6fb69ef35a826.tar.bz2 px4-firmware-d143e827dcd774548bca6d6b4cb6fb69ef35a826.zip |
Updated segway controller for new state machine.
Diffstat (limited to 'src/modules/segway/BlockSegwayController.cpp')
-rw-r--r-- | src/modules/segway/BlockSegwayController.cpp | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/modules/segway/BlockSegwayController.cpp b/src/modules/segway/BlockSegwayController.cpp index b1dc39445..96a443c6e 100644 --- a/src/modules/segway/BlockSegwayController.cpp +++ b/src/modules/segway/BlockSegwayController.cpp @@ -26,7 +26,7 @@ void BlockSegwayController::update() { _actuators.control[i] = 0.0f; // only update guidance in auto mode - if (_status.state_machine == SYSTEM_STATE_AUTO) { + if (_status.main_state == MAIN_STATE_AUTO) { // update guidance } @@ -34,17 +34,18 @@ void BlockSegwayController::update() { float spdCmd = -th2v.update(_att.pitch) - q2v.update(_att.pitchspeed); // handle autopilot modes - if (_status.state_machine == SYSTEM_STATE_AUTO || - _status.state_machine == SYSTEM_STATE_STABILIZED) { + if (_status.main_state == MAIN_STATE_AUTO || + _status.main_state == MAIN_STATE_SEATBELT || + _status.main_state == MAIN_STATE_EASY) { _actuators.control[0] = spdCmd; _actuators.control[1] = spdCmd; - } else if (_status.state_machine == SYSTEM_STATE_MANUAL) { - if (_status.manual_control_mode == VEHICLE_MANUAL_CONTROL_MODE_DIRECT) { + } else if (_status.main_state == MAIN_STATE_MANUAL) { + if (_status.navigation_state == NAVIGATION_STATE_DIRECT) { _actuators.control[CH_LEFT] = _manual.throttle; _actuators.control[CH_RIGHT] = _manual.pitch; - } else if (_status.manual_control_mode == VEHICLE_MANUAL_CONTROL_MODE_SAS) { + } else if (_status.navigation_state == NAVIGATION_STATE_STABILIZE) { _actuators.control[0] = spdCmd; _actuators.control[1] = spdCmd; } |