Hi, I am new to player/stage. But somehow I managed to come up with the below code but is not moving
First the configuration file
driver
(
name "stage"
provides ["simulation:0"]
plugin "stageplugin"
#load the world file
worldfile "robotWorld.world"
)
driver
(
name "stage"
provides [
"position2d:0"
"laser:0"
]
model "robot"
)
The map.inc file
define map model
(
#color of the map
color "black"
#we need a boundary wall aroung the map, then only the robot can't go outside of the map
boundary 1
gui_nose 1
gui_grid 1
gui_movemask 0
gui_outline 0
fiducial_reurn 0
gripper_return 0
)
The robot.inc file
define robots_laser laser
(
# minimum range of the laser
range_min 0.0
#maximum range of the laser
range_max 2
#field of view or pan angle of the camera
#fov 180
#assume the robot's size as 400*200, and the camera is in the front end
pose [200 100 0 0]
#size of the camera
size [0.025 0.025 0.001]
)
define robot position
(
#size of the robot
size [50 50 50]
#as a default centre of rotation is the geometry centre
#shape of the robot
polygons 1
polygon[0].points 4
polygon[0].point[0] [0 0]
polygon[0].point[1] [1 0]
polygon[0].point[2] [1 1]
polygon[0].point[3] [0 1]
# car steering model
drive "car"
#mass of the robot
mass 10.0
robots_laser()
)
The world file is
include "robot.inc"
include "map.inc"
#size of the simulation
size [15 15]
#interval_sim=5
#interval_real=10
#GUI window
window
(
size [700 700]
scale 2.5
show_data 1
)
map
(
bitmap "map2"
size [300 300 3]
)
robot
(
name "robot"
pose [0 0 0 0]
color "Green"
)
This is the main cpp file (mainCode.cpp)
#include<iostream>
#include<unistd.h>
#include<time.h>
#include<player-3.0/libplayerc++/playerc++.h>
using namespace std;
int main(int argc,char * argv[])
{
using namespace PlayerCc;
cout << "111111111111" << endl ;
PlayerClient robotClient("localhost",6665);
Position2dProxy p2dProxy(&robotClient,0);
LaserProxy laserProxy(&robotClient,0);
p2dProxy.SetMotorEnable(true);
p2dProxy.RequestGeom();
robotClient.Read();
while(true)
{
robotClient.Read();
p2dProxy.SetCarlike(240,0);
cout << laserProxy[45] << endl ;
}
cout << "reached the end of the coding" << endl ;
}
Every thing is fine but the robot is not moving, So In the above code I am getting a constant value as the output. And in the simulation robot is not moving. Anybody, please help me?