This commit is contained in:
Quella777
2025-08-25 16:30:02 +08:00
commit 32cc2a8e96
1633 changed files with 289456 additions and 0 deletions

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,16 @@
<?xml version="1.0"?>
<model>
<name>Round tin (top)</name>
<version>1.0</version>
<sdf version='1.5'>model.sdf</sdf>
<author>
<name>Jackie Kay</name>
<email>jackie@osrfoundation.org</email>
</author>
<description>
The top piece of a cylindrical metal tin with a diameter of 8.4cm and a height of 1.15cm. Part of the ARAT set.
</description>
</model>

109
round_tin_top/model.rsdf Normal file
View File

@@ -0,0 +1,109 @@
<?xml version="1.0" ?>
<%
# SI units (length in meters)
# Geometry
diameter = 0.084
radius = diameter/2.0
height = 0.0115
# mesh height offset
mesh_dz = 0.0010
mesh_pose = "<pose>0 0 #{mesh_dz} 0 0 0</pose>"
# base cylinder height
cylinder_height = 0.002
cylinder_pose = "<pose>0 0 #{cylinder_height/2} 0 0 0</pose>"
# Inertia: approximate as a thin-walled cylindrical tube (not accurate)
mass = 0.0142
ixx = mass*(radius**2/2 + height**2/12)
iyy = ixx
izz = mass*radius**2
%>
<sdf version="1.5">
<model name="round_tin_top">
<link name="link">
<inertial>
<pose>0 0 <%= height/2 %> 0 0 0</pose>
<mass><%= mass %></mass>
<inertia>
<ixx><%= ixx %></ixx>
<ixy>0</ixy>
<ixz>0</ixz>
<iyy><%= iyy %></iyy>
<iyz>0</iyz>
<izz><%= izz %></izz>
</inertia>
</inertial>
<collision name="collision_cylinder">
<%= cylinder_pose %>
<geometry>
<cylinder>
<radius><%= radius %></radius>
<length><%= cylinder_height %></length>
</cylinder>
</geometry>
<surface>
<contact>
<ode>
<max_vel>0.1</max_vel>
<min_depth>0.0001</min_depth>
</ode>
</contact>
</surface>
</collision>
<visual name="visual_cylinder">
<%= cylinder_pose %>
<geometry>
<cylinder>
<radius><%= radius %></radius>
<length><%= cylinder_height %></length>
</cylinder>
</geometry>
<material>
<script>
<uri>file://media/materials/scripts/gazebo.material</uri>
<name>Gazebo/Grey</name>
</script>
</material>
</visual>
<collision name="collision">
<%= mesh_pose %>
<geometry>
<mesh>
<uri>model://round_tin_top/meshes/round_tin_top.dae</uri>
</mesh>
</geometry>
<surface>
<contact>
<ode>
<max_vel>0.1</max_vel>
<min_depth>0.001</min_depth>
</ode>
</contact>
</surface>
</collision>
<visual name="visual">
<%= mesh_pose %>
<geometry>
<mesh>
<uri>model://round_tin_top/meshes/round_tin_top.dae</uri>
</mesh>
</geometry>
<material>
<script>
<uri>file://media/materials/scripts/gazebo.material</uri>
<name>Gazebo/Grey</name>
</script>
</material>
</visual>
</link>
</model>
</sdf>

99
round_tin_top/model.sdf Normal file
View File

@@ -0,0 +1,99 @@
<?xml version="1.0" ?>
<sdf version="1.5">
<model name="round_tin_top">
<link name="link">
<inertial>
<pose>0 0 0.00575 0 0 0</pose>
<mass>0.0142</mass>
<inertia>
<ixx>1.26808958333333e-05</ixx>
<ixy>0</ixy>
<ixz>0</ixz>
<iyy>1.26808958333333e-05</iyy>
<iyz>0</iyz>
<izz>2.50488e-05</izz>
</inertia>
</inertial>
<collision name="collision_cylinder">
<pose>0 0 0.001 0 0 0</pose>
<geometry>
<cylinder>
<radius>0.042</radius>
<length>0.002</length>
</cylinder>
</geometry>
<surface>
<contact>
<!-- tin (wikipedia) -->
<poissons_ratio>0.36</poissons_ratio>
<elastic_modulus>5.0e+10</elastic_modulus>
<ode>
<kp>100000</kp>
<kd>100</kd>
<max_vel>100.0</max_vel>
<min_depth>0.001</min_depth>
</ode>
</contact>
<friction>
<torsional>
<coefficient>1.0</coefficient>
<use_patch_radius>0</use_patch_radius>
<surface_radius>0.01</surface_radius>
</torsional>
</friction>
</surface>
</collision>
<visual name="visual_cylinder">
<pose>0 0 0.001 0 0 0</pose>
<geometry>
<cylinder>
<radius>0.042</radius>
<length>0.002</length>
</cylinder>
</geometry>
<material>
<script>
<uri>file://media/materials/scripts/gazebo.material</uri>
<name>Gazebo/Grey</name>
</script>
</material>
</visual>
<collision name="collision">
<pose>0 0 0.001 0 0 0</pose>
<geometry>
<mesh>
<uri>model://round_tin_top/meshes/round_tin_top.dae</uri>
</mesh>
</geometry>
<surface>
<contact>
<ode>
<max_vel>0.1</max_vel>
<min_depth>0.001</min_depth>
</ode>
</contact>
</surface>
</collision>
<visual name="visual">
<pose>0 0 0.001 0 0 0</pose>
<geometry>
<mesh>
<uri>model://round_tin_top/meshes/round_tin_top.dae</uri>
</mesh>
</geometry>
<material>
<script>
<uri>file://media/materials/scripts/gazebo.material</uri>
<name>Gazebo/Grey</name>
</script>
</material>
</visual>
</link>
</model>
</sdf>