From e46ba9a9e96a6a37ae43b1dae9d34e6e948e2566 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Sergi=20Hern=C3=A1ndez?= <shernand@iri.upc.edu>
Date: Mon, 1 Aug 2016 20:18:27 +0200
Subject: [PATCH] Split the base into two separate meshes (base and fence) to
 allow proper coloring.

---
 .../meshes/ceabot/obstacle_base.stl           | Bin 2284 -> 684 bytes
 .../meshes/ceabot/obstacle_fence.stl          | Bin 0 -> 1684 bytes
 .../urdf/ceabot/obstacle_base.xacro           |  54 +++++++++++++++---
 bioloid_gazebo/worlds/bioloid.world           |   8 +--
 4 files changed, 49 insertions(+), 13 deletions(-)
 create mode 100644 bioloid_description/meshes/ceabot/obstacle_fence.stl

diff --git a/bioloid_description/meshes/ceabot/obstacle_base.stl b/bioloid_description/meshes/ceabot/obstacle_base.stl
index 5e4201a1fad89723dce5d1b6f264d684199db576..c2594b7bcec639d9cdf5d7f5fee06401a680fab5 100644
GIT binary patch
delta 67
zcmaDOxQ2B?022?x=0}Wk87J>$<P~Ur&FIkjTG8Q6pv8v%L#0L&Ym_9=#bEN2i<r{@
Dks}-^

literal 2284
zcmbu9F-ikb5QdYJxPqmXje=tK3Z6g`O(6tQES5r=)Ui!kJ%9%ggyaw&BDUKJ>;73j
z-oJ16LBPP0$;^E7&%B+NVm^C%%;u9~{4kr|PsYVG``71u;Gf0l<ooSf&(Gb}$7=h0
z@mfE!m-}Ik-6lLMrkDHETy&Qp;)LwY`WS*Nbw#DNhDW^aW<AWI(}ZWGC-;aGvZdLb
zJSND}H@3Q3e9@bqu56~ozuK0c{e&VhA-W-6E`QI^@vf-r?>tSQ!Dc`=L|uQx9MYh7
z*TbJC6p0DxHAFqfJ32lsbu|b6G=YY97|x0rbY9ejpp&+S6CPm>(eguwe9clvZuC@D
zb<1YRX0K$o3D1gYZF@gK#0lBEGCP7Gi_Pz9c*N`O%0Uj@p2G>xN>A<)CuB>rzbl=W
zBA(@^psvCl^wX8ix#8!YcL_yeBL4SjD4&D6>JUE~p)-#-fejJvpa^=0M#H=65~>vw
z(m~_U)#0wo>l)bj(*zn2bPEx>@?G+`hCfXx5)=9j5$5o$zAZ@;ia3D{5w?T~o5-EO
opC-_7LN-L$64fG$^Krd2p@<XMPBiD`{h|jgs!PaABqqWff8L^mU;qFB

diff --git a/bioloid_description/meshes/ceabot/obstacle_fence.stl b/bioloid_description/meshes/ceabot/obstacle_fence.stl
new file mode 100644
index 0000000000000000000000000000000000000000..e7c8eca612dc933c91f7c25c3b4950b35466c91e
GIT binary patch
literal 1684
zcmbu9K~BRk5Jk<FQxtK7u92EukAa{B38|usUch(hzE{XGavkPRGUnMdEeK0aCZ7L1
z<FTFNVgK>AI=miVcKiPMz5m?xtADjrT23i%##8F<$Hyld-JG{~ve&XTKAu*cZ0l3Y
zL4=2d?DO`aGwBT?REirjO#$qg6@wnmtL%baCaBU(>ZWe8qNgF&`o2wsiZ!gWqDSf=
zShqr$kq6X0VdZYmGyx;1A}#e?tA?PbA!0wS5Jnf3W>T-@_K^pA8Y1?if_@UBBtfkj
zf*z@ZK-I4hRIv&|aycugZgoE}?lCSB%$;<}YN9Of*eO@V3CH*{!Bawd%4)DzmZ`ba
z&D8BG@h~o#?VKL6=xK@eTsc*(7WCznD-H?9^9(hEG-}^jVb`jE6vmf{gncIMM2S<W
zEQ>hpzazAcLcpG~D(4Cw|J&)?ByP|D#AU)`keF>J^eE>l?u6(5C&H@`L|xr4H^EAd

literal 0
HcmV?d00001

diff --git a/bioloid_description/urdf/ceabot/obstacle_base.xacro b/bioloid_description/urdf/ceabot/obstacle_base.xacro
index ef660a5..64ddf2e 100644
--- a/bioloid_description/urdf/ceabot/obstacle_base.xacro
+++ b/bioloid_description/urdf/ceabot/obstacle_base.xacro
@@ -3,17 +3,11 @@
 <root xmlns:xacro="http://ros.org/wiki/xacro">
 
   <xacro:macro name="obstacle_base" params="name">
-  <!-- IR distance sensors -->
     <link name="${name}_link">
       <inertial>
-        <mass value="50"/>
-        <origin xyz="1.01500000 1.26500000 0.04510729" rpy="0 0 0"/>
-        <inertia ixx="32.72577613" ixy="0.0" ixz="0.0" iyy="22.18978101" iyz="0.0" izz="53.20566219" />
-      </inertial>
-      <inertial>
-        <mass value="1"/>
-        <origin xyz="1.01500000 1.26500000 0.04510729" rpy="0 0 0"/>
-        <inertia ixx="1.0" ixy="0.0" ixz="0.0" iyy="1.0" iyz="0.0" izz="1.0" />
+        <mass value="40"/>
+        <origin xyz="1.01500000 1.26500000 -0.015" rpy="0 0 0"/>
+        <inertia ixx="21.33933333" ixy="0.0" ixz="0.0" iyy="13.73933333" iyz="0.0" izz="35.07266667" />
       </inertial>
       <visual>
         <origin xyz="0 0 0" rpy="0 0 0"/>
@@ -29,7 +23,49 @@
       </collision>
     </link>
 
+    <link name="${name}_fence_link">
+      <inertial>
+        <mass value="10"/>
+        <origin xyz="1.0100000 1.2600000 0.25" rpy="0 0 0"/>
+        <inertia ixx="10.12791445" ixy="0.0" ixz="0.0" iyy="7.31441888" iyz="0.0" izz="17.02566667" />
+      </inertial>
+      <visual>
+        <origin xyz="0 0 0" rpy="0 0 0"/>
+        <geometry>
+          <mesh filename="package://bioloid_description/meshes/ceabot/obstacle_fence.stl"/>
+        </geometry>
+      </visual>
+      <collision>
+        <origin xyz="0 0 0" rpy="0 0 0"/>
+        <geometry>
+          <mesh filename="package://bioloid_description/meshes/ceabot/obstacle_fence.stl"/>
+        </geometry>
+      </collision>
+    </link>
+
+    <joint name="j_base_fence" type="fixed">
+      <parent link="${name}_link"/>
+      <child link="${name}_fence_link"/>
+      <origin xyz="0.005 0.005 0" rpy="0 0 0" />
+    </joint>
+
     <gazebo reference="${name}_link">
+      <material>Gazebo/Green</material>
+      <gravity>true</gravity>
+      <selfCollide>false</selfCollide>
+      <maxContacts>10</maxContacts>
+      <dampingFactor>0.2</dampingFactor>
+      <maxVel>0.01</maxVel>
+      <minDepth>0.0</minDepth>
+      <fdir1>0 0 0</fdir1>
+      <mu1>1.0</mu1>
+      <mu2>1.0</mu2>
+      <kp>1000000000.0</kp>
+      <kd>1.0</kd>
+    </gazebo>
+
+    <gazebo reference="${name}_fence_link">
+      <material>Gazebo/White</material>
       <gravity>true</gravity>
       <selfCollide>false</selfCollide>
       <maxContacts>10</maxContacts>
diff --git a/bioloid_gazebo/worlds/bioloid.world b/bioloid_gazebo/worlds/bioloid.world
index 1dcf533..d92c5cc 100644
--- a/bioloid_gazebo/worlds/bioloid.world
+++ b/bioloid_gazebo/worlds/bioloid.world
@@ -2,10 +2,10 @@
 <sdf version="1.4">
   <world name="default">
     <physics type="ode">
-      <real_time_factor>1.0</real_time_factor>
-      <real_time_update_rate>1000</real_time_update_rate>
-<!--      <real_time_factor>0.1</real_time_factor>
-      <real_time_update_rate>100</real_time_update_rate>-->
+<!--      <real_time_factor>1.0</real_time_factor>
+      <real_time_update_rate>1000</real_time_update_rate>-->
+      <real_time_factor>0.1</real_time_factor>
+      <real_time_update_rate>100</real_time_update_rate>
       <max_step_size>0.001</max_step_size>
       <gravity>0 0 -9.8</gravity>
       <ode>
-- 
GitLab