IE-482-582 / spring2023

5 stars 8 forks source link

Course Project #9

Open cmurray3 opened 1 year ago

cmurray3 commented 1 year ago

The course project is due at the end of finals week (see key dates below). I'll introduce the project in class today (Thursday, March 30).

You may work individually or with one teammate (i.e., teams of size 1 or 2, only).

The purpose of the project is for you to develop something robotics-related that goes beyond what we've done in class. Here are some project ideas:

You are welcome to propose other ideas. I'll help you determine a scope that is reasonable.


IMPORTANT DATES:

cmurray3 commented 1 year ago

I just discovered this ROS plugin that can be used to move human models in Gazebo. Might be very useful to some of your projects:

juliapai13 commented 1 year ago

http://wiki.ros.org/action/show/universal_robots?action=show&redirect=universal_robot

This is what we did to follow their installation instructions for the UR robot:

sudo apt-get install ros-noetic-universal-robots cd catkin_ws/src/ git clone -b melodic-devel https://github.com/ros-industrial/universal_robot.git rosdep update cd .. rosdep install --from-paths src --ignore-src --rosdistro noetic catkin_make source ~/catkin_ws/devel/setup.bash

cmurray3 commented 1 year ago

http://wiki.ros.org/action/show/universal_robots?action=show&redirect=universal_robot

This is what we did to follow their installation instructions for the UR robot:

sudo apt-get install ros-noetic-universal-robots cd catkin_ws/src/ git clone -b melodic-devel https://github.com/ros-industrial/universal_robot.git rosdep update cd .. rosdep install --from-paths src --ignore-src --rosdistro noetic catkin_make source ~/catkin_ws/devel/setup.bash

I was able to install the UR5 Gazebo simulation using the steps below.


Installing the ur_gazebo package

These steps were modified from http://wiki.ros.org/ur_gazebo

Run the following commands in a terminal window:

sudo apt-get update
sudo apt-get install ros-noetic-ur-gazebo
sudo apt-get install ros-noetic-ur5-moveit-config

I also tried the following command, but got an Unable to locate package ros-noetic-ur-kinematics error. It appears that things will still run without this package, but I'm documenting it here just in case.

sudo apt-get install ros-noetic-ur-kinematics

Running the Simulation

  1. Terminal 1

    roscd ur_gazebo/launch
    roslaunch ur5_bringup.launch
  2. Terminal 2

    roscd ur5_moveit_config/launch
    roslaunch ur5_moveit_config moveit_planning_execution.launch sim:=true
  3. Terminal 3

    roscd ur5_moveit_config/launch
    roslaunch ur5_moveit_config moveit_rviz.launch config:=true

In RVIZ:

  1. Set Fixed Frame as base or world
  2. Add --> RobotModel
  3. Add --> MotionPlanning

Unfortunately, the steps above do not produce a simulated UR5 with a gripper attachment (end effector).

The link below is the best documentation I've seen thus far on adding a gripper (although i haven't actually put the tutorial to use): https://roboticscasual.com/ros-tutorial-how-to-create-a-moveit-config-for-the-ur5-and-a-gripper/

Here are some other reference materials that didn't prove to be too helpful:

cmurray3 commented 1 year ago

Also, this repo may be helpful for those using the UR5:

ne-gul commented 1 year ago

student@vm:/opt/ros/noetic/share/ur_gazebo/launch$ roscd ~ roscd: No such package/stack '/home/student' student@vm:/opt/ros/noetic/share/ur_gazebo/launch$ cd ~ student@vm:~$ roscd ur_gazebo/launch student@vm:/opt/ros/noetic/share/ur_gazebo/launch$ roslaunch ur5_bringup.launch ... logging to /home/student/.ros/log/15e1f174-e384-11ed-a105-457a0dee39b8/roslaunch-vm-7640.log Checking log directory for disk usage. This may take a while. Press Ctrl-C to interrupt Done checking log file disk usage. Usage is <1GB.

name 'xacro' is not defined when evaluating expression 'xacro.load_yaml(joint_limits_parameters_file)' when evaluating expression 'config_joint_limit_parameters['joint_limits']' when evaluating expression 'sec_limits['shoulder_pan']['min_position']' when instantiating macro: read_model_data (/opt/ros/noetic/share/ur_description/urdf/inc/ur_common.xacro) instantiated from: ur_robot (/opt/ros/noetic/share/ur_description/urdf/inc/ur_macro.xacro) instantiated from: ur_robot_gazebo (/opt/ros/noetic/share/ur_gazebo/urdf/ur_macro.xacro) in file: /opt/ros/noetic/share/ur_gazebo/urdf/ur.xacro RLException: while processing /opt/ros/noetic/share/ur_gazebo/launch/inc/load_ur5.launch.xml: while processing /opt/ros/noetic/share/ur_gazebo/launch/inc/load_ur.launch.xml: Invalid tag: Cannot load command parameter [robot_description]: command [['/opt/ros/noetic/lib/xacro/xacro', '/opt/ros/noetic/share/ur_gazebo/urdf/ur.xacro', 'robot_model:=ur5', 'joint_limit_params:=/opt/ros/noetic/share/ur_description/config/ur5/joint_limits.yaml', 'kinematics_params:=/opt/ros/noetic/share/ur_description/config/ur5/default_kinematics.yaml', 'physical_params:=/opt/ros/noetic/share/ur_description/config/ur5/physical_parameters.yaml', 'visual_params:=/opt/ros/noetic/share/ur_description/config/ur5/visual_parameters.yaml', 'transmission_hw_interface:=hardware_interface/EffortJointInterface', 'safety_limits:=false', 'safety_pos_margin:=0.15', 'safety_k_position:=20']] returned with code [2].

Param xml is The traceback for the exception was written to the log file

cmurray3 commented 1 year ago

A tutorial on using the UR5 on a Clearpath Husky rover:

cmurray3 commented 1 year ago

Only one person (the team leader) on each team should click the link below to create the team's final repository: https://classroom.github.com/a/TeUcpsRO

Edit the README.md template and upload all of your project code.