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

billyDong's profile - activity

2022-09-26 07:43:33 -0500 received badge  Teacher (source)
2022-09-26 07:43:33 -0500 received badge  Self-Learner (source)
2019-05-20 01:01:41 -0500 marked best answer Generate deb from dependent ros package locally

This is related to the question #280235 where there's a dependency problem using bloom to generate a .deb file locally. I've added the key to rosdep in order to solve that problem but now I've other problem.

After using bloom generate to create the debian files, I try to run fakeroot to create the binary .deb file and it fails as you can see in the bash file: fakeroot bash

$ fakeroot  debian/rules binary 
 ...
Project 'qt_ros_interface' tried to find library 'robis_math_utilities'.
The library is neither a target nor built/installed properly.  Did you
compile project 'robis_math_utilities'? Did you find_package() it before
the subdirectory containing its code is included?
...

This library is one of the dependencies of my package that I've previously installed in opt/ros/kinetic (also available in catkin)

EDIT 1

Using dpkg-buildpackage as suggested by @nuclearsandwich gave me a similar problem:

$ dpkg-buildpackage -b -uc
dpkg-buildpackage: source package ros-kinetic-qt-ros-interface
dpkg-buildpackage: source version 0.0.0-0xenial
dpkg-buildpackage: source distribution xenial
dpkg-buildpackage: source changed by user <user@user.com>
dpkg-buildpackage: host architecture amd64
dpkg-source --before-build qt_ros_interface
dpkg-source: info: using options from qt_ros_interface/debian/source/options: --auto-commit 
dpkg-source: warning: can't parse dependency ros-kinetic-robis_math_utilities
dpkg-source: error: error occurred while parsing Build-Depends
dpkg-buildpackage: error: dpkg-source --before-build qt_ros_interface gave error exit status 255

This package also depends on another package that was installed in using the same method, but only this library is giving me troubles..

EDIT 2

The issue with dpkg-buildpackage is solved, my rosdep file had ros-kinetic-robis_math_utilities instead of ros-kinetic-robis-math-utilities but the original issue is not solved yet..

2019-05-17 07:39:46 -0500 received badge  Famous Question (source)
2019-02-20 02:59:17 -0500 received badge  Taxonomist
2019-01-28 08:35:54 -0500 received badge  Famous Question (source)
2019-01-23 11:14:59 -0500 received badge  Student (source)
2019-01-07 23:32:05 -0500 received badge  Famous Question (source)
2018-12-14 14:39:53 -0500 received badge  Notable Question (source)
2018-11-15 12:56:59 -0500 received badge  Notable Question (source)
2018-11-15 12:48:52 -0500 marked best answer Change the C++ compiller in ROS to use with openACC and CUDA

I'm trying to compile a rospackage with the PGI compiler that uses openACC. I want to parallelize some code.

This works with standard c++ code and uses the pgcc / pgc++ compiler. So I tried to compile a simple ros package with this compiler. Here is the source code:

#include <ros/ros.h>
#include <iostream>
#include "std_msgs/String.h"
#include <sstream>


int main(int argc, char **argv)
{
  ros::init(argc, argv, "pgi_test_node");

  ros::NodeHandle n;

 ros::Publisher chatter_pub = n.advertise<std_msgs::String>("chatter", 1000);

 ros::Rate loop_rate(10);

 int cout = 0;

 while(ros::ok()) {

     std_msgs::String msg;  

     ss << heelo world" << count;


   ROS_INFO("%s", msg.data.c_str());

   chatter_pub.publish(msg);

   ros::spinOnce();

   loop_rate.sleep();
   ++count;
 }

return 0;
}

And here is the my cmakelists.txt . I've tried a lot of things but the mains change might be the compiler and its flags in the beginning.

cmake_minimum_required(VERSION 2.8.3)
project(pgi_test)

## Compile as C++11, supported in ROS Kinetic and newer
add_compile_options(-std=c++11)
SET(CMAKE_C_COMPILER /opt/pgi/linux86-64/18.4/bin/pgcc) 
SET(CMAKE_CXX_COMPILER /opt/pgi/linux86-64/18.4/bin/pgc++) 



# flags
add_definitions("-DENABLE_SSE")
SET(CMAKE_CXX_FLAGS
   "${SSE_FLAGS}  -O3 -std=c++11 -ta=tesla:cuda9.1 -acc -Minfo=accel"
)



## Find catkin macros and libraries
## if COMPONENTS list like find_package(catkin REQUIRED COMPONENTS xyz)
## is used, also find other catkin packages
find_package(catkin REQUIRED
roscpp
rospy
std_msgs
genmsg
)

