Saturday, October 28, 2017

Winch Challenge Overview

Our next STEM Challenge involves using gears and pulleys to build a winch out of Lego parts. Jenna and I are looking forward to using the skills we learned from the golf ball challenge and learning some more about practical challenges!

The object of this challenge is to design and construct a winch using LEGO NXT motors and gears to lift the maximum amount of weight possible in 60 seconds. A gear train is required in some part of your winch. We calculated the ideal gear ratio that would give us the most torque with the least amount of power, and it ended up being about 2. We should keep this in mind when designing the winch.

Initial Design

We decided that the best way to complete this challenge would be to have the NXT brick function as the base of the winch and have a motor turn the crane off the table to pick up a mass from the floor. Jenna and I built a small platform out of Lego pieces and attached it to a motor. It can turn a full 90 degrees and back. However, we encountered a problem. The design must extend out over the edge of the table in order to pick up the masses, but that causes the bulk of the weight is sitting on one motor without much support (except for Robobby's tire). As a result, our design may tip over depending on how much weight we try to lift. We had to solve this problem and support our design better.

We realized the problem with our design was that we were resting all of the weight on one point, which was also the pivot point. That was too much for just one point to handle, so the entire robot would tip over. We decided to change our design because our current one was just not going to work. By adding more support to the pivot point and spreading the weight out over the winch, we were successfully able to lift 200 grams. Although it could lift the mass easily, we needed to work on the turning and depositing parts of the challenge. After some trial and error with the code, we figured out the magic numbers that allowed us to turn and drop off the mass. We also elevated the entire robot so it would meet the height of the block that we had to put the mass on. 

Robobby's final form
Overall this project was actually kind of stressful because Jenna and I didn't plan out the design before jumping into construction. Our thought process was that we would be able to figure out a sturdy design just by putting the pieces together and going through some trial and error, but it didn't work out that easily. By skipping the planning process and just blindly throwing together a bunch of Legos, we ended up with a shaky robot, lots of wasted duct tape, and two very stressed out POE students. We now know how important it is to come up with a plan before starting your work.

I also learned about gears and simple machines through this project. When we found out about the weight requirement of 200 grams, we had to adjust the design so that the mass didn't weigh too heavily on just one part of the winch. We solved this problem by using a bigger spool so the string was spread out over a larger area, making the weight also spread out over the spool. We also added supporting pieces around the gears so the weight wasn't all resting on the motors. This allowed us to lift 200 grams instead of just 50.

Saturday, September 30, 2017

Golf Ball Challenge Overview

To start off our sophomore year in SELC Principles of Engineering (POE), we're learning how to use Lego NXT robots to complete a STEM challenge!

The objective of this challenge is to use your robot to pick up a golf ball that is sitting on a brick, carry it under a ramp/bridge, and deposit it in a bucket on the other side of the ramp. The group that completes this task in the fastest time wins. You can't touch the robot, the ball, or any other part of the course while doing this challenge, and you can't use any sensors to help the robot know when to turn or stop. The key is to test the robot while designing it and figure out exactly how far you need it to go so you can integrate it into the code.

Building our robot, which we named Robobby

Over the course of a few days, my partner Jenna and I designed and built a robot that completed this challenge. Although we hit a few bumps in the road, we eventually were successful. Our robot completed the course in 10.49 seconds.

I learned a lot from this project. Although the coding for NXT is very simple compared to the work we did with Arduinos last year, the physical aspect of this project was much more challenging. We had to adjust a lot of factors after nearly every test run in order to make it go smoothly. Although there was a lot of trial and error involved, we had to remember that we weren't failing, we were just finding another way that wouldn't work. Eventually, our hard work paid off and we solved all the problems we faced. 

The Lego NXT Golf Ball Challenge was a wonderful experience in learning how to practically solve problems using the design process. It was both fun and educational, not to mention very rewarding when we finally finished the challenge!

Click here to read a more detailed account of the Golf Ball Challenge!

Check out my partner Jenna's side of the project here!

Sunday, March 12, 2017

Puzzle Cube Project

In PLTW we learned how to use Autodesk Inventor by making puzzle cubes! 

We started off by designing our cubes on paper. Each person's cube was unique, but they all had to follow certain constraints. First, every cube had to be made up of exactly five pieces. Each of these pieces had to be made of 4-6 individual blocks. None of the pieces could be the same, including mirror images. They had to come together to form a 3x3x3 cube (2.25"x2.25"x2.25"). Perhaps the trickiest constraint was that no matter which way you turn the pieces, they must lie in more than one work plane.

After we designed the pieces by hand, we built them using small oak blocks. Theses blocks were .75"x.75"x.75", so we used 27 of them. After we built the pieces, we started using Inventor to 3D model them. From there we could draw multiviews in Inventor as well.
A multiview drawn in Inventor

 After 3D modeling, we customized our cubes. I opted to spray paint mine, while some other people laser engraved or stained theirs. Here is a picture of my pieces while I was waiting for them to dry. 

Puzzle cube pieces after spray painting

Finally, we recorded and graphed data of at least 10 other people putting our cubes together. In my opinion, this was the most fun part because I enjoyed the challenges of trying to solve other people's cubes. It was also interesting because every person's cube was different. 

Overall this project really helped me to become comfortable using Inventor. I know this skill will help me in the future because Inventor uses software that makes 3D modeling easy. Now I won't have to draw multiviews by hand anymore. 3D modeling is also just a useful skill to have as an engineer because it makes designing things much easier and more precise than trying to draw everything by hand. 

Here is a video documenting my work:

Friday, February 3, 2017

Fixed vs. Growth Mindsets

In PLTW we learned about the differences between a fixed and a growth mindset. Here is a diagram showing some phrases that demonstrate a fixed and a growth mindset. 

Growth vs Fixed mindsets

When you have a fixed mindset, you believe that your talents and abilities are fixed. You may believe that there is no way to improve yourself and may take criticism personally. You think that your talents and natural abilities alone are what create your success.

When you have a growth mindset, you believe that your abilities are simply a starting point and that they can be developed by practicing and putting in effort. You believe success is achieved through hard work, not just talent, and take criticism constructively. You also see failure as a chance to improve yourself and understand that other people's evaluations of your abilities are not a measure of who you are.

I believe a growth mindset is better because you are always looking to improve yourself. You work hard to improve your talents and feel comfortable even if you fail because you see it as an opportunity to become better. A growth mindset also creates a love of learning and helps you develop as a person.

Here's a video further explaining a growth vs a fixed mindset:


[Digital image]. (n.d.) Retrieved February 3, 2017, from

Sprouts (2016, April 15). Growth mindset vs. Fixed mindset. Retrieved from

Sunday, January 29, 2017

Penny Hockey Project

In PLTW we learned how to use all of the tools in the Makerspace by making a penny hockey set!

Finished penny hockey board

We started by cutting a piece of tile and MDF board to the correct size by using an Exacto knife and the table saw in the Makerspace. We cut them to be 11"x8".

Cutting tile with an Exacto knife

Cutting MDF board with the table saw

Next, we chose an image to engrave on our board. We put it in Adobe Illustrator and used our laser engraver in the Makerspace to engrave it on our board. After that, we used the drill press to drill the holes for the goals in the board. 
Penny hockey board

After that, we used the miter saw to cut the walls for the set. We used pieces of a common board to do this.

Using the miter saw

Finally, we made the pegs for the players and put electronics on the board. I made my board light up when you score by making a simple circuit. 

While doing this project, I learned a lot about the tools in the Makerspace. I also learned how to be safe while operating the equipment. I thought it was fun to make the electronics portion as well. It was a great way to continue to use the skills I learned during the Arduino unit.

Sunday, October 30, 2016

Arduino Pumpkin Reflection

To celebrate Halloween, we worked on enhancing an ordinary jack-o-lantern with an Arduino, some LEDs, and different kinds of sensors. Here's my regular old pumpkin...

Regular jack-o-lantern

...and here's the finished product!

Finished Arduino pumpkin

I used a proximity (PIR) sensor to make my pumpkin light up. It took several tries, nearly an hour of searching for online tutorials about how to connect it to the breadboard, and some help from classmates to finally set it up right. Then the next challenge was writing the code.

Proximity sensor connected to the breadboard

At first I tried using some code that was already written that I found on sites such as or However, it wasn't specifically suited to my project and had many bugs. I tried using a classmate's code (with permission) but that also had to be customized. After reviewing the various pieces of code I had already tried, I wrote my own. The code was nothing fancy (of course), but I'm glad I learned enough from the Arduino unit that I was able to write my own.

Code for the Arduino pumpkin

I programmed the LEDs to flicker like a candle when the sensor didn't sense any motion. When it did sense motion, the green LED would flash. The sensor was programmed to send a signal to digital pin 3. Pins 6, 12, and 13 would read pin 3 to decide which LEDs would flash. If pin 3 sent a "LOW" reading (or no motion detected), pin 12 would cause one orange LED to stay on and pin 13 would cause a red and an orange LED to flicker to achieve a candle like effect. If pin 3 sent a "HIGH" reading (or motion detected), pin 6 would make the green LED flash. Here you can see the light turns green when I wave my hand over the sensor:

Proximity sensor causes LEDs to change color

Here is the finished product in action:

End result in action

I'm so glad we did this project because it showed me how much I learned from the Arduino unit. I am now able to set up my own circuits and write my own code for Arduino. Now I can make many more great projects!

Monday, October 24, 2016

Arduino Project Reflection

We were working on Arduinos in PLTW for the past few classes. I learned how to control LEDs, pushbuttons, and Servos with an Arduino. I thought it was a really cool experience because I had never really coded before. Through this project, I learned a lot of new code.

First, we started by simply coding the Arduino to count to 10 and compare set values. This part seemed difficult at first but compared to the chapters after it, it was actually super easy. Here is a video of a program that counted down from 10 and said "Blast Off!" 

Blast off code

Next we started working with LEDs. This was kind of confusing initially, but later when I learned how the breadboard is connected I understood the circuit more. That made writing the code for the challenges a lot easier. I learned that the LED must be in a complete loop (connected to a power source and ground) in order for it to work. It must also be inserted the right way, with the anode towards the power source. Otherwise, it won't light up. I feel like I understand programming LEDs very well. Here is a video of code that made one LED light up twice as fast as the other.

LED code

 After LEDs, we used pushbuttons to control the LEDs. As usual I had no idea what I was doing when I started the chapter, but I learned soon enough. I think I understand pushbuttons really well too. Here is a pushbutton controlling some LEDs.

Pushbutton code

 Finally we worked on controlling Servos. I was so lost for most of it because the code is really different that a pushbutton/LED code. I honestly still don't really understand how to control a Servo because halfway through the worksheet, I fred my computer (oops). Also a bunch of people did the same thing so we never finished the Servo worksheet, so I still don't understand how to control them. (And I don't like Servos because they killed my computer. But don't worry because they figured out how to fix it, so it's all good.) Here's the first time Jenna and I got the Servo to move:

Servo code

 Overall, I really liked the Arduino project. I thought it was a lot of fun, and i would love to work with Arduinos in the future (as long as there are no Servos involved). I'm even thinking about using one to control my Maker Faire project. I learned a lot about coding throughout this project. In the future I would like to work with more Arduino accessories such as LCD screens and buzzers.