design and development of vison based compact automated ...home.iitj.ac.in/~dhagash.1/images/b.tech...

38
Indian Institute of Technology Jodhpur Design and Development of Vison Based Compact Automated Guided Vehicle (AGV) by Karthik Mohan(B15ME019), Dhagash Desai (B15ME014), Ankit Mangal (B15ME009) This Report is submitted to Department of Mechanical Engineering as a part of B.Tech Project submission in the degree of Bachelor Of Technology in Mechanical Engineering Under the Guidance of Dr Suril Shah and Dr Kaushal Desai August - November 2017

Upload: others

Post on 10-Sep-2021

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

Indian Institute of Technology Jodhpur

Design and Development of VisonBased Compact Automated Guided

Vehicle (AGV)

byKarthik Mohan(B15ME019),Dhagash Desai (B15ME014),Ankit Mangal (B15ME009)

This Report is submitted to Department of Mechanical Engineering as apart of B.Tech Project submission in the degree ofBachelor Of Technology in Mechanical Engineering

Under the Guidance ofDr Suril Shah and Dr Kaushal Desai

August - November 2017

Page 2: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

Acknowledgements

We would like to express special thanks of gratitude to our Supervisors Dr. Suril Shah and Dr.Kaushal A. Desai and for supporting and guiding us in this project.

Secondly we would like to thank IIT Jodhpur and TVS Motors for providing wonderfulopportunity to do this project on the topic Development of Automated Guided Vehicle (visionbased), which helped us in gaining knowledge and practising new softwares.

Finally we would also like to thank our dear seniors and friends for supporting us and givingexposure to new softwares and new areas of knowledge.

i

Page 3: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

Abstract

The ongoing automation of manufacturing processes increases productivity and reduces physi-cally demanding labor, a cornerstone for today’s living standards and economic wealth in indus-trialized countries[15]. As the globalization increases the pace of trend changes and their arisesneed for product customization. Introduction of autonomous mobile robots in the warehousesand industry have benefited the company in many ways.

In, this report we present development of Automated Guided Vehicle for industry whichcan carry payload of 700kg. We first propose design of Automated Guided Vehicle respectingthe constraints of the industry. Furthermore, we look in to electrical aspect of AutomatedGuided vehicle which deals we controlling motor and selecting motor based on the design.Finally, we take look into visual navigation system and discussed various aspects of Mappingand Localization and saw How they are implemented on actual robot?

The results obtained from the above points were evaluated through experimentation andsimulation with the constraints provided by the industry to check if the result obtained fromour calculations are realistically applicable or not. We will be using the Automated GuidedVehicle for logistics. Aprart from logistics they can also be used to reconfigure process chainsand many other things.

ii

Page 4: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

List of Figures

1.1 Block diagram of the methodology implemented . . . . . . . . . . . . . . . . . . . 3

2.1 Concept model of AGV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42.2 Drive wheel(Polyurethane, Radius =10cm)[8] . . . . . . . . . . . . . . . . . . . . 52.3 Follower wheel (Nylon swivel castor, Radius =5cm)[8] . . . . . . . . . . . . . . . 52.4 Gear train assembly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.5 Proposed design with components integrated - using Creo 3.0 . . . . . . . . . . . 62.6 Free body diagram of AGV with inertial forces . . . . . . . . . . . . . . . . . . . 62.7 Model of AGV (red) with payload (yellow) . . . . . . . . . . . . . . . . . . . . . 72.8 Variation of Normal force on drive and follower wheel, acceleration with time . . 72.9 Variation of Normal force on drive and follower wheel, deceleration with time . . 82.10 Variation of Normal force on drive and follower wheel, deceleration with time . . 9

3.1 Schematic diagram of electrical flow . . . . . . . . . . . . . . . . . . . . . . . . . 103.2 Motor BN42-43AF 50V [5] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123.3 Motor Driver BDO-Q2-50-40 [5] . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123.4 Model of DC motor and controller used for simulation . . . . . . . . . . . . . . . 143.5 Motion observed in simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143.6 Open loop control performed on real DC motor . . . . . . . . . . . . . . . . . . . 153.7 Closed loop control performed on real DC motor . . . . . . . . . . . . . . . . . . 153.8 Motion observed on real motor . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153.9 Model of BLDC motor used for simulation . . . . . . . . . . . . . . . . . . . . . . 163.10 Motion obtained in simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

4.1 Navigation and Planning Flowchart . . . . . . . . . . . . . . . . . . . . . . . . . . 184.2 Problem of Simultaneous Localization and Mapping . . . . . . . . . . . . . . . . 204.3 One of the First Dense and Feature Based map created by ORB SLAM and

DTAM respectively . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214.4 Schematic view of their approach . . . . . . . . . . . . . . . . . . . . . . . . . . . 224.5 3D point cloud of the map (Test Dataset) . . . . . . . . . . . . . . . . . . . . . . 234.6 Octomap of the same map(Test Dataset) . . . . . . . . . . . . . . . . . . . . . . . 234.7 Graph Representation of Locations . . . . . . . . . . . . . . . . . . . . . . . . . . 234.8 Schematic approach of RTAB-MAP(inspired from human memory) . . . . . . . . 244.9 3D point cloud of the map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254.10 2D Occupancy Grid Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254.11 Transformation Tree of the Robot . . . . . . . . . . . . . . . . . . . . . . . . . . 254.12 3D point cloud of the map with hand-held Kinect . . . . . . . . . . . . . . . . . . 264.13 3D point cloud of map with P3Dx + Kinect . . . . . . . . . . . . . . . . . . . . . 264.14 3D point cloud of the map with hand held Kinect . . . . . . . . . . . . . . . . . . 274.15 2D Occupancy with hand held Kinect . . . . . . . . . . . . . . . . . . . . . . . . 274.16 3D point cloud of the map with P3Dx + Kinect . . . . . . . . . . . . . . . . . . . 284.17 2D Occupancy with P3Dx + Kinect . . . . . . . . . . . . . . . . . . . . . . . . . 28

iii

Page 5: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

List of Tables

2.1 Weight parameter requirements and COG location constraints . . . . . . . . . . . 6

3.1 Motor power requirement for various applications . . . . . . . . . . . . . . . . . . 123.2 Specifications of selected motor . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

4.1 Average trajectory Error in RGBD-SLAM and RTAB-Map . . . . . . . . . . . . 294.2 Relative Pose Error in RGBD-SLAM and RTAB-Map. . . . . . . . . . . . . . . . 29

