How to Change the Geometry (Convex Hull) Generated by the 'General Solid Block' in Simscape Multibody?

11 vues (au cours des 30 derniers jours)
I've been modelling a cycloidal drive dynamics model. I kept noticing the behaviour of the contact was not as expected (it felt like the contact model was not taking into account the shape of the cycloidal gear teeth). I plotted the convex hull to check if the contact geometry is correct. Turns out the convex hull has no teeth/lobes of the cycloid and therefore is not behaving physically correct.
Yes, I tried populating the profile with a point-clould and simulate, and it works, but I cannot take any force measurements from the spacial force block in case a point cloud is used.
I was wondering if there is a way I can generate my own 'geometry' (other than the default convex hull method) to resolve this problem?

Réponse acceptée

Aditya Srikar
Aditya Srikar le 26 Mai 2023
Yes, one possible approach to generate your own contact geometry for a cycloidal gear set is to use the cycloidal profile equation and define the contact surfaces based on it. You can then use this geometry to implement your own contact model in MATLAB using the SimMechanics or Simscape Multibody toolboxes.
Here are the high-level instructions for generating the contact geometry:
1. Determine the cycloidal profile equation for the gears. This equation will describe the shape of each gear's lobes.
2. Define the contact surfaces for each gear based on their profile equations. Each contact surface will represent the portion of the gear's lobes that interact with the other gear in the mesh.
3. Create a 3D model of the gears with their contact surfaces using a CAD tool or MATLAB's geometry creation functions.
4. Import the gears into SimMechanics or Simscape Multibody and define the contact between their contact surfaces.
5. Define the gear properties and other simulation parameters, and simulate the system.
6. Analyze the simulation results to validate the accuracy of the model and adjust the gear geometry and/or contact parameters as necessary.
  3 commentaires
Aditya Srikar
Aditya Srikar le 29 Mai 2023
Yes, you can define the number of lobes as a parameter in a MATLAB script or a Simulink model and use it to automate the generation of contact bodies in a Simscape Multibody model. This can be done by using MATLAB functions to create and manipulate the multibody objects programmatically based on the number of lobes specified by the user. This approach can save time and improve the repeatability of the model simulation.
Sarath Chandra
Sarath Chandra le 29 Mai 2023
Modifié(e) : Sarath Chandra le 1 Juin 2023
Could you please give a resource I can read on how to automate the generation of contact bodies?
EDIT: ..on how to programatically create simscape objects?

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Simulation and Analysis dans Help Center et File Exchange

Produits


Version

R2023a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by