Improbable Earth Society
1
1
Yarmouth High School
1764C
00/00/0000
5/12/2023
v1.0.8.29.22
Note: This Notebook was designed to be viewed digitally. The Print Version may have broken features, such as broken links, and videos. The Digital Version can be viewed through the QR code.
3 Team bios 05/16
6 Game Analysis 05/16
17 Research: Potential Existing Solutions 06/06
28 Prototyping: Manipulating Game Elements June 9th
33 Narrow It Down: Making Initial Decisions June 13th
43 CAD Design 1 June 16th
53 CAD Design 2 July 2nd
62 CAD Design 3 August 7th
70 Build Phase 1 September 5th
81 Testing and Tuning 1 October 5th
88 Code Phase 1 October 26th
95 Autonomous 1 November 7th
102 Scrimmage Result & Debrief November 16
104 York Tournament Debrief November 18
108 Build and CAD phase 2 November 21
115 Code phase 2 December 5th
124 Yarmouth Tournament Debrief December 17
130 Cad, Build, Code, & Test Phase 3 January 4th
135 York Tournament Debrief January 14th
149 Cad and Build Phase 4 January 25th
165 Code Phase 4 February 13th
Table of Contents
Team Profiles
Antonio, Ian, Nat
5/16/23
3
Nat Krah
Grade: 12th
Experience: 6+ years
Roles: Prototyper, Builder, Drive team, Notebooker, CAD
Other activities: Tennis, Violin
Ian Gilbertson
Grade: 12th
Experience: 4+ years
Roles: Programmer, Builder, Drive Team, CAD
Other activities: Technical Theater, Maker
Antonio Velazquez
Grade: 10th
Experience: 3 years
Roles: Prototyper, Builder, Notebooker, Programmer
Other activities: Swim team, Golf team, piano, jazz band
Team Profiles
Ryan, Abe, Reid, Antonio, Ian, Nat
5/16/23
4
Abe Fortin
Grade: 9th
Experience: 3 years
Roles: Driver, Builder, Notebooker, CAD
Other activities: Graphic Design, 3d Design, Video games, Jazz Band (Alto/Tenor Saxophone)
Ryan Kew
Grade: 9th
Experience: 2 years
Roles: Prototyper, Building, Notebooker
Other activities: Piano, Guitar, Jazz Band (Electric Bass), Video games
Reid Garofoli
Grade: 9th
Experience: 3 years of robotics
Roles: Programmer, Builder, Notebooker
Other activities: Sailing, Golf
Header
N/A
5/16/23
6
Understanding the Problem:
Game Analysis
Prohibited Actions
Reid Garofoli / Abe Fortin
5/16/23
7
NOT ALLOWED:
GAMEPLAY:
Prohibited Actions cont.
Reid Garofoli / Abe Fortin
5/16/23
8
NOT ALLOWED(continued):
TEAM:
ROBOT:
Max Scoring
Antonio Velazquez
5/16/23
9
Ideas & Game Strategy
Reid Garofoli
5/16/23
10
Possible ways to score
Triballs in goal
Shoot them in a launcher
Large wall to push them
Sweeping arm
CATAPULT
Lasso
Scooper
Conveyor belt
Pneumatic puncher
Push it through triangle space
Flicking them
Open the top of net (flip it out) then launch/place triballs in through the open top, or roll triballs up the newly created ramp
Tribals in offensive zone
All of the ideas in Triballs in goal
Roll it down a ramp from the match load zone
Push it
Drive over, and drop it in..
Elevation
Climb (4 bar, dr4b, chain bar, wrap w/ wheels)
2 arm (crab style - ask abe what he means)
Scissor lift from bottom of robot (again ask abe what he means)
Climb up flip flop style
Finger-trap-like auto-tightening manipulator
Two-Claw system in front of robot
Ideas chosen to analyse in bold
What happened, Takeaways, and Attendance
Ian, Nat, Antonio, Reid, Ryan, Abe
6/1/2023
11
Names | Ian | Nat | Antonio | Abe | Ryan | Reid |
Prototype | | | | | | |
Notebook | | | | | | |
Build | | | | | | |
Program | | | | | | |
Design | | | | | | |
June 1, 2023
Notes/Ideas/Big takeaways:
Key:
Elevation Analysis
Ian Gilbertson
6/1/23
12
Elevation Analysis
The rules for scoring elevation present some unique situations. Several situations arise because ties round up for both tied robots. The following are some examples of how elevation is not a simple matter; all these situations start with the arrangement seen in fig 1, where Blue wins by 3 points.
Credit to 7996B on the G2M for the initial discovery of this idea.
fig 1.
fig 2.
fig 3.
fig 4.
Skills Analysis
Ryan Kew
6/1/23
13
Skills Analysis
Skills tiebreakers at events:
Autonomous Analysis
Abe Fortin
6/1/23
14
Autonomous Analysis
In the autonomous period, each robot has to stay in their quarter of the field. This makes the solo AWP hard to achieve because a triball needs to get from the match load zone into the teams goal.
This means every alliance will need to meet at the mid barrier and pass the triball to each other, or have a mechanism to score across the barrier.
This makes AWP hard because most robots won’t have a standardized pass off, which means scoring from across the barrier, if possible, is very important.
Autonomous Analysis cont.
Abe Fortin
6/1/23
15
To sum it up, there will be three autons:
Score as much as you can in your teams goal, completely ignoring your alliance member
Get as many match loads into the game as possible
Focus on completing your side of the AWP, and trying to perform a passoff of the match load
This means that we will need to leave ample time for autonomous coding, and during competitions scout out our teammates to find the best fit auton.
Autonomous Analysis cont.
Future Planning
Ian, Nat, Antonio, Reid, Ryan, Abe
6/1/2023
16
What we want to do
What we want to do:
Research:
Potential Existing Solutions
What happened, Takeaways, and Attendance
Ian, Nat, Antonio, Reid, Ryan, Abe
6/6/2023
18
Names | Ian | Nat | Antonio | Abe | Ryan | Reid |
Prototype | | | | | | |
Notebook | | | | | | |
Build | | | | | | |
Program | | | | | | |
Design | | | | | | |
June 6, 2023
Notes/Ideas/Big takeaways:
Key:
Scoring Strategies
Antonio Velazquez
6/6/2023
19
Scoring Strategies
Triball In Goal
Strategy #1
Push Triballs in with a flat surface
Description:
Use a flat side of the robot to push multiple triballs in at once.
Pros:
Cons:
Strategy #2
Push Tribals in with Arm
Description:
Use an extendable arm to sweep triballs into a goal
Pros:
Cons:
Scoring Strategies
Antonio Velazquez, Nat Krah
6/6/2023
20
Triball in Goal (cont.)
Strategy #3
Shoot triballs in with a catapult
Description:
Build a catapult to shoot triballs in the goal from farther distances
Pros:
Cons:
Strategy #4
Shoot triballs in with a
Puncher
Description:
Launch the triballs with a puncher
Pros:
Cons:
Strategy #4
Shoot triballs in with a catapult
Description:
Build a catapult to shoot triballs in the goal from farther distances
Pros:
Cons:
Scoring Strategies
Antonio Velazquez, Nat Krah
6/6/2023
21
Strategy #1
Roll it down a ramp from the match load zone
Description:
Build a foldable and unfoldable ramp that we can roll triballs off of from the math load zone
Pros:
Cons:
Strategy #1
Climb with a 4 bar
Description:
Climb up the pole using a 4 bar and a claw
Pros:
Cons:
Strategy #4
Shoot triballs in with a catapult
Description:
Build a catapult to shoot triballs in the goal from farther distances
Pros:
Cons:
Triball In Offensive Goal
Elevation
Scoring Strategies
Antonio Velazquez, Nat Krah
6/6/2023
22
Elevation(cont.)
Strategy #3
Scissor lift from bottom of robot
Description:
Have a scissor lift on the bottom of the robot which deploys and lifts the robot up
Pros:
Cons:
Strategy #4
Two-Claw system in front of robot
Description:
Use a claw that moves up and another claw to grab the pole, so the robot can climb up.
Pros:
Cons:
Scoring Strategies
Antonio Velazquez, Nat Krah
6/6/2023
23
Drivetrains
Strategy #1
4-wheel tank drive
Description:
4 motors, 4 wheels: 2 traction wheels in back, 2 omni wheels in front
Pros:
Cons:
Strategy #2
6-wheel tank drive
Description:
4 motors powering 6 wheels positioned in a straight line,
Pros:
Cons:
Scoring Strategies
Antonio Velazquez, Nat Krah
6/6/2023
24
Strategy #4
X-Drive
Description:
4 omni-wheels positioned at 45% angles to allow the robot to move in all directions
Pros:
Cons:
Strategy #3
H-Drive
Description:
4 omni-wheels with a central horizontal omni-wheel which can move the robot side to side
Pros:
Cons:
Drivetrain(cont.)
Scoring Strategies
Antonio Velazquez, Nat Krah
6/6/2023
25
Strategy #5
Mecanum
Description:
Use independently powered mecanum styled wheels to allow for strafing
Pros:
Cons:
Drivetrain(cont.)
What happened, Takeaways, and Attendance
Ian, Nat, Antonio, Reid, Ryan, Abe
June 8
26
Names | Ian | Nat | Antonio | Abe | Ryan | Reid |
Prototype | | | | | | |
Notebook | | | | | | |
Build | | | | | | |
Program | | | | | | |
Design | | | | | | |
June 8, 2023
Notes/Ideas/Big takeaways:
Key:
What happened, Takeaways, and Attendance
Ian, Nat, Antonio, Reid, Ryan, Abe
June 9
27
Names | Ian | Nat | Antonio | Abe | Ryan | Reid |
Prototype | | | | | | |
Notebook | | | | | | |
Build | | | | | | |
Program | | | | | | |
Design | | | | | | |
June 9, 2023
Notes/Ideas/Big takeaways:
Key:
We have decided to discontinue writing these update pages because they actively take away from the goal of the notebook, which is to record our design process and decisions and not become a session-by-session diary.
Prototyping:
Manipulating Game Elements
Manipulating Game Elements - General Disclaimer, Elevation
Nat, Ian, Antonio
June 8th
29
This is an over-centered claw that should be able to clamp onto the elevation bar (we haven't gotten our field yet). Once the bars are pulled vertically, it is almost impossible to unlatch them by pushing on the bars. This means that once this is latched onto the bar, it should be nearly impossible for us to fall off.
Note this photo was taken when the bars were in the locked position
Elevation
General Disclaimer
With two seniors on the team, we have extensive experience with drivetrains and lifting mechanisms. This means we will not be building prototypes for those subsystems. Instead we will focus our time on triballs manipulation and holding the elevation bar as these are specific to the game
The clamping
bars
Manipulating Game Elements - Launching
Ian Gilbertson, Nat Krah
June 8th, 9th, 12th
30
Triball Launching (Catapult)
Manipulating Game Elements - Launching
Ian, Nat, Abe
June 8th, 9th, 12th
31
Triball Launching (Puncher)
Our finding:
We found that with similar rubber bands and power it took substantially more torque to pull back and fire the puncher than the catapult. However, both of these systems had enough power to easily launch the triball across the field, and possible into the goal. Additionally, we found that the position of the triball in the catapult heavily impacts its speed, landing area, and how it reacts after it lands. In contrast, the puncher was a lot more consistent
Manipulating Game Elements - Intaking
Abe
June 12th & 13th
32
Triball Intaking
This is our prototype of an intake. It uses two 200 rpm 5.5-watt motors and pulls the tribals in extremely quickly and efficiently. However, it struggles to pull a triball up and over the back bar. Something that should be fixed by placing a piece of sloped polycarbonate up and over the bar.
Narrow It Down:
Making Initial Decisions
Making Initial Decision - Size
Nat, Ian, Abe
June 13
34
Robot Height
| Versatility | Complexity | Time to build | Total |
Total points per section | 15 | 7 | 6 | 29 |
Under goal (6”) | 15 | 3 | 4 | 22 |
Under elevation bar (11”) | 10 | 5 | 5 | 20 |
Under 18” | 5 | 7 | 6 | 18 |
Why this is important
This year's game had two areas a robot might want to go under: the crossbar and the goal. These require the robot to be under 11 and 6in, respectively. Being able to fit under the goal allows for easy descoring of triballs, the most valuable objects, and fitting under the crossbar gives more options when crossing the field.
Meaning of each section
Versatility
This measures the robot's roles and how the height impacts these roles.
Complexity
This measures how complex the subsystems of the robot need to be in order to fit within our size constraints.
Time to build
This is similar to complexity as it is dependent on it. However, it is less important as we plan to do most of the design work in CAD.
Making Initial Decision - Size
Nat, Ian, Abe
June 13
35
Robot Height cont.
Scoring Each section:
Under 6 inches
Being under 6 inches allows us to easily fit underneath the goal and the bar, giving us tons of versatility. It will, however, be challenging and time-consuming to fit everything under 6 inches.
Under 11 inches
Being under 11 inches allows us to go under the crossbar, but not the goal. This means that it will be harder to descore triballs but not impossible. Additionally, it will be much easier to fit everything under 11 inches.
Under 18 inches
This will be the least versatile robot, as we can only cross the field over the center bar. However, it will be the easiest and fastest to construct.
Our decision:
We’ve decided to start designing the robot under 6 inches because it will give us the versatility of easily descoring triballs. If it becomes too complex or time-consuming to fit everything inside, we will expand to 11 inches.
Making Initial Decision - Drive Trains
Antonio
June 13
36
Drivetrain
| Complexity | Traction | Maneuverability | Total |
Total points per section | 5 | 10 | 10 | 30 |
4-Wheel tank | 5 | 5 | 5 | 20 |
6-Wheel Tank | 4 | 10 | 6 | 24 |
H-Drive | 3 | 2 | 10 | 18 |
X-Drive | 3 | 4 | 10 | 20 |
Mecanum | 3 | 4 | 10 | 20 |
Why this is important
Everything is build off of the drivetrain, which means that it is imperative that we make an informed decision before blindly building as it is almost impossible to change once we have a fully build robot.
Meaning of each section
Complexity
This measures how complex the drive is it to properly build with little friction and code it.
Traction
This measures how well the robot can push and resist being pushed.
Maneuverability
This measures how easily it is to maneuver the base, and what axis it can maneuver on.
Making Initial Decision - Drive Trains
Antonio
June 13
37
Drivetrain cont.
Scoring Each section
4 wheel tank
A four-wheel tank drive is the simplest and easiest drive train. Depending on the configuration of the wheels (four transactions, two tractions and two omnidirectional, or four omnidirectional), a four-wheel tank drive can have excellent traction but low maneuverability or vice versa. It can, however, not have both.
6 wheel tank
A six-wheel tank drive is more complex because it requires gears. However, it overcomes the shortcomings of the four-wheel drive train
by having one center traction wheel and two omnidirectional wheels on the outside. Giving it a greater maneuverability and traction rating.
H-Drive
This is similar to the four-wheel omnidirectional tank drive, except it has a center wheel for strafing, making it highly maneuverable but easier to push around.
X-Drive
This is similar to the four-wheel omnidirectional tank drive, except each wheel is rotated 45 degrees, allowing the robot to straf. Since all four motors work together, it is harder to push around, but it is still weaker than a drive with traction wheels.
Mecanum
This is a four-wheel drive with mecanum wheels, allowing the robot to straf. It has similar power as an X-drive, except it has more space in the front and back of the drive. This also means it has less side-to-side traction than a base with traction wheels.
Our decision:
We’ve decided that the 6-wheel tank is the best drivetrain for this competition because it is fairly simple to build, has excellent side-to-side traction (which will be especially important in this game when shooting match loads), and decent maneuverability.
Making Initial Decision - Triballs
Nat
June 14th
38
Scoring Triballs
| Complexity | Efficiency | System Integration | Total |
Total points per section | 5 | 15 | 10 | 35 |
Flat Surface | 5 | 8 | 10 | 28 |
Extendable Arm | 3 | 12 | 7 | 25 |
Catapult | 2 | 15 | 5 | 23 |
Puncher | 2 | 15 | 7 | 25 |
Why this is important
Triballs can yield the most points in a game, making them the most important element in a game. Having the ability to consistently and efficiently score triballs is essential. Additionally, most subsystems require lots of space, meaning we must plan around them when building.
Meaning of each section
Complexity
This measures how complex the scoring system is
Efficiency
This measures how efficient this scoring system is at completing its desired task
System Integration
This measures how easy it is to integrate the scoring system into the rest of the robot
Making Initial Decision - Triballs
Nat
June 14th
39
Scoring Triballs cont.
Scoring Each section:
Flat Surface
Since this is a single piece of flat metal, it is the simplest system and the easiest to incorporate. However, it requires us to drive around and place ourselves in the best orientation to push the tribals in, making it inefficient.
Extendable Arm
This holds onto triballs, making it significantly easier and efficient to use. However, since it needs to flip out, it is inherently more complex and needs to be integrated with the other subsystems.
Catapult
This can shoot triballs across the field, giving it great versatility and efficiency. However, it needs to be powered, have a loaded mechanism, and fit with other subsystems, decreasing its complexity and system integration points.
Puncher
This can shoot triballs across the field giving it great versatility and efficiency. Similarly to the catapult, it needs to be powered, have a loaded mechanism, and fit with other subsystems, decreasing its complexity and system integration points. However, since it is smaller, it gets more system integration points.
Our decision:
Since scoring triballs is the most crucial aspect of our robot, we decided to combine several of these systems. First, we combined the flat surface and the extendable arm into one mechanism. We would have two lengths of c-channel along our drive that could deploy to double the width of our robot, making it easier and more efficient at scoring triballs. Second, we decided to use a catapult, even though it scored fewer points. It will be lower when pulled back, allowing us to be under 6 in, and it should have a similar fire rate as a puncher.
Making Initial Decision - Elevation
Ian
June 15th
40
Elevation
Why this is important
This is important because elevation mechanism require a lot of torque and space. If we do not make an informed design now, we might need to restructure our robot completely.
Meaning of each section
Complexity
This measures how complex the elevation mechanism is
Size
This measures how large the elevation mechanism is
Speed
This measures how fast the elevation mechanism gets the robot to its maximum height.
Height
This measures how high the elevation mechanism gets the robot.
| Complexity | Size | Speed | Height | Total |
Total points per section | 10 | 15 | 5 | 10 | 40 |
4 Bar | 8 | 13 | 5 | 5 | 31 |
DR4B | 2 | 4 | 5 | 10 | 21 |
Wheels | 6 | 7 | 4 | 10 | 27 |
Two claw system | 3 | 6 | 2 | 10 | 21 |
Making Initial Decision - Elevation
Ian
June 15th
41
Elevation cont.
Scoring Each section
Four-Bar
Four-bars are simple, compact, and allow for decent height.
DR4B or Double reverse four-bar
A DR4B is two four-bars attached end by end and geared together. They are highly complex and take up a lot of horizontal and vertical space. However, they can reach very high very quickly.
Wheels
These would allow us to clamp onto the bottom of the elevation pool and “drive” up it. They would be complex to keep traction along the poll and have enough traction to grip it.
Two Claw System
These would be complex to build, align, power, and time-consuming to climb but would allow us to climb theoretically any high poll.
Our decision:
We’ve decided to use a four-bar because it is the least mechanically complex, the smallest, and is as fast as everything else. It will not get us to the top of the poll, which could become a problem later in the season, but for now is fine.
Planning Ahead
Nat, Ian, Antonio, Ried, Abe, Ryan
June 15th
42
Next Steps/Timeline
CAD Design 1
Robot Cad Design 1 - Drivetrain: Define problems
Nat
44
June 16
Drivetrain Design: Define Problem
Goal:
Solution Requirements:
Solution Goals:
Cad Design 1 - “Standard Robot” Description
Ian Gilbertson
June 16
45
“Standard” Robot
The v5 Clawbot is the standard benchmark robot. Most robots in Maine have a similar drivetrain to the v5 Clawbot, so its driving qualities provide a good stand-in for other teams we may face.
By the Numbers:
The v5 Clawbot
Cad Design 1 - Brainstorming Solutions
Ian Gilbertson
June 16
46
Drivetrain Design: Brainstorm Solutions
Goal:
Plan:
Cad Design 1 - Drive Designs
Ian Gilbertson
June 17
47
Drive Designs
UP
Pros:
Cons:
Extra gear to attach motor
4 inch wheels; 343 rpm
Cad Design 1 - Drive Designs
Ian Gilbertson
June 17
48
Drive Designs
Pros:
Cons:
4 inch wheels; 360 rpm
Cad Design 1 - Drive Designs
Ian Gilbertson
June 17
49
Drive Designs
UP
Pros:
Cons:
2 inch wheels; 500 rpm
Cad Design 1 - Drive Designs
Ian Gilbertson
June 18
60
Drive Designs
UP
Pros:
Cons:
4 inch wheels; 400 rpm
Cad Design 1 - Drive Designs
Ian Gilbertson
June 18
51
Drivetrain Design: Final Selection
Goal:
By the Numbers:
Justification
Robot Cad Design 1 - Catapult
Ian Gilbertson
June 19
52
Launcher: Catapult
Goal:
Design Requirements:
Decisions:
After considering the prototypes we made earlier in the summer, we believe a catapult will best suit our needs. Although slightly less accurate than the puncher, the higher arc from a catapult will ensure the triballs make it over the barrier.
The common gear ratio of 12:60 with a 36t slip-gear will be adequate for our requirements. Powered by two 100 rpm 11w motors, this ratio will allow for one shot every second while pulling back with 11N of force
CAD prototype:
Thrown together as more of a proof of concept and sizing, this CAD model demonstrates the feasibility of this design.
CAD Design 2
Robot Cad Design 2 - Puncher
Ian, Nat
July 2
54
The Puncher
Design Goals:
CAD Prototype:
The puncher on the right is a preliminary design, and the one on the bottom is a final design. They both use one 11-watt red motor to power a 1:3 gear ratio rack and pinion. The 36-tooth gear has a screw head ratchet, which allows us to pull the 36-tooth gear off the rack when the motor moves in reverse. This allows us to vary the power of the puncher depending on how far we pull it back. The puncher should be able to pull back every and fire every 1.5 seconds (roughly estimated using rotations per second along rack gear; physical testing required for exact number).
prototype
Final design
Robot Cad Design 2 - Wings
Nat
July 4
55
The “Wings”
Goal:
Design constraints:
CAD prototype:
Two 11.5 inch c-channels on either side of the base that is rubber banded forward and held back with a piece of string in our drive channel gears. When the base moves forward the string is released and the wings are pulled forward by the rubber bands. These will increase the width of the robot to 35.5 inches.
This is more of a proof of concept
and preliminary design demonstrating
that this type of design can work
within the given space.
Rubber Bands
String
C-Channel
Robot Cad Design 2 - Blocker
Nat
July 8th
56
These wings and vertical blocker automatically fold out at the beginning of the match. The wings allow us to push double the triballs without pneumatics or motors. The vertical blocker enables us to block incoming shots, which we could not block due to our size.
The Vertical Blocker
Goal:
Design constraints:
CAD prototype:
Two 17-inch 1x L-Channel on the inside of the base are held back and deployed similarly to the wings. These will increase our height to 20 inches. Height can be increased by adding a second stage but will complicate folding under 6 inches and fitting within the starting size.
Non-slip mat
1x L-Channel
Wings
Robot Cad Design 2 - Elevation
Antonio, Abe, Nat
July 10th
57
Elevation
Goal:
Design constraints:
CAD prototype:
A double reverse four bar (image on the left) on each side of the base that holds a passive claw (image on the bottom). This will be powered by the base when a pneumatic piston fires and connects the lower four bars to the drive gears. It has a maximum height of 30 inches, which means we will be able to reach a G or H tier depending on how much the base tilts.
The passive claw starts in the position it is in the image, and then when it is pushed into the pole the outer c-channel closes around the pole.
Pole comes in this direction
Outer c-channel
Robot Cad Design 2 - Intake
Nat
July 14th
68
Intake Designs
Goal:
Design constraints:
We came up with a total of five designs. These first three use two flex wheels, a single 5.5-watt motor, and a chain sprockets together. However, since the chain doesn’t change direction, the wheels run in the same direction and will only cause the triball to spin and never pull it in.
Robot Cad Design 2 - Intake
Nat
July 14th
69
Intake Designs cont.
The following designs use a set of gears that change the direction of the chain, so the wheels spin in opposite directions. The design on the right is our first iteration. This design was bulky and couldn’t fit within the size constraints. The second iteration was much smaller and allowed the puncher to shoot over it. However, when we built this prototype the 5.5-watt motor didn’t have enough power to intake a triball.
Built intake
Robot Cad Design 2 - Intake
Nat
July 30th
60
Intake Designs cont.
We move away from the single 5.5-watt motor and have two dedicated motors on each side. This design has an extra set of wheels, which gives more control of the tribal and brings it closer to the puncher.
Robot Cad Design 2
Ian, Nat, Antonio, Reid, Ryan, Abe
August 4th
61
This Robot’s Shortcomings
While we were planning for this robot to do almost everything on the field we realized that with this current design, it would not be possible.
For these reasons, we are planning to move onto a completely different design with an all-new base, launching strategy, blocking method, and wings
CAD Design 3
Robot Cad Design 3 - The Plan
Ian, Nat, Antonio, Reid, Ryan, Abe
August 7th
63
Our new plan
We realized that triballs are the most important game element. We are redesigning our robot centered our triball manipulation and no elevation.
Goals:
Our initial plan:
Robot Cad Design 3 - Base and Transmission
Nat, Ian
August 10th
64
Initial Planning of The Base and Transmission
Base:
The first step in designing this base is to finger out the max speed, number of motors, how many and of what type wheels, the gear ratio, and how large it is.
We have already identified that we don’t want the max speed of the base to be over 80 in/sec, but still faster than most bots (200 rpm direct drive with 4-inch wheels is ~40 in/sec); The gear ratio needs to take an input of 200 rpm; The wheels need to have a diameter of 4 inches or less; a width and height of 14.5 (in our experience odd size bases are the best for lining things up, something under 16 inches is best for room on the sides, a perfect square makes turning and lining stuff up the best). We want at least three wheels on each side, omnidirectional on the outside and traction on the inside.
Transmission:
Fitting everything in such a small place means the transmission will need to be as low profile as possible. We want it to fit in between the motors and the drive channels on the back half of the robot. It should not extended above the motors as that area will be dedicated to the catapult.
We will have to build several prototypes to find which mechanism from transitioning power is the safest (smallest chance of getting stuck in neutral or powering both systems)
After some research, we have found two designs that might work. One that has a gear that shifts between being meshed with the drive and the catapult. The other has a gear that will have a standoff sticking out on either side, it will push those standoffs into other gears to transfer the power.
Robot Cad Design 3 - Base
Ian Gilbertson
August 17th
65
Drivetrain Design (reprise)
Goal:
Previous Design Shortcomings:
Decisions moving forward:
Using the design considerations from deciding on our first drive, we will shift back to the previous iteration (400 rpm on 3.25in wheels). This design fulfills every condition stated in the previous slide, notably being faster than most drives, using 200 rpm input allowing for one 11-watt and one 5.5-watt dedicated per side, more ground clearance, sized correctly, and using omni wheels on the outside and traction on the inside.
1/16 inch gap
New Design
Robot Cad Design 3 - Transmission
Ian Gilbertson
August 20th
66
The Transmission
Goal: Design and create a system to allow one set of motors to power multiple systems. �
Requirements:
Brainstorming:
Prototyping:
Final Design:
Robot Cad Design 3 - Transmission
Ian
August 18th
67
Two different designs for sliding gears to engage with the teeth of other gears (not shown)
Using standoffs to transfer power, allowing for outputs to be collinear
Robot Cad Design 3 - Wings
Nat
August 19th
68
Our Pneumatic Powered Wings
Straying from our last design of wings, these wings will be powered by pneumatic. After some discussion, we realized that it would be incredibly difficult to drive with our wings constantly out:
As seen in the photos below, these wings can completely fold up along the side of the base. This means our outer diameter will be less than 18 inches and we will have an easier time doing everything listed above.
Additionally, when extended these wings will move in the piece of 1x and lock the wings in place. Similar to the design of 21417A RoboCause. Locking wings allow us to push large amounts of triballs into the goal without the possibility of them folding in and being useless
Piece of 1x
Robot Cad Design 3 - Intake
Nat
September 2nd
69
Placing the Intake
With the rest of the robot CADed, we tried to place the old intake onto the robot. However, it couldn’t pull the triballs to the catapult, and the flipping mechanism wouldn’t fit while keeping the intake under 6 inches. We plan to start building the rest of the base and try and fit it together when it’s built.
Build Phase 1
Robot Build Phase 1 - Base
Nat, Ian, Abe, Ryan
September 5, 2023
71
The Base
We started to construct the base by milling our high-strength 72nd tooth gears to fit within our extremely tight tolerances (image 1).
While one team member milled, the others followed the CAD and started constructing the rest of the base (image 2).
When building the base, we realized that the support structure of the wheels allowed for more friction and improperly supported the sides. Lower friction means our motors have an easier time moving the robot, which is especially important with a transmission that will remove over half of the power from the drive.
First base design (image 2)
The 72-tooth gears on the Bridgeport manual mill
(Image 1)
Robot Testing and Tuning 1 - Base
Nat, Ian, Reid, Abe, Ryan
September 7, 2023
72
The Base
To greatly reduce the amount of friction in the base we changed the configuration to include a nylock screwed down all the way, locking the screw in place. This means that when the wheel rotates it will only move the wheel and not the screw, and only have to face the friction from the plastic insert on the screw. Metal on plastic has a much lower coefficient of friction than metal on metal.
Additionally, the configuration allows the screw to securely hold onto the opposing piece of metal, meaning there's a lower chance of it moving side to side and creating more friction.
Our wheels freespin
Short screw
Long screw
Long screw
Nylock
No nylock
New Design
Old Design
Robot Build Phase 1 - Base & Transmission
Ian, Nat, Reid
September 14, 2023
73
Integrating the Transmission and the Base
We already know how to connect the base and the transmission from the CAD we created. However, in the real world, there are many more challenges than CAD; the main challenge being friction between the gears when shifting. In other transmissions, such as those in cars, shifting is usually done by disconnecting the engine from the wheels, moving the gears, and reconnecting the engine. Additionally, these gears are coated in some lubricant to reduce friction between the gears. Since we don’t have space for a neutral position in the transmission, we must shift extremely quickly. We will also need to rely on different ways of reducing friction.
Image of the transmission in the base
Robot Build Phase 1 - Catapult
Abe, Ian
September 14, 2023
74
The Catapult
Goal:
Constraints:
Summary:
We first prioritized getting the triball to center in the catapult, so it has a consistent trajectory no matter how it was placed. This was done by testing the width and height of the bar, and then using a bent piece of 1x while making slight changes.
Catapult with the frame, and 1x before it was attached to the robot
Red PLA brackets that will be converted to cut polycarbonate
Robot Build Phase 1 - Wings
Nat, Antonio, Ian
September 14, 2023
75
The Wings
After building the wings we found that they were incredibly difficult to extend. This is most likely due to the piston being in line with the pivot point. Additionally, the locking mechanism either doesn’t do anything or doesn’t let the wing fold back.
To fix the deploying problem we are going to stop the wings from folding back completely, allowing the piston to have more leverage. And we are going to change the attachment method to polycarbonate to reduce the friction between the wing and the base.
After some quick testing, we found that the locking mechanism doesn’t work at all. It either doesn’t do anything or doesn’t let the wing fold at all. Lots of testing and brainstorming will need to be done to make them work, (see future entries in testing and tuning).
Robot Build Phase 1 - Intake
Antonio
September 30, 2023
76
The New Intake
After building everything we were still struggling to fit the old intake onto the robot. We started brainstorming different methods that we could take triballs from the ground and put them into the catapult that would fit under 6 inches.
We came up with this, it’s two bars with rubber bands going across each side. To intake a triball the intake is set directly onto the triball and the rubber bands move to the sides so the triball can sit on top of it. Then it rotates back up and the triball falls onto the catapult.
This configuration allows the intake to sit around the catapult, not increasing our size at all. Additionally when completely vertical it increases our height to 13.5 inches allowing us to block robots that we previously couldn’t due to our size.
Final intake on the robot
First prototype of intake
Robot Build Phase 1 - Plates, Wire Management, and Tanks
Ian, Nat, Abe, Reid
September 21, 2023
77
Plates, Wire Management, and Tanks
Now that all of our subsystems are built and partly tested, it is time to make this robot competition legal.
We need to:
License plates:
Since the robot is close to the ground, license plates mounted perpendicular to the ground could be hard to read and easily obscured by other robots. So, we have decided to mount the plates at a 45-degree angle. Additionally, instead of having four plates, 2 red and 2 blue, we will paint one side of the plates and only flip them around. This means that if we have our robot we have all the license plates, and there is no possibility of misplacing them and being late to a match.
Plate holder CAD
Plate holder on robot
Robot Build Phase 1 - Plates, Wire Management, and Tanks
Ian, Nat, Abe, Reid
September 26, 2023
78
Plates, Wire Management, and Tanks cont.
Pneumatics:
Initially, we were planning to store the pneumatics under our drive motors and adjacent to the brain. However, this placement would require us to cut several of our cross braces and risk the structural integrity of the robot. We decided to store them above the wheel wells. This placement, while easier to access, means we will have to remove the tanks every time we need to access the wheel directly below it, the 5.5-watt motors on the base, and the 3-wire ports on the brain.
Tanks
Motor
3-wire ports
Wire management:
With many moving parts and mechanisms (transmission, catapult, base) that could be permanently damaged we have spent a lot of time planning out and properly securing our wires.
Bottom view of the wire management
Wires leading to the brain
Robot Build Phase 1
Ian, Nat, Antonion, Reid, Abe, Ryan
September 28th
79
The Current Robot
So far we have an almost working catapult that sometimes get stuck in the down position or constantly firing, a transmission that works 50 percent of the time between the catapult and our 33 watt 400 rpm 68 in/sec, and an intake which can pull triballs off the ground into the catapult and act as a small blocker.
Now with only two weeks until our first competition, we will try to make our subsystems more reliable before transitioning completely to coding to try and get this robot driver ready and have at least one simple autonomous.
Testing and Tuning 1
Robot Testing and Tuning 1 - Wings
Nat, Abe,
October 5, 2023
81
The Wings
The current problems with the wings are:
Torque net = (Force of piston * distance from pivot) - Friction - Force of retracting elastic
When the wing is closed, the piston is almost completely in line with the pivot, which means the force of the piston is greatly reduced. To solve this we are going to stop the piston from folding completely, effectively increasing the torque of the piston.
Additionally, we are going to replace the pivot with polycarbonate, because metal on metal has a higher coefficient of friction than plastic on metal.
Old:
Almost completely inline
New:
Pushed out slightly
The polycarbonate brackets
Robot Testing and Tuning 1 - Wings
Nat, Abe
October 5, 2023
82
3) With some quick testing we found that the piece of polycarbonate that was meant to lock the wing didn’t do anything or stop the wing from folding.
This testing was done fairly quickly and dirty. We just held a piece of polycarbonate and manually powered the wing. Then tried to push it closed.
Three major factors could be causing our problems. 1) The piece of polycarbonate is moving around when testing, thereby reducing its consistency. 2) The method we are using to pull the plate of 1x is pulling improperly. 3) There is unequal friction in the system causing the bars to move in an odd pattern.
Polycarb Position
Rubber Band to Pull 1x Plate
Possible Friction Points
The Wings cont.
Robot Testing and Tuning 1 - Wings
Abe, Nat
October 5, 2023
83
The Wings cont.
After several more tests where we adjusted the position of the polycarb stopper, the tightness of the joints, and the position of the rubber band we were able to consistently get the wing to lock.
Robot Testing and Tuning 1 - Transmission
Ian, Nat, Reid
October 13, 2023
84
Reducing Friction when Shifting
After connecting the transmission and the base and manually firing the pneumatics while spinning the wheels, we get a rough 40% success rate for successfully shifting. The other times it doesn’t shift at all, only one side shifts, or it gets stuck in between. To try and fix this problem, we plan to create a function that spins both wheels and fires the pneumatic piston to help facilitate consistent transitions (which will be found in the code section). Additionally, we removed all of the gears and sanded each tooth down, to try and remove any curation that would cause excessive friction. After reassembling everything it had a rough 50-60 success rate, which will be fine for now but will need to be improved in the future.
The gears before being sanded
The gears after being sanded
Robot Testing and Tuning 1 - Catapult
Nat, Ian
October 13, 2023
85
Trying to Fix the Catapult
From our testing, the catapult consistently got stuck in the down position or constantly firing. There are probably several causes for these problems, it most likely has to do with the position of the limit switch and something to do with the gears improperly meshing.
Slow-mo of it stuck shooting: Slow-mo of it getting stuck down
Robot Testing and Tuning 1 - Catapult
Ian, Nat
October 15, 2023
86
Trying to Fix the Catapult
Several things can be seen in the video that are the probable causes of our problems. 1) The limit switch is not in the proper position to register the catapult when it pulls back. 2) The catapult is not stopping correctly 3) The motors aren't waiting long enough for the catapult to settle before pulling back.
Robot Testing and Tuning 1 - Catapult
Ian, Nat
October 15, 2023
87
Trying to Fix the Catapult Images
Limit in the back position
Limit in the new position
Delay added here to stop it from pulling back when it is firing
Code Phase 1
Code Phase 1 - Software Platforms
Ian Gilbertson
October 26, 2023
89
Software Platforms
There are three major programming environments we can use to code our robot:
VEX Visual Studio Code Extension
Runs on VS Code Limited library support No prior experience C++ only | Runs on VS Code Third-party library support Lots of prior experience C++ only | Separate Application No library support Limited prior experience C++ or Python |
We have decided to use PROS to program our robot because it offers the most options in regards to expandability, and our prior experience with using it will both allow us to jump right in without having to learn a new API and will allow us to take advantage of the extra features it exposes. Furthermore, the base of Visual Studio Code will allow us to use the integrated version control system that runs on Git, which will make sharing coding responsibilities infinitely easier, as well as creating a running history of changes we can roll back to if some changes break essential functionality (which has happened to us in the past).
Code Phase 1 - Transmission Programming
Ian Gilbertson
October 26, 2024
90
Programming the Transmission
To Catapult
- can only spin one direction
To Drivetrain
- must spin the same direction as the other motors
To handle the complex operation of the transmission, we used a task that will always be running in the background, instead of relying on the proper sequencing of the competition tasks. By using this approach, we can ensure every motor is getting the commands it needs when it needs them to prevent them from fighting each other.
Side note: the motor group called “xkcd” is named that way because naming it “Lpto” (to follow the previously established naming convention) caused a “Data Abort Exception” at that memory address. Using the name “xkcd” seemed to fix it.
Code Phase 1 - Shifting the Transmission
Ian Gilbertson
October 31, 2024
91
Shifting the Transmission
As previously mentioned, the process of successfully shifting the transmission was only somewhat straightforward, so it got its function within the code.
To not break anything while tuning the delays to be as short as possible (resulting in more time using the motors for driving or the catapult, not shifting), we left the shifting cylinder disconnected and used an extra cylinder to simulate the shifting. We took slow-motion videos (one is shown) to analyze the timing and stepped through the recording to see where time could be shaved off. Further testing was done once the transmission was active on the robot to validate the timings.
Code Phase 1 - Intake
Nat
November 2, 2024
92
The Intake
There are several common control schemes to move a bar
The two most common:
Instead of using these, we are going to use a more complex form of the single button using a Switch Case. This control scheme looks at a variable, or case, and has several actions to do depending on its value (see next slide for example). This means it can not only read controller inputs but also sensor values, variables, and more. Based on these values, move through cases.
Additionally, We wanted to use a rotation sensor to read the intake angle, as it is more precise than the motor encoder and doesn’t reset when the program is shut off. This meant we could change the start position of the intake, and it would have a consistent 0 position. However, after some testing, we found that the gearing in the bar brought the sensor out of its non-reset range. This means we would need to use an axle on the intake itself to read the angle, which we simply do not have the time to change.
Code Phase 1 - Intake
Nat
November 2, 2024
93
Because of the versatility of Switch Case Statements our drivers and coders came together and created a plan for what conditions the switch case would look for to control the intake.
Intake State Machine
This means that the intake will stay in the “blocking” position until either button ‘A’ is pressed which will toggle between pulling the triball off the ground and putting it into the catapult and button ‘B’ will put it in the “flat” position if the catapult is also in the “flat” position, or bring it from “flat” to the “blocking” position.
The Intake cont.
This was translated into code:
Code Phase 1 - Intake
Nat
November 6, 2024
94
Video of Intake Working
Autonomous 1
Autonomous 1 - Planning
Nat
November 7, 2024
96
Autonomous Planning
Autonomous in this game is powerful, it can:
A single robot cannot do all of this, which means it is important to have multiple autonomous that can be matched up with other robots to maximize the value of autonomous.
We think the following 5 autonomous will cover all fronts:
Autonomous 1 - Autonomous Drive Functions
Nat
November 9, 2024
97
Autonomous Drive Functions
There are several ways to control the drive base during autonomous in pros
Autonomous 1 - PIDs
Nat
November 9, 2024
98
Autonomous Drive Functions cont.
There are three key components behind a PID controller - proportional, integral, and derivative, from which the acronym PID originates from. However, one doesn’t strictly need to use all three together. Since we don’t have enough time to properly tune our PID loops we will just be using them as a P controller. We used this document as a guide to make both PIDs.
P:
The proportional aspect of a PID controller looks at the current distance from where it is to where it needs to be and supplies current based on this distance. The idea is to give the largest amount of power when there is a long distance to travel and only a small amount when the robot is near its objective.
This is calculated by taking the difference between where the robot wants to be and where it is, and then multiplying it by a tuned constant (kP) to give the preferred power at specific distances.
I:
The integral looks at the past error, and supplies current based on how long the robot has been moving and how high P was. We are mainly using it to keep giving power to the robot when it is too close to the objective for P to overcome the friction in the drive.
The integral is calculated by adding the proportional distance to the integral of each cycle, then multiplying it by a tuned constant (kI) to give the preferred power at a specific instance throughout the turn.
D:
The derivative looks at where the robot will be and how fast it needs to slow down. In our case, it will mainly be used to smoothen out the movement and decrease the chances of overshooting.
The derivative is calculated by finding the difference between the current proportional distance and the last proportional distance, this value is then multiplied by a tuned constant (kD) to give the preferred power at a specific instances throughout the turn.
Autonomous 1 - Drive Forward PID
Nat
November 14, 2024
99
Autonomous Drive Functions cont.
driveInchesPID:
This function takes in a parameter of inches and uses a PID loop (P loop for now because we do not have time to tune the constants) and will move the drive base within .5 inches. Tuning can probably be found in the future code section.
Initializing variables:
Proportional distance
Where to store the integral and derivative
Setting constants based on the drive power
Recalculating the proportional distance (error), integral and derivative
Watching for integral windup
Multiplying the error, integral, and derivative by their respective constants and setting them to a variable
In case the set voltage is higher than pros expect, bring it back down
Finally send that power to the base
Autonomous 1 - Autonomous Drive Functions
Nat
November 14, 2024
100
Autonomous Drive Functions cont.
turnToHeading:
This function takes in a parameter of degrees [-180, 180], and uses a PID loop (P loop for now because we do not have time to tune) to move the drive base to this degree within 1 degree of error. Tuning can be found here.
Initializing variables:
Proportional distance
Where to store the integral and derivative
Setting constants based on the drive power
Recalculating the proportional distance (error), integral and derivative
Watching for integral windup
Multiplying the error, integral, and derivative by their respective constants and setting them to a variable
In case the set voltage is higher than pros expect, bring it back down
Finally send that power to the base
Autonomous 1 - Video
Nat
November 18, 2024
101
Autonomous
With so little time until the competition, we were not able to do nearly enough autonomous tuning and testing. We only finished the “Do Nothing” and “Drive Forward Autonomous”.
Video of drive forward:
Scrimmage Result
& Debrief
Scrimmage Debrief
Ian, Nat, Antonio, Reid, Ryan, Abe
November 16, 2024
103
Result
The day before our first competition the club hosted a small scrimmage between the four teams that were competing.
Result:
What went well:
What could have gone better:
We do not have enough time to troubleshoot and fix the transmission and barrier issues. However, we reduced the power and speed of the catapult we found that it helped the consistency a little.
Tournament Debrief
Tournament Debrief - Results
Ian, Nat, Antonio, Reid, Ryan, Abe
Nov 18, 2023
105
Results
Notes:
For the first two matches, our catapult gears were twisted and we couldn’t use the catapult
Q5: We couldn’t move because of a problem with the code, and our teammate had to 1 v 2
Quarter Finals: Our autonomous got us stuck under the goal and we couldn’t move for the first 20 seconds while the team we were supposed to be defending launched almost all of their triballs
Tournament Debrief - Analysis
Ian, Nat, Antonio, Reid, Ryan, Abe
Nov 19, 2023
106
What Went Well
What Could Have Gone Better
Tournament Debrief - Next Steps
Ian, Nat, Antonio, Reid, Ryan, Abe
Nov 19, 2023
107
Plans Moving Forward
We only have four weeks before the next competition and we have a lot we need to do.
After a discussion with all team members, this is what we want to do:
Physically:
Code:
And driver practices to get used to the speed and use the robot to its fullest ability (wings, shooting, intake, match-play).
Build & Cad Phase 2
Build & Cad Phase 2 - Wing and Sleds
Ryan, Nat
November 21, 2023
109
CNCing Wings and Sleds
Wings:
Problems:
Goal:
Solution:
We decided to make new brackets with the CNC to make them more uniform. This reduced friction in the wings by aligning the axis they rotate around.
Sleds:
Problem:
Goal:
Solution:
We chose to CNC sleds and attach them to the end of the robot. These sleds bring the wheel up over the barrier and allow the rest of the wheels to push it over. They were CNC milled to keep the holes consistent.
Build & Cad Phase 2 - Reducing friction
Reid, Nat
November 24, 2023
110
Reducing Friction when Shifting
Beveled vs normal (cad)
Problems:
Goal:
Solution:
The solution we came up with was beveling the shifting gears. The beveled edges help the gear slide between the drivetrain and catapult gears more easily. Nat designed and 3d printed a guide for beveling the gears that allowed the gears to be held at a consistent angle when grinding the gears down.
Build & Cad Phase 2 - Clamp
Ian Gilbertson
November 25, 2023
111
The Clamp [Intake]
In our analysis of previous tournaments (both the one we attended and other matches we saw online), we noticed how the ability to manipulate a single triball allowed teams to more effectively move triballs, especially ones that get stuck in the corner. However, because the majority of the robot had already been built, we were limited by how little space we had.
Requirements were as follows:
Completed design pictures: (explanation on next slide)
Build & Cad Phase 2 - Clamp
Ian Gilbertson
November 21, 2023
112
The Clamp[Intake] cont.
The motorless requirement immediately ruled out any design with rollers, so the intake would have to be some kind of claw powered by pneumatics.
Initially, we planned to have the arms pivoted in the middle, closing on the triball from the stowed position. However, the short arms prevented us from grabbing triballs with their point toward the intake, so we had to find another solution.
By moving the pivot point of the arms to the edges of the size constraint and staggering the elevation of the two arms, we could extend the arms to be long enough to extend past a triball in any orientation.
We chose to use standoffs rather than C-channel because of the space constraints (standoffs are significantly smaller) and because they would be easier to modify in regards to length and custom attachment points.
Due to this layout, the arms would have to swing at least 90º while starting from an overlapping position. To prevent the same situation that befell our wings (not enough torque to open them), we moved the point of effort away from the fulcrum using custom gussets, which were made by drilling and tapping shaft collars. The angle between the two standoffs was adjusted in CAD so the arms would provide the proper range of motion when being powered by a 75mm stroke cylinder (the open position was 75mm closer together than when it was open)
By not fixing in place either end of the pneumatic cylinder (the same technique used on the transmission), each end could move one of the arms, instead of using multiple cylinders or mechanically linking the two sides together (this also helped to reduce the overall footprint of the build.
There was concern about the torque the unbalanced loading of the triball would cause, but initial testing did not show any adverse effects. Adding stretched rubber bands created some compliance in the grapple motion, which greatly improved the grip of the intake, especially while turning with a triball.
The one major downside of this geometry is when the intake is ready to grab a triball, the arms are sticking out and could be unwieldy, but no other design that we could think of so successfully achieved the initial requirements, so this is the design we will use.
Build & Cad Phase 2 - Plates
Nat
December 5th, 2023
114
The New Plate Attachments
During the competition, we broke three of the five printed plates. If one more had broken then we would have no way to attach the plates. We need to design a stronger version of these plate holders that will last.
This is what we came up with:
Instead of using two independent “towers” to screw onto the plate we connected them, thickened up everything, and printed them with 100% infill.
Old: New:
Build & Cad Phase 2 - Blocker
Reid Garfoli
January 2, 2024
113
The Blocker
Design Goal:
Final Product:
The blocker is a 1-bar that has another 1-bar on top. When the lower 1-bar moves up, the string connected to the second 1-bar gets tensioned and pulls the second stage up.
It can fit under 6 inches and works well at going up and down quickly and blocking triballs. However, it sometimes can’t come down all the way or sometimes pops up during autonomous. We were able to change the string placement further up and it got the blocker to come down consistently but the blocker still popped up during autonomous (may have been caused by coded issues).
Code & Autonomous Phase 2
Code and Autonomous Phase 2 - General Changed
Nat
December 5, 2023
116
General Changes to the Code
Blocker Code:
Similarly to the intake, the blocker needs to work with the catapult. We are going to use the same control method and just change it over to using two motors instead of one and using different values. Coding the intake can be found here.
Turbo mode:
As detailed in our tournament debrief, with the little time we have for driver practice, it is hard for the driver to move the robot around the field at its current speed. The default speed is going to change to 80% of the max power, and there is going to be a turbo mode that allows the robot to move at 100% speed. This is done by switching the boolean “turboMode”, which when true multiples the inputs of the controller sticks by 0.8.
Toggling the boolean
Setting the power
Code and Autonomous Phase 2 - General Changed
Nat
December 5, 2023
117
General Changes to the Code cont.
Catapult E stop:
As mentioned in the tournament debrief, we need some way to stop the catapult from pulling back and receiving the fire command. Because, if the motor task receives the command to fire and the catapult is stuck down, we cannot move. To do this we have a toggle-able boolean that when true allows the catapult to operate normally.
Toggling the boolean
Checking the boolean
Code and Autonomous Phase 2 - LEDs
Ian Gilbertson
December 7, 2023
118
LEDs: the How? What? and Why?
One underappreciated aspect of this robot is the WS2812B Addressable LED strips mounted to the base. Originally conceived as a purely cosmetic feature, the ability for direct control of these strips (made possible through VEXos 1.1.2 and the Sylib library) created the opportunity for active driver feedback. Explicitly allowed by <R8.g>, this form of feedback allows the driver real-time feedback on subsystems without needing to look away from the robot. These include the status of the transmission/catapult, and if the robot is in turbo mode. Both of these are hard to see and would need to be reported to the controller. The driver feedback will be expanded to fit future iterations of the robot and monitor other subsystems as we see fit.
When in an idle state, all of our strips default back to the color of our alliance, and all indicator colors are far from the alliance colors to avoid confusion for everyone (our driver, other teams, refs) during a match.
Initial LED control testing
On-field testing
Code and Autonomous Phase 2 - PIDs
Nat
December 7, 2023
119
Tuning the PIDs
In the last competition, we didn’t have time to tune our PID loops. Information for those can be found here. Properly tuning a PID is an in-depth and fairly complicated process, we will be using this document to guide ourselves through the process.
This is the spreadsheet that they give as a guide:
Tuning a PID is a difficult and time-consuming process. As slightly changing a single value can positively change an aspect while adversely impacting another.
After about two sessions of working attempting to tune our two PIDs, we were able to get them passable, with them not being 100% accurate and not extremely fast, but consistently moving in the intended direction and stopping accurately.
Code and Autonomous Phase 2 - Autonomous
Nat
December 9, 2023
120
Autonomous
As mentioned in the tournament debrief, we need autonomous that scores more points and doesn’t get us stuck. Tuned PIDs will help not get stuck, as for scoring more points we only had one autonomous that scored one triball. For this competition, we are going to try and complete a half AWP autonomous and a far side autonomous that scores at least 4 triballs.
Half AWP:
For this autonomous, we want to fulfill two-thirds of the requirements for the autonomous win point. Which are removing a triball from the match load zone and touching the elevation bar. We will not be attempting to score our alliance triball in the goal as we cannot consistently score from across the barrier and almost every team that we saw in the last competition had an autonomous could score their alliance triball.
This is the preliminary route.
Far side score:
The goal of this autonomous is to score as many triballs as possible to give us an edge at the beginning of a match. There are many routes to complete this, but our initial plan is to score the three-center triball and our alliance triball.
This is the preliminary route.
The Half AWP autonomous will get us 9 points and a win point and the Far Side Score should get us 20 points. During the pre-elimination rounds we will prioritize win points as they decide ranking and our partner for elimination rounds. For elimination rounds, we will most likely run the Far Side Score unless our teammate has an autonomous that scores more.
Code and Autonomous Phase 2 - Auton Selector
Nat
December 14, 2023
122
Auton Selector
With four autonomous (don’t move, drive straight, far side score, and half AWP) and two colors to select at a beginning of a match, it would be cumbersome to upload a different program for every situation. Instead we are going to use buttons on the brain screen to select our color and autonomous.
To use these buttons all that we have to do is tell PROS to run a function when the button is pressed.
To select a color, we tell PROS to run a function that toggle the boolean “isRedAlliance” and the run the function “setLEDs” that sets the LEDs accordingly, click here for more info on LEDs.
Initializing the buttons
Toggling button
Setting the LEDs
Code and Autonomous Phase 2 - Auton Selector
Nat
December 14, 2023
123
Auton Selector cont.
To select an auton, the person selecting uses the left and right buttons on the brain screen that will call the function “leftButton” and “rightButton”. These functions increment or reduce an integer called auton. When autonomous mode is started it will use the value of auton to run the selected auton.
Incrementing or reducing the count
Checking if the value is past the number of autons and returning to the other side
Calling a function that checks the value of auton and displays which autonomous it corresponds to
Running the selected autonomous route based on the value of “auton”
Code and Autonomous Phase 2 - Half AWP
Nat
December 14, 2023
121
Problems with Half AWP and turnToHeading
When tuning the half AWP autonomous we found that the turnToHeading function cannot handle turning to and past 180 degrees. It will continuously turn until it is disabled. This is most likely a problem with the math, where the transition from negative heading to positive heading makes the PID loop think it is 360 degrees away from its setpoint instead of 1 - 2. Click here for PID loops.
After revisiting the math we couldn’t find any problems with it and we did not have the time to remake and test different ways of calculating the heading. Instead, we are making some quick and dirty changes to the route that keep the robot from turning past 180 degrees.
This new route can be found here.
Tournament Debrief
Tournament Debrief - Analysis
Ian, Nat, Antonio, Reid, Ryan, Abe
December 17, 2023
125
What Went Well
What Could Have Gone Better
Tournament Debrief - Next Steps
Ian, Nat, Antonio, Reid, Ryan, Abe
December 17, 2023
126
Plans Moving Forward
We thought we were a catapult bot with a strong drive and blocker, but our robot performed better as a strong drive and blocker with a catapult.
After more discussion:
We realized that we haven’t been able to capitalize on being under 6 inches. Moving forward we plan to expand upward. We are also converting to a puncher for faster shots, less likelihood of it jamming, and more consistent shots. Raise the wings to go over the barrier and curve them to pull triballs out of the goal. Use a double reverse four bar to block almost every single robot and capitalize on the defensive nature of our robot.
On the code side, we want to tune both of our PID functions to work with the PTO in drive mode, fix our turnToHeading function to exit after a given time, and make our fire cata non-blocking so we can move if it is jammed.
Tournament Debrief - Next Steps
Ian, Nat, Antonio, Reid, Ryan, Abe
December 18, 2023
127
Schedule
We have a total of three weeks until the next competition and a lot to do, so it will be important to use our time as effectively as possible
12/18/23:
12/19/23:
12/20/23:
1/2/24
1/4/24
Tournament Debrief - Next Steps
Ian, Nat, Antonio, Reid, Ryan, Abe
December 18, 2023
128
Schedule cont.
1/9/24
1/11/24
Tournament Debrief - Next Steps
Ian, Nat, Antonio, Reid, Ryan, Abe
December 21, 2023
129
Our Real Plan
With only 3 weeks of sessions before our next competition which is the last competition of the year before states, we are going to use this time to test different methods for manipulating triballs. We are going to stop powering the transmission and run a dedicated 66-watt drive; Power the wings with motors and make their folded position vertical; Power the blocker with pneumatics; Use a puncher instead of the catapult; and try to run an intake with a bottom plate.
Cad, Build, Code, & Test
Phase 3
Cad, Build, Code, & Test Phase 3 - Puncher
Nat
January 4, 2024
131
Puncher
Goal:
Constraints:
Plan:
The puncher is going to be placed over the transmission where the catapult was. We are going to run a 25 rpm puncher because it will have enough power to consistently launch over the barrier. To hold the triball we are going to be able to choose to place it on four standoffs for straighter more direct shoots, or place it further back and give it a larger ark to go over our opponent's blockers.
Puncher on Robot
Shared axle compound gearing
Cad, Build, Code, & Test Phase 3 - Blocker
Ian, Reid, Abe
January 9, 2024
132
Blocker
Goal:
Constraints:
Plan:
We plan to place the blocker in a similar position as the previous design. It will be powered by two pistons, and use a similar second stage as our previous one.
Cad, Build, Code, & Test Phase 3 - Wings
Ryan
January 9, 2024
133
Wings
Goal:
Original Design:
Our original wing design used pneumatics to push the wings outward. This design was good for a sub-6-inch robot, but it has some shortcomings:
To find solutions to these problems, we decided to try a vertical motor wing design. These do not need a locking mechanism as their mount stops them from moving left and right, they are powered by motors, which won’t have any problems powering the wings, and they will be raised to reach over the barrier. This design is mainly to test how higher wings and motor wings function.
Motor Wings:
Pros:
Cons:
Cad, Build, Code, & Test Phase 3 - Code
Nat, Reid
January 11, 2024
134
Code
Puncher:
We repurposed the catapult code, it follows the same logic with only changing motor, sensor names, delay, and voltage values.
Blocker:
Since the wings go over the blocker, in the code the wings need to move out slightly whenever it goes up and down.
Clamp and wings:
The clamp and wings use simple toggles that deploy or retract them depending on a boolean value.
Tournament Debrief
Tournament Debrief - Analysis
Ian, Nat, Antonio, Reid, Ryan, Abe
January 14, 2024
136
What Went Well
What Could Have Gone Better
Tournament Debrief - Next Steps
Ian, Nat, Antonio, Reid, Ryan, Abe
January 14, 2024
137
Plans Moving Forward
Using the information that we gained from the last competition we are going to completely redesign for states. This is a large step forward, but not having the ability to elevate while being over 6 inches, having a dysfunctional blocker, struggling to go over the barrier in both directions and a slow puncher means fixing these problems will require a large change.
Goals:
Tournament Debrief - Base
Ian, Nat, Antonio, Reid, Ryan, Abe
January 15, 2024
138
Making Decisions - Base
Base:
The current base is compact, fast, and powerful. It has worked well, and we think that spending the time redesigning, testing, and fixing a new base isn’t worth it, where this time will be needed designing, building, testing, and turning all of the subsystems we decide to redesign. Click here and here to see past drive breakdowns.
Sleds:
The current sleds on the robot work, and work fairly well, but the ones we cut out by hand have inconsistent holes and don’t work as well as the CNCed sleds. We are going to re-CNC sleds except this time add attachments to distance sensors. These distance sensors will look forwards and by taking the distances from each sensor and doing a little trig we will find our angle from the wall. We hope to use these with the inertial to have more accurate autonomous.
Back plate:
In the past there have been several instances where we have needed to quickly get triballs over the barrier to our teammate, and haven't been able to do so. We have planned on having a plate to push triballs over the barrier, but the catapult/transmission have always been in the way. With them gone, we now have the space, and will be filling it.
Tournament Debrief - Intake
Ian, Nat, Antonio, Reid, Ryan, Abe
January 16, 2024
139
Making Decisions - Intake
Meaning/importance of each section:
Size:
Expanding up to 11 inches means our subsystems have more room and their size becomes much less important.
Efficiency:
Being able to quickly and efficiently move single triballs from around the field is the most important aspect of this subsystem.
Build complexity:
It is important to take into account the amount of time it will take to build, test, and tune this intake, as any time spent building is time taken away from autonomous and drive practice.
| Size | Efficiency | Build Complexity | Total |
Total points per section | 3 | 15 | 10 | 28 |
Clamp | 3 | 9 | 10 (Already built) | 22 |
Top rolling intake | 2 | 15 | 6 | 23 |
Side wheel intake | 1 | 13 | 3 | 17 |
Tournament Debrief - Intake
Ian, Nat, Antonio, Reid, Ryan, Abe
January 16, 2024
140
Making Decisions - Intake
Scoring each section:
Clamp:
The clamp is extremely compact and already built. However, it has to open each time to intake a triball, which makes it harder and slower to use. It would be extremely difficult to modify the clamp to bring triballs over the barrier.
Top rolling intake:
The top rolling intake is fairly larger than the clamp, but it is always ready to intake, can push them forward, is fairly easy to build, and easily allows access for a bottom plate to take triballs over the barrier.
Side wheel intake:
The side rolling intake is much wider than the clamp and top rolling intake and has to fit within the base, something we struggled a lot with here. This size constraints will lead to us making sacrifices in its efficiency.
Final decision:
We have decided to use the top rolling intake as it will be the easiest to integrate with the robot, bring triballs over the barrier, and will be fairly easy to build.
Tournament Debrief - Wings
Ian, Nat, Antonio, Reid, Ryan, Abe
January 17, 2024
141
Making Decisions - Wings
Meaning/importance of each section:
Consistency:
It is essential that the wings can fire consistently for an entire competition. If the wings can’t fire, it doesn’t matter how durable or large they are.
Compatibility:
It is important to make the wings flexible in how they're mounted and such so that we can make changes to the robot while keeping the same wing design.
Size:
The wings have to not interfere with other subsystems, although they can be moved/redesigned which makes it a lower priority.
Durability:
The wings must be durable enough so that we won’t be bending c channels or axles when pushing tribals.
| Consistency | Compatibility | Size | Durability | Total |
Total points per section | 8 | 6 | 3 | 6 | 23 |
Motor | 5 | 5 | 2 | 2 | 14 |
Pneumatic (Horizontal) | 4 | 2 | 3 | 4 | 13 |
Pneumatic (Vertical) | 6 | 3 | 2 | 4 | 15 |
Tournament Debrief - Wings
Ian, Nat, Antonio, Reid, Ryan, Abe
January 17, 2024
142
Making Decisions - Wings
Scoring in each section:
Motor Wings:
Consistency – The wings would often stop working and get in the way of movement.
Compatibility – The wings would be easy to mount, as they only needed one part mounted.
Size – The wings did take up some space, but they weren’t too intrusive on the robot.
Durability – We struggled to make a good hard stop for the wings, so the axles and wings occasionally bent.
Horizontal Pneumatic Wings:
Consistency – The way the wings were mounted to save space caused the wings to frequently not fire.
Compatibility – The wings took up space on the sides of the robot, not allowing for anything else to be mounted there.
Size – These wings were the most size-efficient design.
Durability – These wings didn’t bend easily.
Vertical Pneumatic Wings:
Consistency – The wings have yet to not fire, though they haven’t been tested in a competition.
Compatibility – The pneumatic cylinders would be hard to mount if we changed the blocker design, but that is all.
Size – The design is somewhat small except for the pneumatic cylinders.
Durability – The wings don’t bend as much as the motor wings, but there is a possibility of them bending.
Final Decision:
We decided to go with the vertical pneumatic wing design because it works with our current robot and is more consistent and durable than the horizontal and motor wings.
Tournament Debrief - Launcher
Ian, Nat, Antonio, Reid, Ryan, Abe
January 17, 2024
143
Making Decisions - Launcher
Meaning/importance of each section:
Power
This is how far the launching mechanism can launch the triball. The lower the power, the higher the launching mechanism needs to be raised.
Cycle Time
This is how fast the launching mechanisms can shoot triballs, and is important because the faster we can shoot all the match loads the faster we can stop our opponents from launching triballs or stop them from scoring others.
Build Complexity
How complicated the launching mechanism need to be. This is important because the more complicated the launching mechanism is, the harder and more time it takes to build.
Subsystem Integration
How easy it is to integrate this subsystem with the rest of the robot.
| Power | Cycle Time | Build Complexity | Subsystem Integration | Total |
Total points per section | 10 | 10 | 7 | 5 | 32 |
Flywheel | 5 | 10 | 2 | 2 | 19 |
Catapult | 10 | 5 | 5 | 3 | 23 |
Puncher | 8 | 8 | 5 | 5 | 26 |
Tournament Debrief - Launcher
Ian, Nat, Antonio, Reid, Ryan, Abe
January 17, 2024
144
Making Decisions - Launcher
Scoring each section:
Flywheel:
The flywheel is always ready to launch triballs, giving it the fastest cycle times. However, this means that they generally have less power than other launching mechanisms. Additionally, our club doesn’t have any spare 600 rpm cartridges, which means we would need to run a compound gear ratio making the flywheel much larger and bulkier.
Catapult:
The catapult has to fit around the puncher, which makes it bulky and hard to integrate, but it imparts all of its energy into the triball allowing it to travel further.
Puncher:
The puncher only needs to hit the triball, which makes it much smaller than both subsystems. It can shoot fairly fast and impart most of its energy into a triball, only losing energy to the friction from holding it.
Final decision:
Due to the size, weight, and general launching abilities of the puncher, we are going to build it.
Tournament Debrief - Elevation
Ian, Nat, Antonio, Reid, Ryan, Abe
January 18, 2024
145
Making Decisions - Elevation
Meaning/importance of each section:
Speed:
This is how fast the elevation mechanism takes to elevate. This is important because more time spent elevating means less time scoring and/or defending.
Tier:
This is the highest level this elevation mechanism can reach.
Subsystem integration:
This is how easily the elevation mechanism will integrate with other subsystems.
Time to build:
This is how fast we think it will take to design, build, test, and tune this elevation mechanism.
| Speed | Tier | Subsystem integration | Time to build | Total |
Total points per section | 8 | 12 | 15 | 12 | 47 |
PTO to 4-bar | 6 | 7 | 8 | 6 | 27 |
PTO to DR4B | 4 | 12 | 4 | 4 | 24 |
Band Assist | 8 | 7 | 13 | 8 | 36 |
Tournament Debrief - Elevation
Ian, Nat, Antonio, Reid, Ryan, Abe
January 18, 2024
146
Making Decisions - Elevation
Scoring each section:
PTO to 4-bar:
This design would use a PTO (power take-off) to connect the gears from the base to the arm and pull the robot up. It would need to be fairly large to get a gear ratio for torque. The four bar would reach lower, but be much easier to design, build, and test.
PTO to 8-bar:
This would use the same powering method as before, but use a DR4B (double reverse 4-bar). This lifting method would need more torque due to the longer lever arm, but reach higher. The complexity of the extra torque and DR4B makes this elevation mechanism much harder to build and integrate.
Band Assist:
This couples a large number of rubber bands to the lift to help the motor raise the robot. It is extremely quick, as it doesn’t rely on the motor pulling the lift down and can continue to elevate even after the match has ended. It is fairly small, only requiring a pneumatic cylinder to release the bands and a place to connect the bands to the lift.
Final decision:
We have decided to go with the band assist elevation, due to its speed and size.
Tournament Debrief - Blocker
Ian, Nat, Antonio, Reid, Ryan, Abe
January 19, 2024
147
Making Decisions - Blocker
Meaning/importance of each section:
Blocking Size:
The size of the blocker. This is the most important section because a smaller blocker will struggle at its job.
Deploy speed:
This is how fast the blocker can be ready to block. It is important because waiting for a blocker to deploy means teams can get several shots off before we can stop them.
Subsystem integration:
How easy it is to fit this blocker with other subsystems while being under 11 inches.
Reliability:
How reliable the blocker can deploy throughout the match.
| Blocking Size | Deploy Speed | Subsystem Integration | Reliability | Total |
Total points per section | 15 | 10 | 10 | 8 | 43 |
Pneumatic 1 bar | 10 | 10 | 9 | 6 | 37 |
Pneumatic 1 to 1 bar | 15 | 6 | 7 | 4 | 32 |
Geared with lift | 15 | 8 | 5 | 8 | 36 |
Just 4-bar | 5 | 10 | 10 | 8 | 33 |
Tournament Debrief - Blocker
Ian, Nat, Antonio, Reid, Ryan, Abe
January 19, 2024
148
Making Decisions - Blocker
Scoring each section:
Pneumatic 1-bar:
This is powered by pneumatics, meaning we can run out of actuation to fire it. However, since it is light, it will use relatively low air for each fire.
Pneumatic 1 to 1 bar:
This is the largest blocker, but it is heavy and powered by pneumatics, making it reliant on high pressure, and therefore unreliable throughout the match.
Geared with the lift:
This doesn’t require pneumatics, making it much more reliable, but it is mechanically linked to the lift. This means when the lift is up so does the blocker. Which will most likely cause problems for match-loading into the puncher.
Just 4-bar:
This is the smallest blocker but will be able to block some shooters. This makes it as reliable as the lift and there is no need to integrate it.
Final decision:
With the wings and elevation we do not have enough pneumatics to power a blocker, and it is not worth sacrificing this functionality. We are going to gear the blocker to the lift but replace it with the pneumatic 1-bar if the club can get more pneumatics before states.
Note, we do not have spare motors, meaning this needs to be powered by pneumatics or another subsystem.
CAD & Build Phase 4
Cad & Build Phase 4 - Band Assist Elevation
Ian Gilbertson
January 25, 2024
150
Band Assist Elevation & Lift
Goal: Create a mechanism to couple the stored power of many rubber bands to help lower the lift to elevate the robot, while still allowing for free motion of the lift prior to activation
Brainstorming:
Prototype:
Final Design:
1095R’s release mechanisms
81988E’s release mechanism
Initial prototype
Final Design
Cad & Build Phase 4 - Band Assist Elevation
Ian Gilbertson
January 25, 2024
151
Band Assist Elevation Images
Pneumatic release
Arm hold down
Connection to lift
Cad & Build Phase 4 - Puncher
Nat
January 30, 2024
152
The Puncher
Goal:
Design constraints:
Summary:
We designed two methods to motor share from the puncher and realized that there was no way to design the puncher without it being extremely bulky and interfering with the intake and elevation. So we are going to build an 11-watt 33-rpm puncher and a 5.5-watt 13.3 rpm lift.
Puncher design with the motors next to each other
Puncher design with the motors on top of each other
Cad & Build Phase 4 - Puncher
Nat
January 30, 2024
153
The New Puncher
Goal:
Design constraints:
Testing:
Using our old puncher from the competition before we tested the launch angle and band configuration of the puncher. To test the angle, we 3D printed four pieces for the triballs to sit on and changed the angle of each (we tested 0, 5, 10, 15, and 20-degree angles) and found which one launched it the furthest. We found that 15 degrees shot it too forward, and 20 had too much of an ark, so we are going to take the value in between and use a 17.5-degree angle.
Building:
The puncher uses a 100 rpm motor into a ratcheted 12-tooth gear, geared to a 36-tooth gear connected to a 36 tooth with 9 teeth removed on each side to allow the 48-tooth gear to slip past once it's down. The 48-tooth gear is screwed onto the punching arm. (see images on next slide)
Cad & Build Phase 4 - Puncher
Nat
January 30, 2024
154
The New Puncher - Images
Front
Side
Isometric
12 tooth gear
36 tooth gear
36 tooth slip gear
48 tooth gear
Punching arm
Polycarb holders
Top
Ratchet
Cad & Build Phase 4 - Lift & Blocker
Nat, Ian, Ryan, Reid
February 2, 2024
155
Powering and Adding a Second Stage to the Lift
Goal:
Constraints:
Summary:
Initially, we planned to power the lift and second stage in the same mechanism. However, we realized that this design was over-complicated, and added more weight than necessary to the end of the lift. We converted to keeping the motor on the bottom of the lift and using gears at the top to move the blocker.
Later, the club acquired two more vex pneumatics kits that our team was able to use to convert the blocker to dedicated pneumatic power. See our tournament debrief for why.
Cad & Build Phase 4 - Lift & Blocker
Nat, Ryan, Ian, Reid
February 2, 2024
156
Powering and Adding a Second Stage to the Lift - Images
Top power and blocker isometric view
Top power and blocker isometric view
Cad & Build Phase 4 - Lift & Blocker
Nat, Ryan, Reid
February 2, 2024
157
Powering and Adding a Second Stage to the Lift - Images
Bottom power, isometric
Bottom power, back
Geared blocker, isometric
Geared blocker, front
Cad & Build Phase 4 - Lift & Blocker
Nat, Ryan, Reid
February 2, 2024
158
Powering and Adding a Second Stage to the Lift - Images
Isometric of pneumatic design
Side view of pneumatic blocker down
Note the default angle of the cylinder, how it is facing slightly out, and when deployed it is facing straight up. This is by design, as it uses the force from the cylinder more efficiently than our last pneumatic blocker.
Side view of pneumatic blocker up
Cad & Build Phase 4 - Banding the Lift
Abe and Antonio
February 6, 2024
159
Banding the Lift
Goal:
Constraints:
Procedure:
There are several methods for banding a lift:
Cad & Build Phase 4 - Banding the Lift
Abe and Antonio
February 6, 2024
160
Banding the Lift cont.
Plan:
We will build a prototype of the UTRB and to see how complicated it is and if it is feasible on the robot, as the 5.5-watt power has extremely low power even with a 1 to 15 gear ratio.
Prototype:
In the end:�We have decided to use triangle banding because it will be extremely difficult to attach the UTRB to the lift, and still fit under 11 inches.
Cad & Build Phase 4 - Intake
Abe, Ian, Nat
February 6, 2024
161
The Intake
Design Requirements:
Brainstorming:
CAD Design:
Problem:
Positioning the triball:�One problem our robot faced with this new intake was the positioning of the triball. We had a polycarb piece curved and facing down, which we thought would help pick up the triball. After much trial and error, we discovered that flipping around the polycarb piece so it was curving up actually solved the problem. It held the triball in while crossing the barrier.
Flex wheels to reduce entanglement risk
Note plate bent downward
Testing and Tuning 4 - Intake
Ian, Nat
March 2, 2024
Intake
Problem:
The intake doesn’t consistently flip up when we try to score a tribal;
Solution:
This is likely caused by the intake not being raised enough and the polycarb designed to flip up isn’t hitting correctly.
We are going to redesign the intake polycarb to have a straighter angle that should transfor more force vertically to bringing the intake up instead of horizontally into the drive base.
Old
New
Cad and Build Phase 4 - Sleds
Ian, Ryan
February 6, 2024
162
Distance Sensor Sleds
Because we were going to re-cut the sleds, the opportunity to make changes presented itself. Taking advantage of this opportunity, the decision was made to embed distance sensors into one set of sleds on our robot.
These sensors will help with autonomous programming as we will be able to use them to get absolute distances for movement, and by comparing their readings we will have a backup to the inertial sensor for determining heading.
By mounting these sensors to the sleds, they are low enough to get consistent readings against the barriers on the field, not just the field walls.
Determining the proper height for the sensor
CAD design integrating sensors
Finalized sleds integrated onto the robot
CAD & Build Phase 4 - Polycarbonate Plate
Abe
February 7, 2024
163
Back Polycarb Plate
Reason for including it on our robot:
We needed a way to push triballs over the barrier, fast and effectively.
Process of creation:�We took measurements, �Cut out the piece,�Drilled holes to screw it on our bot�Then I designed the logo, �We laser cut it and painted it so that our logo was made of light shining through the back of it: �����������
���And the piece was complete and effective!
Cad & Build Phase 4 - Wings
Reid, Ryan
February 8, 2024
164
The Wings
Analysis:
In the analysis for our last competition we found that vertical pneumatic wings suit our needs the best. The vertical wings don’t need a locking mechanism have because we are using hinges to pivot the wings up and down. Because the wings don’t have to lock, we can make the wings much more consistent than other wing designs. We chose to move our wings to the back so that they don’t interfere with our intake and lift which is positioned in the front of the robot.
Pros:
Cons:
Cad & Build Phase 4 - Flipouts
Reid, Ian
February 8, 2024
165
Kaboomer Flipouts
Problem:
Solution:
When we designed our band assisted elevation, we knew our center of gravity would not be aligned to the pole. So we need something to hold ourselves from tipping that would be hold us elevated. We designed a mechanism that flips out when the band assisted elevation is activated. It flips out to the side to keep us from tipping. These initially started without any locking mechanism, and the robot started flipping backwards. So we have designed but not tested a way to lock them with a gear and ratchet.
Without locking
Locking mechanism
Code Phase 4
Code Phase 4 - Puncher
Nat
February 13, 2024
167
Puncher Control
Goal:
Plan:
We are going to use almost the same control scheme as the earlier puncher and catapult. However, we are planning to use an optical sensor to check if a triball has been placed, and if so, automatically fire the puncher. Additionally, the lights from the optical sensor will signal to the match loaders if the puncher is enabled.
Setting optical light
Checking the optical reading
Code Phase 4 - Intake
Nat
February 13, 2024
168
Intake Control
Goal:
Plan:
Use a sensor to detect if there is a triball in the intake. If there isn’t, constantly intake, if there is stop the intaken and wait for a controller command to outtake. This means the driver only needs to worry about positioning the robot and then out-taking it. It also reduces the number of buttons required to control the intake that can be used for other important tasks, such as controlling the lift, blocker, puncher, and wings.
Checking for a triball in the intake a setting a boolean
Only receive commands during OP control
Using a integer to control the intake mode
Intaking, outaking, and stopping
Control during autonomous
Code Phase 4 - Lift
Nat
February 15, 2024
169
Lift Control
Goal:
Plan:
The lift control task has to do many things:
We will use an integer, liftMove, to control the position of the lift and a boolean, weDoNotCare, to control if it should move when there is a triball in the intake.
If liftMove = -1 the lift uses a while loop to bring the lift down until it hits a button or receives a conflicting input from the controller. If the blocker is up, it will toggle it down.
If liftMove = 1 it sets the brake mode to hold, so it doesn’t fall, and brings the lift up.
If weDoNotCare is false, the lift is down, and there is a triball in the intake then it will move up. Else it will stay down.
Code Phase 4 - Lift
Nat, Ian
February 15, 2024
170
Lift Control - Code
Only receives inputs from the controller during OP control
Setting the variables
Bringing the lift down if liftMove = -1
Toggling the blocker
Setting corresponding variables
Moving the lift up
Only moving the lift when there is a triball in the intake when the lift is down
Autonomous 4
Autonomous 4 - Position Tracking
Ian
Position tracking
Autonomous - Routes
Ian, Nat
Autonomous Routes
With this position tracking and faster pre-tuned move commands we are going to take this opportunity to rewrite many of our previous autonomous to make them more efficient and add a couple more. See slide 96 and 120 for past autonomous planning.
Sending voltage to the drive
Backing up
Stopping the drive
Drive straight:
Autonomous - AWP
Ian, Nat
Autonomous Routes AWP
This autonomous route descores the match load triball and touches the elevation bar. Which means our teammate only needs to push their triball into the goal for the autonomous winpoint. This autonomous will probably run most pre-elimination matches to maximize our winpoints.
It will be following this route.
Code: Video:
Setting position
Moving to the goal and scoring our alliance triball
Move to the elevation bar while outaking
Resetting position
Remove match load triball
Autonomous - Close Deny
Ian
Autonomous Routes Close Deny
Autonomous - 3 Triball
Ian
Autonomous Routes
3 Triball
Autonomous - 5 Triball Rush
Ian, Nat
Autonomous Routes
5 Triball Rush
This autonomous route rushes the center triballs that can be contested by our opponent. This will be used instead of the 6 triball if our opponent rushes the center.
It scores all of the triball on our side except for the shared triball under the elevation bar. And will follow this path.
Code: Video:
Autonomous - 6 triball
Ian
Autonomous Routes
6 Triball
Autonomous - Skills
Antonion, Ian
Autonomous Routes
Skills
Testing and Tuning 4
Testing and Tuning 4 - Band Assis
Band Assist
Note: The following slides are templates for future notebook organization and do not contain more content on our robot design process
Thank you for reading our notebook
-Team C
##
184
1
2
3
4
5
Right Front Distance
Right Drive Front
Right Drive Middle
Right Drive Back
11
12
13
14
15
Intake
Left Front Distance
Left Drive Front
Left Drive Middle
Left Drive Back
21
A
B
C
D
E
F
G
H
Month
##
185
TEMPLATE
##
186
TEMPLATE
##
187
TEMPLATE
##
188
TEMPLATE
##
189
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
A
B
C
D
E
F
G
H
TEMPLATE
##
190
R2
R1
L2
L1
1, 2 Joystick
3, 4 Joystick
X
Up
A
Left
B
Y
Right
Down
TEMPLATE
191
TEMPLATE
192
TEMPLATE
These tri-balls are underneath the bar. They are placed on top on this slide so they be can moved.
TEMPLATE
1/24th Scale