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

Thang Nguyen's profile - activity

2020-12-17 06:15:05 -0500 marked best answer error when install usb_cam

Hi, I am installing usb_cam and get this error:

CMake Error at /opt/ros/indigo/share/catkin/cmake/catkinConfig.cmake:75 (find_package):
  Could not find a package configuration file provided by
  "camera_info_manager" with any of the following names:

    camera_info_managerConfig.cmake
    camera_info_manager-config.cmake

  Add the installation prefix of "camera_info_manager" to CMAKE_PREFIX_PATH
  or set "camera_info_manager_DIR" to a directory containing one of the above
  files.  If "camera_info_manager" provides a separate development package or
  SDK, be sure it has been installed.
Call Stack (most recent call first):
  usb_cam/CMakeLists.txt:7 (find_package)

Please let me know how to fix this.

2020-02-03 00:42:13 -0500 marked best answer setting argument for teleop twist keyboard in launch file

Hi, I am learning gmapping, rviz and map_server. I created launch file which will launch stage_ros, teleop_twist_keyboard, gmapping with purpose creating a map as below:

<launch>
    <node pkg="stage_ros" type="stageros" name="stage" args="$(find stage_ros)/world/willow-erratic.world"/>
    <node pkg="gmapping" type="slam_gmapping" name="gmapping">
        <param name="scan" value="base_scan"/>
    </node>
    <node pkg="teleop_twist_keyboard" type="teleop_twist_keyboard.py" name="teleop"/>
    <node pkg="rviz" type="rviz" name="rviz" args="$find stage_ros)/rviz/stage.rviz"/>
</launch>

But when I ran this launch file, I got this error

... 
setting /run_id to c042b11c-fc87-11e5-b686-00044b581868
process[rosout-1]: started with pid [4026]
started core service [/rosout]
process[stage-2]: started with pid [4029]
process[gmapping-3]: started with pid [4035]
process[teleop-4]: started with pid [4042]
process[rviz-5]: started with pid [4048]
[rviz-5] process has died [pid 4048, exit code -7, cmd /opt/ros/indigo/lib/rviz/rviz $find stage_ros)/rviz/stage.rviz __name:=rviz __log:=/home/ubuntu/.ros/log/c042b11c-fc87-11e5-b686-00044b581868/rviz-5.log].
log file: /home/ubuntu/.ros/log/c042b11c-fc87-11e5-b686-00044b581868/rviz-5*.log
/opt/ros/indigo/lib/teleop_twist_keyboard/teleop_twist_keyboard.py:61: SyntaxWarning: The publisher should be created with an explicit keyword argument 'queue_size'. Please see http://wiki.ros.org/rospy/Overview/Publishers%20and%20Subscribers for more information.
  pub = rospy.Publisher('cmd_vel', Twist)

I am not sure how to fix this. Please help me.

Thank you.

2019-08-14 02:31:08 -0500 marked best answer Slam_gmapping stop at Registering First Scan

Hi all, I am study using Slam_gmapping. I ran roscore, stage_ros first. These are the list of topic:

ubuntu@tegra-ubuntu:~$ rostopic list
/base_pose_ground_truth
/base_scan
/clock
/cmd_vel
/odom
/rosout
/rosout_agg
/tf

Then I run gmapping and it stop at Registering First Scan

ubuntu@tegra-ubuntu:~$ rosrun gmapping slam_gmapping scan:=base_scan
[ INFO] [1459395266.430914447, 120.700000000]: Laser is mounted upwards.
 -maxUrange 29.99 -maxUrange 29.99 -sigma     0.05 -kernelSize 1 -lstep 0.05 -lobsGain 3 -astep 0.05
 -srr 0.1 -srt 0.2 -str 0.1 -stt 0.2
 -linearUpdate 1 -angularUpdate 0.5 -resampleThreshold 0.5
 -xmin -100 -xmax 100 -ymin -100 -ymax 100 -delta 0.05 -particles 30
[ INFO] [1459395266.459964049, 120.700000000]: Initialization complete
update frame 0
update ld=0 ad=0
Laser Pose= 0.05 0 0
m_count 0
Registering First Scan

I also tried with tutorial in this link but I still have same problem http://wiki.ros.org/slam_gmapping/Tutorials/MappingFromLoggedData#record

Please let me know if I missed anything? Or any suggestion the method to track the problem are welcome. I run ROS on Jetson TX1

Edit 1

