Fall 2016, Preliminary Design Documentation

Sabina Subedi – Project Manager

Adan Rodriguez – Mission, Systems and Test

Jose Alcantar – Electronics and Controls

Nicholas Lukin – Design and Manufacturing

Table of Contents

Review of Literature

By Sabina Subedi, Project Manager

Level 1 requirements for the Pathfinder from Spring 2016 were reviewed and analyzed per the requirement evaluation rubric provided below.

Requirement Evaluation Rubric:

  1. Is the requirement, Quantitative, Verifiable, and Realizable?
  2. Is the requirement located at the correct level (1 – Program/Project, 2 – System/Subsystem)
  3. Is the requirement response to a higher level requirement or customer’s objective (Requirement Flow Down)? Is the linkage clearly defined?
  4. Does requirement provide links to source material?
  5. Does the requirement move the design process forward?
  6. Are equations used to calculate a requirement provided and are answers correct?
  7. Is language in the form of a requirement?

 Figure 1: Review of requirements from Spring 2016

Program Objectives / Mission Profile

By Sabina Subedi, Project Manager

Program Objective Statement

The Pathfinder is an autonomous rover that is self-sufficient using solar panels. The design of the Pathfinder is inspired by the twin Mars rovers “Spirit and Opportunity.” The Pathfinder will utilize navigation waypoints on Arxterra control panel to traverse through the defined course, articulating ultrasonic range finders and LiDar sensor for obstacle avoidance. Digital slip differential will be implemented for unmanned turning of the rover during it’s course. In order to save battery, the Pathfinder will have sensors that will send signals to the motors to stop the wheels from spinning under no load conditions.

Mission Profile

The mission for the Pathfinder is to complete the same course defined for Spring 2016 AdBot. “The mission profile will be a test course consisting of the 9 steps in front of the USU building, then the concrete path clockwise leading down some inclines back to the bottom of the stairs.” (Spring 2016, AdBot Blogpost) The Pathfinder shall complete its mission in one evening.  The pathfinder shall conduct its mission at night for better operation of the LiDar sensor.

Requirements

Program/Project (Level 1)

By Sabina Subedi, Project Manager

  1. The pathfinder shall be autonomous, demonstrating GPS navigation mode on Arxterra
  2. The pathfinder shall avoid obstacles articulating Ping Ultrasonic Range Finder and a LiDAR sensor
  3. The pathfinder shall implement digital slip differential for turning, i.e., inside wheels turn at a different speed than the outside wheels while turning
  4. The six wheels shall be on a rocker bogie suspension system to allow the Pathfinder to traverse through rough terrain and enable mobility
  5. Each wheel shall have its own motor in order to be able to be controlled independently
  6. Wheels under no load condition shall stop spinning in order to conserve power
  7. The physical design of the Pathfinder shall mimic the Spirit and Opportunity rovers.
  8. The pan and tilt system shall be modified to support an Android phone
  9. The pan and tilt system shall be sealed in order to protect it from weather conditions in December
  10. The Pathfinder shall explore the course defined by the AdBot rover. The mission shall be completed in 4 hours in the evening.
  11. The Pathfinder shall be completed by the last day of 400D course, December 154h, 2016

System/Subsystem (Level 2)

By Jose Alcantar, Electronics and Controls Engineer

  1. The Pathfinder shall use an Arduino Leonardo implementing the latest version of the 3DoT library. Due to customer request, the current Arduino Mega will be replaced with the Arduino Leonardo. The Leonardo will be programmed using the 3DoT library.
  2. The Pathfinder shall use GPS coordinates from its sensors to communicate position with the Arxterra app. This will allow GPS navigation and the use of waypoint navigation.
  3. For obstacle avoidance, a LIDAR sensor and two SeedStudio ultrasonic range finders (SEN136B5B) shall be implemented onto the design of the Pathfinder. The ultrasonic range finder will be able to detect the range of obstacles in front of the pathfinder from 3cm to 400 cm. The LiDAR sensor will be able to detect the obstacle itself, allowing the rover to maneuver around that obstacle. A trade off study was done prior to choosing this specific model of ultrasonic range finder.
  4. The design of the pathfinder shall resemble the Spirit and Opportunity rovers. The Spirit and Opportunity rovers are each 1.5 meters high, 2.3 meters wide and 1.6 meters long, and weigh about 400 lbs.
  5. Due to the removal of the Google Tango, the pan, and tilt platform shall be redone to accommodate solely an Android phone, specifically a Samsung Galaxy S7 Edge. The dimensions of the phone to be used are 9 x 72.6 x 7.7 mm (5.94 x 2.86 x 0.30 in). The phone weighs 157.6 g.
  6. The encasement for the Android phone shall be sealed to protect the device from outdoor conditions.
  7. This requirement will vary depending on the weather conditions on the day of the final demonstration in December. The forecasted load for the day of the final, December 15th, 2016, is partially cloudy with a high of 65 degrees Fahrenheit and a low of 47 degrees Fahrenheit. No rain is forecasted for that week. Historical average for the day is 67 °/47 °.
  8. In order for the Pathfinder to implement electronic slip differential 6-wheel drive, three separate VNH 5019 motor shields shall be used to allow the control of each independent DC motor. Testing will be done to find a suitable voltage ratio between the wheels to ensure slip differential turning.
  9. The ACS712 (SEN-08883) current sensor shall be implemented to get feedback on the amount of current passing through the load. This current sensor will allows us to measure load up to 5A of AC or DC current.

Source Material

The links below consist of sources that were used in developing the Level 2 requirements.

PINGER and Arduino:

https://www.arduino.cc/en/Tutorial/Ping

Ultrasonic range finder (SEN135B5B) Fritzing diagram:

http://fritzing.org/media/fritzing-repo/projects/3/3pi-robot-atmega-328p-and-ultra-sonic-range-measur/other_files/ULTRASONIC%20SEN136B5B.pdf

SeedStudio UltraSonic range finder and Arduino interface:

https://www.youtube.com/watch?v=y8ox5NPvcPc

SeedStudio Ultra-sonic range finder:

http://www.eio.com/p-40804-seeedstudio-sen136b5b-ultra-sonic-range-measurement-module.aspx

Ultrasonic Field of View test, Fall 2015 Pathfinder:

http://arxterra.com/pathfinder-ultrasonic-field-of-view-test/

 Specifications of the Spirit and Opportunity:

http://hobbiton.thisside.net/rovermanual/

Waypoint navigation on Arxterra:

https://www.arxterra.com/arxterra-now-supports-waypoint-navigation/

Performance of Arduino Leonardo:

https://www.arduino.cc/en/Main/ArduinoBoardLeonardo

Performance of LiDar Lite V2:

https://www.sparkfun.com/products/retired/13680

Weather Forecast for December 2016:

http://www.accuweather.com/en/us/los-angeles-ca/90012/daily-weather-forecast/347625?day=86

Spring 2016 AdBot Preliminary Design Documentation:

http://arxterra.com/preliminary-2/

Low Current Sensor:

https://www.sparkfun.com/products/8883

Preliminary Budget

The preliminary budget was created based on the new upgrades required to the existing rover in order to meet the new Level 1 and Level 2 requirements for this semester, Fall 2016. This budget will be verified by our customer before any parts are purchased. Therefore, the total estimated cost is subject to change.

Figure 2: Preliminary Budget for the Pathfinder, Fall 2016

Design Innovation

By Sabina Subedi, Project Manager

