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

bjem85's profile - activity

2018-04-13 13:30:25 -0500 received badge  Famous Question (source)
2017-11-29 08:42:00 -0500 marked best answer Using industrial_robot_client without simple_message

Hi All,

I am implementing the Robot Driver specification (link), however the "reference" JointTrajectoryDownloader implementation assumes you are communicating with a robot that uses the simple_message protocol. My robot does not communicate using simple_messages, it communicates using ordinary ROS topics and messages.

The usage of simple_message protocol is very deeply embedded into the JointTrajectoryDownloader and JointTrajectoryInterface classes. What is the best way to use the JointTrajectoryDownloader library on a robot that does _not_ use simple_message for communication?

Thanks, Bart

2017-11-14 18:10:53 -0500 marked best answer Messages not being generated before dependent package

Hi All,

I am having a very frustrating problem. I have a package pac_industrial_robot_driver that uses messages declared in another package ros_opto22. However, I cannot get the dependency recognised by the pac_industrial_robot_driver CMakeLists.txt file.

The error message:

[ 31%] In file included from /home/controller/catkin_ws/src/pac_industrial_robot_driver/lib/PacIndustrialDriver.cpp:8:0:
/home/controller/catkin_ws/src/pac_industrial_robot_driver/include/PacIndustrialDriver.hpp:32:38: fatal error: ros_opto22/valve_command.h: No such file or directory

Clearly it is not finding the include file.

# Create executables and add dependencies.
foreach(p ${ALL_EXECS})
    add_executable(${p} ${${p}_SRC})
    add_dependencies(${p} ${PROJECT_NAME}_generate_messages_cpp ${catkin_EXPORTED_TARGETS} ${${PROJECT_NAME}_EXPORTED_TARGETS} ros_opto22_EXPORTED_TARGETS ros_opto22_gencpp ros_opto22_generate_messages_cpp)
    target_link_libraries(${p} ${ALL_LIBS} ${catkin_LIBRARIES} industrial_robot_client simple_message industrial_utils)
endforeach(p)

Note the inclusion of ros_opto22_gencpp and ros_opto22_generate_messages_cpp.

I also have the following earlier on in the CMakeLists.txt file:

catkin_package(
#  INCLUDE_DIRS include
#  LIBRARIES pac_industrial_robot_driver
  CATKIN_DEPENDS ros_opto22
#  DEPENDS system_lib
)

and

## Specify additional locations of header files
## Your package locations should be listed before other locations
include_directories(include ${catkin_INCLUDE_DIRS})

as well as a having ros_opto22 listed under the find_package call.

I am very frustrated with this, not in the least because there does not seem to be a single definitive guide to solving this problem. What is the best way to go about solving this problem? I can run catkin_make twice but that only masks the problem. I want catkin_make to run properly first time every time even after deleting everything in the build and devel directories under my catkin workspace.

Kind Regards Bart

2016-09-26 04:26:08 -0500 received badge  Famous Question (source)
2016-06-28 22:15:07 -0500 marked best answer Defining private params for an included launch file with multiple namespaces

Is there a way for defining private parameters for an included launch file that has multiple private namespaces? My scenario is that I have three PID modules running in parallel that uses three identical node types but with different namespaces and parameter mappings. The topic remapping arguments are in the private namespace for the nodes.

There is no mention of this situation on Roslaunch tips for larger projects.

There is mention of a similar scenario in this question.

Do I need to do something like passing topic remappings as a series of defined $(arg ...) constructs?

Thanks, Bart

2016-06-28 22:12:01 -0500 received badge  Notable Question (source)
2016-05-08 15:37:49 -0500 marked best answer Unknown controller type: 'robot_mechanism_controllers/JointTrajectoryActionController'

Hi All,

I am trying to get the robot_mechanism_controllers/JointTrajectoryActionController working as per the standard turtorial. However, when I try to run my RViz, the MoveIt! controller manager claims it cannot find such a controller:

[ INFO] [1411628617.460494704]: MoveitSimpleControllerManager: Added FollowJointTrajectory controller for arm_controller
[ERROR] [1411628617.460587145]: Unknown controller type: 'robot_mechanism_controllers/JointTrajectoryActionController'

What can be done about this?

Here is my controllers.yaml file. Note the FollowJointTrajectory controller works fine. Some of the parameters are out of tune but it doesn't make much sense to alter them yet until the actual controller plugin is working.

