1. Final Report
RME40005 Final Year Research Project 1
Mitch Kennedy(9505482) Bawantha Liyanage(5845742)
November 2, 2015
i
2. 1 Abstract
Wireless Robotic networks are being actively researched on their applications in many types of fields.
Current research is devoted to using homogeneous Wireless Robot Networks which are very good at
scaling efficiency with increase robots. The problem with homogeneous networks is that the cost of
each robot is large and therefore to get a large enough network to take advantage of the scaling factor.
We propose using heterogeneous Wireless Robotic Networks to see if we can continue with the scaling
efficiencies of homogeneous networks while significantly decreasing the cost per robot. This report
sets out the requirements of this project for us to consider, as well as setting out the implementation
plan and time frame. We then set out the research plan for the project which will include testing the
mapping and collecting skills of the robots.
ii
4. 2 Introduction
This report covers the intent of research to be covered by our project over the next semester, this
report will cover the requirements of this project, the implementation of the robots, and the planned
testing phases. The implementation of the robots is broken down into two main sections, the micro-
controller systems and the physical design.
1
5. 3 Mirco-Controller Systems
The micro-controller systems section has been broken down into subsections of Micro-controller selec-
tion, Wireless communications, Robot locationing, movement planning and sensor control systems.
3.1 Micro-Controller Selection
This project will require microcontrollers to control both the Master and Slave robots, given that
the intent of the project is to show that the slave robots can be as cheap as possible we will need to
select two different microcontrollers, one simple controller used only for running the slave robot and
one complex controller for running the master robot and calculating the instructions for each of the
slaves.
For the microcontroller of the slave robot, our requirements are that it needs to be able to communicate
with the wireless module we chose, run the motors, and read the sensors. These requirements are
met by almost all micorcontroller boards on the market today.
For the microcontroller of the master robot our requirements are much more advanced than the that
of the slave robots. The master robot must meet all the requirements of the slave robots, as well
as process the image feedback sensor, and the swarm route planning of all the slave robots. These
requirements are very high for an embedded system, this adds in the possibility of being able to offload
this processing to an external computer for analysis and computation, therefore the requirements of
the master controller are that it can network wirelessly with a computation computer, interface with
a camera, and run the motors and sensors of the robot.
Given the requirements set out each of the controllers, we have chosen to use the Arduino Nano for
the slave and the Raspberry-PI controller for the Master.
3.2 Communications
3.2.1 Network Topology
The wireless robotic network we have proposed requires each node to be able to communicate with the
master robot, and for the propagation delay to be as small as possible. The data throughput of the
pipelines between the master and slaves is very minimal.We will also need the ability to communicate
with an external computer to compute harder calculations.
3.2.2 Communications Modules
Allowing for these considerations we have chosen to use the nordic NRF-24l01+, it allows for multiple
channels of communication and is compatible with the arduino and raspberry-pi selected for control-
ling the robots.
We would also choose to add on a wifi attachment to the raspberry pi for the connection to the
external computer.
3.3 Robot locationing
3.3.1 Range
For range detection of the robots we will use the Cricket feedback system,the Cricket feedback system
is based on using two signals with different travel speeds, and comparing the differences [1]. For our
project we will evaluate the effectiveness of using an ultrasound speaker/receiver as the slow signal,
and using either and rf signal or IR light signal as the fast travelling signal.The advantages of using
an RF based system is that the receiver and transmitter don’t need to be within line-of-sight of each
other to work, however the disadvantages are that receiving and RF signal may take some processing
time and produce inaccurate results. The advantages of an IR light bases system are that there is no
processing time to detect a signal, however the disadvantages of the IR based system is that emitters
and detectors need to be in line of sight of each other.
2
6. 3.3.2 Direction
For the master robot to be able to detect the direction of the slave robots we will place a camera on
the master robot and RGB LED’s on the top of each of the slave robots. The image captured by the
camera will be filtered of all colours but the basic colours the robots are projecting, and then will
find the angle of each robot by using a lookup table of pixels on the image to directions of the robot.
3.4 Movement Planning
For the movement planning of the robots we will be following the system of outlined in [2]. This
will require the master robot to have an updated location of each of the slave robots, and updated
information about what the slave can sense in the adjacent areas. We will have to optimise the values
each area receive so that none of the movement requests sent from the master robot cause the slaves
to go out of line of sight of each other and the master.
Figure 1: Example of the view the system can have of the robots in action
3.5 Sensors and Control Systems
For our robot accurate position data is much more important than velocity information so we have
decided to use only positional feedback of the wheels. Positional feedback can be created through
potentiometer feedback, or using rotary encoder.
3.6 Obstacle Detection
IR sensor is used for obstacle detection in slave robots. IR sensor is very important for the project
since IR sensor will be the one that detect obstacle and therefore collecting the most important data
for the mapping process.
A basic IR sensor uses an emitter and receiver. When the emitter emits the IR light on to a surface
the reflected light will be absorbed by the detector. In this project, IR sensor will be active through-
out the operation, when the slave robot detects an obstacle it will send the data to the master to
create a map. The effectiveness will however vary with the colour on the surface of the obstacle;
darker obstacle will absorb most of the light emitted by the emitter leaving only few reflections to be
detected by the detector.
3
7. Figure 2: Process of sensing with IR
3.7 System Design
The modules defined in the previous sections will be integrated into a larger system, these systems
are shown in Figures 3 and 4.
Figure 3: Slave System Diagram
4
9. 4 Physical Design
The physical design is important to any project which involves some form of hardware. This project
involves robots with advance yet sensitive systems and components that carry out communication,
data processing, movement and many other functions. Therefore to minimize any failure a strong
and an accurate physical build is a necessity.
This project involves two types of robots;
• Master robot- Master robot is electronically advanced and physically large compared to the
slave robot. It acts as a moving base for the whole project and process most of the data.
• Slave robots- Slave robots are the smaller robots in the project. Their purpose is to collect data
for the master for processing. Therefore travelling greater distances than the master.
Components of physical design
Physical design section has been broken down into subsections of Robot Design, Build and Movement.
4.1 Robot Designs
Before building, there is design. In the modern world product design is of high recognition, in the
product design process of a robot, physical design holds high importance. Objective of a design is to
visualize the intended product before building. In this project the design will be used as a guideline
for building the robot thus, minimizing chances of an inaccurate end product.
4.1.1 General Requirements
• Sufficient Space
Goal: The robots should be able to accompany all the components efficiently description
• A wheel Set-up
Goal:The robots should be equipped with a simple and effective wheel set-up.
• Placement of Specific Components
Goal: The robots should be designed to accompany certain components without interfering
them.
• Cost
Goal: One of the main objectives of this project is cost effectiveness
4.1.2 Alternate considerations
In this project several design alternatives were considered for the robots. After a thorough assessment
of advantages and disadvantages several design were discarded.
4.1.3 Selection and justification
The two robots- master and slave consists of different electronic components therefore according to
the requirements listed the two robots needed to be dissimilar in design to accompany the different
types of components. In this project it was also agreed upon keeping a dissimilar outlook between
the slave and the master mainly for visual purposes. Slave robot will make more movements than
the master robot since master robot uses a leapfrog method for movement, while slave robot actively
search for obstacles at the given time.
For the master robot, the use of tracks as the wheel setup and the use of a truss based chassis was
heavily considered- since the movements of the master is minimal the track system was sufficient, the
trusses would also create a strong chassis but, due to the complexity of a full truss and due to the
cost of a track system the idea seemed to be over engineered, the design idea was then discarded.
Finally a novel design with a two wheel setup was designed, this design is less complex to design
and manufacture, and consists of components that are clearly defined. The design consists of several
levels to attach components, this design use space effectively as required.
6
10. Figure 5: Robot Chassis with tracks
Figure 6: Selected Design for the Master Robot
For the slave robots, the use of smooth wheels was considered from the beginning of this project.
The initial design idea was to create a 4 wheeled robot with a turning mechanism at the front wheels.
This idea was quickly rejected and a 2 wheeled setup was chosen as the 2 wheel setup is cheaper and
easier to maneuver . As you can see this design is properly implemented with necessary spaces to
accompany specific components such as the IR sensor at the front.
7
11. Figure 7: Four wheeled design
Figure 8: Design selected for the slave robot
4.2 Building of structure
Using the designs as a guideline building process could be set in motion but, unlike designing building
usually involves a scheme of trial and error operations before fine tuning. The building process of
this project falls under the implementation plan; implementation will start at the start of summer
holidays and end towards the end of semester 1, 2016 but, we have selected several processes and
materials which we consider as viable.
8
12. 4.2.1 Requriements
• Robustness
Goal: Master and Slave robots should be able to carry necessary components. Structure should
be stable enough to withstand minor impacts.
• Easy Modification
Goal: Editing space for any improvements in design
• Cost
Goal: One of the main objectives of this project is cost effectiveness
4.2.2 Methods
To create the structures of master and slave robots, laser cutting was the best option. We were
hoping to purchase wheels for the robots. Now, due to increasing popularity in Rapid Prototyping
(3D printing) we were motivated to research on the viability of 3 dimensional printing before choosing
an exact process to create robot’s body components.
Advantages Disadvantages
Laser Cutting Speed Accuracy when carving is low
Refined Product
Rapid Prototyping Material wastage is minimal Material Restrictions
Single process for a design
Slow; could take few days
The two methods are radically different in nature. One removes material, the other adds material.
However looking at the research we decided upon using both methods to create several parts of the
robots including the wheels.
4.2.3 Materials
Materials When selecting the material for the robot, we tried to use material that could easily be
used for either laser cutting or rapid prototyping. Metals can be used in laser cutting but metals are
difficult to be modified therefore metals discarded.
The final materials selected were Plastics, Rubber and Acrylic.
Plastics such as PLA and PVA are used in the printer for 3 dimensional printing. Plastic is somewhat
robust and easily to modifiable. Printing can be carried out at the university
Acrylic sheets are readily available at the university workshop. Acrylic is usually a transparent ma-
terial that is heavily used as faux glass or in the eyeglass industry. Laser cutter can create perfect
acrylic structures and acrylic is easily modifiable. We should get permission to operate the laser
cutter; it is free for Swinburne students.
Rubber will only be used as the cover for the printed wheel. This will be carried out to reduce friction
between the wheel and the floor surface.
Metal usage in the basic structural components will be negligible, possibly only limited to nuts and
bolts.
Below are exploded views of our design with potential materials and processes;
Master Robot- Components 1 and 2 will be the 3D printed plastic wheels with the rubber cover.
Component 3 is the main body of the robot which will also be 3D printed. Components 4 and 5 are
the cover and the level 2 respectively both of these parts will be created with acrylic, which will allow
us to glance at electronic components inside.
9
13. Figure 9: Exploded View of the master robots basic structure
Figure 10: Exploded view of the slave robots basic structure
Slave Robot- Components 1 and 2 will be the 3D printed plastic wheels with the rubber covers.
Component 3 is the base of the robot which will also be 3D printed in plastic. Components 4 and 5
are the level 3 and the level 2 respectively both of these parts will be created with acrylic, which will
allow us to glance at electronic components inside. Component 6 is the only metal component used
in the robot; these metal rods are used to supply extra strength to the structure.
10
14. 4.3 Movement
General requirements
• Ability to move and steer
Goal:All robots should be able to move forward and turn at a given angle
• Balance
Goal: Have a mechanical system to balance the robot with minimum interference to movement
• Torque of the motor
Goal: The motor should be powerful enough to drive the robot.
4.3.1 Wheel Setup and Driving Mechanism
As explained in the robot design section a 2 wheeled setup was selected as the final design. Both
Master and the slave use the same setup as well as the same mechanism. In the actual design a third
wheel is embedded into the robots. This wheel is a ball caster wheel which rotates in Omni directions.
The purpose of the ball caster wheel is to physically balance the robots which otherwise requires a
control system to balance in 2 wheels, the wheel also support manuverbility.
Figure 11: Ball caster wheel balancing the robots
Figure 12: Ball and ball Socket
11
15. In this project the driving mechanism uses the voltage input given to the DC motors through the
controller. Therefore to move straight one must make sure that both wheels turn in-sync to each
other. To reduce such error, a rotary encoder is used which will count the rotations of the motor and
acts according to the motor feedback.
To turn, the motor on the opposite direction must spin faster than the one on the turning side, if
not the motor on the turning side has to be inactive/idle. This diagram of our slave robot shows two
positions of the same robot, while moving forward both motors are active, when turning the motor
has stopped temporary.
Figure 13: Driving mechanism in the robots
4.3.2 Motor
Alternate considerations The motor is an uttermost valuable part of this project; it is the limbs of the
robot. It has been somewhat difficult to select the capacity of motor without a proper understanding
of the power consumption by other components. It is also difficult to place the motor without assess-
ing the actual build. When placing the motor factors such as centre of gravity of the whole system
has to be considered to adjust the placement of the motor so as to get the maximum torque output.
Requirements
• Sufficient Torque
Goal: The motors should create enough torque to move the robot
• Small, light yet powerful
Goal: Motors must be light enough to be carried, small enough to fit in to the design.
• Cost
Goal: Cost effectiveness is one of the main objectives in this project
First we calculated the Weight of the two robots.
We assumed thickness of acrylic is 3 mm, therefore for 1 square feet (0.092 square meters) the mass
of acrylic was close to 350 g
Another assumption that we assumed Acrylonitrile butadiene styrene (ABS) was used as the 3D
printing material, which is a very common material used in rapid prototyping. The minimum density
of ABS pellet was found out [3] to be 720 kg/m3. Using that we calculated [4] the mass of master
robot’s chassis, there width was selected as 30mm since the chassis is not a solid cuboid. We also
calculated the mass of slave robot’s base. We also calculated the mass of the wheel.
We assumed 6 AA batteries are used for a voltage of 7.2 V at 2A. Mass of a AA battery is roughly
0.025 kg [5]. This table consists of total mass approximation of each robot.
12
16. Mass for Master Robot Mass for a slave Robot
3D printed components Chassis - 0.43kg Base- 0.055kg
Wheels - 0.32kg Wheels 0.32kg
Acrylic components 0.5kg 0.3kg
Battery 0.15kg 0.15kg
2 Motor 0.05kg 0.05kg
Microcontroller 0.045kg 0.025kg
Electronic components 0.1kg 0.1kg
Other 0.05kg 0.05kg
Total 1.195kg 1.05kg
We can calculate
the weight of robots by using W = mg; Assuming g = 9.81 m/s/s Therefore, the weight of Mas-
ter Robot is approximately 11.7 N and the Weight of a Slave robot is 10.3 N approximately.
Using mass we can calculate the rolling friction Fr for a single wheel.
Since the project focuses on indoor robots, we can assume there is no air friction therefore rolling
friction is the only force that opposes motion of our robot. So, Torque equation was used to calculate
the torque for a single motor for a single rotation of a wheel.
Several assumptions were made in this calculation;
1. Weight carried by the caster wheel is neglected.
2. Each wheel share equally share the weight of the robot thus, W/2
3. Rolling coefficient b for a car tire on a concrete surface is 0.01-0.015 [5], since we are testing
robots on a smooth tile a lower value 0.01 was used.
4. No air friction
5. Robot travels roughly d= 0.14 m linearly for a single rotation of the wheel; circumference of
the wheel is 0.14 m
Rolling friction equation
Fr =
W × b
r
(1)
W is weight, b is rolling friction coefficient and r is the radius Torque equation
τ = F × d (2)
τ is torque, F is Force and d is Linear distance travelled For the master Robot
Fr =
11.7/2 × 0.01
0.06
= 0.975N (3)
τ = 0.975 × 0.14 = 0.1365N ∗ M (4)
For the slave Robot
Fr =
10.5/2 × 0.015
0.06
= 0.86N (5)
τ = 0.86 × 0.14 = 0.1204N ∗ M (6)
Both robots will use the same type of motor since the difference in load (mass) is only about 0.15 kg.
Since lots of assumptions and approximations are used, It is better to select a motor where toque is
in excess of highest calculated value- 0.1365 Nm.
Initially the motors selected for this project were unipolar stepper motors, stepper motors are
brushless DC motors which consists of electromagnetic switches that can lock the shaft in a position.
When the motor has rotated in a desired angle two electro magnets around the shaft that are opposite
to each other will create a field that will lock the shaft in place. Upon research it was realized that
using a generic DC motor with a gearbox is simple and also cost effective
13
17. Several DC motors were considered for the project, both functionality and cost was taken into
consideration. The motor selected was the Mabuchi FA-130 RA motor with Tamiya 70097 twin
gearbox. This gearbox consists of two Mabuchi motors with two alterable gearboxes where the gear
ratio can be adjusted for torque needed. The Mabuchi motor can create a torque of 0.5 oz.in, we
selected a gear ratio of 38.2:1 on the Tamiya gearbox so that the toque created at the output will be
20 oz.in which is 1.4 N.m. An output torque of 1.4 N.m is more than enough to run our robot, which
requires a maximus approximate torque of 1.365 N.m. Tamiya gearbox can be modified to create
more torque if gear ratio 38.2:1 is not sufficient.
Placement of the motor will be at the base of each robot. In the master robot the shaft of the motor
will go through an opening in the chassis to be connected to the wheel. Enough space for the motor
has been allocated in the design so that it can be moved if necessary.
4.3.3 Sensors
In this project, an array of sensors is used in each robot. As explained in the robot design section
above the robots are designed so that sensors can be placed in a position where it is most effective
and are not interrupted.
4.3.4 RGB camera and LED
As explained in the Robot Locationing section, Master robot will carry a RGB colour camera to
detect the direction using LEDs placed on the slaves. Due to this the camera and the LED should be
placed on the top of the robots preferably and the camera should be at an elevated position to get
a proper view at the slave robots’ LEDs therefore, the camera will be placed above the top cover of
the master robot which is at an elevation of about 175 mm from ground level. LED will be placed
on top of slave robots.
The camera for this feature has to have a clear view and it is necessary for the camera to be quick,
currently we are looking at a small 5 mega-pixel raspberry pi camera module which runs at a fram-
erate of 30 fps. As for LEDs, general multicolour LEDs are sufficient.
Figure 14: Camera Placement
Figure 15: Placement of LED
4.3.5 IR
As explained in Figure 2 and section 3.6 it is necessary for the IR sensor to be placed at the front
of the robot, since it has to emit the light at a certain range to detect it prior. A simple LED and a
14
18. photodiode can be uses as the emitter and receiver. The two components of the sensor will be placed
at the top level of the slave robot next to each other as shown below.
Figure 16:
4.3.6 Battery
There are many types of batteries that can be used to power robots in this project. The intention
was to search for a battery that fulfils these requirements.
Requirements
• Sufficient power output
Goal: Find a battery with enough voltage and current output
• Duration
Goal: Battery should last for a considerable testing period
• Mass
Goal: The Battery shouldn’t be extremely heavy
• Cost
Goal: Cost effectiveness is one of the main objectives in this project
Before selecting a sufficient battery, we looked into power required by each major component i.e.
Motor and the microcontroller. Small components such as LEDs and IR sensors which require a low
voltage and low current were vaguely considered for this assumption as the power is controlled by
the microcontroller. The value are for the components used in master robot, the slave robot uses less
power the choice of battery will fit both robots.
Maximum voltage Current at Maximum efficiency Power
Motors 3 V 1.32 A 4 W (for both)
Microcontroller 5V 0.8 A 4 W
Total required input 5 V 2.12 A 8W
The
batteries that is seemed efficient were the rechargeable AA batteries but, a set of AA battery will be
connected in series to supply enough voltage since a single AA battery can only supply a voltage in
the range of 1.2 – 1.5 V. A specific rechargeable battery HR- 3UTG can supply 1.2 V at 2 Ah [8]
which means the battery can supply 2A for an hour before recharging. Since we require a maximum
voltage of 5V, at least 5 of these batteries will need to be connected in series. If we assume that we
use a battery pack that contain five HR- 3UTG rechargeable batteries, the battery pack will supply
a current of 2A with a voltage of 6V.
Duration(h) =
Capacity(Ah)
RequiredCurrent(A)
(7)
Capacity of the battery is 2 Ah and the required total current is 2.12 A.
Duration(h) =
2(Ah)
2.12(A)
= 0.943hours = 56mins (8)
15
19. A battery pack containing five HR-3UTG rechargeable batteries will last for 56 minutes approxi-
mately. This is a good testing duration since, these batteries are rechargeable it will greatly reduce
the cost.
The pack will be placed more toward the back of the robot since it is one of the heaviest components
in the robot, this will balance the robot and reduce chances in toppling.
Figure 17: Placement of the batteries in the slave robot
Figure 18: Placement of the batteries in the master robot
16
20. 5 Implementation Plan
The implementation component of the proposed wireless robotic network will take place between
semester 2 2015 and semester 1 2016.
5.1 MicroController Systems
The MicroController systems will require implementation in multiple parts with each section requiring
the previous sections to be completed before they can be completed.
1. Communications
Communications between the master and slave robots is the first part of the microcontrollers
systems that is required to be completed. This is because all the sensors and swarm planning
build off the capabilities of the communications modules.
2. Ranging sensors
The ranging sensors require the communications module before it can work, the reason is because
the system we have chosen requires active components on each robot involved in the ranging,
this will require communications to be sent between the robots.
3. Direction sensors
The direction sensors can be implemented any time i the project before the swarm planning
module, it does not build off any other part of the project but is an integral part of the location
system.
4. Sensor and Actuator Integration
Sensor and Actuator integration will need to be worked on after the design of the physical robots
have been built. The integration will need to be completed before any work on movement of
the robots can be started.
5. Robot Control.
The robot control section of this project will be undertaken after the actuators and sensors of
the robot have been integrated.
6. Swarm Planning
Swarm Planning is the last part of the microcontroller systems that needs to be implemented,
and will likely need to be improved upon consistently during the testing of the robots in the
research component of the project.
5.2 Physical design
Physical Designs of the robots were carried out throughout this semester. The design process is
already completed but there is space for any further improvement in design, if so it will be carried
out throughout the implementation period
5.2.1 Build
Building of the basic structure will be completed within the initial period of implementation. Laser
cutting and 3D printing requires permission from the university therefore, we have to appeal for
permission. If any modification is necessary it will be carried out throughout the implementation
period.
5.2.2 Movement
Motors have to be ordered and tested with the microcontroller system. Movement will most likely
require many trial and error operations before success. It is one of the first task to be completed in
the project as most of the features depends on it.
17
21. 5.3 Work Planning
Our schedule for the implementation of the robots is shown in the Gantt chart in Figure 19. This chart
shows that we intend to complete the robots design and construction before the start of semester 1
2016. We have chosen this time frame for implementation as it will allow us the most time to
undertake the research component of this project which will require resources from the university.
2015 2016
August September October November December January February March April May
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
Required Submissions
Research Plan
Presentation
Final Report
µController Systems
Communications Module
Ranging sensors
Direction sensors
Robot Control
Swarm Planning
Physical Design
Designing the chassis
Build the robots
Assembling the robots
Testing the movement
PID controller design
Battery Capacity Testing
Physical Design
Conduct research tests
Figure 19: Time Plan
18
22. 6 Research
Once we have completed the implementation of the wireless robotic network we will be required to
test the capabilities of these robots. Our first test will be the time efficiency of searching an unknown
area and mapping out all obstacles it encounters. This test will be undertaken in semester 1 2016,
we will need an unused room and blocks to act as obstacles. To get the data we need we will have to
perform the tests multiple times on each possible robot configuration (master only, master and 1,2,3,4
slaves). This data will be used to prove or disprove our research question of the scaling capabilities
of heterogeneous robot networks. If the first set of tests run and do not have any major problems
we intend to extend our tasks assigned to the robots, these extended tasks will include finding and
retrieving objects. The purpose of conducting these extension research tasks is to determine the
usefulness of robots such as ours in real applications.
19
23. 7 Conclusion
This project is currently running on a schedule which will allow us to conduct meaningful research
with the robots that are being made and their systems being implemented. These robots are sched-
uled for completion by the start of semester 1 2016.
This report has covered our plan for the project and shown possible design alternatives and recom-
mended designs for the implementation side of our project. Overall the team believe that the project
will be able to meet the requirements and expectations of all involved.
20
24. References
[1] N. B. Priyantha, A. Chakraborty, and H. Balakrishnan, “The cricket location-support system,”
in Proceedings of the 6th annual international conference on Mobile computing and networking,
pp. 32–43, ACM, 2000.
[2] M. N. Rooker and A. Birk, “Multi-robot exploration under the constraints of wireless networking,”
Control Engineering Practice, vol. 15, no. 4, pp. 435–445, 2007.
[3] “Densities of some common materials.”
[4]
[5] “The dimensions, usage and capacity of the aa batteries.”
21