## System dependencies are found with CMake's conventions
#find_package(Boost REQUIRED COMPONENTS system)

find_package(Boost REQUIRED COMPONENTS system thread filesystem)
INCLUDE_DIRECTORIES( ${Boost_INCLUDE_DIR} )

find_package( CUDA REQUIRED )
include_directories(
  ${catkin_INCLUDE_DIRS}
  ${CUDA_INCLUDE_DIRS}
)

SET(BOOST_HAS_FLOAT128)

## Uncomment this if the package has a setup.py. This macro ensures
## modules and global scripts declared therein get installed
## See http://ros.org/doc/api/catkin/html/user_guide/setup_dot_py.html
# catkin_python_setup()

################################################
## Declare ROS messages, services and actions ##
################################################

## To declare and build messages, services or actions from within this
## package, follow these steps:
## * Let MSG_DEP_SET be the set of packages whose message types you use in
##   your messages/services/actions (e.g. std_msgs, actionlib_msgs, ...).
## * In the file package.xml:
##   * add a build_depend tag for "message_generation"
##   * add a build_depend and a exec_depend tag for each package in MSG_DEP_SET
##   * If MSG_DEP_SET isn't empty the following dependency has been pulled in
##     but can be declared for certainty nonetheless:
##     * add a exec_depend tag for "message_runtime"
## * In this file (CMakeLists.txt):
##   * add "message_generation" and every package in MSG_DEP_SET to
##     find_package(catkin REQUIRED COMPONENTS ...)
##   * add "message_runtime" and every package in MSG_DEP_SET to
##     catkin_package(CATKIN_DEPENDS ...)
##   * uncomment the add_*_files sections below as needed
##     and list every .msg/.srv/.action file to be processed
##   * uncomment the generate_messages entry below
##   * add every package in MSG_DEP_SET to generate_messages(DEPENDENCIES ...)

## Generate messages in the 'msg' folder
# add_message_files(
#   FILES
#   Message1.msg
#   Message2.msg
# )

## Generate services in the 'srv' folder
# add_service_files(
#   FILES
#   Service1.srv
#   Service2.srv
# )

## Generate actions in the 'action' folder
# add_action_files(
#   FILES
#   Action1.action
#   Action2.action
# )

## Generate added messages and services with any dependencies listed here
# generate_messages(
#   DEPENDENCIES
#   std_msgs  # Or other packages containing msgs
# )

################################################
## Declare ROS dynamic reconfigure parameters ##
################################################

## To declare and ...
(more)
2018-11-15 06:32:07 -0500 edited answer Change the C++ compiller in ROS to use with openACC and CUDA

I managed to compile and run with success, but I discourage this approach, so I will not close the question until I foun

2018-11-15 05:17:51 -0500 edited answer Change the C++ compiller in ROS to use with openACC and CUDA

I managed to compile and run with success, but I discourage this approach, do I will not close the question until I foun

2018-11-15 05:14:55 -0500 answered a question Change the C++ compiller in ROS to use with openACC and CUDA

I managed to compile and run with success, but I discourage this approach, do I will not close the question until I foun

2018-11-14 15:53:59 -0500 received badge  Popular Question (source)
2018-11-14 12:28:14 -0500 asked a question Change the C++ compiller in ROS to use with openACC and CUDA

Change the C++ compiller in ROS to use with openACC and CUDA I'm trying to compile a rospackage with the PGI compiler th

2018-10-23 04:51:00 -0500 received badge  Notable Question (source)
2018-10-22 13:27:50 -0500 commented question Compile cuda into ros code in TEGRA

@gvdhoorn it works perfectly with cuda 9.1 either using ros kinetic or ros melodic in an x86_64 arch. Here I must use

2018-10-22 13:27:34 -0500 commented question Compile cuda into ros code in TEGRA

@gvdhoorn it works perfectly with cuda 9.1 either using ros kinetic or ros melodic in an x86_64 arch. Here I must use

2018-10-22 13:25:12 -0500 received badge  Popular Question (source)
2018-10-19 10:01:56 -0500 received badge  Famous Question (source)
2018-10-03 11:26:06 -0500 asked a question Compile cuda into ros code in TEGRA

Compile cuda into ros code in TEGRA I've an 'old' Tegra jetson TK1 with ubuntu 16.04 (arm architecture) ros kinetic and

