LogoLogo
  • Welcome!
  • Mission Statement
  • Contributing Guidelines
    • Embed CADs in Wiki Articles
  • VEX Worlds Livestream Archive
    • VEX U
    • V5RC High School
    • V5RC Middle School
    • VIQRC Middle School
    • VIQRC Elementary School
    • JROTC
  • ⚙️Hardware
    • Design Fundamentals
      • Gear Ratios
      • Internal Forces (Stress)
      • Torque
      • RPM
      • Center of Mass
    • Introduction to VEX Parts
      • Structure
        • C-Channels and Angles
        • Fasteners
        • Retainers
        • Gussets and Brackets
        • Bearings
        • Plate Metal and Flat Bars
      • Motion
        • High Strength Components
        • Gears and Sprockets
        • Traction Wheels
        • Mecanum Wheels
        • Omnidirectional Wheels
        • Flex Wheels
    • Robot Decorations
      • Part Dyeing
      • Metal Coloring
      • License Plate Holders
    • Lifts
      • Double Reverse Four Bar (DR4B or RD4B)
      • Four Bar
      • Scissor Lift
      • Six Bar
      • Other Lifts
      • Best Practices
    • Shooting Mechanisms
      • Catapult
      • Flywheel
      • Linear Puncher
    • Drivetrains
      • Tank Drive
      • Mecanum Drive
      • Holonomic Drive
      • Designing a Drivetrain
      • Best Practices
    • Pivots & Joints
    • Pneumatics
      • Best Practices - Pneumatics
    • Intakes
    • Flip Out Mechanisms
    • Defensive Mechanisms
    • Misc. Building Techniques
    • VexU
      • Common Manufacturing Techniques
        • 3D Printing
        • Laser Cutting
      • Custom Manufactured Parts Library
      • Commercial Off The Shelf Parts Library
  • 👑Team Administration
    • New Team Resources
      • Creating The Team
      • Gaining Interest for Robotics Teams
      • Attending Competitions
        • Elimination Bracket
    • Team Dynamics
      • Organization Structure and Longevity
      • Member Allocation and Management
      • How *Not* To Run a Team
    • Team Finances
      • One-Year Team Financial Breakdown
      • Funding Your Teams
    • Hosting Competitions
      • Live Streaming
      • Tournament Manager
        • Competition Electronics
        • Creating a Tournament
        • Tools
          • Field Set Control
          • Connecting Mobile Devices
          • Connecting Raspberry Pis
        • Match Control
          • Inputting Match Scores
          • Inputting Skills Scores
          • Inputting Scores on TM Mobile
        • Displays
        • Alliance Selection
      • Additional Event Partner Resources
    • VexU Organization Management
      • Getting Started in VexU
      • Team / Personnel Management
      • Volunteering At Local Events
  • 📚The Judging Process
    • The Engineering Design Process
      • Test and Refine
    • The Engineering Notebook
      • Segments of the Notebook
      • BLRS2 '23-'24 Engineering Notebook
      • Integrating Inventor Models into Documentation
      • Engineering Notebook Rubric Breakdown
    • The Interview
      • Interview Rubric Breakdown
    • Using Notion for an Engineering Notebook
      • How to Setup a Notebook
      • How to Create Entries
      • How to Export a Notebook
      • Purdue SIGBots Notion Template
        • Game Analysis
        • Identify The Problem
        • Brainstorm Solution
        • Select Best Approach & Plan
        • Build Log
        • Programming Log
        • Testing Solution
        • Tournament Recap
        • Innovative Feature
  • 🖥️VEX CAD
    • CAD Programs
      • Inventor
      • Fusion 360
      • Solidworks
      • OnShape
      • Protobot
    • Making a Chassis
      • Inventor Chassis: The Basics
        • Installation
        • User Interface Overview
        • Dark Mode
        • Assemblies
        • Placing Parts
        • Navigating CAD
        • Changing Visual Style
        • Grounding
        • Connecting Two C-Channels
        • Modifying Existing Constraints
        • Toggling Visibility on Existing Parts
        • Completing Half of the Chassis
          • Inner Drive Channel
          • Bearing Flats
          • Motors
          • Wheels
          • Sprockets
          • Spacers, Washers and Standoffs
          • Spacers Cont.
        • Creating Mid-Plane
        • Mirroring
      • Inventor Chassis: Best Practices
        • File Structure
        • Subassemblies
        • Wheel Subassembly
        • Origin Planes
        • Cross Brace
        • Drive Channels
        • Simple Motor iMates
        • Replacing Simple Electronics
        • Completing Half of the Drive
          • Bearing Flats (Best Practice)
          • Wheels
          • Powered Gear
          • Spacer Boxing
          • Spacers, Washers and Standoffs (Best Practice)
        • Model Browser Folders
        • Mirroring (Best Practice)
        • Model Browser Folder (Right)
        • Main Assembly
      • Fusion 360 Chassis
      • Solidworks Chassis, Chain, and Custom Plastic
    • Remembering The Best
      • 62A Skyrise
      • 400X Nothing But Net
      • 2587Z Nothing But Net
      • 365X Starstruck
      • 62A In The Zone
      • 202Z In The Zone
      • 5225A In The Zone
      • 169A Turning Point
      • 929U Turning Point
      • 7K Tower Takeover
      • 5225A Tower Takeover
      • 62A Change Up
    • Scuff Controller
  • 💻Software
    • Odometry
    • Path Planning
    • Robotics Basics
      • Arcade Drive
      • Tank Drive
      • Joystick Deadzones
      • Curvature (Cheesy) Drive
      • Subsystem Toggling
    • Organizing Code
      • Code Style
      • Code Styling Guide
      • Writing Good Comments
      • Version Control
    • Control Algorithms
      • Bang Bang
      • PID Controller
      • Basic Pure Pursuit
      • Flywheel Velocity Control
      • Kalman Filter
      • Take Back Half (TBH) Controller
      • RAMSETE Controller
    • Competition Specific
      • Operator Control
      • Autonomous Control
    • C++ Basics for VEX Robotics
      • Basic Control Flow
      • Enumerations
      • Namespaces (::)
      • Multiple Files (C/C++)
    • VEX Programming Software
      • PROS
        • OkapiLib
      • vexide
      • Robot Mesh Studio (RMS)
      • EasyC
      • RobotC
      • VEXcode
      • Midnight C
    • General
      • Stall Detection
      • Register Programming
      • Sensors and Odometry in Autonomous
      • Embedded Programming Tips
      • Debugging
      • Bit Shift
      • Bit Mask
      • Autoformatting
      • Finite State Machine
      • Data Logging
    • Object Recognition
      • Red Green Buoy
      • AMS
      • OpenCV
      • OpenNI
    • 🤖AI in VRC: Pac-Man Pete
  • ⚡VEX Electronics
    • V5 ESD Protection Board
    • VEX Electronics
      • VEX V5 Brain
        • V5 Electronics Observations and Issues
      • VEX Controller
      • VEXnet and V5 Robot Radio
      • VEX Battery
      • VEX Motors
    • VEX Sensors
      • 3-Pin / ADI Sensors
        • Encoder
        • Potentiometer
        • Limit Switch
        • Bumper Switch
        • Accelerometer
        • Gyroscope
        • Ultrasonic
        • Line Tracker
        • LED Indicator
      • Smart Port Sensors
        • GPS Sensor
        • Rotation Sensor
        • Vision Sensor
        • Optical Sensor
        • Distance Sensor
        • Inertial Sensor (IMU)
        • 3-Wire Expander
    • V5 Brain Wiring Guide
    • Legacy
      • VEX Cortex
      • Power Expander
      • VEX Motor Controller
      • VEX Cortex Wiring Guide
  • General Electronics
    • General Topics
      • External Boards
        • ASUS Tinker Board S
        • Arduino
        • Beagleboard
        • Leaflabs Maple
        • LattePanda
        • Meadow F7 Micro
        • Netduino
        • ODROID-XU4
        • Pandaboard
        • Raspberry Pi
      • Analog-Digital Converter (ADC)
      • Bit-Bang
      • GPIO
      • I2C
      • Jitter
      • Line Noise
      • List of Tools
      • Output Drive
      • Power Consumption
      • Radius Array
      • Resettable Fuse (PTC)
      • SPI
      • Slew Rate
      • Stalling
      • USART
      • UART
      • 5 Volt Tolerant
      • DC Motor Basics