A brainstorming exercise was performed in order to come up with creative solutions to the problems found in the existing Pathfinder. Some of the problems with the existing Pathfinder were:

  • It cannot climb up the stairs. This problem occured because the weight on the existing rover is not distributed properly. It could be fixed by lowering the center of gravity. Possible ways of lowering the center of gravity include but are not limited to redistributing the weight on top of the chassis, or lowering the entire platform and pushing the wheels further back.
  • The rover draws excess current merely due to its weight. The weight could be reduced by milling excess metal off or by using lighter components. This could potentially increase the battery life.
  • The existing pan and tilt system is designed for a Google Tango and is controlled by two servo motors. The existing encasement a bulky design made out of plastic. The bulkiness of the design limits the Pathfinder in its range of movement and makes it harder to navigate. Possible solution to this problem is to design a new pan and tilt system to hold an Android phone and utilize stepper motors instead of servos to reduce bulkiness as well as increase functionality.

Systems/Subsystem Design

By Jose Alcantar, Mission Systems and Test Engineer

Product Breakdown Structure

pbs

Figure 3: Product Breakdown Structure

The product breakdown structure demonstrates the hierarchical breakdown of the products that will be used in the overall design of the Pathfinder chassis subsystem. At the highest level, the Pathfinder chassis subsystem splits into two separate main subcategories, the hardware and software aspect. The hardware consists of three subcategory items, the chassis, pan and tilt platform, and the Arduino microcontroller. The chassis subcategory was organized by first starting at the bottommost level, where the manufacturing engineer is responsible. This consists of the six wheels and six DC motors that will be installed onto the rocker bogie suspension system and ultimately onto the chassis. The pan and tilt platform is the responsibility of the manufacturing and electronics engineer. At the lowest level, the category consists of the Android device, motors for pan and tilt, and the two sensors. These bottom level components will be installed onto the manufactured pan and tilt platform allowing obstacle detection and platform control. The Arduino subcategory is the physical microcontroller used on the pathfinder. This category is further split into two categories, the motor shield, and Bluetooth module. The electronics engineer is responsible for these components. The use of the motor shields allow for DC motor control and the Bluetooth module allows for communication between Arduino and Android.

The other main subcategory is the software block. This block is then further split into other functions needed for the control of the pathfinder. The first sub component is the software-implemented control of the pan and tilt motors. The second component is the software controlled DC motors used for the wheels of the pathfinder. Third is the control of the LIDAR and Pinger sensors used for obstacle avoidance. The fourth component is the software integration for communication between Android and the Bluetooth.

Electronic System Design

By Adan Rodriguez and Jose Alcantar

System Block Diagram

By Adan Rodriguez, Mission, Systems and Test Engineer

Figure 4: System Block Diagram

Interface Definitions

By: Jose Alcantar, Electronics and Controls Engineer

Figure 5: Interface Matrix

The interface matrix for the Pathfinder chassis subsystem tabularizes the pin connection layout of the electronic system. The embedded system is comprised of the ATMEGA32U4, Arduino Leonardo board, Motor Shield and finally sensors and actuators on the rover. The Arduino and motor shield use up some pins from the ATMEGA and in exchange get an extension in capabilities for the components used on the rover.

Fritzing Diagram

By: Jose Alcantar, Electronics and Controls Engineer

Figure 6: Fritzing Diagram 

Source Material

The following sources were used in developing the interface definition.

https://cdn.sparkfun.com/datasheets/Sensors/Proximity/lidarlite2DS.pdf

https://www.arduino.cc/en/uploads/Main/arduino-leonardo-schematic_3b.pdf

https://www.arduino.cc/en/Main/ArduinoBoardLeonardo

https://www.adafruit.com/product/1438

https://cdn-shop.adafruit.com/datasheets/TB6612FNG_datasheet_en_20121101.pdf

Mechanical Design

By Nicholas Lukin, Design and Manufacturing Engineer

Overall Design

Figure 7 : Overall design of the new chassis

Figure 8: Exploded view of the new chassis

The above pictures are models of what the Pathfinder should look like in order to satisfy the level 1 and 2 requirements. In order to satisfy the mission objective of traversing the same course/path that was outlined for the “Spring 2016 Adbot” the Pathfinder will utilize a rocker bogie suspension system that is very similar to the design used on the Spirit mars rover. This suspension system gives the Pathfinder a wide and long stance allowing it to climb up and around obstacles such as rocks and stairs. The length from the front to the back wheel will need to be longer than the length of the base platform in order to produce a wide stance. This wide stance will prevent the Pathfinder from tipping backwards when going up steep surfaces. Many components will be mounted to the base platform such as the pan/tilt mobile case, solar panels, electronics box, battery and sensors. These components will be mounted in a way that will create even weight distribution on the base platform. This even weight distribution will also help the Pathfinder remain upright when going up steep surfaces. Using a rocker bogie suspension system and having even weight distribution will help achieve the goal of traversing the course.

Chassis Lightening

Figure 9: Rocker-Bogie Suspension system

In order to conserve battery life and limit the stress put on the driver motors the chassis will be made as light as possible. The suspension components of the current Pathfinder will need to modified in order to achieve this requirement. The above picture shows the suspension components and how they may look in order to achieve the lightest possible design. About half an inch may be cut off from the inside of the suspension legs. Stress simulations and calculations will need to be performed to ensure that the new lightened chassis can handle the load of all the components that will be mounted to the base platform.

Mobile Phone Pan and Tilt System Design

Figure 10: Pan and Tilt System design

The use of a Pan/Tilt mobile encasement is required in order to help the Pathfinder navigate through the course. The holder can be designed for an Android or Iphone. The above picture shows a proposed design model for an Iphone 6. Measurements were taken from an Iphone six and these exact measurements were used in the above model. The Pan/Tilt system will be driven by servos that will be mounted directly to the Pan/Tilt chassis. The above model does not include the servo that controls the “pan” movement. Future design will include the second servo. Wiring for the servo motors will be run through the support tube and then ran to the electrical box via the bottom side of the base platform.

New Wheels

Figure 11: New wheels, McMaster-Carr 6″

In order for the Pathfinder to complete the course it will need to be equipped with new wheels. These wheels will have to be strong enough to support the load of the entire pathfinder and rugged enough to withstand the environment that the course will provide. The picture above is of a wheel sold by McMaster-Carr that may be used on the Pathfinder. The wheel is 6 inches in diameter and 1.5 inches wide. The axel has a diameter of 0.5 inches. The wheel hub is made of smooth steel and the actual wheel is made of solid rubber with hollow treads. The capacity of each wheel is 55 lbs. The wheel hub has ball bearings pressed into it to ensure smooth operation. Having a 6 inch diameter will allow the Pathfinder to get up stairs easier. Having a steel wheel hub may be too heavy therefore an aluminum wheel hub may be used instead.  A wheel mounting hub will be designed in the future. This hub will properly connect the DC motor to the wheel. A link to the wheel specs can be found in the source material section.

Electrical, Wiring, AC Unit


Figure 12: Electrical box and top view of the chassis

It is necessary that all electronics be protected during the mission. An electrical box will be used to house all of the electronics such as the micro-controller and motor driver shields. The electrical box may be made out of metal or plastic and will be mounted in the best place possible to ensure even weight distribution. A cooling fan might be used in case the heat produced by the electronics gets too high. This fan will be built into the electrical box along with vents to ensure proper air flow. Future tests will need to be run with the electronics engineer to see how hot the electronics get. All wiring will be neatly mounted and covered for protection. The battery is the heaviest part of the electric system and will need to be mounted in the center of the base platform in order to maintain even weight distribution. The picture above shows a general idea of where the electronics will be mounted on the base platform relative to everything else.

