ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
2019-08-01 12:50:19 -0500 | received badge | ● Nice Answer (source) |
2016-05-16 02:39:32 -0500 | received badge | ● Good Answer (source) |
2016-04-04 08:35:25 -0500 | received badge | ● Nice Answer (source) |
2015-08-12 08:45:00 -0500 | received badge | ● Good Answer (source) |
2015-08-12 08:45:00 -0500 | received badge | ● Enlightened (source) |
2013-10-16 23:37:06 -0500 | received badge | ● Great Answer (source) |
2012-12-03 21:08:58 -0500 | received badge | ● Good Answer (source) |
2012-11-22 06:51:59 -0500 | answered a question | Using Hokuyo node with multiple lasers You need to remap topic name on at least one of the nodes, and give deffirent names to them. Easiest way is use launch file: |
2012-10-29 22:25:38 -0500 | received badge | ● Nice Answer (source) |
2012-10-29 13:28:05 -0500 | answered a question | Failed to open port /dev/ttyUSB0 Did you reload udev rules after adding new ones? Are you sure rules were propertly added? There is still something wrong with permissions. Post output of First you need to be in dialout group, then make sure tty is owned by this group. To add yourself to group: Then relog / restart X server / reboot to make sure udev rule: |
2012-10-27 23:04:35 -0500 | received badge | ● Nice Answer (source) |
2012-10-26 00:37:03 -0500 | answered a question | How is Gyro Drift dealt with? There is no way to eliminate drift, but there are some things you can always do. Dont know what kind of gyro you are using, but for raw sensor you can:
|
2012-10-25 02:04:35 -0500 | received badge | ● Good Answer (source) |
2012-10-24 04:47:46 -0500 | received badge | ● Nice Answer (source) |
2012-10-22 10:46:09 -0500 | commented answer | ROS newbie and questions about adding to ROS_PACKAGE_PATH Run |
2012-10-22 10:39:42 -0500 | commented answer | ROS newbie and questions about adding to ROS_PACKAGE_PATH I see you are new to Linux too. |
2012-10-22 10:35:36 -0500 | commented answer | ROS newbie and questions about adding to ROS_PACKAGE_PATH You shouldnt post an anwer to ask question - it is not a forum, use comments. Where do you create this ne package? In this directory added to ROS path? It should work then, without need to edit manifest. |
2012-10-22 10:23:13 -0500 | answered a question | ROS newbie and questions about adding to ROS_PACKAGE_PATH Try: Otherwise it will remove previous paths. |
2012-10-18 04:31:51 -0500 | commented answer | publisher and subscriber in single node Calling spinOnce() inside of callback is a bad idea. |
2012-10-18 03:57:31 -0500 | commented answer | publisher and subscriber in single node @Chris: as mentioned already by domhege, your publisher is being destroyed at the end of a chattercallback function, since it is declared within it. Your publisher is NOT class member. About the spinning, let me edit my answer, since this comment is already too long. |
2012-10-17 23:49:59 -0500 | received badge | ● Nice Answer (source) |
2012-10-17 08:44:06 -0500 | commented answer | publisher and subscriber in single node There is a slight difference betwean ros::spin() and ros::spinOnce(). First blocks the program and allows ros callbacks to handle node work, when second one releases after doing all ros related stuff. It allows you to do code in main function letting ros do it work. |
2012-10-15 05:52:50 -0500 | answered a question | cvLoadImage under roslaunch Does image load if you dont use $(find lsi_node) ? Try loading: and put herramientas.jpg into ~/.ros directory. If it works you can change working directory to $(find lsi_node) for this node with your launch file. $(find lsi_node) in code code may not work as wanted, bacause it is not a launch file. You could try to work with: |
2012-10-15 05:38:20 -0500 | commented answer | cvLoadImage fail in ROS. It is not a forum, one should avoid posting questions as answers. Better start your own question rather than digging up this old thread. You can post a link if questions are similar. |
2012-10-15 03:44:31 -0500 | received badge | ● Nice Answer (source) |
2012-10-15 03:40:54 -0500 | answered a question | Problem running hokuyo_node Try: maybe you have more than one device connected to your computer that uses ACM driver. If so run: Edit: By default, hokuyo_node assumes that you have connected with USB, which uses ACM. As tfoote wrote in the comment: should do the trick. |
2012-10-15 03:32:50 -0500 | answered a question | rviz: unsaved changes There is no direct way to do this, but fell free to write a patch :) You are not the only one annoyed be this popup. Good practise is not to close rviz at all, only after work with the robot. If you need to restart rviz for some reason, it means there is something wrong with your code or rviz itself (happens too). I use to close rviz from time to time when I am working on battery, it saves some power (opengl likes my cpu). As a workaround: - ctrl+s and alt+f4 to speed things up, or - alt+tab and ctrl+c, when you don't want changes to be saved I don't know of any better solution. |
2012-10-15 03:10:59 -0500 | answered a question | publisher and subscriber in single node After publishing on topic you need to let the ROS spin, to make sure data is actually send on the topic. Calling "publish" doesn't put the data on the topic, so if you destroy publisher before the data is send, you lose the information stored in the buffer. The best solution is to make your callback a class member and access data as a private variable of the class from function that is publishing this information. Quick code example: I will skip the class, but constructor should create both subscriber and publisher, callback should be part of a class, as well as the temporary data storage variable/structure and some boolean to indicate new data presence. For high frequency data you should provide some security for overwriting by callback not yet published data. Also if you are not doing any computation an the data, you can just publish it inside the callback, using publisher that is already initialized as a class member, but you should avoid too much operation in your callback Easier solution is global variable, as mentioned before, but it is not so elegant one. EDIT: ros::spinOnce() callend once in a while (as often as possible) will do the trick, but if you reallllly want to use ros::spin() instead, other solution is: |
2012-09-07 14:00:51 -0500 | answered a question | rosout keeps on dying and respawning Since boost 1.46.1 comes as an update in 10.04 (am I right?), you should make sure there are no leftovers from previous versions in the system, especially headers. If there are any, check if CMake doesn't added them to compiler command (-I/path/to/wrong/version/of/boost/headers). Are you linking boost_regex while building ROS? If not try adding regex to CMakeLists. |
2012-09-07 12:34:22 -0500 | commented question | sound_play playWave() is not playing sound What about calling soundhandle.playWave('/absolute/path/to/my_file.wav'), does it work? |
2012-09-07 10:46:12 -0500 | answered a question | What words have 3 of the letter e This is totaly not ROS related. You should post it somewere else. |
2012-09-07 10:44:44 -0500 | received badge | ● Critic (source) |
2012-09-07 07:17:57 -0500 | answered a question | Robot position at Velocity zero to some reference object First you need to detect an object you are interested in - I assume you have already done this. Next step would be to publish tf transform for this particular object (line), you can find this tutorial useful:
Carrot example is really cool :) Of course you should publish tf /object with base /laser (or whatever, according to you detection method). In the part of the code that needs an input about object position place tf listener for transform from /object to /base_link, like in this tutorial:
Remember to setup your robot with tfs (in this case you are going to need /base_link and /laser frames). |
2012-09-06 01:17:12 -0500 | received badge | ● Teacher (source) |
2012-09-06 01:00:23 -0500 | answered a question | how to publish (fake) odometry i.e, getting odometry without robot? One way is to write your own node that will publish fake data. Tutorial for odometry publisher can be found at:
It requires some changes, but will give you possibility to publish automaticly whatever you need, without any user input. Other option is to use turtlesim and move fake robot around with a teleop (using keyboard or joystick). It will publish odometry for you, so there is no need to wirte any additional code, but you need to keep interacting with robot to generate change in published position. |
2012-09-05 21:55:20 -0500 | answered a question | ssh doesn't work over WiFi What do you mean by ssh to yourself? Is it "ssh localhost"? If so, then I guess you have ssh server installed. Do you access remote mashine with hostname or IP? If hostname, try using IP address instead. You can get them with
|
2012-08-01 02:58:17 -0500 | received badge | ● Editor (source) |