I have just attached the tf tree and below is some info from base-scan image description

 header: 
      seq: 259
      stamp: 
        secs: 26
        nsecs: 0
      frame_id: base_laser_link
    angle_min: -2.35837626457
    angle_max: 2.35837626457
    angle_increment: 0.00436736317351
    time_increment: 0.0
    scan_time: 0.0
    range_min: 0.0
    range_max: 30.0
    ranges: [2.454775333404541, 2.446903944015503, 2.4644339084625244, ...
    intensities: [1.0, 1.0, 1.0, 1.0, 1.0, ...

Edit 2:

rqt_graph image description

2018-09-19 14:26:52 -0500 marked best answer I need help with an error when run an OpenCV program

I am sorry if my subject is not clear but I am not sure how to describe this problem. Below is the error I receive when I try to run my node:

ubuntu@tegra-ubuntu:~/Documents/WorkSpaceOpenCV$ rosrun img_processor img_processor
img_processor: /usr/include/boost/smart_ptr/shared_ptr.hpp:653: typename boost::detail::sp_member_access<T>::type boost::shared_ptr<T>::operator->() const [with T = cv_bridge::CvImage; typename boost::detail::sp_member_access<T>::type = cv_bridge::CvImage*]: Assertion `px != 0' failed.
Aborted

I have 2 nodes. One is /camera which collect data from webcam and publish as /camera/raw_image.This run fine and I can see the image using image_viewer. Another node subscribes to /camera/raw_image and convert raw_image to hsv_image. I got error when I ran this node. You can see the code of my node below. Another question I have is even it abort the node, the rqt_graph still show this node run but with a red circle around it: screenshot_img_processor.png I am not sure what does it mean. I am new to ROS + OpenCV + C++

#include <ros/ros.h>
#include <sensor_msgs/image_encodings.h>
#include <image_transport/image_transport.h>
#include <cv_bridge/cv_bridge.h>
#include <opencv/cv.h>
#include <opencv/highgui.h>
#include <math.h>

class Process_hsv
{
protected:
    ros::NodeHandle nh;

    image_transport::ImageTransport it;
    image_transport::Publisher image_pub;
    image_transport::Subscriber image_sub;

public:
    Process_hsv(ros::NodeHandle & nh):nh(nh), it(nh)
    {
        //Advertise image messages to a topic
        image_pub = it.advertise("/process_hsv/output_image",1);
        //Listen for image messages on a topic and setup callback
        image_sub = it.subscribe("/camera/image_raw",1,&Process_hsv::imageCallback,this);
        // Open HighGUI Window
        cv::namedWindow("hsv");
    }

    ~Process_hsv()
    {
        cv::destroyWindow("hsv");
    }

    void imageCallback(const sensor_msgs::ImageConstPtr& msg)
    {
        cv_bridge::CvImagePtr cv_ptr_in,cv_ptr_out;
        cv::Mat img_in, img_hsv;
        //Convert ROS iput image message to CV image by using cv_bridge
        try
        {
            cv_ptr_in = cv_bridge::toCvCopy(msg, sensor_msgs::image_encodings::BGR8);
            img_in = cv_ptr_in->image;
        }
        catch(cv_bridge::Exception& e)
        {
            ROS_ERROR("cv_bridge exception: %s", e.what());
        }

        //Convert input img from BGR to HSV
        cv::cvtColor(img_in, img_hsv, CV_BGR2HSV);
        //Display HSV Image in HighGUI window
        cv::imshow("hsv",img_hsv);

        //Needed to keep the HighGUI Window open
        cv::waitKey(3);

        //Convert cv::Mat to IplImage
        cv_ptr_out->image = img_hsv;

        //Convert CV image to ROS output image message and publish
        try
        {
            image_pub.publish(cv_ptr_out->toImageMsg());
        }
        catch(cv_bridge::Exception& e)
        {
            ROS_ERROR("cv_bridge exception: %s", e.what());
        }

    }
};

int main (int argc, char **argv)
{
    //Initialize ROS Node
    ros::init(argc, argv, "image_processor");
    // Start node and create a Node Handler
    ros::NodeHandle nh;

    Process_hsv process_hsv(nh);
    ros::spin();
    return 0;
}
2018-05-22 08:47:53 -0500 received badge  Famous Question (source)
2017-10-17 06:06:13 -0500 received badge  Famous Question (source)
2017-09-13 19:31:13 -0500 marked best answer Why there are two origin in defining xacro:macro link

Hi, I am following the tutorial about urdf. In example 08-xacro, I don't understand why when defining the xacro:macro for a link/visual tag, there are two origin tags before and after geometry tags.

  <visual>
    <origin xyz="0 0 0" rpy="${pi/2} 0 0" />
    <geometry>
      <cylinder radius="${wheeldiam/2}" length="0.1"/>
    </geometry>
    <material name="black"/>
    <origin xyz="0 0 0" rpy="0 0 0" />
  </visual>

Thank you very much for your help.

2017-09-13 19:30:58 -0500 received badge  Notable Question (source)
2017-06-06 09:33:34 -0500 marked best answer where is catkin_make error log file location?

After doing catkin_make, the output has an error but it is too long so I cannot see from the start. I would like to know where or how to I can find the error log file. I search everywhere but I cannot find the answer so I ask here. Sorry if this question is silly.

Thank you.

2017-04-12 01:08:33 -0500 received badge  Famous Question (source)
2017-04-12 01:08:33 -0500 received badge  Notable Question (source)
2017-04-10 11:13:02 -0500 received badge  Famous Question (source)
2017-03-15 04:13:49 -0500 marked best answer error when run rosbridge

Hi, I tried to run rosbridge after following instruction: http://wiki.ros.org/rosbridge_suite/T... and got below error. Please help me. I am running ROS on virtual machine with 64bit Indigo.

viki@c3po:~/Documents/ROS_Packages$ roslaunch rosbridge_server rosbridge_websocket.launch
... logging to /home/viki/.ros/log/46468e80-9263-11e5-9948-080027b46cdd/roslaunch-c3po-3640.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://c3po:41824/

SUMMARY
========

PARAMETERS
 * /rosbridge_websocket/address: 
 * /rosbridge_websocket/authenticate: False
 * /rosbridge_websocket/port: 9090
 * /rosdistro: indigo
 * /rosversion: 1.11.8

NODES
  /
    rosapi (rosapi/rosapi_node)
    rosbridge_websocket (rosbridge_server/rosbridge_websocket)

ROS_MASTER_URI=http://localhost:11311

core service [/rosout] found
process[rosbridge_websocket-1]: started with pid [3658]
process[rosapi-2]: started with pid [3659]
Traceback (most recent call last):
  File "/home/viki/Documents/ROS_Packages/src/rosbridge_suite/rosbridge_server/scripts/rosbridge_websocket", line 43, in <module>
    from rosbridge_server import RosbridgeWebSocket
  File "/home/viki/Documents/ROS_Packages/src/rosbridge_suite/rosbridge_server/src/rosbridge_server/__init__.py", line 1, in <module>
    from websocket_handler import RosbridgeWebSocket
  File "/home/viki/Documents/ROS_Packages/src/rosbridge_suite/rosbridge_server/src/rosbridge_server/websocket_handler.py", line 42, in <module>
    from rosbridge_library.rosbridge_protocol import RosbridgeProtocol
  File "/home/viki/Documents/ROS_Packages/src/rosbridge_suite/rosbridge_library/src/rosbridge_library/rosbridge_protocol.py", line 33, in <module>
    from rosbridge_library.protocol import Protocol
  File "/home/viki/Documents/ROS_Packages/src/rosbridge_suite/rosbridge_library/src/rosbridge_library/protocol.py", line 35, in <module>
    import bson
ImportError: No module named bson
[rosbridge_websocket-1] process has died [pid 3658, exit code 1, cmd /home/viki/Documents/ROS_Packages/src/rosbridge_suite/rosbridge_server/scripts/rosbridge_websocket __name:=rosbridge_websocket __log:=/home/viki/.ros/log/46468e80-9263-11e5-9948-080027b46cdd/rosbridge_websocket-1.log].
log file: /home/viki/.ros/log/46468e80-9263-11e5-9948-080027b46cdd/rosbridge_websocket-1*.log

I have to press Ctrl-C to continue. I have just started leaning ROS.

Regards, Thang Nguyen

2017-02-22 02:18:36 -0500 received badge  Famous Question (source)
2017-01-27 15:28:59 -0500 received badge  Famous Question (source)
2016-12-17 02:01:48 -0500 received badge  Popular Question (source)
2016-12-05 13:02:45 -0500 commented answer Is there anyone success with ROS Linux + LabVIEW RT?

If you download the code, there is a tutorial in the example shows you step by step how to do that. Regards

2016-12-05 11:56:12 -0500 marked best answer Is there anyone success with ROS Linux + LabVIEW RT?

My plan is having ROS nodes on Linux and on LabVIEW RT (MyRIO) work together with ROS master running on Linux. Currently, I am using the ROS LabVIEW library from Tufts university. I tested and proved success to be able run roscore on Linux communicating with ros node on LabVIEW PC (non-RT). But I don't have success communication between roscore runs on Linux and ros node runs on MyRIO (RT). If anyone know how to make this work please have me with instructions.

Thank you in advance.

Edit 1: The subscriber in LabVIEW RT cannot receive message from publisher in Linux (ROS master run on Linux). I also tried with ROS master run on PC, publisher run on LabVIEW PC and subscriber run on LabVIEW RT. The subscriber in this case does not receive message from publisher either. But if I ran the ROS master in LabVIEW RT, I can receive message from publisher run on LabVIEW PC.

2016-11-22 06:54:44 -0500 commented answer Need help install gazebo

Dr Abdul: I don't understand why I need Ubuntu mate. Could you please tell me more detail about this?

2016-11-21 13:07:47 -0500 received badge  Famous Question (source)
2016-11-21 10:26:34 -0500 commented answer Need help install gazebo

Dr Abdul: I believe that I installed the desktop version but I have not installed ubuntu mate yet. Maybe this the reason.

2016-11-19 07:15:15 -0500 commented answer Need help install gazebo

Yes, I am using Ubuntu 14.04. So you mean that I should reinstall ROS full? The problem is at the time I install ROS, I cannot install the full package version, I don't remember why. I may have to try it again.

2016-11-19 07:13:18 -0500 received badge  Notable Question (source)
2016-11-19 01:20:05 -0500 received badge  Popular Question (source)
2016-11-19 00:40:24 -0500 commented question Need help install gazebo

Josh, I have just added the edit 2 about alternative installation. It says gazebo7 but I would like to install gazebo2.

2016-11-18 01:02:17 -0500 asked a question Need help install gazebo

I am using jetson tx1. I could not install the full package of ros indigo only the base package so now I have to install gazebo separately. I am following the steps to install from tutorial but I have problem. First I don't have curl

ubuntu@tegra-ubuntu:~/Documents$ curl -ssL http://get.gazebosim.org | sh
bash: curl: command not found

So I tried to install curl but I also have problem when install this:

ubuntu@tegra-ubuntu:~/Documents$ sudo apt-get install curl
[sudo] password for ubuntu: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
 curl : Depends: libcurl3 (= 7.35.0-1ubuntu2.10) but 7.35.0-1ubuntu2.6 is to be installed
 libpcre3-dev : Depends: libpcre3 (= 1:8.31-2ubuntu2.3) but 2:8.35-7.1ubuntu1 is to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).
ubuntu@tegra-ubuntu:~/Documents$ sudo apt-get -f install
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Correcting dependencies... failed.
The following packages have unmet dependencies:
 libpcre3-dev : Depends: libpcre3 (= 1:8.31-2ubuntu2.3) but 2:8.35-7.1ubuntu1 is installed
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.
E: Unable to correct dependencies

I don't know what should I do next. Please give me an advice.

Thank you very much.

Edit 1: Below is what happen if I install Pre-Built Debians

ubuntu@tegra-ubuntu:~/Documents$ sudo apt-get install ros-indigo-gazebo-ros-pkgs ros-indigo-gazebo-ros-control
[sudo] password for ubuntu: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Unable to locate package ros-indigo-gazebo-ros-pkgs
E: Unable to locate package ros-indigo-gazebo-ros-control

Edit 2: Alternative Installation ( http://gazebosim.org/tutorials?tut=in... ) When I come to: sudo apt-get install gazebo7 I don't think I should install gazebo7 because it says that Indigo should go with gazebo2. Then I got

ubuntu@tegra-ubuntu:~/Documents$ sudo apt-get install gazebo2  2
[sudo] password for ubuntu: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package gazebo2 is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'gazebo2' has no installation candidate
2016-11-12 22:36:35 -0500 commented question Need help with find error in this urdf

I installed base package so there is no gazebo in it.

2016-11-12 22:35:39 -0500 marked best answer Need help with find error in this urdf

Hi, I am learning the tutorial about urdf. I am at the exercise 8 now. The error I have when run the launch file is:

[ERROR] [1478674779.727709696]: length [${bodylen}] is not a valid float
[ERROR] [1478674779.727814955]: Could not parse visual element for Link [base_link]
[ERROR] [1478674779.727917245]: radius [${width}] is not a valid float: bad lexical cast: source type value could not be interpreted as target
[ERROR] [1478674779.727969693]: Could not parse visual element for Link [head]

.....

I will include here to the code from start to base_link. Please help me point out the issue. I cannot find out what is wrong.

   <?xml version="1.0"?>
    <robot name="macroed" xmlns:xacro="http://ros.org/wiki/xacro">
    <!-- Convert to xacro-->
    <robot xmlns:sensor="http://playerstage.sourceforge.net/gazebo/xmlschema/#sensor"
              xmlns:controller="http://playerstage.sourceforge.net/gazebo/xmlschema/#controller"
              xmlns:interface="http://playerstage.sourceforge.net/gazebo/xmlschema/#interface"
              xmlns:xacro="http://playerstage.sourceforge.net/gazebo/xmlschema/#interface" name="macroed">

        ...

Edit 1: I found the problem. I missed the 4 rows below the link but I got a new error and I don't understand what it is:

...
process[rviz-4]: started with pid [7571]
[ERROR] [1478753950.661833770]: Error reading end tag.
[robot_state_publisher-3] process has died [pid 7563, exit code -11, cmd /opt/ros/indigo/lib/robot_state_publisher/state_publisher __name:=robot_state_publisher __log:=/home/ubuntu/.ros/log/6a4eafd8-a702-11e6-98d1-00044b581868/robot_state_publisher-3.log].
log file: /home/ubuntu/.ros/log/6a4eafd8-a702-11e6-98d1-00044b581868/robot_state_publisher-3*.log
Traceback (most recent call last):
  File "/opt/ros/indigo/lib/joint_state_publisher/joint_state_publisher", line 343, in <module>
    jsp = JointStatePublisher()
  File "/opt/ros/indigo/lib/joint_state_publisher/joint_state_publisher", line 26, in __init__
    robot = xml.dom.minidom.parseString(description).getElementsByTagName('robot')[0]
  File "/usr/lib/python2.7/xml/dom/minidom.py", line 1928, in parseString
    return expatbuilder.parseString(string)
  File "/usr/lib/python2.7/xml/dom/expatbuilder.py", line 940, in parseString
    return builder.parseString(string)
  File "/usr/lib/python2.7/xml/dom/expatbuilder.py", line 223, in parseString
    parser.Parse(string, True)
xml.parsers.expat.ExpatError: no element found: line 239, column 0
[joint_state_publisher-2] process has died [pid 7555, exit code 1, cmd /opt/ros/indigo/lib/joint_state_publisher/joint_state_publisher __name:=joint_state_publisher __log:=/home/ubuntu/.ros/log/6a4eafd8-a702-11e6-98d1-00044b581868/joint_state_publisher-2.log].
log file: /home/ubuntu/.ros/log/6a4eafd8-a702-11e6-98d1-00044b581868/joint_state_publisher-2*.log
[ERROR] [1478753953.368324386]: No link elements found in urdf file

Edit 2: Full urdf xacro.

<?xml version="1.0"?>
<robot name="macroed" xmlns:xacro="http://ros.org/wiki/xacro">
<robot xmlns:sensor="http://playerstage.sourceforge.net/gazebo/xmlschema/#sensor"
xmlns:controller="http://playerstage.sourceforge.net/gazebo/xmlschema/#controller"
xmlns:interface="http://playerstage.sourceforge.net/gazebo/xmlschema/#interface"
xmlns:xacro="http://playerstage.sourceforge.net/gazebo/xmlschema/#interface" name="macroed">
<!-- Convert to xacro-->

    <xacro:property name="width" value="0.2" /> 
    <xacro:property name="leglen" value="0.6" />
    <xacro:property name="polelen" value="0.2" />
    <xacro:property name="bodylen" value="0.6" />
    <xacro:property name="baselen" value="0.4" />
    <xacro:property name="wheeldiam" value="0.07" />
    <xacro:property name="pi" value="3.1415" />

    <material name="blue">
        <color rgba="0 0 0.8 ...
(more)
2016-11-11 15:06:38 -0500 commented answer Why there are two origin in defining xacro:macro link

Thanks for updating. Can you put this as answer so I can mark question is answered?

2016-11-11 14:02:38 -0500 commented question Need help with find error in this urdf

Could you please tell me about the xacro version to install to?

2016-11-11 14:02:09 -0500 commented question Need help with find error in this urdf

lnounx: Thanks lnounx, I ddin't read it carefully. Thanks for your help. If you change this to answer, I will mark this as answer.

2016-11-11 10:59:46 -0500 commented question Need help with find error in this urdf

I have not tried to use 08-macroed.urdf since I want to use the xacro instead. Maybe I should try it. Since I cannot install full package, I have to install gazebo separately. I am using Ubuntu 14.04 with Indigo. What version of Gazebo should I install?

2016-11-11 06:26:53 -0500 commented question Need help with find error in this urdf

@Inounx: I tried with rosrun xacro xacro 08-macroed.urdf.xacro > 08-macroed.urdf then using check_urdf 08-macroed.urdf and got a good result. This makes me confused. Do you think gazebo gzsdf will return better result? I am trying to install gazebo but I have error.