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

Alexandr Buyval's profile - activity

2023-06-26 09:22:06 -0500 asked a question [Nav2] Best way to incorporate the UI into a behavior tree

[Nav2] Best way to incorporate the UI into a behavior tree I am looking for the best practice how to implement the respo

2020-10-12 03:03:21 -0500 received badge  Famous Question (source)
2020-10-12 03:03:21 -0500 received badge  Notable Question (source)
2019-02-08 08:22:30 -0500 commented answer How to use Docker on a host together with non Docker machines (ROS)

I faced with the same issue. If I run the publisher before the subsciber in docker the communication does not work. Geor

2018-04-19 11:17:04 -0500 received badge  Good Answer (source)
2018-04-19 11:17:04 -0500 received badge  Enlightened (source)
2018-02-07 12:54:01 -0500 received badge  Famous Question (source)
2017-10-12 14:21:42 -0500 received badge  Nice Answer (source)
2016-12-20 07:53:19 -0500 received badge  Popular Question (source)
2016-12-16 04:09:53 -0500 received badge  Nice Answer (source)
2016-07-14 11:01:49 -0500 received badge  Good Answer (source)
2016-06-28 13:32:12 -0500 asked a question A path interpolation by arc-length coordinate

I am looking for a library/tool/class for interpolation a set of Cartesian points as a trajectory parameterized by arc-length. Particularly, I need a function which returns X,Y, curvature for arbitrary arc-length coordinate from start path.

Is there such library/class in ROS or as standalone library?

2016-03-17 04:20:52 -0500 received badge  Notable Question (source)
2016-02-08 10:44:31 -0500 received badge  Necromancer (source)
2016-01-28 20:09:26 -0500 received badge  Nice Answer (source)
2015-12-08 08:02:36 -0500 answered a question configs/nuttx_px4fmu-v2_default

Try to use:

catkin_make --cmake-args -DCONFIG=ros_sitl_simple

instead of 'catkin_make'

2015-11-16 01:29:17 -0500 marked best answer How can I get nearest occupied point from map?

Hi,

I am trying to write simple node of particle filter for Gazebo model of robot with diff drive and sonar sensors. I use map_server node to load map. I need method (or node) to get nearest occupied point from map to defined direction. It means, I would like model of sonar sensor on map. Is there such possibility in ROS?

Best Regards, Alex

2015-03-27 20:44:14 -0500 received badge  Popular Question (source)
2015-03-27 03:20:33 -0500 commented answer Frame with two parents in tf2

Thank you! I think it is that I need.

2015-03-26 14:08:22 -0500 commented answer Frame with two parents in tf2

Thank you! I will try. However if there are several markers, as I understood, this approach does not work.

2015-03-26 09:54:44 -0500 asked a question Frame with two parents in tf2

I have the following task. 'ar_track_alvar' node publishes transformation from a camera to a marker. My own node publishes transformation from a world frame to the marker. My aim is to find coordinates of camera relative the world frame. I was trying to lookup a transformation from the world frame to the camera.

transformStamped = node->tfBuffer.lookupTransform("world", markerFrame, ros::Time(0));

However, I faced out that a frame can have only one parent in tf2. Is there approach to solve my issue by tf2?

2015-03-19 04:44:47 -0500 commented answer Raspberry Pi 2 or Odroid U3 enough performance to run ROS and AR-Tag Pose Estimation?

It is truth, if the AR-tag detector supports several cores.

2015-03-18 14:21:24 -0500 answered a question Raspberry Pi 2 or Odroid U3 enough performance to run ROS and AR-Tag Pose Estimation?

I have not got Ondroid U3 or RPi2, however I have run this AR-tag node with usb_cam node on Beagle Bone Black board.

I got the satisfactory results. Messages with marker's pose was published each 100 ms (10 Hz) for 320x240 resolution. For resolition 640x480 I have got only 2-3 Hz. CPU loading was about 60% for 320x240 and about 90% for 640x480. I think that Ondroid U3 and RPi2 are more powerful, so you can use them for marker detection.

Best Regards, Alex

2014-10-31 13:50:45 -0500 answered a question How to localize a robot in a known map

Hi

You can use a particle filter to localize a robot. For instance see my tutorial

Best Regards, Alex

