ET-NavSwarm 2016 URC Poster

1
x x Extra Terrestrial Navigation with Particle Swarm Optimization Team Members: Joshua Proulx, Nathan Beaulieu, Haley Breedlove, Colin Pellerin, Samuel Wilkinson, Gregory Hatfield, Brody McClure, Brian Teune, Nolan Dinero, Aaron Rist, Garrett Malagodi, Iskandar Fendi, Ben Yandell, Zachary Plumer Advisors: Professor May-Win Thein, Professor Se Young Yoon, Michael Johnson Arduino Mega Runs an LQR control algorithm (programmed in C/C++) Analog and digital input/output pins read sensor data Sends sensor data to the Raspberry Pi Raspberry Pi Runs the PSO (programmed in Java) Uses sensor data and the PSO algorithm to select search points and plans a path to the destination Xbee Wirelessly transmits and receives data allowing communication between bots Sends packets of data through a mesh network Adds network stability through self healing, self discovery, and dense network operation Abstract ET-NavSwarm’s mission is to design, build, and test a swarm of autonomous robots. These will serve as a testing platform for a graduate research algorithm: Particle Swarm Optimization (PSO). PSO is derived from the concept of swarm behavior found in nature (birds, bees, etc.). By communicating and using mathematical principles, the swarm can find the best/most of a given objective within a specified area. The swarm operates without a centralized leader to search for natural resources, signs of life, or items of interest. The robots are designed to traverse rugged terrain, climb 45° inclines, avoid obstacles, and collect data on position and elevation. To accomplish this they were made to be water-resistant and have the longest possible run time (battery life). The robots’ sensors and electronics were selected to fulfill the requirements of each algorithm. As a proof of concept for NASA, ET- NavSwarm will perform a large scale field test with these robots, searching for the highest and lowest elevations. Design Constraints Sensors Inertial Measurement Unit (IMU) 10 Degrees of Freedom Determines roll, pitch, and yaw Determines altitude via barometric pressure Global Positioning System (GPS) Determines location Infrared (IR) Sensors Detects obstacles up to 5 feet Drive up a 45 degree incline Traverse rugged terrain Water resistant 1 hour of run time Cost Sensors to provide feedback Particle Swarm Optimization Design Controls Analysis Software and Autonomy Circuit Analysis Path Planning Obstacle Avoidance Description: Created by Graduate Student Michael Johnson Proof of concept for NASA to aid in Space Exploration Algorithm created from studying swarms of animals Decentralized with no leader Each member acts independently towards a goal How it will be Tested: Will be tested on Earth using the two functions below: The Sphere Function will serve as the first test platform due to its simplicity The Schwefel Function will be later used to test the complexity Sphere Function Schwefel Function Desired Path Obstacle New Path Description: Determines the best way around a stationary obstacle Obstacles are known prior to the start of the mission Description: Avoids stationary obstacles that are in the desired path Obstacles are not known prior to the start of the mission www.unh.edu/navswarm 2015-2016 Original Design: BJT H-Bridge Original BJT H-Bridge Design Problems Low Current Capacity (2A) Voltage Drop Across Darlington Transistor Pairs Slower Switching Times Updated Design: MOSFET H-Bridge MOSFET H-Bridge Design Problems Soldered on Perf-board Time consuming to produce Prone to wiring/soldering errors Difficult to fix errors Final Design: Pololu 18v17 Pololu 18v17 High Power Motor Driver Handles 17 Amps continuous at 12 volts Very Small (1”x1”) Minimal connections Consistent operation Description: Method to determine inputs to the motors Inputs are based on relative error Error is based on position relative to goal set by particle swarm optimization Diverse controller options PID and LQR modeled, LQR selected as best Based on closed loop control system Controller Characteristics: PID (Proportional Integral Derivative) Simple Highly susceptible to noise Loses effectivity at longer distances LQR (Linear Quadratic Regulator) Complicated preparation, simpler application Inputs calculated before operation occurs Effective for all ranges Less controller effort is required Resulting System: Travels towards goal based on the calculated inputs from the control system Robots not already facing their goal rotate until it is more efficient to move forward End result is a curved path to location New path is faster with higher efficiency Swarm Physical World Arduino Mega Controller H-Bridge (Motors) State Infrared IMU GPS Sensors Serial Port Serial Port Raspberry Pi State Data & Control Platform Application Program Interface PSO XBee IMU Holder IR Sensor Housing Q1 2N2222A Q3 2N2222A U1A 4001BD_5V U1B 4001BD_5V U1C 4001BD_5V U1D 4001BD_5V U2A 4011BD_5V U2B 4011BD_5V U2C 4011BD_5V U2D 4011BD_5V R1 100Ω R2 100Ω R3 100Ω R4 100Ω VSS 12V R7 3kΩ R8 3kΩ R10 9kΩ R9 9kΩ VSS 12V D1 D2 D3 D4 S3 Key = A S2 Key = S VCC 5V Q11 IRF9530 Q12 IRF7404 Q7 IRF9530 Q6 IRF7404 R5 3kΩ R6 3kΩ R11 820Ω Q2 2N2222A Q4 2N2222A R12 1MΩ R13 9kΩ R14 1MΩ R16 9kΩ Q1 2N2222A Q2 2N2222A Q3 2N2222A Q4 2N2222A U1A 4001BD_5V U1B 4001BD_5V U1C 4001BD_5V U1D 4001BD_5V U2A 4011BD_5V U2B 4011BD_5V U2C 4011BD_5V U2D 4011BD_5V R1 470Ω R2 470Ω R3 470Ω R4 470Ω VSS 12V R5 820Ω R6 820Ω R7 3kΩ R8 3kΩ R10 820Ω R9 820Ω Q5 MJF122G TIP122 Q6 MJF122G TIP122 Q7 MJF127G TIP127 Q8 MJF127G TIP127 VSS 12V R11 1.0kΩ D1 D2 D3 D4 S3 Key = A S2 Key = S VCC 5V

