## [Playerstage-users] position geometry problem

 [Playerstage-users] position geometry problem From: David Bajger - 2005-06-30 12:47:58 ```Hi,=20 I use pyplayer (modified) client for communication with Player and I solve how to read global position of my robot (yaw most important for me) in the environment, which is stored in config file of Stage as=20 line "pose [x, y, yaw]". When I send to Player get_position_geometry() the answer is ( -40, 0, 0), (440, 330)). The second tuple is ok (dimensions), but pose is not correct, because in my config file first tupple represent just offset of the robot, but not pose. Perhaps should be problem in configuration file of Stage. I'm using older versions of Stage 1.3.5, Player 1.5. If you have any suggestions, please report. The config files are following: # File: simple.world gui=20 (=20 size [600.000 600.000 ]=20 origin [4.5 4.5 0]=20 scale 0.021 # the size of each bitmap pixel in meters=20 )=20 bitmap=20 (=20 file "cave.pnm.gz" resolution 0.02=20 )=20 include "sparko.inc" sparko ( color "red" name "Pioneer1" port 6665 pose [1.672 1.000 45.000] mcom() #broadcast() ) sparko=20 ( color "blue" name "Pioneer2" port 6666 pose [3.853 6.646 -90.000] mcom() #broadcast() ) #File sparco.inc #define 16 sonars define sparko_sonar sonar ( scount 16 ... ) #define 5 straight bumpers on the rear edge of the robot define sparko_bumpers bumper ( bcount 5 ... ) # the pioneer's center of rotation is offset from its # center of area define sparko position ( =09 size [.440 .330] offset [-0.04 0.0] =20 sparko_sonar() sparko_bumpers() power() ) ```

 [Playerstage-users] position geometry problem From: David Bajger - 2005-06-30 12:47:58 ```Hi,=20 I use pyplayer (modified) client for communication with Player and I solve how to read global position of my robot (yaw most important for me) in the environment, which is stored in config file of Stage as=20 line "pose [x, y, yaw]". When I send to Player get_position_geometry() the answer is ( -40, 0, 0), (440, 330)). The second tuple is ok (dimensions), but pose is not correct, because in my config file first tupple represent just offset of the robot, but not pose. Perhaps should be problem in configuration file of Stage. I'm using older versions of Stage 1.3.5, Player 1.5. If you have any suggestions, please report. The config files are following: # File: simple.world gui=20 (=20 size [600.000 600.000 ]=20 origin [4.5 4.5 0]=20 scale 0.021 # the size of each bitmap pixel in meters=20 )=20 bitmap=20 (=20 file "cave.pnm.gz" resolution 0.02=20 )=20 include "sparko.inc" sparko ( color "red" name "Pioneer1" port 6665 pose [1.672 1.000 45.000] mcom() #broadcast() ) sparko=20 ( color "blue" name "Pioneer2" port 6666 pose [3.853 6.646 -90.000] mcom() #broadcast() ) #File sparco.inc #define 16 sonars define sparko_sonar sonar ( scount 16 ... ) #define 5 straight bumpers on the rear edge of the robot define sparko_bumpers bumper ( bcount 5 ... ) # the pioneer's center of rotation is offset from its # center of area define sparko position ( =09 size [.440 .330] offset [-0.04 0.0] =20 sparko_sonar() sparko_bumpers() power() ) ```
 Re: [Playerstage-users] position geometry problem From: Richard vaughan - 2005-06-30 16:49:55 ```On 30-Jun-05, at 5:47 AM, David Bajger wrote: > Hi, > I use pyplayer (modified) client for communication with Player and I > solve how to read global position of my robot (yaw most important for > me) in the environment, which is stored in config file of Stage as > line "pose [x, y, yaw]". When I send to Player get_position_geometry() > the answer is ( -40, 0, 0), (440, 330)). The second tuple is ok > (dimensions), but pose is not correct, because in my config file first > tupple represent just offset of the robot, but not pose. Perhaps > should be problem in configuration file of Stage. I'm using older > versions of Stage 1.3.5, Player 1.5. If you have any suggestions, > please report. > That's working as it should. The 'geometry' of a robot is its size =20 and the offset of the center of its body to its center of rotation. =20 Geometry does not include the position of the robot in the global =20 coordinate system. To get that you have two choices: either use the =20 simulation interface to get the true pose of the robot, (e.g. =20 playerc_simulation_get_pose2d()) or use the robot's position device. =20 If you set the robot's initial odometry (using the 'odom' world file =20 keyword) to be the same as its initial pose, then the odometry will =20 continue to be the true position of the robot. Richard/ > The config files are following: > # File: simple.world > gui > ( > size [600.000 600.000 ] > origin [4.5 4.5 0] > scale 0.021 # the size of each bitmap pixel in meters > ) > bitmap > ( > file "cave.pnm.gz" > resolution 0.02 > ) > > include "sparko.inc" > > sparko > ( > color "red" > name "Pioneer1" > port 6665 > pose [1.672 1.000 45.000] > mcom() > #broadcast() > ) > > sparko > ( > color "blue" > name "Pioneer2" > port 6666 > pose [3.853 6.646 -90.000] > mcom() > #broadcast() > ) > > #File sparco.inc > #define 16 sonars > define sparko_sonar sonar > ( > scount 16 > ... > ) > > #define 5 straight bumpers on the rear edge of the robot > define sparko_bumpers bumper > ( > bcount 5 > ... > ) > > # the pioneer's center of rotation is offset from its > # center of area > define sparko position > ( > size [.440 .330] > offset [-0.04 0.0] > sparko_sonar() > sparko_bumpers() > power() > ) > > > ------------------------------------------------------- > SF.Net email is sponsored by: Discover Easy Linux Migration Strategies > from IBM. Find simple to follow Roadmaps, straightforward articles, > informative Webcasts and more! Get everything you need to get up to > speed, fast. http://ads.osdn.com/?ad_idt77&alloc_id=16492&op=CCk > _______________________________________________ > Playerstage-users mailing list > Playerstage-users@... > https://lists.sourceforge.net/lists/listinfo/playerstage-users > > > ```
 Re: [Playerstage-users] position geometry problem From: David Bajger - 2005-07-05 11:04:55 ```Thanks for respond, but when I tried to set the initial odometry by defining the line "odom [x y theta]" after the line "pose" in my world file, the Stage answered: "stage warning : worldfile.cc WarnUnused worldfile simple.world:41 : property [odom] is defined but not used". Also I couldn't find using this keyword in documentation. Where do I make a mistake? DB > > On 30-Jun-05, at 5:47 AM, David Bajger wrote: > > >> Hi, >> I use pyplayer (modified) client for communication with Player and I >> solve how to read global position of my robot (yaw most important for >> me) in the environment, which is stored in config file of Stage as >> line "pose [x, y, yaw]". When I send to Player get_position_geometry() >> the answer is ( -40, 0, 0), (440, 330)). The second tuple is ok >> (dimensions), but pose is not correct, because in my config file first >> tupple represent just offset of the robot, but not pose. Perhaps >> should be problem in configuration file of Stage. I'm using older >> versions of Stage 1.3.5, Player 1.5. If you have any suggestions, >> please report. >> > > That's working as it should. The 'geometry' of a robot is its size > and the offset of the center of its body to its center of rotation. > Geometry does not include the position of the robot in the global > coordinate system. To get that you have two choices: either use the > simulation interface to get the true pose of the robot, (e.g. > playerc_simulation_get_pose2d()) or use the robot's position device. > If you set the robot's initial odometry (using the 'odom' world file > keyword) to be the same as its initial pose, then the odometry will > continue to be the true position of the robot. > > Richard/ > > >> The config files are following: >> # File: simple.world >> gui >> ( >> size [600.000 600.000 ] >> origin [4.5 4.5 0] >> scale 0.021 # the size of each bitmap pixel in meters >> ) >> bitmap >> ( >> file "cave.pnm.gz" >> resolution 0.02 >> ) >> >> include "sparko.inc" >> >> sparko >> ( >> color "red" >> name "Pioneer1" >> port 6665 >> pose [1.672 1.000 45.000] >> mcom() >> #broadcast() >> ) >> >> sparko >> ( >> color "blue" >> name "Pioneer2" >> port 6666 >> pose [3.853 6.646 -90.000] >> mcom() >> #broadcast() >> ) >> >> #File sparco.inc >> #define 16 sonars >> define sparko_sonar sonar >> ( >> scount 16 >> ... >> ) >> >> #define 5 straight bumpers on the rear edge of the robot >> define sparko_bumpers bumper >> ( >> bcount 5 >> ... >> ) >> >> # the pioneer's center of rotation is offset from its >> # center of area >> define sparko position >> ( >> size [.440 .330] >> offset [-0.04 0.0] >> sparko_sonar() >> sparko_bumpers() >> power() >> ) >> >> >> ------------------------------------------------------- >> SF.Net email is sponsored by: Discover Easy Linux Migration Strategies >> from IBM. Find simple to follow Roadmaps, straightforward articles, >> informative Webcasts and more! Get everything you need to get up to >> speed, fast. http://ads.osdn.com/?ad_idt77&alloc_id492&opÌk >> _______________________________________________ >> Playerstage-users mailing list >> Playerstage-users@... >> https://lists.sourceforge.net/lists/listinfo/playerstage-users >> >> >> > > > > > ------------------------------------------------------- > SF.Net email is sponsored by: Discover Easy Linux Migration Strategies > from IBM. Find simple to follow Roadmaps, straightforward articles, > informative Webcasts and more! Get everything you need to get up to > speed, fast. http://ads.osdn.com/?ad_idt77&alloc_id492&op=click > _______________________________________________ > Playerstage-users mailing list > Playerstage-users@... > https://lists.sourceforge.net/lists/listinfo/playerstage-users > > ```
 Re: [Playerstage-users] position geometry problem From: Richard Vaughan - 2005-07-05 20:43:16 ```My tip only applies to the latest versions. Sorry about that. I think=20 that Stage 1.3 used the 'truth' device to provide global position=20 information. Check for that in the manual. Richard/ David Bajger wrote: > Thanks for respond, > but when I tried to set the initial odometry by defining the line "odom= =20 > [x y theta]" after the line "pose" in my world file, the Stage answered= :=20 > "stage warning : worldfile.cc WarnUnused worldfile simple.world:41 :=20 > property [odom] is defined but not used". Also I couldn't find using=20 > this keyword in documentation. Where do I make a mistake? > DB >=20 >> >> On 30-Jun-05, at 5:47 AM, David Bajger wrote: >> >> >>> Hi, >>> I use pyplayer (modified) client for communication with Player and I >>> solve how to read global position of my robot (yaw most important for >>> me) in the environment, which is stored in config file of Stage as >>> line "pose [x, y, yaw]". When I send to Player get_position_geometry(= ) >>> the answer is ( -40, 0, 0), (440, 330)). The second tuple is ok >>> (dimensions), but pose is not correct, because in my config file firs= t >>> tupple represent just offset of the robot, but not pose. Perhaps >>> should be problem in configuration file of Stage. I'm using older >>> versions of Stage 1.3.5, Player 1.5. If you have any suggestions, >>> please report. >>> >> >> That's working as it should. The 'geometry' of a robot is its size =20 >> and the offset of the center of its body to its center of rotation. =20 >> Geometry does not include the position of the robot in the global =20 >> coordinate system. To get that you have two choices: either use the =20 >> simulation interface to get the true pose of the robot, (e.g. =20 >> playerc_simulation_get_pose2d()) or use the robot's position device. =20 >> If you set the robot's initial odometry (using the 'odom' world file =20 >> keyword) to be the same as its initial pose, then the odometry will =20 >> continue to be the true position of the robot. >> >> Richard/ >> >> >>> The config files are following: >>> # File: simple.world >>> gui >>> ( >>> size [600.000 600.000 ] >>> origin [4.5 4.5 0] >>> scale 0.021 # the size of each bitmap pixel in meters >>> ) >>> bitmap >>> ( >>> file "cave.pnm.gz" >>> resolution 0.02 >>> ) >>> >>> include "sparko.inc" >>> >>> sparko >>> ( >>> color "red" >>> name "Pioneer1" >>> port 6665 >>> pose [1.672 1.000 45.000] >>> mcom() >>> #broadcast() >>> ) >>> >>> sparko >>> ( >>> color "blue" >>> name "Pioneer2" >>> port 6666 >>> pose [3.853 6.646 -90.000] >>> mcom() >>> #broadcast() >>> ) >>> >>> #File sparco.inc >>> #define 16 sonars >>> define sparko_sonar sonar >>> ( >>> scount 16 >>> ... >>> ) >>> >>> #define 5 straight bumpers on the rear edge of the robot >>> define sparko_bumpers bumper >>> ( >>> bcount 5 >>> ... >>> ) >>> >>> # the pioneer's center of rotation is offset from its >>> # center of area >>> define sparko position >>> ( >>> size [.440 .330] >>> offset [-0.04 0.0] >>> sparko_sonar() >>> sparko_bumpers() >>> power() >>> ) >>> >>> >>> ------------------------------------------------------- >>> SF.Net email is sponsored by: Discover Easy Linux Migration Strategie= s >>> from IBM. Find simple to follow Roadmaps, straightforward articles, >>> informative Webcasts and more! Get everything you need to get up to >>> speed, fast. http://ads.osdn.com/?ad_idt77&alloc_id=16492&op=CCk >>> _______________________________________________ >>> Playerstage-users mailing list >>> Playerstage-users@... >>> https://lists.sourceforge.net/lists/listinfo/playerstage-users >>> >>> >>> >> >> >> >> >> ------------------------------------------------------- >> SF.Net email is sponsored by: Discover Easy Linux Migration Strategies >> from IBM. Find simple to follow Roadmaps, straightforward articles, >> informative Webcasts and more! Get everything you need to get up to >> speed, fast. http://ads.osdn.com/?ad_idt77&alloc_id=16492&op=3Dclick >> _______________________________________________ >> Playerstage-users mailing list >> Playerstage-users@... >> https://lists.sourceforge.net/lists/listinfo/playerstage-users >> >> >=20 >=20 >=20 > ------------------------------------------------------- > SF.Net email is sponsored by: Discover Easy Linux Migration Strategies > from IBM. Find simple to follow Roadmaps, straightforward articles, > informative Webcasts and more! Get everything you need to get up to > speed, fast. http://ads.osdn.com/?ad_id=3D7477&alloc_id=3D16492&op=3Dcl= ick > _______________________________________________ > Playerstage-users mailing list > Playerstage-users@... > https://lists.sourceforge.net/lists/listinfo/playerstage-users ```