You are on page 1of 13

instructables

Cirkinemeter: Arduino-Based Circular Kinematics Platform

by gearsngenes

Hello! I'm BACK from a LONG hiatus! perform experiments on rotating, non-inertial frames
of reference. This is mainly because in physics
In this instructable, I introduce my newest DIY classrooms, students face lots of confusion when it
platform that can perform experiments on circular comes to "real" or "fictitious" forces. This is illustrated
kinematics. It utilizes Arduino to measure centripetal in the comic above.
acceleration and angular velocity. Additionally, it
allows students to observe and measure the Coriolis Additionally, the Cirkinemeter serves to provide
force on a classroom scale (instead of planes and students a quantitative data on the Coriolis force in
hurricanes). the rotating frame. Unfortunately, this concept is often
only taught on a qualitative scale in high school
This platform is called the Cirkinemeter (Circular lessons. The Cirkinemeter's turn table platform
Kinematics Meter). It was built to extend the provides a polar grid which students can use to
capacities of its predecessor, the Kinemeter, from generate polar graphs.
linear to circular motion. Like the Kinemeter, the
Cirkinemeter is affordable, portable, and moddable, This instructables focuses on how to build the
thanks to its open source parts. Cirkinemeter from its base parts. A video
demonstration of the platform will be provided at a
The premise of this device is to provide students an later date.
affordable, portable, and moddable platform to

Cirkinemeter: Arduino-Based Circular Kinematics Platform: Page 1


Step 1: Housings 1: the Regions

Region 1 (Pic 1 and 2): This region shows parts experiments to measure centripetal or Coriolis forces
related to securing the motor in place. The large are performed on the large spinning disk (pic 4),
square base (pic 1) attaches to 4 small walls (pic 2), which is marked with several reference radii.
which provide a housing for the motor to rest in. The
small screw mount (top of pic 2) goes on top of the Region 3 (Pic 5): This region shows parts for holding
mount and is used to screw the motor in place so that the IR Receiver. The receiver will detect the
the motor does not jerk. transmitter (which will be on the large spinning disk)
and record the change in time between detections
Region 2 (Pic 3 and 4): This region's parts are for (this is how we measure RPM).
attaching the large spinning disk to the motor. Any

Cirkinemeter: Arduino-Based Circular Kinematics Platform: Page 2


Step 2: Housings 2.1: Constructing the Mount and Base

To construct region 1, we do the following: rectangle holes on the top). The top is placed such
that the engraved line faces the front as labeled on
Pic 1: The side walls are placed into the two parallel the base.
rectangular holes of the base. The walls have bottom
and top notches which are used to click into the Pic 3: The screw mount is then placed on the
base’s holes. The text “Side Walls B----> F” for BOTH engraved rectangle of the top. The two holes on the
side walls should point towards the front as labeled mount are where screws will be inserted to secure the
on the base. The Back Wall is placed behind the side motor.
walls with its text facing the Back as labeled on the
base. Use scraps of plastic for additional support when
assembling.
Pic 2: The top is placed on top of the walls (the three
upper notches of each wall correspond to three

Cirkinemeter: Arduino-Based Circular Kinematics Platform: Page 3


Step 3: Housings 2.2: Constructing the Sensor Stand

To construct Region 3, we do the following:

Pic 1: Place the Sensor stand through its base and weld them together. To keep it perfectly straight up, gently
weld and press scrap pieces of plastic over the hanging ends of the stand (that fill the length of the hole in the
base).

Cirkinemeter: Arduino-Based Circular Kinematics Platform: Page 4


Step 4: Housings 2.3: Modifying the Spinning Disk

We take the IR transmitter holder (the rectangular piece) and weld it to the underside of the large spinning disk,
with the text "ceiling" oriented as seen in the image. The holder should be placed around the large, non-centered
hole of the disk as seen.

Step 5: Motor 1: the Parts

The parts seen in the image all come from a company called ServoCity.

These parts enable the connection of the rotating disk to the rest of the platform.

Cirkinemeter: Arduino-Based Circular Kinematics Platform: Page 5


Step 6: Motor 2: Attaching Disks to the Motor

Next, we take the components, and start assembling adapter.


them.
Pic 4: A spacing disk is placed on top with the holes
Pic 1: The motor is secured to the base and mount aligned. This allows the spinning disk to be screwed
through the clamp. The clamp tightens around the on top without any interference from Pic 2's screws.
motor and its screw holes are secured to the plastic
screw piece. Pic 5: Finally, the rotating disk is placed on top of the
setup and is screwed down with 4-40 screws (1/2
Pic 2: A hub and adapter are screwed onto the inch long). The screws go through all three plastic
motor's spindle. the adapter has eight screw holes disks and are secured by nuts.
parallel to the ceiling of the mount. Four of these
holes are threaded (alternate). This completes the entire turn-table housing for
the Cirkinemeter.
Pic 3: The Connector disk is then screwed to the

Cirkinemeter: Arduino-Based Circular Kinematics Platform: Page 6


Cirkinemeter: Arduino-Based Circular Kinematics Platform: Page 7
Step 7: Electronics 1: the Two Components and Their Purposes

Now, we look at the parts needed for the electronics. * Control the Motor's RPM and direction (CW or
They can be broken into two main categories, the CCW)
Motherboard and Accelerometer Device
* Print the Angular Velocity on a visual display
The Motherboard performs several key functions, as
listed: The Accelerometer device directly measures the
acceleration felt on the rotating disk and publishes the
* Measure the angular velocity (radians per second or data to smartphones.
revolutions per second)