Transcript of ET-NavSwarm 2016 URC Poster

Page 1: ET-NavSwarm 2016 URC Poster

x

x

Extra Terrestrial Navigation with Particle Swarm Optimization Team Members: Joshua Proulx, Nathan Beaulieu, Haley Breedlove, Colin Pellerin, Samuel Wilkinson, Gregory Hatfield,

Brody McClure, Brian Teune, Nolan Dinero, Aaron Rist, Garrett Malagodi, Iskandar Fendi, Ben Yandell, Zachary Plumer Advisors: Professor May-Win Thein, Professor Se Young Yoon, Michael Johnson

Arduino Mega • Runs an LQR control algorithm (programmed in C/C++)

• Analog and digital input/output pins read sensor data

• Sends sensor data to the Raspberry Pi

Raspberry Pi • Runs the PSO (programmed in Java)

• Uses sensor data and the PSO algorithm to select search points and

plans a path to the destination

Xbee • Wirelessly transmits and receives data allowing communication between

bots

• Sends packets of data through a mesh network

• Adds network stability through self healing, self discovery, and dense

network operation

Abstract

ET-NavSwarm’s mission is to design, build,

and test a swarm of autonomous robots.

These will serve as a testing platform for a

graduate research algorithm: Particle

Swarm Optimization (PSO). PSO is derived

from the concept of swarm behavior found

in nature (birds, bees, etc.). By

communicating and using mathematical

principles, the swarm can find the

best/most of a given objective within a

specified area. The swarm operates without

a centralized leader to search for natural

resources, signs of life, or items of interest.

The robots are designed to traverse rugged

terrain, climb 45° inclines, avoid obstacles,

and collect data on position and elevation.

To accomplish this they were made to be

water-resistant and have the longest

possible run time (battery life). The robots’

sensors and electronics were selected to

fulfill the requirements of each algorithm.

As a proof of concept for NASA, ET-

NavSwarm will perform a large scale field

test with these robots, searching for the

highest and lowest elevations.

Design Constraints

Sensors

Inertial Measurement Unit (IMU)

• 10 Degrees of Freedom

• Determines roll, pitch, and yaw

• Determines altitude via barometric

pressure

Global Positioning System (GPS)

• Determines location

Infrared (IR) Sensors

• Detects obstacles up to 5 feet

• Drive up a 45 degree incline

• Traverse rugged terrain

• Water resistant

• 1 hour of run time

• Cost

• Sensors to provide feedback

