Student Projects

CocoBot Testing

Sam Tull

The Brief

Nya Rudek

The Scaredy Crab brings attention to a highly debated argument when it comes to animals and their grasp on conciseness. This project takes this issue one step further, challenging a robot to trick the user into believing it has conciseness. In order to trigger empathy from the user, The Scaredy Crab reacts to the threat of physical abuse. The Scaredy Crab is easy to relate to because it plays on two different emotions that humans commonly feel: joy and fear. 

This robot's behavior is partially based off a The Scaredy Crab's. It has a shell and scurries around obstacles as a The Scaredy Crab would. The user gets attached to the playful side of this robot, but when they accidentally appear to be stepping on it or threatening it in any physical way, the robot scurries away as an actual animal would. This robot is made with 2 sets triangular wheels going each way, allowing it to switch directions and play around the user. The robot has a sensor attached to the front to direct it and another attached to the body to detect any physical threats. The The Scaredy Crab causes the user to emotionally attach to the robot and realize how quickly humans can feels empathic toward something that isn't even human.

Process

Christopher Kitchen

Knowing what the weather will be like is an important part of every day, however this process is tedious uninteresting, and quite inefficient. Our solution for this problem is a flower that will wilt when the weather is bad(cloudy, rainy, and so on) and bloom when the weather is good(sunny, or partially cloudy). We accomplished this by creating wood pieces connected via nuts and bolts, with a spring at the connection making a wilted position as default, additionally, there is a string going along the back of this "arm" so that it straightens when the string is pulled. The flower uses a servo to rotate a center piece, which is connected to multiple independently moving arms. These arms are then attached to the pedals, which are mounted to the base of the flower, this allows the pedals to open and close based on the servo's position. Eventually we also incorporated LEDs to further represent the weather condition. All of these are connected to an arduino/linux board, that downloads the local weather forecast and converts it to the servos and LEDs. Probably the biggest challenge was when the first flower was printed, without enough compensation for the expansion of the 3D printing material, causing all the measurements to be wrong, forcing a complete redo.

Iterations:

The first iteration was a cardboard version of the arm, which excluded the springs, and strings lacking the ability to move it up and down in any automated way. In the second iteration we made another cardboard arm, with a way of incorporating springs, however, the cardboard couldn't handle the stress of the springs, and we quickly moved on to wood. Third iteration, in this iteration we made the transition to wood incorporating the springs and string, as well as adding a very primitive base made of cardboard. The base was comprised only of two circles with holes to put the arm in, and 4 more to put in small supports for holding it up. Iteration 4, this time we made a really big base out of wood, using separate square pieces going around the cylinder, creating a slightly scaly look. Fifth iteration(sort of) with this iteration we designed the flower, which was redone due to the original calculations being wrong, we also added LEDs, and made the base smaller to accentuate the flower. Iteration number six(final iteration!) for the final iteration, we put a cylindrical casing around each segment of the arm, as well as incorporating the arduino/linux board, and created a working flower.

Process

Nina Cragg and Max Ingersoll

Problem: To make an autonomous robot that has line-following capabilities, and goes to the spot along the line with the most light. 

Solution: An eye inspired tank-drive autonomous robotic plant holder that follows a black line on the ground. The eye tank uses two motors connected to a motor shield that is programmed with a PID controller to follow a black line. The purpose is to get the plant to recieve as much sunlight as possible throughout the day. 

 

Iteration One: The first iteration was a to have the robot be in the shape of an eye and to have threads as the wheels with two motors attached. Our first step was a base with two slits cut in the center and separate pieces that stuck into the base and held screws into place that would be attached to the tank tread wheels. When we did more research into actual tank treads, they seemed too expensive to be just a design asthetic, so we chose to use wheels with gears instead. The gears we designed had three identical large gears and two small gears. It was important to have an odd number of gears so that three wheels could be attached that would move in the same direction. When we first cut out our gears the dimensions were not perfect and therefore the gears did not mesh correctly.

Iteration Two: Our second iteration included recutting a base that instead of having many pieces that held the bolts that held the gears into place, it would have the same number of slots, but have all the gear holders connects for better stability and more precision for when we would recut the gears. When we assembled this with the gears and wheels it turned out that the lock nuts would not be able to hold the gears into place because the wheels had large holes in them. Also, the smaller gears were so small that they kept breaking and also could not be held into place well. 

Iteration Three: In our third iteration we decided to make all the gears the same size and have the same sized wheels. We decided to do this because it would allow us to keep our second base in tact and only change the wheels and gears instead of the entire design. This gear and wheel design worked and is part of our final design.

Iteration Four: In our fourth iteration we designed a box that fits over the arduino, motor shield, and battery pack. We also added an C shaped piece of wood to the top of the box to prevent it from falling off the box. We also added a switch at the bottom of the base that is connected to the battery pack and turns the robot on and off. When we were testing the light values for the PID controller we realized that the initial phototransistor that we put on had too high a resistance and was only reading values from 0-5 compared to 0-1000. We replaced the phototransistor and decided to thread those wires through one of the sides of the box. For the outer shell we decided to create an eye-like structure that includes four pieces of wood that secure into place four curves ribs that all connect to a circle that will hold a plant. 

 