2014-07-10 07:13:23 -0500 received badge  Famous Question (source)
2014-05-16 09:28:30 -0500 answered a question how to do opencv haartraining with opencv from ROS?

Hi,

I have found 'opencv_haartraining' file into 'opt/ros/hydro/bin/' folder on my computer. I am also using ROS Hydro on Ubuntu 12.04.

However, please note, there is new version of haar training program. It is 'opencv_traincascade'. This program also is located into 'opt/ros/hydro/bin/' folder.

You can use this program like the following sample:

opencv_traincascade -data haarcascade_file -vec pos_samples.vec -bg negatives.dat -numStages 20 -precalcValBufSize 2000 -precalcIdxBufSize 2000 -featureType LBP -minHitRate 0.999 -maxFalseAlarmRate 0.05 -numPos 3000 -numNeg 3019 -w 24 -h 24 -mode ALL
2014-04-20 06:48:05 -0500 marked best answer Which stack is has file libgazebo_ros_openni_kinect.so?

I am running simulation TurtleBot (roslaunch turtlebot_gazebo turtlebot_empty_world.launch) and taking error "Failed to load libgazebo_ros_openni_kinect.so: libgazebo_ros_openni_kinect.so: cannot open shared object file: No such file or directory". Where is that file to find?

2014-04-20 06:47:45 -0500 marked best answer How to compile all packages ROS with debug info?

I want to debugging the node "nxt_assisted_teleop" in Eclipse. I've written in the file CMakeList.txt in line 10 "set (ROS_BUILD_TYPE RelWithDebInfo)", but I got an run-time error:

