-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Doxygen on how to estimate hydroelastic contact parameters #21987
base: master
Are you sure you want to change the base?
Doxygen on how to estimate hydroelastic contact parameters #21987
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+@sherm1 for feature review.
I'd still need to add a couple schematics (Figs 1 and 2 in the text), but I believe that won't slow you down at all. You can start the review. I'll push those figs next week. I wanted to make sure the contet is right first.
cc'ing @joemasterjohn
Reviewable status: LGTM missing from assignee sherm1(platform), needs at least two assigned reviewers, missing label for release notes (waiting on @amcastro-tri)
76c3708
to
bb80578
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
First pass done.
Awesome! A few questions and comments. I'll make another pass when the figures are in.
Reviewed 2 of 2 files at r1, all commit messages.
Reviewable status: 14 unresolved discussions, LGTM missing from assignee sherm1(platform), needs at least two assigned reviewers, missing label for release notes (waiting on @amcastro-tri)
multibody/plant/doxygen_hydroelastic_parameters.h
line 8 at r1 (raw file):
/** @addtogroup hydro_params Estimation of Hydroelastic Parameters Similarly to Hertz's theory of contact mechanics, in this section we derive
BTW you can call this "Hertz theory" (rather than "Hertz's theory") and avoid the extra punctuation and weird pronunciation.
multibody/plant/doxygen_hydroelastic_parameters.h
line 9 at r1 (raw file):
Similarly to Hertz's theory of contact mechanics, in this section we derive analytical formulae to estimate the elastic force that establishes between two
BTW consider using "formulas" as the plural. Google says that form is used in "everyday writing", i.e. it isn't as uppity as "formulae".
multibody/plant/doxygen_hydroelastic_parameters.h
line 11 at r1 (raw file):
analytical formulae to estimate the elastic force that establishes between two bodies in contact. As in Hertz's theory, we assume small deformations, allowing us to introduce geometrical approximations.
BTW consider adding a short paragraph on how this section could be useful to a person using Drake. How should someone make use of this information?
multibody/plant/doxygen_hydroelastic_parameters.h
line 23 at r1 (raw file):
The table below summarizes analytical formulae to compute the contact force between a body of a given geometric shape with a half-space. The body penetrates a distance `x` into the table.
BTW later you re-use "x" to mean a generic point on the contact surface, while here it is a scalar penetration depth. It's confusing to use the same symbol for two different things in the same paper. Consider using some other symbol for the few places where penetration depth is used in this section -- maybe "d" or "δ"?
multibody/plant/doxygen_hydroelastic_parameters.h
line 29 at r1 (raw file):
Cylinderᵃ | R |@f$\pi R^2 x@f$ |@f$\pi E R x@f$ Sphereᵇ | R |@f$\pi R x^2@f$ |@f$\pi E x^2@f$ Coneᶜ | H |@f$\pi/3\tan^2(\theta)x^3@f$ |@f$\pi/3 \tan^2(\theta) E/H x^3@f$
BTW what is the source for these formulas? KL Johnson? I'd like to double check in case of typos or whatever.
multibody/plant/doxygen_hydroelastic_parameters.h
line 31 at r1 (raw file):
Coneᶜ | H |@f$\pi/3\tan^2(\theta)x^3@f$ |@f$\pi/3 \tan^2(\theta) E/H x^3@f$ ᵃ Compliant cylinder of radius R and length L > R. Rigid half-space.
minor: should state explicitly that you are considering the case where the cylinder's end cap is contacting the half space. It could also be lying on its side in which case the contact would be very different.
I guess you could call it a "cylindrical indenter". Or a coffee cup!
multibody/plant/doxygen_hydroelastic_parameters.h
line 37 at r1 (raw file):
ᶜ Rigid conic indenter of apex angle θ. Compliant half-space. One final observation. As with Hert'z contact theory, the contact force between
typo: spurious apostrophe Hert'z -> Hertz
multibody/plant/doxygen_hydroelastic_parameters.h
line 69 at r1 (raw file):
degrade numerical conditioning and therefore users must choose a value that is acceptable for their application. Experience shows that for modeling "rigid" (once again, stiff) objects, there is no much gain in accurately resolving
typo: no -> not
multibody/plant/doxygen_hydroelastic_parameters.h
line 71 at r1 (raw file):
(once again, stiff) objects, there is no much gain in accurately resolving penetrations below the submillimeter range (~10⁻⁴ m). Therefore moduli in the order of 10⁷-10⁸ Pa will be more than enough, we no good practical reason to use
typo: we -> with
multibody/plant/doxygen_hydroelastic_parameters.h
line 128 at r1 (raw file):
advantages over traditional EFM - Hydroelastic contact generalizes to arbitrary non-convex geometry - Large _deformations_ (interpenetration) are allowed
BTW consider "deformations" (in quotes) rather than italics. Quotes are better assuming you are trying to emphasize that these are fictional (since there isn't really any deformation).
multibody/plant/doxygen_hydroelastic_parameters.h
line 135 at r1 (raw file):
Given the clear connection between hydroelastic contact and EFM, we use this analogy to derive analytical formula to estimate contact forces. More precisely,
typo: derive -> derive an
multibody/plant/doxygen_hydroelastic_parameters.h
line 155 at r1 (raw file):
where κ = κᵃ⋅κᵇ/(κᵃ+κᵇ) is the effective stiffness and κᵃ = Eᵃ/Hᵃ and κᵇ = Eᵇ/Hᵇ are the stiffness of bodies A and B respectively. V is the volume the original geometries would overlap if the did not deform.
typo: the -> they
multibody/plant/doxygen_hydroelastic_parameters.h
line 162 at r1 (raw file):
Hydroelastic contact model, where the balance of normal stresses (pressure) determines the location of the contact surface. Still, we find that this derivation leads to exactly the same result in (2).
BTW cool!
multibody/plant/doxygen_hydroelastic_parameters.h
line 172 at r1 (raw file):
We use the EFM approximation (1) to model the normal stress (pressure) that results from deforming each body A and B amounts ϕᵃ(x) and ϕᵇ(x) respectively. With this, the balance of momentum at each point on the contact surface is
minor: momentum -> pressure
We might want (maybe) to expand these a bit further to add a couple more case (e.g. grippers), but I think this is a good start.
It'll help me reference estimations for #21463.
This change is