|
2 | 2 |
|
3 | 3 |  |
4 | 4 |
|
5 | | -Happy to announce CLOiSim. It is a new multi-robot simulator that uses an SDF(www.sdformat.org) file containing 3d world environemnts and robot descriptions. |
| 5 | +Happy to announce CLOiSim. It is a new multi-robot simulator that uses an [SDF](www.sdformat.org) file containing 3d world environemnts and robot descriptions. |
6 | 6 |
|
7 | 7 | The simulator is based on Unity 3D. It may look similar to Gazebo, where, unfortunately, we encountered performance problems while loading multiple robots equipped with multiple sensors. |
8 | 8 |
|
@@ -56,16 +56,22 @@ Refer to core codes in 'Assets/Scripts'. |
56 | 56 |
|
57 | 57 | Shaders are also used to get depth buffer information in a few sensor model. |
58 | 58 |
|
59 | | -Default physics engine 'Nvidia PhysX' is used for physics. and retrieve physics parameters from `<ode>` in sdf. |
60 | | -And 'SDFPlugins' help physics tricky handling for jointing `<link>` ojbects by `<joint>` element. Because there are quite big constraints in terms of 'mass' relationship between rigidbody in PhysX engine. |
| 59 | +Default physics engine 'Nvidia PhysX' is used for physics. And it retrieves some of physics parameters from `<ode>` in sdf. |
| 60 | +'SDFPlugins' help physics tricky handling for jointing `<link>` ojbects by `<joint>` element. |
61 | 61 |
|
62 | | -- You could find details about these struggling issue with PhysX in unity forums. -> [this thread](https://forum.unity.com/threads/ape-deepmotion-avatar-physics-engine-for-robust-joints-and-powerful-motors.259889/) |
63 | | - - Mass ratio between two joined rigid bodies is limited to less than 1:10 in order to maintain joint stability |
64 | | - - Motors are soft and cannot deliver enough power to drive multi-level articulated robotics |
65 | | - - Wheels wobble around their joint axis under heavy load |
66 | | - - Simulation step size (time interval) has to be reduced to too small to provide the needed accuracy which kills the performance |
| 62 | +We've deceided to change a solver type of physics engine since new solver "TGS(Temporal Gauss Seidel)" is intorduced recently(PhysX 4.1). |
67 | 63 |
|
68 | | -Inertia factors which retrieved from SDF are NOT USED for rigidbody in Unity. Because it cause unexpected behavior with physX engine. |
| 64 | +So from latest version([CLOiSim-1.11.0](https://github.com/lge-ros2/cloisim/releases/tag/1.11.0)), there is NO more constaints for rigidbodies by PGS(Projected Gauss Seidel) solver type. |
| 65 | + |
| 66 | +In previous with PGS solver has big constraints in terms of 'mass' relationship between rigidbodies. |
| 67 | + |
| 68 | +- ~~You could find details about these struggling issue with PhysX in unity forums. -> [this thread](https://forum.unity.com/threads/ape-deepmotion-avatar-physics-engine-for-robust-joints-and-powerful-motors.259889/)~~ |
| 69 | + - ~~Mass ratio between two joined rigid bodies is limited to less than 1:10 in order to maintain joint stability~~ |
| 70 | + - ~~Motors are soft and cannot deliver enough power to drive multi-level articulated robotics~~ |
| 71 | + - ~~Wheels wobble around their joint axis under heavy load~~ |
| 72 | + - ~~Simulation step size (time interval) has to be reduced to too small to provide the needed accuracy which kills the performance~~ |
| 73 | + |
| 74 | +But inertia factors which retrieved from SDF are still NOT USED for rigidbody in Unity. Because it could cause unexpected behavior with physX engine. |
69 | 75 |
|
70 | 76 | ## Getting Started |
71 | 77 |
|
@@ -145,7 +151,7 @@ New features or functions shall be developed on demand. |
145 | 151 |
|
146 | 152 | - Change physics engine (havok or something else...) to find a stable one. |
147 | 153 |
|
148 | | -- Change Unity Editor version to 2020.3 (LTS) |
| 154 | +- Change Unity Editor version to 2020.3 (LTS) to utilize 'articulation body'. |
149 | 155 |
|
150 | 156 | - **If you have any troubles or issues, please don't hesitate to create a new issue on 'Issues'.** |
151 | 157 | <https://github.com/lge-ros2/cloisim/issues> |
|
0 commit comments