Comments (30)
I'll put this one on my to-do list.
from raisimlib.
+1. Is there an estimate of when will this happen, as in how high up in the list is it? Would be great to have this feature!
from raisimlib.
I'll finish it by the end of this week
from raisimlib.
Following up to see if there is an update on this. Thanks!
from raisimlib.
I was stuck because there are big differences in how we set up the world. Do you need to create the world or just the robot? I think it will be much easier if I just use the mujoco xml as a robot definition.
from raisimlib.
I just need to load the cassie xml robot file.
from raisimlib.
is that XML file public?
from raisimlib.
https://github.com/osudrl/cassie-mujoco-sim/blob/master/model/cassie.xml
from raisimlib.
great, this will help
from raisimlib.
just an update on this
My first implementation is done. I still have to test it with more models and debug it.
from raisimlib.
Thank you!
Although there is a urdf for cassie as well, it does not support passive joints like XML in mujoco does. Joints q5 and q6 of each leg in cassie is passive and not actuated. This is the primary reason which is forcing me to switch to XML.
from raisimlib.
What is a passive joint? Is that a kinematic loop or unactuated joint?
from raisimlib.
Eq. 3 of this paper describes it. pasting it here for convenience:
"The joints (q1, q2, q3, q4, q7) are actuated. The joints (q5, q6) are passive, being formed by the introduction of (rather stiff) springs. When the springs are uncompressed, q5 = 0, and q6 = −q4 + 13°"
In the XML file, these are the <left/right>-knee-spring and the <left/right>-heel-spring in mujoco XML file. Below is an image showing all the joints of cassie and the springs.
from raisimlib.
just an update on this
My first implementation is done. I still have to test it with more models and debug it.
Has this implementation pushed to the repo? I'm trying this. :)
from raisimlib.
not yet. It can load simple ones now but I need more work
from raisimlib.
I pushed the feature. It is very first time offering this feature so I probably have to iterate it multiple times. let me know how it works for you
from raisimlib.
Thanks! Im trying it out right now and will let you know. One issue I noticed --
The latest push contains absolute paths here, here and here. This is causing cmake to fail. It works once these I fixed these on my end.
I'm also unable to use raisimUnityOpenGL (raisimUnity works fine though, but it is a bit slow on my machine).
from raisimlib.
The mjcf examples load the xml file as an argument while constructing the raisim::World
. I'm presently using raisimGymTorch, in which the Environment.hpp
loads an articulated object with
addArticulatedSystem(resourceDir_+"/anymal/urdf/anymal.urdf");
. Is there an equivalent call to load an xml file inside the Environment.hpp? I was looking through the api couldn't find it.
from raisimlib.
hard coded path + raisim unity opengl issues fixed. I moved the world instantiation to the environment class constructor. You can provide the XML file when you create the world.
from raisimlib.
Thanks! I tried the updated version and here is where Im stuck -- Cassie has 10 actuated joints whereas gcDim is 35. This is also the dimension that the setPdTarget
expects, but I'm not how to move the 10 actuated joints only.
from raisimlib.
that part is not in the mjcf file. The cassie repo has many c++ files and I guess you can figure out how they simulated cassie there
from raisimlib.
I was looking through the cassie xml file and I found that line 230-242 list the actuators, and line 244-267 list the sensors. Although, I'm not sure how easy/hard it is to incorporate this in raisim.
from raisimlib.
RaiSim does not have a concept of actuators and sensors. You can always set the torques for all joints and sense the positions of all joints. For the cassie model, the spring is not connected in the xml. I am not sure how they handle this.
from raisimlib.
Mujoco handles this through constraints written in Lines 223- 228. Instead of an actual spring, they enforce these constraints which mimic a very stiff spring.
from raisimlib.
Currently, constraints live in World, not in an articulated system. Let me think about how to implement this nicely...
from raisimlib.
Thank you again for your work! But it seems that cassie's model is still not working.
from raisimlib.
I will push it with the next version. This is not just reading the MJCF file. I need to integrate equality constraints to ArticulatedSystem.
from raisimlib.
Hi
The mjcf-file reader seems to put all frames except for the root at the same location (see attached image). I've tested it across different files and it occurs with all of them.
from raisimlib.
@christsa I already fixed this issue and will be included in the next push.
from raisimlib.
I also added equality constraints for mjcf files. It is not well tested so let me know how it performs.
from raisimlib.
Related Issues (20)
- License issue HOT 1
- segmentation fault:[UnityMemory] Configuration Parameters - Can be set up in boot.config HOT 11
- Does Raisim have the implementation of the FEE Soil Model? HOT 2
- assertion "numVertices <= numEdges" failed in meaningfulPreprocessData() HOT 1
- Contact force + torque and the contact measured force + torque of a surface contact HOT 4
- Python example doesn't show anything in the simulation HOT 8
- Segmentation fault problem
- inserting actuators models give me segmentation fault HOT 4
- setup.py issue in Ubuntu
- setup.py error HOT 6
- How to know the joint order in python HOT 1
- Raisim example fails to compile on m1 mac HOT 2
- AddMess() Issue HOT 2
- error happens while using addArticulatedSystem HOT 2
- xml file can not find color tag option
- Seg fault of contact.getImpulse() HOT 2
- error :'class raisim :: Depthcamera' has no menber named 'lockMutex' \'depthToPointCloud'... HOT 2
- M1 compilation issue, missing SpinningLidar HOT 2
- Version mismatch. Raisim protocol version: 10018, Visualizer protocol version: 10017 HOT 3
- RaiSimUnity Autoconnect HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from raisimlib.