iv

Page 6: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

Contents

Acknowledgement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iAbstract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iiList of Figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iiiList of Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iv

1 Introduction 21.1 Objective . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.2 Methodology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

2 Mechanical Design of AGV 42.1 Preliminary design of AGV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42.2 Selection of components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42.3 Dynamic Analysis of Proposed Design . . . . . . . . . . . . . . . . . . . . . . . . 5

2.3.1 Analytical Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.3.2 Validation of Proposed design . . . . . . . . . . . . . . . . . . . . . . . . . 6

3 Electrical Design and Control 103.1 Power and data flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103.2 Components selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

3.2.1 Motor selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113.2.2 Motor driver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123.2.3 Battery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

3.3 Motor control and implementation . . . . . . . . . . . . . . . . . . . . . . . . . . 13

4 Navigation 184.1 How it works? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184.2 Challenges faced in Industrial Navigation . . . . . . . . . . . . . . . . . . . . . . 184.3 Mapping and Localization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

4.3.1 SLAM(Simultaneous Localization and Mapping) . . . . . . . . . . . . . . 204.3.2 RGB-D SLAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214.3.3 RTAB-Map(Real-Time Appearance Based Mapping) . . . . . . . . . . . . 234.3.4 Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244.3.5 Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

5 Conclusion and Further work 31

References 32

1

Page 7: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

Chapter 1

Introduction

Automation has become an important element of modern manufacturing and distribution arenaso that the companies have no choice other than automating its operations in order to existin the competitive market.Automation is used to manage systems and to control processesthus reducing the human intervention and in job.Increasing productivity is the main aim forevery companies desiring competitive advantages.For implementing automation its importantto consider factors such as field of automation, its size and scale and how much user friendlyit is.Material Handling System (MHS) is one of the main component of automation,which isresponsible for loading or unloading, transporting materials or products within manufacturingcells such as assembly lines and warehouses.Here we give importance to Automated Guided Ve-hicle(AGV) as the most flexible equipment of MHS. An AGV is an unmanned vehicle, controlledand driven by a host computer, to carry out the required material movement in a manufacturingfloor[4].

It’s been more than 50 years Automated Guided Vehicles(AGVs) play a vital role in trans-port of materials and products.The first AGV system was built and introduced in 1953 whichwas a modified towing tractor.Introduction of a unit load vehicle in the mid 1970s was the firstbig development of AGV industry.Due to its ability to serve several functions it has gainedwidespread acceptance.Since then, AGVs have evolved into complex material handling trans-port vehicles ranging from small mail handling vehicle to highly automated automatic trailerloading vehicles using natural and laser target navigation technologies for its motion. Devel-opment of Scheduling, Steering methods and Algorithms for serving various applications hadlead to high magnitude of improvement in AGVs.Introduction of Vision navigation makes thesystem much more efficient and reliable for the customers.

With the objective of designing a vision based compact AGV for the warehouse applicationof a industry, we were able to come up with a preliminary concept of the mechanical designwhich included two drive wheels and four castor wheels (two at front and two at rear).Basedon the applications performed by this type of vehicles we achieved in determining the powerof motor for respective applications and the size of the drive wheel and follower wheel.As aninitial step we were able to control and drive a AGV like system in Robot Operating Software(ROS) simulation environment and also using a real life robot.

1.1 Objective

An AGV is made up of various subsystems that work in conjugation for its proper functioning.To build an AGV it is necessary to identify parallel objectives that are to be worked uponsimultaneously. The complete project is divided on semester basis i.e. for each semester we aregoing to work on tasks that are in series with previous semester’s work. The objectives for thissemester were following which are discussed in subsequent chapters:

2

Page 8: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

1. To integrate selected components to the model designed and perform dynamic stabilityanalysis for the specified applications

2. System modelling and control design

3. Implementation and comparison of state of art SLAM algorithms

1.2 Methodology

Methodology implemented for the thesis is shown in the following block diagram.

Figure 1.1: Block diagram of the methodology implemented

3

Page 9: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

Chapter 2

Mechanical Design of AGV

2.1 Preliminary design of AGV

Demands provided by industry includes a compact AGV which can be used for both towingand payload carrying application having zero turning radius and maximum achievable speedof 1m/s. To meet the specification of zero turning radius we chose Differential Drive forour model from the steering mechanisms exist in day today vehicles. Turning is achieved bychanging the relative rate of rotation of drive wheels on both sides.Advantages of the differentialdrive include easier dynamic calculations, simpler construction etc.

The AGV is an integration of mechanical,electrical and electronic subsystems. Thedesign to be developed should able to accommodate all these subsystem components and itshould be dynamically stable to do both the applications stated above.So improvement in thepreliminary concept has been done to ensure every components can be allocated and the systemis stable for application. Based on these requirements the specification of new model of AGVis mentoned below:

• Central driven vehicle (two drive wheels), for zero turning radius

• One follower wheel at front, for stability and manoeuvrability

Figure 2.1: Concept model of AGV

2.2 Selection of components

Mechanical components selected for the preliminary model are given below:

1. Wheels

Factors considered during the selection of wheels includes load capacity, rolling resistance,space available, cost, availability in market, less floor marking, operating environment etc.Looking into these properties wheels of following material and size are selected.

4

Page 10: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

Figure 2.2: Drive wheel(Polyurethane,Radius =10cm)[8]

Figure 2.3: Follower wheel (Nylonswivel castor, Radius =5cm)[8]

2. Gearbox

Maximum speed to be achieved by the model is 1 m/s. For this rotational speed limitof AGV = 1.6 RPS, Rated speed of the motor selected (Moog BN42-AF) = 64 RPS.Since the motor selected has a high rated speed sufficient gear reduction is needed for theAGV system to move in the obstacle filled external environment in a controlled way andwith the maximum speed demanded. With keeping in mind the design requirements andavailability of gears in market a compound gear train of ratio 40:1 (8 × 5) is selected toachieve the above mentioned target.

Figure 2.4: Gear train assembly

Above selected components satisfy the size requirement of the AGV (Length ×Width× Height) = 650 mm × 300 mm × 300 mm specified by the industry.

2.3 Dynamic Analysis of Proposed Design

2.3.1 Analytical Analysis

