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

9a3eedi's profile - activity

2019-09-25 10:12:18 -0500 received badge  Taxonomist
2018-07-05 16:10:50 -0500 received badge  Famous Question (source)
2018-06-26 01:20:50 -0500 received badge  Popular Question (source)
2018-06-25 04:42:26 -0500 asked a question Piping catkin_make stderr to less while preserving color

Piping catkin_make stderr to less while preserving color Hope this isn't too unrelated to ROS, but in an effort to reduc

2018-06-18 01:16:02 -0500 edited question Unable to include headers found in devel/include, generated by grpc

Unable to include headers found in devel/include, generated by grpc I have a project (let's call it the protobuf_package

2018-06-18 00:53:31 -0500 edited question Unable to include headers found in devel/include, generated by grpc

Unable to include headers found in devel/include, generated by grpc I have a project (let's call it the protobuf_package

2018-06-18 00:52:21 -0500 asked a question Unable to include headers found in devel/include, generated by grpc

Unable to include headers found in devel/include, generated by grpc I have a project (let's call it the protobuf_package

2018-06-18 00:40:33 -0500 received badge  Notable Question (source)
2018-05-31 04:01:53 -0500 commented answer Recommended install for embedded raspberry pi 3 with minimal OS

Actually, after simply disabling the X server and splash screen, my boot time is approximately 15 seconds. This is great

2018-05-29 00:27:14 -0500 received badge  Commentator
2018-05-29 00:27:14 -0500 commented answer Recommended install for embedded raspberry pi 3 with minimal OS

Great answer, thanks! Although a 1 minute boot time might be a bit too much for me, but I'm willing to tolerate it if it

2018-05-29 00:24:26 -0500 marked best answer Recommended install for embedded raspberry pi 3 with minimal OS

I have a raspberry pi 3 compute module that I would like to use with a custom built robot prototype. As this will be a headless and embedded install, I have no use for a GUI and many of the services that are bundled with typical Linux distributions like Ubuntu, so I would like to install it on a minimal Linux distribution in order to reduce CPU and memory usage and boot time. However, I would also like it to be flexible and easy without a steep learning curve, in the interest of time, so a full embedded yocto-based solution isn't what I'm looking for, at least for now. I had initially planned to install ROS to go with raspbian lite (a minimal version of raspbian) however I noticed that ROS was mainly designed for Ubuntu, not raspbian or debian.

The instructions here recommend that I do not go for Raspbian and instead go for Ubuntu and then follow the armhf instructions. While I am willing to do this, I couldn't find a minimal variant of ubuntu suitable for the raspberry pi. The Raspbian option appeals to me because I am able to find a minimal Raspbian image that I can use with the raspberry pi. I also found Ubunutu Core, but I'm not sure if it's suitable or supported by ROS because of the way it emphasizes using snaps.

I'm looking for advice on the easiest and most hassle-free way I can do this. Does it make more sense to continue with minimal raspbian, or should I go with an Ubuntu distribution on Raspberry pi (such as Ubuntu MATE) and install ROS that way?

2018-05-29 00:23:32 -0500 received badge  Popular Question (source)
2018-05-28 05:50:36 -0500 received badge  Famous Question (source)
2018-05-28 05:27:02 -0500 edited question Recommended install for embedded raspberry pi 3 with minimal OS

Recommended install for embedded raspberry pi 3 with minimal OS I have a raspberry pi 3 compute module that I would like

2018-05-28 05:26:06 -0500 edited question Recommended install for embedded raspberry pi 3 with minimal OS

Recommended install for embedded raspberry pi 3 with minimal OS I have a raspberry pi 3 compute module that I would like

2018-05-28 05:25:29 -0500 edited question Recommended install for embedded raspberry pi 3 with minimal OS

Recommended install for embedded raspberry pi 3 with minimal OS I have a raspberry pi 3 compute module that I would like

2018-05-28 05:19:12 -0500 asked a question Recommended install for embedded raspberry pi 3 with minimal OS

Recommended install for embedded raspberry pi 3 with minimal OS I have a raspberry pi 3 compute module that I would like

2018-02-23 07:25:02 -0500 received badge  Famous Question (source)
2018-02-21 11:39:27 -0500 received badge  Self-Learner (source)
2018-02-21 11:39:27 -0500 received badge  Teacher (source)
2018-02-21 11:38:56 -0500 received badge  Notable Question (source)
2018-02-14 10:06:16 -0500 received badge  Famous Question (source)
2018-01-07 15:44:24 -0500 received badge  Famous Question (source)
2017-11-08 19:19:26 -0500 received badge  Notable Question (source)
2017-10-30 05:38:20 -0500 received badge  Notable Question (source)
2017-09-28 10:54:34 -0500 received badge  Famous Question (source)
2017-09-12 04:28:38 -0500 marked best answer Custom Costmap2D Layer is not updating

I've been following this tutorial to understand how I can come up with my own layer for Costmap2D http://wiki.ros.org/costmap_2d/Tutori...

I finished doing the first part (i.e. the "Simple Layer" without the grid) and attempted to run it. So I wrote a launch file to start it.

<?xml version="1.0"?>
<launch>
    <rosparam file="$(find my_package)/config/costmap_params.yaml" command="load" ns="/costmap_2d_node/costmap" />
    <node pkg="costmap_2d" type="costmap_2d_node" name="costmap_2d_node" />
    <node pkg="tf2_ros" type="static_transform_publisher" name="static_transform" args="0 0 0 0 0 0 map base_link" />
</launch>

With the following yaml file for the Costmap parameters. As you can see, my layer is the only layer I'm loading (and I want it that way).

plugins: 
  - {name: MyLayer, type: "MyNamespace::MyLayer"}
publish_frequency: 1.0
footprint: [ [-0.325, -0.325], [-0.325, 0.325], [0.325, 0.325], [0.46, 0.0], [0.325, -0.325] ]

The layer correctly starts and I can see this using a ROS_ERROR() statement I added in the onInitialize() function. I also noticed the reconfigureCB() function getting called. However, that's all I'm getting. The updateCosts() function isn't getting called. I was expecting it to be called, and add a cost to the front of base_link. But whenever I read the costmap data from /costmap_2d_node/costmap/costmap topic, all I get are zeros, which means that it's not working.

Is there something else I need to do to get the Costmap to update? Or is there something fundamental about Costmap2D that I didn't understand yet?

2017-08-22 21:20:40 -0500 received badge  Notable Question (source)
2017-08-10 00:44:28 -0500 marked best answer Undefined symbol in custom costmap layer during runtime caused by tf2 Buffer transform

I am writing a custom costmap layer to read data from a radar sensor and turn it into a costmap, and I'm facing some issues running it. I get the following error when it runs:

symbol lookup error: /home/mkhoory/sdc/catkin_ws/devel/lib//libRadarDataLayer.so: undefined symbol: _ZN3tf212getTimestampIN13geometry_msgs15PolygonStamped_ISaIvEEEEERKN3ros4TimeERKT_

What the related code is trying to do is create a PolygonStamped from the radar data and convert it to world coordinates via tf2.

tfBuffer.transform(polyRadar, polyWorld, globalFrame);

I'm not sure what I'm doing wrong here. The code compiles fine, and it's only when the plugin reaches the above line that it tells me that it's an undefined reference. I tried including tf2_geometry_msgs.h but that didn't do anything. What am I missing?

EDIT: Here's my CMakeLists.txt:


cmake_minimum_required(VERSION 2.8.3)
project(my_project_processing)

find_package(catkin REQUIRED COMPONENTS
  roscpp
  rospy
  std_msgs
  geometry_msgs
  message_generation
  tf
  tf2
  tf2_geometry_msgs
  costmap_2d
  dynamic_reconfigure
  my_project_sensors
)

find_package(Boost REQUIRED COMPONENTS system thread)

add_message_files(
    FILES
    CommandMessage.msg
)

generate_messages(
  DEPENDENCIES
  std_msgs
  geometry_msgs
)

catkin_package(
  INCLUDE_DIRS include
  LIBRARIES
  CATKIN_DEPENDS roscpp rospy std_msgs tf message_runtime geometry_msgs message_generation
  DEPENDS Boost
)

# let's use C++11
SET(CMAKE_CXX_FLAGS "-std=c++11 ${CMAKE_CXX_FLAGS}")

include_directories(
  include
  ${tf2_INCLUDE_DIRS}
  ${catkin_INCLUDE_DIRS}
  ${Boost_INCLUDE_DIRS}
)

# Costmap2D Layer plugin
add_library(RadarDataLayer lib/RadarDataLayer.cpp)
target_link_libraries(RadarDataLayer ${Boost_LIBRARIES} ${catkin_LIBRARIES})
2017-08-10 00:44:28 -0500 commented answer Undefined symbol in custom costmap layer during runtime caused by tf2 Buffer transform

I think it would make sense for convenience sake. I can imagine a lot of reasons why you'd want to do it.

2017-08-10 00:43:13 -0500 marked best answer Using topic_tools transform to publish more complex types

I am attempting to use topic_tools/transform to publish messages that are slightly more complex than what the examples show in the wiki, in order to avoid having to write a node.

For example (this might be a bad example), I would like the transform node to subscribe to a TwistStamped message, then create a new TwistStamped message with twist.linear.x equal to the magnitude of the subscribed linear velocity (which only needs a simple math function).

I figured out how to have transform publish the Float on its own, and can also figure out how to publish a Vector, but I couldn't figure out how to get it to publish a Twist or a TwistStamped. I keep getting errors, probably due to my incorrect syntax. But I can't find any examples online. I'm also not sure how to put a header into the published message.

If transform isn't the right tool to use, is there something else I should be using? Or perhaps it's just better to write my own node after all?