From: Ezequiel Q. <equ...@in...> - 2010-05-17 13:20:09
|
Hi Rich! Thank you for answering! Yes, I'm using the C++ client libraries. I do call Read() after using the SetOdometry and before showing the "new" values of the x,y and yaw. I have also tried a loop to check what the SetOdometry is working: while ( (pp->GetYPos() != x) || (pp->GetYPos() != y) || (pp->GetYaw() != yw) ){ printf("Setting: x=%f, y=%f, yw=%f \n", pp->GetXPos(), pp->GetYPos(), pp->GetYaw()); pp->SetOdometry(x, y, yw); robot->Read(); } But it does not work. The pose values are not correct. I also tried reseting the odometry (before setting) with ResetOdometry but still doesn't work, and the SetOdomentry command sometimes fails too. I'm using the PULL mode but I have tried the PUSH mode too. Any ideas of what can be wrong? Ezequiel Quintero <equ...@in...> dijo: > Hello playerstage list! > > [Working with a Pioneer P3DX, using Player 3.0.1 with C++, on Ubuntu 9.04] > > I'm having the same problems with the SetOdometry command. I read the > related emails "Position2d driver - ResetOdometry" > (http://sourceforge.net/mailarchive/message.php?msg_id=4BD76972.3000802%40mdgit.com) and "SetOdometry problems" (http://sourceforge.net/mailarchive/message.php?msg_id=d6c538de0911231219s71a532b6o64927079420b2fd4%40mail.gmail.com), but I found no solution for the > problem. > > After setting a pose using SetOdometry(), when retrieving the robot > pose using GetXPos(),GetYPos() and GetYaw() I'm not getting the > correct values. In other words, the SetOdometry command seems to have > no effect over x,y and yaw. > > Does anybody know what the causes are for SetOdometry() not working? > Any solution? > > Ezequiel > -- Máster en Ciencia y Tecnología Informática Grupo PLG (2.1.B16) Universidad Carlos III de Madrid |