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

rtoris288's profile - activity

2022-05-16 13:59:37 -0500 received badge  Good Answer (source)
2022-04-19 02:01:50 -0500 received badge  Nice Question (source)
2020-03-24 03:32:13 -0500 marked best answer Kinect + Gazebo

I would like to create a standalone Kinect camera in a gazebo simulation (in electric) but am having trouble finding a simple tutorial that explains how to do so. I would like the entire model to be rendered as well. Any help to point me in the right direction is greatly appreciated!

2018-12-03 06:28:58 -0500 received badge  Nice Question (source)
2018-11-28 11:37:11 -0500 received badge  Nice Answer (source)
2017-02-17 16:20:56 -0500 received badge  Nice Answer (source)
2016-11-07 11:46:05 -0500 received badge  Great Answer (source)
2016-11-07 11:46:05 -0500 received badge  Guru (source)
2016-10-26 13:59:25 -0500 received badge  Nice Answer (source)
2016-03-20 18:54:23 -0500 answered a question rosbridge and web server over the internet

Clients such as a web browser will talk directly to rosbridge using something like roslibjs. The web server is only responsible for severing the client the webpage, it does not need to talk directly to rosbridge, only the client browser will. Therefore, the IP and port 9090 of the rosbridge server on the robot must be available to the client.

2016-03-20 18:52:02 -0500 answered a question How to stream CompressImage data as mjpeg

I believe web_video_server does support compressed images. Source code for the class here: https://github.com/RobotWebTools/web_...

2016-03-09 18:24:32 -0500 commented answer Can't subscribe to tf with roslibjs

sudo apt-get install ros-indigo-tf2-web-republisher

2016-03-08 12:36:37 -0500 answered a question problem with roslib

Did you download the roslibjs repository from source? The example file attempts to load the JS file locally from the source build. If you are trying to copy-and-paste the example and run it without the source code, you can change line 6 of the example to include the following:

<script src="http://cdn.robotwebtools.org/roslibjs/current/roslib.min.js"></script>

2016-01-24 11:16:39 -0500 answered a question User level in robridge

By default there is no authentication enabled in rosbridge so any browser can connect. You can enable only authorized clients to connect by using rosauth (see GitHub for source code and this paper for details). The current implementation only checks for authentication, not authorization (i.e., different user levels). Although a field is passed along indicating the user lever specified from the client. This could be extended of course.

2015-11-24 11:06:29 -0500 commented answer error when run rosbridge

You can run rosdep install --from-paths src --ignore-src --rosdistro indigo -y from your catkin_workspace directory.

2015-11-17 11:57:42 -0500 commented question Roslibjs don't get goal result on client

If you rostopic echo /cmd/result does your result get printed out correctly?

2015-08-21 07:54:46 -0500 answered a question ros3djs not able to display my 3D files

ros3djs assumes that the mesh resources begin with a package:// URL, not a file URL like in your example. What the library will do is replace package:// with whatever argument you give to path (e.g., https://github.com/RobotWebTools/ros3... ). If you do not provide a path, it will use localhost by default. For example, if a resource is package://robottt/robots/base_link.dae, roslibjs will replace this with http://localhost/robottt/robots/base_link.dae by default. Again, you can change the preface with an optional argument.

Browsers cannot natively access the file system for security reasons, so you will need to host your HTML page and the Collada file on a web server (Apache is easy enough to set up).

2015-08-19 12:46:17 -0500 commented question Interfacing RP2 with Rosbridge_suite to another Non-Ros computer via ethernet

If rosbridge is running on the RP2, you will need to make sure you can ping/connect the address of the RP2 instead of the IP of the computer from the RP2. Can you update the question with what you are launching on the RP2 and what the connection line looks like in your JavaScript?

2015-08-19 09:16:43 -0500 commented question Interfacing RP2 with Rosbridge_suite to another Non-Ros computer via ethernet

wss is like HTTPS, it requires server-side certificates to provide encryption. In your case, you will not need them so be sure to use ws://x.x.x.x:9090. Are you able to ping the address correctly from the client?

2015-08-19 08:35:40 -0500 commented question Interfacing RP2 with Rosbridge_suite to another Non-Ros computer via ethernet

In your example it looks like you are making a wss connection instead of a ws connection: are you running rosbridge correctly with certs to use encryption? Are those certs trusted or allowed by your browsers?

2015-08-19 08:32:46 -0500 commented question Collada .dae tag to open model in Rviz