Powered by GitBook
LogoLogo

This work is licensed under a Attribution-ShareAlike 2.0 Generic License

On this page
  • Single Flywheel
  • Double Flywheel
  • Release Adjusters
  • Refinement / Optimization
  • General Optimization Design Process
  • Design Metrics: variables that can be measured in testing
  • Design Parameters: variables that control the operation of the robot
  • Examples of Flywheel Data Collection
  • Vibration
  • Teams Contributed to this Article:

Was this helpful?

Edit on GitHub
Export as PDF
  1. Hardware
  2. Shooting Mechanisms

Flywheel

Shooting things and busting encoders

PreviousCatapultNextLinear Puncher

Last updated 1 month ago

Was this helpful?

A is a mechanism that is designed to store rotational energy as efficiently as possible. This is done by spinning a wheel or disk at very high speeds with very little friction. In VEX, the main application is to launch objects long distances. They are often chosen over other shooting mechanisms for their ability to shoot at variable distances and with variable forces.

To control any type of flywheel, you have a few options. You can either max out the voltage/velocity, but if you would not like the maximum force of your motor, it is highly recommended to use a PID controller to keep the speed of your flywheel consistent. Without a PID controller, your flywheel will be in a loop of over and undershooting the speed, causing inaccurate results.

Single Flywheel