Dimensions of the selected components are used to make the CAD model of the proposeddesign.Incorporated the necessary components with at most care of proper clearances. Thedimensions of components (Length ×Width × Height) associated with the system are specifiedbelow ( in millimeter ):

• Drive wheel (violet) radius = 100

• Castor wheel (red) radius = 50

• Battery (blue) (L × B × H) = 290 × 115 × 85

• Payload (L × B × H) = 500 × 300 × 700

5

Page 11: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

• Towing load (L × B × H) = 1500 × 1000 × 1200

Figure 2.5: Proposed design with com-ponents integrated - using Creo 3.0

Centre of Gravity (COG) of design required for the analytical calculation has been obtained frommodel designed in Computer Aided Software (CAD) software Creo Parametric 3.0. Assumingthe payload COG at its geometrical centre, behavior of AGV during braking and accelera-tion conditions are calculated for different application purposes. Following are the conditionsobtained regarding the normal reaction values on wheels and COG location.

Figure 2.6: Free body diagram of AGVwith inertial forces

Table 2.1: Weight parameter requirements and COG location constraints

S No.Acceleration/

Deceleration valuesWeight required oncastor wheel(N)

Weight required ondrive wheel(N)

For no topplingcondition(y)

Carrying payload+ towing(N)

1 a = 0.25 m/s2 N1=1585 - ≤ 3.51m N1=1504

2 d = 1 m/s2 - N2=2337 ≤ 2.74m N2=2175

2.3.2 Validation of Proposed design

It is often difficult to understand true system performance until very late in design process.Mechanical and other subsystems are validated against their requirements within the design

6

Page 12: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

process but full testing and validation always comes late. Therefore the famous and widelyused Multibody Dynamics (MBD) software MSC Adams is used for early system level designvalidation reducing the number of design iterations and product development cost. As the initialstep Lumped mass model of actual design was made in Adams and is simulated for payloadcarrying application maintaining the COG location and other dimensions exactly the same asselected.

Figure 2.7: Model of AGV (red) with payload (yellow)

Combination of AGV with payload has been simulated to visualize the dynamic behavior ofvehicle for following cases so that the design constraints obtained through analytical methodcan be compared with that obtained here. Here the system is allowed to accelerate,decelerateand move with constant speed for a particular time period say ’t’.

CASE 1: COG height = 58.5 cm, Angular velocity (ω) = 2.5 rad/sec2× t(sec): t≤ 4,ω = 10rad/sec : t≥ 4

Figure 2.8: Variation of Normal force on drive and follower wheel, acceleration with time

As indicated in above figure angular velocity of AGV has been increased to its maximum

7

Page 13: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

value (10 rad/sec) in 4 second and there after it is allowed to move with constant angularvelocity. During the acceleration period normal reaction on drive wheel increased and castorwheel decreased due to inertial forces. The normal reaction value on both the tyres comes to itsoriginal initial value during constant velocity period .Normal reaction value on castor wheel isgreater than the minimum value obtained for no toppling condition (1585 N) as shown in Table2.1(p.6). Therefore it is clear that toppling does not occur and AGV can perform the desiredapplication.

CASE 2: COG height = 58.5 cm, Angular velocity (ω) = 2.5 rad/sec2×t(sec): t≤ 4,ω = -2.5 rad/sec2×t(sec) : t≥ 4

Figure 2.9: Variation of Normal force on drive and follower wheel, deceleration with time

For this case AGV is accelerated to its maximum value (10 rad/sec) in 4 second and deceleratedto zero within same time period. Weight transfer during the acceleration period has increasedthe normal reaction value on drive wheel and decreased that on castor wheel. Vice-a-versaduring the deceleration time period. Eventhough longitudinal weight has resulted variations innormal forces its magnitude is small so that normal reaction on each wheels are sufficient toavoid toppling condition in AGV, which is observable from the above graph.

CASE 3: COG height = 58.5 cm, Angular velocity (ω) = 2.5 rad/sec2×t(sec): t≤ 4,ω = -10 rad/sec2×t(sec) : t≥ 4

8

Page 14: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

Figure 2.10: Variation of Normal force on drive and follower wheel, deceleration with time

Vehicle is simulated under same condition as that of case 2 apart from the deceleration periodwhich is reduced to 1 second. Since the deceleration rate is higher, amount of weight transferis more compared to case 2. This created more variations in normal forces on both the tyres,clearly visible from the above graph. by the way from the simulation observed for this particularcase, the variation in normal forces doesn’t caused much instability and the vehicle is safe fromtoppling.

Simulating the model designed in Adams helped us to understand the real time be-havior of vehicle in these applications. It is equally important to look into the other subsystemsof vehicle like electronics and navigation by efficient and smooth control of vehicle is possiblefor our applications.Next section gives a clear idea about the electronics system of the model.

9

Page 15: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

Chapter 3

Electrical Design and Control

Electrical and electronics is the connecting part between mechanical and navigational system.Electronic components takes inputs from sensors and do proper processing then send the controlsignal to motors which will finally led to movement and navigation of the AGV.Various com-ponents of system were identified. A block diagram was made using the components showingthe power and data flow.The components are being worked upon on the basis of capacity toinfluence the mechanical design.

3.1 Power and data flow

The diagram shown in Figure 3.1 is the flow of power and data in the system. Red linesrepresents power lines and blue lines represents data lines. A multivolt power source whichincludes a power bank and a DC-DC converter will power the system. The power bank isassumed to be a 48V Li-ion battery pack. Power to all the system will flow through MCBs.Various sensors like Encoders and Vision sensors will be powered directly by controller board.These sensors will send proper continuous data to controller board which will process the dataand send proper signals to motor drivers. The motor drivers will then provide power to motorsaccordingly.

Figure 3.1: Schematic diagram of electrical flow

10

Page 16: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

3.2 Components selection

Once the schematic diagram of power and data is made, the next step is to select propercomponents to work on their place. The component selection is done carefully by keeping inmind the effect they have on overall design and capacity of the vehicle. Hence motor and batteryare first priority to choose from.

3.2.1 Motor selection

First component to select is motor as different parameters of the motor will decide the variousAGV parameters like gear ratio, motor location and hence the internal arrangement, engagemechanism and most importantly the size of the AGV. For motor selection, the power require-ment of motor is calculated. Then a proper motor among various choices available is chosen.

Determination of powerTo determine required motor power,some assumptions regarding vehicle physical prop-

erties were made and many constraints regarding working environment were considered.

Assumptions:

• AGV mass = 100 kg

