Make Your Own Ferris Wheel

by Group11 in Circuits > Arduino

3572 Views, 7 Favorites, 0 Comments

Make Your Own Ferris Wheel

IMG_4277.jpg
IMG_4268.jpg
IMG_4275.jpg

This tutorial will walk you through the process of building your very own model Ferris wheel. This model will be small and compact, so that it can easily fit on a desk top. It will include a microcontroller to turn a stepper motor, and mini benches to simulate the rotating chairs.

This model was built using thin cardboard, but it can also be built using a variety of other available materials, including balsa wood or light plywood, if desired.

Supplies

Measure and Cut the Pieces

IMG_4134.jpg
IMG_4135.jpg
IMG_4138.jpg
IMG_4140.jpg
IMG_4164.jpg
  • Download the provided pattern. Included should be a template for 2 wheels, 1 base bottom, 2 bearing mount frame sides, 2 base supports, and 8 bench sides.
  • Print out the pattern on normal printer paper and cut out each piece.
  • Lay each pattern on top of the cardboard. Trace around the edges of each shape, and cut out each shape. Mark the holes that should be drilled.
  • The large hole on the bearing-mount side of the base measures 1.125" in circumference. The hole for the axle on both wheel pieces can be made with a 1/2" drill bit, and the smaller holes around the edge of both wheel pieces and at the top of the bench seat segments can be made with a 1/4" bit.

Cut Triangle Sections Out of the Wheels

IMG_4148.jpg
IMG_4149.jpg
IMG_4151.jpg
IMG_4152.jpg
IMG_4153.jpg
IMG_4154.jpg
IMG_4158.jpg
IMG_4159.jpg
  • Use the 1/4" drill bit to make the 8 small holes around the outside edge of the wheels. These will be the locations of the bench poles during assembly.
  • At the corner of each wheel window (the triangle shapes), drill a hole using the 1/2" drill bit. Scissors can be used to cut these triangular segments out of the main cardboard wheel segment.

Clean Up the Edges of Each Piece

IMG_4161.jpg
IMG_4162.jpg
  • Trim unruly edges with scissors or a box cutter. This is purely cosmetic, but will create a nice professional finish.
  • Use caution with all blades! Cut carefully so as not to cause injury, and be mindful of the surface beneath the carboard. Otherwise, you may end up with cuts to your table top.

If Desired, Paint the Pieces

IMG_4165.jpg
  • If you want to give your Ferris wheel a more polished look, you may want to give it a nice coat of paint. Most types of paint should suffice, but spray paint may be the simplest way to ensure an even coat and a quick drying time.
  • Note: If you choose spray paint, follow the directions on the can and be sure to paint in a well-ventilated area.

Assemble the Base

IMG_4195.jpg
IMG_4196.jpg
IMG_4197.jpg
IMG_4198.jpg
IMG_4199.jpg
IMG_4266.jpg
  • Add a thick line of hot glue to the bottom edge of the bearing-mount frame side. Line it up along the long edge of the frame base, and glue into place.
  • Add a thick line of glue to the bottom edge of the stepper motor-mount frame side and glue into place along the long edge of the frame base.
  • Finish the base by adding the 2 base supports. Place a thick line of hot glue along the short edge of the base and up along the flattened edge of the frame side. Put the frame support into place and repeat on the remaining short edge of the base.
  • Note: Be sure to work quickly as hot glue sets fast, but be careful not to touch the hot glue or hot tip of the glue gun. You may get burned!

Add Seat and Back to Bench Seats

IMG_4200.jpg
IMG_4201.jpg
IMG_4202.jpg
IMG_4203.jpg
IMG_4204.jpg
IMG_4205.jpg
IMG_4206.jpg
IMG_4207.jpg
IMG_4208.jpg
  • Using your desired medium (popsicle sticks, carboard, cardstock, etc.) and two bench side pieces, construct 8 benches in total. We have used a piece of thin cardboard from a multi-pack of facial tissue packaging which we spray painted white to create the seat and backs.
  • Measure and cut 8 rectangles of your material that are 2.5" by 4.5". From one end, mark the distance of the seat portion. Using your straight edge, fold the rectangle all the way across at that mark. (See images 2 and 3 above.) Place a line of hot from the fold to the opposite edge along the seat portion of the rectangle. Place one bench side piece on the glue and hold for several seconds until the glue holds. Repeat along the other side.
  • With both sides glued to the seat, place two lines of glue on the remaining section of the rectangle. Fold both portions of the rectangle towards each other and place the bench sides on the glue lines. Hold a few seconds until the glue holds. Repeat this until all 8 bench seats have been constructed.
  • Cut 8 3.25" pieces from the 1/4" dowel rod. Thread these through both 1/4" holes in the bench sides. (See image 9 above.) Note: To ensure that the benches will swing freely as the Ferris wheel rotates, twist the dowel rods around in the holes to make the holes slightly larger than the dowel rods.