A single flywheel is by far the most common flywheel used in Vex because of its consistency and accuracy. Single flywheels use a single wheel spinning at high RPMs with a back plate (most commonly Lexan or ABS). The back plate is formed around the wheel and tuned for the right amount of compression (varies based on the object being fired) and cut to the desired launch angle of the object. The biggest benefits of single flywheels over double flywheels are their consistency, reduced use of motors, and distance because of greater backspin. They're consistent because of their back spin with the plate, and only tuning of one motor.

Single flywheels were the dominant design of Nothing But Net. Below is a picture of 1104M in the world finals with a single flywheel (3/6 finals teams in NBN were 1104 with essentially the same robot).

Single flywheels were also common in Turning Point where the main goal was precision and power. Robots like 169A chose flywheels because they are very consistent, and allowed for quick double shots (especially later in the season). 169A’s robot is shown below.

This robot used many mechanics similar to what 1104 did in NBN. The biggest innovation of this robot was the addition of an angle-changing hood. This hood allowed for the robot to shoot 2 flags(of different heights) very quickly and very accurately.

Double Flywheel

A Double flywheel is similar to a single flywheel but instead of a backboard has another rotating wheel. These wheels are often placed horizontally next to each other (but have also been done vertically). They are much more advanced and allow for more tuning, most commonly changing the speed of a wheel to adjust the projectile’s path. When vertical, the wheels can have different speeds that allow for more/less backspin to make the object fly at different distances. Double flywheels are larger, and heavier, but most importantly need more compression because of the reduced contact time with the ball. This means that they take longer to spin up and put more strain on the motor. Double flywheels generally consume two motors, but can also be configured to only use one motor with a clever gearing scheme. In a one motor configuration, a seperate gear train is required to make sure the wheels are spinning in opposite directions.

Below is VCAT Robotic’s nothing-but-net early season 15” VexU robot. It is one of the better-known double flywheels. They did however change the design soon after this to use a single flywheel.

Release Adjusters

Release adjusters deflect the game objects after it exits the flyhweel. They were commanly called angle shifters in Turning Point and bloopers or deflectors in Spin Up.

Examples

Refinement / Optimization