assisted_teleop: /opt/ros/diamondback/stacks/geometry/eigen/include/Eigen/src/Core/DenseStorage.h:69: Eigen::internal::plain_array<t, size,="" matrixorarrayoptions,="" 16="">::plain_array() [with T = float, int Size = 4, int MatrixOrArrayOptions = 0]: Assertion `(reinterpret_cast<size_t>(array) & 0xf) == 0 && "this assertion is explained here: " "http://eigen.tuxfamily.org/dox/UnalignedArrayAssert.html" " * READ THIS WEB PAGE !!! *"' failed.

I think it's because of what other nodes are compiled without debug info. I want to try to compile all packages with debug information. How to do it?

2014-01-28 17:24:59 -0500 marked best answer Problem running lcp_proxy in nxt-lejos-pkg

I try use lcp_proxy for bind PC and Lego NXT. I got source:

svn co https://lejos.svn.sourceforge.net/svnroot/lejos lejos

I compiled lcp_proxy normal. I created file lcp_proxy.properties:

NXT-BRICK: NXT
CONNECTION-TYPE: USB_CONNECTION
YAML-ROBOT-DESCRIPTOR: /home/alex/.ros/NXT2.yaml

I created file NXT2.yaml:

nxt_robot:
  - type: ultrasonic
    name: ultrasonic_sensor
    port: PORT_4
    spread_angle: 0.2
    min_range: 0.01
    max_range: 2.5
    desired_frequency: 10.0

I ran node lcp_proxy:

roslaunch lcp_proxy lcp_proxy.launch

and got error:

Loading node class: org.lejos.ros.nodes.LCPProxy
* Configurate ROS Node

*********************
* Running LCPProxy *
*********************

ROS Node Path: /home/alex/.ros/
* Reading property file
Path: /home/alex/.ros/lcp_proxy.properties
BRICK-NAME: NXT
CONNECTION: USB_CONNECTION
YAML: /home/alex/.ros/NXT2.yaml
* Connecting with a NXT brick
Exception in thread "pool-1-thread-7" java.lang.NoClassDefFoundError: lejos/nxt/remote/NXTCommRequest
    at org.lejos.ros.nodes.LCPProxy.connect(Unknown Source)
    at org.lejos.ros.nodes.LCPProxy.onStart(Unknown Source)
    at org.ros.internal.node.DefaultNode$1.run(DefaultNode.java:424)
    at org.ros.internal.node.DefaultNode$1.run(DefaultNode.java:421)
    at org.ros.concurrent.ListenerCollection$1.run(ListenerCollection.java:108)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
    at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.ClassNotFoundException: lejos.nxt.remote.NXTCommRequest
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
    ... 8 more
Mar 14, 2012 7:59:18 PM org.ros.internal.node.topic.DefaultPublisher$1 onMasterRegistrationSuccess
INFO: Publisher registered: Publisher<PublisherDefinition<PublisherIdentifier<NodeSlaveIdentifier</lcp_proxy, http://127.0.0.1:54634>, TopicIdentifier</rosout>>, TopicDefinition<TopicIdentifier</rosout>, MessageDefinition<rosgraph_msgs/Log, acffd30cd6b6de30f120938c17c593fb>>>>
2014-01-28 17:24:44 -0500 marked best answer Runtime error "Can't create handler inside thread that has not called Looper.prepare()" in android application

I am writing android application for control Lego NXT and connect ROS. I use library LeJos for control Lego. I'v got runtime error "Can't create handler inside thread that has not called Looper.prepare()" when run motor NXT from rosjava node:

class NXTNode implements NodeMain {
    public static RemoteMotor motor;

      @Override
      public GraphName getDefaultNodeName() {
        return new GraphName("android/NXTNode");
      }    
      @Override
      public void onStart(final Node node) {

        motor = new Motor().A;
            motor.setPower(60);  
            motor.forward();  

        node.executeCancellableLoop(new CancellableLoop() {
          @Override
          protected void setup() {
          }

          @Override
          protected void loop() throws InterruptedException {
            Thread.sleep(10);
          }
        });
      }           
      @Override
      public void onShutdown(Node node) {
      }
      @Override
      public void onShutdownComplete(Node node) {
      }
    }

Node "NXTNode" I run in

  protected void init(NodeMainExecutor nodeMainExecutor) {
      NodeConfiguration nodeConfiguration =    NodeConfiguration.newPublic(InetAddressFactory.newNonLoopback().getHostAddress());
      nodeConfiguration.setMasterUri(getMasterUri());
      nxt_node = new NXTNode();
      nodeMainExecutor.execute(nxt_node, nodeConfiguration);
  }

If I run motor from interface (onClick) then motor is running

public void onClick(View arg0) {                
    motor = new Motor().A;
    motor.setPower(60);
    motor.forward();
}

Where could be the problem? Thank you!

UPDATE:

FATAL EXCEPTION: pool-1-thread-7
java.lang.ExceptionInInitializerError
at org.ros.android.tutorial.pubsub.NXTNode.onStart(NXTNode.java:239)
at org.ros.internal.node.DefaultNode$1.run(DefaultNode.java:422)
at org.ros.internal.node.DefaultNode$1.run(DefaultNode.java:419)
at org.ros.concurrent.ListenerCollection$1.run(ListenerCollection.java:108)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1088)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:581)
at java.lang.Thread.run(Thread.java:1019)
Caused by: java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare()
at android.os.Handler.<init>(Handler.java:121)
at android.bluetooth.BluetoothAdapter$1.<init>(BluetoothAdapter.java:1012)
at android.bluetooth.BluetoothAdapter.<init>(BluetoothAdapter.java:1012)
at android.bluetooth.BluetoothAdapter.getDefaultAdapter(BluetoothAdapter.java:340)
at lejos.pc.comm.NXTCommAndroid.search(NXTCommAndroid.java:394)
at lejos.pc.comm.NXTConnector.search(NXTConnector.java:171)
at lejos.pc.comm.NXTConnector.connectTo(NXTConnector.java:222)
at lejos.pc.comm.NXTConnector.connectTo(NXTConnector.java:39)
at lejos.pc.comm.NXTCommandConnector.open(NXTCommandConnector.java:22)
at lejos.pc.comm.NXTCommandConnector.getSingletonOpen(NXTCommandConnector.java:41)
at lejos.nxt.Motor.<clinit>(Motor.java:15)
... 7 more
2014-01-28 17:24:44 -0500 marked best answer How to show the image on the application form in PyQt

I want add camera view from topic "camera/image_raw" in PyQt application like art_teleop.py (http://www.ros.org/wiki/art_teleop). How to do it? Are there any examples? Thank you

2014-01-28 17:24:37 -0500 marked best answer RosActivity vs RosAppActivity

What is the different between RosActivity and RosAppActivity in android application?

2014-01-28 17:22:55 -0500 marked best answer Parameter server dictionary lookups in rosjava

I've got file robot.yaml with massive of parameters

nxt_robot:
  - type: motor
    name: r_wheel_joint
    port: PORT_A
    desired_frequency: 20.0

  - type: motor
    name: l_wheel_joint
    port: PORT_B
    desired_frequency: 20.0

  - type: ultrasonic
    frame_id: ultrasonic_link
    name: ultrasonic_sensor
    port: PORT_2
    spread_angle: 0.2
    min_range: 0.01
    max_range: 2.5
    desired_frequency: 5.0

In Python I read parameters so:

config = rospy.get_param("~nxt_robot")
for c in config:
    rospy.loginfo("Creating %s with name %s on %s",c['type'],c['name'],c['port'])

How to do it in rosjava?

2014-01-28 17:22:52 -0500 marked best answer Use an external library in rosjava

I wrote a node (rosjava) that uses the library "lejos". Node compile without error, but when I run the node

rosrun rosjava_bootstrap run.py nxt_rosjava org.ros.nxt_rosjava.Listener

I get an error

Buildfile: /home/alex/lego-nxt-car-like/nxt_rosjava/dependencies.xml

get-dependencies:

BUILD SUCCESSFUL
Total time: 3 seconds
Executing command: ['java', '-classpath', u'/home/alex/lego-nxt-car-like/nxt_rosjava/target/org.ros.rosjava.nxt_rosjava-0.0.0.jar:/home/alex/.ros/rosjava/lib/org.ros.rosjava.test_ros-0.0.0.jar:/home/alex/.ros/rosjava/lib/org.ros.rosjava.roscpp-0.0.0.jar:/home/alex/.ros/rosjava/lib/org.ros.rosjava.topic_tools-0.0.0.jar:/opt/ros/diamondback/stacks/rosjava_core/apache_xmlrpc/target/org.ros.rosjava.apache-xmlrpc-3.1.3.jar:/opt/ros/diamondback/stacks/rosjava_core/rosjava_bootstrap/target/org.ros.rosjava.rosjava_bootstrap-0.0.0.jar:/home/alex/.ros/rosjava/lib/org.ros.rosjava.std_msgs-0.0.0.jar:/opt/ros/diamondback/stacks/rosjava_core/rosjava/target/org.ros.rosjava-0.0.0.jar:/home/alex/.ros/rosjava/lib/org.ros.rosjava.rosgraph_msgs-0.0.0.jar:/home/alex/.ros/rosjava/lib/org.ros.rosjava.geometry_msgs-0.0.0.jar:/opt/ros/diamondback/stacks/rosjava_core/apache_commons_util/target/org.ros.rosjava.ws-commons-util-1.0.2.jar:/home/alex/.m2/repository/com/google/guava/org.ros.rosjava.guava/r07/org.ros.rosjava.guava-r07.jar:/home/alex/.m2/repository/dnsjava/org.ros.rosjava.dnsjava/2.1.1/org.ros.rosjava.dnsjava-2.1.1.jar:/home/alex/.m2/repository/org/apache/commons/com.springsource.org.apache.commons.codec/1.3.0/com.springsource.org.apache.commons.codec-1.3.0.jar:/home/alex/.m2/repository/org/apache/commons/com.springsource.org.apache.commons.httpclient/3.1.0/com.springsource.org.apache.commons.httpclient-3.1.0.jar:/home/alex/.m2/repository/org/apache/commons/com.springsource.org.apache.commons.logging/1.1.1/com.springsource.org.apache.commons.logging-1.1.1.jar:/home/alex/.m2/repository/org/jboss/netty/netty/3.2.4.Final/netty-3.2.4.Final.jar', 'org.ros.RosRun', 'org.ros.nxt_rosjava.Listener']
Loading node class: org.ros.nxt_rosjava.Listener
Exception in thread "main" java.lang.NoClassDefFoundError: lejos/nxt/Motor
    at org.ros.nxt_rosjava.Listener.main(Listener.java:36)
    at org.ros.RosRun.main(RosRun.java:71)

I think that I need add "/home/alex/lejos_nxj/lib/pc/pccomm.jar" in dependencies.xml, but how to do it?