From: Raman A. <ram...@ya...> - 2006-06-20 16:58:24
|
hi, In an experiment i wanted to move simple solids and know their changed position and orientation. I used the simplesolids.world as my world file and added a truth-widget model to one of the solids. Following is the control program that i used to read the pos: -------------------------------------------------------------------------------------------------------- #include <stdio.h> #include <gazebo.h> void get_true_pose(gz_client_t *client, gz_truth_t *true_pose); int main (int argc, char *argv[]) { gz_client_t *client; gz_truth_t *true_pose; int server_id; int client_id; // Assume one server and one client server_id = 0; client_id = 0; // Print all errors gz_error_init(1, 9); // Create a client object client = gz_client_alloc(); // Connect to the server if (gz_client_connect_wait(client, server_id, client_id) != 0) return -1; // Create a truth widget interface true_pose = gz_truth_alloc(); // Connect to device on server if (gz_truth_open(true_pose, client, "truth1") != 0) return -1; get_true_pose(client,true_pose); // Close the interface and free object gz_truth_close(true_pose); gz_truth_free(true_pose); // Close the connection and free the client object gz_client_disconnect(client); gz_client_free(client); return 0; } void get_true_pose(gz_client_t *client, gz_truth_t *true_pose) { // Wait for new data gz_client_wait(client); // Lock it gz_truth_lock(true_pose, 1); // Print it printf("%0.3f %0.3f\n", true_pose->data->pos[0], true_pose->data->pos[1]); printf("------------------------"); // Unlock it gz_truth_unlock(true_pose); } ---------------------------------------------------------------------------------------------------------- following is the error when i compiled and linked the program: /usr/local/player-stage/lib/libgazebo.a(gz_truth.o): In function `gz_truth_quatern_from_euler': /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:150: undefined reference to `cos' /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:150: undefined reference to `cos' /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:150: undefined reference to `cos' /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:150: undefined reference to `sin' /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:150: undefined reference to `sin' /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:150: undefined reference to `sin' /usr/local/player-stage/lib/libgazebo.a(gz_truth.o): In function `gz_truth_euler_from_quatern': /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:136: undefined reference to `atan2' /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:137: undefined reference to `asin' /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:138: undefined reference to `atan2' ------------------------------------------------------------------------------------------------- am i using the truth widget model correctly ? if not , then anyone could guide me how to use it. any ideas why i m getting this error ? Raman (Researcher, Fraunhofer - Bonn) ------------------------------- Contact: Address: am Wichelshof 32 Zimmer 01-07 53111 Bonn, Germany Phone : +49 - (0)228 - 2408481 Handy : +49 - (0)177 - 6370708 Website : www.geocities.com/raman_agarwal82 --------------------------------- Yahoo! Sports Fantasy Football 06 - Go with the leader. Start your league today! |
From: Jordi <mu...@gm...> - 2006-06-20 17:48:33
|
The problem is not with your code, but with the compilation. It seems that you need to add -l math to your link command. You didn't get any problems compiling Gazebo? > > following is the error when i compiled and linked the program: > > /usr/local/player-stage/lib/libgazebo.a(gz_truth.o): In function > `gz_truth_quatern_from_euler': > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:150: undefined > reference to `cos' > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:150: undefined > reference to `cos' > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:150: undefined > reference to `cos' > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:150: undefined > reference to `sin' > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:150: undefined > reference to `sin' > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:150: undefined > reference to `sin' /usr/local/player-stage/lib/libgazebo.a(gz_truth.o): In > function `gz_truth_euler_from_quatern': > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:136: undefined > reference to `atan2' > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:137: undefined > reference to `asin' > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:138: undefined > reference to `atan2' > --------------------------------------------------------------------------- |
From: Raman A. <ram...@ya...> - 2006-06-20 18:38:14
|
hi, nay there wasnt any compilation errors. problem was with linking. can u jot down the exact command i must give in the command prompt.. ~R. Jordi <mu...@gm...> wrote: The problem is not with your code, but with the compilation. It seems that you need to add -l math to your link command. You didn't get any problems compiling Gazebo? > > following is the error when i compiled and linked the program: > > /usr/local/player-stage/lib/libgazebo.a(gz_truth.o): In function > `gz_truth_quatern_from_euler': > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:150: undefined > reference to `cos' > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:150: undefined > reference to `cos' > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:150: undefined > reference to `cos' > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:150: undefined > reference to `sin' > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:150: undefined > reference to `sin' > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:150: undefined > reference to `sin' /usr/local/player-stage/lib/libgazebo.a(gz_truth.o): In > function `gz_truth_euler_from_quatern': > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:136: undefined > reference to `atan2' > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:137: undefined > reference to `asin' > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:138: undefined > reference to `atan2' > --------------------------------------------------------------------------- _______________________________________________ Playerstage-gazebo mailing list Pla...@li... https://lists.sourceforge.net/lists/listinfo/playerstage-gazebo ------------------------------- Contact: Address: am Wichelshof 32 Zimmer 01-07 53111 Bonn, Germany Phone : +49 - (0)228 - 2408481 Handy : +49 - (0)177 - 6370708 Website : www.geocities.com/raman_agarwal82 --------------------------------- Do you Yahoo!? Get on board. You're invited to try the new Yahoo! Mail Beta. |
From: Jordi <mu...@gm...> - 2006-06-20 18:52:33
|
Tuesday 20 June 2006 20:38=E3=80=81Raman Agarwal =E3=81=95=E3=82=93=E3=81= =AF=E6=9B=B8=E3=81=8D=E3=81=BE=E3=81=97=E3=81=9F: > hi, > > nay there wasnt any compilation errors. problem was with linking. > > can u jot down the exact command i must give in the command prompt.. > Something like: gcc -o mybinary =20 mybinary.o -L/usr/X11R6/lib -L/usr/lib -lgazebo -lpthread -lGLU -lGL -lm sustitute mybinary and mybinary.o with the name of your program and object= =20 file. > ~R. > > Jordi <mu...@gm...> wrote: > > The problem is not with your code, but with the compilation. > It seems that you need to add -l math to your link command. > > You didn't get any problems compiling Gazebo? > > > following is the error when i compiled and linked the program: > > > > /usr/local/player-stage/lib/libgazebo.a(gz_truth.o): In function > > `gz_truth_quatern_from_euler': > > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:150: undefined > > reference to `cos' > > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:150: undefined > > reference to `cos' > > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:150: undefined > > reference to `cos' > > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:150: undefined > > reference to `sin' > > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:150: undefined > > reference to `sin' > > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:150: undefined > > reference to `sin' /usr/local/player-stage/lib/libgazebo.a(gz_truth.o): > > In function `gz_truth_euler_from_quatern': > > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:136: undefined > > reference to `atan2' > > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:137: undefined > > reference to `asin' > > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:138: undefined > > reference to `atan2' > > -----------------------------------------------------------------------= =2D- > >-- > > _______________________________________________ > Playerstage-gazebo mailing list > Pla...@li... > https://lists.sourceforge.net/lists/listinfo/playerstage-gazebo > > > > ------------------------------- > Contact: > > Address: am Wichelshof 32 > Zimmer 01-07 > 53111 > Bonn, Germany > > > Phone : +49 - (0)228 - 2408481 > > Handy : +49 - (0)177 - 6370708 > > Website : www.geocities.com/raman_agarwal82 > > > > > > > > > --------------------------------- > Do you Yahoo!? > Get on board. You're invited to try the new Yahoo! Mail Beta. |
From: Raman A. <ram...@ya...> - 2006-06-21 17:38:24
|
hey Jordi, yup it works fine now.. i can compile and link without any errors. thanks a ton.. ~R. Jordi <mu...@gm...> wrote: Tuesday 20 June 2006 20:38ãRaman Agarwal ããã¯æ¸ãã¾ãã: > hi, > > nay there wasnt any compilation errors. problem was with linking. > > can u jot down the exact command i must give in the command prompt.. > Something like: gcc -o mybinary mybinary.o -L/usr/X11R6/lib -L/usr/lib -lgazebo -lpthread -lGLU -lGL -lm sustitute mybinary and mybinary.o with the name of your program and object file. > ~R. > > Jordi wrote: > > The problem is not with your code, but with the compilation. > It seems that you need to add -l math to your link command. > > You didn't get any problems compiling Gazebo? > > > following is the error when i compiled and linked the program: > > > > /usr/local/player-stage/lib/libgazebo.a(gz_truth.o): In function > > `gz_truth_quatern_from_euler': > > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:150: undefined > > reference to `cos' > > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:150: undefined > > reference to `cos' > > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:150: undefined > > reference to `cos' > > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:150: undefined > > reference to `sin' > > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:150: undefined > > reference to `sin' > > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:150: undefined > > reference to `sin' /usr/local/player-stage/lib/libgazebo.a(gz_truth.o): > > In function `gz_truth_euler_from_quatern': > > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:136: undefined > > reference to `atan2' > > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:137: undefined > > reference to `asin' > > /usr/local/player-stage/code/gazebo/libgazebo/gz_truth.c:138: undefined > > reference to `atan2' > > ------------------------------------------------------------------------- > >-- > > _______________________________________________ > Playerstage-gazebo mailing list > Pla...@li... > https://lists.sourceforge.net/lists/listinfo/playerstage-gazebo > > > > ------------------------------- > Contact: > > Address: am Wichelshof 32 > Zimmer 01-07 > 53111 > Bonn, Germany > > > Phone : +49 - (0)228 - 2408481 > > Handy : +49 - (0)177 - 6370708 > > Website : www.geocities.com/raman_agarwal82 > > > > > > > > > --------------------------------- > Do you Yahoo!? > Get on board. You're invited to try the new Yahoo! Mail Beta. _______________________________________________ Playerstage-gazebo mailing list Pla...@li... https://lists.sourceforge.net/lists/listinfo/playerstage-gazebo ------------------------------- Contact: Address: am Wichelshof 32 Zimmer 01-07 53111 Bonn, Germany Phone : +49 - (0)228 - 2408481 Handy : +49 - (0)177 - 6370708 Website : www.geocities.com/raman_agarwal82 --------------------------------- Yahoo! Sports Fantasy Football 06 - Go with the leader. Start your league today! |
From: Sean V. <sea...@dr...> - 2006-06-22 16:29:59
|
Hi there, I've been running a simple Pioneer2AT model in a world with no obstacles. I noticed that if you rotate the robot 360 degrees, using the position widget it in fact states that the robot has rotated closer to 470 degrees. Does anyone else have this problem? Could I be missing something in my world file? Thanks Sean |
From: Sean V. <sea...@dr...> - 2006-06-22 21:24:57
|
Hi all, After looking closer at the model created I noticed that the authors didn't take advantage of such functions like GetPose or GetLinearVel and GetAngularVel for this->chassis but instead calculated the values using methods that assume the base has two wheels... Was there a reason for this? It seems that if I use these functions of the Body Class I get the heading and linear/angular velocities desired. Thanks Sean Sean Verret wrote: > Hi there, > > I've been running a simple Pioneer2AT model in a world with no > obstacles. I noticed that if you rotate the robot 360 degrees, using > the position widget it in fact states that the robot has rotated closer > to 470 degrees. > > Does anyone else have this problem? Could I be missing something in my > world file? > > Thanks > Sean > > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job easier > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > _______________________________________________ > Playerstage-gazebo mailing list > Pla...@li... > https://lists.sourceforge.net/lists/listinfo/playerstage-gazebo > -- Sean Verret Defence Scientist Autonomous Intelligent Systems Section Collective Intelligence Group DRDC Suffield e: sea...@dr... p: (403) 544-4712 f: (403) 544-4704 w: http://www.drdc-rddc.gc.ca |
From: Jordi <mu...@gm...> - 2006-06-22 22:57:07
|
I guess that the authors wanted to simulate a typical odometric system. Using the body methods is just too perfect and it's information that can't be accessed in a real model (well, may be available if you have a gyroscope on board). As Pioneer (the real robot) uses odometry for getting information of position (I guess, I don't have one), the model also use simulated odometry. Anyway 470- 360 =110 degrees of difference between ideal data and simulated data is far too much. Are you just using wxgazebo? -- Jordi Polo > After looking closer at the model created I noticed that the authors > didn't take advantage of such functions like GetPose or GetLinearVel and > GetAngularVel for this->chassis but instead calculated the values using > methods that assume the base has two wheels... > > Was there a reason for this? > > It seems that if I use these functions of the Body Class I get the > heading and linear/angular velocities desired. > > Thanks > Sean > > Sean Verret wrote: > > Hi there, > > > > I've been running a simple Pioneer2AT model in a world with no > > obstacles. I noticed that if you rotate the robot 360 degrees, using > > the position widget it in fact states that the robot has rotated closer > > to 470 degrees. > > > > Does anyone else have this problem? Could I be missing something in my > > world file? > > > > Thanks > > Sean > > > > Using Tomcat but need to do more? Need to support web services, security? > > Get stuff done quickly with pre-integrated technology to make your job > > easier Download IBM WebSphere Application Server v.1.0.1 based on Apache > > Geronimo > > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > > _______________________________________________ > > Playerstage-gazebo mailing list > > Pla...@li... > > https://lists.sourceforge.net/lists/listinfo/playerstage-gazebo |
From: Sean V. <sea...@dr...> - 2006-06-26 20:39:25
|
Hi all, Thanks for the replies. I've been using wxgazebo and rotating the robot on the spot using the position widget. Rotating any of the other models, e.g. segway, gives back the proper 360 degrees when rotated (visually) 360 degrees. I suppose that the question that should be asked is, should the model attempt to model the actual hardware including any flaws, or should the model return the data as desired? Sean Jordi wrote: > > I guess that the authors wanted to simulate a typical odometric system. > Using the body methods is just too perfect and it's information that can't be > accessed in a real model (well, may be available if you have a gyroscope on > board). > As Pioneer (the real robot) uses odometry for getting information of position > (I guess, I don't have one), the model also use simulated odometry. > > Anyway 470- 360 =110 degrees of difference between ideal data and simulated > data is far too much. Are you just using wxgazebo? > > -- > Jordi Polo > >> After looking closer at the model created I noticed that the authors >> didn't take advantage of such functions like GetPose or GetLinearVel and >> GetAngularVel for this->chassis but instead calculated the values using >> methods that assume the base has two wheels... >> >> Was there a reason for this? >> >> It seems that if I use these functions of the Body Class I get the >> heading and linear/angular velocities desired. >> >> Thanks >> Sean >> >> Sean Verret wrote: >>> Hi there, >>> >>> I've been running a simple Pioneer2AT model in a world with no >>> obstacles. I noticed that if you rotate the robot 360 degrees, using >>> the position widget it in fact states that the robot has rotated closer >>> to 470 degrees. >>> >>> Does anyone else have this problem? Could I be missing something in my >>> world file? >>> >>> Thanks >>> Sean >>> >>> Using Tomcat but need to do more? Need to support web services, security? >>> Get stuff done quickly with pre-integrated technology to make your job >>> easier Download IBM WebSphere Application Server v.1.0.1 based on Apache >>> Geronimo >>> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 >>> _______________________________________________ >>> Playerstage-gazebo mailing list >>> Pla...@li... >>> https://lists.sourceforge.net/lists/listinfo/playerstage-gazebo > > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job easier > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > _______________________________________________ > Playerstage-gazebo mailing list > Pla...@li... > https://lists.sourceforge.net/lists/listinfo/playerstage-gazebo > -- Sean Verret Defence Scientist Autonomous Intelligent Systems Section Collective Intelligence Group DRDC Suffield e: sea...@dr... p: (403) 544-4712 f: (403) 544-4704 w: http://www.drdc-rddc.gc.ca |
From: Solly B. <so...@cs...> - 2006-06-23 06:26:57
|
Hi Sean, I believe the Pioneer 2AT uses skid steering. So when you rotate the robot you get a certain amount of skidding. And when the wheels skid the odometry reading doesn't change even though the robot rotates. The upshot is that the odometry underestimates the actual rotation of the robot. To confirm that this is indeed what is happening just replace your pioneer 2AT with a pioneer 2DX. Cheers, Solly Sean Verret wrote: >Hi there, > >I've been running a simple Pioneer2AT model in a world with no >obstacles. I noticed that if you rotate the robot 360 degrees, using >the position widget it in fact states that the robot has rotated closer >to 470 degrees. > >Does anyone else have this problem? Could I be missing something in my >world file? > >Thanks >Sean > >Using Tomcat but need to do more? Need to support web services, security? >Get stuff done quickly with pre-integrated technology to make your job easier >Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo >http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 >_______________________________________________ >Playerstage-gazebo mailing list >Pla...@li... >https://lists.sourceforge.net/lists/listinfo/playerstage-gazebo > > |
From: Sean V. <sea...@dr...> - 2006-06-26 21:01:52
|
Hi Solly, You are correct that when I replace the AT with a DX proper readings are given back based on the encoders and the math is similar to what Jordi wrote earlier. However the math seems as though it could be flawed. For example, if you have a robot that is the size of the P3AT and if you have a more rectangular robot, say three or four times longer than a P3AT but still has the same wheel width between the pairs the resulting angular velocity of the robot would be much different... I'm not sure if I'm getting my point across, it's much easier to draw in pictures... Sean Solly Brown wrote: > Hi Sean, > > I believe the Pioneer 2AT uses skid steering. So when you rotate the > robot you get a certain amount of skidding. And when the wheels skid the > odometry reading doesn't change even though the robot rotates. The > upshot is that the odometry underestimates the actual rotation of the robot. > > To confirm that this is indeed what is happening just replace your > pioneer 2AT with a pioneer 2DX. > > Cheers, Solly > > Sean Verret wrote: > >> Hi there, >> >> I've been running a simple Pioneer2AT model in a world with no >> obstacles. I noticed that if you rotate the robot 360 degrees, using >> the position widget it in fact states that the robot has rotated closer >> to 470 degrees. >> >> Does anyone else have this problem? Could I be missing something in my >> world file? >> >> Thanks >> Sean >> >> Using Tomcat but need to do more? Need to support web services, security? >> Get stuff done quickly with pre-integrated technology to make your job easier >> Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo >> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 >> _______________________________________________ >> Playerstage-gazebo mailing list >> Pla...@li... >> https://lists.sourceforge.net/lists/listinfo/playerstage-gazebo >> >> > > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job easier > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > _______________________________________________ > Playerstage-gazebo mailing list > Pla...@li... > https://lists.sourceforge.net/lists/listinfo/playerstage-gazebo > -- Sean Verret Defence Scientist Autonomous Intelligent Systems Section Collective Intelligence Group DRDC Suffield e: sea...@dr... p: (403) 544-4712 f: (403) 544-4704 w: http://www.drdc-rddc.gc.ca |
From: Reed H. <re...@mo...> - 2006-06-26 21:22:39
|
Sean Verret wrote: > Hi Solly, > > You are correct that when I replace the AT with a DX proper readings are > given back based on the encoders and the math is similar to what Jordi > wrote earlier. > > However the math seems as though it could be flawed. For example, if > you have a robot that is the size of the P3AT and if you have a more > rectangular robot, say three or four times longer than a P3AT but still > has the same wheel width between the pairs the resulting angular > velocity of the robot would be much different... > > I'm not sure if I'm getting my point across, it's much easier to draw in > pictures... In some sense, pretending that the AT has two wheels is correct, since the real AT only has two odometers, one for each side. It's like a two-wheeled robot whose tires have very bad traction. However, it might be useful if Gazebo had a "perfect position reporting" switch (like Stage), in case realistic odometry simulation is for whatever reason not important for a particular situation. Reed |
From: Reed H. <re...@mo...> - 2006-06-22 23:06:34
|
The best way to simulate the AT's odometers would be to look at the rotations (or integrate rotational velocities) of the individual wheel objects, if you can do that in the current system. (And each pair of wheels, left and right, ought to be synchronized, so you could just look at the two front wheels, or whichever one moved the most (front or back), or something.) Reed Jordi wrote: > I guess that the authors wanted to simulate a typical odometric system. > Using the body methods is just too perfect and it's information that can't be > accessed in a real model (well, may be available if you have a gyroscope on > board). > As Pioneer (the real robot) uses odometry for getting information of position > (I guess, I don't have one), the model also use simulated odometry. > > Anyway 470- 360 =110 degrees of difference between ideal data and simulated > data is far too much. Are you just using wxgazebo? > > -- > Jordi Polo > >> After looking closer at the model created I noticed that the authors >> didn't take advantage of such functions like GetPose or GetLinearVel and >> GetAngularVel for this->chassis but instead calculated the values using >> methods that assume the base has two wheels... >> >> Was there a reason for this? >> >> It seems that if I use these functions of the Body Class I get the >> heading and linear/angular velocities desired. >> >> Thanks >> Sean >> >> Sean Verret wrote: >>> Hi there, >>> >>> I've been running a simple Pioneer2AT model in a world with no >>> obstacles. I noticed that if you rotate the robot 360 degrees, using >>> the position widget it in fact states that the robot has rotated closer >>> to 470 degrees. >>> >>> Does anyone else have this problem? Could I be missing something in my >>> world file? >>> >>> Thanks >>> Sean >>> >>> Using Tomcat but need to do more? Need to support web services, security? >>> Get stuff done quickly with pre-integrated technology to make your job >>> easier Download IBM WebSphere Application Server v.1.0.1 based on Apache >>> Geronimo >>> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 >>> _______________________________________________ >>> Playerstage-gazebo mailing list >>> Pla...@li... >>> https://lists.sourceforge.net/lists/listinfo/playerstage-gazebo > > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job easier > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > _______________________________________________ > Playerstage-gazebo mailing list > Pla...@li... > https://lists.sourceforge.net/lists/listinfo/playerstage-gazebo > |
From: Jordi <mu...@gm...> - 2006-06-22 23:35:24
|
Actually It is done this way: D1= distace travelled by left wheel (time * radius * angular velocity of left wheel) D2= distance travelled by right wheel how much we rotated= (D2 - D1) / separation betwen wheels how much we go on X axis =(d1 + d2) / 2) * cosine of how much we rotated how much we go on Y axis =(d1 + d2) / 2) * sine of how much we rotated All those things are positions For velocity just divide distances by time since last call. -- Jordi Polo > The best way to simulate the AT's odometers would be to look at the > rotations (or integrate rotational velocities) of the individual wheel > objects, if you can do that in the current system. (And each pair of > wheels, left and right, ought to be synchronized, so you could just look at > the two front wheels, or whichever one moved the most (front or back), or > something.) > > Reed > > Jordi wrote: > > I guess that the authors wanted to simulate a typical odometric system. > > Using the body methods is just too perfect and it's information that > > can't be accessed in a real model (well, may be available if you have a > > gyroscope on board). > > As Pioneer (the real robot) uses odometry for getting information of > > position (I guess, I don't have one), the model also use simulated > > odometry. > > > > Anyway 470- 360 =110 degrees of difference between ideal data and > > simulated data is far too much. Are you just using wxgazebo? > > > > -- > > Jordi Polo > > > >> After looking closer at the model created I noticed that the authors > >> didn't take advantage of such functions like GetPose or GetLinearVel and > >> GetAngularVel for this->chassis but instead calculated the values using > >> methods that assume the base has two wheels... > >> > >> Was there a reason for this? > >> > >> It seems that if I use these functions of the Body Class I get the > >> heading and linear/angular velocities desired. > >> > >> Thanks > >> Sean > >> > >> Sean Verret wrote: > >>> Hi there, > >>> > >>> I've been running a simple Pioneer2AT model in a world with no > >>> obstacles. I noticed that if you rotate the robot 360 degrees, using > >>> the position widget it in fact states that the robot has rotated closer > >>> to 470 degrees. > >>> > >>> Does anyone else have this problem? Could I be missing something in my > >>> world file? > >>> > >>> Thanks > >>> Sean > >>> > >>> Using Tomcat but need to do more? Need to support web services, > >>> security? Get stuff done quickly with pre-integrated technology to make > >>> your job easier Download IBM WebSphere Application Server v.1.0.1 based > >>> on Apache Geronimo > >>> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=12164 > >>>2 _______________________________________________ > >>> Playerstage-gazebo mailing list > >>> Pla...@li... > >>> https://lists.sourceforge.net/lists/listinfo/playerstage-gazebo > > > > Using Tomcat but need to do more? Need to support web services, security? > > Get stuff done quickly with pre-integrated technology to make your job > > easier Download IBM WebSphere Application Server v.1.0.1 based on Apache > > Geronimo > > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > > _______________________________________________ > > Playerstage-gazebo mailing list > > Pla...@li... > > https://lists.sourceforge.net/lists/listinfo/playerstage-gazebo > > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job > easier Download IBM WebSphere Application Server v.1.0.1 based on Apache > Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > _______________________________________________ > Playerstage-gazebo mailing list > Pla...@li... > https://lists.sourceforge.net/lists/listinfo/playerstage-gazebo |