Before spending too much time on refinement, make sure the build quality of the flywheel is satisfactory. A well-built flywheel with no refinement should still be relatively consistent (even if it performs poorly). Because flywheels rotate at such high angular velocities, faults in build quality and programming will be significantly more apparent as they attempt to approach their top speed. Ensure that the structure of the flywheel is properly aligned, bearings are fully seated, and no shafts are bent to establish an efficient flywheel mechanism.

General Optimization Design Process

  1. Test and quantify the metrics of the flywheel.

  2. Change a parameter.

  3. Remeasure metrics.

  4. Analyze results.

  5. Repeat.

Design Metrics: variables that can be measured in testing

Metrics
Symbol (Unit)
Description

Power Usage

P (Watt)

Power (energy/time) used to maintain operational speed

Correlated with friction in flywheel system Generally, the less power usage, the better, since it means that the motor is not working as hard to maintain the speed of the flywheel and will thus be less likely to overheat or have unpredictable behavior.

Start/Spin Up Time

(second)

Time duration between an unmoving wheel and reaching operational speed

Rebound Time

(second)

Time duration between shooting a projectile (or multiple) and reaching operational speed

After shooting each projectile, the rpm will decrease quickly, then pick back up.

Accuracy & Precision

measurement / testing depends on current game

Landing Distance

(m)

Distance from the robot to where the projectile lands correlated with projectile speed

Projectile Speed

(m/s)

Speed at which the game object exits the robot

Design Parameters: variables that control the operation of the robot

Parameters
Symbol (Unit)
Description

META-PARAMETERS

--------

Parameters that affect other parameters

Operational Speed

  • Desired angular velocity for the flywheel to be running at for the match

  • Usually not the max RPM the motor is capable of to reduce power usage, heat, rebound time

  • Optimal velocity to shoot game objects

  • Often called "set point" in program control

Weight

m (kg)

Weight of disc

Dimensions

(meter)

Radius/diameter and thickness of disc

Edge Material

N/A

Material at edge of wheel and surface of backing material

Examples:

  • Anti-slip mat

  • Foam

  • Silicone (flex wheel)

  • Rubber (bands)

PARAMETERS

--------

Variables that affect metrics

Edge Velocity

v (meter / second)

Tangential velocity at edge or disc

v = r x ω

I (kg * meter^2)

For discs in general:

For most usable shapes: I ∝ m*r^2

N/A

Motor controllers often have tuning parameters that change how the motor responds to sudden drops in speed (like when shooting a game object). A properly tuned control algorithm can artificially maximize the angular velocity while it accelerates. This can decrease spin up time.

Overview Article:

Examples:

Compression

N/A

How much does a game element compress when it travels through the flywheel?

For single flywheels, compression increases as the distance between the

backing and the flywheel decreases. For double flywheels, compression increases as the distance between the flywheels decreases.

    1. depends on material meta-parameter

  1. Where elastic materials were used in previous games:

    1. flywheels

    2. hoods in Nothing but Net and Turning Point

    3. game elements in Nothing but Net and Spin Up

    4. backings in Spin Up

  2. Examples

    1. If a 4" Nothing but Net ball (foam) must fit through a a 3.65" gap, it will bend or compress the backing material and/or itself by a total of 0.35".

    2. If a 3" Turning Point ball (plastic) must fit through a 2.8" gap, it will likely bend or compress the backing material by 0.2".

  3. Relations

    1. Higher compression increases precision and decreases projectile exit speed.

  4. Notes

    1. Compression can have varying effects based on build quality.

    2. Too much compression will bend the supports or flywheel shafts

Grip

N/A

How well does the flywheel and backing material hold on to the game element without slipping?

Depends on material meta-parameter Increasing grip increases the spin of the game element.

Examples of Flywheel Data Collection

Vibration

