Feature/817 mechanism for zeroing effector control alg msg outputs#943
Merged
Natsoulas merged 4 commits intoApr 4, 2025
Merged
Conversation
schaubh
requested changes
Feb 27, 2025
Contributor
schaubh
left a comment
There was a problem hiding this comment.
Getting close, need to address a few small items. Shouldn't take long.
1ab549d to
a04641f
Compare
a04641f to
dbd386b
Compare
844bc0f to
a82eb1e
Compare
schaubh
requested changes
Apr 3, 2025
Contributor
schaubh
left a comment
There was a problem hiding this comment.
Almost there. Some simple RST formatting fix, and updating the unit tests to check, after the simulation runs, that calling Reset() does zero the module effector output messages. Then we are building this functionality into our unit tests.
9cfde49 to
c2f9145
Compare
c2f9145 to
e48942b
Compare
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.
Description
This PR addresses the issue of FSW algorithm modules failing to zero their output messages when disabled, which could lead to runaway operations. The approach taken was to review effector interface modules and implement consistent zeroing functionality in their reset methods.
The following modules were modified to zero their output messages in their
Resetmethods:rwMotorVoltagetorque2DipoledipoleMappingforceTorqueThrForceMappingtorqueSchedulerthrusterPlatformReferencethrusterPlatformStateEach implementation follows the same pattern:
_zeroMsgPayload()functionSome modules like
thrustRWDesatwere found to already have the necessary zeroing functionality in place.Verification
The changes were validated by:
Resetmethod, which is called when modules are disabledNo new tests were added as this is a safety enhancement to existing functionality. The existing module tests will continue to validate the behavior of these modules.
Documentation
The release notes have been updated to include an entry about this enhancement.
The .rst documentation for all relevant effectors have been updated to mention the zeroing behavior on reset.
No other documentation was invalidated by these changes as they merely enhance existing functionality.
Future work
No immediate future work is anticipated. However, as new effector interface modules are added to the codebase, they should follow this pattern of zeroing output messages in their reset methods to maintain consistent safety behavior.