• Uniform distribution in all wheels

Surface condition and constants:

• Epoxy floor

• Coefficient of friction = 0.7

• Coefficient of rolling friction (PU tyre) = 0.03

• Coefficient of rolling friction (Nylon tyre) = 0.015

These values were put into following equations to calculate the required power

P = Tω (3.1)

T = ((Ma) +RR)rηf2

(3.2)

RR = µWg (3.3)

where, P and T denotes the power and torque required. ω is the maximum angularvelocity which is set to be 10 radian/sec. M, a and r denotes the mass, acceleration and radiusof wheel of vehicle respectively. RR and µ denotes rolling resistance coefficient and coefficient offriction respectively. η denotes the efficiency factor which is 1.3 assuming losses of 30 percent.Wg

denotes gross vehicle weight. Note that radius of wheel was found out in our last semester workwhich came out to be 10 cm.

This set of equations leads to different values of power required per motor on differentpayload and acceleration conditions which are shown in Table 3.1(p.12).

11

Page 17: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

Table 3.1: Motor power requirement for various applications

S No. Acceleration values No payload 700kg payload Towing 3 tonne

1 0.2 m/s2 30 234 712

2 0.25 m/s2 32.5 260 813

Figure 3.2: MotorBN42-43AF 50V[5]

To meet the required velocity of vehicle in short time BLDCmotor satisfying the maximum power requirement criteria shown in theabove table has been chosen.Further since real losses are unknown whichmay grow larger than 30 percent of assumed hence motor with larger powerrating is suitable for our application. The Figure 3.2 is the image of motoras provided by supplier[5] and the Table 3.2 shows the specifications of theselected motor.

Table 3.2: Specifications of selected motor

Motor specifications

Rated Power 824 W

Rated Torque 2.04 Nm

Rated Speed 3840 RPM

Terminal voltage 48 V

3.2.2 Motor driver

The motor shown is provided by MOOG Motors Inc. Motor driver willbe provided with the motor to drive the motor efficiently.The driver isrecognized as BDO-Q2-50-40 by MOOG Motors Inc. and is shown in Figure 3.3 The driver iscapable of bidirectional control with PWM speed control. It has intrenal thermal cutoff featureto prevent overheating. Benefits of using specified driver is:

• Compact packaging minimizes space demands

• Matched drives and motors from a single supplier

• Complete system testing provides high reliability

• Terminal block connections for ease of wiring

• Multiple methods of speed control including external voltage control

Figure 3.3: Motor Driver BDO-Q2-50-40 [5]

12

Page 18: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

3.2.3 Battery

The demand of industry is to develop a compact AGV which can travel for 6 kms in one charge.It is important to select a compact and high energy density battery. Based on its higherefficiency, compactness, high energy density, higher life time, shorter charging time, possibiltyof fast charging, and solid electrolyte, a LI-ion battery pack of 48V is selected as our powersource. It is favourable to choose LI-ion battery pack since the industry is manufacturing itsown LI-ion battery pack of 48 Volts.

3.3 Motor control and implementation

The AGV’s main task is to go from one location to another location which will be done bycontrolling motors. In order to control motors, tasks were divided and performed serially. Thetasks are:

1. Simulation of DC motor

2. Real DC motor control

3. Simulation of BLDC motor in MATLAB/Simulink

The work done in each task is as follows:

1. Simulation of DC motorA MATLAB/SIMULINK model of DC motor is made which is shown in Figure

3.4(p.14). The equations[6] which are used in modelling are listed as follows:

Vs = Ri+ Ldi

dt+ e (3.4)

Te = kfwm + Jdwm

dt+ TL (3.5)

Where, Vs and i are voltage of source and armature current respectively, R, L and Jdenotes the armature resistance and inductance and rotor inertia respectively and Te, Kf , TLare electrical load, friction constant and a mechanical load. The back emf (e) and electricaltorque can be represented as,

e = kewm (3.6)

Te = ktwm (3.7)

Where, ke and kt are back emf constant and torque constant respectively. The state-space equations form these equations are-

di

dt= −R

Li− ke

Lwm +

1

LVs (3.8)

dwm

dt=ktJi−

kfJwm −

1

JTL (3.9)

The equations 3.8 and 3.9 are used to make simulink blocks to model the DC Motor.The simulation RPM is set to 1000 which is governed by a closed loop PID control in whichcontinuous speed feedback is sent at input.

13

Page 19: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

Figure 3.4: Model of DC motor and controller used for simulation

The result of the simulation is shown in Figure 3.5(p.14). The RPM of motor getstabilized within 6 seconds after a period of damped oscillations.

Figure 3.5: Motion observed in simulation

2. Real DC motor ControlA hands-on is necessary to gain insights of different hardware and software involved

in motor control. A DC motor is control in both open loop and closed loop control. Thecomponents which were used for experiment were:

1. Aurdino Uno

2. DC Motor

3. L298N-H bridge

4. Potentiometer

5. Infrared(IR) proximity sensor module

Open Loop Control - It is achieved using potentiometer. The potentiometer iscalibrated for all speeds of DC motor. Figure 3.6(p.15) is a snap shot of open loop control.

Closed Loop Control - It is achieved using IR sensor. The sensor is giving speedfeedback to Aurdino and accordingly speed of motor is controlled by PID program. Figure3.7(p.15) is a snap shot of closed loop control.

The result obtained in closed loop control is shown in Figure 3.8.

14

Page 20: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

Figure 3.6: Open loop control per-formed on real DC motor

Figure 3.7: Closed loop control per-formed on real DC motor

Figure 3.8: Motion observed on real motor

As the Figure 3.8 shows, the RPM gets stabilized within 6 seconds after a period ofoscillations although there are noises and vibrations in motion curve which are accounted onsensitivty of IR sensor and non ideal nature of motor.

3. Simulation of BLDC motor in MATLAB/SIMULINKA brushless DC motor or BLDC motor is a permanent magnet synchronous motor

that uses position detectors and an invertor to control the armature currents.Instead of usingmechanical commutator as in conventional DC motors, the employ electronic commutation.

Although a seperate model of BLDC motor was made by using equations 3.18(p.16)and 3.19(p.16). Making a controller is a complex task. Hence a complete BLDC motor andembedded driver model is taken from external source[7]. A three phase star connected BLDCmotor is described by following equations[6]-

vab = R(ia − ib) + Ld

dt(ia − ib) + ea − eb (3.10)

