Hi Alvaro,

I’m not an MBD specialist, so I’d appreciate your advice.

I need to model a system *without detailed body shapes*, but I still need 
to handle *collision/contact* and detect *slippage*.

   - 
   
   *Body 1* is always trying to rotate *CCW* due to a constant *100 N load*, 
   but its motion is resisted by *Body 2*.
   - 
   
   A *linear pull* is applied to *Body 3*; this force is transferred to *Body 
   2*, causing Body 2 to try to rotate *CCW*.
   - 
   
   During this continuous pull, I need to track the *force in the pulling 
   direction* up to the moment when *slip occurs between Body 1 and Body 2*.
   - 
   
   *Body 1* has a *torsional spring (CCW)* that helps it rotate CCW more 
   easily.
   - 
   
   *Body 2* has a *torsional spring (CW)* that keeps it in its initial 
   position after slippage occurs.
   
How can I model this kind of force transfer and slip detection *without 
using  basic geometry*?
Any guidance or recommended approach would really help me kick-start this 
project.
Thank You

Regards,
SIDDHARTH L
 

On Tuesday, 30 September 2025 at 8:22:45 pm UTC+5:30 [email protected] 
wrote:

> Hello! I am not a developer but hopefully I can help to get you started. 
>
> 1- If you are interested in the mechanism motion and not any deformation 
> (FEA), you don't need any shape or geometry. You can work with the CGs of 
> each body and the location of the joints (roughly).
>
> 2- You can work with the mechanism out of the gravity and plane and 
> therefore set "g" to zero. However, you need the bodies mass (for 
> displacement DOFs) and Inertia (Rotation DOFs). There can be coupling but 
> rule of thumb that works. PyChrono sets default values for mass and inertia 
> to 1. 
>
> 3- Your model has six bodies unless the angles where you have the rotation 
> arrows are fixed. If these angles are not fixed, each circular arrow is a 
> REVOLUT constraint, the Yellow ball is a PRISMATIC constraint, and the blue 
> ball is also a PRISMATIC constraint if the surface is planar, good first 
> approximation, or a CONTACT if not, which can be more involved. My 
> recommendation is that you start with PRISMATIC and get the model to run 
> and then you change to contact. Note: I am assuming that the balls are 
> fixed with the bar. 
>
> 4- Apply a body load to body 1, where if the load is always to the right, 
> specify that the load_vector is global (local_load=False).
>
> 5- Apply a motor to set an angular speed or translational speed to 
> whatever value (30mm/s in your case). 
>
> 6- How to measure your reaction force: no idea there on how to 
> specifically access it from Chrono. If you were to model it yourself is 
> basically the Lagrange multiplier associated to the velocity constraint. 
>
> 7- Set your simulation to run until there is no contact or until you reach 
> the limit of the prismatic constrain for the approximated approach (use 99% 
> of the limit to be safe).
>
> 8- Comments on optimization: assuming parametric optimization, you can 
> modify the lengths, mass, Inertia and CG locations which is roughly a 
> combination of density and geometric properties. I am assuming you'll use 
> some gradient free optimization as computing sensitivities here is not 
> possible with the current state of the code (as far as I know). You don't 
> have a lot of design variables so probably genetic algorithms work just 
> fine.
>
> Hope that helps
>
> El martes, 30 de septiembre de 2025 a las 5:11:07 UTC-6, 
> [email protected] escribió:
>
>> I’m working on a *design optimization algorithm*.
>> I don’t have any CAD geometry — instead, I want to *generate 2D planar 
>> mechanisms* using basic shapes such as circles, lines, and arcs 
>> (optionally with thickness). I don’t intend to create any full CAD models.
>>
>> I need to check whether the mechanism works as expected *when an 
>> external force is applied at a point*. The simulation should run *without 
>> considering the body’s own inertia or gravity* — I only want to account 
>> for the *moment generated by the external force and contact friction*.
>>
>> I plan to create the shapes in *PyChrono* programmatically, using 
>> parameters such as points, arm length, and circle radius.
>> On Tuesday, 30 September 2025 at 11:59:59 am UTC+5:30 Siddharth L wrote:
>>
>>> Dear Sir,
>>>
>>> I currently do not have access to SolidWorks. My present goal is to 
>>> generate a basic planar mechanism, and I would appreciate your guidance on 
>>> the best approach to start.
>>>
>>> For example, if I need to create one body composed of three basic 
>>> shapes, should I model it as three separate bodies or use the *VisualShape 
>>> *method? Similarly, for linkages, would it be better to use *EasyBox *or 
>>> *LinkSegment*?
>>>
>>> Could you kindly provide a quick overview of the most suitable methods 
>>> or components to use for this purpose? I would like to try implementing an 
>>> initial-level code based on your suggestions.
>>>
>>> Thank you for your time and support.
>>> On Tuesday, 30 September 2025 at 3:06:19 am UTC+5:30 Dan Negrut wrote:
>>>
>>>> A good start would probably be to use the Solidworks to PyChrono 
>>>> pipeline.
>>>>
>>>> Not that you have to, but it could give you a jump start.
>>>>
>>>> Dan
>>>>
>>>> ---------------------------------------------
>>>>
>>>> Bernard A. and Frances M. Weideman Professor
>>>>
>>>> NVIDIA CUDA Fellow
>>>>
>>>> Department of Mechanical Engineering
>>>>
>>>> Department of Computer Science
>>>>
>>>> University of Wisconsin - Madison
>>>>
>>>> 4150ME, 1513 University Avenue
>>>>
>>>> Madison, WI 53706-1572
>>>>
>>>> 608 772 0914 <(608)%20772-0914>
>>>>
>>>> http://sbel.wisc.edu/
>>>>
>>>> http://projectchrono.org/ 
>>>>
>>>> ---------------------------------------------
>>>>
>>>>  
>>>>
>>>> *From:* [email protected] <[email protected]> *On 
>>>> Behalf Of *Siddharth L
>>>> *Sent:* Monday, September 29, 2025 7:22 AM
>>>> *To:* ProjectChrono <[email protected]>
>>>> *Subject:* [chrono] Help Needed to create the Mechanism
>>>>
>>>>  
>>>>
>>>> I want to model a mechanism (see attached image) with the following 
>>>> setup:
>>>>
>>>>    - *Body 1* and *Body 2* are in contact, and *Body 3* is an arm 
>>>>    connected to the mechanism.
>>>>    - I want to *pull the end of Body 3 at a constant speed of 30 mm/s*.
>>>>    - While pulling, I need to *track the force (magnitude and 
>>>>    direction) at the pulling point* until *Body 1 and Body 2 slip* 
>>>>    relative to each other.
>>>>    - A constant *100 N force* is applied to Body 1, trying to rotate 
>>>>    it counterclockwise (CCW).
>>>>
>>>> Could you guide me on how to *create the basic shapes for these bodies* 
>>>> in PyChrono and how to *simulate this pulling motion and measure the 
>>>> reaction force*?
>>>>
>>>>
>>>>  
>>>>
>>>> -- 
>>>> 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/52f2d3e4-42f7-42c7-beb5-5e42c7b30d40n%40googlegroups.com
>>>>  
>>>> <https://urldefense.com/v3/__https:/groups.google.com/d/msgid/projectchrono/52f2d3e4-42f7-42c7-beb5-5e42c7b30d40n*40googlegroups.com?utm_medium=email&utm_source=footer__;JQ!!Mak6IKo!KyCQHUEKrTdDDkGXfCVvr8AhY2nZIovjo0DEy4dwkIK18o0Dw7IFkmv3QmbgwP39p-O0VjI12BAwwOIGWrY8-w$>
>>>> .
>>>>
>>>

-- 
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/0c772a58-6e42-4c36-81d2-42f54cd07896n%40googlegroups.com.

Reply via email to