Deprecated: (6.186) preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /afs/athena.mit.edu/course/6/6.186/web_scripts/2013/w/includes/Sanitizer.php on line 1550
Team Eight/Journal - Maslab 2013

Team Eight/Journal

From Maslab 2013
Jump to: navigation, search

Monday 1/7/13

Today we went to two lectures. We were informed of the rules of the competition and went over some basic python software. During our lunch break we devised our initial strategy and robot mechanisms. We are planning to use a conveyer belt and spinning ball collector. In lab we assembled our pegbot, and Laura got the code to work, while Bee and Ryan were at wrestling practice. We are excited for this class.


Tuesday 1/8/13

Today we had two lectures on connecting the Arduino and protoboard as well as working with the sensors and actuators. During the break between lectures we outlined the necessary states for the state machine and continued designing the robot mechanisms. In lab, we affixed the IR sensor to the front of the robot and coded the robot to sense a wall and turn away for checkpoint two. In the evening we detailed the robot mechanisms and started CADing the robot. We also calculated the necessary dimensions of the conveyor belt and other critical parts. Bee worked on the openCV vision system software and Ryan and Laura worked on CAD.


Wednesday 1/9/13

In the morning we had a lecture on vision systems and different image processing algorithms. After lecture Laura and Ryan worked more on the robot CAD. We wrote a schedule for the rest of the month, and designed the critical parts of the robot. In the afternoon we learned about PID control and mapping. We ran into some issues about where best to place the conveyor belt motors and servo , and brainstormed solutions to fix it.


Thursday 1/10/13

Today's only lecture was about mechanical design. After an epic start of the day post lecture, which included a trip to Mt. Auburn, we returned to work on the robot. We also went over some of the previous competitors to highlight some successful strategy, design, and implementation. Ryan and Laura continued to CAD a complete model, while Bee worked on OpenCV and python. The CAD model should be done soon so that we can begin piecing the robot together. The vision code is now able to detect red objects by filtering a webcam image into the HSV color space, then filtering out colors that do not match our desired range. This code has been made into a library that outputs the x,y position of the object it sees to our main program.


Friday 1/11/13

We did not have any lecture today, so we went straight to lab to continue working on the robot. Ryan, a newly minted Solidworks hold wizard, continued to CAD, while Laura and Bee worked on the code. We tested the different states/tasks that the robot needs to complete checkpoint 4. Laura wrote an open loop code that allows the robot to scan for the ball by spinning in a circle and center the ball in its field of vision when a ball is detected. Bee developed a camera calibration system that adjusts the HSV color values due to lighting and different colors for checkpoint 5. Although the camera is picking up some noise from the background colors which we need to work on filtering. According to Ryan, the CAD is "doneish."


Saturday 1/12/13

We spent today preparing to laser cut out potential final robot design. Unfortunately, we were unable secure a laser cutter today and was unable to cut our pieces. Instead, we went to Economy Hardware and found screws, bolts, and other misc items for building. Ryan and Laura spent the rest of the day finalizing the CAD model for laser cutting.


Sunday 1/13/13

Today we went to the CSAIL machine shop to laser cut our pieces. Thanks a million to Affi for helping us set up the laser cutter and to layout our pieces. Our first piece we set the laser speed too fast so the pieces didn't cut the whole way through. We tried to extract the pieces by hammering them out, but unfortunately cracked the base. So we decided to re-cut that sheet as we had an extra acrylic sheet. We decided to cut the two top pieces of the clear blue acrylic and the sides out of the grey.


Monday 1/14/13

Today is the first Mock Competition. We tried as best as we could to get a working robot, but was unsuccessful. We forfeited any attempt to try to score and instead focused on assembling the final robot. We went to Edgerton shop to drill and tap the attachment holes in the acrylic. From a preliminary assembly, it's looking good so far. Tomorrow we will attempt the software design again.


Tuesday 1/15/13

We finished drilling and countersinking the robot pieces and assembled the acrylic robot. Then we transfered all the parts from the pegbot to our actual robot. The wheels are a little too wide for the space allotted so we had to file down part of the walls and tested using different wheels. We also realize we need more 6-32 x1/2 screws. From now we will use our actual robot to code and test.


Wednesday 1/16/13

It snowed today! It was very pretty, but this Californian was cold unlike her two teammate who are from naturally colder places. As for MASLAB, we found more 6-32 screws and assembled the robot. Then we removed the parts of the wall that interfered with the walls and switched out the original wheels to fit larger green rubber wheels. Then we machined more parts to fit the servo drive, and mocked up the rubber band wheels for ball collection. There were major alignment issues, and cardboard was discovered to not be a bad medium for sketch modeling out robot. Code-wise, vision code was updated and run code now is a state machine.


Thursday 1/17/13