Motor Shield Circuitry: A motor shield controls the two motors of our design. The reason we need a motor shield is because the adruino can only power 5V and the motors we want to run need 12V. The motor shield consists of two H-bridges. Each H-bridge contains four transistors which are basically small switches the attact and detach wires together and therefore control the electrical flow of the battery. In addition to that, the H bridge allows each motor two move both forward and in reverse. This allows the robot to turn faster.

PID Controller: The PID stands for proportional, integral, derivative. The way the controller works is that it is connected to a light sensor. The light sensor takes in light values. In our program we test what the light values are of the black line to a white piece of paper. We set a goal for what we want the light sensor to be constantly reading to the median light value of the black line and white paper. When the light sensor reads a value that isn't the target value it counts it as an error. The proportional piece takes the error value and sets that to the speed of one of the motors so that the robot turns. The integral adds all the errors up so that the speed is equivalent to that sum of errors instead of just one. This allows the controller to account for small errors. The derivative acts as a stabilizer for the motor it predicts future errors by assuming that the future error is equivalent to the previous error. The PID controller is a good controller compared to a P controller because it helps the robot be more precise and not oscillate so much. 

 

 

 

 

Process

Sam Tull

Process

Sara Lewis

Houseplants bring the beauty of the environment inside and are shown to improve human heath. However, plants often have trouble growing indoors due to irregular sunlight patterns. To optimize a houseplant's ability go grow inside, I created The Phototrobot, which is an autonomous solar panel powered robot that follows visible sunlight. By powering The Phototrobot with renewable energy, I'm utilizing the similarities between plants and solar panels to protect the natural world that my robot brings indoors. 

The Phototrobot was originally inspired by the Rumba robot. I wanted to create a robot that was circular and close to the ground because felt this specific shape would make my robot minimally intrusive while still aesthetically pleasing. Additionally, I was inspired to implement a sunlight searching program because of the Rumba's existing search functionality. 

I later became inspired by rotating solar panels when I began thinking about adding an environmental aspect to my project. I've studied solar panels in the past and learned that specific products exist that rotate them to the most efficient angles based on the time of year. Since these mechanisms are very expensive, I wanted to take the idea of adjusting solar panels based on the current sunlight and scale it down to a smaller robot.

I began thinking about how I could combine solar panels and plants on top of a small robot. Since solar panels need a lot of surface area to be effective, I wanted to tilt them so I could fit more within my confined area. Since I know that in Massachusetts solar panels work best at a 45-degree angle, I thought tilting my solar panels was a good decision. 

I originally wanted to make my solar panels and plants modular, with two different types of components that could be customized on top of the robot. However, I then moved to making five pieces that hold both solar panels and plants so that I wouldn't have to think about complicating the wiring with so many removable pieces. I ended up scrapping this idea when the solar panels were shipped because I realized that the sizing I found on the internet indicated that the panels were much larger than I originally anticipated. I changed the orientation of the solar panels so they would fit on my robot and began modeling one piece with these constraints. 

I also began thinking about how to transfer the wires from the solar panels through all the different layers of my robot. Since the top piece of the robot was originally intended to spin, I wanted to keep this capability and integrate wires that were able to spin with a mechanism called a slip ring. Because of this, I designed a couple different pieces I could 3D print to integrate the wires through the spinning part of the robot. 

Once I made these design decisions, I began editing the original version of The Phototrobot from a previous studio. I wanted to keep some of the design elements that I believed worked well the first time. Specifically, I wanted to use the wood filament 3D printed pot idea and the flexible wood piece for the outside. I kept these parts of the design and started integrating the changes I'd begun to plan. 

I experimented with my modular plant and solar panel holder, the singular solar panel and plant holder, the slip ring holder, and designs for the top piece of the robot during the first couple weeks. After finalizing the designs, I moved to assembling the whole robot. 

As the construction diagram shows, The Phototrobot has three main layers: the base layer that attaches to the wheels, the center layer where the sensors are housed, and the top layer that's visible. On top of this layer, I attached the solar panel holder and the planter that fits into it. 

Once I finished the construction, I began the wiring so the robot would execute it's intended function. I wanted the robot to turn towards the sun when the front wasn't facing it and move towards the sun once the robot was oriented correctly. 

The wiring contains two circuits: the solar panel charging the battery and the sensors giving data to the Arduino so it can set the wheel motor rotation and speed correctly. There are five sensors that track the light in a circle around the whole robot that are all wired separately to the Arduino for five streams of separate data. 

After wiring and programming the robot, I put all the pieces together to get the final product. Overall, the simple design of the project masks the complex circuitry and mechanisms on the inside.