hello-robot / stretch_ros Goto Github PK
View Code? Open in Web Editor NEWROS packages for the Stretch mobile manipulators from Hello Robot Inc.
Home Page: https://docs.hello-robot.com/0.2/stretch-tutorials/ros1/
ROS packages for the Stretch mobile manipulators from Hello Robot Inc.
Home Page: https://docs.hello-robot.com/0.2/stretch-tutorials/ros1/
Hi, I didn't any instructions on this so thought I'd quickly ask - does FUNMAP currently run on Gazebo (sorry for repeating the title)?
Hi,
A colleague and I are writing a robotics book centralized around the theme about how to make "actual" robots work in the "actual" world containing content on mobile, manipulation, perception, and architecture. We need a mobile-manipulator robot to centralized around for all of the chapters of the book and we are considering Stretch. However, we require this book to be in ROS2 and we don't see a ROS2 branch / support. Is this something that is in the works or will be released in the near-term future?
Hello, I'm Shingo Kitagawa at JSK lab, UTokyo.
We got Stretch-RE1 + dexterous gripper, and dexterous gripper STL and urdf is not commited to this repo.
Can we check the license of the uncomitted gripper STL and urdf?
If they are under BSD3 license as same as other STL model, can I make a PR to add dexterous gripper to this repo?
Thank you.
In Noetic on Ubuntu 20.04, seeing the following error when attempting to perform a calibration check:
[INFO] [1634509852.211036]: Loading factory default tilt backlash transition angle from the YAML file named /home/hello-binit/catkin_ws/src/stretch_ros/stretch_core/config/controller_calibration_head_factory_default.yaml
...
Traceback (most recent call last):
File "/home/hello-binit/catkin_ws/src/stretch_ros/stretch_calibration/nodes/collect_head_calibration_data", line 656, in <module>
node.main(collect_check_data)
File "/home/hello-binit/catkin_ws/src/stretch_ros/stretch_calibration/nodes/collect_head_calibration_data", line 613, in main
controller_parameters = yaml.load(fid)
TypeError: load() missing 1 required positional argument: 'Loader'
...
[collect_head_calibration_data-10] process has died [pid 114636, exit code 1, cmd /home/hello-binit/catkin_ws/src/stretch_ros/stretch_calibration/nodes/collect_head_calibration_data --check __name:=collect_head_calibration_data __log:=/home/hello-binit/.ros/log/e17513ac-2f99-11ec-ab08-594089ec0616/collect_head_calibration_data-10.log].
log file: /home/hello-binit/.ros/log/e17513ac-2f99-11ec-ab08-594089ec0616/collect_head_calibration_data-10*.log
When nothing is happening in the simulation stretch will drift off and spin a little in simulation. This is noticeable in a short period of time and even more so when gazebo is left open for longer when you are testing code periodically.
I am using dev/noetic branch.
Time 0 min:
Time 5 min:
Eventually the robot will be facing up against the wall and driving into it.
Hello!
After my own run, the keyboard_teleop control for "pan right" should be "L" instead of "K". Since these two letters are next to each other on the keyboard, I assume it might be a typo
Hello,
mobile base IMU and magnetometer topics frame is imu_mobile_base
but it is not available in stretch_description
. Can you add it? Or just post translation and orientation wrt to base_link
or base_footprint
...
Regards,
Marek
The teleop_twist launch file in Stretch Core make it convenient to set up either keyboard or joystick teleop of twist messages. The joystick teleop isn't working since the "enable_button" param is configured incorrectly.
Hello,
I am working on a project an intern last worked on and want to familiarize myself with the camera on this stretch-re1 device. I have tried creating a simple python script using openCV however I keep getting errors saying that I cannot access the camera via index. I have searched through the forums and found this link: https://forum.hello-robot.com/t/recording-video-from-the-camera/170 but the script the poster provided has not worked for me.
I simply want to use openCV (or any alternative) to capture an image, utilize that image, and then operate the robot.
Any help would be greatly appreciated.
I wanna control 2 stretchs or multiple stretchs.
but there are some reference for 1 fetch.
how can I put many stretchs and how can I control them??
I heard that I have to make "group ns="robot1",,, group ns="robot2" " like that...
but its now working.
there have some error.
"cannot parseURDF"
or
"cannot load controllers"
or
" No p gain specified for pid. "
there are lots of error and I tried many times.
please I wanna get some document for controlling multi stretchs.
does it have some solution of using multiple stretchs in GAZEBO ?
I've noticed that I have to run quite small stepsizes to get reasonable behavior from the simulator (see #40) and end up getting about half realtime performance. One part of the simulation that jumps out for possible performance optimization is the collision geometry. Currently, the URDF reuses the display meshes for collision bounds:
stretch_ros/stretch_description/urdf/stretch_main.xacro
Lines 39 to 47 in 203726e
These should use simplified meshes or primitives where possible.
Hi!
I've just learned about your robots and came across your repositories. Many thanks for open sourcing so much of your software stack! I'll most likely feature it in Weekly Robotics sooner or later.
Are you planning to release a gazebo simulation for this platform? I think it would be an interesting learning tool.
High angular velocitie are likely resulting in unstable dynamics of the robot arm. When angular velocities higher than 0.3 rad/s
are published to the Stretch in Gazebo simulation, the robot becomes very unstable with motion and arms shaking heavily.
https://forum.hello-robot.com/t/instability-found-with-gazebo-model-with-dex-wrist/808
Hi, I have been working more with stretch in simulation and have noticed a message like
rostopic pub -r 60 /stretch_diff_drive_controller/cmd_vel geometry_msgs/Twist "linear: x: 0.1 y: 0.0 z: 0.0 angular: x: 0.0 y: 0.0 z: 0.0"
will cause the robot to move backwards which I believe is not intentional.
Screencast from 01-11-2023 04:38:52 PM.webm
On the Noetic branch, the demos from the Stretch Deep Perception package do not work due to a conflict between opencv-contrib-python
, the Python OpenCV package with support for Aruco marker detection, and opencv-python-inference-engine
, the OpenCV package with support for OpenVINO which is used by the deep perception demos. They conflict because they both claim the same namespace, cv2
. On the Melodic branch, the conflict was avoided since opencv-python-inference-engine
was installed in Python3, while opencv-contrib-python
was installed in Python2. Since Noetic relies on Python3, we'll need use a separate Python virtual environment to separate the two conflicting OpenCV packages.
Hello and thanks for maintaining this repository ๐
I was wondering if you would consider distributing compiled URDF files alongside Xacro files?
Distributing URDF files is common in open source robot descriptions on GitHub. For instance, in the Awesome Robot Descriptions list, 57 / 79 descriptions are URDF while 9 / 79 are Xacro-only.
Distributing URDF also makes it one-shot to load the robot description in popular (non-ROS) software such as Pinocchio and PyBullet, for instance via robot_descriptions.py:
from robot_descriptions.loaders.pinocchio import load_robot_description
stretch = load_robot_description("stretch_description")
Right now this snippet will load the description from this repository, but it would be better if it would load the description straight from the official repository.
When launched keyboard teleop using roslaunch stretch_core keyboard_teleop.launch
, pressing the c
key while the robot has the standard gripper configured will cause the node to emit the following error:
Traceback (most recent call last):
File "/home/hello-robot/catkin_ws/src/stretch_ros/stretch_core/nodes/keyboard_teleop", line 436, in <module>
node.main()
File "/home/hello-robot/catkin_ws/src/stretch_ros/stretch_core/nodes/keyboard_teleop", line 413, in main
self.send_command(command)
File "/home/hello-robot/catkin_ws/src/stretch_ros/stretch_core/nodes/keyboard_teleop", line 331, in send_command
joint_index = joint_state.name.index(joint_name)
ValueError: 'joint_wrist_pitch' is not in list
[keyboard_teleop-5] process has died [pid 3598, exit code 1, cmd /home/hello-robot/catkin_ws/src/stretch_ros/stretch_core/nodes/keyboard_teleop __name:=keyboard_teleop __log:=/home/hello-robot/.ros/log/6e4d0110-2443-11ed-ba38-1c697a0e6523/keyboard_teleop-5.log].
log file: /home/hello-robot/.ros/log/6e4d0110-2443-11ed-ba38-1c697a0e6523/keyboard_teleop-5*.log
Here's a video of how the current simulation behaves when trying to pick up a coke can:
https://drive.google.com/file/d/145Gu7RzlPUGtJEBlLAHFDucbPxuanf0W/view?usp=sharing
(A solid antipodal grasp causes large forces in the gripper and the object. The object pops out of the gripper and the robot shudders).
This behavior is due to the incomplete specification of the simulated motor controller parameters. Without gains, no actual simulation of the joints is occurring. Instead, the default gazebo hardware plugin is ignoring dynamics and forcing the joints into the target positions.
I have a near-complete patch that resolves this behavior, but I haven't had luck stabilizing the wheel joints. I'm happy to start a PR with these changes (and maybe someone with more Gazebo expertise can figure out what's going on with the wheels!), but the plausible simulation may disrupt use cases that depend on the current behavior, so I thought it would be good to encourage discussion from any other simulation users first.
I am running MoveIt1 on the stretch robot but it is not able to execute the plan on the actual robot.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.