Wednesday, July 28, 2010

Day 17- Squee! Final Project- Complete!

Today was filled with epic success, as the gardening bot is complete and fully functional!

With the back of the bot (the watering part) completed and in place from yesterday, today we focused on the front of the bot (the sensor part) and the programming details. Initially, we attempted to construct a form of "drill" to poke a hole in tightly-packed soil, so not to break the sensor as it entered the soil and read the moisture values. However, this design, reworked multiple times, proved itself to be wholly impractical and difficult to construct. In the end we decided to veto the drill and simply use the bot only in soft soil. For the mechanics of the sensor itself, we connected it to a servo that rotated about 20 degrees, lowering the sensor into the soil accordingly.

A few screws, bolts, and wires later, the mechanics were complete! On to the program. Here is a picture of the block diagram for our program, as well as a basic explanation of how it works:

(Note: the program to lower the sensor into soil isn't included in this picture, but it's just to the left of the while-loop)

Once the servo has lowered the sensor, it constantly reads values of moisture content based on the material it's touching (air, soil, water, etc.). To give some context, the sensor registers air at about -12, moist soil at about 12, and the skin on a human hand at about 36. Within the program, if it's true that the moisture content reads below 5, the front servo will rotate back from 20 degrees to 0 degrees, returning the sensor to its initial position. The back servo will rotate from 14 degrees to 0 degrees, lifting the cover on the hole in the water bin, releasing water into the soil. If it's false that the moisture content reads below 5, the front servo will still rotate back from 20 degrees to 0 degrees, returning the sensor to its initial position. The back servo, however, will either move to 14 degrees or stay at 14 degrees, acting as a cap on the hole and preventing water from being released from the bin.

Here are some videos of our bot in action! The first video is using real moist soil but leaving the back bin empty. The second video is using our hands to provide the moisture for the sensor, but having the plastic bin filled with water to test the effectiveness of the cap.

With such a large task undertaken, (well, for someone who has never worked with robotics before embarking on this internship) I compare the completion of this bot to the pride of a new parent. XD Our robot deserves a big hug for working so well~ ^_^

Tuesday, July 27, 2010

Day 16- On a personal note

I intend to use today's blog post for a more personal purpose, but I'll briefly summarize today's bot progress. With the mechanics from yesterday in place, today I set out to program the servo controlling the mechanism. It was a relatively simple program, but after hooking up the battery, controller, and NXT, the servo wasn't budging! I struggled with rewiring for a while, until Mike came over and offered the friendly suggestion of flipping the servo wire in the controller so that the colors yellow, green, and black lined up with "YGB", rather than the other way around...well, we all make little mistakes like that. Now the servo is fully functional. Here's a small video of it in action! (Note: because the program hasn't yet been completed or connected to the Vernier sensor, I have to manually put in values, leading to the long pause in the middle of the video)

I came to this internship trapped at a fork in the road. Amidst the whirlwind of college touring, selecting, and preparations, I realized that I had fallen in love with two schools, and each led down a different path of the fork. There was Connecticut College, where I could pursue Environmental Studies, and Tufts, where I could pursue Environmental Engineering. Although both incorporated my passion for the environment, the two directions were vastly different!

Knowing that I couldn't walk down two paths simultaneously, nor attend two undergraduate colleges, I had high hopes that this internship would help me determine which path to choose. And I believe now that it most certainly has.

My mother recently shared with me that both of my grandfathers had dreamed of becoming engineers, but neither had ever gotten the chance. Some of their engineering blood must have been passed down to me, because I too love the innovation, the mathematics, the process, the problem solving, the everything! I find myself constantly at work on my projects as the hours slip by, and enjoying every minute of it.

I'm a little susprised myself, as I was initially skeptical about the idea of engineering. I've previously considered myself partially anti-technology, due to my affinity for the "old world" of little farming villages and candle lighting. This internship has opened my eyes to the positive possibilities of technology; how it can be the source of innovation to truly revolutionize the world for the better.

I'm infinitely grateful for this internship, and the understanding it bestowed up me. Although I don't intend to specifically pursue robotics, the opportunity to experience engineering in this setting allowed me to understand the environment, and to see if it was (to use a common college-touring phrase) "the right fit" for me. After my time in the CEEO center, I feel I truly understand what I want to do, and where I want to be. So then, down the path I go, merrily singing along the way~

Monday, July 26, 2010

Day 15- Drip, drip, drop?

Continuation of the gardening bot (see Day 14)! My big task for today was to make/tweak a stopper for the hole in the bottom of the plastic bin. Yesterday, Naveed had suggested I put a suction cup on the bottom of the metal pipe, in order to vacuum seal out all the water.

This ended up being a brilliant suggestion, and the key to solving the leakage dilemma. However, there was one issue with the method. The hole that the suction cup covered acted as an air vent, and thus prevented the suction cup from creating a vacuum seal. With the metal pipe at an angle to the bin, and no vaccum seal to fill the space, water still continued to drip!

