Yes, the reason is the one that you quoted. Both ChLinkMotorSpeed and ChLinkMotorAngle are Rheonomic (or "Rheonomous" in some literature), that is: the position is strictly enforced by some function of time, in a "geometric sense". Hence they don't allow compliance if they conflict with other constraints, and results can be impredictable.
Only by using force- or torque-based motors like ChLinkMotorTorque (and adding PID controllers for keeping approximately the position via feedback loops, for instance) you can simulate that hard-stop scenario you need. But at the cost of more complication, and some compliance and latency and reduced bandwidth - just like realistic servo motors, by the way. Best regards Alessandro Tasora ________________________________ Da: [email protected] <[email protected]> per conto di Alex Teti <[email protected]> Inviato: martedì 16 agosto 2022, 09:33 A: ProjectChrono Oggetto: [chrono] Re: Strange Motor Collision Behavior "Note: this is a rheonomic motor, i.e. it generates the motion geometrically by strictly enforcing the speed constraint; therefore no compliance is allowed and this means that if the rotating body hits some hard contact, the solver might give unpredictable oscillatory or diverging results because of the contradiction." Is THIS the underlying reason? I don't think I can even say "rheonomic"! On Tuesday, August 16, 2022 at 3:10:33 AM UTC-4 Alex Teti wrote: I was wondering what would happen if a motorized object (a rectangle) collided with a fixed object (a cube). To my surprise, the result was either A) The motorized object (rectangle) being pushed away from its constrained location or B) The stationary object (cube) being pushed away from its constrained location If I made the cube fixed (cube->SetBodyFixed(true);) then the cube would remain stationary and the rectangle would move. If I used a ChLinkLockLock link to link the cube and floor, the cube would be pushed away (and then slowly drift back). Is there a way to make both the objects stationary after they collide, like if some metal object got stuck in a turbine and jammed it? -- 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 on the web visit https://groups.google.com/d/msgid/projectchrono/0346f694-3438-4469-9a90-0ac702567730n%40googlegroups.com<https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgroups.google.com%2Fd%2Fmsgid%2Fprojectchrono%2F0346f694-3438-4469-9a90-0ac702567730n%2540googlegroups.com%3Futm_medium%3Demail%26utm_source%3Dfooter&data=05%7C01%7Calessandro.tasora%40unipr.it%7C5bad7925c1e348beaba608da7f5999d4%7Cbb064bc5b7a841ecbabed7beb3faeb1c%7C0%7C0%7C637962320063475420%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=XE%2Flw5LimnmSwp0IDXwtcfmQyuWVbrweLYnFXWlcMvU%3D&reserved=0>. Firma il tuo 5xmille all'Università di Parma, aiutaci a essere sempre più accoglienti e inclusivi verso le nostre studentesse e i nostri studenti - Indica 00308780345 nella tua denuncia dei redditi. -- 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 on the web visit https://groups.google.com/d/msgid/projectchrono/PAXPR07MB8625646107B9F7624AF07FD1936B9%40PAXPR07MB8625.eurprd07.prod.outlook.com.