vbc = R(ib − ic) + Ld

dt(ib − ic) + eb − ec (3.11)

vca = R(ic − ia) + Ld

dt(ic − ia) + ec − ea (3.12)

Te = kfwm + Jdwm

dt+ TL (3.13)

where, v, i and e represent the phase-to-phase voltages, phase currents and phaseback-emf(s) respectively. R and L denotes resistance and inductance of each phase respectively.Te and TL are electrical and load torque respectively. J, wm and kf denotes rotor inertia, rotorspeed and a friction constant respectively. The back-emf(s) and electrical torque are describedas-

15

Page 21: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

ea =ke2wmF (θe) (3.14)

eb =ke2wmF (θe −

3) (3.15)

ec =ke2wmF (θe −

3) (3.16)

Te =kt2

[F (θe)ia + F (θe −2π

3)ib + F (θe −

3)ic] (3.17)

where, ke and kt are the back-emf constant and the torque constant. θe is electricalangle which is equal to rotor angle multiplied with number of pole pairs. The function F giveswaveform of the back-emf which is either trapezoidal or sinusoidal. In this case it is trapezoidal.

Since sum of currents in all phases is zero, using phase voltages equations in theequation ia + ib + ic = 0 the state-space representations is derived which are-

vab = R(ia − ib) + Ld

dt(ia − ib) + ea − eb (3.18)

vbc = R(ia + 2ib) + Ld

dt(ia + 2ib) (3.19)

This state space representations are used to make blocks in the simulink model. Butsince the model which we have used is taken from external source, its parameters are changedaccording to the motor which was selcted by us.The motor electrical parameters were providedby supplier. The MATLAB/SIMULINK model of the BLDC motor is shown in Figure 3.9.

Figure 3.9: Model of BLDC motor used for simulation

16

Page 22: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

The input RPM in simulation is set to be 2000 RPM initially. At 2 second, a loadtorque is applied and at 5 second, input RPM was set to 1000. The input is being governed byPID control loop.The results of simulation are shown in Figure 3.10. It is clear from figure thatat 2 second a load was applied which is causing a reduction in speed of motor but the PID issensing the error between set-point and actual speed and then sending proper signals to motordriver so that its speed is back again at set-point.

Figure 3.10: Motion obtained in simulation

This BLDC motor model will be used in later stage to simulate the vehicle to gaininsights in dynamic behaviour and insights in limits and variation of circuit current and voltageso that various parameters like battery discharge time, safety circuit activation threshold valuescan be found out.

As described earlier, electrical design is a mediator in between mechanical design andSoftware design and implementation. The navigational aspects of the AGV, which includesgoing from one point to another without colliding into obstacles are covered in next chapter.

17

Page 23: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

Chapter 4

Navigation

Navigation primarily focus on the process of monitoring and controlling a vehicle from oneplace to another.Navigation approaches existed a long time back which dealt with robot mov-ing to goal location. Previously for navigation many sensors were used and the system becamemore complicated and costly. Now the navigation system are inspired from humans as they usemainly vision for navigation.This section deals with vision based navigation, a technology forflexible industrial automation that enables the vehicles to deliver materials as well as manipu-lation capabilities. This semester we will be focusing on Mapping and Localization part of thenavigation system.

4.1 How it works?

Navigation in robot works in the same way as we human do, perceive the environment, detectthe obstacles and then finds the path avoiding the obstacles. Robot makes map, localize itselfin an environment and finds the path for goal location. Finally motion commands are given tothe robot such that it follows that path.Figure 4.1 shows the flowchart for navigation system inautonomous vehicles. We will be focusing on Mapping and Localization part in this chapter.

Figure 4.1: Navigation and Planning Flowchart

4.2 Challenges faced in Industrial Navigation

• The autonomous navigation vehicles need to operate with high accuracy for a successfulnavigation in industrial environment.

• There behaviour need to be predictable with closely planned motion and also account forenvironment constraints and limit velocities.

• In addition to that the robot must anticipate a smooth deceleration while people ap-proaches.

• The autonomous vehicles need to closely follow the path that accounts for constrainsimposed by the environment.

18

Page 24: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

• Also the planned behaviour should also ensure fast time travel and computation needs tobe efficient enough to allow frequent updates to react changes in the environment.

For the following reasons it is difficult to implement autonomous navigation in industrial envi-ronment[16].

4.3 Mapping and Localization

This is the first thing robot has to do for successful application of autonomous navigation i.eThe robot has to know where it and and what is surrounded by and where the obstacles are.

1. MappingMapping is problem of integrating the information gathered with the robots sensor ingiven representation.It is the study and application of the robot ability to construct amap and also to use map for the successful application of autonomous robot[14].The map that is constructed by robot can be represented in following ways[14]:

• Metric representation/framework is the most common used representation. Itconsiders a two dimensional framework and place obstacles in it with their preciselocation. This type of representation is very helpful but as the sensor data comeswith noises and due to that the precise location of the obstacles is sometimes notobtained and their are chances that robot gets slammed into the obstacles.

• Topological representation/framework deals with only places/pictures and build-ing relationship between them and the relations are stored in some places. The imagesare stored in pairs and the transformation between them is calculated and this is usedto create a map. Here the map is created in graph format where nodes correspondsto the the places and the links are relation between them.

Its not compulsory for autonomous vehicles to construct a map for outdoor navigationthe map already exists in one form or another and can directly be used using GPS(GlobalPositioning System). GPS gives the outlook of the map and we can en-corporate theminor changes for path planning. The advantage of using the GPS is the institute map orsome city map is much huge and it is not necessary to waste time in creating the wholemap as the obstacles are dynamic in nature. So for outdoor navigation map in directlytaken from some known source and to locate robot in it Global Positioning System isused[14].

2. LocalizationAfter creating a map the robot needs to answer where it is in the map? This is localizationanswering the question where the robot is in the given environment or where it is in relativeto particular landmark. This information is very crucial for path planning or else the robotmight get lost in the environment. The localization is simple question but answering thatis not that simple as one localization system may not necessarily work for other system.All localization problem basically answers two questions:

• What is the current location of the robot in the environment?

• What is the current orientation of the robot in the environment?

The location of the robot can be determined by many methods:

• Some method uses the odometry information of the robot like encoders to determinehow far the robot moves. Trigonometry and kinematics equation is needed to deter-mine the position of the robot. The accuracy of this system decreases over period

19

