This is our daily journal of progress, challenges, and other updates.
We got a set of Kitbot parts! (Minus the battery.)
Vinay and Winter worked on assembling the Kitbot frame, having some difficulty finding appropriately sized screws and nuts.
Forest worked on assembling the wheels and motors.
The battery and a USB cable for connecting to the Maple arrived.
Forest connected most of the wiring between the motors, motor controllers, and Maple, and tied everything down.
Winter soldered the wires to the connecting pieces and to the motor. He uploaded the demo Kitbot code onto the Maple. Preliminary tests via serial commands from computer show that the electronics are working. We need to get the tablet part of the demo up and running.
Winter also tried to learn Solidworks. He is
failing miserably slowly learning.
Forest and Vinay installed the software necessary to run the Kitbot from a laptop but didn't get it working on the tablet because of driver issues with the Maple.
Ariel gave a Power Electronics and Control Systems lecture. Apparently we will be using a PID controller, but the fastest way to get it working is just by fiddling with the three coefficients (proportional, then derivate, then integral).
Forest installed OpenCV on the tablet and tried but failed to configure it in Eclipse.
The tablet now works with the Maple.
Vinay installed Ubuntu on the tablet and the software for interfacing with the Maple. We can now run Kitbot using Ubuntu. The tablet is happy. Winter and Vinay thought about design ideas for collecting, storing, and depositing balls. We are thinking of using a wheel with a brush to scoop up balls to a higher platform, with some sort of switch to sort the balls, and maybe some internal color detection. Winter did a Solidworks checkoff and resoldered a new kitbot battery connector to the 'bot. Due to the new connector, we will no longer loose power to our robot while doing testing exercises. Winter also worked with Vinay on discussing possible plans for the mechanical version of the robot.
Our current conclusion is that we should aim to collect and deposit balls into the reactor silos at ground level first. Once we have a robot that can do that, we can expand the design to attempt some of the more complicated objectives. Yay K.I.S.S! (Keep it simple, stupid!)
There was a talk about how to generally use vision systems. Forest and Winter attended the lecture.
There was also a laser cutting training session. All of the team has now been trained to use the laser.
1/10 - Winter's Birthday!
We are falling behind on checkoffs. Although this was a ill-advised decision,
3/4 1/2 of our team is going on a ski trip for the weekend. However, Winter and Lucas are staying behind to continue working on the robot. In addition, Winter has been bogged down with 8.01L work. However, we were told by the staff that we can come in on Sunday to continue working. THERE IS STILL HOPE!
Nothing special happened. The lab was closed and half of the team was away.
The lab opened at 2PM today. Winter went to lab to try and get some preliminary designs done and lasercut before Monday.
The rest of the team returned from their ski vacation today and joined Winter in the lab. Together, we debated over various mechanical designs. Our current plan is to make a circular robot with a small ball intake in the front. Assuming that we will not have time to implement a mechanical ball sorter in the robot to filter out all the red balls, we want to make the vision system be our ball sorter. By having a small ball intake, we can presort the balls by only aiming for the green balls. It's not a perfect plan, but it's our best bet if we cannot get sorting finished in time.
For the elevation mechanism of the robot, we would like to make a belt and pulley driven mechanism.
1/13 - Monday! The day before our first mock competition!
Today is the day before the first mock competition. Damage report: no vision yet, encoders are not yet running, mechanical parts have not been fully designed. We are going to need to step it up today and tonight to get something working by tomorrow.
This morning, Winter started making CAD assemblies of the ball elevator. A prototype of the elevator needs to be finished tonight to pass checkoffs.
Winter does not remember what happened today. He thinks that he stayed at MASLAB for multiple hours while CADing the prototype design for the ball elevator. However, he can't be entirely sure. Then again, his memory is bad even when he gets the daily recommended does of sleep.
1/15 - Wednesday
Vinay got the tablet to recognize ball-colored objects and export the required change in the robot's angular position to intercept the ball. However, we have not actually tried to implement this code into getting the robot to move and follow balls. Tomorrow, Vinay will try and code a PID controller using only P. This will allow him to start integrating his vision system into the robot's internal positioning system.
Winter has not slept in a few days. Hot off of an all-nighter triggered by a sadistic 8.01L pset, Winter decided that it would be a good idea to stay in MASLAB for 11 hours straight. Take this as a warning future roboticists, DO NOT BE THIS GUY!
On a more positive note, Winter finished prototyping V1 of the ball retrieval and elevation design. He laser cut and assembled the pieces to check that the design worked. In the process, however, he found some flaws in the design. However, the prototype still validates the general design of the ball elevator as being sane. By 2AM on Thursday, Winter had finished resolving 7 out of the 12 design issues that plagued the first prototype. He plans to lasercut V2 of the ball-elevation design by Thursday evening.
1/16 - Thursday
Forest worked on the robot controller -- getting the computer to control the robot's movement and query the robot's sensors, with the help of MaslabComm and the Maple firmware. He was held up for hours by unfortunate minor errors, most notably (1) the cytrons weren't connected to ground, (2) the motor-wheel connection was loose, (3) you can't set the motor speed to anything higher than 1 or it does nothing. Good news is the robot can now move on command and detect angular velocity, but the controller is still a piece of shit as the robot just drives in circles. Forest also swapped out the old motor with no encoder for a new motor with encoder.
1/17 - Friday
Winter was held up by classes and work for the whole day. However, he did manage to go to lab and finish the design for the 2nd prototype of the elevator. He generated new DXF files for laser cutting, but the lab closed before he was ready to lasercut. The lab will be closed on Saturday, but he will be back on Sunday to lasercut the second prototype.
1/19 - Sunday
Lab opened at 3PM today, but the laser cutters remained closed due to card access issues. None of the staff had card access to the laser cutters. Thus, Winter will stay here fleshing out the design until the shop manager arrives to open up the laser cutters.
1/22 - Wednesday
Winter and Vinay braved the cold to go to lab today. Since we fried our Maple a few days ago, Vinay started to work on porting all of the needed Maple firmware over to an Arduino. Thus, development can continue without waiting for new Maple boards.
Winter plugged himself into the grid and cranked out new sensor, battery, tablet, and electronic mounts for version 4 of the robot. Over 8 commits, he made 12 new parts to add to the robot. Here's a screengrab of the current design: Since Winter has class all day tomorrow, he's going to bed now (1:40AM).
1/23 - Thursday
We brainstormed ideas for the chute to deposit balls into the reactor. Forest glued the wheel screws in place and worked on calibrating the ball detection system. Vinay worked on debugging the software-firmware connection.
1/24 - Friday
Winter stayed up all night finishing the design for the chute, elevator, and base, assembling prototype 3, and putting electronics on the new prototype. Vinay and Forest tried desperately to get the arduino to communicate with a tablet/macbooks, but some bytes are still getting dropped. Vinay used a TTS library to make the robot talk about what it's doing.
1/27 - Monday
Forest hooked up the Cytrons to the arduino and tried to control the motors.
1/28 - Tuesday
Forest and Vinay worked with John Bowler to try to figure out why the Arduino connection was acting glitchy. In the end Vinay figured out that we simply were not waiting long enough for the Arduino to establish the USB connection. Then Forest and Vinay replaced the motors with new motors with encoders, along the way figuring out that the gear ratio of the motors affects how easy they are to turn. The robot now moves.