The progression of our rover design throughout the semester.
Details pertaining to the completion of Mission 1
Details pertaining to the completion of Mission 2
Details pertaining to the completion of Mission 3
Details pertaining to the completion of Mission 4
Our rover went through various stages of design throughout the semester. Sadly none of these designs ever became functional except the inital prototype rover.
This design utilized the chasis of an old RC car found in the closet of one of our teamates. It was only intended to be used on missions 1 and 2, however it ended up carrying us all the way to mission 3.
This rover used a single 6V DC motor in the rear and a smaller 6V DC motor in the front for steering. The entire system was ran on an Arduino Mega with the only additional components being an RF reciever and a small motor driver. In order to get the rover ready for mission 2, the RF reciever was removed and an ultrasonic sensor was added.
This rover used a single 6V DC motor in the rear and a smaller 6V DC motor in the front for steering. The entire system was ran on an Arduino Mega with the only additional components being an ultrasonic sensor and a small motor driver. A completely new 3D printed design was intended to be used for mission 3, but we prepared the prototype mark 3 as a backup just in case. The ultrasonic sensor was removed and a GPS module replaced it. The 3D printed design includes larger DC motors, a suspension system, and a rack and pinyon paired with a stepper motor for steering.
This design was very exciting up until the point of testing. The drive motors were too small and the steering system was too weak to handle the weight of the rover. This paired with how easily our 3D printed parts were breaking caused us to bench this design and end up using the Prototype Mark 3 for completion of mission 3.
The Prototype Mark 3 again used the chasis of an old RC car which had a single 6V DC motor in the rear and a smaller 6V DC motor in the front for steering. The entire system was ran on an Arduino Mega with the only additional components being an adafruit GPS module and a small motor driver. In order to get the rover ready for mission 4, the entire chasis was redesigned again in an attempt to fix the issues with the 3D printed design. A rear differential was designed to provide more torque to the wheels and the goal was to use a higher voltage stepper motor for steering, however this never happened.
The fourth and final rover design took parts from the 3D printed rover and placed them on a lego chasis. Unfortunately due to time constraints we were unable to fix our main issue, the steering system being underpowered. On top of this we had major GPS issues and the Prototype Mark 3 had been pushed to its limits.
Create an autonomous rover capable of navigating to specified GPS coordinates and delivering a payload. For your missions the payload will be modeled as a cubic wooden block~1.5”x1.5”x1.5”. The rover should be capable of obstacle avoidance, navigating rough/uneven terrain, and meeting speed and navigation accuracy requirements.Missions your team should meet to demonstrate timely progress and project functionality are as follows:
Rolling Chassis (a): drive in a ~10ft square pattern, stop at original location and place marker. The marker should be within 3ft of the rover’s original location and the mission should be completed within 60 seconds.
Rolling Chassis (b):drive straight for 15-30ft and place physical marker. The rover will read the specific intended distance from an RF transmitter beacon at the starting location. The marker should be within +/-10% of the specifieddrive distance and the task should be completed in less than 30 seconds
Below is a video of the rover completing mission 1. We were not as accurate as we hoped to be, however the rover succesfully completed both parts of the mission. The rover ended the box test at a distance of 2.5 feeet from the starting location. The straight line test was difficult for our initial design, but after adjusting for drift we were able to hit the desired distance of 26 feet. The rover used in this mission was the chasis of an old RC car which had a single 6V DC motor in the rear and a smaller 6V DC motor in the front for steering. The entire system was ran on an Arduino Mega with the only additional components being an RF reciever and a small motor driver. In order to get the rover ready for mission 2, the RF reciever will be removed and ultrasonic sensors will be added.
Create an autonomous rover capable of navigating to specified GPS coordinates and delivering a payload. For your missions the payload will be modeled as a cubic wooden block~1.5”x1.5”x1.5”. The rover should be capable of obstacle avoidance, navigating rough/uneven terrain, and meeting speed and navigation accuracy requirements.Missions your team should meet to demonstrate timely progress and project functionality are as follows:
Basic GPS navigation
(a): Drive in an enclosed area (at least 10’x10’)without contacting walls or obstacles. The mission will last 60 seconds.
(b): Drive forward to waypoint 30’ directly ahead of robot. Demonstrate avoidance algorithm by continuing to original waypoint after navigating around a single obstacle. The rover should stop within 5ft of the marked waypoint and complete the mission in under 120 seconds.
Below is a video of the rover completing mission 2. We succesfully navigated around an enclosed area for sixty secinds without contacting any obstacles, and we succesfully navigated to a waypoint while encountering an obstacle part way. The rover still has some issues with drift and almost drove past the obstacle, but it recognized that it was there at the last secnd and succesfully navigated around it ending 1.5ft away from the desired waypoint. The rover used in this mission was the chasis of an old RC car which had a single 6V DC motor in the rear and a smaller 6V DC motor in the front for steering. The entire system was ran on an Arduino Mega with the only additional components being two ultrasonic sensors and a small motor driver. In order to get the rover ready for mission 3, the ultrasonic sensors will be removed and a GPS module will be added. The entire chasis will also be redesigned to incorporate larger DC motors, a suspension system, and a rack and pinyon paired with a stepper motor for steering.
Create an autonomous rover capable of navigating to specified GPS coordinates and delivering a payload. For your missions the payload will be modeled as a cubic wooden block~1.5”x1.5”x1.5”. The rover should be capable of obstacle avoidance, navigating rough/uneven terrain, and meeting speed and navigation accuracy requirements.Missions your team should meet to demonstrate timely progress and project functionality are as follows:
Point due North. From an arbitrary start location and heading, navigate so that the rover is pointing due North. Point north within +/-20° and complete the mission within 180 seconds
Below is a video of the rover completing mission 3. We succesfully pointed the rover due North within the alloted time. The code appeared to be working perfectly, however the chasis was fighting us incredibly hard. The rover used in this mission was the chasis of an old RC car which had a single 6V DC motor in the rear and a smaller 6V DC motor in the front for steering. The entire system was ran on an Arduino Mega with the only additional components being an adafruit GPS module and a small motor driver. In order to get the rover ready for mission 4, the entire chasis will be redesigned again to incorporate a rear differential and a higher voltage stepper motor for steering.
Create an autonomous rover capable of navigating to specified GPS coordinates and delivering a payload. For your missions the payload will be modeled as a cubic wooden block~1.5”x1.5”x1.5”. The rover should be capable of obstacle avoidance, navigating rough/uneven terrain, and meeting speed and navigation accuracy requirements.Missions your team should meet to demonstrate timely progress and project functionality are as follows:
Advanced GPS navigation
(a): Navigate to specified GPS waypoint that will be provided to you. You may hardcode the GPS waypoint coordinates for this mission. The rover should stop within 15 feet of the marked GPS waypoint.
(b): Mission 4(a) but the rover should read the GPS coordinates from an RF transmitter beacon placed at the starting location, place a physical marker within 15 feet of the specified waypoint,and return to original start location.The distance between the physical marker and the marked waypoint will be measured along with the distance between start and end positions of the rover. The cumulative error should not exceed 25feet.
Mission 4 CodeIt was incredibly disheartening to come so far only to fail the final two missions. Our mission 4 rover was sadly not functional in time. We ran into a multitude of isseus with our GPS module and our prototype rover had no chance of passing these missions. We believe that with 2 more weeks we would have been able to finish our final rover design and successfully complete both parts of mission 4. We hope to take the skills we have learned from this project and use them on innovative projects in the future. We plan on spending some time this summer finishing up our design so that we can feel a sense of accomplishment from reaching our final goal.