Rudder: control model, state machine and PLRS-IMU integration - #60
Closed
georgesleen wants to merge 147 commits into
Closed
Rudder: control model, state machine and PLRS-IMU integration#60georgesleen wants to merge 147 commits into
georgesleen wants to merge 147 commits into
Conversation
Should work? unless I overlooked something or tested it wrong Signed-off-by: alisha1697 <143849351+alisha1697@users.noreply.github.com>
Signed-off-by: alisha1697 <143849351+alisha1697@users.noreply.github.com>
Signed-off-by: alisha1697 <143849351+alisha1697@users.noreply.github.com>
Signed-off-by: alisha1697 <143849351+alisha1697@users.noreply.github.com>
Signed-off-by: alisha1697 <143849351+alisha1697@users.noreply.github.com>
Signed-off-by: hml04 <160178026+hml04@users.noreply.github.com>
Signed-off-by: ELEC_lead-ubcsailbot <electrical@ubcsailbot.org>
Signed-off-by: ELEC_lead-ubcsailbot <electrical@ubcsailbot.org>
Signed-off-by: ELEC_lead-ubcsailbot <electrical@ubcsailbot.org>
Signed-off-by: ELEC_lead-ubcsailbot <electrical@ubcsailbot.org>
Signed-off-by: alisha1697 <143849351+alisha1697@users.noreply.github.com>
Added how to power the encoder on the PCB and adjusted a couple of settings in order to get the encoder working, Signed-off-by: JoshuaO956 <148372526+JoshuaO956@users.noreply.github.com>
…ule-firmware into rudder-working-branch
- receives out of range IDs Signed-off-by: Alisha Siddiqui <143849351+alisha1697@users.noreply.github.com>
Signed-off-by: Alisha Siddiqui <143849351+alisha1697@users.noreply.github.com>
Signed-off-by: Alisha Siddiqui <143849351+alisha1697@users.noreply.github.com>
Signed-off-by: Alisha Siddiqui <143849351+alisha1697@users.noreply.github.com>
Signed-off-by: Alisha Siddiqui <143849351+alisha1697@users.noreply.github.com>
Signed-off-by: Alisha Siddiqui <143849351+alisha1697@users.noreply.github.com>
Signed-off-by: Alisha Siddiqui <143849351+alisha1697@users.noreply.github.com>
Signed-off-by: Alisha Siddiqui <143849351+alisha1697@users.noreply.github.com>
Signed-off-by: JoshuaO956 <148372526+JoshuaO956@users.noreply.github.com>
* added parameter tuning for generic rudder controller paramters * oops
A failed FDCAN debug-frame transmit called Error_Handler(), which traps the whole controller (and stops IMU servicing) whenever no CAN bus is present, e.g. on the bench. Count failures in can_tx_failures instead, and reset can_frame_tx_time each attempt so TX keeps its 100ms cadence.
…N bus failures (this can probably be removed lowkey genuinely kirk but maybe it's useful?)
…thub.com/UBCSailbot/com-module-firmware into dev/georgesleen/imu_communication_module
…tps://github.com/UBCSailbot/com-module-firmware into dev/georgesleen/imu_communication_module" This reverts commit 5ee0054, reversing changes made to cea67f1.
Co-Authored-By: Claude Fable 5 <claude-fable-5@anthropic.com>
Co-Authored-By: Claude Fable 5 <claude-fable-5@anthropic.com>
Bring in generic rudder param tuning (#56) and the CANFD heartbeat. Conflicts resolved toward the IMU branch's control model: kept the real irons() and the RudderSM_Update state machine over the working branch's return-0 stub, and adopted the param-tuning CAN IDs (PID coeffs 0x200, generic params 0x210). Pin the PLRS-IMU submodule to main (now ae4b540). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Contributor
Author
|
Superseded by #62, which merges this branch together with the other two module branches into a single integration branch. The conflicts between the three (24 between wingsail and rudder, 1 between wingsail and pdb) are resolved there once rather than falling to whichever PR merges last. This PR can stay open for reference, but merging it directly would leave the other two conflicting against |
Contributor
Author
|
Closing in favour of #62, which contains this branch's tip along with the other three module branches. The conflicts between them are resolved once there rather than falling to whichever of these merged last. Nothing is lost: the tip of this branch is an ancestor of |
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.
Brings
rudder-working-branchintomain. 147 commits, none previouslymerged, so
mainhas none of the rudder control or IMU work.What's in it
rudder-control-modelmodule: PID/RUDDER,ESTIMATOR,STATE_MACHINE,and tunable
RUDDER_PARAMS, with host-side testsplrs-imudriver and protocol (PLRS_IMU_PROTOCOL.h) plus protocol testsfirmware/, bumped to mag-primaryheading (#71)
rudder defaulting to raw MTi
the GNSS-anchor flag
Verification
Not read back from hardware. The local build of this branch is dated the same
day as the branch tip and contains the PLRS-IMU work, but the rudder board
itself was not dumped, so "flashed matches source" is assumed here rather than
verified, unlike the wingsail PR.
Reviewer notes
Diff is large (624 files) but mostly vendored ST HAL drivers. Excluding
Drivers/,Debug/andRelease/it is 158 files.Worth deciding before merge, all pre-existing on the branch:
firmware/drv-modules/rudder-control-model/test_pid.exeandtest_state_machine.exe(~346 KB each). These look like build artifacts andprobably should not be in the repo.
"checking out controller bs", a revert of a same-branch merge). Consider
whether to squash on merge.