Are there any errors in the JavaScript console? Did you tell the JavaScript where to load your custom DAE file? By default the examples use the Robot Web Tools servers which hosts pr2_description and others ( https://github.com/RobotWebTools/ros3... )

2015-07-30 09:18:33 -0500 answered a question rosbridge_server: share messages to non-ROS computer using HTTP

rosbridge is simply a protocol specification for external clients to communicate with ROS ( https://github.com/RobotWebTools/rosb... ). By running rosbridge server, you are allowing any external client to connect to a ROS system via either a WebSocket or TCP connection (depending on which server you start). roslibjs is a JavaScript client library; however it is not the only option. A Java implementation also exists ( https://github.com/WPI-RAIL/jrosbridge/ ) any other languages can also implement the protocol and become a client as well.

2015-07-07 08:10:13 -0500 marked best answer Camera Calibration Uses Wrong Aspect Ratio from USB Camera

We are trying to calibrate a USB camera running at 1080p (i.e., 1920x1080). When launching usb_cam and then image_view, the image comes up correctly at the right aspect ration.

rosrun usb_cam usb_cam_node _image_width:=1920 _image_height:=1080 _pixel_format:=yuyv rosrun image_view image_view image:=/usb_cam/image_raw

image description

However, whenever we try and run the camera calibration node, the aspect ratio of the image seems to be reversed:

rosrun camera_calibration cameracalibrator.py --size 8x6 --square 0.025 image:=/usb_cam/image_raw camera:=/usb_cam

image description

We are running Ubuntu 14.04 64bit with the latest Indigo build.

2015-07-07 08:10:10 -0500 answered a question Camera Calibration Uses Wrong Aspect Ratio from USB Camera
2015-07-02 09:08:13 -0500 received badge  Great Question (source)
2015-05-28 11:16:35 -0500 marked best answer tf2 cannot lookup transform (Lookup would require extrapolation)

I've seen a few posts on this but none have helped me solve the problem. I am trying to look up the TF between two links but keep getting the same extrapolation error.

ros::Duration cache_(10);
tf2_ros::Buffer buf_(cache_);
tf2_ros::TransformListener listener_(buf_);
/* other random stuff */
geometry_msgs::TransformStamped grasp;
try
{
  geometry_msgs::TransformStamped grasp = buf_.lookupTransform("base_footprint", "jaco_link_hand", ros::Time(0), ros::Duration(11));
} catch (tf2::TransformException &ex)
{
  cout << ex.what() << endl;
}

Running this code always results in:

Lookup would require extrapolation at time 1425582589.007301092, but only time 1425582589.107081890 is in the buffer, when looking up transform from frame [jaco_link_hand] to frame [base_footprint]

My understanding was that ros::Time(0) should just give me the latest TF however that does not seem to be the case. This is all running on the robot's onboard computer (my thought was network latency at first), and I have also tried allowing the program to run a while to fill the buffer.

Running tf_monitor results in:

Node: unknown_publisher 108.674 Hz, Average Delay: -0.109925 Max Delay: 0.163927

UPDATE 1

Removing the cache time (the ros::Duration) from the constructor fixes the problem. This seems odd since 10 is the default value so nothing should change.

2015-05-28 11:13:29 -0500 received badge  Famous Question (source)
2015-05-12 13:17:34 -0500 commented answer How to get error information using roslibjs

Strange, what if you just log the error variable by itself? console.log(error);, this is based off a working example: https://github.com/RobotWebTools/rosl...

2015-05-12 09:33:49 -0500 answered a question How to get error information using roslibjs

The error variable is should always be a string. You can concatenate it in the console.log statement and it should work.

2015-04-24 11:04:28 -0500 marked best answer Install ROS Package Globally

I was wondering if it was possible to install a ROS package from source globally via catkin_make install? i.e., I would want the package installed into the /opt/ros/indigo/... location instead of the catkin workspace. The use case is for a package not in the build farm that we wanted all users on our robot to have access to.

2015-04-24 11:01:14 -0500 received badge  Famous Question (source)
2015-04-08 19:14:31 -0500 marked best answer Load SDF (.model) into robot_description

In the past and currently, you can load a URDF/XACRO file into the parameter service via something like:

<param name="robot_description" command="$(find xacro)/xacro.py 'my_robot.urdf.xacro'"/>

The latest Gazebo package supplies several nice robot models (simulator_gazebo/gazebo/gazebo/share/gazebo-1.0.1/models/youbot.model for example) which are great to spawn in Gazebo. Is it possible to use the .model file (in the SDF format that Gazebo uses) in order to load the model into robot_description in Fuerte?

2015-03-23 17:02:51 -0500 received badge  Notable Question (source)
2015-03-23 10:14:46 -0500 commented question Roslibjs for a client to communicate with simple action Server

The HTML can be hosted anywhere, it is independent of the ROS system. The client will make a connection to ROS via rosbridge over websockets.

2015-03-19 07:21:56 -0500 answered a question About 2dnav using nav2djs with Turtlebot and compatible packages
  1. nav2djs will work with any robot that utilizes the standard navigation stack which includes the turtlebot. You would need to change the name of the server to match that of the turtlebot and launch the turtlebot's navigation nodes (not sure which they are I don't use the turtlebot), robot_pose_publisher, and rosbridge_websocket as defined in the tutorial.

  2. I see no reason web_video_server can't launch with amcl_demo. Multiple ROS nodes can utilize the same topics without any 'dependency' issues. That's one of the core beauties of ROS! :) If you try and launch the node twice (e.g., if amcl already launched map_server), then you don't need to launch it again since it is already running.

2015-03-17 11:37:52 -0500 commented answer rosbridge 2.0 limit bandwith

throttle_rate is sent directly to rosbridge server, no throttling is done client side. Passing this parameter through the client should have rosbridge limit the rate at which is sends that topic across the wire.

2015-03-17 07:25:34 -0500 received badge  Nice Answer (source)
2015-03-13 07:19:44 -0500 answered a question rosbridge 2.0 limit bandwith

Take a look at the throttle_rate parameter in roslibjs ( https://github.com/RobotWebTools/rosl... ). This will place a delay between messages inside of rosbridge and decrease bandwidth.

2015-03-11 07:03:06 -0500 commented answer rosbridge v2 msg format and subscriber callback in csharp

I am unfamiliar with JSON parsing in C# but I suspect something needs to be done to parse the msg field which in itself is its own JSON object. Are the other fields set correctly? Can you post the recdata string that is coming in or verify it is valid JSON ( http://jsonlint.com/)?