Install Bench Seats

IMG_4209.jpg
IMG_4210.jpg
IMG_4214.jpg
IMG_4216.jpg
  • One at a time, mount the benches by sliding the 1/4" dowel into one wheel then into the other. Ensure all benches face the same direction. When all 8 benches have been installed, apply hot glue on the outside end of each 1/4" dowel. (See image 4 above.) This will prevent the wheel section from falling apart.

Install Bearing and Prep Axle

IMG_4263.jpg
IMG_4264.jpg
IMG_4267.jpg
  • Cut the 1/2" dowel into a piece long enough to reach from the stepper motor, through both wheels, and through the bearing-mount frame side. Leave enough length so that a small amount of dowel sticks out of the far side of the bearing. This will help to stabilize the axle and prevent it from falling out of the bearing.
  • Use a 3/16" drill bit to make a shallow hole (roughly the depth of the stepper motor shaft) in the end of the dowel rod opposite to the bearing. (See image 2 above.)
  • Sand all sharp edges and thread the axle through the bearing-mount frame side and into the wheel.

Install the Wheel

IMG_4268 (1).jpg
IMG_4269.jpg
IMG_4270.jpg
IMG_4276.jpg
  • Thread the axle through the wheels and pop the bearing into the bearing-mount frame side. Press firmly from bearing mount to stepper motor to ensure a good fit. The motor shaft should fit snuggly into the axle.
  • Note: The code provided rotates the motor shaft in a clockwise direction as you look at the motor shaft. Therefore, the motor should be installed on the left, the seats should be facing towards you, and the bearing should be on the right. (See image 4 above.) This will give the most realistic movement.

Install the Motor

IMG_4271.jpg
IMG_4276.jpg
  • The stepper motor can be mounted by pushing two thumb tacks through the mounting brackets on either side of the motor.
  • Note: Ensure that the wheel sits level before mounting the motor.

Complete the Connections

IMG_4272 (1).jpg
IMG_4274 (1).jpg
Ferris Wheel schematic.png
  • Connect the GND and 5V pins from the Atmega2560 to the appropriate pins on the driver module.
  • Connect IN1-IN4 to PIN22, PIN23, PIN24, and PIN25 of the Atmega2560.
  • Connect the 5-wire bundle from the stepper motor to the driver module.

Hardware Setup

20220422_201029.jpg
  • Using the USB cable, connect your computer to the microcontroller to allow the code to be uploaded and transferred correctly.

Arduino Code

  • This project uses code we developed using Microchip Studio. The Microchip Studio software can be downloaded for free here.
  • Open Microchip Studio
  • Start a New Project
  • Note: Be sure to set your device to Atmega2560 when asked.
  • Copy and paste our provided code into Microchip Studio (either from the code block or the main.c file attached below)
  • Build the solution by hitting "F7" on your keyboard
  • Add your Atmega2560 to upload the code by clicking on Tools->External Tools
  • Program the Atmega2560 and watch your Ferris wheel come to life!
#define F_CPU 16000000UL		//defines clock for time delays


//include files
#include <avr/io.h>
#include <util/delay.h> //allows time delay function


int main(void)
{

    io_init(); //initialize ports

CW(); //call motor function

    while (1) 
    {

    }
}


void io_init(void)
{
DDRA = 0xFF; //set PORTA as output
PORTA = 0x00; //turn all output off
}
void CW(void)
{
uint8_t FullCW[4] = {0x03, 0x06, 0x0C, 0x09}; //steps of Wave mode

while((PINA & 0x02) == 0) //while PINA1 equals 0
{
for (uint16_t j = 0; j < 4; j++)
{
PORTA = FullCW[j]; //use array to rotate clockwise (as you look at motor shaft)
_delay_ms(4); //4ms delay
}
}
}

Downloads

Enjoy Your Hard Work!

See a video of the finished product below!