Particle Swarm Optimization Design

Controls Analysis Software and Autonomy Circuit Analysis

Path Planning Obstacle Avoidance

Description: • Created by Graduate Student Michael Johnson

• Proof of concept for NASA to aid in Space Exploration

• Algorithm created from studying swarms of animals

• Decentralized with no leader

• Each member acts independently towards a goal

How it will be Tested: • Will be tested on Earth using the two functions below:

• The Sphere Function will serve as the first test platform due to

its simplicity

• The Schwefel Function will be later used to test the complexity

Sphere Function Schwefel Function

Desired Path Obstacle

New Path

Description: • Determines the best way around a stationary obstacle

• Obstacles are known prior to the start of the mission

Description: • Avoids stationary obstacles that are in the desired path

• Obstacles are not known prior to the start of the mission

www.unh.edu/navswarm

2015-2016

Original Design: BJT H-Bridge Original BJT H-Bridge Design Problems

• Low Current Capacity (2A)

• Voltage Drop Across Darlington Transistor Pairs

• Slower Switching Times

Updated Design: MOSFET H-Bridge MOSFET H-Bridge Design Problems

• Soldered on Perf-board

• Time consuming to produce

• Prone to wiring/soldering errors

• Difficult to fix errors

Final Design: Pololu 18v17 Pololu 18v17 High Power Motor Driver

• Handles 17 Amps continuous at 12 volts

• Very Small (1”x1”)

• Minimal connections

• Consistent operation

Description: • Method to determine inputs to the motors

• Inputs are based on relative error

• Error is based on position relative to goal set by

particle swarm optimization

• Diverse controller options

• PID and LQR modeled, LQR selected as best

• Based on closed loop control system

Controller Characteristics: • PID (Proportional Integral Derivative)

◦ Simple

◦ Highly susceptible to noise

◦ Loses effectivity at longer distances

• LQR (Linear Quadratic Regulator)

◦ Complicated preparation, simpler application

◦ Inputs calculated before operation occurs

◦ Effective for all ranges

◦ Less controller effort is required

Resulting System: • Travels towards goal based on the

calculated inputs from the control system

• Robots not already facing their goal rotate

until it is more efficient to move forward

• End result is a curved path to location

• New path is faster with higher efficiency

Swarm

Physical

World

Arduino Mega

Controller H-Bridge

(Motors)

State Infrared

IMU GPS

Sensors

Serial

Port

Serial

Port

Raspberry Pi

State

Data & Control Platform

Application

Program

Interface PSO

XBee

IMU Holder IR Sensor Housing

Q1

2N2222A

Q3

2N2222A

U1A

4001BD_5V

U1B

4001BD_5V

U1C

4001BD_5V

U1D

4001BD_5V

U2A

4011BD_5V

U2B

4011BD_5V

U2C

4011BD_5V

U2D

4011BD_5V

R1

100Ω

R2

100Ω

R3

100Ω

R4

100Ω

VSS12V

R73kΩ

R83kΩ R10

9kΩ

R9

9kΩ

VSS12V

D1 D2

D3 D4

S3

Key = A S2

Key = S

VCC5V

Q11

IRF9530

Q12

IRF7404

Q7

IRF9530

Q6

IRF7404

R53kΩ

R63kΩ

R11

820Ω

Q2

2N2222A

Q4

2N2222A

R121MΩ

R13

9kΩ

R14

1MΩ

R16

9kΩ

Q1

2N2222A

Q2

2N2222A

Q3

2N2222A

Q4

2N2222A

U1A

4001BD_5V

U1B

4001BD_5V

U1C

4001BD_5V

U1D

4001BD_5V

U2A

4011BD_5V

U2B

4011BD_5V

U2C

4011BD_5V

U2D

4011BD_5V

R1

470Ω

R2

470Ω

R3

470Ω

R4

470Ω

VSS12V

R5820Ω

R6820Ω

R73kΩ

R83kΩ

R10

820Ω

R9

820Ω

Q5

MJF122GTIP122

Q6

MJF122GTIP122

Q7

MJF127GTIP127

Q8

MJF127GTIP127

VSS12V

R11

1.0kΩ

D1 D2

D3 D4

S3

Key = A S2

Key = S

VCC5V