Hi!
I am new in ROS, and I was reading a book "Mastering ROS".
But I am having an issue with loading controllers in Gazebo, from chapter 10. Working with perception using MoveIt! and Gazebo. Even though I just copied code from the repo. (Actually, the same issue appeared on chapter 3 or 4).
Logs are following:
[ERROR] [1486485132.488395779, 0.283000000]: Could not load controller 'seven_dof_arm_joint_controller' because controller type 'position_controllers/JointTrajectoryController' does not exist.
[ERROR] [1486485132.488718126, 0.283000000]: Use 'rosservice call controller_manager/list_controller_types' to get the available types
[INFO] [1486485132.533815, 0.295000]: Started controllers: joint_state_controller
[ERROR] [1486485133.491534, 0.560000]: Failed to load seven_dof_arm_joint_controller
[INFO] [1486485133.494729, 0.560000]: Loading controller: gripper_controller
[ERROR] [1486485133.520919999, 0.566000000]: Could not load controller 'gripper_controller' because controller type 'position_controllers/JointTrajectoryController' does not exist.
[ERROR] [1486485133.521358891, 0.566000000]: Use 'rosservice call controller_manager/list_controller_types' to get the available types
[ERROR] [1486485134.523407, 1.095000]: Failed to load gripper_controller
I think, it is because I'm using Ubuntu 16.04 and Kinetic, whereas in the book the system was 14.04 and Indigo.
How can I resolve this issue? Any ideas?
EDIT1: I changed some urdf files because I had same issue as [here](https://github.com/qboticslabs/mastering_ros/issues/11)
UPD: I've resolved it by installing all available controllers: `sudo apt-get install ros*controller*`
I know, it is not the right way, but somehow I couldn't find anywhere that I can install joint controller itself `sudo apt-get ros-kinetic-joint-trajectory-controller`. Maybe it was too obvious. I found it in the new packages list when I ran the command above.
`The following NEW packages will be installed:
ros-kinetic-bhand-controller ros-kinetic-diff-drive-controller ros-kinetic-dynamixel-controllers ros-kinetic-dynamixel-driver ros-kinetic-dynamixel-msgs ros-kinetic-dynamixel-sdk
ros-kinetic-dynamixel-workbench-controllers ros-kinetic-dynamixel-workbench-msgs ros-kinetic-dynamixel-workbench-toolbox ros-kinetic-force-torque-sensor-controller
ros-kinetic-gripper-action-controller ros-kinetic-imu-sensor-controller ros-kinetic-joint-trajectory-controller ros-kinetic-kobuki-controller-tutorial ros-kinetic-md49-base-controller
ros-kinetic-md49-messages ros-kinetic-md49-serialport ros-kinetic-nav-pcontroller ros-kinetic-robot-controllers ros-kinetic-robot-controllers-interface ros-kinetic-robot-controllers-msgs
ros-kinetic-robotis-controller-msgs ros-kinetic-ros-controllers ros-kinetic-rqt-controller-manager ros-kinetic-rqt-joint-trajectory-controller ros-kinetic-velocity-controllers
ros-kinetic-view-controller-msgs ros-kinetic-yocs-diff-drive-pose-controller ros-kinetic-yocs-safety-controller`
Thanks!
↧
Gazebo: Could not load controller, JointTrajectoryController does not exist (Mastering ROS chapter 10)
↧
Testing for sensors in Gazebo fails : Getting started
Whenever i run "rostopic echo scan" or run anything related to sensor/sensor detection Gazebo crashes.
actions to reproduce:
roslaunch turtlebot_gazebo turtlebot_world.launch
(another terminal)
rostopic echo scan
im running kinetic
↧
↧
add AR tag in gazebo
Hello everyone,
I'm wondering how to add an `AR tag` in the gazebo's world these days. But I have not found the right way to solve this problem. Or could I add an image to the world?
Thanks first!
↧
applying texplore rl to mobile robot and arm
I have the following ([robot in Gazebo simulation](https://1drv.ms/i/s!AstFZgcaUOtthzl_-08hOX-LfaFI)).
My goal in applying the TEXPLORE RL algorithm is to have the robot use its arm to help itself to climb the wall, by pulling from the horizontal bar shown.
I made some assumptions: The robot only moves in 2d (x, z), the gripper has vertical position and automatically will hold on to the bar when needed.
My states (four in total) are the (x, z) components of the gripper and the center of the mobile base.
My actions (7):
Move the mobile base back or forward, or stop.
Move the elbow, back or fw a fixed amount/step (radians)
Move the arm, back or fw, a fixed amount/step (radians)
Parameters:
Agent: `--agent texplore --planner parallel-uct --nstates 10`
Environment: `--env jaguarclimbswall --stochastic –prints`
I created this environment based on the RobotCarVel example. However, it does not have simulated physics on it, or calculations. It rather connects to Gazebo and queries the model (robot) as it would with a real robot.
**The problem**:
I am having issue to have the algorithm converge to the goal. I am setting the reward to be the negative of sum of two distances: distance from mobile base to goal, and from gripper to goal (horizontal bar).
Any ideas?
Thanks!
↧
zbar_ros does not detect QR codes from Gazebo camera sensor
I would like to detect QR codes in my gazebo simulation. To do this, I would like to use the zbar_ros package, since it is fast and has a small footprint. While I was able to detect QR codes using a real camera (simple usb camera), I cannot get it working with the virtual Gazebo camera sensor.
I expect that the problem is in the encoding of the image, but I am not sure: I do not see the flaw in the configuration (and I tried *a lot* of different configurations already). Any ideas?
To be clear: the node does **not** crash. It just detects zero codes.
**Sensor section in my URDF**
1.047 1280 720 B8G8R8 0.1 100
**Some lines from my version of zbar_ros barcode_reader_nodelet.cpp**
void BarcodeReaderNodelet::imageCb(const sensor_msgs::ImageConstPtr &image)
{
cv_bridge::CvImageConstPtr cv_image;
cv_image = cv_bridge::toCvShare(image, "bgr8");
zbar::Image zbar_image(cv_image->image.cols, cv_image->image.rows, "GREY", cv_image->image.data,
cv_image->image.cols * cv_image->image.rows);
And some proof that is really should be able to detect the code:

For the sake of completeness:
- The default second argument for toCvShare() was mono16. That did not work for my webcam as well, mono8 did.
- I matched the second argument of toCvShare() to the configuration in my URDF: B8G8R8.
- zbar_image can also be initialized with the format "Y800" instead of "GREY". If I understand correctly, zbar_image does some conversion itself, so I prefer to do everything in grayscale.
- Making the QR code bigger does not help.
↧
↧
Mirror simulation in gazebo
Hi,
Is there a know simple way of simulating a mirror in gazebo?
↧
Run openni_tracker with a simulated kinect using Gazebo
Hi everybody,
we use gazebo to simulate the kinect sensor. is there any option to run the openni_tracker package without using the real sensor? when we try to run it:
roslaunch openni_launch openni.launch load_driver:=false depth_registration:=true camera:=camera
rosrun openni_tracker openni_tracker
we have got the following error:
InitFromXml failed: Can't create any node of the requested type!
thank you all in advance
↧
Failed to validate trajectory after updating moveit (Feb 2017)
Hello!
I am very new to ROS and i'm currently working on gazebo and moveit on ros indigo.
I am currently using the "Autonomous-Flight-ROS" code written by AlessioTonioni. Before updating moveit, everything works well. After updating, I have no problem planning a motion but the problem happens when i execute my planning from moveit to gazebo, it gives the error: "Failed to validate trajectory: couldn't receive full current joint state within 1s".
I'm currently using ros indigo, gazebo 2.2.6, moveit last update (Feb 2017), ubuntu 14.04 trusty.
In the terminal, when i try to plan and execute a valid state, it shows
[ INFO] [1487385467.586393924, 55.384000000]: Planning request received for MoveGroup action. Forwarding to planning pipeline.
[ INFO] [1487385467.632584405, 55.416000000]: No optimization objective specified, defaulting to PathLengthOptimizationObjective
[ INFO] [1487385467.633476818, 55.417000000]: Planner configuration 'Quadrotore[PRMstarkConfigDefault]' will use planner 'geometric::PRMstar'. Additional configuration parameters will be set when the planner is constructed.
[ INFO] [1487385467.648647637, 55.427000000]: Quadrotore[PRMstarkConfigDefault]: problem definition is not set, deferring setup completion...
[ INFO] [1487385467.648978360, 55.427000000]: Quadrotore[PRMstarkConfigDefault]: problem definition is not set, deferring setup completion...
[ INFO] [1487385467.649068794, 55.427000000]: Quadrotore[PRMstarkConfigDefault]: problem definition is not set, deferring setup completion...
[ INFO] [1487385467.649106579, 55.427000000]: Quadrotore[PRMstarkConfigDefault]: problem definition is not set, deferring setup completion...
[ INFO] [1487385467.649145390, 55.427000000]: Quadrotore[PRMstarkConfigDefault]: problem definition is not set, deferring setup completion...
[ INFO] [1487385467.651254216, 55.428000000]: Quadrotore[PRMstarkConfigDefault]: Starting planning with 2 states already in datastructure
[ INFO] [1487385467.652344408, 55.428000000]: Quadrotore[PRMstarkConfigDefault]: Starting planning with 2 states already in datastructure
[ INFO] [1487385467.653093549, 55.429000000]: Quadrotore[PRMstarkConfigDefault]: Starting planning with 2 states already in datastructure
[ INFO] [1487385467.659354421, 55.432000000]: Quadrotore[PRMstarkConfigDefault]: Starting planning with 2 states already in datastructure
[ INFO] [1487385472.650616281, 58.683000000]: Quadrotore[PRMstarkConfigDefault]: Created 1391 states
[ INFO] [1487385472.650772184, 58.684000000]: Quadrotore[PRMstarkConfigDefault]: Created 1274 states
[ INFO] [1487385472.650862388, 58.684000000]: Quadrotore[PRMstarkConfigDefault]: Created 1524 states
[ INFO] [1487385472.651784028, 58.685000000]: Quadrotore[PRMstarkConfigDefault]: Created 1402 states
[ INFO] [1487385472.652006827, 58.685000000]: ProblemDefinition: Adding approximate solution from planner PathHybridization
[ INFO] [1487385472.652064502, 58.685000000]: ParallelPlan::solve(): Solution found by one or more threads in 5.002876 seconds
[ INFO] [1487385475.181260991, 60.603000000]: Received new trajectory execution service request...
[ WARN] [1487385476.487933898, 61.609000000]: Failed to validate trajectory: couldn't receive full current joint state within 1s
[ INFO] [1487385476.488162318, 61.609000000]: Execution completed: ABORTED
The rqt_graph is attached below
[rosgraph.png](/upfiles/14873856542107714.png)
I will be grateful if someone could help me on this problem. Thanks..
↧
Unknown publisher in the tf_monitor output for the turtlebot_gazebo demo.
Run the demo [Explore the Gazebo world](http://wiki.ros.org/turtlebot_gazebo/Tutorials/indigo/Explore%20the%20Gazebo%20world). Check the tf tree via rqt_tf_tree and obtain the output as below:
[rqt_tf_tree output](http://www.imageno.com/hqq4ebr3huo3pic.html)
You can see that the tf of base_footprint -> base_link is published by the node robot_state_publisher.
But "tf_monitor" shows "unknown_publisher" for base_footprint -> base_link.
RESULTS: for base_footprint to base_link
Chain is: base_link -> base_footprint
Net delay avg = 1114.58: max = 1164.52
Frames:
Frame: base_footprint published by unknown_publisher Average Delay: 0.00476341 Max Delay: 0.02
All Broadcasters:
Node: unknown_publisher 124.051 Hz, Average Delay: 0.00459184 Max Delay: 0.02
Also in the tf tree drawn by "rosrun tf view_frames", there is no tf from base_footprint to base_link.
[tf view_frames output](http://www.imageno.com/87f7w1v3ae2vpic.html)
Also notice that compared with the rqt_tf_tree output, there are many other tfs missing in the view_frames output.
Is this a bug in tf_monitor and view_frames? Or some configurations in the demo are incorrect?
↧
↧
gazebo - issues with caster wheels and inertial values
Just imported a simple differential drive with 2 motor controlled big wheels at the front and 2 small caster wheels in the rear.
Have found 2 issues which have me stumped.
1.) After increasing the weight of the motor, the robot slowly slides across the floor when still.
2.) The rear caster wheels always turn perpendicular to the direction of movement. When the robot stops moving the rear wheels turn to align with the front wheels.
below is the code for one of the caster wheels
↧
Spawn UR5 Robot with Robotiq 3 Finger Gripper in Gazebo/MoveIt
Hey guys, im not very experienced using ROS. I want to add a Robotiq 3 finger gripper on a UR5 robot and simulate both in Gazebo to control it using MoveIt. I got the packages for the gripper [link text](http://wiki.ros.org/robotiq) and for the robot [link text](https://github.com/ros-industrial/universal_robot) but how can i link them together? Im using Ros Indigo on Ubuntu 14.04. Thanks for your support!
↧
PR2 tabletop manipulation
I need to create a setup in which a PR2 robot, in Gazebo, would be picking objects from a table, manipulating them and placing them back.
There is a package pr2_tabletop_manipulation that supposedly demoes such a thing but it seems to be not supported for a long time now. And it is unclear to me how it works.
I also tried to use MoveIt to setup a tabletop scene but also got stuck at some point.
So my questions are:
1. What would the modern setup to achieve that goal?
2. Should I try to use Kinetic or is it better to go back to Fuerte and try using the old packages?
3. Should I be using MoveIt for my problem?
4. Does anybody have a working example?
↧
R2 Gazebo simulator
Hi,
I am traying install R2 simulator on my pc. I follow steps mentioned in this [link](https://gitlab.com/nasa-jsc-robotics/robonaut2/wikis/R2%20Gazebo%20Simulation) .
When I run this command in terminal.
rosdep install -y -i --from-paths src
I got this error message;
ERROR: the following packages/stacks could not have their rosdep keys resolved
to system dependencies:
robot_instance: Cannot locate rosdep definition for [shared_memory_transport]
Thanks for advice.
↧
↧
Taking Gazebo screenshots using a ROS node
I'm using Gazebo to make some experiments. I want to take photos of Gazebo simulation in certain moments (decided by my ROS node). Gazebo has a screen capture utility by itself, it can be activated using a GUI button. However, there doesn't seem to be a ROS message or service to trigger it from a ROS node. Am I missing something?
Otherwise, can you suggest me the most modular way to take screenshots of whole screen? Can I create a shell script and rosrun it like a node when necessary? Or should I call screenshot application directly from my ROS node using C++?
↧
I have created a contact sensor in gazebo but dont know where the data is going/is
I have created a contact sensor plug-in for gazebo as explained by the [tutorials on the gazebo site](http://gazebosim.org/tutorials?tut=contact_sensor). What I don't understand is how to access the data it collects. I would like to read the force data and put it into a text file to do some analysis on but I do not know how to access it. Any help?
I am using indigo and gazebo 4.3
↧
Operating differential robot in Gazebo 7 and ROS kinetic
Hi,
I am trying to operate the simple differential drive robot but it is not moving in Gazebo. I precisely follow this tutorial http://www.generationrobots.com/blog/en/2015/02/robotic-simulation-scenarios-with-gazebo-and-ros/ but without success. The robot is spawn in Gazebo and on the rosservice list I have both the /controller_manager and the controller_spawner. I have checked twice the files and everything looks to be ok for me, but I am NEW into Gazebo and ROS and I do not know what else could be wrong. Any help suggestion is welcome. Thanks in advanced!
↧
Gazebo is not publishing clock
My Gazebo is not publishing the clock anymore. I don't know what I did wrong. A few days ago it worked, but not anymore.
"use_sim_time" is set to true (`rosparam get use_sim_time` returns true)
The time in the simulator is running.
I used the sasc version of Gazebo (Gazebo 8.0), but reverting to 7.5 doesn't change it.
Between the last time it worked and the first time I noticed it doesn't work anymore, I installed CUDA 8 and compiled OpenCV 3.1 from source. But I also reverted back to CUDA 7.5 and the default opencv of my system which doesn't make it work.
It seems to me that on no other topics something is published either. But if I manually publish something (i.e. `rostopic pub /test std_msgs/String "test" -r 5`) I can display the content via rostopic echo.
Any clues of what might be wrong?
↧
↧
A manipulator with gripper for simulation
I am experimenting with high level manipulation tasks and wish to see the results in simulation. I would like to use Moveit for motion planning and observe the simulated results in Gazebo.
*I need some suggestions on manipulators with a simple gripper as its end-effector* (2 finger like PR2 will do just fine).
I tried to use a pr2 gripper with ur5 but I think I am not able to get the controllers right. Also the motion planning gets really weird in moveit after adding the gripper.
↧
Not being able to calculate the height in ardrone gazebo simulator
Hey guys, I am relatively new to ros and c++, i am trying to implement pid controller on ardrone using ros indgio. for doing this I want to calculate(print) the height at which the quadcopter is flying. when I am doing rostopic echo "ardrone_autonomy/Navdata" , i can read the height but when I tried to subscribe to the topic to print the height, I am getting blank in the terminal. following is my code
#include "ros/ros.h"
#include "std_msgs/Empty.h"
#include "ardrone_autonomy/Navdata.h"
#include
using namespace std;
class trajectory{
public:
void height(const ardrone_autonomy::Navdata::ConstPtr& hmsg)
{
double x = hmsg->altd; `
(ROS_INFO("HEIGHT IS : %f",x);
}
};
int main(int argc, char **argv)`
{
ros::init(argc, argv, "pid");
ros::NodeHandle n;
ros::Publisher takeoff_pub = n.advertise("/ardrone/takeoff", 10);
std_msgs::Empty msg;
ros::Duration(0.5).sleep();
takeoff_pub.publish(msg);
trajectory traj;
ros::Duration(0.3).sleep();
ros::Subscriber sub = n.subscribe("/ardrone_autonomy/Navdata",100,&trajectory::height,&traj);`
ros::spin();
return 0;
}
Thank you
↧
ImportError: No module named rospkg
Hello All,
After installing ROS on my Ubuntu, I was trying to follow the tutorials under the simulator_gazebo. But I have gotten an error message for this command:
rosrun gazebo spawn_model -file `pwd`/object.urdf -urdf -z 1 -model my_object
Error message:
ImportError: No module named rospkg
Could it be from the installation? I think everything went well during the installation.
Any thoughts?
Thanks,
↧