Solar Panel Interconnection

The design of the actual solar panel support is not in our scope of work but it is necessary for us to know how it will look in order for us to figure out how it will be attached to the chassis. It is crucial that the solar panels have good weight distribution and that they are mounted on the base platform in the correct location. Working with the Solar Panel Group in the future will be necessary in order to figure out what the best location is.

Source Material

Spirit Rover:

https://en.wikipedia.org/wiki/Spirit_(rover)

Wheels:

http://www.mcmaster.com/#2331t11/=149w7jd

General Information on spring 2016 Pathfinder:

http://arxterra.com/spring-2016-pathfinder-preliminary-design-documentation/

Design and Unique Task Description

The following tests and experiments shall be conducted.

Solidworks simulations will need to be performed in order to figure out if the new lighter chassis is strong enough and to see if the center of mass is in the appropriate location. These tests include load and shear analysis (stress test) and various animations

Rolling tests will need to be performed on the new wheel to make sure they do not wobble and have a smooth rotation.

Pan/tilt platform may be animated to show proper mobility.

Weight distribution test with solar panel connected.

Spring 2016 Pathfinder: Project Summary


IMG_3253

By:

Peiyuan Xu (Project Manager)

Approved by Peiyuan Xu (Project Manager)

Approved by Xiong Lee (System Engineer)

Table of Contents

Executive Summary

Project Objectives

The spring 2016 Pathfinder Rover was inspired by NASA’s MARs Exploration Rover-“Sojourner”. The profile for this semester’s project is to imitate the design of “Sojourner” Rover to prototype a new generation of Pathfinder Rover that implements the Rocker Bogie Suspension System as well as being self-sufficient by using solar panels. The Pathfinder is allowed to have the solar panels charging the battery for up to 8 hours during the day time. Then the customer can spend up to 4 hours at night walking and exploring with the Pathfinder. Ultimately, The customer can use Arxterra control panel on the PC to navigate the Rover by using the cursor to click a point on the map. This generation of Pathfinder Rover is also designed to test and implement SLAM (Simultaneous Localization and Mapping) technology for autonomous vehicles.

Mission Profile:

mission WiFi Stength                                                             Figure 1 – CSULB WiFi Strength map

Since our Pathfinder Rover will be tested at the entire CSULB campus. We need to find out where there is the best Wi-Fi signal  in order to gain the stable video stream from the android phone to the Arxterra. The system engineer Xiong Lee was able to use an android App called Wi-Fi Maximiser to map out the  Wi-Fi signal strength around CSULB campus.  Based on the strength of the Wi-Fi signal, our mission will be narrowed down to the area covered with green on the map. We suggest the customer not to go through the area covered with red because there might be some packet loss and signal lag around the area. We also think this Wi-Fi signal strength map can be useful for other EE 400D project in which case they need to explore the CSULB campus as well.

The changes that made to the Mission Profile and Project Objective can be found here:

Spring 2016 Pathfinder: Mission Profile and Project Objective Update

Design

3D illustration

                                                                      Figure 2 – 3D Model                  

The image above is the 3D illustration in SolidWorks that shows the overall design of the pathfinder.

3D illustratioin2

                                                                Figure 3 – Exploded Model                              

This image above gives the exploded view of the Project design. On the top is the Tilt system with the encasement for Google Tango tablet and Android Phone. Below that are the 3 solar panels with resemble the shape of the Arxterra logo. Then there is a metal box to protect all the electronic components. Following that is our new chassis with Rocker Bogie System.

For more details on the structures of this design, refer to:

Spring 2016 Pathfinder Design and Manufacturing – Rocker Bogie Suspension System Design

Spring 2016 Pathfinder Design and Manufacturing – Tilt System Finalized Design

Project Features:

Rocker Bogie Suspension System

  • Designed for superior vehicle stability on the uneven surface
  • Obstacle-Climbing Capability
  • High-clearance chassis
  • Slow-speed application

62                                                                 Figure 4 – Rocker Bogie System

New Tilt system for Tango tablet and Android Phone

  • Has two servos. One controls Pan system, one controls Tilt system
  • Allow stream video from Android Phone correlates with Point Cloud data in Google Tango tablet
  • Protect the phone and Tango tablet

1615                                                                       Figure 5 – Tilt System

Solar Panels

  • Self-sufficient
  • Use three pieces of solar panels to resemble the Arxterra logo

13421                                                                    Figure 6 – Solar Panels

SLAM  (Project Tango Modules)

Access to the Point Cloud Data (send data out via Tango Bluetooth API)

Use Depth perception and IMU sensors to navigate Pathfinder go where the user wants to go (Developing)

Screenshot_2016-04-07-22-38-12                                                                 Figure 7 – Point Cloud App

System Design

1                                                            Figure 8 – System Block Diagram

The system block diagram above shows how all of the components interface with each other. First, transmission of data from an android phone or the Arxterra control panel via HC-06 Bluetooth module will tell the Arduino Mega what to do. The Arduino Mega will interpret this data and send it out through the motor shield or servo driver to drive the pathfinders movement. The system block diagram also depicts how the charge controller will interface the power supply and the solar panels to the VHN5019 Motor shield that will drive the pathfinder.

For more information about the system design, refer to:

Spring 2016 Pathfinder: System Block Diagram & Interface Matrix

Experimental Results:

Current Drawn By Motors

2                                                         Figure 9 – Current Drawn Test