Step 8: Electronics 2.1: Parts of the Motherboard

Here, we look at the parts and steps needed to the Y-axis controls the speed the motor travels at.
assemble the Motherboard.
Pic 4: The TB66 is an electrical component that
Pic 1: The main controller is the Adafruit Feather 32u belongs to a family of circuits called H-bridges. This
4. It is a variation of Arduino and is completely open provides the motherboard the ability to change the
source. This is the chip that handles taking in input direction of the motor.
and publishing data. Adafruit has a series of similarly
sized chips called feathers and wings. They are all Pic 5: The IR Breakbeam sensor is used to measure
interconnectable and perform various tasks. Go here angular velocity. The transmitter () is placed on the
to learn more about it. rotating wheel. When it passes the receiver (), the
receiver then sends a signal to the feather, which
Pict 2: The OLED feather wing is a visual display calculates angular velocity.
which can be placed directly on top of the feather. It
has three buttons labeled A, B, C which connect to Pic 6: To make the connections, I made a customized
the feather pins 5,6, and 9, respectively. PCB which allows people to directly insert the
components into. For those curious about how to
Pic 3: The Joystick acts as the manual controller of make manual connections, a table is given on the
the Motherboard. It can move in two axes, X and Y. next steps.
The X-axis controls the direction of the motor while

Cirkinemeter: Arduino-Based Circular Kinematics Platform: Page 8


Cirkinemeter: Arduino-Based Circular Kinematics Platform: Page 9
Step 9: Electronics 2.2: Assembling the Motherboard

To assemble the motherboard, place the components into the PCB as seen in the image.

For the coding pin connections themselves, see the table below:

Feather pin | TB66 pin

6 | Bin1

9 | Bin2

11 | PWM A and B

Feather pin | Joystick pin

A0 | Xout

A1 | Yout

Step 10: Electronics 3.1: Parts of the Accelerometer

Pic 1: Like the motherboard, the Accelerometer uses Pic 3: The HC-06 is used to publish the data. It
a Feather 32u4 for the main controller. utilizes bluetooth and sends the Acceleration
measurements to a smartphone.
Pic 2: The LIS3DH chip is what directly measures
acceleration in 3 axes (as seen in the image). For Pic 4: The PCB has pins available for all of the other
instance, the chip, if placed on a table, would three components.
measure g m/s/s on the z-axis as a result of gravity
pulling it against the table's surface.

Cirkinemeter: Arduino-Based Circular Kinematics Platform: Page 10


Cirkinemeter: Arduino-Based Circular Kinematics Platform: Page 11
Step 11: Electronics 3.2: Assembling the Accelerometer

Insert the components into the PCB as seen in the image above.

For the coding pin connections themselves, see the table below:

Feather Pin | LIS3DH Pin

SCL | SCL

SDA | SDA

Feather Pin | HC-06 Pin

11 | RX (Bluetooth receive)

10 | TX (Bluetooth Transmit)

Cirkinemeter: Arduino-Based Circular Kinematics Platform: Page 12


Step 12: The Code

All of the code for the Cirkinemeter is available on They run on arduino. Go to here for feather library
Github. See the links below: installation and here for the feather OLED library
installation.
Motherboard

Accelerometer

Step 13: Finally...

Pic 1: Send the Receiver through the stand and the transmitter through the support on the rotating disk. Make sure
they align in height properly

And then Pic 2: YOU HAVE BUILT A CIRKINEMETER!

Great project! I love the idea and I love the cartoon in the beginning. One question though
regarding the IR: if the transmitter is on the rotating wheel, aren't the wires going to be tangled after
a few turns? Have you considered the idea of having the transmitter and the receiver stationary,
and just cutting the IR by an opaque tab placed under the rotating wheel?
You know, I had that same idea at one point and there is nothing hindering about that idea,
whatsoever. However, even in this design, the transmitter's wires are not getting tangled. The
transmitter has its own power supply stuck to the bottom of the disk, so the wires don't extend to a
stationary source. Thanks!

Cirkinemeter: Arduino-Based Circular Kinematics Platform: Page 13

You might also like