From: <or...@de...> - 2011-09-03 14:18:33
|
Hi, I'm a student of the University of Padova (Italy). I'm new in this mailing list. I'm trying to integrate the Robovie-X humanoid robot model (from stl or obj meshes) in SimSpark but I did't find any guide or indication about how to do in the wiki, only some reference to the use of Rsgedit software. I tryed to build Rsgedit from source following the instructions posted here http://simspark.sourceforge.net/wiki/index.php/Installation_on_Linux , but i found some compilation errors: /usr/local/include/simspark/oxygen/simulationserver/simulationserver.h: In member function ?void mainframe::AdvanceSimulation(boost::shared_ptr<oxygen::SimulationServer>&, float)?: /usr/local/include/simspark/oxygen/simulationserver/simulationserver.h:159: error: ?virtual void oxygen::SimulationServer::AdvanceTime(float)? is protected ~/simspark/trunk/rsgedit/src/mainframe.cpp:613: error: within this context ~/simspark/trunk/rsgedit/src/mainframe.cpp:616: error: no matching function for call to ?oxygen::SimulationServer::Cycle(boost::shared_ptr<oxygen::SimControlNode>&)? /usr/local/include/simspark/oxygen/simulationserver/simulationserver.h:119: note: candidates are: virtual void oxygen::SimulationServer::Cycle() ~/simspark/trunk/rsgedit/src/sparkglrender.cpp: In member function ?void SparkGLRender::Render(int, int)?: ~/simspark/trunk/rsgedit/src/sparkglrender.cpp:114: error: no matching function for call to ?kerosin::RenderServer::Render()? /usr/local/include/simspark/kerosin/renderserver/renderserver.h:68: note: candidates are: virtual void kerosin::RenderServer::Render(bool) I tryed to resolve by moving oxygen::SimulationServer::AdvanceTime in the public section of the class, removing the argument in the call of oxygen::SimulationServer::Cycle and adding the parameter (both true and false) to the call of kerosin::RenderServer::Render, and finally I got it to compile but the program doesn't work (no rendering and crashes while moving through the menu). Is it a known problem? Is Rsgedit the right tool to make the rsg files for my model? Thank you in advance for the support! Alessandro. ---------------------------------------------------------------- This message was sent using IMP, the Internet Messaging Program. |
From: <or...@de...> - 2011-09-20 15:11:55
|
Hi, waiting for an answer to my previus mail I tryed to create my rsg file by hand and using the nao rsg as sample. Now the parts of my model are shown in the simulation but I have some problems with the position and the rotation of the parts each other. Could you explain me how setLocalPos and setLocalRotation should be used and what they do. For example: - If I load the torso (which is Z aligned) without transformations it appears rotated along Y direction. To make it rotate correctly I have to rotate it using (nd Transform (setLocalRotation 90 90 0) (nd StaticMesh (load 'models/robovie_x/torso.obj')(setScale $Scale_Factor $Scale_Factor $Scale_Factor)) ) - After that I have to connect the right shoulder to the torso. In the model the shoulder coordinates (relative to the origin of the torso) are: X=0 Y=-0.4475 Z=0.00606 with the rotation -99°,0,0. Using these values the position and the angle of the shoulder are uncorrect. It seems that X and Y are inverted. Thank you in advance, Alessandro |
From: Hedayat V. <hed...@gm...> - 2011-09-26 17:20:37
|
<html style="direction: ltr;"> <head> <meta content="text/html; charset=UTF-8" http-equiv="Content-Type"> <style>body p { margin-bottom: 0cm; margin-top: 0pt; } </style> <style>body p { margin-bottom: 0cm; margin-top: 0pt; } </style> </head> <body style="direction: ltr;" bidimailui-detected-decoding-type="UTF-8" bgcolor="#FFFFFF" text="#000000"> <p><br> </p> <p>Hi Alessandro,</p> <p>Unfortunately I'm not very familiar with robot design, but about your particular issue:</p> <p>Yes, X and Y axis of the field are not aligned with object's local X and Y axis. Please let us know if you need more info, I hope that we can ask others who have experience with RSG robot design. </p> <p><br> </p> <p>Sorry for the late answer ( I hoped that someone can provide a better answer)</p> <p>Good luck,</p> <p>Hedayat<br> </p> <p><br> </p> <p> </p> <span id="IDstID"> <style type="text/css">blockquote { /*Tue, 20 Sep 2011 17:11:40 +0200*/ color: navy !important; background-color: RGB(245,245,245) !important; padding: 0 15 10 15 !important; margin: 15 0 0 0; border-left: #1010ff 2px solid;}blockquote blockquote { /*Tue, 20 Sep 2011 17:11:40 +0200*/ color: maroon !important; background-color: RGB(235,235,235) !important; border-left-color:maroon !important}blockquote blockquote blockquote { /*Tue, 20 Sep 2011 17:11:40 +0200*/ color: green !important; background-color: RGB(225,225,225) !important; border-left-color:teal !important}blockquote blockquote blockquote blockquote { /*Tue, 20 Sep 2011 17:11:40 +0200*/ color: purple !important; background-color: RGB(215,215,215) !important; border-left-color: purple !important}blockquote blockquote blockquote blockquote blockquote { /*Tue, 20 Sep 2011 17:11:40 +0200*/ color: teal !important; background-color: RGB(205,205,205) !important; border-left-color: green !important}</style><i><b><a clas="" s="moz-txt-link-abbreviated" href="mailto:or...@de...">or...@de...</a></b></i> wrote on Tue, 20 Sep 2011 17:11:40 +0200:</span> <blockquote cite="mid:201...@ma..." type="cite"> <pre wrap="">Hi, waiting for an answer to my previus mail I tryed to create my rsg file by hand and using the nao rsg as sample. Now the parts of my model are shown in the simulation but I have some problems with the position and the rotation of the parts each other. Could you explain me how setLocalPos and setLocalRotation should be used and what they do. For example: - If I load the torso (which is Z aligned) without transformations it appears rotated along Y direction. To make it rotate correctly I have to rotate it using (nd Transform (setLocalRotation 90 90 0) (nd StaticMesh (load 'models/robovie_x/torso.obj')(setScale $Scale_Factor $Scale_Factor $Scale_Factor)) ) - After that I have to connect the right shoulder to the torso. In the model the shoulder coordinates (relative to the origin of the torso) are: X=0 Y=-0.4475 Z=0.00606 with the rotation -99�,0,0. Using these values the position and the angle of the shoulder are uncorrect. It seems that X and Y are inverted. Thank you in advance, Alessandro ------------------------------------------------------------------------------ All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. <a class="moz-txt-link-freetext" href="http://p.sf.net/sfu/splunk-d2dcopy1">http://p.sf.net/sfu/splunk-d2dcopy1</a> _______________________________________________ Simspark Generic Physical MAS Simulator simspark-devel mailing list <a class="moz-txt-link-abbreviated" href="mailto:sim...@li...">sim...@li...</a> <a class="moz-txt-link-freetext" href="https://lists.sourceforge.net/lists/listinfo/simspark-devel">https://lists.sourceforge.net/lists/listinfo/simspark-devel</a> </pre> </blockquote> </body> </html> |
From: <or...@de...> - 2011-09-26 20:05:17
|
Thank you Hedayat for your answer! After some failures I (hopefully) understood something more about RSG format and its functioning and I finally managed to load my model in the simulation and move. These are the infos I collected (please correct me if something wrong): - there is a strict relation between rsg format and spark framework and many expressions are treated as class names and methods invocations, so it's a good idea to have a look to the API documentation. Using this support the NAO description is quite self explanatory. - it's useful to have the meshes centered in their bounding box to make the specification of the collision and phisics volume easier. I think it's not possible to specify different position for a mesh and its collision bounding box - the positioning of the models parts are relative to the origin of the entire model, so, for example, if you know the position of the arm relative to the shoulder and the position of the sholder relative to the torso (and the torso is the base element) you have to specify the sum of the positions -rotations are eulerian ZYX -anchor positions for hinge joints are relative to the child: for example to insert a joint between the torso and shoulder you have to specify its position relative to the unrotated shoulder origin (the original mesh reference frame) -instead I didn't discovered how the joint rotation axes should be fixed. It seems they are not relative to the global frame nor to the mesh frame... I had to try different configurations to find the correct ones - there is a useful switch structure: (switch $variable (<value1> (<expression for value 1>) ) (<value2> (expression for value 2>) ) ... ) Now I'm trying to understand why StaticMeshInitEffector node tries to plant my model in the ground with a beautiful pike dive as result :) , but I think it is related to the soccer simulation (and NAO dimensions). By removing its specification the simulation still runs with some warnings. |