Hi,

I did other tests with my program and I noticed this:

when the euler angles I passed are minor or equal to 12 deg (I passed 
the equivalent radiant value), all worked fine. Otherwise I had that 
strange camera problem. It can be a problem with some internal setting 
position/attitude? A strange conversion euler/quaternion?

I don't believe it is a ODE problem because I don't have any real 
dynamic integration (I impose the position/attitude recursively to an 
object, nothing else) but eventually what kind of change can I do with 
ODE parameters? Is it possible to turn off the ODE integration during 
libgazebo calls? (ie, can I use a completely static environment?)

Thank you

Domenico

Jordi Polo ha scritto:
>
> You said that you haven't this problem before.
> Do you mean that you were using the same control program, upgrading to 
> Gazebo make the problem appears and downgrading it don't make it 
> disappear?
>
> If the camera is really falling from the object it should be a problem 
> with the physics, something have being changed, for instance the  
> friction parameter mu1 now is taken into account for the friction. You 
> can try changing that.
> Also the rendering method of the system can be configured in the 
> .gazeborc file now.
> I can not remember of any other big change that may be affecting you.
>
> Do you have the original file of the gazelle? It may be a good 
> addition to the sets.
>
>
> On Mon, Mar 3, 2008 at 7:57 PM, Domenico Leonello 
> <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>> wrote:
>
>     Thank you for the advice.
>
>     I attached the .world file (I tried some other configuration and the
>     result is the same, so...) and here the C code
>
>     
> /******************************************************************************************/
>     Initialization ....
>     
> /******************************************************************************************/
>
>        /// Connect to the libgazebo server
>        try
>        {
>        client->ConnectWait(ServerID, ClientID);
>        //client->Connect(ServerID);
>        }
>        catch (gazebo::GazeboError e)
>        {
>        std::cout << "Gazebo error: Unable to connect\n" << e << "\n";
>        return;
>        }
>        /// Open the Left Camera interface
>        try
>        {
>        cam_leftIface->Open(client, "left_iface-name");
>        }
>        catch (gazebo::GazeboError e)
>        {
>        std::cout << "Gazebo error: Unable to connect to the left camera
>     interface\n"
>        << e << "\n";
>        return;
>        }
>
>        /// Open the Right Camera interface
>        try
>        {
>        cam_rightIface->Open(client, "right_iface-name");
>        }
>        catch (gazebo::GazeboError e)
>        {
>        std::cout << "Gazebo error: Unable to connect to the right camera
>     interface\n"
>        << e << "\n";
>        return;
>        }
>
>        /// Open the Simulation Interface
>        try
>        {
>            simIface->Open(client, "default");
>        }
>        catch (gazebo::GazeboError e)
>        {
>            std::cout << "Gazebo error: Unable to connect to the sim
>     interface\n" << e << "\n";
>            return;
>        }
>
>        /** Pausing simulation... (maybe not needed!!) **/
>        simIface->Lock(1);
>        simIface->data->pause = 1;
>
>        /// Setting command name for imposing 3D position
>        uint8_t model_req[32] = "set_pose3d";
>        memcpy(simIface->data->model_req, model_req, 32);
>
>        /// Setting model name for imposing new Pose in Simulation
>     Interface
>        uint8_t model_name[512] = "helicopter";
>        memcpy(simIface->data->model_name, model_name, 512);
>
>        /** Writing the current odometric position... **/
>        simIface->data->model_pose.pos.x  = cmd_pos_change[0];
>        simIface->data->model_pose.pos.y  = cmd_pos_change[1];
>        simIface->data->model_pose.pos.z  = cmd_pos_change[2];
>
>        simIface->data->model_pose.roll     = cmd_rot_change[0];
>        simIface->data->model_pose.pitch  = cmd_rot_change[1];
>        simIface->data->model_pose.yaw   = cmd_rot_change[2];
>
>        /** Unlock simulation interface ... **/
>        simIface->Unlock();
>
>
>
>     
> /******************************************************************************************/
>     The cycle (called by matlab-simulink recursively)
>     
> /******************************************************************************************/
>
>      /** Lock simulation interface ... **/
>      simIface->Lock(1);
>
>      uint8_t model_name[512] = "helicopter";
>      memcpy(simIface->data->model_name, model_name, 512);
>
>      /** Writing the current odometric position... **/
>      simIface->data->model_pose.pos.x  = cmd_pos_change[0];
>      simIface->data->model_pose.pos.y  = cmd_pos_change[1];
>      simIface->data->model_pose.pos.z  = cmd_pos_change[2];
>
>      simIface->data->model_pose.roll   = cmd_rot_change[0];
>      simIface->data->model_pose.pitch  = cmd_rot_change[1];
>      simIface->data->model_pose.yaw    = cmd_rot_change[2];
>
>      /** Unlock simulation interface ... **/
>      simIface->Unlock();
>
>     
> /******************************************************************************************/
>     
> /******************************************************************************************/
>
>
>     Here two screenshot of the left camera view: the first
>     (left_frame_0001)
>     during a normal call, the last (left_frame_0059) when already the
>     simulation starts crashing after 50-60 calls.
>
>     Any idea? Is it possible that any system update (using aptitude)
>     created
>     any problem, for example to the ode or ogre libraries?
>     Note that before I haven't encountered this problem! But now I have it
>     also downgrading the SVN version of Gazebo!
>
>     I'm using Kubuntu (both Gusty and Feisty).
>
>     Tell me if I post any other usefull information!
>
>     Thank you
>
>
>     Jordi ha scritto:
>     >
>     > Send me as much info as you can.
>     > If you can not send me the code or the world file for whatever
>     reason,
>     > send me a screenshot.
>     > Also send this mail to the ML so Nate and others can give some
>     advise.
>     > Lately I have not much time for Gazebo but I'll try to help
>     >
>     >
>     > On Fri, Feb 29, 2008 at 10:21 PM, Domenico Leonello
>     > <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
>     <mailto:[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>>
>     wrote:
>     >
>     >     Hi,
>     >
>     >     maybe I found a bug in libgazebo. The situation is the
>     following.
>     >
>     >     Using MATLAB S-function I impose recursively position and
>     attitude
>     >     to an
>     >     object (with an helicopter mesh) with 2 cameras mounted on
>     (like a
>     >     stereo pair).
>     >
>     >     I observed a strange behaviour during the calls to
>     libgazebo. If I
>     >     impose an attitude (also constant) different from (0, 0, 0),
>     after a
>     >     variable number of calls (it depends on the entity of the
>     imposed
>     >     angles) the cameras seem to fall from the helicopter and
>     give deformed
>     >     images (and then normally the simulation crashes). Sometimes it
>     >     happens
>     >     also that the trimesh attached to the helicopter body stretches
>     >     and deforms.
>     >
>     >     If the imposed attitude is (0, 0, 0), I can  move the
>     cameras around
>     >     with no problem.
>     >
>     >     I didn't find any explanation to this behaviour.
>     >     A memory error is unlikely (otherwise I can't explain why
>     with (0,
>     >     0, 0)
>     >     values all goes ok!).
>     >
>     >     Maybe it is a sort of conversion error between euler and
>     quaternions.
>     >     This can explain why the mesh stretches, if the quaternion
>     is not
>     >     normalized to1! But why it happens only after 50-60 calls of
>     libgazebo
>     >     and not immediatly? And wht it doesn't happen when euler angles
>     >     are (0,
>     >     0, 0)?
>     >
>     >     If you need, I can send you pictured of the deformed
>     helicopter and
>     >     camera sight. And I can also send any information about the
>     C code
>     >     that
>     >     calls libgazebo.
>     >
>     >     Thank you
>     >
>     >     Domenico
>     >
>     >
>     >
>     >
>     > --
>     > Jordi Polo Carres
>     > NLP laboratory - NAIST
>     > http://www.bahasara.org
>
>
>
>     -------------------------------------------------------------------------
>     This SF.net email is sponsored by: Microsoft
>     Defy all challenges. Microsoft(R) Visual Studio 2008.
>     http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
>     _______________________________________________
>     Playerstage-gazebo mailing list
>     [email protected]
>     <mailto:[email protected]>
>     https://lists.sourceforge.net/lists/listinfo/playerstage-gazebo
>
>
>
>
> -- 
> Jordi Polo Carres
> NLP laboratory - NAIST
> http://www.bahasara.org
> ------------------------------------------------------------------------
>
> -------------------------------------------------------------------------
> This SF.net email is sponsored by: Microsoft
> Defy all challenges. Microsoft(R) Visual Studio 2008.
> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
> ------------------------------------------------------------------------
>
> _______________________________________________
> Playerstage-gazebo mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/playerstage-gazebo
>   

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Playerstage-gazebo mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/playerstage-gazebo

Reply via email to