2018-08-29 06:32:12 -0500 received badge  Notable Question (source)
2018-08-28 04:40:15 -0500 received badge  Famous Question (source)
2018-08-27 04:26:06 -0500 marked best answer navSat with hectorMapping for outdoor navigation

Hello,

I'm trying to configure a robot with GPS for outdoor navigation. For that I'm using robot_localization package with the navSat transform and I want to fuse hectorMapping for pathPlanning and obsctacle avoindance. I've seen this package I tried to replicate for my purposes, so I have this localization.yaml file:

# For parameter descriptions, please refer to the template parameter files for each node.

ekf_se_odom: # Used only for broadcasting odom to base_link transforms
  frequency: 30
  sensor_timeout: 0.1
  two_d_mode: true
  transform_time_offset: 0.0
  transform_timeout: 0.0
  print_diagnostics: true
  debug: false

  map_frame: map
  odom_frame: odom
  base_link_frame: base_link
  world_frame: odom

# -------------------------------------
# Wheel odometry:

  odom0: /husky_velocity_controller/odom
  odom0_config: [false, false, false,
                 false, false, false,
                 true,  true,  true,
                 false, false, false,
                 false, false, false]
  odom0_queue_size: 10
  odom0_nodelay: true
  odom0_differential: false
  odom0_relative: false

# -------------------------------------
# Laser scanmatching odometry:

  odom1: scanmatch_odom
  odom1_config: [false, false, false,
                 false, false, false,
                 true,  true,  true,
                 false, false, true,
                 false, false, false]
  odom1_queue_size: 10
  odom1_nodelay: true
  odom1_differential: false
  odom1_relative: false

# --------------------------------------
# imu configure:

  imu0: /imu/data
  imu0_config: [false, false, false,
                true,  true,  false,
                false, false, false,
                true,  true,  true,
                true,  true,  true]
  imu0_nodelay: false
  imu0_differential: false
  imu0_relative: false
  imu0_queue_size: 10
  imu0_remove_gravitational_acceleration: true

  use_control: false

  process_noise_covariance: [--- ]
  initial_estimate_covariance: [  ----]

ekf_se_map: # Used only for broadcasting MAP to ODOM transforms
  frequency: 30
  sensor_timeout: 0.1
  two_d_mode: true
  transform_time_offset: 0.0
  transform_timeout: 0.0
  print_diagnostics: true
  debug: false

  map_frame: map
  odom_frame: odom
  base_link_frame: base_link
  world_frame: map

# -------------------------------------
# Wheel odometry:

  odom0: /husky_velocity_controller/odom
  odom0_config: [false, false, false,
                 false, false, false,
                 true,  true,  true,
                 false, false, true,
                 false, false, false]
  odom0_queue_size: 10
  odom0_nodelay: true
  odom0_differential: false
  odom0_relative: false

# -------------------------------------
# GPS odometry:

  odom1: /gps/rtkfix
  odom1_config: [true,  true,  false,
                 false, false, false,
                 false, false, false,
                 false, false, false,
                 false, false, false]
  odom1_queue_size: 10
  odom1_nodelay: true
  odom1_differential: false
  odom1_relative: false

# -------------------------------------
# Laser scanmatching odometry:

  odom2: scanmatch_odom
  odom2_config: [false, false, false,
                 false, false, false,
                 true,  true,  true,
                false, false, true,
                false, false, false]
  odom2_queue_size: 10
  odom2_nodelay: true
  odom2_differential: false
  odom2_relative: false

# --------------------------------------
# imu configure: (IMU is too noisy for this)

  imu0: /imu_um7/data
  imu0_config: [false, false, false,
                false,  false, false,
                false, false, false,
                false,  false,  false,
                false,  false,  false]
  imu0_nodelay: true
  imu0_differential: false
  imu0_relative: false
  imu0_queue_size: 10
  imu0_remove_gravitational_acceleration: true

  use_control: false

  process_noise_covariance: [...]
   initial_estimate_covariance: [...]

My launch file for localization:

<?xml version="1.0"?>
<launch>

  <rosparam command="load" file="$(find agrob_gps_nav_stack)/params/localization.yaml" />
  <rosparam command="load" file="$(find agrob_gps_nav_stack)/params/navsat.yaml" />

  <node pkg="robot_localization" type="ekf_localization_node" name="ekf_se_odom" clear_params="true"/>

  <node pkg="robot_localization" type="ekf_localization_node" name="ekf_se_map" clear_params="true">
    <remap from="odometry/filtered" to="odometry/filtered_map"/>
  </node>

  <node pkg="robot_localization" type="navsat_transform_node" name="navsat_transform" clear_params="true" > <!-- output="screen" -->
      <remap from="odometry/filtered" to="odometry/filtered_map"/>
      <remap from="gps/fix" to="gps/fix"/>
      <remap from="imu/data" to="/imu_um7/data"/>
  </node>