Page 25: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

of time as the sensors are not accurate and the noise/errors accumulates over timeso the position of the robot is not accurately determined which causes problems inpath planning as the robot doesn’t goes to the exact same place.

• Probabilistic Algorithms use simple Bayes theorem to calculate the robot positionit takes the previous location as and input and also the control command given tothe robot. Calculated the probability of the current position. This is more accuratemethod over period of time.

• Landmarks are also used for localization if the environment is pretty similar by allkinds like warehouse. The robot determines the location of itself from a particularlandmark and or Landmarks can be located inside an environment so by seeing itrobot knows which place it is in the environment.

4.3.1 SLAM(Simultaneous Localization and Mapping)

In previous section we discussed what we mean by mapping and localization are and how theyare done. However till now we have discussed that they are done independently. The use of mapof the environment is twofold one is it often required for certain task like path planning andsecond is reducing the error in the estimation of the robot. Without map the dead reckoningwould quickly over time and the estimation error would be much higher[120]. In OutdoorNavigation system SLAM may not be required for localization as it will be done through GPS.So in practice mapping and localization cannot be done independently of each other.

4.3.1.1 What is SLAM(Simultaneous Localization and Mapping)?

SLAM(Simultaneous Localization and Mapping) is computational problem of construct-ing a map of an unknown environment while simultaneously keeping track of robot location.This problem is a classic example of chicken and egg situation, as before the robot answers whatthe environment looks like with given set of observation it needs to determine the locations ofthis observations. Similarly for the estimation of robot location map is needed. This situationgave rise to SLAM(Simultaneous Localization and Mapping).

Figure 4.2: Problem of Simultaneous Localization and Mapping

The problem can be mathematically formulated in the following manner:Given the observation of sensors ot over discrete time steps t, the SLAM problem is to computean estimate of robot location xt and the map of the environment mt. As all the observationsare in probabilistic form it can be written as.

P (mt, xt|o1:t) (4.1)

20

Page 26: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

4.3.1.2 Brief History of SLAM

In the first 20 years (1986-2004) we saw the basic probabilistic formulations of SLAM problemincluding the Extended Kalman Filter, Particle Filter which solved the basic challenges con-nected to efficiency and robust data association. Then(2004-2015) algorithmic analysis of theproblem took place which saw the fundamental properties of SLAM and to develop open-sourceSLAM algorithms began[12]. The popularity of the SLAM is closely connected with the rise ofindoor applications of the mobile robots. Earlier the vision systems for SLAM used to be quietexpensive but with the rise of cheap vision systems like Kinect the development of Vision basedSLAM techniques took place.Figure 4.3[12] shows one of the first SLAM algorithms that wereimplemented to create dense and feature maps.

Figure 4.3: One of the First Dense and Feature Based map created by ORB SLAM and DTAMrespectively

Vision based systems are becoming popular for indoor navigation so we would bestudying and evaluating two open-source vision based SLAM algorithms namely:

1. RGB-D SLAM

2. RTAB-Map(Real-Time Appearance Based Mapping)

4.3.2 RGB-D SLAM

With the introduction to Kinect a new type of sensor came to market which provides bothcolour images and dense depth maps at full video at the full video frame rate. This gave riseto unique solution to SLAM problem called RGB-D SLAM[15].

4.3.2.1 Working of algorithm

This algorithm works on two levels:

• SLAM Frontend:The main function of the frontend is to establish spatial relation from the sensor data.This system computes pairwise relations between camera images by matching visual fea-tures. This approach uses OpenCV to for detection,description and matching of visualfeatures like SURF, SIFT and ORB[11].

After detection of keypoints from various scenes, they project the feature location fromfrom the image to 3D point cloud using the depth measurement at the center of the key-point. The transformation of the camera pose between two frames can then be computed

21

Page 27: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

in closed form of these 3D correspondences[11]. As no visual feature provides perfectreliability and also the depth data is often inconsistent with colour image, the robustestimation of transformation is highly inaccurate.

Figure 4.4: Schematic view of their approach

To solve this a well known algorithm to cope with noisy data Random Sample Consen-sus(RANSAC)algorithm is used. The above procedure is very fast but it also depends onthe number of features and outliers percentage. After some time number of past framesare much higher to compare a new frame against all the previous frame. So they selecta batch size of 20 frames which is consisted of the 3 most recent frames and uniformlysampled earlier frames, then compute the pairwise transformation in parallel. If frames ismatched to the predecessor it is added as node to the pose graph of SLAM backend . Ifa frame is cannot be matched, it will be connected to prior node in the pose graph[11].

• SLAM BackendThe pairwise transformation between sensor poses are computed locally and so the trajec-tory that is formed is not globally consistent. To make the trajectory globally consistentthey optimize the pose graph using the g2o framework. It is the extensible graph optimizerthat can be applied to a wide range of problems including variety of SLAM problems.The global optimization is beneficial in case of a loop closure, when visiting a known lo-cation in the map it diminish the accumulated error. This make this SLAM system morebetter.Figure 4.4 is the schematic of how the algorithm works[11].

• Map RepresentationFor visualization of the the map the original data is used to represent map in 3D pointcloud data form. And for navigation and path planning purposes 3D occupancy grid mapis constructed to represent the environment using Octomap library.

22

Page 28: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

Figure 4.5: 3D point cloud of the map(Test Dataset)

Figure 4.6: Octomap of the samemap(Test Dataset)

4.3.3 RTAB-Map(Real-Time Appearance Based Mapping)

RTAB-Map is also a graph based RGB-D SLAM approach based on an incremental appearance-based loop closure detector. This algorithm is most beneficial for online SLAM of Large environ-ment as this system uses unique memory management system which decreases the computationalload and can make map of the larger environments[9].

4.3.3.1 Working of algorithm

• Global Loop Closure For the global loop detection,vision sensors such as kinect are gen-erally used to derive the observations and distinctive features from the environment.Forvision based mapping, the bag of words approach is used which have shown to performonline loop closure detection for paths upto 1000km[9]. These visual words are generallymade from local features like such as SIFT and as they have high dimensionality it isnecessary to quantize them into vocabulary for fast comparison. Here each word is linkedto related image so the comparison can be done efficiently over large data sets with TermFrequency-Inverse Document Frequency approach[9].

Figure 4.7: Graph Representation of Locations

This vocabulary can be created both online and offline.Memory Management approacheshave been used to increase the recognition or to limit the memory usage.

