Sunteți pe pagina 1din 4

Robotic Manipulators And Control Using Mapping And Haar Classifier Image

Processing

Jamshid Dastur1, Dr. Attaullah Khawaja2


1
Undergraduate Student, NED University of Engineering and Technology, Pakistan
2
Associate Professor, NED University of Engineering and Technology, Pakistan
1
jamshiddastur@yahoo.com, 2atta_khawaja@yahoo.com

Abstract 2.2. Mechanical Design

Robotic systems are capable of solving repeated The size of the robot was kept 1200cm2, and made with
problems more efficiently and effectively than human aluminum angles for weight reduction. The robot consists
beings. The field of robotics is moving so quickly of cannon in center to fire the ball, with the drive,
encompassing a wide range of disciplines and loading and power compartments placed besides the
applications that robotics education must be adaptive and cannon. “Fig. 1” shows the placement.
incorporate a multidisciplinary approach[1]. In this paper
we will be discussing the different models, designs and
implementations over the robots we have been
developing. We will elaborate each robots design, their
characteristics, specifications, pros and cons of the
design, alterations recommended for future robotic
application.
In this paper we will be discussing two concepts Fig 1. Robot Structure
developed for robot control using memory mapping and
Object tracking with the help of Haar Classifier.
2.2.1 Ball Potting Mechanism

Keywords: Robotics, Mechatronics, Autonomous, The cannon has been designed by embedding a heavy
Memory Mapping, Manipulators, Actuators, Drive solenoid, which produces a high energy magnetic field
Mechanism, Object Tracking, Computer Vision, Haar when energized, which generates a huge amount of
Classifier. torque during the fire causing to pull the shaft and fire
the item. The cannon is projected to the angle of basket
before fire in order to hit the target.
1. Introduction xmax = 2v2cos(θ)sin(θ) = v2sin(2 θ)
g g
In this paper we will be discussing two robots, starting
with the first robot the ball potting autonomous robot,
Once the ball is fired the loading chamber forces
and then the robotic arm. This paper will focus on the
another ball into the chamber making it ready for next
designs used by each robot, the reason for its use, the
fire.
results and alternates possible. We will be covering from
Drive to Actuators, from path mapping to Image
processing, of these robots.
2.2.2 Drive Mechanism
The robot is rear wheel differential wheel driven
2. The Ball Potting Autonomous Robot consisting of two separate stepper motors attached via
belt to wheels. The robot drive follows the Table 1 for
2.1. Design Consideration robots movement.

A set of rules are used by the autonomous robots to Left Motor Right Motor Motion
decide its actions without needing any interaction by the 0 0 Stop
humans. This robot was made considering the task to 1 -1 Right
POT Balls into specifically placed baskets in an arena. -1 1 Left
The robot was limited to a set of rules from size to weight 1 1 Forward
to power capacity[2]. -1 -1 Reverse
Table 1. Robot Drive Logic
2.3 Electronic Counterpart Fig 3. Shows the Actual Robot Developed.

The brain of the robot lies inside the powerful PIC


Microcontroller family. With the algorithms for mapping
the arena and control for the control circuitry of drive
motors and solenoid. “Fig. 2” shows the electronic circuit
block diagram.

Fig. 2. Circuit Layout Figure 3. Actual Robot Developed

2.3.1 Mapping Algorithm 3. The Robotic Arm


The mapping algorithm is developed such that once 3.1 Design Considerations
the user rides the robot manually using a joystick
attached at the input and mode set to training the
controller stores all the user actions, and when the switch The robotic arm provides 5 degree of freedom (5
is reset to normal mode, it starts reading the user DOF) with a camera vision to control all the movements
movements from the memory and performing the way from the control center. The Robotic Arm can pick and
user had performed making an efficient autonomous place loads as, when and where required with complete
robot without the need of sensors or any other alternate to user command and can also be programmed to do a
move in the arena. “Algo. 1” show the way memory single task repeatedly without human interaction hence
mapping can be done. autonomously. The arm can be replaced from its position
on wheels and used for working operations at another
x-axis, y-axis, position array creation position.
Initialize counter
Controller MODE: Training 3.2 Mechanical Design
Input x: increment x position counter
move to next x array element The robot consists of geared stepper motors at each
Input y: increment counter joint to provide the required axis’s movement “Fig. 4”
move to next y array element displays the structure of robotic arm.
Input position: increment position counter
continue
Controller MODE: Activate
Drive Controller: 0: Read “x” element, on end
Next array element
Drive Controller: 0: Read “y” element, on end
Next array element
Position Controller: read position, request action
continue
Algo 1. Algorithm for Memory Mapping

Fig/ 4. Robotic Arm Structure


3.3 Electronic Layout Steps in training and using a Haar classifier for hand
gesture recognition:
The Camera attached on the robot senses the
movement of human hand and sends signal • Collect positive and negative training images
corresponding to the motion to PIC Microcontroller for • Markup positive images using objectmarker.cpp
control of the motors and their motion, along with start, • Create a .vec file using createsamples.cpp
stop and initial position of the arm using IR sensors • Train the classifier using haartraining.cpp
mounted at each joint. “Fig. 5” shows the operation flow • Run the classifier using cvHaarDetectObjects()
and “Fig. 6” shows the circuit layout.

Fig. 5. Operation Flow

3.3.1 Hand Gesture Recognition using OpenCV Algo 2. Explains the usage of Haar Classifier to instruct
Image Processing Tool the controller for the arm motion.

The Intel OpenCV package is an open source library Load HaarHandGestures


of computer vision algorithms that many computer vision Loop:
groups have used. One thing worth considering with Start camera
OpenCV is that it comes with a C++ interface. Capture frame
Matchframe with HaarFile
A Haar Classifier is a machine learning approach for Case (MatchFrameType)
visual object detection originally developed by Viola & 1: Move joint(1)
Jones[3]. It was originally intended for facial recognition 2: Move joint(2)
but can be used for any object. The power of the Haar 3: Move joint(3)
Classifier is that it will quickly reject regions that are 4: Move joint(4)
highly unlikely to contain the object. It does this by 5: Move joint(5)
making use of the cascade of classifiers. In this cascade, Goto loop
the early stages will quickly reject the majority of false Move joint(num)
regions and the object detection can move on to other If Objectmotion = Left then
regions. The later stages however require progressively Motor (num)= +1
more computational effort in order to reject the region[4]. elseif Objectmotion = Right then
By doing this, the Haar Classifier will only spend Motor (num)= -1
substantial time on regions that are likely to contain the Algo 2. Haar Classifier controlling the arm motion
object being searched for.
“Fig. 6” shows the actual robotic arm developed
The necessary applications for implementing a Haar
classifier are included in OpenCV and these can be used
to train a classifier for detecting objects in an image[5].
The levels of complexity of robots is defined by the
members used in its limbs, number of limbs, number of
actuators and sensors used and for advanced robots the
type and number of microprocessors and microcontrollers
used. Each increasing component adds to the scope of
functionality of a robot. With every joint added, the
degrees of freedom in which a robot can work increases
and with the quality of the microprocessors and
microcontrollers the accuracy and effectiveness with
which a robot can work is enhanced. Along with design
complexity it may involve with complex image
processing and computer vision tools to detect objects
and react accordingly in future.
Fig. 6. Robotic Arm
6. References
4. Results
[1] Some thoughts on robotics for education,
After developing these 2 projects we would like to JacekMalec, Department of Computer Science, Lund
propose anyone developing autonomous robots based on University, Sweden
DC drive motors should go for a single DC motor
attached to wheels via single shaft rather than providing [2] D. Ahlgren, I. Verner - Fire-Fighting Robot
differential drive, and the control for motion a steering International Competitions: Education Through
should be used based on the front wheel this could be Interdisciplinary Design. 2001 International
either based on stepper or axel. Conference on Engineering Education, Oslo, August,
2001.
“Fig. 7”, shows drive model recommendation
[3] Rapid Object Detection using a Boosted Cascade of
Simple Features, Paul Viola & Michael Jones,
Computer Vision and Pattern Recognition 2001.

[4] Rainer Lienhart and Jochen Maydt. An Extended Set


of Haar-like Features for Rapid Object Detection.
IEEE ICIP 2002, Vol. 1, pp. 900-903, Sep. 2002

[5] Facial feature detection using Haar classifiers, Journal


of Computing Sciences in Colleges, Volume 21 ,
Issue 4, April 2006
Fig. 7. Drive Mechanism
[6] Gesture recognition Ondřej Novák, František Ondřej,
Jan Ondřej.
5. Conclusions

In basic robotics we design machines to do the


specified tasks and in the advanced version of it robots
are designed to be adaptive, that is, respond according to
the changing environment and even autonomous, that is,
capable to make decisions on their own. While designing
a robot the most important thing to be taken in
consideration is the function to be performed. Here comes
into play the discussion about the scope of the robot and
robotics. Robots have basic levels of complexity and each
level has its scope for performing the requisite function.

S-ar putea să vă placă și