</launch>

Here's the rviz image with the result after a rotation with the robot. The laser drifts from the map. Such thing does not happen if I use hector map to publish the tf between map and odom (but I don't do that because I want to use GPS)

rviz_imagehttps://imgur.com/a/w8TCBZJ

EDIT ... (more)

2018-08-23 04:25:05 -0500 answered a question Fusing absolute position information and IMU-data using the ekf_localization_node

Did you solve you problem ? I think I've found a solution using the laser odometry of the hector slam, check this questi

2018-08-23 04:19:48 -0500 commented question Robot_localization and Hector mapping

@matteopantano check this, I think I found the solution if you still want to use hectormap: 301359

2018-08-23 04:16:56 -0500 answered a question navSat with hectorMapping for outdoor navigation

in order to solve this I activated the laser odometry of hector map, and used the madgwick filter for IMU. If someone i

2018-08-23 03:58:50 -0500 commented question navSat with hectorMapping for outdoor navigation

Madgwick wasn't running but that was not main problem. In order to completely solve this I had to use the laser odometry

2018-08-23 02:11:19 -0500 received badge  Popular Question (source)
2018-08-21 11:38:04 -0500 commented question Robot_localization and Hector mapping

@matteopantano I have the same issue I tried to solve ir with gmapping but with no success, could you show your solution

2018-08-21 08:54:44 -0500 commented question navSat with hectorMapping for outdoor navigation

@Choco93 no, theres linear and angular drift.. https://imgur.com/a/Rqxxcrz

2018-08-21 08:54:19 -0500 commented question navSat with hectorMapping for outdoor navigation

@Choco93 no, theres linear and angular drift..

2018-08-21 08:09:16 -0500 edited question navSat with hectorMapping for outdoor navigation

navSat with hectorMapping for outdoor navigation Hello, I'm trying to configure a robot with GPS for outdoor navigatio

2018-08-21 08:06:28 -0500 edited question navSat with hectorMapping for outdoor navigation

navSat with hectorMapping for outdoor navigation Hello, I'm trying to configure a robot with GPS for outdoor navigatio

2018-08-21 08:06:18 -0500 commented question navSat with hectorMapping for outdoor navigation

@Choco93 the IMU is problematic, I set everything to false because it was to noisy. Even with just the yaw. Please see t

2018-08-21 04:39:12 -0500 marked best answer BLOOM-GENERATE is not generating generating executable files

Hello, I've been trying to create deb files from my rospackages using bloom-generate command:

$ cd path/to/your/catkin/package
$ bloom-generate rosdebian --os-name ubuntu --ros-distro kinetic
$ fakeroot debian/rules binary
or
$ dpkg-buildpackage -b -uc

after this I normally install my package:

$ sudo dpkg -i my_ros_package.deb

If I do :

$ roscd my_ros_package

I obtain this:

opt/ros/kinetic/share/my_ros_package$

but when I try to execute:

$rosrun my_ros_package my_ros_package_node
  [rosrun] Couldn't find executable named my_ros_package_node  below/opt/ros/kinetic/share/my_ros_package

It works fine when I use catkin. I used a generic example because this is happening with all of my_packages. But I will leave a concrete example here:

Cmakelists

package.xml


Edit:

CMakeLists.txt:

cmake_minimum_required(VERSION 2.8.3)
project(octo_to_pcl)

## Compile as C++11, supported in ROS Kinetic and newer
 add_compile_options(-std=c++11)

## Find catkin macros and libraries
## if COMPONENTS list like find_package(catkin REQUIRED COMPONENTS xyz)
## is used, also find other catkin packages
find_package(catkin REQUIRED COMPONENTS
  roscpp
  std_msgs
  map_msgs
  tf
  roslaunch
  geometry_msgs
  sensor_msgs
)
find_package (OpenCV)
find_package( PCL REQUIRED )
find_package(octomap REQUIRED)

## System dependencies are found with CMake's conventions
# find_package(Boost REQUIRED COMPONENTS system)


## Uncomment this if the package has a setup.py. This macro ensures
## modules and global scripts declared therein get installed
## See http://ros.org/doc/api/catkin/html/user_guide/setup_dot_py.html
# catkin_python_setup()

