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

9 次查看(过去 30 天)
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?

采纳的回答

Aditya Srikar
Aditya Srikar 2023-5-26
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 个评论
Aditya Srikar
Aditya Srikar 2023-5-29
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 2023-5-29
编辑:Sarath Chandra 2023-6-1
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?

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Simulation and Analysis 的更多信息

标签

产品


版本

R2023a

Community Treasure Hunt

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

Start Hunting!

Translated by