The purpose of this test is to find the current drawn by the motors on different terrains and in different driving modes (Braking abruptly, Rotating (Under High Stress) and Running forward/backward (Normal Driving) . This test is crucial for us to gain the discharging time of the batteries in order to meet the Level 1 requirement of constantly running for 4 hours.

For Project Level 1 requirements, refer to:

http://arxterra.com/spring-2016-pathfinder-preliminary-project-plan/

Results:

Peak current: 4.8 A (Under highest stress)

-Ex. braking abruptly, rotating, etc

Average current: 1.2 A (Normal driving)

Theoretical discharge time:

20 Ah / 4.8 A = 4.16 hours (high stress)

20 Ah/ 1.5 A = 13.33 hours (normal driving)

Actual Discharge time to 50% : 6.5 hours

This test is conducted for the Wild Thumper chassis

Video Demo

For more information about this current drawn test, refer to:

Spring 2016 Pathfinder: Current Drawn Test

Charging Batteries Using Solar Panels

3                                                         Figure 10 – Solar Panels charging the batteries

The project objective stated that the pathfinder needs to be self-sufficient by using solar panels. This test is to measure the total current the solar panels can supply at direct sunlight. In reality, the charging capability of solar panels will vary depends on the weather condition, therefore, we include some of the other tests for comparison of the worst case scenario.

Results:

-Direct sunlight: 850 – 950 mA

-Shady area: 500 – 750 mA

-Rain or cloudy: 100 – 300  mA

  •  Important note (current supply  by the solar panel  determine the time required  to  charge the battery )
  • After charging these batteries in direct sunlight for 8 hours, the voltage level of the batteries increased from 4.0 V to 6.5V which is from 54% to 87%.
  • This would meet our Level 1 requirement since it takes around 6 hours of normal conditions run time to deplete our batteries from 7.4 V to 3.4 V.

For more information on how we implement solar panels, refer to:

Spring 2016 Pathfinder Solar Panels Implementation

Project Tango Modules

Screenshot_2016-04-07-22-38-12                                                        Figure 11 – Project Tango: Point Cloud

This spring 2016 Pathfinder project used Google’s Project Tango as a platform to test and implement SLAM (Simultaneous Localization and Mapping) technology for autonomous vehicles. Project Tango uses computer vision to give device the ability to know the position in the relative 3D space as well as the distance from the surrounding objects to the device itself.

For more research work of the Project Tango, refer to:

Spring 2016 Pathfinder: Project Tango Preliminary Research

For more details of the project Tango modules our team accomplished or attempted, refer to:

Spring 2016 Pathfinder: Project Tango Bluetooth API

Spring 2016 Pathfinder: Project Tango – Interactive Visualization of data from Tango using Paraview

Spring 2016 Pathfinder: Project Tango Module#5 – Android to Arduino Via Bluetooth

Subsystem Design

Interface Definition

2 3 4                                                           Figure 12 – Interface Matrix

The above interface matrix shows in depth on which pins are used on the Arduino Mega.

For further details on interface matrix, refer to:

Spring 2016 Pathfinder: System Block Diagram & Interface Matrix

One improvement we had after PDR debrief was to highlight the rows and columns with different colors in the interface matrix. Each color represents the corresponding pins used by the component. That makes it a lot easier for us to track the subsystem level pinouts. Also this makes it easy for audience to see during the presentation.

Custom PCB Design

Fritzing Diagram

1                                                           Figure 13 – Fritzing Diagram

Breadboard

2                                                            Figure 14 – Breadboard

PCB Schematic

1                                                              Figure 15 – PCB System Schematic

2                                                                Figure 16 – Buck Regulator

PCB Layout

9                                                             Figure 17 – PCB Layout

The pathfinder project needs a custom PCB to integrate all the electronic components, which included: VNH5019 motor shield, PCA9685 Servo PWM Controller, two servos, six DC motors, HC-06 Bluetooth Module, two HC-SR04 ultrasonic sensors, two LED Headlights. The custom PCB also take advantage of the leftover pins on the Arduino Mega. A buck regulator is required to step down the voltage from 12 V to 5.5 V in order to protect the servo driver. The advantage of using buck regulator over the voltage regulator is to keep a constant current.

For further details about the PCB system schematic design and layout, refer to:

Spring 2016 Pathfinder: PCB System Schematic

Spring 2016 Pathfinder: Design and Manufacturing – PCB Layout

Hardware Design

Overall Design

Picture1                                                           Figure 18 – Pathfinder overall Design

3D illustration                                                            Figure 19 – 3D Illustration

3D illustratioin2                                                            Figure 20 – Exploded View

**Rocker Bogie System**

6                                                                 Figure 21 – Rocker Bogie System

f15                                                              Figure 22 – Exploded View

**Tilt System**

16                                                                       Figure 23 – Tilt System

15                                                                    Figure 24 – Exploded View

These above pictures demonstrate the hardware design from the overall 3D models to breakdowns parts of the pathfinder rover design.

The goal of Spring 2016’s Pathfinder is to hold a Google Tango tablet, phone, solar panels in the shape of the Arxterra logo, a tilt system, and an electronic box. To best traverse obstacles, a rocker bogie suspension system design was chosen, with a top surface area of 12in x 18in. Modeled after ServoCity’s runt rover, the chassis was scaled to meet the surface area required for the above mentioned parts. The tilt system was designed to hold the tablet, phone and tilt servo. Lastly, all parts were modeled on the chassis.

For further details of the hardware design, refer to:

Spring 2016 Pathfinder Design and Manufacturing – Tilt System Design

Spring 2016 Pathfinder Design and Manufacturing – Tilt System Finalized Design

Spring 2016 Pathfinder Design and Manufacturing – Rocker Bogie Suspension System Design

Spring 2016 Pathfinder: Design and Manufacturing – Chassis Selection Through the Iterative Design Loop

Software Design

Software System Block Diagram

1                                                        Figure 25 – Software System Block Diagram

The software design follows the system block diagram and focus on the subsystem level software modules development.

For further details on how each software modules works, refer to:

Spring 2016 Pathfinder: Software Design

For reference of Arduino code controlling motors and servos through coolterm, refer to:

Spring 2016 Pathfinder: Software Design

For reference of controlling motors through Arxterra, refer to

Spring 2016 Pathfinder: Bluetooth Communication with the Arxterra App

For reference of controlling servos through Arxterra, refer to

Spring 2016 Pathfinder: Arxterra Servo Control for Pan and Tilt

Verification and Validation Test Plans

Verification and Test Plans are required to prove that the project can meet the L1/L2 requirements.

Since our team received new requirements of building a new pathfinder in a short period of time, many of the verification tests had not yet been done due to the heavy work of manufacturing. The project final demo then was been used for some of the verification and validation tests.

For more details of the verification matrix and Validation Test Plans, refer to the “project resource

Project Update

Work Breakdown Structure

WBS                                                              Figure 26 – Work Breakdown Structure

This work breakdown structure demonstrates all the work needed to be done for this project Pathfinder Rover. There are four branches that indicates different job duties and division works assigned to the system and subsystem engineers.

Resource Report

Mass Report & Power report

The mass report and power report are both missing because our team did not have enough time to update the reports for the new pathfinder. 

For previous mass report and power report, refer to “CDR presentaion” in Project resource file

Cost Report

cost report

 

Project Schedule and Progress

1 2 3 4 5

Above is the final schedule for this spring 2016 Pathfinder Rover Project. The Project Overall duration is 65 school days. This schedule was made and managed by the project manager to keep on track of the project overall progress. The tasks highlighted in green are the major tasks our team accomplished during this semester, while those tasks highlighted in yellow are the tasks our team had difficulties and could not accomplish them on time. In this semester, our team was able to fully tested, debugged and implemented the code for motors control and servos control for pan and tilt system through both coolterm and Arxterra. Another progress we made was to build a new generation of pathfinder by implementing Rocker Bogie Suspension System and solar panels self-charging capability. However, the team had troubles of implementing Project tango modules to the pathfinder.

BurnDown

BD

Completion

completion

The Project Overall completion is 83%.

 

Concluding Thoughts:

Lessons learned the hard way

  1. The major problem our Pathfinder Team had was Project Tango. It is fairly new and has many limitations on sensor abilities as well. After we done the research of project tango, we realized that it requires extensive knowledge of Java programming and Android App development to accomplish the mission. Unfortunately none of the team member had that experience.
  2. The second issue we had was that the project requirements kept changing during the beginning of the semester. The mission profile went from daytime at desert terrain to night time at CSULB campus. The is due to the fact that the tango’s IR sensors for depth perception is generally restricted to indoor environments (sun and incandescent IR light can drown out structured light sensing).
  3. The third issue we had was that the manufacturing process for the aluminum sheets took too long from the rough cutting to mill finish. The aluminum was cut by hand by group members that weren’t supposed to be involved. As the project manager, I decided to let the the whole team contribute on assembling the parts during the final week to accomplish the mission. But the downside was that we did not have enough time to redo some of the verification tests for new chassis and motors.
  4. It is hard to manage the conflicts among cost, schedule and performance. Our pathfinder team was having trouble on getting all the parts we wanted. We were approved to get an extra budget of $300, yet, we still did not have enough money to get better wheels. The wheels problem lowered our project performance on obstacle climbing test.

Future Plans for Pathfinder

  1. Keep working on Project Tango. It is recommended to have 1 or 2 team members who has good knowledge of Android App development or some students from computer science major who can commit to help this project.
  2. The experimental results in this blog post need to be updated.
  3. The Mass and Power report need to be updated.
  4. Change the wheels on the pathfinder.
  5. Improve the encasement for tango (sealed, waterproof). This pathfinder can be taken to the wild area.
  6. Think of a way to rearrange the weight on top of the pathfinder. One issue we had was that the weight distribution was more on the backside, therefore it gives unstableness when climbing the obstacles.

Future Plans for project manager

  1. I think the project manager needs to be trained on their project management skills. Learning how to manage the cost, schedule and performance. A good way is to have a guest speaker give a short lecture on that.
  2. Project manager should post a project update blog post every two weeks. It can help them to keep on track of the project progress and schedules. It is also Easy for team member to follow.

Project Resource Files

Project Video

PDR

CDR

Project Schedule

Verification and Validation Documents

Solidworks File

Fritzing File

EagleCAD File

Arduino Code

PCB Library

Bill of Material(1)

Bill of Material(2)

 

 

 

 

 

 

 

 

 

 

 

 

 

         

 

 

 

Spring 2016 Pathfinder: Arxterra Servo Control for Pan and Tilt

IMG_3244

By:

Xiong Lee (Mission, System and Test)

Table of Contents

Objective:

After test and calibrating our servos from the earlier blog post found here, we then needed the servos to run through the arxterra app.  The arxterra app already has a built in button to control panning and tilting. All we need to do is have the code turn our servos when arxterra is sending the command to pan and tilt. After configuring the code to do these actions, we were able to control the pan and tilt servos.

Equipment:

  1. Arduino (we used the Mega but the uno can suffice)
  2. Servo Driver (PCA 9685)
  3. Battery (we used 7.4 v)
  4. Arduino IDE
  5. Servos
  6. Phone

Code:

After wiring up circuit, we have to use the servo code to control our servos found on blog post above. From the code you see at the blog post, we have to convert pulse length to degrees. So when we’re getting the commands from the arxterra, we can convert the numbers to degrees depending on the servo max and min. The only way to control these servos are through the arxterra control panel.

else if (cmd == CAMERA_MOVE){

     pulsedegree = map(data[4], 0, 180, SERVOMIN, SERVOMAX);

     pwm.setPWM(9,0, pulsedegree);

     pulsedegree = map(data[6], 0, 180, SERVOMIN, SERVOMAX);

     pwm.setPWM(8,0,pulsedegree);  

     delay(1000);   

     }

The data[4] and data [6] are the turn degrees that arxterra sends. Data 4 pertains to the pan degrees and data 5 is the tilt degrees.

Conclusion:

In conclusion we were able to control the servos for the pan and tilt with the control panel on the arxterra app. With the command line above, we were able to convert our servos to degrees and have it turn accordingly. The code above is on the command page with the move command.

Spring 2016 Pathfinder: Mission Profile and Project Objective Update

By:

Peiyuan Xu (Project Manager)

Table of Contents

Mission Profile Update

The team received the PDR debrief from meeting with the customer, student assistant and the president. One of the comments they had was that the mission profile was unclear. The team then develop a new mission profile which will clarify the confusion of the current one.


mission WiFi Stength

Mission Profile:

Since our Pathfinder Rover will be tested at the entire CSULB campus. We need to find out where there is the best Wi-Fi signal  in order to gain the stable video stream on Arxterra. The system engineer Xiong Lee was able to use an android App called Wi-Fi Maximiser to map out the  Wi-Fi signal strength around CSULB campus.  Based on the strength of the Wi-Fi signal, our mission will be narrowed down to the area covered with green on the map. We suggest the customer not to go through the area covered with red because there might be some packet loss and signal lag around the area. We also think this Wi-Fi signal strength map can be useful for other EE 400D project in which case they need to explore the CSULB campus as well.

 

Project Objective Update

The team received new requirements from the customer to design a new Pathfinder Prototype using Rocker Bogie Suspension system. Therefore, the project objective will be changed to accomplish the new requirements

Previous Project Objective:

The spring 2016 Pathfinder Rover was inspired by the design of NASA’s MARs Exploration Rover-“Sojourner”. The purpose of this Rover is to explore the beauty of CSULB campus at night in a self-sufficient way. The Pathfinder is allowed to have the solar panel charging the battery for up to 8 hours during the day time. Then the customer will spend 4 hours at night walking and exploring with the Pathfinder . The customer can use Arxterra control panel on the PC to navigate the Rover by using the cursor to click a point on the map. This generation of Pathfinder Rover is designed to test and implement SLAM (Simultaneous Localization and Mapping) technology for autonomous vehicles.

Current Project Objective:

The spring 2016 Pathfinder Rover was inspired by NASA’s MARs Exploration Rover-“Sojourner”. The profile for this semester’s project is to imitate the design of “Sojourner” Rover to prototype a new generation of Pathfinder Rover that implements the Rocker Bogie Suspension System as well as being self-sufficient by using solar panels. The Pathfinder is allowed to have the solar panels charging the battery for up to 8 hours during the day time. Then the customer can spend up to 4 hours at night walking and exploring with the Pathfinder. Ultimately, The customer can use Arxterra control panel on the PC to navigate the Rover by using the cursor to click a point on the map. This generation of Pathfinder Rover is also designed to test and implement SLAM (Simultaneous Localization and Mapping) technology for autonomous vehicles.

 

 

Spring 2016 Pathfinder: System Block Diagram & Interface Matrix

By:

Xiong Lee (Missions, Systems and Test)

 

System Block Diagram

1

 

The picture above shows a block diagram of our pathfinder. These are the hardware that we are using to run our pathfinder. From this diagram, it shows how many pins we are allocating for each hardware. For example, we are using TX, RX, 5v, and Gnd for the bluetooth module (HC-06) that we are using. This shows each component we are using and what pins should be allocated to those specific component.

Here is a basic walkthrough of our project. We are using the arduino mega and we have the bluetooth module (HC-06) connected to the pins TX2, RX2, 5v, and Gnd. The arxterra app is then connected to the Google tango via wi-fi and the tango is connected to HC-06 via bluetooth. The next component we have is the LED’s. We allocated 2 pins total for these two LED. On top of our arduino is our motor shield. It is connected to 8 digital pins and 2 analog pins. The next thing connected to our arduino is the servo driver. We have allocated pin 21 and 20 for the servo driver. Through the servo driver, our pan and tilt servo is connected on it. On the side, we have our solar panel and battery connected to the charge controller and then the charge controller is connected to the motor shield and buck regulator. The buck regulator (step down voltage regulator) is then connected to the servo driver.

For more in depth view on which pins are used on the arduino, look at the interface definition table below.

Interface Matrix

2 3

4

 

Conclusion

These diagrams are our system block and interface diagrams. The only concluding though I have is to make these diagrams readable and easy for the eye during the presentation. This was one of the problems many groups had this semester. Other than that, the other groups also had good diagrams. If you need more references as to how you should do these diagrams, look at the other groups too.

Source Materials

  1. The VHN5019 Motor shield                                                                              https://www.pololu.com/product/2502                                                                 https://www.pololu.com/docs/0J49/3.c
  2. The PCA9685 Servo driver                                                                                            https://www.adafruit.com/product/815

Spring 2016 Pathfinder: Software Design

By:

Juan Acosta (Electronics & Control – MCU Subsystem and Firmware)

 

Table of Contents

Software System Block Diagram:

1

The figure above depicts the software side of the Pathfinder. First, commands will be sent through Bluetooth and received through Serial communication ports on the Arduino Mega. Then the Command Handler will decode the telemetry packets being sent and appropriate an action unique to each packet ID. The VHN5019 Motor shield will implement the movement of the Pathfinder. The PCA9685 Servo driver will control the pan and tilt servos. Additionally, the use of ultrasonic sensors will provide feedback for obstacle detection or collision. Lastly, we will create a custom Arxterra command to control our L.E.D. headlights.

Arduino Code for controlling servos through Coolterm:

The following code snippet was used to test the functionality of the PCA9685 Servo Driver and how to gain a better understanding for servo control. For testing purposes, we used the Coolterm application on a laptop to demonstrate wireless bluetooth control of the servos. The code provided will help future projects in the process of initializing bluetooth communication, transmission of data, and later the creation of custom Arxterra commands.

///////////////////////////////////////////////////////////////////////////////

// The following code was written, tested and debugged by Juan Acosta for

// testing pan and tilt servo control through two wire communication (I2C)

// using the HC-06 to implement commands being sent from the COOLTERM application

// from a laptop or phone to the arduino.

// Group: Pathfinder Spring 2016

// Electronics and Control:  Juan Acosta (MCU Subsystem and Control Firmware)

///////////////////////////////////////////////////////////////////////////////

#include <Wire.h>

#include <Adafruit_PWMServoDriver.h>

///////////////////////////////////////////////////////////////////////////////

// following are connections required for HC06 module:

// connect BT module TX to RX0

// connect BT module RX to TX0

// connect BT Vcc to 5V, GND to GND

///////////////////////////////////////////////////////////////////////////////

// following are connections required for PCA9685 Servo Driver:

// connect V+ to 5V, GND to GND (servo power terminals)

// connect Vcc to 5V, GND to GND

// connect SDA to analog pin A4 (required for I2C bus control on arduino UNO)

// if using arduino MEGA SDA has dedicated pin on PIN20

// connect SCL to analog pin A5 (required for I2C bus control on arduino UNO)

// if using arduino MEGA SCL has dedicated pin on PIN21

// connect pan servo plug to 9

// connect tilt servo plug to 11

///////////////////////////////////////////////////////////////////////////////

Adafruit_PWMServoDriver pwm = Adafruit_PWMServoDriver();

#define SERVOMIN  0          // this is the ‘minimum’ pulse length count

                             // (for Pan = facing left)(for tilt = facing down)

#define SERVOMAX  500        // this is the ‘maximum’ pulse length count

                             // (for Pan = facing right)(for tilt = facing up)

// The limits for the pan will be from 0 degrees to 180 degrees of view in steps

// of 45

// The limits for the tilt will be from 45 degrees to 135 degrees of view in

// steps of 45

void setup() {

  Serial2.begin(9600);       // set the data rate for the Serial Port

  pwm.begin();

  pwm.setPWMFreq(60);       // Analog servos run at ~60 Hz updates

  yield();                 

}

// Character commands list:

//      (“Send ‘0’ pan facing left (180 degrees)”);

//      (“Send ‘1’ pan facing diagonal left (135 degrees)”);

//      (“Send ‘2’ pan facing center (90′ degrees)”);

//      (“Send ‘3’ pan facing diagonal right (45′ degrees)”);

//      (“Send ‘4’ pan facing right (0′ degrees)”);

//      (“Send ‘5’ tilt facing down (-45 degrees)”);

//      (“Send ‘6’ tilt facing center (0 degrees)”);

//      (“Send ‘7’ tilt facing up (45 degrees)”);

char a; // stores incoming character from other device (phone, tablet, or laptop)

void loop()

{

   if (Serial2.available())        // if text arrived in from hardware serial…

  {

    a=(Serial2.read());

    if (a==’4′)                   // face right

    {

      Serial.println(” pan facing right (0′ degrees)”);

  for (uint16_t pulselen = SERVOMIN; pulselen < SERVOMAX; pulselen++) {

    pwm.setPWM(9, 0, pulselen);

  }

  delay(1000);

    }

    if (a==’3′)         // face right at an angle (diagonal right)

    {

      Serial.println(“pan facing diagonal right (45′ degrees)”);

  for (uint16_t pulselen = SERVOMIN; pulselen < 375; pulselen++) {

    pwm.setPWM(9, 0, pulselen);   

  }

  delay(1000);

    }

    if (a==’2′)         // face straight (centered)

    {

      Serial.println(“pan facing center (90′ degrees)”);

  for (uint16_t pulselen = SERVOMIN; pulselen < 250; pulselen++) {

    pwm.setPWM(9,0,pulselen);

  }

  delay(1000);

    }

   if (a==’0′)         // face left

   {

      Serial.println(“pan facing left (180 degrees)”);

  for (uint16_t pulselen = SERVOMAX; pulselen > SERVOMIN; pulselen–) {

    pwm.setPWM(9, 0, pulselen);

  }

  delay(1000);

   }

   if (a==’1′)         // face left at an angle (diagonal left)

   {

      Serial.println(” pan facing diagonal left (135 degrees)”);

  for (uint16_t pulselen = SERVOMAX; pulselen > 125; pulselen–) {

    pwm.setPWM(9, 0, pulselen);

  }

  delay(1000);

   }

   if (a==’5′)         // face down (-45 degrees)

   {

      Serial.println(“tilt facing down (-45 degrees)”);

  for (uint16_t pulselen = SERVOMAX; pulselen > 125; pulselen–) {

    pwm.setPWM(11, 0, pulselen);

  }

  delay(1000);

   }

   if (a==’6′)         // face straight (centered)

    {

      Serial.println(“tilt facing center (0 degrees)”);

  for (uint16_t pulselen = SERVOMIN; pulselen < 250; pulselen++) {

    pwm.setPWM(11,0,pulselen);

  }

  delay(1000);

    }

    if (a==’7′)         // face right at an angle (diagonal right)

    {

      Serial.println(“tilt facing up (45 degrees)”);

  for (uint16_t pulselen = SERVOMIN; pulselen < 375; pulselen++) {

    pwm.setPWM(11, 0, pulselen);   

  }

  delay(1000);

    }

   if (a==’?’)        // commands list

    {

      Serial.println(“Send ‘0’ pan facing left (180 degrees)”);

      Serial.println(“Send ‘1’ pan facing diagonal left (135 degrees)”);

      Serial.println(“Send ‘2’ pan facing center (90′ degrees)”);

      Serial.println(“Send ‘3’ pan facing diagonal right (45′ degrees)”);

      Serial.println(“Send ‘4’ pan facing right (0′ degrees)”);

 

      Serial.println(“Send ‘5’ tilt facing down (-45 degrees)”);

      Serial.println(“Send ‘6’ tilt facing center (0 degrees)”);

      Serial.println(“Send ‘7’ tilt facing up (45 degrees)”);

    }     

    // you can add more “if” statements with other characters to add more commands

  }

}

Arduino code for controlling Motors through Coolterm

The following code snippet was used to demonstrate the functionality of the VHN5019 Motor shield and how to gain a better understanding of DC motor control. For testing purposes, we used the Coolterm application on a laptop or cell phone to demonstrate wireless bluetooth control of the pathfinder’s movements. The code provided will help future projects in the process of initializing bluetooth communication, transmission of data, and later the creation of custom Arxterra commands.

///////////////////////////////////////////////////////////////////////////////

// The following code was written, tested and debugged by Juan Acosta for

// testing the functionality of the VHN5019 Motor Shield and how the six motors

// rotate will dictate which way the rover moves.

// using the HC-06 to implement commands being sent from the COOLTERM application

// from a laptop or phone to the arduino.

// Group: Pathfinder Spring 2016

// Electronics and Control:  Juan Acosta (MCU Subsystem and Control Firmware)

///////////////////////////////////////////////////////////////////////////////

#include “DualVNH5019MotorShield.h”

DualVNH5019MotorShield md;

void stopIfFault()

{

  if (md.getM1Fault())

  {

    Serial.println(“M1 fault”);

    while(1);

  }

  if (md.getM2Fault())

  {

    Serial.println(“M2 fault”);

    while(1);

  }

}

void setup()

{

  Serial.begin(115200);

  Serial.println(“Dual VNH5019 Motor Shield”);

  md.init();

  Serial.begin(9600);

}

char a; // stores incoming command from device into variable a

void loop()

{

   if (Serial.available())

  // if text arrived in from hardware serial…

  {

    a=(Serial.read());

    if (a==’?’)//////// send commands list

    Serial.print(“Send a 1 to move the pathfinder forward”);

    Serial.print(“Send a 2 to stop the pathfinder”);

    Serial.print(“Send a 3 to rotate the pathfinder by 180 degrees”);

    Serial.print(“Send a 4 to make the pathfinder reverse”);

    if (a==’1′)/////// move the pathfinder forward by sending a 1

    {

      int o=0; /////// stop the rover before moving forward

     md.setM1Speed(o);

     md.setM2Speed(o);

     for (int p = 0; p <= 300; p++)

  {

      md.setM1Speed(p);

     md.setM2Speed(p);

      Serial.print(“Moving the Pathfinder forward “);   

  }

    }

 if (a==’2′)///////////////// stop the wheels by sending a 2

 {

    int i=0; 

    md.setM1Speed(i);

    md.setM2Speed(i);

      Serial.print(“Stop the Pathfinder: “);

  }

    if (a==’3′)///////////////// rotate 180 degrees 

    {

    Serial.print(“Rotating 180 degrees “);

    int c=0;////////////////// stop rover before rotating

    md.setM1Speed(c);

    md.setM2Speed(c);

  for (int m = 0; m <= 300; m++)  //////// rotate rover 180 degrees

  {

    md.setM1Speed(m);

    md.setM2Speed(m-300);

    delay(2.3);

    int k=0;

    md.setM1Speed(k);

    md.setM2Speed(k);

    }

    }

if (a==’4′)/////// make the pathfinder reverse by sending a 4

{

  Serial.print(“The pathfinder will reverse”);

      int l=0; /////// stop the rover before reversing

     md.setM1Speed(l);

     md.setM2Speed(l);

     for (int j = 0; j <= 300; j++)

  {

      md.setM1Speed(j-600);

     md.setM2Speed(j-600);   

  }

    }

  }

}

Conclusion:

Applying what we now have learned, we are ready for software implementation through Arxterra including custom commands. Once we had each module working separately, putting them all together to form the pathfinders software system design will require a reasonable amount of testing and debugging since we now have most of it done working without Arxterra. All that is left is the custom command encoding.

Source Materials:

– Coolterm:

http://freeware.the-meiers.org

– Spring 2016 Pathfinder: Subsystem Design

http://arxterra.com/spring-2016-pathfinder-subsystem-design/

– Arxterra Custom Commands

https://www.youtube.com/watch?v=G5vRvecFA3A

https://www.youtube.com/watch?v=h4KgktOa8-A

Spring 2016 Pathfinder: Design and Manufacturing – Chassis Selection Through the Iterative Design Loop


3D illustration

By:

Lindsay Levanas (Design and Manufacturing)

Table of Contents

Introduction

Although all previous posts regarding Spring 2016 Pathfinder’s chassis have focused on the rocker bogie suspension system design, the use of a Wild Thumper chassis was also considered and so it is worth documenting the iterative design loop that lead to the final product. This report will outline the decisions that had to be made and their impact on the design.

Initial Requirements – Rocker Bogie Suspension System

To start with, Spring 2016 Pathfinder’s level 1 terrain requirement is to traverse the CSULB campus at night.1 To this end, the rocker bogie suspension system was chosen and implemented as a level 2 requirement2 and a basic rocker bogie suspension system was modeled as an example.3

1

Figure 1.  Basic Model of rocker bogie system

The idea modeled, the next step was to research into physical implementation.

Initial Research – Rocker Bogie Suspension System

As rocker bogie suspension systems require particular dimensions to function properly, it was decided that purchasing a working model would be best. Therefore, rocker bogie chassis were researched and only one was found to be purchasable: the Bogie Runt Rover from ServoCity.4

2

Figure 2.  Bogie Runt Rover

Trade-off Study – Wild Thumper vs. Bogie Runt Rover

Having found a rocker bogie suspension system, the next step was to conduct a trade-off study between that and a Wild Thumper chassis. Note that Spring 2016’s Pathfinder is meant to improve upon the design that came before it and that this is where the Wild Thumper chassis is coming from.5 Below illustrated the initial trade-off study between the two chassis.4,8,9,10

3

Figure 3.   Chassis Trade-Off Study

Results – Wild Thumper

After listing the different aspects of the two chassis systems, the important factors need to be clarified. To start with, the width of the tilt system (at least 10.48in)6 is dictated by the use of a Google Tango Tablet, and so needs to be considered. Also, the weight of the load that Spring 2016’s Pathfinder will carry is at least 2.45lbs from the tilt system alone as shown below.

4

Figure 4. Tilt System Mass Properties

On top of all this, the chassis needs to be able to hold the pan system, electronics, electronic protection box, batteries and solar panels. Although at this point in the design process these additional parts had yet to be finalized, the concern of going over the weigh capacity (and surface area) of the Runt Rover was still relevant and so was taken into consideration when choosing a chassis. Also considered was the terrain the chassis could handle under load.

Given that the Runt Rover base was smaller then the tilt system width, and that it could only carry up to 4lbs on smooth terrain, the Wild Thumper was chosen to be Pathfinder’s chassis at this time.

5

Figure 5.  Wild Thumper Chassis

New Resource Option – Rocker Bogie Suspension System

Not long after the Wild Thumper was chosen as the chassis, a new resource was made available to Spring 2016’s Pathfinder team. This resource was aluminum cutting and milling. This meant that the Runt Rover previously viewed as too small could be modeled in Solidworks, simplified, doubled in size, and cut out of aluminum. To see how this would compare to the Wild Thumper, the proposed rocker bogie system was modeled in Solidworks so that size and weight could be properly estimated.7

6

Figure 6.  Rocker Bogie System

Trade-off Study – Wild Thumper vs. Rocker Bogie Suspension System

 

7

The above picture compares the specs of both chassis

Conclusion and Future Plans

As the Rocker Bogie design allowed for 145.688 more square inches of top surface area and 9.04 more inches of obstacle avoidance clearance for a loss of only 1lb of weight tolerance and 1.5lbs of unloaded weight, the Rocker Bogie design was chosen as Spring 2016’s final Pathfinder chassis. A sample model of the chassis with its future load is shown below.

3D illustration

Source Materials:

  1. Spring 2016 Pathfinder Preliminary Design Documentation, Level 1 Requirement, 2/19/16 http://arxterra.com/spring-2016-pathfinder-preliminary-design-documentation/
  2. Spring 2016 Pathfinder Preliminary Design Documentation, System Requirements (Level 2 Requirements), 2/19/16 http://arxterra.com/spring-2016-pathfinder-preliminary-design-documentation/
  3. Spring 2016 Pathfinder Preliminary Design Documentation, Mechanical Design, 2/19/16 http://arxterra.com/spring-2016-pathfinder-preliminary-design-documentation/
  4. Bogie Runt Rover https://www.servocity.com/html/bogie_runt_rovertm__637162_.html#.VvmvlJGprwI
  5. Pathfinder Final Documentation, Pathfinder Preferred Design, 12/12/2014 http://arxterra.com/pathfinder-final-documentation/
  6. Spring 2016 Pathfinder Design and Manufacturing – Tilt System Design, Tilt Base, 3/9/2016 http://arxterra.com/pathfinder-design-and-manufacturing-tilt-system-design/
  7. Spring 2016 Pathfinder Design and Manufacturing – Rocker Bogie Suspension System Design, 3/30/2016 http://arxterra.com/2016-pathfinder-design-and-manufacturing-rocker-bogie-suspension-system-design/
  8. 6WD dimension http://cdn.sparkfun.com/datasheets/Robotics/6WD%20dimension.jpg
  9. Pololu – Dagu Wild Thumper 6WD All-Terrain Chassis, Black, 75:1, Specifications, https://www.pololu.com/product/1563
  10. Robotshop.com/media/files/pdf/schematics, http://www.robotshop.com/media/files/pdf/schematics-637162.pdf

Spring 2016 Pathfinder: Design and Manufacturing – PCB Layout

9

By:

Lindsay Levanas (Design and Manufacturing)

Table of Contents

Introduction

This report will serve to document how the Spring 2016 Pathfinder’s PCB layout was designed in EAGLE7.5.0 Light. Reference to the PCB schematic outlined in Spring 2016 Pathfinder: PCB System Schematic1 will be mentioned, as well as safety precautions from outside sources. Note that all components will be surface mounted, and all jumper pins will be through hole.

Reference – PCB Schematic

Although Eagle is designed to carry over the component’s wiring from the schematic to the board’s layout (then called airwires), the connections between pins can sometimes be hard to see. For example, in the illustration below, where does the top airwire (the thin yellow line) go? Does it connect straight to the bottom pin of JP4? Or does it connect to one of JP4’s other pins too?

1

Therefore, in addition to rotating the part (which can be hard to keep track of), the original schematic can also be referenced to verify that the proper connections are being made.

2

Using the above part as an example, the equivalent part in the schematic can then be used as a reference.

3

Since pins 2 and 3 are accounted for with single connections and ground does not use an airwire, the top connection can then only be to pin 1.

Note that this process can be used for any component where the connection seems unclear. Now that a general idea has been obtained for the PCB’s wiring, safely measures can be looked into next.

Safety – Current Amount and Trace Width

To ensure that the PCB is able to function properly, the amount of current through the circuit needs to be considered. If the traces are too small for the amount of current they need to carry, then they run the danger of burning out.2 According to the Power Test3 the max amount of current Spring 2016 Pathfinder’s PCB will be carrying is 140mA.

4

Using a trace width calculator (shows above) for PCBs,4  the minimum desired trace width can be found.

Note that as Spring 2016 Pathfinder’s PCB traces will be on external layers, the width of the trace needs to be no smaller then .393mils.

To check the trace width in Eagle, right click on any trace and select Properties. In the pop up box, check the width number against the grid units. This will tell you what units the width is being measured in as Eagle bases all numbers on the grid units.

5

As is illustrated above, the traces are set to have a width of 16mils. As this is larger then the trace width calculations, the trace sizes do not have to be changed.

Alignment – Buck Converter

For optimal functionality of the buck converter, the TPS56428 chip needs to be considered. This means that the circuit layout included in the chip’s datasheet5 must be followed, or the PCB may not work. Below is the proper setup outlined in the datasheet followed by the corresponding PCB layout.

6

 

7

Conclusion and Future Plans

In conclusion, Spring 2016 Pathfinder’s PCB will follow the corresponding PCB schematic, current safety precautions and proper chip layout. After fabrication, the next step will be to solder all of the parts onto the board.

8

 

Source Materials:

  1. Spring 2016 Pathfinder: PCB System Schematic, Custom PCB Schematic, 1/3/2016 http://arxterra.com/spring-2016-pathfinder-pcb-system-schematic/
  2. Reference Designer Calculations, PCB Trace Width Calculator, 2009 http://www.referencedesigner.com/cal/cal_06.php
  3. Spring 2016 Pathfinder: PCB System Schematic, Power Test, 1/3/2016 http://arxterra.com/spring-2016-pathfinder-pcb-system-schematic/
  4. PCB Printed Circuit Board File Creation Calculator, Trace Width Website Calculator, 2007 http://www.4pcb.com/trace-width-calculator.html
  5. Electronic Components Datasheet Search, TPS56428 Datasheet(PDF) 14 Page – Texas Instruments, April 2013,                                                                                                                   http://html.alldatasheet.com/html-pdf/523356/TI/TPS56428/428/14/TPS56428.html

 

 

 

Spring 2016 Pathfinder: PCB System Schematic

By:

Juan Acosta (Electronics & Control – MCU Subsystem and Firmware)

Tuong Vu     (Electronics & Control – Sensors, Actuators, and Power)

Table of Contents

Introduction:

Project Pathfinder required the use of an Arduino Mega, VNH5019 motor shield, PCA9685 Servo PWM Controller, two HC-SR04 ultrasonic sensors, two servos, six DC motors, HC-06 Bluetooth Module, LED Headlights, and Buck regulator. Each device we chose to use will help us accomplish our mission by meeting set level 1 and 2 requirements. For more information on testing and implementation of these devices, visit the previous blog post Spring 2016 Pathfinder: Subsystem Design

Custom PCB Schematic:

1

 

As discussed in our Subsystem Design, we decided that it would be best if we created a custom PCB that would allow us to take advantage of the leftover pins of the Arduino Mega. So in our custom PCB design, we aimed for a PCB that would interface with the Arduino Mega as a shield. In our PCB schematic we have allotted different headers for the two ultrasonic sensors needed for obstacle collision prevention, headers for the PCA9685 Servo Controller that we chose to safely power and drive our pan and tilt servos, headers for the HC-06 Bluetooth module needed for wireless communication, headers for the L.E.D. headlights needed for lighting, and TPS56428 buck regulator needed to step down voltage to 6 volts to protect the servo driver from 7.4V.

Buck Regulator:

2

 

The figure above focuses on the  buck regulator. We chose this buck regulator because it was found most efficient during testing. We used the data sheet provided by Texas Instruments in order to find the necessary resistance values for Resistors R1 and R2 which control the duty cycle needed for an output of 6 volts. For resistor R1 we got 355 K and 49.9 Kfor resistor R2. Aside from the necessary resistors and capacitors outlined in the guide sheet for the TPS56428, we also added capacitors C1 and C2 for noise cancellation and a red L.E.D. in series with resistor R5 in order to show when the circuit is on.

Headers:

3

The figure above focuses on the through hole headers we will be using to directly plug in our two ultrasonic sensors, headlight L.E.D.s, Bluetooth module, and servo driver.

Power test

During testing it was found that the max current draw for the PCA9685 servo driver was about 140 mA. The max current draw for the HC-06 bluetooth module was 25 mA. The max current draw for the L.E.D. headlights was 90 mA. The max current draw for the motors was 1 A. Lastly, the max current draw from the HC- SR04 ultrasonic sensors was 20 mA. For more info reference the Power Report below.

5

Keeping all of the voltage and current ratings of each device in mind will help during the routing of the custom PCB. Because different components need different current ratings to operate normally, the size of the traces in our PCB should reflect the amount of current that will go through these traces.

 

Source Materials:

– EagleCAD download:

http://www.cadsoftusa.com/download-eagle/

– TPS56428 buck regulator:

http://www.ti.com/product/TPS56428

– Spring 2016 Pathfinder: Subsystem Design

http://arxterra.com/spring-2016-pathfinder-subsystem-design/