Flywheel balancing is a process that evenly distributes the mass of the wheel to prevent vibration or wobbling during operation. Balancing typically involves adjusting the weight distribution of the flywheel by adding or removing material, or by using counterweights, to achieve equilibrium and minimize vibrations.

  1. Spin the flywheel at a constant input voltage or constant input rpm.

  2. Measure the vibration through the following options. More useful metrics like flywheel speed and power usage can also be measured here.

    1. Use a mobile phone app. Tape the phone to the robot (near as possible to the flywheel) if necessary.

      1. As of 4/21/2024, Vibrometer, Sonic Tools ("VIB Scope"), or PhysicsToolbox ("Linear Accelerometer") on iOS can serve this purpose.

    2. Use the VEX Inertial Sensor. Save the accelerometer data to a csv file / SD card.

    3. Try feeling the vibration with a finger near the flywheel (be safe).

  3. Quantify the vibration by analyzing accelerometer data.

    1. Estimate the amplitude of the vibration waveform.

      1. Vibrometer gives an "Average" reading in the app.

    2. Frequency analysis can also be done through a Fourier or wavelet transform. Shifts in frequency often correlate with shifts in flywheel speed. This depends on the resonant frequencies of the robot.

  4. Add or move a counterweight on the flywheel.

  5. Repeat from step 1 until the the vibration is sufficiently low, flywheel speed is high enough, or power usage is lower, etc.

Example Testing

Below are 3 sample tests of many to show the effect of weight distribution on a flywheel (81P Spin Up)(2/18/23).

Observations
Test #1
Test #2
Test #3

Flywheel Balancing Configuration

6 aluminum nylocks

6 aluminum nylocks and 1 keps nut at hole index 2/6

6 aluminum nylocks and 1 steel nylock at hole index 2/6

Test Duration (s)

25

12

36

Angular Velocity (RPM)

570 (on screen)

3420 (real)

590-600 (on screen) 3540-3600 (real)

590-600 (on screen) 3540-3600 (real)

Power Usage (Watts)

8

7

6-7

Average Acceleration Amplitude (m/s^2)

0.6

0.2

0.2

Teams Contributed to this Article:

  • 81P VEXMEN: Pandemic

This flywheel spun at extremely high RPMs and had the majority of the wheel’s mass on the very outside of the wheel which increased its moment of inertia thus making it easier to fire several balls in succession. This was paired with a ratchet and pawl that allowed the wheel to coast with no motor power and maintain most of its speed.

Both above robots can be found in CAD designs . (Courtesy of Zach from 929)

ω ( or rad/s)

For : 0.3865 [lb in^2], 1.131 *10^-6 [kg * m^2] Increasing moment of inertia increases start up time, decreases rebound time, and increases precision.

Type and Tuning Parameters

- threshold

- kp, ki, kd

- kp, ki

/ Stiffness

When a flywheel , it likely occurs because the flywheel is unevenly balanced or the shafts are not aligned properly or worn out.

Flywheel Balancing Testing Procedure ()

PhysicsToolbox or the VEX IMU allow users to export data to a csv file. From here, there are to estimate the degree of vibration.

VEXMEN: Archangel

(Purdue SIGBots)

⚙️
here
shakes or moves irregularly
example
many methods
91A
BLRS
RPM
Moment of Inertia
V5 Flywheel Weight
Control Algorithm
Flywheel Velocity Controller
Bang Bang
PID
Take Back Half
Elasticity
flywheel
Flywheel Balancing Testing Procedure 3.1.2: Amplitude Estimation from Discrete Waveform ()
https://www.desmos.com/calculator/zeo87wrraj
Cover

91A

Cover

169A

Cover

315G

Cover

96969Y

Cover

BLRS2

Cover

4082B

Speed vs Time
Speed vs Time
Speed vs Time
Speed vs Time
Flywheel Balancing Testing Procedure 2.2: IMU next to flywheel
Test 1 Weight Configuration
Test 1 Vibration Data (App "Vibrometer")
Test 2 Weight Configuration
Test 2 Vibration Data (App "Vibrometer")
Test 3 Weight Configuration
Test 3 Vibration Data (App "Vibrometer")
1104M in Nothing But Net
Team 169A Turning Point
VCAT Early Season Nothing But Net 15" Robot