# Robots, vision, and Wiimotes

AI and Robotics

Nov 14, 2013 (4 years and 5 months ago)

75 views

Robots, vision, and Wiimotes

Palmer Dabbelt

Gautam Shine

Monica Yang

James Kim

Background

3
rd

semester of this project

Goals:

Control a robotic arm using different methods with a Wiimote

Do vision
-
based control

We used the rhino robotic arms in the course
ECE 470

Held an EOH exhibit to give people an exposure
to robotics

Automatic Vision Control

Implemented using NI
Vision, a computer
vision library from NI

Uses a thresholding
algorithm to detect
blocks from an image

Improved calibration
this semester

LabVIEW front panel

LabVIEW block diagram

PID control

A PID (Proportional
-

Integral
-

Derivative) controller is a
common closed loop controller

It continuously measures the error in the robot’s position
and corrects it based on:

the current error (P)

the sum of the recent errors (I)

how fast the error is changing (D)

These three measurements are scaled and summed

End Effector Motion
Control

Previously each Wiimote
button/motion swing controlled one
of the Rhino’s six motors

Hard for humans to use the robot easily

We mostly only care where the gripper is

End effector control

user only controls the end effector (the
gripper) in x
-
y
-
z coordinate space
rather than worrying about the angle of
each motor

q
1

q
2

q
3

q
4

q
5

(x,y,z)

1 2 3 4 5
1 2 3 4 5
motor positions (,,,,) 5 DOF
motor velocities (,,,,) 5 DOF
end effector position (,,,,,) 6 DOF
end effector velocity (,,,,,) 6 DOF
( )
q q q q q
q q q q q
x y z
x y z



q
q
ζ
ζ
ζ J q q
1
1 1
a relation for any robot
( ) this sometimes exists
( ) ( )
T T

 

J q
ζ q
J q J JJ
q
1

q
2

q
3

q
4

q
5

End Effector Control: Velocity

End Effector Control: Position

Traces trajectories in space

Less ideal, but simpler

Position based control:

Wiimote outputs a desired velocity

We calculate the future position and break it up into many intervals

For each interval, we use inverse kinematics to command a certain
position a short time into the future

User Interface Design

What the engineer designed…

What the user wanted….

Short slide show of 5 stages

Evaluating LabVIEW as a platform

Vision library helpful for quick implementation

Large community code base

Free code to connect Wiimote via bluetooth

NI hardware straightforward and modular

helped as our plans changed

Code was memory intensive

Crashed and need reboot every few hours

EOH Demo

Completed our demonstration in time for
EOH

Very kid
-
friendly exhibit

Hundreds of visitors

Good to create a project that was used

Thank You

Questions?