a 296 micromouse project by brian kuriyama. profit!

19
A 296 MicroMouse project By Brian Kuriyama

Upload: brice-adams

Post on 17-Dec-2015

226 views

Category:

Documents


2 download

TRANSCRIPT

A 296 MicroMouse projectBy Brian Kuriyama

Profit!

•Overview•Design goals•Structure •End-Goals

Started with Parallax’s BOE-bot kit

Designed 2nd Generation uMouse Chassis and board by 12/02

All Major Hardware updates completed by 12/10

Picture as of 12/10:Final Design:

Original Promised goals:General movement algorithm

Result: Smart intersection and corner handling algorithms implemented

Wall tracking algorithmResult: Follows walls according to the right hand rule, can accurately map out distances, but the two programs have not been merged yet

Backtracking algorithmResult: Has not been implemented due to change in chassis design. But robot will return to last intersection and continue following the right hand rule.

Updated goals:Distance Tracking algorithm

Result: Pulse/Distance curve has been obtained for one particular program, a crude “best-fit” algorithm provides adequate and accurate distance measuring.

Wander throughout the maze following Right hand Rule

Result: As of 12/11 the bot will navigate relatively reliably and can count the number of turns it has made.

Solve the mazeResult: Distance tracking and Movement algorithms have not been combined due to space and time constraints.

Smart turning algorithmAs of 12/09

To be honest, my uMouse had no mapping algorithm implemented at the time of filming

Followed 18 turns and then stoppedMaze had to be RHR solvableMaze had to have no dead ends when following the RHR (as of 12/11 that problem has been fixed)Bot was in “debug mode” therefore was stopping at every intersection to announce it’s next decision audibly

Includes Dead end managementAs of 12/11

To be honest, my uMouse still had no mapping algorithm implemented at the time of filming

Stopped filming when the bot found the centerMaze had to be RHR solvableBot was in “Regular mode” and therefore moved faster and did not announce it’s decisions.

It can navigate a maze relatively reliably following the RHR. Occasionally it does slip up due to semi known bugs in implemented algorithm. It can measure any distance traveled in a straight line and report how many blocks it has moved audibly.It can also enter a debug mode based on the current algorithm

Boebot was too big to make 90 Degree turnsCode for turning was predicted to be too bigNavigating out of dead ends would be difficult

No good place to mount sensorsFor testing, sensors were friction fitted to the sidesSensor placement would require unwanted extensive permanent modification to the BOE-bot

Distance measuring was not linearSolution: Create a best fit algorithm to compensate under the conditions of the maze

Allocated battery space was too smallSolution: Cut off protrusions

“Canned” moves were not reliable during complicated sections of the mazeSolution: Designed and implemented a “smart turning” algorithm that it allowed it to correct it’s alignment when possible

Voltage regulator too hot, cutting power in the middle of a programSolution: Use a larger heat sink

ADC suddenly stopped reporting values from left hand sideAnalysis of problem:

Port on ADC died. Will only report a value of 255 when queriedSharp Distance sensor also died. Will only report a voltage value of 1.85v to 1.90v

Solution: Rewire spare ADC port to spare Sharp distance sensor.

Power appears to cut out randomly while in the middle of executionSolution: NOT SOLVED YETPartial solution: Smart Turning has been implemented so the robot does not crash if the robot experiences a power loss. Mapping data is still lostPossible causes:

Damaged Voltage regulatorInsufficient regulator coolingErrant subroutine “Return” command

Insufficient program space to combine mapping with navigationSolution: NOT SOLVED YETProposed Solution:

Optimize Navigation and Mapping programs to reduce space consumption“Return to start” program has not been implemented

Solution: NOT SOLVED YETProposed Solution:

Once mapping and navigation can be combined in one program, create a list of intersections in scratchpad ram to be passed onto a secondary “return to start” program

“Fastest route to center” program has not been implementedSolution: NOT SOLVED YETProposed Solution:

If all the above problems are cleared, Read back scratchpad ram (supposedly a correct maze) to get to the center“Even faster method of getting to the center” program has not been implemented

Solution: NOT SOLVED YETProposed solution:

If all the above problems are cleared, Implement creative, but smart methods of navigating particular turns with S-turns and similar motor controlling techniques