Thus, the next step was to create an all-new and improved stand for the servo controller and metal pipe, enabling it to rest at a 90-degree angle to the bin. With this in place, the suction cup acted as a "cap" rather than a "vaccum", and still prevented water from seeping out the hole.

I got so excited about the success of the mechanism that I took about a billion pictures, so I'll post them all here. XD (As you can see from the images, the bin is filled with about an inch of water, but none is dripping out the bottom.)

Friday, July 23, 2010

Day 14- Let's get gardening!

I'm back, and diving right into the final project. My partner and I are designing a robot that can measure the water levels in soil, and water the soil accordingly. It uses the new Vernier water level sensors.

The front of the robot has a mechanism that moves up and down to poke a 3 inch hole in the soil, and place the sensor in the hole to read the water values. Then, according to our program, if the water levels are below a certain value (yet to be determined), a servo controller will rotate a certain number of degrees (also yet to be determined) to raise a pipe. The pipe covers a hole in the bottom of a plastic bin filled with water; when the pipe is raised, the water pours in a small stream out the bottom of the bin.

Note: This description is the result of continuous trial and error, as our initial design used a water bottle and sliding plate to release the water. The bin, found conveniently in the storage closet (old junk can be so useful sometimes!), was more sturdy and could hold more water than the bottle.

We chose to divide up this ominous task into two parts:
1) The front of the bot that digs the hole and places the sensor.
2) The back of the bot that releases the water.

I chose to work out the watering mechanism, and began by rummaging in the storage closet to find a plastic bin (again, useful junk!). I then designed a platform to hold the bin in place, and, to my general excitement, it fit perfectly! It used four corner pieces attached to the flat base to form a "cradle" of sorts.

When constructing the original plate that was supposed to slide out from under the plastic bin, I realized that it wouldn't stay tightly enough to the bottom of the bin to hold the water in, and there was no Tetrix piece that would function as a movable cover. All the plat pieces had holes in them for attaching other pieces. The holes do serve a useful purpose, but in this case, they were a nuisance! Eventually, I concluded that I would need to cover the hole from the inside of the plastic bin, and the pipes seemed to be the best piece for this purpose. So, I built a stand for the Servo motor and connected it to a pipe so that the pipe was directly covering the hole in the plastic bin. By the end of the day, I was in the process of attaching the pipe to the Servo motor, so I have yet to test the effectiveness of this method.

It's good to be back~ ^_^

Monday, July 19, 2010

Friday, July 16, 2010

Day 9- Round and Round and Round~

Success! Today was a complete success; our group created a potentially completed project. ^_^

At the beginning of the day, we used the fishing wire to reattach the pendulum to our apparatus. At this point, we thought the project was finished, until we realized that we had created the reverse of the concept we were initially trying to represent! The Foucault pendulum shows how, while the pendulum swings in a consistent back-and-forth motion, the earth turns around it, creating the illusion that the pendulum is turning. As you can see in the picture below, the Tetrix mechanism we designed had the pendulum itself turn!

Turning back to the drawing board, we reconstructed our project completely. Andy took over the arch for the pendulum to hang from while I contructed a base to hold the motor in place. A few hours later, this was the abstract and crazy (but sturdy) base I created:

We then attached Andy's frame, which supported the central weight of the pendulum while rotating with the gear on top of the motor. Through trial and error, we learned that it was better to use the U-shaped metal pieces rather than the bars for the frame, and that the frame needed to be wide enough so that the pendulum didn't hit the sides while swinging. After connecting all the necessary electronics and wires (and using another metal piece to prevent them from getting caught in the motor) we tested out the program with the mechanics. The rotation speed was initially much too fast, but after turning the power down to 9 (the lowest it could be and still move), our project was completely successful! Here's both a picture and video of the finished project:

However, since we seem to have more time, there are always little improvements to be made~ perhaps on Monday we'll work out a way to slow down the motor even more!

Thursday, July 15, 2010

Day 8- As the Earth Spins

Today we had to use the Tetrix kit to demonstrate a scientific concept. After a great deal of brainstorming, we decided to create a Foucault pendulum, and use a rotating motor to show how the rotation of the earth causes the pendulum's path to change over time.

With this plan in mind, we began creating a base and arch to suspend the pendulum. With any project, each aspect was redesigned multiple times. The base went from triangular to square, and the width of the arch changed to accommodate the wide path of the pendulum.

For the pendulum itself, we used this weighted block hung on a length of sewing thread. We rapidly discovered that the thread wasn't durable enough to hold the weight for a significant amount of time, so we will be changing the thread to fishing wire tomorrow.

We used a simple program that told the motor to run at the lowest power possible (8). We're also attempting to use and program an encoder to slow down the motor, putting the angular speed at 24 seconds per rotation (representing the 24 hours per rotation of the earth). However, this is still a work in progress. By the end of the day, this was our completed project:

We tried to take a video of it in motion, but the sewing thread broke! So, it's clear that tomorrow we'll need to make some slight alterations to both the apparatus and program to successfully represent the Foucault pendulum.