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

조회 수: 11 (최근 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