################################################
## Declare ROS messages, services and actions ##
################################################

## To declare and build messages, services or actions from within this
## package, follow these steps:
## * Let MSG_DEP_SET be the set of packages whose message types you use in
##   your messages/services/actions (e.g. std_msgs, actionlib_msgs, ...).
## * In the file package.xml:
##   * add a build_depend tag for "message_generation"
##   * add a build_depend and a run_depend tag for each package in MSG_DEP_SET
##   * If MSG_DEP_SET isn't empty the following dependency has been pulled in
##     but can be declared for certainty nonetheless:
##     * add a run_depend tag for "message_runtime"
## * In this file (CMakeLists.txt):
##   * add "message_generation" and every package in MSG_DEP_SET to
##     find_package(catkin REQUIRED COMPONENTS ...)
##   * add "message_runtime" and every package in MSG_DEP_SET to
##     catkin_package(CATKIN_DEPENDS ...)
##   * uncomment the add_*_files sections below as needed
##     and list every .msg/.srv/.action file to be processed
##   * uncomment the generate_messages entry below
##   * add every package in MSG_DEP_SET to generate_messages(DEPENDENCIES ...)

## Generate messages in the 'msg' folder
# add_message_files(
#   FILES
#   Message1.msg
#   Message2.msg
# )

## Generate services in the 'srv' folder
# add_service_files(
#   FILES
#   Service1.srv
#   Service2.srv
# )

## Generate actions in the 'action' folder
# add_action_files(
#   FILES
#   Action1.action
#   Action2.action
# )

## Generate added messages and services with any dependencies listed here
# generate_messages(
#   DEPENDENCIES
#   std_msgs  # Or other packages containing msgs
# )

################################################
## Declare ROS dynamic reconfigure parameters ##
################################################

## To declare and build dynamic reconfigure parameters within this
## package, follow these steps:
## * In the file package.xml:
##   * add a build_depend and a run_depend tag for "dynamic_reconfigure"
## * In this file (CMakeLists.txt):
##   * add "dynamic_reconfigure" to
##     find_package(catkin REQUIRED COMPONENTS ...)
##   * uncomment the "generate_dynamic_reconfigure_options" section below
##     and list every .cfg file to be processed

## Generate dynamic reconfigure parameters in the 'cfg' folder
# generate_dynamic_reconfigure_options(
#   cfg/DynReconf1.cfg
#   cfg/DynReconf2.cfg
# )

###################################
## catkin specific configuration ##
###################################
## The ...
(more)
2018-08-21 04:39:12 -0500 received badge  Scholar (source)
2018-08-21 04:22:50 -0500 commented answer BLOOM-GENERATE is not generating generating executable files

Thank you, I needed to uncomment the install options on the cMakeLists

2018-08-21 04:19:14 -0500 commented question navSat with hectorMapping for outdoor navigation

@Choco93 with the exception of IMU on map->odom transform, it's too noisy so I decided to not fuse any data from the

2018-08-21 04:12:36 -0500 commented question navSat with hectorMapping for outdoor navigation

@Choco93 the values are copied from this package which is okay because i'm using the husky platform too.. in their solut

2018-08-21 04:10:03 -0500 commented question navSat with hectorMapping for outdoor navigation

@Choco93 the values are copied from this package which is okay because i'm using the husky platform too.. in their solut

2018-08-20 13:37:29 -0500 edited question navSat with hectorMapping for outdoor navigation

navSat with hectorMapping for outdoor navigation Hello, I'm trying to configure a robot with GPS for outdoor navigatio

2018-08-20 13:36:54 -0500 asked a question navSat with hectorMapping for outdoor navigation

navSat with hectorMapping for outdoor navigation Hello, I'm trying to configure a robot with GPS for outdoor navigatio

2018-07-09 14:05:16 -0500 received badge  Notable Question (source)
2018-06-12 02:11:29 -0500 received badge  Popular Question (source)
2018-06-11 04:58:48 -0500 edited question BLOOM-GENERATE is not generating generating executable files

Generating debs, installing and using ros packages with bloom-generate Hello, I've been trying to create deb files from

2018-06-11 04:58:45 -0500 edited question BLOOM-GENERATE is not generating generating executable files

Generating debs, installing and using ros packages with bloom-generate Hello, I've been trying to create deb files from

2018-06-08 09:53:04 -0500 commented answer Generate deb from dependent res package locally

@nuclearsandwich @zcm could you see this please : l293599 I was able to build and install the packages, but the nodes ar