Skip to content

[Driveline] Add explicit halfshafts and open differential - #45

Merged
rhorvath02 merged 4 commits into
review/boblib-aerofrom
review/boblib-differential-components
Oct 25, 2026
Merged

rhorvath02 merged 4 commits into
review/boblib-aerofrom
review/boblib-differential-components

Conversation

@rhorvath02

@rhorvath02 rhorvath02 commented Oct 22, 2026 •

Copy link
Copy Markdown
Member

Purpose

Make halfshafts and differential behavior independently usable components of the driveline.

Approach

Add an explicit halfshaft model, an ideal open differential, and categorical drive-layout/differential selections. Keep these components separate from the vehicle-level driveline adapter.

Validation

Includes halfshaft, open-differential and locked-differential fixtures. Fixture paths, test collection and Modelica formatting checked.

@rhorvath02
rhorvath02 force-pushed the review/boblib-differential-components branch from 2929835 to 35dc236 Compare October 22, 2026 07:07
@rhorvath02 rhorvath02 added the agent-assisted Developed with AI agent assistance. label Oct 22, 2026

@raorjun raorjun left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The non-spatial halfshaft reaction path still assumes the old wheel. With the #43 wheel, it puts a spin-axis moment on the upright that should not be there.

Comment thread BobLib/Drivelines/Internal/Halfshaft.mo
With a 3D drivetrain the wheel already cancels the contact spin moment at the
upright, so an unmounted wheel-frame halfshaft added a spurious upright torque.
@raorjun

raorjun commented Oct 23, 2026

Copy link
Copy Markdown
Member

Fixed in c06d968. Halfshaft now rejects useWheelFrame = true with useMount = false when world.driveTrainMechanics3D = true, with the message "Halfshaft: useWheelFrame with a 3D drivetrain requires useMount". The guard is in Halfshaft, not InboardShaft, because BrakeReactionSmoke uses the non-spatial shaft on purpose. The InboardShaft docs no longer say the contact moment enters the upright. TestHalfshaft, the differential fixtures and BrakeReactionSmoke simulate. VehicleSim, VehicleFMI and TestRearFinalDriveDifferential pass at the tip. A fixture with the bad combination fails with the message.

@raorjun raorjun left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approve. CI is green, and the review findings are fixed or addressed in the comments above.

@rhorvath02
rhorvath02 merged commit 16b149c into main Oct 25, 2026
3 checks passed
@rhorvath02
rhorvath02 deleted the review/boblib-differential-components branch October 25, 2026 05:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

agent-assisted Developed with AI agent assistance.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants