0% found this document useful (0 votes)
51 views

Practical Development of An Experimental PDF

This document summarizes the design and implementation of an autonomous mobile robot named CRUI. It has a circular base that can travel at 0.5 m/s and carries a robotic arm. The base uses two driving wheels connected to motors through gear systems. It also has castor wheels for rotation. The robotic arm has a rotating base that allows 300 degrees of rotation controlled by a servo motor. It has a two-link arm attached to the rotating base. The robot uses infrared sensors and limit switches for navigation to avoid obstacles autonomously.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
51 views

Practical Development of An Experimental PDF

This document summarizes the design and implementation of an autonomous mobile robot named CRUI. It has a circular base that can travel at 0.5 m/s and carries a robotic arm. The base uses two driving wheels connected to motors through gear systems. It also has castor wheels for rotation. The robotic arm has a rotating base that allows 300 degrees of rotation controlled by a servo motor. It has a two-link arm attached to the rotating base. The robot uses infrared sensors and limit switches for navigation to avoid obstacles autonomously.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

2nd International Conference on Autonomous Robots and Agents

December 13-15, 2004 Palmerston North, New Zealand

Practical Development of an Experimental Autonomous


System in Real Time Environment - C R U I
T.C.Manjunath*, G.V.Jayaramaiah**, D.S.S.Sudhakar#, Dr. R.Sesha Iyer# #,
Mrs. Ruchira Jadhav1 , S.Janardhanan*
* Research Scholars, Interdisciplinary Programme in Systems & Control Engineering,
Indian Institute of Technology Bombay, Powai, Mumbai-400076, Maharashtra, India
** Senior Lecturer, Dr. Ambedkar Institute of Technology, Bangalore-46, Karnataka, India.
#
Assistant Professor, Production Engg. Dept., Fr. C.R.C.E., Bandra (W), Mumbai-50, India.
1
Assistant Professor, Elex. & Telecomn. Engg. Dept., K.J.Somaiah College of Engg., Mumbai-70.
##
Principal, Fr. Conceicao Rodrigues College of Engineering, Bandra (W), Mumbai-50, India.
Emails : [email protected] , [email protected] , [email protected]

Abstract
The paper presents the design, implementation of the a unique type of computer controlled circular mobile robotic
unit equipped with intelligence. Building an experimental autonomous vehicle or robot, which has the ability to
perform in real time environments is both a technical and scientific challenge and demands the development of
systems for perception, modelling, planning and navigation. Within this scope, this paper describes the construction
of a low cost mobile autonomous robot, intended for educational purposes. The work presented in this
communication describes the mechanical structure of the vehicle, the electronic modules developed and the software
modules implemented for the control and remote navigation. The work was undertaken as a sponsored consultation
based project under the guidance of the author in the institute.
Keywords: Driver Units, Actuators, Visual Basic, Parallel Port Interface.

1. Introduction for navigation. This project has its origin in our own
fascination for the field of robotics. That, coupled with
Today, a mobile robot [1] can be designed in order to our genuine urge to build something substantial, led us
operate in a wide range of industrial, military, to undertaking this endeavor.
scientific, domestic, humanity and in educational
applications. The important aspects of the design
include the choice of the materials used in the vehicle
framework, the kind of batteries, the type of sensors to
assist the navigation, the choice of actuators and the
steering system configuration. The user interface and
the navigation software are also important. The
relevance of these issues was shown in the
development of CRUI, one of the advanced version of
the mobile platform. In this version, it contains a
working map describing the permanent and stationary
obstacles like the walls, corridors, etc.,. An onboard
controller performs the control of the vehicle.

The connection between the computer and its electronic


systems is made through the parallel port using a
lengthy interfacing cable. The use of external sensing
systems, such as ultrasounds, limit switches and the
infrared proximity sensors allows the vehicle to interact
with its environment in a flexible manner, in order to
move autonomously in the working area and avoiding
detecting the unknown obstacles. This communication
describes the design and implementation of a relatively
low cost autonomous vehicle, named CRUI, totally
indigenously developed and able to move in a semi
structured environments, using a sensor based approach Figure 1 : The C R U I

25
2nd International Conference on Autonomous Robots and Agents
December 13-15, 2004 Palmerston North, New Zealand

Since robotics encompasses everything from mechanics the help of brackets made from aluminium in order to
to electronics to computer software, we had the reduce the weight .
opportunity to learn more than we could have The two wheels of diameter 12 cms , plastic made with
otherwise. The whole of the city was roamed in search a rubber tyre over it is coupled to the main driving
of components that matched our very stringent motors using a chain of gearing systems and supported
requirements. Nevertheless, we are mighty proud of our between two ball bearings . The motors are coupled to
efforts and, more so, of the end result. Presenting – the the wheels using aluminium shafts via the spur gears of
“C R U I”. The main objective of this work is to 12 and 48 teeth’s . Since the hylam base has to carry
design, fabricate each part, construct an educational the entire weight of the robot , it was necessary for us
model of a mobile robot with an arm and control it with to increase the torque rating at the wheel shafts. This
a computer. The robot would move on a horizontal was achieved by using spur hard nylon gears of 1:4
plane such as floor avoiding obstacles in its path of ratios .
motion by making use of infra-red sensors.
The smaller gear attached to motor has 12 teeth’s and
2. Design and Implementation of the bigger gear attached to the wheel has 48 teeth’s .
the Mechanical Unit The two driving wheels of 10 inches are placed along
the diameter of the circular hylam sheet below it . The
The built autonomous vehicle [2] weighs 30 Kgs. with rubber tyre helps the robot better gripping of the
a circular base of 2 feet diameter and can travel at a surface . Two castor wheels one at the front and
maximum speed of 0.5 m /s . The sensorial system is another at the back are attached perpendicularly to the
composed of a pair of infra-red sensors, limit switches, diameter . These two castor wheels allow the robot free
encoders etc.,. This is a vehicle presenting a differential rotation of the castor resulting in a frictionless drag free
configuration, capable of operating in semi-structured motion of the robot . The view of the mobile trolley is
environments, avoiding unknown obstacles. The shown in Figure 1.
operation is performed in various modes. The control
architecture software was developed using modular 2.2 Arm Assembly
approach implementing an optimized set of efficient
routines both at the low level sensor and actuator signal The arm assembly is divided into arm base assembly
management and at the high abstraction level to take and the two link arm which is attached to the base unit.
care of the navigation problems and the communication
protocol. The GUI implemented at the supervision 2.2.1 Arm Base Assembly
station was developed using the Visual Basic
The base assembly of the 3 axis robot arm is at the
Programming environment and provides the necessary
center of the circular acrylic platform. It consists of two
facilities for the definition, simulation / execution of
small circular plates one above the other (bottom plate
tasks required from the vehicle.
being fixed and the upper one rotating w.r.t. the
The mechanical system consists of three divisions. bottom) with a thrust bearing in between them to
Robot Base Assembly (mobile trolley). provide a smooth base rotation of 300° either in the
Robot Arm Assembly. clockwise or in the anticlockwise direction . A Big
Robot Gripper Assembly. D.C. Servomotor is attached at the bottom of the
acrylic platform.
2.1 Moveable base assembly
A worm and a worm wheel assembly of 1:20 ratio is
(mobile trolley)
keyed to the D.C. Servo shaft in the horizontal plane. A
The base is made up of a brown hard hylam sheet of central rotating shaft is attached to the big rotating
thickness 8 mm and of diameter 1.5 feet (circular in worm wheel . This shaft is extended from the bottom of
shape) . Hylam sheet was chosen keeping in mind the the platform to the top circular plate and is welded at
following properties , viz., Good insulating medium, the center. Limit switches are used at the extreme ends
Light in weight, Can be easily cut into required shape of the double plates . The entire arm (with the shoulder
and size and provides a platform for the arm and the assembly , elbow assembly and the gripper assembly)
entire structure including the electronic circuitries. is mounted on the upper rotating plate . The
To drive the mobile trolley, we have used D.C. specification of motor used for Base are 12 V D.C, 60
Servomotors which will give sufficient torque and at rpm, 60db noise, Torque: 10 kg-cm, Weight : 1 kg, 0.5
the same time sufficient rpm so that the robot can move A Current rating (Off Load), Up to 1.75 A as load
at a particular speed. We have chosen D.C. servos increases.
because they have got only two wires (+ and –) and 2.2.2 Shoulder Assembly
they can be easily driven from a simple driving IC chip
and speed control is easier. Two D.C. Servomotors of The shaft is fitted with a pair of parallel Acrylic plates
10 Kg - cm torque, 1.75A current rating, and 60 rpm, that move along with the shaft. These plates house the
drive the mobile trolley on which all the electronic mechanisms that actuate the joint motion. On the other
components and the mounted arm. The motors are end of these plates is another shaft pin that rotates the
mounted on the lower surface of the hylam sheet with outer arm along its axis, thus providing the revolute

26
2nd International Conference on Autonomous Robots and Agents
December 13-15, 2004 Palmerston North, New Zealand

motion for the shoulder joint. The plates for the inner is of length 140mm. The specifications of the elbow
and outer arms are made of Acrylic which is very light motor are, Type : DC Motor, Torque : 2kg-cm, Current
and strong, thus reducing the leverage of the two arms rating : 0.5A., Direction : CW-CCW Motion, Elbow
on the base and at the same time strong enough to Motor Speed: 60 r.p.m. Limitation of the elbow
sustain the weight of the motors and the mechanisms motion is 120°. Limit switches are attached at the
housed by them. The motion is actuated by a very extreme ends of the elbow. An Opto-coupler is attached
compact mechanism of worm and worm wheel. The to the elbow joint axis performs same function as
double helical worm is fitted on the motor shaft, while mention for Shoulder assembly.
the worm wheel is fitted on the shaft, which provides
elbow rotation. The speed ratio of this arrangement is
1:20, that is, the worm wheel makes one complete
revolution when the worm makes 10 revolutions. The
motor is fixed on the circular Acrylic Plate on the base
assembly to the shoulder axis, first link of length
250mm .
Specification of Motor [4] used for Shoulder Assembly
are 12 V D.C, 60 r.p.m, 60db noise, Torque: 10 kg-cm,
Weight: 1 kg, 0.5 A Current rating (Off Load), Up to
1.75 A as the load increases. Limitation of the Shoulder
motion is less than 90°. Opto-coupler is attached to the
Shoulder joint axis. Working of the Opto-coupler is
explained in later chapter. Main function of Opto-
coupler is that it gives uniform count irrespective of Figure 2 : Elbow Assembly Unit
varying load. 2.3 Gripper Assembly
Speed at which Shoulder Motor Rotates : 60 r.p.m. The robot being a PNP-type has a gripper as the end
Gear Ratio of worm and worm wheel : 1:20 effector. The gripper is of parallel jaw type, which
Speed at which Axis of shoulder joint rotates : 3 works on the principle of left-hand / right-hand screw.
r.p.m These jaws run on the LH / RH screw. The LH / RH
Rotation of Axis per second : 3/60 = 1/20 screw is made by tapping a brass rod with LH die from
This states that one complete revolution of shoulder one end and RH die from other end. This ensures that
joint Axis moves arm by 360°. the gripper jaws move in the opposite direction, that is,
Therefore 1/20 revolution of shoulder joint axis the jaws move either towards each other to grip an
moves arm by 18° at this time count at Rotating Disk object or away from each other to release it as shown in
is 90 / 20 = 4.5 (For one rev count is 90 therefore for Figure 3.
1/20 rev count is 90/20)
Hence, for every increment in the count there is
(18°/4.5 = 4°) rise in angle.
2.2.3 Elbow Joint Motion
The motion is actuated by a very compact mechanism
of worm and worm wheel. The double helical worm is
fitted on the motor shaft, while the worm wheel is fitted
on the shaft, which provides elbow rotation. The speed
ratio of this arrangement is 1:20, that is, the worm
wheel makes one complete revolution when the worm
makes 20 revolutions. The motor is fixed on the lower
plate of the inner arm. The position of the motor is so
adjusted that it does not obstruct the rotation of the
outer arm. The plates of both the arms are coupled to Figure 3 : Gripper Assembly Unit
the shaft with the outer arm plates inside the inner arm
plates. The LH / RH screw is coupled to a small dc tape motor
shaft ( 12V, 1A) via a bevel gear arrangement in the
The shaft moves in a pair of Brass bushes in the inner ratio 1:1 as shown in the Image. One limit switches are
arm plates. Contact between the two plates is avoided placed at the inner ends of the finger. This limit switch
by a pair of thrust bearings between them. The upper is connected to the controller card and is used to
plate of the outer arm is pinned to the shaft motor. prevent the further closing of the fingers after the
Actuating the motion is a DC tape motor; small in size object has been gripper properly . Another limit switch
with considerable torque and speed. The motor is light is attached to the extreme end of the maximum opening
in weight (200gm) and easy to control, thus making it of the gripper which is also connected to the controller
an ideal choice for actuation. In elbow axis, second link card.

27
2nd International Conference on Autonomous Robots and Agents
December 13-15, 2004 Palmerston North, New Zealand

The maximum opening of the gripper is 75 mm. The Common terminal is connected to GND while Vcc
gripper motor used has following specifications, viz., (+5V) is directly applied to NO through resistance, also
Type : DC Motor, Torque : 2kg-cm, Current rating : NO is connected to one of connector of 1: 8
0.5A, Direction : CW-CCW Motion. Multiplexer on controller card.

3. SENSORS
Incorporation of proper feedback mechanism of
sensory information to the robot can enable it to
perform complicated tasks. Sensors perceive the
environment and provide vital feedback information to
the robot. Sensors are the eyes of the robot , i.e., they
act as the vision system and make the robot very
intelligent . Sensors are used to obtain the position and
orientation of the robot arm and that of the obstacles in
the surrounding environment in the 3D space . They
are defined as the sensory data preceptors which detect
the changes in the surrounding environment (detect the
obstacles) and get adaptable to those changes
Figure 4 : Working of Diffused scan sensor
(overcomes the obstacles, avoids collision and proceeds
towards the destination) . They are nothing but the
feedback devices which are used to obtain the position
and orientation of the object / obstacles and this
information is fed to the robot system to properly
configure the tool / gripper and reach for the object,
avoiding all the obstacles in its path of motion.

3.1 Necessities of sensing


The main purpose of equipping robots with intelligent
sensing [5] and vision is to enable them to work in
nonstructural and random environments. A robotic
gripper will always tend to grip an object that it was
programmed to grip at a specified point. Then there
might be an obstacle in its path. So the robot must
intelligently sense the obstacle and move around it and
reach the object and grip it. Therefore robots must be
equipped with such sensing devices called sensors.
Robots equipped with such sensors are called Figure 5 : Limit Switch
intelligent robots.
When mechanical Limit reaches, NO gets Logical
3.2 Sensors used in our work GND (NO physically gets connected to C through strip)
which is read by software running at background and
1. Diffused scan sensor ( EIR – 301 ). immediate action is taken.
2. Limit Switches.
3. Opto-coupler ( Encoders ) 3. Opto-coupler : It works on infer-red. Opto-coupler
has two sections Emitter and Collector. Emitter is
1. Diffused scan sensor : We have used EIR 301
nothing but a Photo-Diode that emits infra red after
Scanning / Diffused scan Sensor that works on infrared
receiving proper voltage and current. Note that small
for obstacle avoidance connected on front side of robot.
Register is used to drop down current to the Anode of
General Specifications : Supply : 10-24V DC, Peak
Diode. Register is necessary because if current at Photo
30V, Standard Output, Mode / Current - PNP/100 mA,
diode is higher it will burn out. Collector is Photo-
Switching Frequency : 25 Hz.
transistor; emitted light falls on base of transistor.
Conditions of working : Standard Temperature max 50 Depending on the intensity of light base current varies.
C, Clear to sight dust laden atmosphere, Protection IP A situation comes when rise base current moves
44 / IP 40. The Option to Standard Features are : transistor from cut-off to saturation. With Transistor is
Output NPN, Higher Switching frequency. in ON state, indicates Logic 0 at the output, (One of the
2. Limit Switch : The Limit switches are normally output terminal is directly connected to connectors J1
connected so as to detect extreme ends of motion of to J5 present on the controller card) read by the
Links. It has three terminals C, NO, NC stands for software that polls output of opto-coupler at regular
Common, Normally Open and Normally Close. The interval.

28
2nd International Conference on Autonomous Robots and Agents
December 13-15, 2004 Palmerston North, New Zealand

provided the input/output voltage differential does not


exceed 7 volts, otherwise excessive power dissipation
will result and thermal shutdown will occur. This
occurs at a dissipation of about 700 mw ; however the
metal can version can dissipate 1.4 Watts if fitted with
a heat sink.

Figure 6 : Optocoupler ( Encoder ) Figure 7 (b) : Power Supply Circuit


Values : Conventional Filter capacitor C1 : 4700 µF/
4. Electronic Subsystem 40V, Regulation Capacitor C2: 1 µF/ 40V,Regulation
Electronic Subsystem [4] is the interface between capacitor C3 : 10 µF/ 40V, Potentiometer P1 : 2 KΩ
Mechanical assembly and the PC. The Electronic and resistors R1, R2, R3 of 120 Ω, 220 KΩ, 27 KΩ
System consist of the Power Supply Unit and the
Control Unit. 4.2 Control Unit

4.1 Power Supply Unit

Figure 7 (a) : Power Supply Circuit


Values : of the PS unit are Capacitor C1 = 1000 µF / Figure 8 : Controller Cards
25V, Regulation Capacitor C2 = 330 nF, Regulation
Capacitor C3 = 10 nF, Transformer Secondary = The Control Unit consists of :
7Vrms. 25 Pin D Male Connector : This connects the driver
The DC Motors employed in the project are 12V DC circuit to the PC through the parallel port. The program
motors, which need 12 V to get energized and start sends the byte combination to energize the desired
rotation. The Controller card needs 5V supply for motors, which reaches the driver circuit through the 5-
various IC’s in the circuit. Thus we have designed 12V meter Data Cable to the input of the driver circuit.
at 5A and 5V at 1A power supply cards. A 5V / 12V Output Expansion circuitry : Here, we designed a
supply is designed, because the cumulative current circuit that controls up to 64 TTL or CMOS compatible
drawn when all the motors are energized is around 4A. outputs.
Thus as a safety measure, a 5A supply is selected. The
power supply consists of the a line fuse of 5A, a multi- Working of the circuitry is as follows. The simple
parallel port has got 25 pins and is used as the interface
secondary winding step down transformer, the C filter
between the robot and the controller. The PNP
circuit to remove the ripples, the bridge rectifier and the
regulator circuit. The regulator circuits are designed operation of objects is carried out using 16 by just
calling 16 routines with appropriate counts as shown in
using 78L05 IC – which provides a 5V / 1A and a
the Table 1 above. H-bridge using P and N channel
LM338 IC – which provides a 12V / 5A stabilized dc
output voltage. The various parts of the power supply MOSFET’s Unit is being designed, fabricated and used
to drive all the actuators used in the system and is as
are shown in the Figure. All the regulators in the 78L
series will deliver a maximum current of 100 mA shown in Figure 9.

29
2nd International Conference on Autonomous Robots and Agents
December 13-15, 2004 Palmerston North, New Zealand

Signal Description STOP Mode : When A= 0 and B = 0, the motor is


TMLCW Trolley Motor Left CW stopped.
TMLCCW Trolley Motor Left CCW REVERSE Mode : When A = 1(+5) and B=0 , the
TMRCW Trolley Motor Right CW motor is in reverse. Q1 is turned on as Base-emitter
TMRCCW Trolley Motor Right CCW voltage crosses 0.7V that ensures 0V at gate of first and
TMLRCW Trolley Motor Left / Right CW third MOSFET pair. Q2 is turned off by the voltage at
B. Since Q2 is off gate terminals of MOSFET pairs .
TMLRCCW Trolley Motor Left / Right CCW Second and Fourth gets +12V that provides low
TMLCWRCCW Spin in clockwise resistance path for current to flow through it and
TMLCCWRCW Spin in Counter Clockwise through Motor windings. Upon getting sufficient
BMCW Base Motor Clockwise voltage and current Motor start rotating in counter
BMCCW Base Motor Counter Clockwise clockwise direction.
SHMCW Shoulder Motor Clockwise FORWARD Mode : When A=0 and B=1(+5), the
SHMCCW Shoulder Motor CCW motor is in forward. Q2 is turned on as Base-emitter
ELMCW Elbow Motor Clockwise voltage crosses 0.7V that ensures 0V at gate of second
ELMCCW Elbow Motor Counter clockwise and fourth MOSFET pair. Q1 is turned off by the
voltage at B. Since Q2 is off gate terminals of
GMCW Gripper Motor CW ( Open ) MOSFET pairs first and third gets +12V that provides
GMCCW Gripper Motor CCW ( Close ) low resistance path for current to flow through it and
Table 1 through Motor windings. Upon getting sufficient
voltage and current motor start rotating in counter
clockwise direction.
NOT ALLOWED Mode (or fuse test mode) : Condition
A=1 and B=1 will turn on all MOSFET’s which shorts
out the power supply among other things - Not
recommended. This care is taken by the short circuit
prevention circuitry.
Miscellaneous Information : Motors make a lot of
electrical noise from the brushes when running and
huge electrical spikes when stopping, starting and
especially changing direction. C1 and C2 try to
suppress the noise spikes. Negative spikes are shorted
to either ground or the power supply by D1 to D4.
4.3 Input Applications :
Because Parallel port’s most common use is to send
data to printer, you might think that port is useful only
Figure 9 : Schematic of the H-bridge for sending information from a PC to a peripheral. But
MOSFET’s are extremely static sensitive but more you can also use the parallel port as a input port that
important is that if the Gate is left open (no reads information from external devices. SPP have five
connection), the MOSFET can self- destruct. The Gate status inputs and four bi-directional Control lines, and
is a very high impedance device (10 + MΩ) and noise on many newer ports (PS2), you can use the eight data
can trigger the MOSFET. Resistors have been added lines as input as well. It was decided to use five status
specifically to stop the MOSFET from self destructing. input so as to read status of motors and Sensor. Since
The resistors pull-down the Gates and turn off the every motor has two limit switches and opto-coupler to
MOSFET’s, not to mention adds some static protection. read it’s status, then for 6 motors we must have 18
Back EMF protection is provided by diodes D1 to D4 input lines and also one for Sensor interface. Hence, we
via route, back EMF from the motor back to the power have implemented circuit that could read 3 Bytes (24
supply. Q1 and Q2 are NPN transistors that control DC Bits) of input.
motor action. 4.4 Working of the Control Circuit
4.2.1 Modes of Operation : U13, U12, U11 are 1:8 Multiplexers ( Data Selectors )
that selects three out of twenty four lines, which are
Inputs Output of Output of Output of Input to H- then directly connected to status input lines S0, S1, S2.
P Q EXOR AND NOT Bridge
Each Multiplexer has Three select lines ( A, B, C ).
0 0 0 0 0 1 1 5V 5V Combination of three select lines chooses one of eight
0 1 1 0 1 1 0 5V 5V lines ranging from ( I0 to I7 ). I0 to I7 of each IC are
1 0 1 1 0 0 1 0V 5V connected to 8 Pin connectors J1 to J5 which are used
1 1 0 0 0 1 1 5V 5V to take feedback from Motors.

30
2nd International Conference on Autonomous Robots and Agents
December 13-15, 2004 Palmerston North, New Zealand

The Data Path D0-D2, through 74HCT374 latch 5. Design of the software algorithm
connected to each multiplexers select lines in parallel.
NO of limit switches are directly connected of the
inputs of Multiplexers.
Opto-coupler is four terminal device, whose on of the
output terminal is directly given to Multiplexers.
Sensor Interface: It operates in the range of 10 to 25V
DC supply. It has three colored wires; Blue is
Grounded, Brown is connected to 12V and output is
taken between Black and Blue as explained in previous
sections.
The two constraints are defined by manufacturer. Figure 10 : Block Diagram Of Mobile Robotic System
Object not Sighted : Output Low ( 0V ).
Object Sighted : Output High ( 10V ). CRUI employs a sophisticated application-controlling
interface created in visual basic 6.0 as it is a fantastic
As the control unit operates on TTL logic must supply programming language for any application software
+5V for Logic High and 0V for Logic Low. On development. The software is designed for maximum
detection of opaque object, Output high (10V) signal is Robot control & working efficiency. It is so designed
passed through 7805 voltage regulator and 7486 NOT that the user can have complete control over each
IC converting it into Logic High and then into Logic movable part of the Robot. Also the user can easily
Low. This Active Low on the line is detected by maneuver the Robot & make it traverse a path towards
software and both trolley Motors are immediately the object to be picked. He can then manipulate the
stopped. The range can be easily adjusted with small different limbs of the Robotic arm so that the gripper
screw provided at back. comes closer to the object & eventually picks it up. VB
Function Table : is selected as it is a simple, yet powerful, windows
EP : Encoder Pulse ( From Opto-Coupler ) platform based programming language, which provides
USW : Upper Limit Switch us with a complete set of tools to simplify complex
LSW : Lower Limit Switch rapid application development.
UpSDn : Up side Down Limit Switch Visual refers to the method used to create the GUI.
DnSUp : Down Side Up Limit Switch BASIC stands for Beginners All Purpose Symbolic
TMLSP : Trolley Motor Left Sensor Pulse Instruction Code. VB is a combination of these two.
TMRSP : Trolley Motor Right Sensor Pulse The best part of VB is that it is an object oriented event
GPCL : Gripper Close Limit Switch driven language which means that we write code
GPMW : Gripper Maximum Width Limit Switch. specific to only desired events of an object. The object
written in VB6 does not respond to events that are not
4.5 Design Features of Control Unit coded by us and hence there is a less chance of errors.
The software module to be developed in order to
Control Circuitry works on TTL Logic : Since output
control the robotic system to do successful
from PC’s port is in the TTL form, The control Unit
manipulation tasks will be consisting of the following
designed accordingly. The TTL Short Circuit
features.
Prevention Logic : This circuit, a part of the Control
1. Manual mode control,
section, is a protection mechanism, employed by us to
2. Programming mode of control,
ensure that the motor does not receive 12v signal on
3. Dynamic home position reset facility,
both the CW and CCW inputs which may cause the
4. Facility to loop operation to do the same task again
motors to get stalled. The H-Bridge has 2 direction
and again.
Inputs for each motor, which should be activated
5. Teach mode,
exclusively and not simultaneously. The TTL Short
6. Parallel Port Interface.
Circuit prevention Logic makes sure that if both signals
(CW and CCW) for a motor are low simultaneously In 1, the system is controlled manually by pressing a
then the input to the Bridge on both the direction lines computer key. Each key is assigned for a particular
will be Logic 1. This is because Logic 1 as Input, to operation.
both Inputs of Level shifter ( Level shifter Implemented In 2, the user writes a application program for the robot
by using simple BJT in self bias mode ) will give 0V to to do a PNP operation using the built-in sub-routines
input of all MOSFET pairs , that keeps motor off. and execute it.
In 3, the system comes to the reference home position
Control unit is designed in such a way that 8 Motors
once the reset button is pressed. All the angles,
can be controlled. Slight enhancement in the circuit
distances will be measured from this reference /
will allow to control maximum Twenty Four motors.
resetted home position.

31
2nd International Conference on Autonomous Robots and Agents
December 13-15, 2004 Palmerston North, New Zealand

In 4, the robot can perform the same task again and angle in degrees is to be specified in the combo boxes
again repeatedly by looping the program ‘n’ number of provided for the same.
times.
ROTATE [Motorname with direction, Angle]
In 5, the user teaches the robot how to do a particular
task. Once he is teaching the robot how to do a OPEN : Command given to open the gripper
particular task, all the instructions will be stored in the CLOSE : Command to close the gripper
memory. Once taught, the robot can perform the same SPIN : On clicking the Spin button the user is required
task again and again. to select the motors (Trolley motor Left or Right) as
In 6, the PC interface to the system is done through a specified in the combo boxes provided for the same.
parallel port as it is a powerful platform for SPIN [Motorname with direction]
implementing projects dealing with the control of real INSERT : Command to insert a blank line of code
world peripherals ( Robots and its accessories ) and between any two instructions in the program.
multiple bits can be transferred in and out of the system DELETE : Command to remove a line of code from the
at once and as a result of which multiple actuators can program
be controlled at the same time. This reduces the on-
RUN : Command to invoke the run screen where the
time of the motors, thus saving the power of the power
loaded program is executed
supply. The Robot basically works in two modes.
Programming Mode. Manual Mode. MENUS : The screen features the following menus :
FILE Menu : This menu has options related to handling
5.1 Programming Mode of files and exiting the application. They are NEW (Ctrl
In this mode of working the robot is fully controlled by + N), OPEN (Ctrl + O), SAVE (Ctrl + S), SAVE AS
the user’s commands. It accepts the commands for the (Ctrl + A), CLOSE (Ctrl + L), EXIT (Ctrl + X).
various motors from the input interface. The software
EDIT Menu : This menu facilitates cut copy paste
provides the user full control of manipulating any
operations in the program such as CUT (Ctrl + X),
movable part of robot. Each and every command works
COPY (Ctrl + C), PASTE (Ctrl + V), MODES
on feedback system. The software provides the user
(MANUAL MODE, PROGRAMMING MODE),
with the ability to write his / her own programs using
HELP.
the commands provided. The programs written by the
user employ the intelligent path decision feature of the
application. This feature highlights the ability of the 5.2 Manual Mode
program to calculate the various angles associated with This interface allow user to select individual Motor and
the robot and take a decision about enabling one or activate it for any particular time period until it stops
more motors simultaneously to save on time and power automatically by receiving command by computer that
consumed in reaching the destination point specified by violation has taken place or on a user wish. This screen
the user. allows direct control of each motor employed in CRUI .
The screen is invoked from the programming mode
FEATURES : It is the start up screen for the software screen when the user selects it from the menu bar.
application ; Features a complete HELP file, which can The screen features : Manual control of each motor,
be invoked from the menu provided ; Has a menu, Fine positioning of the base, rack, elbow and roll,
which enables the user to select different options ; Facility to rotate the motors clockwise and
Simple yet powerful interface ; Ability to loop counterclockwise, Automatic RESET function to bring
operations ; Cut - copy - paste Instruction function ; the robot to the reset/home position on startup,
Facility to save current program ; Facility to save Dynamic reset function to allow the user to bring the
current program with different name ; Insert function ; robot to the reset position at any instant.
Minimization of typing ; Editing of program is possible
by use of up / down buttons. ABOUT THE SCREEN
ABOUT THE SCREEN CODE box : The program MOTOR SELECTION LIST BOX : The screen
loaded / generated by the user is displayed in code box. features a list box, where the user selects the desired
PROGRAM Commands : The screen provides the user motor. The user selects the motor by double-clicking
with following commands in the form of buttons which on the motor name in the list box.
are discussed as below : MOTOR SELECTED TEXT BOX : The selected
MOVE : On clicking the move button, the user is motor is then highlighted and displayed in the motor
required to select the motor (Trolley motor Left or selected textbox.
Right) and the distance in meters is to be specified in
the combo boxes provided for the same. MOVE DIRECTION OPTION BUTTONS : The clockwise
[Motorname, Distance] option button is enabled by default. The user can
ROTATE : On clicking the rotate button, the user is change the direction of rotation prior to pressing the
required to select the motors (Trolley motor Left or start button. The user is required to click on the option
Right, base, Elbow, Gripper with Direction) and the button for selection of the direction.

32
2nd International Conference on Autonomous Robots and Agents
December 13-15, 2004 Palmerston North, New Zealand

START BUTTON : The START button, when clicked, depend on the speed of the motors but also on the gear
enables rotation of the desired motor. On clicking the ratios and loads. These values are pre-calibrated and
start button, all the remaining components on the loaded into the reference variables of the software. A
screen except the stop button are disabled as a feature to change these values in the software, in the
precautionary measure. event that the motors are replaced is also provided.
The program calculates the angles associated and then
calculates the different time intervals corresponding to
these angles. These intervals are then loaded into the
timers used in the program. The program then sends the
necessary byte to the parallel port to turn on the desired
motors and then the timers are started (that is, the
timers are enabled). After a timer’s interval elapses, the
respective timer raises a timer event, which the
program uses as a cue to stop the desired motor. The
program sends a byte to the parallel port to stop the
necessary motor while at the same time not affecting
the status of the other motors.

5.4 Sample Application


In the teach method, Select manual mode of operation.
By selecting Trolley Motors with proper direction
move robot towards the object, this is possible by
simply pressing START button. After Robot reaches to
specific position press STOP button. Then by selecting
Figure 11 : Screen Layout - Programming Mode individual motors and direction make movements of
links such that Gripper should reach to the object.
Close Gripper motor and move object to desired
position. In the programming method [1], select the
programming mode of operation. Write set of
instructions that will move robot towards object grip it
properly and place it to given position.

6. Conclusions
A design and implementation of a low cost mobile
robot was described. It implied the choice of several
alternatives such as materials, motors, programming,
sensors, controllers and so on. Experiments were
conducted to demonstrate its utilities. A user friendly
GUI was developed. The vehicle presented is a good
experimental robotic base for the future development of
algorithms and paradigms for the navigation, mapping,
trajectory planning and task planning. A brief
Figure 12 : Screen Layout - Manual Mode kinematic analysis of the robot was also carried out. A
STOP BUTTON : The STOP button, when clicked, number of pick and place operations were successfully
disables rotation of the desired motor by sending byte 0 performed by the developed robot by using teaching
to the port. On clicking the Stop button, all the mode , manual mode and programming modes.
components disabled by the start button are re-enabled.
MESSAGES : The messages are an indication, to the 6. References
user, of the motor selected, the direction of rotation. [1]. Costa, N., and et.al., “Robots Navigation on a
5.3 The Logic Algorithm Dynamic Environment”, World Automatica
The application makes use of visual basic’s timers. The Congress ’98, Anchorage, Alaska, USA, 1998.
main function of the program is to calculate the various [2]. Dr. Amitabha Bhattacharaya, “Mechatronics of
movement angles and movement distances associated Robotic Systems”.
with the robot from the user given data. The movement [3]. Groover, Weiss, Nagel and Odrey, “Industrial
angles and distances are then converted into time. A Robotics”, McGraw Hill.
calibrated value of time taken to move through one [4]. Manjunath. T.C., “Fundamentals of Robotics”,
revolution, that is, 360 degrees, is known. This time Nandu Publishers, 3rd Edition, Mumbai, India.
will be different for the base motor shaft, elbow motor [5]. Klafter, Thomas and Negin, “Robotic Engineer-
shaft and roll motor shaft since this time will not only ing”, Prentice Hall of India, New Delhi.

33

You might also like