ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

jforkey's profile - activity

2015-07-08 10:54:34 -0500 received badge  Nice Question (source)
2014-11-24 02:04:36 -0500 received badge  Famous Question (source)
2014-11-24 02:04:36 -0500 received badge  Notable Question (source)
2014-01-28 17:29:17 -0500 marked best answer Rosjava setting classpath with gradle

Hi,

Along my journey to learning ROSJava I have bumped into what appears to be a pretty elementary question, so I hope somewhere can answer it quickly. It looks as if the manifest.xml file is essentially useless since Spring of '12 when ROSJava was rolled over to using gradle to build. What leads me to believe this? I tossed a random syntax error into the file to see if it would throw a fit, but it compiled just fine. So, is my understanding correct; manifest.xml is no longer used when building? If this is true, how do I set the class path to reference other dependencies.

Before, you could use <rosjava-pathelement> /dir/example.jar </rosjava-pathelement>.

I am looking for a pretty in-depth explanation. I want to understand it, not just use it. Is there a link that I am missing? I have read the tutorials over multiple times.

Thanks, James

2014-01-28 17:29:16 -0500 marked best answer ROSJava communication with outside program

Hi,

I have another application that manages task execution, similar to Collagen. I would like to build a link between this application and ROSJava. I am very new to ROS and ROSJava. I have gone through most of the tutorials and have a primitive understanding. To start, I would like something like a proof of concept. The application sends a task to be executed, ROSJava sends a confirmation (just a string for now), repeat. It should be something similar to the pubsub talk/listener tutorial, except that there is a talk / listener on both sides. Any idea on how I could achieve this?

Thanks!

2013-08-22 22:52:41 -0500 received badge  Famous Question (source)
2013-08-19 00:50:27 -0500 received badge  Famous Question (source)
2013-05-10 10:52:45 -0500 received badge  Famous Question (source)
2013-04-28 23:22:09 -0500 received badge  Notable Question (source)
2013-04-22 22:13:31 -0500 received badge  Popular Question (source)
2013-04-22 17:40:51 -0500 received badge  Notable Question (source)
2013-04-22 11:30:52 -0500 answered a question Creating new request services

I've managed to achieve this by starting my third party application (where the requests derive from) in a separate thread then making the thread wait when you issue the request using:

synchronized (thread1) {
    thread1.wait();
 }

Then, wake it up in the onSuccess (and onFailure - don't want it getting stuck waiting) with:

  synchronized (thread1) {
      thread1.notifyAll();
  }

Then I created a method to construct the requests that my third party client can call:

 public static void buildRequest(String str){

    final rosd_messages.RosDRequest req;
    req = node1.getServiceRequestMessageFactory().newFromType(rosd_messages.RosD._TYPE);
    req.setTask(str);
     ServiceClient<rosd_messages.RosDRequest, rosd_messages.RosDResponse> sClient;

    try {
        sClient = node1.newServiceClient("abc123", rosd_messages.RosD._TYPE);
      } catch (ServiceNotFoundException e) {
            throw new RosRuntimeException(e);
    }

Note: There is no reason you have to use custom requests. I think this gives you the ability to build your own requests dynamically in a fairly efficient way. If you have a better idea, I am all ears.

Cheers! -James

2013-04-19 06:14:29 -0500 received badge  Popular Question (source)
2013-04-18 23:15:37 -0500 received badge  Nice Question (source)
2013-04-18 10:26:49 -0500 received badge  Famous Question (source)
2013-04-18 10:17:46 -0500 asked a question Turtlebot Gazebo Groovy

I have read that the turtlebot gazebo simulator was broken. Is it still broken? Any time frame for it to be fixed? Does anyone have a turtlebot (or even an icreate) working with gazebo?

Thanks.

2013-04-12 01:31:20 -0500 asked a question Creating new request services

I am struggling with creating new requests dynamically. I have defined my own messages and I want to do something like request.setTask("xyz"); The request will happily take whatever I pass to it if I hardcode the tasks, but I want to have a separate function that I can call and will generate these responses. Do I need to create a ServiceManager and ServiceFactory?

This:

final rosd_messages.RosDRequest request = serviceClient.newMessage();
request.setTask("xyz");

works fine. However, what if we have another task "abc" that we want to execute? What if we aren't sure how many requests there will be? I can create a new request, but I can't initialize it to serviceClient.newMessage(); as the serviceClient is final.

Any help?

Thanks! James

2013-04-12 01:15:35 -0500 received badge  Famous Question (source)
2013-03-24 23:44:07 -0500 received badge  Self-Learner (source)
2013-03-24 23:44:07 -0500 received badge  Teacher (source)
2013-03-24 23:43:10 -0500 received badge  Notable Question (source)
2013-03-24 23:43:10 -0500 received badge  Popular Question (source)
2013-03-22 00:29:51 -0500 received badge  Notable Question (source)
2013-03-21 23:45:28 -0500 commented answer rosjava and pr2 tutorial

Other than that it would be a matter of determining the interface you are after and implementing it using the publishers, subscribers,servers and clients in rosjava_core. All the message types are available in rosjava_core.

Can you point to a tutorial that does this for any single interface?

2013-03-21 11:54:37 -0500 received badge  Popular Question (source)
2013-03-21 09:42:52 -0500 commented answer rosjava and pr2 tutorial

A) The rosjava link simply references another external link, which I have read entirely multiple times.
B) The PR2 link contains links for other versions of ROS, not groovy, or anything about rosjava. C) The actionlib link is for ROS (C++), not rosjava.

2013-03-19 14:35:01 -0500 asked a question rosjava and pr2 tutorial

Does anyone have a decent tutorial for using rosjava and a PR2? Even a simple tutorial would be greatly beneficial.

Anything with the PR2, actionlib, rosjava groovy would be a great help. I can't find anything.

Thanks, James

2013-03-15 04:16:20 -0500 received badge  Notable Question (source)
2013-03-12 22:49:10 -0500 received badge  Popular Question (source)
2013-03-12 14:23:01 -0500 received badge  Student (source)