Ryan and Bee are off the dominate their wrestling tournament for the weekend, while Laura is left to dominate robot building. Well sorta. Two ideas for fixing the rubber band wheel drive include: 1) Threaded rod 8mm x 1.25: set screw attachment to motor, use nuts and lock tight to hold rubber band wheel position. Though we'd have to order it and it wouldn't come until next week. 2) Or a Hex rod (Thanks Fred!) and e-clips (or maybe just epoxy).
We also are thinking about implementing optical encoders on the drive wheels to drive with PID control to help with driving more accurately.


Friday 1/18/13

Still on my own as Bee and Ryan are still out wrestling in Georgia. I added cardboard ramps to the robot and had the crazy idea that if I could use the servo to raise the ramp I could collect balls onto the back without a rubber band roller. But the servo range wasn't great enough for the ramp slope to be any steeper than about 1 degree, and balls couldn't really roll up onto it without a roller anyway. So crazy idea = fail. Moving on, I edited the camera calibration to better recognize balls in 26-100 lighting. Assembled robot and mounted battery, IR sensor, and computer. Updated the code to use IR sensor. The robot weight distribution is off because of the missing conveyor belt. Also the robot overall is very heavy and doesn't drive well. Motors are stripping and the gearbox is coming apart.


Saturday 1/19/13

Thought about some different design changes to fix the problems discovered during mock 2.


Sunday 1/20/13

Day of rest. Bee and Ryan got back in the evening.


Monday 1/21/13

MLK Day. Got larger motors, changed the base to be symmetric with the rubber band wheel opening centered. Need to laser cut parts and tried to figure out access to a laser cutter since Affi is busy this week. It would be super helpful in the future if MASLAB had constant access to one since it seems like many teams are having the same issues. Also, really cool cheap laser cutter on kickstarter:[1]


Tuesday 1/22/13

Looked for a Laser cutter all morning, and into the afternoon we finally found a laser cutter to use! Bee and Ryan laser cut while Laura went to Edgerton shop to turn the hex rod and make the motor mounts. There, Laura discovered that one of the coolest functions of a CNC mill is the jog function and the most useful is a bold circle. After all of the parts were successfully made, the robot was assembled. All the new motors were tested, and they work! But the hex rod interferes with the side wall a little. Other than that, our robot is in much better shape than last week.

Wednesday 1/23/13

Today is the Mock 3 trails. Our robot is mostly assembled except for the conveyor belt. We spent a good portion of the morning/afternoon on coding the behavior of our robot and the setup of our ball collecting wheel. After many hours of tweaking, we were able to run many trials and ended up grabbing two balls.


Thursday 1/24/13

We built the conveyor belt system today. It is around 80% complete and we are confident that we can get it to work mechanically. The next design challenges are to make the balls funnel to the conveyor scooping area and to add in a mechanical stop for the conveyor deployment. We also had a little time to run some test code for wall following.


Friday 1/25/13

Today we worked on our code and implemented proportional control for driving forward, using the webcam. We also worked on wall following code and other search algorithms.


Saturday 1/26/13

Bee and Ryan had a home wrestling meet and Laura went to watch.


Sunday 1/27/13

Laura and Ryan with the help of Affi laser-cut the conveyor belt sides out of thinner acrylic to lower the weight on the servo. Bee coded.


Monday 1/28/13 Laura and Bee went to Edgerton to finish the laser cut pieces for the conveyor belt while Ryan went to medical to get his hand x-rayed. Good news, his hand isn't broken! The goal for today is to finish the conveyor belt and essentially all of the hardware for the robot leaving tomorrow for coding and optimizing our robot. After many trips to Edgerton Shop and lots of duct tape, we successfully made a conveyor belt that can transport balls almost vertically, but ran into issues scooping balls up from inside the robot. We will play with different scoop and base designs tomorrow as well as optimize code to make our robot smarter.


Tuesday 1/29/13

Seeding round competition today. We ate lots of balls with Crank: The Tank and came in second only after a tie breaker. But there were some areas for obvious improvement such as getting impaled on sharp corners when spotting a ball, and being stuck in corner.


Wednesday 1/30/13

Worked on speeding up our robot, changed the proportional drive code to move faster. Also removed the awkward delays in the wall following code and made the robot smarter in getting stuck in corners or being impaled by sharp parts of the wall. We added more IRs for a total of 5 so that we can sense the entire front and side areas. We also worked on making the conveyor belt work. After some strange starts, we realized that the PWM and Dir pins were placed backwards. Oops. But with that fixed, the conveyor could put balls into the top of the pyramid with lots of guidance. Tomorrow we will make that automatic and also incorporate aligning to the button and the pyramid. Initial trials today proved that task to be quite difficult.


Thursday 1/30/13

Frantically tried to get things to work so we could score with the conveyor belt. Conveyor belt works nicely with ball on the top level. Unfortunately aligning straight against a wall proved too difficult, and we kept not being able to align to the button to collect balls on the upper level. Oh well, we decided to be really good at eating balls and not use the conveyor belt.


Friday 1/30/13

Tried fixing the code so it could sense the button and align to it. Nope, soooo we'll just eat lots of balls. Om nom nom.

Personal tools