0% found this document useful (0 votes)
63 views10 pages

PT Engleza (Trebuie Tradus Tot)

This paper presents a geometric approach to solve the unknown joint angles required for the autonomous positioning of a robotic arm. This modeling and analysis approach is tested using a five-degree-of-freedom arm with a gripper style end effector mounted to an iRobot create mobile platform. The geometric method is easily modifiable for similar robotic system architectures and provides the capability of local autonomy to a system which is very difficult to manually control.

Uploaded by

Spring Report
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
63 views10 pages

PT Engleza (Trebuie Tradus Tot)

This paper presents a geometric approach to solve the unknown joint angles required for the autonomous positioning of a robotic arm. This modeling and analysis approach is tested using a five-degree-of-freedom arm with a gripper style end effector mounted to an iRobot create mobile platform. The geometric method is easily modifiable for similar robotic system architectures and provides the capability of local autonomy to a system which is very difficult to manually control.

Uploaded by

Spring Report
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 10

Hindawi Publishing Corporation

Journal of Robotics
Volume 2010, Article ID 984823, 10 pages
doi:10.1155/2010/984823

Research Article
A Geometric Approach for Robotic Arm Kinematics with
Hardware Design, Electrical Design, and Implementation

Kurt E. Clothier and Ying Shang


Department of Electrical & Computer Engineering, Southern Illinois University Edwardsville,
Campus Box 1801, Edwardsville, IL 62026, USA

Correspondence should be addressed to Ying Shang, yshang@siue.edu

Received 24 May 2010; Accepted 18 August 2010

Academic Editor: Huosheng Hu

Copyright © 2010 K. E. Clothier and Y. Shang. This is an open access article distributed under the Creative Commons Attribution
License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly
cited.

This paper presents a geometric approach to solve the unknown joint angles required for the autonomous positioning of a robotic
arm. A plethora of complex mathematical processes is reduced using basic trigonometric in the modeling of the robotic arm.
This modeling and analysis approach is tested using a five-degree-of-freedom arm with a gripper style end effector mounted to an
iRobot Create mobile platform. The geometric method is easily modifiable for similar robotic system architectures and provides
the capability of local autonomy to a system which is very difficult to manually control.

1. Introduction In addition to the ability of robustly reaching for an


object in space, it is also vital that the robot has some way
As technology increases, robots not only become self- of autonomously discovering such objects, determining
sufficient through autonomous behavior but actually manip- whether they are capable of manipulation, and relaying the
ulate the world around them. Robots are capable of amazing coordinates to the arm for positioning. There has been work
feats of strength, speed, and seemingly intelligent decisions; done in the area of manipulating objects without the ability
however, this last ability is entirely dependent upon the of autonomously determining their position ([5, 6]). The
continuing development of machine intelligence and logical approach in this paper is similar to that used by Xu et al.
routines [1]. A crucial part in any robotic systems is the mod- [6], in which an end effector is capable of retrieving various
eling and analysis of the robot kinematics. This paper aims objects from the floor. The robot is assumed to have already
to create a straightforward and repeatable process to solve located an object through various means and positioned
the problem of robotic arm positioning for local autonomy. itself in the correct orientation in front of the object. This
There have been many methods presented to allow this func- robust grasping algorithm can then be combined with other
tionality ([2–4]). However, the majority of these methods use work involving path planning, obstacle avoidance, and
incredibly complex mathematical procedures to achieve the object tracking in order to produce a more capable robot.
goals. Using a few basic assumptions regarding the working The paper is organized as follows. Section 2 introduces
environment of the robot and the type of manipulation to the hardware components needed in this project. Section 3
take place, this paper proposes an easier solution which relies describes the geometric approach in the modeling and
solely on the designation of a point in the three-dimensional analysis of the robot arm kinematics. Section 4 presents the
space within the physical reach of the robotic arm. This object detection strategies for a moving robot. Sections 5
solution has been achieved using a strictly trigonometric and 6 are the mechanical design and the electrical design
analysis in relation to a geometric representation of an arm of the robot arm, respectively. Section 7 illustrates the
mounted to a mobile robot platform. implementation of the robotic arm system, which can detect
2 Journal of Robotics

IR receiver

Handle

Cargo bay
Mounting connector
points
Cargo bay

Tailgate
Figure 3: AL5C arm from Lynxmotion, Inc. [8].
Figure 1: iRobot Create from iRobot, Inc. [5].

of the servo motors used by the robot. This controller will


receive operation commands from the Command Module
from the iRobot Create.

3. Arm Kinematics: A Geometric Approach


One of the central objectives of this venture is solving
the autopositioning of the arm using as straightforward
of mathematic equations as possible. Using the standard
Denavit-Hartenberg convention [9], a free body diagram of
Figure 2: The iRobot command module.
this arm can be created by representing each of the joints
as a translational symbol and showing the links connecting
each joint as a line in Figure 4. To model this system, it is
and grasp random objects in the sensing field. Section 8 necessary to know how many degrees of freedom (DOF) are
concludes this paper with future research direction. associated with the arm. To determine the DOF, it is sufficient
to count the number of controllable joints [2]. As shown
2. Hardware in the free body diagram, there are five degrees of freedom
associated with the arm, including base, shoulder, elbow,
The robot used for modeling and test purposes is the iRobot wrist, and wrist rotate. Each of these joints is constructed
Create shown in Figure 1. This machine is the developmental of a controllable servo motor with the movements. For all
version of the popular Roomba vacuum cleaners by iRobot, practical purposes, the wrist rotate can be excluded from
Inc. [5]. It can be controlled by the use of small computer the majority of the calculations as it does not affect actual
scripts sent wirelessly or through a data cable from a positioning of the gripper, only whether it opens vertically
computer or can become completely autonomous by adding or horizontally. Without the need to calculate this joint’s
a controller to the cargo bay connection port giving complete positioning, only four degrees of freedom remain which
access to all onboard sensors, actuators, and preprogrammed must be accounted for in the calculations.
routines. This physical robotic arm is illustrated in Figure 5(a).
The controller to be used for autonomous operation Each angle is found in reference to the plane perpendicular
is the iRobot Command Module shown in Figure 2. This to the continuation of the previous link. Each of three joint
device is built around the Atmega168 microcontroller and angles to be initially solved—shoulder, elbow, and wrist—
has 14336 bytes of available space for programs [7]. This will be represented as θx where x = 1, 2, 3 denotes the
controller can be used to read any of the iRobot Create’s identification number for that particular joint, respectively.
internal sensors, control its drive wheels, LEDs, and speaker, The links connecting these joints are labeled as Lx and are of
and interface with other external hardware. known values. The gripper has been removed from this initial
A prefabricated robotic arm has been selected for use to representation in accordance with the free body diagram
minimize the time spent on mechanical design. The chosen statements. The geometric representation of the robotic arm
arm is the AL5C robotic arm model by Lynxmotion, Inc. [8] is shown in Figure 5(b). The capital D and H are used to
shown in Figure 3. Also displayed in this image is the SSC- show the position of a point in the two-dimensional space in
32 servo driver, the secondary controller used to drive each relation to the ground directly beneath the arm base. Adding
Journal of Robotics 3

Elbow The final solutions of the angles θ1 and θ2 are

150 mm
 
arc cos L21 + L2 − L22
70 mm Wrist θ1 = + φ1 ,
2L1 L
  (3)
160 mm
40 mm arc cos L21 − L2 + L22 π
θ2 = − .
Wrist rotate 2L1 L2 2
100 mm Shoulder
The angle θ3 for the parallel and perpendicular cases is
Gripper θ3 par = θ1 + θ2 and θ3 perp = θ1 + θ2 + π/2. The last of the
angles to be considered is the rotation of the base, θ0 . To find
this angle, the system is represented as a plane parallel to the
Base
175 mm ground where the arm base is the origin containing x and y
coordinates (0, 0). The solution to θ0 is given as

 
ybase
θ0 = arc tan ,
xbase
 
ybase
Figure 4: Arm free body diagram with the end effector. θ0 = arc tan +π, when the tangent value is negative.
xbase
(4)

h0 to show the known elevation of the base over the ground


The variable D in Figure 5 represents the distance to
plane allows the end point to be represented as (D, H-h0 )
point P and is solved by D = | ybase / sin(θ0 )|.
in the two-dimensional space relative to the arm base as
opposed to the ground below the arm base.
There are two scenarios of the robotic arm system. The 4. Object Detection
first scenario is that the gripper will approach the object
in a ground parallel fashion shown in Figure 6(a). This From the discussions in Section 3, the arm is capable of
means that link L3 would always be parallel to the ground positioning itself at any given three-dimensional coordinate
plane; therefore, this link can be entirely omitted from the satisfying a format of (xbase , ybase , θ0 ) within its area of
calculations as well. The height of the point is not dependent reachability. However, this analysis has not specified how
upon L3 at all, and the distance of the base to the point could such a position is determined. For this to be achievable, a
be reduced by the known length of this link. The second type of sensor must be used. Two infrared range finders are
scenario which will be considered is if the gripper approaches needed at the front of the robot for scanning purposes. After
an object directly from above such that that link L3 would be linearization, these sensors return a distance in millimeters
perpendicular to the ground plane shown in Figure 6(b). In to anything blocking their line of sight within the specified
this case, the changes to the calculated position of the point distance range. These distances are then used to determine
are somewhat reversed from what they were in the first case. the position of an object in relationship to the robot arm
Now, the distance of the base to the point is unchanged by L3 ; base.
however, the length of L3 must be added to the point height A simple trigonometric process is used to solve the
H-h0 . The coordinates (DA , HA ) will represent the respective coordinates of some object at point P. Once sensors have
distance and height of the arm needed to be positioned at the detected an object at point P, the known distance to the
translated points. These coordinate pairs satisfy the following object in combination with the known angle of either
equations: scanning servo can be used to determine the Cartesian
coordinates of the object with respect to either sensor. The
(DA , HA )par = (D − L3 , H − h0 ), sensor used as this origin is dependent upon which sensor
(1) detects the stable object first. In the diagram shown in
(DA , HA )perp = (D, H − h0 + L3 ). Figure 8, the distance values of the sensors are represented
as DL and DR . The corresponding servo angles are seen as ΦL
The simplified system is showed in Figure 7, where the
and ΦR . The unknown values of this figure are the Cartesian
known variables are L1 , L2 , HA , and DA . Point P consists of
coordinates of the point P with respect to the left or right
coordinates (DA , HA ). The unknown angles θ1 and θ2 are the
sensor (xLET , yLET ) and (xRET , yRET ). The solutions to these
system solutions. If a line is drawn from the origin to point P,
unknowns are found in the following equations:
two triangles are created. The lower is a standard right angle
triangle consisting of legs L, HA , and DA , which is
  xLET = DL cos(ΦL ), yLET = DL sin(ΦL ),
H D
φ1 = arc tan A , L = A. (2) (5)
DA HA xRET = DR cos(ΦR ), yRET = DR sin(ΦR ).
4 Journal of Robotics

θ3 θ3
L2 L2
Robotic arm
without gripper L3
θ2 θ2 L3
L1 L1
H-ho
θ1 θ1
D
H

ho
iRobot create
D

(a) (b)

Figure 5: Arm joint angles (a) and arm joint geometric representation (b).

Translated point
Translated point Original point (D-L3 , H-ho )
(D-L3 , H-ho ) (D, H-ho )
θ3
L2 L2
θ2 θ3
L3 L1
θ2
L1 H-ho L3
θ1
θ1 D H-ho
D
Original point
(D, H-ho )
ho H ho H

D D

(a) (b)

Figure 6: The link L3 is parallel to ground (a) and perpendicular to ground (b).

P to the coordinates xbase and ybase with respect to the arm base
L2 as the origin are
θ2
Xbase = XLET − Xdiff ,
Ybase = Ydiff + YLET ,
L1 HA (6)
L Xbase = Xdiff − XRET ,
Ybase = Ydiff + YRET .
φ1
θ1
DA Inserting these results into (4) results in the arm distance D
and the base angle θ0 used throughout the autopositioning
Figure 7: Simplified system geometry. solution process.

5. Mechanical Design
With these coordinates found, the position of the object
with respect to the base can be solved, and the resulting After theoretical modeling and analysis, the next step of this
coordinates can be used to position the arm. The values of research is to integrate each of these components such that
the Cartesian coordinates (xbase , ybase ) in Figure 9 are found they work together in an efficient manner in order to achieve
by adding the coordinates found in the various equations to the project goals. This process involves with the mechanical
the known distances between the base and the sensors. The design and the electrical design. The AL5C Robotic Arm
value of xdiff is the distance from either sensor to the arm base from Lynxmotion Inc. [8] comes standard with four degrees
along the x axis, and the value of ydiff is the distance from of freedom not counting the end effector. The supplied
either sensor to the arm base along the y axis. The solutions gripper uses a type of servo-controlled linear actuation to
Journal of Robotics 5

xLET xRET Arm Custom


P base frame

DR
y LET DL y RET

φL
φR
Used
mounting
points

(a) (b)

Figure 10: Custom frame design (a) and the robotic arm mounting
y
(b).
x

external components, the iRobot Create comes equipped


Figure 8: Object polar coordinates. with mounting points—four within the cargo bay and two
on either side of the top layer. These holes fit a 6–32 size
machine bolt and have been used to connect a custom created
xLET xRET
upper frame to the Create base. A general design of the frame
P
is shown in Figure 10(a) while the completed frame joining
the arm to Create is displayed in Figure 10(b).

y LET y RET 6. Electrical Design


y base
xdiff There are many facets which compose the electrical design
of any given electro-mechanical system, such as the power
scheme, component interfacing, sensing, and control. A
y diff block diagram of the various known and projected com-
ponents along with their respective power and data flow
is given in Figure 11. The main components seen are the
xbase iRobot Create, the mobile robot platform, the Command
Module (CM), the main controller, and SSC-32-the serial
servo controller. The other various components include
y motors, sensors, batteries, and circuitry. Data flows from
x sensors to controllers, while commands flow from controllers
to actuators.

6.1. Power Systems. One of the largest factors prohibiting


Figure 9: Object Cartesian coordinates. robots from being completely autonomous is the necessity
for large power supplies. The longer a robot is to remain
active, the more power needs to be available. However,
grasp an object. There is an optional wrist rotate upgrade adding more batteries adds more weight which requires
which would allow for a fifth degree of freedom; however, the robot to apply more force to move itself, which in
this part has been custom created for the project in order to turn requires more power for operation. This cycle will
cut down on costs. continue until the proper balance between necessary power
To build the arm, the assembly guide obtained from and available power is met.
the company’s website was followed with a few slight One way to reduce the power necessary as well as reduce
modifications. The two arm pipes have been switched to total weight is to use as few components as needed. The
more evenly distribute segment lengths, and the load springs iRobot Create comes equipped with an internal battery case
have been arranged slightly different than described in the which holds twelve non-rechargeable alkaline batteries. The
guide to increase the maximum lift as well as force the arm robot should remain powered for up to 1.5 hours of constant
into a specific position when not in use. To accommodate movement as long as there are no external attachments or
this change in load spring positioning, the joint hardware payload [5]. For recharging capabilities, the recommended
and servo connections have been altered as well. To attach rechargeable battery pack was purchased. With this 3Ah
6 Journal of Robotics

Drive wheels the use to any other unused I/O lines available on that
Create iRobot
internal create
particular ePort. Although this layout can be used effectively
Internal
battery sensors for many situations, an additional circuit has been created
to redistribute the I/O lines in a more typical arrangement.
This circuit also quells the confusion created by the ePorts
Command module
Servo motors resembling a computer’s serial port but not being set up to
communication in such a manner. This circuit, named the
Command Module Re-Pin Out circuit (CMRP) in this paper,
Command module SSC-32
controller
allows for more complete and easy access to every available
break out
I/O pin on the CM. A schematic of this circuit is shown
in Figure 12. Four male DB9 connectors were attached to
External servo power each of the four ePorts. The scattered I/O pins were then
LCD External regrouped by code and aligned in sequential order on CMRP
sensors
circuit board. Each pin was also stacked with a voltage and
Legend ground pin to allow sensors to be easily connected. A bank of
Power headers carrying the regulated five volts was also produced
Data as an access point for that voltage supply. Because of the
Command easy access to the internal battery voltage supply, the linear
Figure 11: The robotic electrical systems overview. regulator circuit used to power the SSC-32 servo controller
was placed on this circuit board as well. There are two
switched LEDs present on the board. A red LED signifies five
volts of power is present on the board while a green LED
battery fully charged, the robot should remain powered for
indicates the correct operation of the eight-volt regulator.
up to 3.5 hours under the previous conditions [5].
The secondary controller used in this project is the
All of the external sensors are expected to need a
SSC-32 servo controller, which is controlled through serial
5 V DC supply. This voltage level is actually generated within
commands received in string format. While these commands
the iRobot Create and is available on a few pins of the
will be sent from the CM during normal operation, it is
cargo bay connector and subsequently on select pins of the
also useful to control this device from a computer to quickly
command module. The only caution in using this source
test the capabilities of the arm. In order to efficiently switch
is not exceeding the current limitations of the internal
between CM and PC control, a triple-pole, double-throw
regulator, although this is not an expected problem. The
switch has been used to specify the connections for transmit
power required for the servo motors and controller is not as
and receive lines as well as the communication baud rate. An
easily obtained, and some design will be necessary.
extension to the serial port for easier access has also been
The voltage requirement for the SSC-32 servo controller added to the robot.
is a stable DC voltage between six and nine volts [8]. It
is also highly recommended to separate logic and servo In order to preserve battery life, a power jack was added
supply voltage to keep the microcontroller from resetting or such that a regulated wall pack can be used to power the
becoming damaged during power spikes. This means that servos while the robot is stationary as opposed to the six-volt
two additional power sources are needed—a low current battery pack. A single-pole, double-throw switch can then be
supply within the specified range for the controller and a used to select between battery and wall outlet power. When
high current six volt supply for the servo motors. Ideally, only only one power supply is present, this switch also acts as
one battery pack should be used for all of the various voltage an on/off switch for that supply. These various power and
supplies to reduce maintenance, charging components, and control connections are illustrated in Figure 13.
overall complexity; however, this requires that a higher
voltage source is regulated to a much lower one. This can 6.3. Additional Hardware. Three sensors external to the
be incredibly inefficient for large current draws over great iRobot Create are used. Two of these sensors are Sharp
voltage differences. For this reason, a separate six-volt battery GP2D12 Range Finders while the third is a Sharp GP2D120
pack is used to power the servo motors, while an eight-volt Range Finder. These devices are used to determine distance
supply is created for the controller by regulating the iRobot to objects by measuring the reflection angles of an infrared
Create main battery voltage. beam emitted from the sensors. The GP2D12 is able to detect
objects between 10 and 80 cm away; the GP2D120 is for
6.2. Controllers and Communication. The primary robot closer range object and can detect objects between 4 and
controller will be the iRobot Command Model which is 30 cm away. These sensors are commonly referred to as “ETs”
built around the Atmega168 microcontroller and has four because of their similarity to the head of the alien in the 1982
ePorts for additional hardware. Each of these ports contains movie of the same name.
I/O lines, a regulated five-volt pin, ground, Create battery The two GP2D12 sensors are mounted to the top of two
voltage pin, and a low side driver. One major drawback servo-motors attached to either side of the custom frame at
to this configuration is that an attached device which may the front of the robot. These servo mounted sensors serve
only require the use of one I/O line will subsequently block as front scanners for use in object scanning, detection, and
Journal of Robotics 7

PC3 / ADC3

N/C

N/C

N/C

N/C
GND

GND

GND
PC5 / ADC5

PC1 / ADC1

PC2 / ADC2
VCC

VCC

VCC

N/C
ADC6
ADC7

LD0

LD0

LD0
PB 3

PB1

PB2
N/C

Vpwr

Vpwr

Vpwr
Left ePort Center ePort Right ePort

PC4 / ADC4

PC0 / ADC0
Cargo ePort

PB0

Vpwr
N/C
GND
VCC

LD1

LD2
iRobot create command module
1 2 3 4 5 6 7 8 9

Female DB 9 connectors
Left ePort Center ePort Right ePort Cargo ePort
Male DB 9 connectors
x x x x x x x R1 R2
0.125 W 0.125 W
1kΩ 1kΩ

LED1 LED2
green red
SW1

+ 5V

VCC LD [2:0]
1 7808 3
2 C2
C1 2
1.0 µF 10 nF

PC [5:0] PB [ 3:0] +5V headers Create battery +8V regulator +8V


ADC [ 7:0] GND headers headers

Figure 12: Command module re-pin out circuit schematics.

tracking. The GP2D120 sensor has been attached to the of this loop is the actual object detection routine and is a loop
inside of the gripper on the robotic arm and is used for itself which is entered and exited by pressing the user button.
more accurate alignment of the gripper with objects while The loop can also be exited if the iRobot Create detects a
it is attempting to manipulate them. The front mounting of cliff edge or is powered off. A logical flow chart of the main
the GP2D12 ETs is shown in Figure 14(a) while the gripper program used to operate the iRobot Create in this simple
mounted GP2D120 ET is shown in Figure 14(b). Much like autonomous behavior is given as Figure 15.
the importance of sensors is to the robot’s autonomous As seen, a main program counter is used to establish the
abilities, an LCD screen is an invaluable tool during program speed of the LED flashing and how often the user button
testing and trouble shooting. The screen used in this project is checked. The timing of the button checks is very critical.
is the Element Direct, Inc. with four character eDisplay Checking them too often will result in confusion, and the
designed for use with the Command Module. program will exit a mode it has just started because it still
recognizes the button as being pressed. To counter this effect,
7. Implementation many delays are used throughout the program to aid in the
timing of everything. Once the user button is pressed, the
The program to implement the geometric approach for the scanning routine begins by commanding the iRobot Create
arm kinematics is divided into two sections. The first is to drive forward while the front scanning servos move to
simple flashing of LEDs to alert the user that the program is their specified angles. After every scanning movement, the
ready to be run. This flashing will continue to occur until the attached ET sensors will return the distance to the nearest
Command Module user button has been pressed or the robot object within their range. If nothing is seen, the angle of
battery life expires. An attempt to add a sleep state timer was both servos is increased or decreased, depending upon the
made to conserve battery life, but as this was not a primary current scanning direction and object tracking status, and
focus of the project it was not completed. The second portion the servos move to this new angle while the robot continues
8 Journal of Robotics

Transmit/receive
Serial line
Source jumpers

SSC logic supply


from 8V regulator

Jack
on CMRP

Plug
Port for external
power from
regulated wall pack

Baud rate (3PDT) control &


selection baud rate
jumpers selection switch

(SPDT) power Up: command module


Selection switch Down: computer
Up: battery plug
(TX) PCx
Down: external port
(RX) PBx

Serial connection for


Plug for servo Jack
command module Serial connection
power source
for computer

Figure 13: SSC-32 power and control connections.

Sharp GP2D120
Sharp GP2D12 range finders range finder
(a) GP2D12 front ETs (b) GP2D120 gripper ET

Figure 14

to drive forward. In real time, these front scanners appear to the object again, it will compare the current servo position
be quickly looking back and forth as the robot slowly drives with the previous one. If these positions are identical for
forward. two scanning iterations, the object is deemed stable and the
Once an object within the specified viewing distance is arm will attempt to pick it up. Notice there is no safety
detected by either sensor, the object will begin to be tracked mechanism here in case the object is too large. This is an
by the sensor which saw it, and the iRobot Create will advanced line of reasoning which was not considered as all
stop moving forward. The other front sensor will continue objects within the test area will be controlled.
scanning as normal unless it detects an object as well. During If the edge positions are not identical, the scanner will
this object tracking period, a counter will begin, and the continue its attempt to track the object until the scanning
scanner servo will change direction when it reaches the edge, timer expires. At this point, the iRobot Create will be
ignoring its normal scanning area restrictions. The program instructed to rotate away from the scanner which detected
will remember the positions of the servo when it detects the object—clockwise for the left scanner and counter
either object edge. When the scanner detects the edge of clockwise for the right scanner. After it has rotated, the robot
Journal of Robotics 9

No Still tracking an object?


Drive create forward
Main loop
Yes
Move servos to scan angle

Main counter + = 1
No
Object detected by ET sensors
No Yes
Main counter = 50?
Stop create movement and begin
Yes scanner count

Main counter = 0 No
No
Object stable? Scanner count expired?
Yes Yes
LEDs on? Determine object center and Rotate create base
Yes No retrieve object
Turn off LEDs Turn on LEDs
Change scan angle by 50◦
No
User button pressed? No
Reached scanning zone edge?
Yes Yes

Change scanning direction

Yes No
Exit mode?

Figure 15: Main loop program flow chart.

Starting position (1) Raising arm (2) Trying to grasp object (3)

Grasping object (4) Holding on (5) putting down (6)

Figure 16: Screen shots of the robot arm grasping object.


10 Journal of Robotics

will once again begin to drive forward and scan as normal.


This incredibly simple logic has proven to be very effective
in testing the capabilities of the arm in conjunction with the
GP2D12 Sharp Range Finding “ET” sensors. We carried out
the experiment for the robotic arm system, and the video
took a movie in which the robot arm can catch the object
and put it down on the left side of the iRobot. The screen
shot of this movie is shown in Figure 16.

8. Conclusion
A geometric approach to solve for the unknown joint angles
required for the autonomous positioning of a robotic arm
has been developed. This analysis is dependent upon the
known lengths of each arm joint to joint link as well as
the desired terminal position of the arm in the three-
dimensional space of the arm’s workable area with respect to
arm base. The analysis has been developed around a few basic
assumptions regarding the functionality of the arm, and has
been created using a strictly trigonometric approach with
regards to a geometric representation of the arm. For testing
purposes, an iRobot Create mobile robot platform has been
retrofitted with a robotic arm from Lynxmotion possessing
five degrees of freedom in addition to an end effector. The
geometric method is easily modifiable for similar robotic sys-
tem architectures and provides the capability of local auton-
omy to a system which is very difficult to manually control.

References
[1] C. C. Kemp, A. Edsinger, and E. Torres-Jara, “Challenges for
robot manipulation in human environments [Grand challenges
of robotics],” IEEE Robotics and Automation Magazine, vol. 14,
no. 1, pp. 20–29, 2007.
[2] C. S. G. Lee, “Robot arm kinematics, dynamics, and control,”
Computer, vol. 15, no. 12, pp. 62–80, 1982.
[3] Y. Liu, T. Mei, X. Wang, and B. Liang, “Multisensory gripper
and local autonomy of extravehicular mobile robot,” in Pro-
ceedings of the IEEE International Conference on Robotics and
Automation, vol. 3, pp. 2969–2973, New Orleans, LA, USA,
April 2004.
[4] T. D. Thanh, J. Kotlarski, B. Heimann, and T. Ortmaier, “On the
inverse dynamics problem of general parallel robots,” in Pro-
ceedings of the IEEE International Conference on Mechatronics
(ICM ’09), pp. 1–6, Málaga, Spain, April 2009.
[5] iRobot, “iRobot Create Owner’s Guide,” iRobot, Inc., 2006,
http : / /www.irobot .com /hrd right rail/create rr/create fam /
createFam rr manuals.html.
[6] Z. Xu, T. Deyle, and C. C. Kemp, “1000 trials: an empirically
validated end effector that robustly grasps objects from the
floor,” in Proceedings of the IEEE International Conference on
Robotics and Automation (ICRA ’09), pp. 2160–2167, Kobe,
Japan, May 2009.
[7] iRobot, “iRobot Command Module Owner’s Manual,”
iRobot, Inc., 2007,http://www.irobot.com/hrd right rail/create
fam/createFam rr manuals.html.
[8] J. Frye, “SSC-32 Manual,” Lynxmotion, Inc. December 2009,
http://www.lynxmotion.com/images/html/build136.htm.
[9] J. Denavit and R. S. Hartenberg, “A kinematic notation for
lower pair mechanisms base on matrices,” ASME Journal of
Applied Mechanics, vol. 23, pp. 215–221, 1955.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy