Hi Michele, You didn’t specify if you are interested in non-smooth (NSC) or smooth (SMC) contact formulation. As Alessandro pointed out, for the latter, there’s no need to mess with the friction constraints. For SMC, you could include the proper friction forces by using a ChRSDA (for revolute joints) or ChTSDA (for prismatic joints) with custom TorqueFunctor<https://github.com/projectchrono/chrono/blob/75fb6835587d33fa1e2956f5ae40d50d5688b965/src/chrono/physics/ChLinkRSDA.h#L74> or ForceFunctor<https://github.com/projectchrono/chrono/blob/75fb6835587d33fa1e2956f5ae40d50d5688b965/src/chrono/physics/ChLinkTSDA.h#L117>, respectively. In the implementation of these custom callbacks, you have access to all quantities you would need to implement a friction model (such as Coulomb).
--Radu From: [email protected] <[email protected]> On Behalf Of Michele Bucceri Sent: Tuesday, January 7, 2025 4:14 PM To: ProjectChrono <[email protected]> Subject: [chrono] Re: Revolute joint friction? Thanks Alessandro for your reply! That's a pitty, but yes, I agree completely about the complexity because of the non-smoothness of the constraint, and that's why I hoped it was implemented and hidden in some dark spot of the code :-). I will try to go with your hint to use a ChConstraintTwoTuplesFrictionT class! Cheers and grazie! Michele On Tuesday, January 7, 2025 at 3:40:34 PM UTC+1 [email protected]<mailto:[email protected]> wrote: Hi Michele, you are right - at the moment there is no model for static friction in joints. This is a feature that I postponed for a while, and I never had time to implement because it was too low in my priority list. It is not easy to do because (at least in a context of DVI nonsmooth dynamics) it requires some low level stuff in terms of ChVariable and ChConstraint class hierarchy - even if probably one could just reuse the ChConstraintTwoTuplesFrictionT class that was meant for 3d contact, and put it inside a ChLinkMate-inherited new constraint along with other ChConstrainTwoBodies. But not sure, until I'll have time to play with this. Also, if you need this feature in smooth dynamics (ex ChSystemSMC, not ChSystemNSC) then it will be a different story. It would be a matter of force fields as in Pacejka formulas etc. thanks Alessandro Tasora Il giorno sabato 4 gennaio 2025 alle 15:52:14 UTC+1 [email protected] ha scritto: Hi all, I'm loking into the documentation of this amazing project to understand if it is suitable to be used in my case, so I'm definitly a newbie / beginner and I apologize if the question is trivial. I'm modelling a serial robot and I'm loking a way to simulate static joint friction (for a revolute or prismatic joint) but I'm not able to find any model for that, even a simple static friction model (Coulomb). I've seen that the friction physycs could be added through a ChContactMaterial<https://urldefense.com/v3/__https:/api.projectchrono.org/classchrono_1_1_ch_contact_material.html__;!!Mak6IKo!J_S8rOmd9pAwi-Pvpp0WgDu23T4TCHUQdiJ1OqmWFAcj831S3kgCj41MLSDFNFLvnedPKHy5FbVVtbbr$> and a collision box, which seems a bit overkilling for the specific case. I've also seen in the forum a proposal to add a ChLinkLock<https://urldefense.com/v3/__https:/api.projectchrono.org/classchrono_1_1_ch_link_lock.html__;!!Mak6IKo!J_S8rOmd9pAwi-Pvpp0WgDu23T4TCHUQdiJ1OqmWFAcj831S3kgCj41MLSDFNFLvnedPKHy5FcWp1RP-$> to the joint, but this do not manage static friction (only constant torque and viscous damping). Am I missing something? Thanks a lot for any hints / help! Michele Bucceri Confidentiality Notice: This email and any documents attached to it, may include information that is confidential and intended only for the use of the recipient(s) named above. If you believe you have received this email in error, please notify the sender and delete the message and all attached documents. Disclosure, copying, distribution or use of confidential information included in this email or its attachments, by anyone other than an intended recipient, is strictly prohibited. Confidentiality Notice: This email and any documents attached to it, may include information that is confidential and intended only for the use of the recipient(s) named above. If you believe you have received this email in error, please notify the sender and delete the message and all attached documents. Disclosure, copying, distribution or use of confidential information included in this email or its attachments, by anyone other than an intended recipient, is strictly prohibited. -- You received this message because you are subscribed to the Google Groups "ProjectChrono" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]<mailto:[email protected]>. To view this discussion visit https://groups.google.com/d/msgid/projectchrono/9e15baa3-72b3-481e-be08-6eb804a0d8b7n%40googlegroups.com<https://urldefense.com/v3/__https:/groups.google.com/d/msgid/projectchrono/9e15baa3-72b3-481e-be08-6eb804a0d8b7n*40googlegroups.com?utm_medium=email&utm_source=footer__;JQ!!Mak6IKo!J_S8rOmd9pAwi-Pvpp0WgDu23T4TCHUQdiJ1OqmWFAcj831S3kgCj41MLSDFNFLvnedPKHy5FZ3-IXOe$>. -- You received this message because you are subscribed to the Google Groups "ProjectChrono" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion visit https://groups.google.com/d/msgid/projectchrono/CH3PPF46CDC21859FA73325BF94F2D2C5B2A7E42%40CH3PPF46CDC2185.namprd06.prod.outlook.com.