controller_list:
 - name: arm_controller
   action_ns: follow_joint_trajectory
   type: FollowJointTrajectory
   default: true
   joints:
     - waist
     - shoulder
     - elbow

 - name: r_arm_controller
   action_ns: joint_trajectory_action_controller
   type: "robot_mechanism_controllers/JointTrajectoryActionController"
   joints:
     - waist
     - shoulder
     - elbow
   gains:
     waist: {p: 1000.0, d: 6.0, i: 600.0, i_clamp: 4.0}
     shoulder: {p: 700.0, d: 4.0, i: 450, i_clamp: 4.0}
     elbow: {p: 300.0, d: 6.0, i: 300, i_clamp: 2.0}
   joint_trajectory_action_node:
     joints:
       - waist
       - shoulder
       - elbow
     constraints:
       goal_time: 10.0
       waist:
         goal: 0.02
       shoulder:
         goal: 0.02
       elbow:
         goal: 0.02

How do I get MoveIt! to 'see' the package? I have the package ros-hydro-robot-mechanism-controllers installed already, do I need to install something else?

Kind Regards Bart

2016-05-08 15:32:57 -0500 marked best answer Getting rid of hddtemp prompt

Is there any option to get rid of the hddtemp prompt or automate the response?

I followed the standard ROS hydro installation instructions and ran sudo apt-get install ros-hydro-desktop-full, and the hddtemp prompt comes up. Is there a standard way to automatically answer no to this question so that I don't have to 'babysit' every computer that I install ROS on?

Thanks, Bart

2016-05-08 15:32:36 -0500 received badge  Famous Question (source)
2016-05-08 15:05:57 -0500 marked best answer roslaunch cannot find package

I have written a .launch file for a CAN bus reader, but roslaunch simple does not see it, and I can't figure out what I'm doing wrong. It is especially disconcerting as every other node I've got works just fine.

package.xml:

<package>
  <name>canbus_read</name>
  <version>0.0.1</version>

  <description>Can_Bus_ROS_Reader</description>

  <maintainer email="bart.milne@pg.canterbury.ac.nz">Bart Milne</maintainer>
  <author>Bart Milne</author>

  <license>BSD</license>

  <url type="website"></url>

  <buildtool_depend>catkin</buildtool_depend>

  <build_depend>roscpp</build_depend>

  <run_depend>roscpp</run_depend>

</package>

Launch file:

<!-- %Tag(FULL)%-->
<launch>
    <node name="candump" type="candump" pkg="canbus_read" output="screen" args="any" />
</launch>
<!-- %EndTag(FULL)%-->

The program's name iscandump.

2015-09-20 05:57:40 -0500 received badge  Famous Question (source)
2015-09-19 19:40:32 -0500 commented answer Moveit! Wiki gone without trace

The problem with the new site (which I had found before posting the question) is that it lacks several features from the old wiki, most notably a search function. This is what I meant by "no clear successor".

2015-09-19 05:50:24 -0500 received badge  Notable Question (source)
2015-09-19 04:58:07 -0500 commented answer Moveit! Wiki gone without trace

Thank you for that response. A redirect would be good.

2015-09-19 04:57:27 -0500 received badge  Popular Question (source)
2015-09-18 22:01:20 -0500 asked a question Moveit! Wiki gone without trace

The MoveIt! wiki seems to have disappeared without a trace - Google is still returning results for it at the top of its listings.

Unfortunately much of the documentation has not been replaced in any other location.

For an example, here is a link to a search: Google search for "ROS Planning Scene".

In my mind this is a really serious problem - what is the successor for the old MoveIt! wiki at http://moveit.ros.org/wiki/? There doesn't seem to be a clear one.

2015-07-27 04:20:51 -0500 received badge  Famous Question (source)
2015-07-21 04:43:25 -0500 received badge  Good Question (source)
2015-03-11 02:56:04 -0500 received badge  Famous Question (source)
2015-03-10 07:55:07 -0500 received badge  Taxonomist
2015-03-01 09:52:56 -0500 received badge  Famous Question (source)
2015-02-27 03:56:19 -0500 received badge  Famous Question (source)
2014-12-04 09:36:41 -0500 received badge  Famous Question (source)
2014-12-03 09:03:43 -0500 received badge  Famous Question (source)
2014-11-23 02:42:04 -0500 received badge  Famous Question (source)
2014-11-03 18:03:05 -0500 received badge  Notable Question (source)
2014-11-03 08:55:14 -0500 received badge  Notable Question (source)
2014-10-29 10:18:54 -0500 received badge  Famous Question (source)
2014-10-27 00:01:01 -0500 commented answer Conversion of ROS Bag to CSV Extremely Slow

