Adds new brake axis state and an optional fallthrough on watchdog timeout#652
Open
Jonas-Witt wants to merge 3 commits intoodriverobotics:develfrom
Open
Adds new brake axis state and an optional fallthrough on watchdog timeout#652Jonas-Witt wants to merge 3 commits intoodriverobotics:develfrom
Jonas-Witt wants to merge 3 commits intoodriverobotics:develfrom
Conversation
… watchdog timeout
|
Jonas Witt seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account. You have signed the CLA already but the status is still pending? Let us recheck it. |
Collaborator
|
Hi Jonas, thanks for the PR. Do you have test data you can share? |
Wetmelon
reviewed
Jan 13, 2022
Comment on lines
+183
to
+185
| //controller_.config_.control_mode = Controller::CONTROL_MODE_VELOCITY_CONTROL; | ||
| //controller_.config_.input_mode = Controller::INPUT_MODE_PASSTHROUGH; | ||
| //controller_.input_vel_ = 0; |
Collaborator
There was a problem hiding this comment.
Please remove commented code
Collaborator
|
Is there anything in this PR to prevent spurious communications from fighting with the watchdog for control of the axis? |
Wetmelon
reviewed
Jan 13, 2022
|
|
||
| while ((requested_state_ == AXIS_STATE_UNDEFINED) && motor_.is_armed_) { | ||
| controller_.config_.control_mode = Controller::CONTROL_MODE_VELOCITY_CONTROL; | ||
| controller_.input_vel_ = 0.0f; |
Collaborator
There was a problem hiding this comment.
What if the axis isn't in in INPUT_MODE_PASSTHROUGH?
Member
Collaborator
|
This PR should be refactored and made to fix #704 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

This adds a new axis state
AXIS_STATE_BRAKEthat is the same as closed loop control with forced velocity control & zero velocity input. The main purpose of this new state is to allow a defined axis state that we can safely fallback to in case of a watchdog timeout. A new axis configurationenable_brake_state_fallthrough_on_watchdog_timeoutcontrols this behavior. This fallthrough is a useful safety feature for wheeled robots that may encounter a state where the controlling node disappears and a watchdog timeout is triggered to keep the wheeled robot from rolling down an incline uncontrolled in idle mode.