SCSC 585 Introduction to Computer Vision

advertisement
ROBOTICS AT USC UPSTATE
We focus on developing novel and innovative robotics applications.
First, let’s talk about the RULES!!!!

RULE 1: If we are doing an in-class assignment or activity and you are not
in class that day, you automatically loose 50 points from this
assignment/activity grade and cannot make this up.

RULE 2: Absolutely no food or drinks of any kind on your robot
table/workarea.

RULE 3: You must leave your work station exactly the way you found it your workstation must be properly cleaned up after activities/assignments
are completed.

RULE 4: When debugging or running a program, be prepared to press the
Emergency Stop button at any time.
More RULES!!!!

RULE 5: Check that no-one is within the robot work envelope when
switching arm power on or moving the robot. Always take tool offsets into
account. Putting someone in an un-safe situation results in an
automatic F in the course. No exceptions.

RULE 6: When running a program, the speed on the arm MUST NEVER be
set higher than 10% without explicit approval from the instructor first.
Putting anybody in an un-safe situation results in an automatic F in
the course. No exceptions.

RULE 7: Always be aware of your surroundings. Alert others
IMMEDIATELY if you observe a possibly dangerous situation. Putting
anybody in an un-safe situation results in an automatic F in the
course. No exceptions.
Course Grading
Machines in the lab…




Five Stäubli RX60 arms with CS7B controllers
 6 dof, Programming environment: V+
Three Adept 550 arms
 4 dof, Programming environment: V+
One Staubli RS20
 4 dof, Programming environment: VAL3
One Fanuc LR Mate 200iC
 6 dof, Programming environment: TPP
Stäubli RX60s

Some Notable features:
 Cables pass through inside of joint gearing
 Stäubli first to make this work…
 All motors enclosed
 Reduces particle emissions
 The two-click air-pressure release value
 Designed by Stäubli and was an important contribution to
industrial robotics.
 Maintenance is easy
 Show in class how to check oil and feel for wear.
 Repair Process (typical in industry)
 Motors, amps, etc that fail are simply swapped for new
components. No trying to fix the faulty component… Why?
What’s going on inside the machine?


Not the focus of what we do, but here are the
basics.
Inside the arm…
Motor for
joint 1
Motor for
joint 3
Motor for
joint 2
What’s going on inside the machine?
Each joint has
an amplifier that
controls the
electricity to it.
Of course several other
electronics are present,
a hard drive, CPU, etc,
etc
Community Partnerships

Stäubli



Initial donations of our robotic equipment
Paid internship available
This could be
SEW Eurodrive


Paid internship available
$30,000 cash donation to fund:


YOU
Student Research Assistant here in robotics lab!
Robotics Summer Camp

Materials, food, pay a student assistant
About Stäubli…



Stäubli is a mechatronics solution provider
with three dedicated divisions: Textile
machinery, Connectors and Robotics.
With a workforce of over 3000, the company
generates a yearly turnover surpassing 1
billion Swiss francs.
Originally founded 1892 as a small workshop
in Horgen / Zurich, Stäubli today is an
international group with its head office in
Pfäffikon, Switzerland.
About SEW Eurodrive…




A world leader in drive technology and a pioneer in drivebased automation.
Power transmission and motion control products.
Introduced the gearmotor in 1931.
History of innovations — the first variable speed
gearmotor, early development of electronic drives, some
of the first successful efforts to decentralize control and
the first motor with energy-efficient copper rotors.
Curriculum Development

Available Courses:





SCSC 314 Introduction to Robotics
SCSC 399 Independent Study (with van Delden)
SCSC 580 Introduction to Artificial Intelligence
SCSC 585 Introduction to Computer Vision
Automation Focus Area in Computer
Information Systems degree.

A collaboration between Computer Science,
Engineering Technology Management, and
Business.
Curriculum Development cont…
Peer-Reviewed / Published Research