I will have a look at that. Just note that I will probably need to process about 10 more sets of data, at 1-1.5 hours per piece, or less if I am more selective about the topics I extract. It seems like the time taken to have to learn the new API will not be justified in my case. Am I correct?

2014-10-23 04:25:46 -0500 commented answer Conversion of ROS Bag to CSV Extremely Slow

I had a look at the examples but they don't cover the case of converting to CSV directly. I know there is a Python API for writing CSV files but it would be good to know how it works with the rosbag API.

2014-10-23 04:24:45 -0500 received badge  Notable Question (source)
2014-10-22 01:37:18 -0500 received badge  Popular Question (source)
2014-10-21 17:09:40 -0500 commented answer Creating an Inverse Kinematics Service from MoveIt!

Thanks, I note though that using the move_group node as is also leaves in a lot of unneeded functionality. Is there a guide for what functionality that can be removed?

2014-10-21 17:09:01 -0500 marked best answer Creating an Inverse Kinematics Service from MoveIt!

Hi All,

I have got my hydraulic arm successfully able to be controlled from MoveIt! and IKFast as per the scenario in http://answers.ros.org/question/19080... , but I can't find the steps for creating a service where I issue a request consisting of Cartesian Coordinates as an input and getting joint angles as an output. There is some stuff about the PR2 arm, but I can't work out how to adapt this for my arm.

Can anybody point me in the right direction?

Kind Regards Bart

2014-10-21 16:01:53 -0500 asked a question Conversion of ROS Bag to CSV Extremely Slow

Hi All,

I have gathered data using rosbag, but listing topics from it and extracting data from it is extremely slow. It takes over an hour to process a .bag file that is 180 MB in size and contains 47 data streams, with output file sizes ranging from 330 bytes to 23 MB. It's operating principle is similar to the answer by user x75 in a closely related question.

Is there anything I can do to improve the parsing speed? My guess is that it is going through the file in full each time, whereas in reality I could save and reuse information from the .bag file in the first pass so I don't have to re-read the whole file every time I extract topic data from it.

#!/usr/bin/env bash

bagfile="${1##*/}"
bagfile="${bagfile%.*}"

# Create the output directory.
mkdir -p $bagfile

topic_list_orig=`rostopic list -b $1`
topic_list=$(echo "$topic_list_orig" | sort)

for topic in $topic_list
do 
    outfname="$bagfile/${topic//\//_}.csv"
    echo "Writing CSV data from topic" $topic "to file" $outfname

    # Check if file exists. If file exists, do not write to it.
    if [ -e $outfname ]
    then
        echo "File" $outfname "already exists. Taking no action"
    else
        # Create a temporary file
        tmpfile=`mktemp`
        echo $tmpfile
        rostopic echo -p -b $1 $topic > $tmpfile

        # Copy temp file into the final file.
        mv $tmpfile $outfname
    fi
done

##### END OF FILE #####
2014-10-20 06:31:19 -0500 marked best answer Creating the URDF in the PR2 MoveIt! Example

Hi All,

I am attempting to follow the tutorial on MoveIt! using the PR2 example in ROS Hydro.

However, it talks about using the URDF file generated "above":

Click on the browse button and navigate to the pr2.urdf file you just created above. Choose that file and then click Load Files. The Setup Assistant will load the files (this might take a few seconds) and present you with this screen:

The 'above' link goes to a section on pre-requisites. This page contains no information on creating the URDF. The URDF file contains the xacro macros but I can find no clear instructions on actually creating it.

2014-10-20 06:31:16 -0500 received badge  Notable Question (source)
2014-10-19 05:47:17 -0500 received badge  Notable Question (source)
2014-10-19 03:21:53 -0500 received badge  Nice Question (source)
2014-10-14 08:13:42 -0500 received badge  Notable Question (source)
2014-10-13 19:14:54 -0500 received badge  Popular Question (source)
2014-10-13 05:15:00 -0500 received badge  Popular Question (source)
2014-10-13 01:47:22 -0500 marked best answer Assimp and RViz will not import .scene file

I am trying to load a collision object into my hydraulic arm's planning scene, but it doesn't work with the pillar example provided for the baxter robot:

[ WARN] [1412647012.600856139]: Assimp reports no scene in file:///home/controller/Downloads/baxter_pillar.scene

There is a box.stl from the MoveIt! tutorial example that loads perfectly well.

Why is Assimp not loading these text scene files? All I want to do is have a cylinder that my robot is not allowed to collide with when executing a path.

Kind Regards Bart