Autonomous Retrieval and Delivery William Lawrimore Millsaps College – Computer Science
Various situations where objects need to be retrieved  in an environment unsafe for humans to inhabit. Removing Mines from a mine field. Retrieval of an important object in a radioactive area. Autonomous robotics provides a way to solve this problem with no human risk.
 
Made from a Vex robotics kit.  Design based off example that came with the kit. Hardware Microchip Microchip PICmicro PIC18F8520  Speed: 10 MB/s  (~200 – 300 times slower than reg PC) RAM: 18 KB (~10,000 times less than reg PC) 32KB program space (~ 5,000,000 times smaller than reg PC)
Sensors Ultrasonic rangefinder (Sonar) Range  ~ 3 feet Uses 40Khz sound waves Audible Sound for humans 20hz – 20Khz Optical Shaft Encoder 360 counts per revolution Line Follower Senses “reflectivity” Lighter surfaces reflect more light
Uses a pair of sonar sensors to locate objects/walls from a distance Shaft encoders provide robot with information on the distance it has travelled Line followers detect when the robot is very close to an object
 
 
Faulty design Robot was rebuilt no less than 3 times Component limitations Required a completely new project Hardware limitations Made it impossible to run operation as a single program
Faulty design First build – gear reduction was unstable Rebuilt with no gear reduction Second build – was built very front heavy Completely took it apart and redesigned it with better weight distribution Third build – After project changed Had to build an arm out of spare parts, and move components to make the arm fit
Component Limitations Ultrasonic Rangefinders Required use of clock which is located within the microcontroller Has to “borrow” it to make its readings Microcontroller only comes with 2 of these clocks Mapping project required a minimum of three rangefinders To solve a new project idea had to be invented Came up with A.R.A.D.
Ultrasonic Rangefinders Only have a field of view of about 15 degrees off center Creates triangular blind spot in middle past critical distance ~10 inches Needed a way for the robot to navigate close to objects when an object “could” be in the blind spot Boundary Circle
 
Ultrasonic Rangefinders Operate at same frequency Often see “each other’s” signals  Needed a way for them to operate separately Tried to change frequency – Failed to do so Came up with algorithm to quickly cycle through taking one reading at a time Left off, right read Then wait Right off, left read
Hardware Limitations Very low RAM space available and very slow CPU speed Program cannot be loaded into RAM entirely Processor cannot keep up with demand to load parts of program No way to solve (can’t add more/better hardware) Had to divide program up into three simplified parts
Partitioned program into 3 parts Goal Finder – Searches for a goal somewhere in the world Object Retriever – Obtains an object Object Deliverer – Delivers an object to a hard coded location.
See sample
Learned a new computing language RobotC Learned to improve my time management skills Learned how programming is a very idealized practice Real world problems can be much harder

A.R.A.D. Autonomous Retrieval and Delivery

  • 1.
    Autonomous Retrieval andDelivery William Lawrimore Millsaps College – Computer Science
  • 2.
    Various situations whereobjects need to be retrieved in an environment unsafe for humans to inhabit. Removing Mines from a mine field. Retrieval of an important object in a radioactive area. Autonomous robotics provides a way to solve this problem with no human risk.
  • 3.
  • 4.
    Made from aVex robotics kit. Design based off example that came with the kit. Hardware Microchip Microchip PICmicro PIC18F8520 Speed: 10 MB/s (~200 – 300 times slower than reg PC) RAM: 18 KB (~10,000 times less than reg PC) 32KB program space (~ 5,000,000 times smaller than reg PC)
  • 5.
    Sensors Ultrasonic rangefinder(Sonar) Range ~ 3 feet Uses 40Khz sound waves Audible Sound for humans 20hz – 20Khz Optical Shaft Encoder 360 counts per revolution Line Follower Senses “reflectivity” Lighter surfaces reflect more light
  • 6.
    Uses a pairof sonar sensors to locate objects/walls from a distance Shaft encoders provide robot with information on the distance it has travelled Line followers detect when the robot is very close to an object
  • 7.
  • 8.
  • 9.
    Faulty design Robotwas rebuilt no less than 3 times Component limitations Required a completely new project Hardware limitations Made it impossible to run operation as a single program
  • 10.
    Faulty design Firstbuild – gear reduction was unstable Rebuilt with no gear reduction Second build – was built very front heavy Completely took it apart and redesigned it with better weight distribution Third build – After project changed Had to build an arm out of spare parts, and move components to make the arm fit
  • 11.
    Component Limitations UltrasonicRangefinders Required use of clock which is located within the microcontroller Has to “borrow” it to make its readings Microcontroller only comes with 2 of these clocks Mapping project required a minimum of three rangefinders To solve a new project idea had to be invented Came up with A.R.A.D.
  • 12.
    Ultrasonic Rangefinders Onlyhave a field of view of about 15 degrees off center Creates triangular blind spot in middle past critical distance ~10 inches Needed a way for the robot to navigate close to objects when an object “could” be in the blind spot Boundary Circle
  • 13.
  • 14.
    Ultrasonic Rangefinders Operateat same frequency Often see “each other’s” signals Needed a way for them to operate separately Tried to change frequency – Failed to do so Came up with algorithm to quickly cycle through taking one reading at a time Left off, right read Then wait Right off, left read
  • 15.
    Hardware Limitations Verylow RAM space available and very slow CPU speed Program cannot be loaded into RAM entirely Processor cannot keep up with demand to load parts of program No way to solve (can’t add more/better hardware) Had to divide program up into three simplified parts
  • 16.
    Partitioned program into3 parts Goal Finder – Searches for a goal somewhere in the world Object Retriever – Obtains an object Object Deliverer – Delivers an object to a hard coded location.
  • 17.
  • 18.
    Learned a newcomputing language RobotC Learned to improve my time management skills Learned how programming is a very idealized practice Real world problems can be much harder