Added per-motor control to thunderscope diagnostics. (new) #3423
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.
Description
Added per motor control as a set of radio buttons in thunderscope diagnostic. Direct velocity and per motor control will switch depending on which radio button is pressed. The two control widgets will not appear at the same time, since both inputs are not allowed at the same time. Pressing the button for per-motor control will shut off direct-velocity control and reset those sliders, then switch the widget for per-motor control. Vice versa also applies.
Testing Done
It was tested on a robot in the mezz on Jan 25th. Test was made on all sliders of direct-velocity, switching to per-motor without using reset, changing sliders on per-motor, and switching back to direct-velocity. Back-and-forth was done twice. The robot did all the commands it was told to on all motors. It was also tested using print() on the terminal.
Resolved Issues
resolves #3320
Length Justification and Key Files to Review
drive_and_dribbler_widget.py
Added functions similar to existing ones, but that apply to per-motor controls as opposed to direct-velocity controls. Also added an enum for the control mode.
Review Checklist
This PR was reviewed before, but since it was a long time ago, I decided to make a new branch instead of resolving all the merge conflicts on the old one.
.h
file) should have a javadoc style comment at the start of them. For examples, see the functions defined inthunderbots/software/geom
. Similarly, all classes should have an associated Javadoc comment explaining the purpose of the class.TODO
(or similar) statements should either be completed or associated with a github issue