CSE240 - Arizona State University

Download Report

Transcript CSE240 - Arizona State University

ASU 101
Introduction to Robotics and
Robotics Programming
Yinong Chen
101
Y Chen
7/20/2015
1
SCI Faculty in Robotics Computing











101

Y Chen

7/20/2015

Chitta Baral: AI, Autonomous agents, cognitive robotics
Subbarao Kambhampati: AI, Automated planning,
Machine learning
Pat Langley: AI, machine learning
Yann-Hang Lee: Real-time, embedded systems
W.T. Tsai: Service-oriented robotic computing
Sarma Vrudhula: Embedded systems, power management
Sandeep Gupta: Mobile computing, wireless and embedded
sensor networks
Huan Liu: Machine learning, AI, Social computing
Arunabha Sen: Wireless and mobile networks
Winslow Burleson: Human-Computer Interaction
Baoxin Li: Computer vision
Jieping Ye: Machine learning
Dirk Colbry: Robotics, Cognitive science, AI
Yinong Chen: Robotics education
2
What is a Robot?
A robot is a mechanical or virtual artificial agent.
It is usually a system, which, by its appearance or movements,
conveys a sense that it has intent or agency of its own.
[http://en.wikipedia.org/wiki/Robot]
Coroware
101
Kuka
Robosoft
Robotics
Connection
Y Chen
7/20/2015
Mindstorm
NXT
iRobot
3
What is a Robot?




Many devices with varying degrees of
autonomy are called robots.
Many different definitions for robots
exist.
Some consider machines wholly
controlled by an operator to be robots.
Others require a machine be easily
reprogrammable.
101
Y Chen
7/20/2015
4
Robot Classes

Manipulators: robotic arms. These are
most commonly found in industrial
settings.

Mobile Robots: unmanned
vehicles capable of locomotion.

Hybrid Robots: mobile robots
with manipulators.
101
Y Chen
7/20/2015
5
Robot Components







Body
Effectors
Actuators
Sensors
Computer hardware
Computer software
Networking and communication
101
Y Chen
7/20/2015
6
Robot Body

Typically defined as a graph of links and
joints:
101
Y Chen
7/20/2015
7
Types of Joints
• A ball joint allows rotation
around x, y, and z,
• A hinge joint allows rotation
around z,
• A slider joint, which allows
translation along x.
101
Y Chen
7/20/2015
8
Robot Effectors


Component to accomplish some desired
physical functions
Examples:




Hands
Torch
Wheels
Legs
101
Y Chen
7/20/2015
9
Roomba Effectors
101
Y Chen
7/20/2015
10
Robot Actuators


Actuators are the “muscles” of the robot.
These can be electric motors, hydraulic
systems, pneumatic systems, or any other
system that can apply forces to the
system.
101
Y Chen
7/20/2015
11
Robot Sensors
Sensors can be active or passive:
 Active – derive information from
environment’s reaction to robot’s
actions, e.g. bumpers and sonar.
 Passive – observers only, e.g. cameras
and microphones .
101
Y Chen
7/20/2015
12
Sensor Classes: Ranging sensors




101
Ranging sensors, such as
 sonar,
 ultrasonic,
 IR, and
 laser sensors:
These sensors return the distance to
the object.
They typically have two lens (eyes).
One sends out a light beam and the
other receives the reflected beam.
By measuring the time and angle of
reflected beam, as shown in the
Figure on the right, the sensors can
measure the distance to the object
Y Chen
7/20/2015
13
Sensor Classes: Other Sensors
There are many types of sensors

Contact (touch) sensor: A signal is
generated when touched

Compass (magnetic) sensor
GPS (Global Positioning System)
Color sensor: return different value
for different colors
Temperature sensor
Return the temperature
Vehicle accelerometer sensor
Vehicle tire pressure sensor
…




101
Y Chen


7/20/2015
14
Software Architecture
for Robotics Computing

Robotics control methods include
deliberative methods and reactive
methods.



Deliberative methods are model-driven and
involve planning before acting.
Reactive methods is event-driven and
behavior must emerge from interaction.
Hybrid architectures are software
architectures combining deliberative and
reactive controllers.
101
Y Chen
7/20/2015
15
Routine of a Medical Professor
in Model-Driven Approach
In Office
Outside office
Research
Consult students
Write proposal
See ICU patients
Teaching Prep
Teach a course
See out-patients
See all in-patients
Read reports
101
Y Chen
7/20/2015
See ICU patients
16
Research
Event
Board
Write proposal
Teaching Prep
Student questions
Notification
Student questions
Student questions
Student questions
Student questions
Answer student
questions
Teach a course
See out-patients
Read reports
Alert
Board
Interrupt /
Notification
Routine of a Medical Professor
in Event-Drive Approach
Outside office
ICU patient
ICU patient
ICU patient
101
Y Chen
7/20/2015
See all in-patients
17
Model-Driven Programming
Main
Methods/Services
Temperature
Exchange
rate
Breaking
News
101
Y Chen
7/20/2015
18
Main
Control the
motors
Event
Board
Receiving
information
from base
station
Sonar sensor
Notification
Temperature
sensor
Compass sensor
Read Sensors
Decryption
Image
processing
Sending
information to
base station
Alert
Board
Interrupt /
Notification
Event-Drive Programming
Parallel Activities
Touch Sensor 1
Touch Sensor 2
Fire Sensor
101
Y Chen
7/20/2015
Encryption
19
Event-Driven Programming


In computer programming, event-driven
programming is a programming paradigm
which allows interactions between the
computer program and the user or the
environment;
The execution flow of the program is
determined by
•
•
101
Y Chen
7/20/2015
•
user actions, such as mouse clicks, key presses
in GUI programming!
sensor outputs (e.g., touch sensor, motion
sensor, etc.), and
messages from other programs
20
Sensors and Actuators
in a Simple Robotics Application
101
Y Chen
7/20/2015
21
Communication between
Activities and Services
Event!
101
Y Chen
7/20/2015
22
Robot Ethics: Three Laws of Robotics
Isaac Asimov:
1.A robot may not injure a human being or, through inaction,
allow a human being to come to harm.
2.A robot must obey orders given to it by human beings, except
where such orders would conflict with the First Law.
3.A robot must protect its own existence as long as such
protection does not conflict with the First or Second Law.
101
Y Chen
7/20/2015
23
Arizona Robotics Challenge
ASU versus UoA
http://asusrl.eas.asu.edu/srlab/Research/RoboticsChallenge.html
101
Y Chen
7/20/2015
1
Remote commanded patrolling
2
Floor plan learning
3
Unmanned patrolling and object detection
4
Intruder detection
5
Other Security features, such as fire detection
24
Game 1:
Remote Commanded
16 ft
Remote
Monitor Station
22 ft
101
Y Chen
32 ft
7/20/2015
25
Game 2: Floor plan Detection
Real map
101
Y Chen
7/20/2015
Detected map
How similar are they?
26
Game 3: Object
Detection
Remote
Monitor Station
101
Y Chen
7/20/2015
Objects will have minimum dimensions
(W,L,H) of 8 inches
27
Game 4: Intruder Detection
Remote
Monitor Station
101
Y Chen
7/20/2015
28
Game 5: Fire Detection
Remote
Monitor Station
101
Y Chen
7/20/2015
29