Hi Stephan,
As long as you fill the ::SetDesired and ::SetPath methods, then you should be good to go. I usually create a concurrent thread that keeps on pinging the tcp for feedback and sets some type of local variable with the robot's joint values and positon. Then when ControllerBase::SimulationStep is called, I lock a mutex and set the robot values. It is also possible to lock physics and set the robot values diretcly from your concurrent thread. But if you do that, it means you have to start locking physics everytime you have a planner and want to preserve the robot state. Note that OpenRAVE always has physics locked when it calls the various SimulationStep functions. A simple example of a player controller can be found in plugins/playerrave/simpeplayercontroller.cpp. I'm attaching a simple TCP/IP controller I developed a long time ago, hopefully this will help get you started. rosen, 2008/10/15 Stefan Ulbrich <[hidden email]> Hello Rosen, |
just update with the most recent values
2008/10/15 Stefan Ulbrich <[hidden email]>
|
i forgot to attach the controller server code you would be using to connect to the network ;0)
rosen, 2008/10/15 Rosen Diankov <[hidden email]>
|
In reply to this post by Rosen Diankov-2
Hey Rosen,
When the xml reader parses an xml reader and path to a file, for example an .wrl file, is read, where exactly does it look for that file? Currently we have been specifying the full path to the file or specifying the path relative to the openrave/bin directory. Is there there an environment variable that can be set to tell the xml reader where to look, or is it possible to set it up to assume a path relative to the parent xml file? Seth |
Free forum by Nabble | Edit this page |