• Memory Management SystemThe main idea to reduce the memory usage is using limited number of locations for loopclosure detection so that real time constraints can be satisfied, while still gain access tolocations of the entire map whenever necessary. To achieve this the method implementedby this algorithm is inspired from observations made by psychologists that people remem-bers more areas where they spent most of their time,compared to those where they spentless time.

23

Page 29: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

This inspiration is implemented as when the number of locations in the working memorytakes processing time for finding matches greater than a time threshold, this approachtransfers location less likely to cause loop closure detection from robot Working Memoryto Long Term Memory, so that they do not take part in loop closure detection. And, if theloop closure is detected, neighbour locations can be retrieved back into Working Memoryto be considered in future loop closure detection. As shown in Figure 4.7 each location isrepresented by image signature, a time index and weight, locations are linked together ingraph by neighbour or loop closure links[9].

Figure 4.8: Schematic approach of RTAB-MAP(inspired from human memory)

Location that go into Long Term Memory are chosen by first-out(FIFO) policy, pruningthe oldest locations from the map with respect to real-time constraints. When a transferfrom Working Memory to Long Term Working Memory is necessary, the location with thelowest weight is selected and if many locations have the same weight, the oldest one istransferred. SM evaluates the image signature to reduce the data dimensionality and toextract useful features for loop closure detection. So, SM creates new location with imagesignature and send it to STM. STM is used to observe similarities through time betweenconsecutive images for weight updates and send it to WM whose role is to detect loopclosure between location in space. RTAB-Map evaluates loop closure probabilities with adiscrete Bayesian filter by comparing the new location by the one only in WM.The link is created when a high loop closure is detected between new and old location.This is how a graph is made in RTAB-MAP[9].

• Graph OptimizationFor this approach TORO(Tree-based netwORK Optimizer) optimization approach is used.The graph in which nodes are poses and the link are transformation of the between theimages is used as constraints. When a loop closure is detected the errors introduced bythe odometry can be propagated to all the links thus correcting the map. For a singlemap; The TORO tree has only one root[10].

• Map RepresentationThis map has two type of representation a 3D point cloud data and also the 2D occupancymap of the environment for navigation purposes[9].

4.3.4 Implementation

The setup used for implementation of SLAM systems for mapping and localization is:

24

Page 30: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

Figure 4.9: 3D point cloud of the map Figure 4.10: 2D Occupancy Grid Map

• ROS was used as an software to implement the algorithms.

• P3Dx was used as a robot.

• Kinect was used as a vision sensor.

• The map was to be made of the corridor and in-house robotics facility.

• Figure 4.11 represents the transformation of Kinect with P3dx.

Figure 4.11: Transformation Tree of the Robot

Now, we will be testing SLAM algorithms which we studied earlier for the above setup. Theresults from the testing are shown below for both RGBD SLAM and RTAB-Map respectively.

1. RGB-D SLAM

25

Page 31: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

(a) Implementation of RGB-D SLAM with Hand-held Kinect.We implemnted the RGB-D SLAM system first with hand-held Kinect to capture asmall environment by just rotating around it axis.

Figure 4.12: 3D point cloud of the map with hand-held Kinect

(b) Implementation of RGB-D SLAM with P3Dx + Kinect We first tried to implementthe following algorithm in large environment but as it takes much memory and com-putational load as this is one of the disadvantage of RGB-D SLAM. We createdthe map of small environment using P3Dx + Kinect. This is how we implemented

Figure 4.13: 3D point cloud of map with P3Dx + Kinect

RGB-D SLAM system on mobile robot and got the map of the environment and alsolocalized the robot in given environment in this case Robotics Lab IIT Jodhpur.

26

Page 32: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

2. Real-Time Appearance Based Mapping(RTAB Map)

(a) Implementation of RTAB-Map with Hand-held Kinect.Similar to RGBD-SLAM we first tried to implement the RTAB-Map with hand-heldKinect to capture a small environment just by rotating its axis.

Figure 4.14: 3D point cloud of the map with hand held Kinect

Figure 4.15: 2D Occupancy with hand held Kinect

27

Page 33: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

(b) Implementation of RTAB-Map with P3Dx + Kinect.In this method we were able to create map of the large environment without thesystem crashing. As this method uses memory management system map of largeenvironment easily without any lag.

Figure 4.16: 3D point cloud of the map with P3Dx + Kinect

Figure 4.17: 2D Occupancy with P3Dx + Kinect

28

Page 34: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

4.3.5 Evaluation

After successful implementation we evaluated two SLAM algorithms based on their performance.Apart from that observations were made during implementation to see which algorithm wouldbe better for AGV which was going to be used by industry in longer run.We evaluated the performance of the SLAM algorithm on the standard test data-set provided

by Computer Vision Group, Faculty of Informatics, Technical University of Munich. The data-set recorded with p3dx and Kinect(friegburg.pioneer.slam2) was used to get results in boththe algorithms and the results were evaluated from online evaluation tool by Computer VisionGroup, Faculty of Informatics, Technical University of Munich. For evaluation the true tra-jectory of Kinect is recorded[12] with motion capture system of each data-set and is used forevaluation of different visual SLAM systems.The online evaluation tool evaluates SLAM algorithm by two factors:

• Absolute Trajectory Error:As described above the true trajectory of the robot is recorded with motion capturesystem. We need to check how accurate the localization is so we need to check whatposes of robot we are getting from SLAM algorithms and what’s the actual trajectorythe robot is following. Absolute Trajectory Error is used to evaluate the performance ofSLAM systems. So, here the script they directly calculate the difference between eachpair of poses. The output of the script is in the form of mean/median/standard deviationof these differences[13]. The results of the script are shown in Table 4.1.

Table 4.1: Average trajectory Error in RGBD-SLAM and RTAB-Map

RTAB-Map RGBD-SLAM

Absolute Translation Error.Mean 0.181 m 0.992 m

Absolute Translation Error.Median 0.135 m 0.897 m

Absolute Translation Error.Standard Deviation 0.075 m 0.610 m

Results show that the trajectory is more accurately determined by RTAB-Map rather thanRGBD-SLAM. However, the poses compared are more in RGBD-SLAM than RTAB-Mapbut by fine tuning the parameters the poses comparison can be made higher. Here, theresults show the trajectory is more accurate in RTAB-Map than RGBD-SLAM.