Several papers published recently:
Sebastian van Delden. 2010. Getting Your Robotic Arms around Computing Curricula. In the Journal
of Computers in Education. Published by the American Society for Engineering Education. vol
1(4). Pp 91-101. Oct-Dec Volume.
Sebastian van Delden. 2010. Computer Science Meets Industrial Robotics: A Visual Servoing Project
for a Computer Vision Course. In the Journal of Computing Sciences in Colleges. Volume 25,
Number 6. Pages 85-92. Select papers from the 15th Annual Northeast Meeting of the Consortium
for Computing Sciences in Colleges. Hartford University.
Sebastian van Delden. 2010. Industrial Robotic Game Playing: An AI Course. In the Journal of
Computing Sciences in Colleges. Volume 25, Number 3. Pages 134-142. Select papers from
the 25th Annual Eastern Meeting of the Consortium for Computing Sciences in Colleges.
Villanova University, Pennsylvania. January 2010.
Sebastian van Delden and Nicole Tobias. 2010. A Novel Approach to 3D Contour Recovery using
Structured Light Mounted to a Robotic Manipulator. In the Proceedings of the 15th IASTED
International Conference on Robotics and Applications, Cambridge, MA, Pages 167-173, Nov
1-3, 2010.
Sebastian van Delden and Frank Hardy. 2009. Robotic Eye-in-hand Calibration in an Uncalibrated
Environment. In the Journal on Systemics, Cybernetics and Informatics. Volume 6, Number 6.
Pages 67-72.
****Student coauthor
Peer-Reviewed / Published Research

Several papers published recently:
Sebastian van Delden and Wei Zhong. 2008. Effective Integration of Autonomous Robots into an
Introductory Computer Science Course: A Case Study. Journal of Computing Sciences in
Colleges. Select papers from the Sixth Meeting of the Consortium for Computing Science in
Colleges, vol 23(4), pp. 10-19, April 2008.
Sebastian van Delden and Benjamin Overcash. 2008. Towards Voice-Guided Robotic Manipulator
Jogging. In Proceedings of the 12th World Multiconference on Systemics, Cybernetics and
Informatics. Volume 3. Pages 138-144. Orlando, FL. July 2008.
Sebastian van Delden, Ricky Farr, and Seth Hensley. 2007. An Automated Camera Orientation
Recovery Algorithm for an Eye-in-Hand Robotic Manipulator. In Proceedings of the 5th IEEE
International Workshop on Robotic and Sensors Environments. Pages 1-6. Ottawa, Canada.
October 12-13, 2007.
Sebastian van Delden. 2006. Constructing a Simple Visually-Guided Robotic Part-Grasping System
with Off-the-Shelf Components. In Proceedings of the 18th IEEE International Conference on
Tools with Artificial Intelligence. Pages 211-216. Washington, DC. November 13-15th, 2006.
****Student coauthors
Other Research Contributions
Alex Umrysh and Sebastian van Delden. 2011. Object recognition in a Robot Workarea
using Hand Gestures. Poster at the 7th Annual SC Upstate Research Symposium.
April 15, 2011.
Nicole Hodge and Sebastian van Delden. 2010. Contour Recovery using Structured
Light mounted to a Robotic Manipulator. Poster at Discovery Day 2010, USC
Columbia. April 23rd, 2010. ****Best Poster Award for “Computer
Science and Engineering”
Nicole Hodge, Robert Mahmoudishad, Mark Parrish, and Sebastian van Delden.
2009. A Novel Robotic Approach to Contour Recovery using Structured Light.
Presented at the Fifth Annual USC Upstate Research Symposium. March 27th,
2009
Derrick Thompson, Jose Reyes, and Sebastian van Delden. Spring 2007. Vision-Based
Robots Playing Pong. Presented at the Third Annual USC Upstate Research
Symposium. April 6th, 2007.
William Bittle, Sayed Shahabi, Ashley Bryant and Sebastian van Delden.
WOODBURNER: An Automated Robotic Character Etching System. Poster at the
Second Annual USC Upstate Research Symposium. April 21st, 2006.
*** STUDENT COAUTHORS
Ongoing projects. Need Help!

Rapid Robotic Application Development using visual and voice
cues



Android/Robot/Bluetooth:


http://www.youtube.com/svandelden#p/u/8/dsdh2WlWwys
Summer Camps:


http://www.youtube.com/uscupstateresearch#p/u/5/UIVM8SByVDs
http://www.youtube.com/watch?v=dxo1NbBblE4
http://www.youtube.com/svandelden#p/u/6/3mItUbcqWms
New ideas?

Have a neat idea you want to implement?
INTRODUCTION TO INDUSTRIAL
ROBOTICS
Sebastian van Delden
USC Upstate
svandelden@uscupstate.edu
Industrial Robotics

Primarily assist in the automaton of the
manufacturing process




78% welding and material handling
10% assembly
Over a billion dollars of new industrial robots
shipped to North America each year on
average.
However, America lags behind several
European and Asian countries.
Trends in Industrial Robots
Industrial Robots currently in use
Why Automate??



Robot prices continue to drop while labor wages
grow
Faster, more accurate/flexible
Operate in dangerous environments
Example Robot Makers
Maker
Programming Language*
ABB
FANUC
HP
IBM
Motoman (Yaskawa)
Staubli
AMPL
Karel, Proficy
MDS
AML
JRC
V+, VAL3
* Are constantly evolving, with the new trend in off-line
programming environments…
What do you study in Robotics?

Depends…


Engineering programs would focus on the actual
physical design of the machine, motors, gearing
etc.
Computing programs would focus more on the
application side of robotics: programming,
incorporating input sensors (cameras, etc),
networking/communication, etc..



Programming the machine to do something interesting.
Our focus here at USC Upstate
Tech programs would focus on basic electronics,
maintaining/servicing the machines, etc…
BASIC INDUSTRIAL ROBOTICS
CONCEPTS
Which will be covered in this course…
Representing Objects in 3D Space

Position and Orientation


A frame is rigidly attached to each object to define
position and orientation
A frame is just a 3D coordinate system.
Transformations

Moving one frame with respect to another
one is called a transformation.
Matrices and Transformations


We will learn how to use matrices to
internally represent and manipulate
transformations, and position and orientation
information
Applicable to several fields:



Robotics
3D modeling and programming
Computer Vision
Some Manipulators Concepts





Consists of rigid links and joints which allow
relative motion of neighboring links
The orientation of a rotary joint is measured with
a joint angle.
Orientation of a prismatic (sliding) joint is
measured with a joint offset.
The number of degrees of freedom (dof) is the
number of joints of a manipulators.
Singularity Point – Manipulator try to move its
joints at infinite speed to continue fluid motions.
(gunner example)
Some Manipulators Concepts cont…

An end-effector is what is attached at the free
end of the robot





Gripper, pointer, welder, camera, etc..
Represented with a tool frame
A base frame is attached to the non-moving
base. Frames are also assigned to each joint.
The robot’s work envelope (or work space) is
everything that the robot can reach.
Manipulator jogging is the process of manually
moving the arm around.
Typical frames in a robotic
environment
Typical work envelope schematics
Input/Output

A robot can gathering data from its environment
with input sensors



Buttons, switches, keyboard, microphone, camera
A robot uses its actuators (motors) and endeffectors (grippers, etc) to effect its
surroundings.
We’ll learn how to make our robots gather
images from a camera so that it can interact
with the environment based on this visual data.
Kinematics


Treats motion without regard to the forces which
cause it.
Forward Kinematics of Manipulators:



compute position and orientation of the end effector given a
set of joint angles.
EASY(er)
Inverse Kinematics of Manipulators:



given the position and orientation of the end effector,
calculate all possible joint angles that could achieve this
position and orientation.
HARD
Staubli RX60s – As many as 8 possible ways to achieve end
effector pose
Typical robot schematic/dimensions – needed to calculate Kinematics
Finally, by the end of this course, we’ll
know how to





Program and operate our Stäubli V+
manipulators.
Do simple Stäubli VAL3 and Fanuc TPP
programming.
Calculate end-effectors transformations and other
gripper concepts.
Calculate the Forward Kinematics of a
manipulator.
Understand basic Inverse Kinematics and
trajectory generation.
Download