• Relative Pose ErrorAfter evaluating the trajectory error with respect to true trajectory we now check the driftof the odometry visual system relative to the trajectory that have been obtained from theSLAM system. Drift means robot calculates it position relative to landmarks and thelandmarks have certain error this causes error in robot position. Thus,accumulation oferrors in landmarks leads to higher error at the end of the trajectory. So the minimumvalue of drift error is favourable and can be reduced by loop closures. This script calculatesthe error between all the pairs of time stamps in estimated trajectory[13]. This evaluationtechnique is useful in calculating drift of SLAM systems. The results of the script areshown in the below Table 4.2.

Table 4.2: Relative Pose Error in RGBD-SLAM and RTAB-Map.

RTAB-Map RGBD-SLAM

Translation Error.Mean 0.278 m 0.124 m

Translation Error.Median 0.332 m 0.072 m

Translation Error.Standard Deviation 0.176 m 0.216 m

29

Page 35: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

Rotational Error.Mean 5.867 m 4.217 m

Rotational Error.Median 0.101 m 0.046 m

Rotational Error.Standard Deviation 3.971 m 6.224 m

The drift errors in RTAB-Map are higher than RGBD-SLAM systems. The reason behindthis is that their very frequent odometry errors experienced when their was sudden changein the direction of the P3Dx robot.

The errors were calculated for each SLAM system and it was observed that Average TrajectoryError was higher in RGBD-SLAM algorithm and Relative Pose Error is higher in RTAB-Map.But, when we implemented the algorithms RTAB-Map performed much better than RGBD-SLAM as the memory occupied was less now load on computer, adaptation with ROS navigationpackage and better visualization of 3D point cloud. RTAB-Map is better option than RGBD-SLAM system for AGV application in industry environment.

30

Page 36: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

Chapter 5

Conclusion and Further work

By the end of this semester we achieved in selection of mechanical and electronic components ofAGV system in accordance with the design and performance specifications suggested by the in-dustry.Dynamic analysis of proposed model of AGV has been done through analytical approachfor different application purposes.The results are validated using the simulation software Adamsand real time behavior of model is visualized. As an another step towards control of AGV sys-tem, performed open and closed loop control of DC motor and obtained a BLDC motor modelwith parameters matching with the selected motor. We also identified electrical power and datadistribution system.

Initial step towards making AGV fully autonomous was done in this semester. Lit-erature study of the SLAM systems were done and the SLAM systems were implemented tocreate map of corridor and in house robotics facility. Furthermore, to decide upon which systemwould be beneficial to us evaluation of SLAM systems were done and it was concluded to useRTAB-Map SLAM system in AGV due to numerous advantages.

With the results achieved in this semester we are able to move a step further towardsour problem statement.Following are the tasks we will be focusing in the oncoming semester forfurther development of our concept model:

1. Dynamic analysis of the proposed model in simulation software for application of towing

2. Integration of electrical and electronic components to the proposed model

3. Incorporation of mechanism for payload carrying and towing

4. Full scale prototype of model ready to fabricate

5. Simulating a system with BLDC motor to gain insights of electrical parameters in differentconditions

6. Selection of controller board

7. Interfacing controller board with sensors, actuators and ROS

8. Incorporating dynamic obstacles in the map

9. Path planning to goal location avoiding static and dynamic obstacles

31

Page 37: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

References

1. Roland Siegwart, Illah R. Nourbakhsh (2004) -”Introduction to Autonomous Mobile Robots”

2. Jason M. O’Kane(April 20,2016) -”A Gentle Introduction to ROS”

3. Subir Kumar Saha, Jorge Angeles -”Kinematics and Dynamics of a Three-wheeled 2-DOFAGV”. Robotics and Automation, 1989

4. Khosro Bijanrostami- ”Design and Development of an Automated Guided Vehicle forEducational Purposes”

5. MOOG Motors Inc. http://www.moog.com/content/dam/moog/literature//MCG/motorcatalog.pdf

6. Stefan Baldursson (May, 2005)-BLDC Motor Modelling and Control - A Matlab/SimulinkImplementation. Master’s thesis

7. Syed Abdul Rahman Kashif, UET, Lahore, for BLDC model

8. Vulkollan Wheels - Load Drive Wheels.https://www.indiamart.com/proddetail/vulkollan-wheels-load-drive-wheels-5671057455.

html

9. Mathieu Labbe,Francois Michaud(2013)-”Appearance-Based Loop Closure Detection forOnline Large-Scale and Long-Term Operation”.IEEE Transaction on Robotics(TRO-2013)

10. Mathieu Labbe,Francois Michaud(2014)-”Online Global Loop Closure Detection for Large-Scale Multi-Session Graph-Based SLAM”. IEEE/RSJ International conference On Intel-ligent Robot and Systems(IROS2014)

11. Felix Endres, Jurgen Jurgen Hess,Nikolas Engelhard, Jurgen Strum, Daniel Cremers, Wol-fram Burgard(2012)-”An Evaluation of the RGB-D SLAM System”.IEEE InternationalConference on Robotics and Automation(ICRA2012)

12. Cesar Cadena, Luca Carlone, Henry Carrillo, Yasir Latif, Davide Scaramuzza, Jose Neira,Ian Reid, and John J. Leonard(2016)-”Past, Present, and Future of Simultaneous Lo-calization and Mapping: Toward the Robust-Perception Age”. IEEE Transaction onRobotics.,Vol.36,no.6,pp.1309-1317.

13. Jurgen Strum,Stephane Magnenat, Nikolas Engelhard, Francois Pomerleau,Francis Colas,Daniel Cremers, Roland Siegwart, Wolffram Burgard(2011)-”Towards a benchmark forRGB-D SLAM evaluation”-Robotics: Science and Systems Conference(RSS11)

14. Robotic Mapping. (n.d.). In Wikipedia. Retrieved November 14, 2017, fromhttps://en.wikipedia.org/wiki/Robotic_mapping

15. RGB-D SLAM. (n.d.). In OpenSLAM.org. Retrieved November 14, 2017, fromhttps://openslam.org/rgbdslam.html

32

Page 38: Design and Development of Vison Based Compact Automated ...home.iitj.ac.in/~dhagash.1/images/B.Tech Report 1.pdf · Mechanical Design of AGV 2.1Preliminary design of AGV Demands provided

16. Christoph Sprunk(2015)-”Highly Accurate Mobile Robot Navigation”, PhD Thesis- Uni-versity of Freiburg.

33