Professional Documents
Culture Documents
515revision Notebook.4.29.2023
515revision Notebook.4.29.2023
GUIDELINESt
NOTEBOOK
R00 ucnoN 5. Never leave blank spaces, and never erase or remove
flT otebOOk to record Ideas, Inventions, eicperimentation malerfal yoo have added, S1mpty draw Unes lhrough any
Us"9 8 ~rvauons end all work detalls Is a vltal part or any
1
blank spaces at the same time you are making your entries.
NUT 1000<NQ 1 ,ec::ords, roc;ess careful attention to how you keep your
6. Do not erase errors. Just draw a _single line through any
la~ ~n have a posfllve Impact on the pa tent outcome of a
erroneous entry, then add your lmtlals Enter the correct
Nol ~ discovery or Invention. entry nearby.
CONTINUED _!_O_NOTEBOOK NO. 2. pendi are some overall recommendations to help you keep 7 You can supplement your entries wilh suppor1mg material
fo110WW'Jc1ent and aceurnle Notebook entties. Remember, how- (e.g., test•result pnntouls and otherdocumentalion). But you
n'IQ(8 ~ t these are slmply a suggested sel of guidelines. Only
1 must permanently affix the matenal onto a page In lts prop--
¢. ~ey can supply_ the exact guidelines she would like you er chronological location
your ~ to satisfy specifte legal requirements. That Is why we
ASSIGNED TO
~end that you consul! your legal counsel. 8, Never rery solely on any supP'emental ahachment. Always
Include your own entry describing the attachment and add
N.... 51SR P.o.visiorl RECORDING DATA
any condusions that you might draw from Its substance
9. Occasionally, secondary sources might be too large Of Inap-
Your NotebOOk Is a vital record of your work whether propriate lo attach directly lo your notebook. In this case.
SJGNATVflf
DATE
11
'°'
patent purposes, legal records or documenting drug
~rch under FDA guidelines. The Notebook can help you
you can add all secondary sources to an ancillary record
maintained precisely for thls purpose. However, always
remember to wnte a description of these secondary
""TE JSSUED ri 0.'f IS I 2021. BY
f>W"'
a EJact detalls and dates of concepUon
. sources, deafly and unamblguousty, in your notebook.
~
(Never let anyone other than yourself wnle 1n your Notebook
excluding Witness slgnalures, discussed taler).
TABLE OF CONTENTS
11 l
U/'\clerS-ttl.(\~ Go.ne R"'\es
12
J_
Ga,1
13
~ Str.,f&iies
18
Go.A+ t C'host
I cle,n-1-,fy P.-c'ble,m; Dr,vdn:t,f\
19
~ ~~;lf\stor(")
Solu+,011s. o,..:.,e+ro,I)
S/1,:,12.02
2,
S/ 2"1 /2.o?.2
25
.l
20
s~1c>C.1- a.rod PIM: u,:v,~ru.,,, =>'<--(U'll
27
I
28
'"T""
TABLE OF CONTENTS
TABLE OF CONTENTS
SUBJECT
I
I
PAGE SUBJECT DATE
65 TGH- S:luJiO/\ : TrJ-o.~ QM Llf\- b/io/1Pl,1.-
l 66 l J_
" ,i IJ ..Jolt 1,a Or,.-2 h1,.,I\
l)V ~ S/ 2.9/2IJil
" r: f,!,
t Soli,011 : Or;ve-lro•I\
1 S/2.q I lo/15/zaz.2
,115/un.'2
" Idt11t;ft ProbltM'. Ot,l;very l Gltf,/Z.02
"' ) , C\1 1ftirM 5olc1~1<Y1.:,'. Cel ,very Sl~t'}.(n
1
f,1,I
5/3112022
".., l ,,.T.,.,
r,,l11/2o2-;..
(./ I /?J:!27,
o,JPb,: 0,1,w,y 6/'2/2o?.
<o I tq 12.o?:Z
l
· Gu, Id So/u.J-,cr) : De l.ve,y
"' fo,+ SoU;of\ ; Oel;very
~ J4rn~ 9rold e""': TAk¥.e ~ UN-
: &..jM S:ii,~ons:T°"'~ .!< Ult
SUBJECT
0ATE
I,➔ ,()115. 1~-1o.1-~ IMpn.>ve.<-1e()f PAGE SUBJECT
'T'' I
,_
()rti.,,, b "1 »• 129
: l 130 Drivesrra_-\-l::)ies
Tour f"'CVVlel\t Ano.l't~;5 : 5 I SR. Sc..riM..,o.~
1"'.jcl~,1+o.rxl Pbtl: Into.Ke 131
01
lmpn,.l(,hell•~ 712.l'loz:z.
l
132
133
l
,1I,,
111>
•01
134 Rev;siol) D
135 Po lyc:.o.rbol"lo..1'- She.e.t L"'(out-
..
10<
, 136
137
Tcx,.-nll!flt A nc... 11 5 , 5 - M O A S:.9ric;. t vre Ev~n I
8/IIoz. z.
•
05
Gu, Id ~Iv+ :of\ : Lrro.1-',e
lmproveMG/tt
7/4/202- 138
,., Tt5t ~h,·l-.011: Inkh.e I/\1proveMet1+
7/5/2,o G"-" U (_ hc.r ~
' J_ 139
t,I/€ 12..02.2
"I lrwo~r'l!~-1-: (p\or Sel\Sor 7/b,.J;).1..
140
lJc~ 1 +y Prol-le111 : Orive ~re,. ,n Rtb_u. Id
" J,..woVMfiit'. l"\t\.\tl., Lo o.t, 7/1/2IJ2:i.. . l
141 Gra,oi:tlorM 5ol.,t10()5: Or,>le.+r,.'I\ Rd:iv Id 'l./111uri.2
6/l]l20Z2.
X-ir,o\/r'lfm; E~~W'l Stri11.3 f+ol~er
5,1
111 142 -
7/r/2ou... 143
_l
"' ProgroJ'l'i OcbMetry
113 j_
"' Pco.5 re.IV) PI D
7/rzz !j w.l Pl"" : Oc,v.+,,,;, 1<.1,.:iJ 'of 'A/21::J?:2,
_[
:: 1 Pu nv, -f-
7/io/Zo
'6/Zt:1102-i..
"' Pr05rCW) _I
,',' l
Pure
149
C?iui IJ_fo \i.,t,M ~ Or,vd/'C\'. /\ Re'bu, IJ
150
Te~ o.O SoLvtic,() : D,-;vt~:\, R.ek..,,kJ 81!f20Z2..
151 Si ll.Ii.
" P~rQM 5ol"Hon: w;o Po:/)+-
: 1 ~ lu+iof1:
152
153
ldeo+,ty Pro~\~! Oe.1'1ve01 l<.ek.1ld
Gro.;l\f>+CY"'M ~\u+'ioro: ~\..,t"f ~lx,.\d
'if/z.J/1<>2.'2.
l
,,.:, P,09ro.,v1 S k 1 tis 154
..l ~'i,ll::,U.
7/25flo 155
Sel e.c..+ c..rd ~10/i : 0(1\ 1vtry Qtbv1\c)
l 8/ 1/t.en,,'7,.
125
Z12.5IZtJ'l2
l
1.!I
157
156
Jl2.1t zau.
158 ~ SIL<'&/l;Ju
'fj/2/~'l2
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ____;~l~'-i/-l.o2.'/.
159
150
v,l Solv-f;o,'l'-O~l,1,1\/\ Rebv,ld l
'6/lq ll.6
TABLE OF CONTENTS
TABLE OF CONTENTS
194
l 'i I 2-C,/zou.
J_
qlz 7 ll.(J 22.
C/lzq ll/>Z-2..
9, /3012(}22
/OI'°"
10/f./mz
I0/'8/'lD1.:z_.
J_
I0/0./7.tYl.2.
lo/10l2o~
10/1?>/toi:t
10/1'-f/u,z;
'°( 'g/z._.-z
T"7o7
/o/2S(~
:~11::
11/1/2021.
11'2.12c;2
1
1\ / 31 lr., ?.2,.
I \I 8!2.02.?.
11,' 0 /2011
\l/2!,'70t
l
TABLE OF CONTENTS
TABLE OF CONTENTS
261
262
263
264
265
266
267
266
269
270
271
272
273
m
,u 275
276
.... 2n
..."'
278
278
280
281
282
283
284
285
286
287
288
TABLE OF CONTENTS
C4fllllluod hompags X
This is our
SUBJECT
Engineering/Digital
DATE
,..
/rgo
"'' Notebook
-- Cont,nwd . , ~ ~
~rue~~
0.1' t;/15/2021.
""*
DISC:t.O&(o TO AHO UNDERST<X>O av
0.T<
Mission Statement
Logan Daugherty
Grade: 12th
Experience: 5 years
Strengths: Computational thinking,
Analytical skills, Organized
Roles: Lead Programmer, Lead Notebooker.
Supporting Builder, Co- Strategist
PROPRIETARY INFORMATION
~/15/ 2'0'2,Z.
°""5/15('2.G2~ PROPRIETARY INFORMATION
~"""
:....-'"-""" _____
' - ""'"_-__)(.,__ _;_________________-----, ~
FIRST PRACTICE HOW TO READ THIS N OTEBOOK
------- Team Goals --------
design.
LABEL
3. Win a Banner at a Signature Event
• Banners at Signature events are very exclusive and challenging to
obtain.
Labels for diagrams, sket ches, etc. will be all
capitalized.
4. Create a skills autonomous that places top ten in the world ranking
• In the global autonomous skills rankings, it is challenging t o reach
the top ten. This will place us in the 99.9% percentile of skills. (notebook, page)
• The resources used to achieve this score will be used ln our References to a specific page numbers will have
tournament autonomous programs as well. this format
~ .... 2\.
C..1/nuodto-
S/15 rz.0iz.
SIG'iA'T\.lfff
~"'-~~
~ ..ll-i-
~
..11 • ,,.--=--
_WJ.IV\ll_
_ cl:~1::.::.--._----=.--=~-==----_j
._ · _ _ _ _""_n:_:::5/'..!..:1t :J _.,_ PROPRIETARY INFORMATION
~ i:J'~
°'5Cl.OSEO TO AND ~DUISTOOO BY/
~~ PROPRIETARY INFORMATION
6 )
a..-_,_ 5 '" ~ ~
- 1~~:::""".::"':..::.:""'":::.-::::.::_X
.:.::...__ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _l 12-
IColors and Tabs DESIGN PROCESS
Yellow Identify Problem
Blue
Green
Identify Problem
Tab
- Select and Plan
Build Solution
Test Solution
Design Process
• Problem description with words and pictures
• Ishikawa diagram
• Problem statement
• Solution Requirements & Goals
2. Brainstorm Solutions
• Possible Solutions with positives and negatives
• Labeled Diagrams
Iteration Tab
• Citations from outside sources
Brainstorm CAD • Prototyped Solutions
Solutions Tab Tab
0
5. Test Solution _J
~ _ ----------------,-~~n=----~eon_,_,
__m~,______2S______
S/IG/W'27-
PRoPRleTARv INFORMATION
BUDGET IDENTIFY GAME PROBLEM
_ __ __ _ _ _ _ _ _ VRC Spin up - - - -- - - - - -- -
We will layout a budget for this year to better allocate funds and
optimize our spending We will analyze VRC "Spin up· so that we can better understand
this year's game.
Item Quantity Cost
Competeoons
I Field Elements
Oise
· Final total of possible 60 discs in play /
• 38 Discs start on the field
• Preloads add 4 more per alliance (2 per team)
__________
• Match Loads add 7 more per alliance
Roller • Possession -A Robot/ Disc status. Robots can only possess up to 3 discs at a
• 4 rollers total time.
Barrier
• 25.89 inches wide
• 25.89 inches long
I Violations j
• 1 inch tall
• Entanglement -A Robot status. A Robot is Entangled if it has grabbed, hooked, or rJ
Autonomous Line
attached to the net. H
~
• Diagonal line that separates both alliances
• Trapping - A Robot status, Robots that constrict another to a small
• Starts and ends in the corners left of each respective driver station space(roughly the size of one field tile) are considered Trapping. Robots that are
• Robots that cross the line during the autonomous period forfeit the 1Opoint bonus Trapping for longer than 5 seconds are in violation of this rule
to the opposing alliance
tn-
Alliance Lines • Match Affecting -A Violation which changes the winning and losing Alliance in :::t:.
• Marks the starting station for robots
the Match. er}
• Separated Into two sections
0 • Minor Violat ion -A Violation which does not result in a Disqualification. Usually
3 Tiles closest to a team's Low Goal while being adjacent to the closest
perimeter wall to that alliance's driver station minor violations are accidental and/or momentary.
0 2
to the nght
_Tiles closest to a team's Low Goal while being adjacent to the perimeter wall
of that alliance's driver station • Major Violation - A Violation which results in a Disqualification. Usually match
affecting and intentional violations qualify as major.
Con/inwd 1o,,... II
~-"'-\....._
SI 17120 2.,1.. PROPRIETARY INFORMATION DISCI..OsEot0AHOUNDER.110008Y
""'s /l7/2o1.1-
SI\ 7/202. 2 PROPRIETARY INFORMATION
c,,,---1'1
12 """""""-- \
BGoal we will understand the game rules for VRC "Spin up" to develop
strategies
EJ Standard rule disallowing teams from crossing the autonomous line
- A robot is considered across the line if it contacts the foam tiles, discs,
Standard rule explaining the legal robot setup or rollers of the opposing alliance
1. Robots stay within their respective alliance lines - The 14 discs on the autonomous line are exempt from this rule
2. Robots may not touch any field elements or game elements
other than their preloads and perimeter
3. Robots start within an 18"xl 8"x18" cube EJ Rule that assesses discs exiting the field
- Discs that leave the field are returned to the nearest point in which they
left
~ Rule that allows robots to hold up to 2 Preloads before the match
~ - Preloads can contact no more than one robot
- Robots that intentional remove discs from the field are in violation of
this rule
- Preioads start fully within the field perimeter in a non-scored position
EJ Standard rule that allows teams to introduce match loads during driver
control
- Drive team members are not allowed to introduce match loads at any
point before and after driver control
- Robots may not contact match load discs that are held by drive team
members
- Robots and drive team members are not allowed to break the field
perimeter plane
Conbtwod .._ X.
PROPRIETARY INFORMATION
Defensive Strategies
Offensive Strategies
Shoot discs Into high goal Push opposing robots while they attempt to score a disc
Negatives Positives
Positives Negatives
• Difficult to shoot and la~d disc • Stops the opposing al Hance from
• Discs can not be descored • May cause damage to our robot
• Capacity to score up to 26 discs • Every miss scores 1 point for the scoring 5 pts
opposing alliance • May cause our motors to overheat
• Scores 1 pt for our alliance
Positives Negatives
Positives
------ Negat ives
• Easy to score • Easily descored
• Protects points for our alliance
• Descores from other alliance • Limited to scoring 40 pts • Prevents us from scoring additional
• Forces the opposing alliance to change points
their game strategy
Push discs into low zone
Descore discs from the opposing low goal
Positives Negatives
Positives
Negatives
• Easy to score • Worth very few points
• Keeps discs away from opposing • Only 60 pis worth can possibly be • Easy to score
alliance • Each disc descored only removes 1
scored • Descored discs can be used to score point
points for our alliance
Expand as large as possible for endgam
_e_ __ • Possibility of getting stuck on the low
goal wall
Positives Negatives
Pin opponents during the last 10 seconds
• High point potential • Adds several pounds of weight:o: theJ Positives
• Difficult to defend robot Negatives
• can only be scored during last 10 • Puts an opposing robot out of play
seconds • Will make it harder for us to expand
• May restrict an opposing robot's
during endgame
Score at least 3 Discs in the Goal in Autonomous endgame expansion to one t ile
• Exerts torque on the drivetrain
Posit ives Negative Push opponents while they attempt to match load
• Lock in points early for the whole sitives
match • Requires high precision and accuracy Negatives
from a shooter mechanism
• Greatly increases our chances of isrupts opposing alliance's match load
• Will leave the rollers behind
winning autonomous cess • May get match load disc stuck in our
robot
Wastes opposing alliance's match loads
.. ~~
~ lttNGIHlOlfflXxl IY
Canbnu«l1opa,. I
• Exerts torque on the drivetrain
--- Ccnbnued1o~ ~
Improve
• * This serves
Snup / Problem Statement
as a guideline
<
II
;o for how we will
We need a mechanism to move around the field so
() manage our
that we can interact with the game objects.
(/) time effectively
"2.
:::,
C * Schedule
I "C
(/)
Cl)
flexibility is
shown through
Solution Requirements
I I
Ill
en
0
:::,
overlapping
blocks *
*
*
Must only use legal VEX Robotics Competition parts
Must fit within 1s·x1 a•x1 a• cube
Must work using no more than 6 motors
~
w
...J
ID
0
0:
a.
Solution Goals
ct
i==
<
;o • Traverse the length of the field in less than 3 seconds z
w
() * Turn a single revolution in less than 2 seconds 0
(/) • Push a 11 lb robot across the length of the field in less than 5 seconds
"C
5'
I
C
"C
(/)
Cl)
I
Ill
en
0
:::,
ff) A,ci ~ r,
.... 5/w/Tol-'"L
~ jJ:
5/UJ/2Ifl1- PROPRIETARY INFORMATION
PROPRIETARY INFORMATION
22
co,,,,,.,,,,--/..1
l
-omnidirectional
Omnidirectionalan
d T ction Wheels .
ra an d tr action wheels set up in
wheels
a tank-drive orientation
- one omnidirectronal wheeI an
d ne traction wheel per
°
g/ l
[TOl'Vl EWJ
l
Possible Solutions - Wheel Size
4• Omnidirectional/Traction Wheel
- Each wheel in a given drivetrain type is a 4 inch
side "'"" wheel
- Most common wheel size
•
CD
)J - Sprockets connected by Rubber tread in the VEX - Each wheel in a given drivetrain type is a 3.25
l>
inch omnidirectional wheel z
z tank tread kit
- Sprockets are oriented in a triangle that is parallel
0
8
)J
to the ground
j:::
::,
_J
0
~ l/l
V, Positives
0 Negatives ::?:
r- Posit ives Negatives a:
e
-i
Great traction
Thin Less traction on ground ~
0 Very Slow l/l
z
z Strong Very Slow turning Balanced in speed and st_r_e_n_
g_th__.li...._ _ _ _ _ _ _ _ __,._ _ __
Great at climbing objects <
a:
CD
2.75" Omnidirectional Wheel
Walking Robot S!OE V[EIJJ - Each wheel in a given drivetrain type is a 2.75 inch
- C-Channels that move back and forth . . E~ omnidirectional wheel
- Looks like a person walking
c C· CHUINE:t..
Positives
Negatives Positives
Negatives
Tall
Extremely slow
I
Unique Great Center of Gravity
Does not turn Slow
Move long distances quickly Very Strong
Will not climb over game objects
--~ J;J~
~ l 0 A H O ~ 1Y
L-
S.0..TUAE
~ . , - z.y
~ ~ PROPRIETARY INFORMATION
~""
D<SCl
µ<-..y~"5'
DlO""D~
PROPRIETARY INFORMATION
..., ....... 'Z 3
Red Cartridge t · motors We have decided to prototype the 3 most common drivetrain types to get the
• Uses the green cartridge prese in most accurate information
- Spins up to 100 RPMh . s requiring extra strength • This will help us understand how these drivetrains will compare under our
• Usually used for rnec amsrn priorities
Positives Negatives
Green Cartridge
Ill
. Maintains the green cartridge preset in motors
. Spins up to 200 RPM
~ . usually used for mechanisms requiring a balance z
z of strength and speed 0
~
ll
f:=
::,
.J
~ 0
Vl
(I)
0
,... Positives Negatives :li:
a:
~
0 Has a good balance between
speed and torque
Loses speed to friction in the Mecanum ~
z
:z cartridge
~
a:
(D
Positives 6 Motor
Negatives Standard Drive
Very Fast
Very Weak
ea,,...,.. , . _ is
Range
s,a"-'Me
8.40
1.61
9.51
0.55
7.57
1.2
Fastest: 6 Motor Omni
Most Precise: Mecanum
Conbnu,ed t o ~
'2S
"'"'
-~Uk~
~ Jjcµj,qu/
..... 5/2S/2w..1-
~/-7.,<;it-2,.c,2 ,._
PROPRIETARY INFORMATION
C«ltkwed from pags z.r
'-~
28 .,.,.,._,,.__ L7
~ Test 4: Push
Speed Maneuverability Rotation Strength Total
Test Procedures O
that its back is contacting a perimeter wall H·Drive 4 4
1 Place prototype 0 ~ f~am tlle_s s ont of prototype 3.5 3 14.5
2. Place "Tipping Point r~bot_in \ystick and start stopwatch Traction 2.5
3 Move prototype forwar.,..usi,ng JPoint" robot hits wall 2 2 3.5 10
4_ Stop stopwatch when ipping Wheels
5. Record results
Omnfdlrectional
3 2.5 3 3
and Traction 11.5
Test Results (measured in seconds Wheels
5.56
Mecanum
5.54
6 Motor Omni
____ _ ..=,.---_c.n_
_ _ --:c m_u«110P6fJe t9__
5 /tf;/2.,a) 'Z2- """""""""'"- '>O
PROPRIETARY INFORMATION
r:J/U,/~2.?....
°"?5/2.rJ2.()2_?_ PROPRIETARY INFORMATION
Decision Matrix - Motor Cartridge Sketch Plan
Red Cart 2 3 5 5 15
- >tP. -;,~-~~
[Front View] 0~ .. o1i
r-12 ;
0
= ~
These sketches are what we expect our drivetrain to look like. We plan to use
aluminum to reduce the weight of the robot. Reducing the weight will increase
the acceleration and speed of the robot. We do not anticipate this weight
reduction to effect the center of gravity of the robot since vertical expansion is
limited to 25 inches.
llATr
ConlH>uodlo"'9• 31
$ /2,C/WVl,,, """""""""'- 3,'2.
.,5'/2 i,,/1.i:J1.."l.. PROPRIETARY INFORMATION
f;J / 27 /'"l.oZ!Z-
"""5/z7/202..2... PROPRIETARY INFORMATION
ICAD Plan
B B
7.600
I
~bam1111
6:o:.6ai00mam:J!~ ___J_
SCALE 1:8
SCALE 1:8
z
5
[FRONT VIEW) [SIDE VIEW) l)lN '111&,1~ 3.029 0-fo~:mmi~1~j
a.
0
z
~
SCALE 1:8 I SCALE 1:8
t
----~
Item Quantity Part# UJ
__J
~ i ■ IIJ UJ
VS Motor
~~~·
6 V1
n/a
s
6
A
need to tune odometry. Because we are using the standard tank drive that can
slide sideways, we need to use the 3rd back tracking wheel to account for Assorted Nuts n/a 7
drifting.
1/4" Square Shaft 9 8
Shaft Collars n/a 0
9
...l
Assorted Nylon Spacers n/a 10
1:5 -· 3of 7
2 1
..,. Ceo-to- 33
5/l'ofa:J'l'l,
""' 5 1.g)L.62..'1.. PROPRIETARY INFORMATION
PROPRIETARY INFORMATlON
X.__________:_:..._:....__________.;;;.__ ~35
con__::-=---'-"""____
7
4.375"
z
0
i==
:::i
...J
0
Vl
g~
CD C)
N
'-
0-
'-
<.J")
"'
Above are the completed 6 motor omni drivetrain. Building this was simple
C>
_j
because of all the work we did with sketching and CADing. We followed those
models and to assemble this build.
This build is unique because of its direct conversion from motor to wheel. This
eliminates the friction that would have occurred with the use of gears and/or
chain.
--------------'"""=----...:"""=-===-,.,_ _l_
°"" Conbnvodb- ' \
5/z.111~1- °""'
..5Iti)2.(Q..'"L PROPRIETARY INFORMATION
Sl2.9('ZQ2.Z.
°5/2Cf-/ 201-L.. PROPRIETARY INFORMATION
;"'~_'.'.'.:""'~-., ~-~~-~~-=-3-~G_'________
. . ______~ - -·ccc-c......cc'--"cc..::..-------=-'--'---- - - - - - 7 -~
TEST SOLUTION
rTest 3: Roller Mobility l
Test Procedures
Drivetrain
1. Place prototype facing the roller adjacent to an alliance's
driver station
Goal We will test the solution so that we can see if it meets our 2. Start drive program and start stopwatch
requirements and goals 3. Drive prototype to each roller
4. Stop stopwatch when the prototype touches last roller
5. Record results
est 1: Rotation
Test Result (measured in secon :ls)
Test Procedures Trial 1 2 3 4 5 6 7
1. Place design on foam tiles
2. Upload 100 rotation program 6 Motor 6 .67 6.43 6.83 6.28 6.29 6.35 6.52
3. Run program and start stopwatch Omni
4. Stop stopwatch when design stops
5. Record results Average: 6.48 Range: 0.55
Test Results (measured in seconds)
j Test 4: Push
Trial 2 3 4 z
--i 5 6 7 Test Procedures
m 0
~ 6 Motor 32.12 35.26 30.91
1. Place prototype on foam tiles so that its back is contacting a perimeter wall i=
::,
'-
Vl 32.73 31.54 32.06 32.52 2. Place "Tipping Point" robot in front of prototype
0 Omni ...J
r 3. Move prototype forward using joystick and start stopwatch 0
C VI
:;;j Average: 32.45 Range: 4.35 4. Stop stopwatch when "Tipping Point" robot hits wall ~
Vl
0 5. Record results w
z Test Results (measured in seconds ~
/ Test 2: Speed
,t-,-
Trial 2 3 If.I
4 5 6 7 )
Test Procedures 6 Motor <~
4.45 4.83 4.74 5.01 5.12 4.38 4.94
1. Place design so that the back contacts the field perimeter wall ~
Omni
2. Move design forward using joystick and start stopwatch
3. Stop stopwatch when the front of the design hits wall
\t;
Average: 4.78 Range: 0.74
4. Record results
Trial
j Conclusion I \Jh
(~
2 3 4 5 6 - Traverse the field in 4 seconds or less
7 Success -
6 Motor - Turn 1 revolution in less than 2 seconds Success
8.78 8.52 8.36
Omni 8.48 8.27 8.52 8.48 - Touch each roller in less than 10 seconds Success
- Push a robot across the field in less than 5 seconds Success
Average: 8.49 Range: 0.51
Our 6 motor omnidirectional drivetrain has succeeded by passing 4 out of 4
goals. We are excited to explore all the new abilities that a fast and strong robot
has to offer.
Ccmxiu.dto-} I
srzq !zofl.i. """
5/~2 3/2o)..l PROPRIETARY INFORMATION
:Jlz.c1lzoi.2..
°""5(2°{2o1.1._ PROPRIETARY INFORMATION
IDENTIFY PROBLEM BRAINSTORM SOLUTIONS
_ _ _ _ _ _ _ _ _ _ _ _ Delivery - - - - - - - - - - - -
- - - - - - - - - - - - - Delivery _ _ _ _ _ _ _ _ _ __ __
Positives
Negatives
6 Solution Requirements
recise
LJ
m
z imple
Tends to curve in t he direction
---i the flywheel spins
~ • Must only use legal VEX Robotics Competition parts
• Must fit within rn·x18"x1 a· cube
tabilizes disc trajectory
1l
;o • Must work using no more than 1 motor
0
,..
ID
m
~ Solution Requirements Double Flywheel
- Blue cartridge motor geared to be 7 t imes faster
* Shoot a disc from the autonomous line 2 out of 5 times spinning two flywheels that are separated a disc
• Rapid-fire 3 discs in less than 6 seconds length apart
* Accelerate to maximum speed within 3 seconds - Both flywheels are connected to each ot her and
spin in opposit e directions
Positives Negatives
Fast Complex
Easy to tune
Does not stabilize disc trajectory
Shoots discs straight forward
..,. ....
S / 3 0/'l...orz.2,
5,.3( ·20"l
"'"E)?:>o/'2f:J1-'l. PROPRIETARY 1NFO RMAT10N
°'Tls/31 2.on PROPRIETARY INFORMATION
40 1°"'___ 9
Football Throw
Puncher . that pushes the back of
- Winds up a mechamca1arm - Mechanical arm holds a disc on the top and bottom
the disc when release_d d t th that spins a gear and throws it forward
_ Uses a 36T great with shave ee - Grabbing and throwing discs is triggered with
rack. • h th gear rack the pneumatics
- once the 36T loses contact wit e '
• Power behind throwing discs is rubber band powered
gear rack propels a disc forward
I-
Shoots over opposing robots Extremely limited range Precise
Very slow recovery time
Adds the most spin to disc in
Offsets center of int ake
Soccer Kick
- A Disc is dropped onto an upside-down catapult that
J#=t=:la-- ,__PIS TolJ
balancing its trajectory
Positives
Negatives
Unique
Extremely Large
Gives discs a spin to stabilize
trajectory Difficult to tune
- Precise Easy blocked by opposing
robots
--- o..n:
Conlinu«ltop,QO y1
Prototyped Solutions
SELECT AND PLAN
- - - - - - - - - - - - - Delivery _ _ _ _ _ _ _ _ _ _ __ _
~
~ We will select the solution that is best for our team so that we can
plan how to build it
Rubber Band roller fixed
intake Prototype Testing
.... c,,,,,,,,u«J.,,... X
~~~ (,/I IZ.O'Z..'2.-. c,,,,.,._, IO,,_ c.f 'i.
1 1
_Q ....,/),~
--------JKJ13:VL--=--V\.{,.,--....::..:'()
fl ( ' . " { / ··-:2._1
DATE/ f_:_f_
l~LO-L.::..__PROPRIETARY
__ INFORMATION
__ J r;.; Z. I 1.D'l'l
PROPRIETARY INFORMATION
,U I"--- 1(3
lJ Test Results (measured in seconds)
4 5 6
Test 4: Distance
Trial 1 2 3 7 Test Procedures
1. Place prototype on flat, even ground
Flywheel 2.55 2.63 2.47 2.74 2.62 2.56 2.54 2. Set target velocity of prototype to 127 (max)
& Wall 3. Once prototype reaches 127, fire disc
4. Measure distance to where disc initially contacts ground
Puncher 1.45 1.35 1.73 1.67 1.36 1.75 1.47 5. Record Results
Test Results (measured in inches)
Double 2.95 2.63 2.67 2.54 2.72 2.66 2.64 Trial 1 2 3 4 5
Flywheel 6 7
Double
3.55
6.35
3.74 3.47 3.54 3.25 3 .33 3.68 I Precision
Recovery
How reliable the design is
How quickly the design prepares next shot ---N
Flywheel
5.93 6.25 6.16 6.44 6.35 6.16 Distance Accuracy Precision Recovery Total 'u
Flywheel 5 4
Flywheel Puncher Double I &Wall
5 3.5 17.5 0
&Wall Fastest: Puncher ..,j
Flywheel
Most Precise: Puncher
Average
Range
5.45
0.51
3.51 6.23
Puncher
Double
1
5
0
2
4.5 5 10.5 '.
0.49 0.51 2 3
Flywheel 12
~ - -------- - °""
n
Continued .. _ '-IE,
PROPRIETARY INFORMATION
ea,,w,u«/--4
Accuracy Precision Recovery Total
Distance
Flywheel & 5 2 5 3 15
Curved Wall
we will use the Flywheel & wall because of its high composite score on our
priorities.
V,
m
r-
ISketch Plan I
m z
!:J j
~ Q.
z 0
0 [FRONT VIEW] z
'O [SIDE VIEW]
<l:
z► t;
w
..J
w
1/1
We decided to add polycarbonate on either side of our flywheel wheel on the CAD.
During the prototype testing, we noticed the flywheel, like a fan, produced a lot of
air. This air ultimately reduced the efficiency of the flywheel. To reduce air
resistance, we covered all holes of the flywheel with polycarbonate.
- - - - - - - - - - - - - - - - - - - - -~..
-,-,-----ConbmMHIIO- y7
2 1
o ■ O O O O O_ D D D
-
~ On
0
0
0
BUILD SOLUTIO N
______________ Delivery------ - - - - - - -
~
0
[TOP VIEW)
[ISOMETRIC VIEW)
B B
V,
m
,...
m
Q
)>
z z
0 0
"O i=
::>
~ P•rt t Hem QtJantJty
[FRONT VIEW) ...J
z [SIDE VIEW) 0
3• Joa Flu wherl V,
Versahub Ad~prtr
C
...J
Custom Potyurbon•tr n/1 ::>
!Il
vS Motor
Assorted Gr,rs nla
Delivery
A • .t.s.sorted Metil Structure nl•
Assorted Sr.ndoffs
114• squur shift
n/a BOM A
Shaft Colt.rs n/a
10 Bearing Alts n/a
II Assorted Spacers n/a
12 Auortrd Screws: n/1
13 Assorted Nucs n/a
1:4 • · 4of7
2 1
"""""-""
~ Jj r,.l.•.,'1-,
~ ~TON4Jr;;;;?,;~
~ 'I J-' Vv..ji\J(_,,,
PROPRIETARY INFORMATION
c,n,m,«Jfrom - 50
---~--,---~
::;__.,__.__,Trial
-< ..2.----+---+---+----,f----t--
2
7
-;---r----t
3 4 5 6 ITest 4: Push
] z
~ Flywheel& 4/5 4/5 3/4 Test Procedures 0
3/5 4/5 4/5 3/5
"' Wall ;:::
0
,-
1. Place prototype on fiat, even ground ::,
J
c Average: 3.57 2. Set target velocity of prototype to 127 (max) 0
-< Range: 1 3. Once prototype reaches 127, fire disc V)
0 Iii
z 4. Measure distance to where disc initially contacts ground w
5. Record Results I-
/ Test 2: Speed Test Results (measured in inches)
Test Procedures Trial
1. Set target velocity of design to 127 (max)
2 3 4 5 6 7
2. Start stopwatch and design Flywheel & 72
3. End stopwatch once design's velocity reaches 127
73 77 75 76
Wall 72 71
3. Record Results
Test Results (measured in seconds) Average: 73.71 Range: 6
Trial 2 3 4 5 [ Conclusion
6 7
Flywheel & 2.47 2.54
Wall 2.73 2.34 2.29 2.73 Shoot a disc from the autonomous line 2 out of 5 times
2.42 - Rapid-fire 3 discs in less than 6 seconds Success
Success
Average: 2.50 Accelerate to maximum speed within 3 seconds
Range: 0.44 Success
Our Flywheel & Wall delivery has succeeded by passing 3 out of 3 goals. We are
eon,""""',._ S I excited to utilize this to score disks In both driver and autonomc.:o;.;::u:.::s...c.:::e::..ri:.::o:.::d:.::s:__
· _ _ _ ___,
Cononuet1 to P9 X
G/folzo1...1-
"'rr {/ hf2oLl, PROPRIETARY INFORMATION G/G/'lo '2-2_
PROPRIETARY INFORMATION
IDENTIFY PROBLEM BRAINSTORM SOLUTIONS
Intake & Lift
Intake & Lift-- - - - - - -- - - -
. .1dent1·ry an o b"Ject,·ve for our robot
~
We will . so that we can address
it and build an effective Intake and Lift We will brainstorm possible solutions for our intake & lift so that
L.::'...J we can select the best one for our team
/ Problem Statement
Possible Solutions - Intake & lift designs
We need a mechanism
. t o pI·ck up d·,scs from the field and move
I dthem
· to our h
shooting
. mechanism
. so th at we can score more than our pre oa s in a mate Hinged Intake with Bottom Plate
.- _ ~ l'oorCAl6:•4TE - Intake moves up to better
c.~t.H-,IIIJE.L
accommodate picking up discs
J - Uses a hinged wheel
'vil(:ft.,
r--:-:-
Pos1t1ves
z
0
Negatives ;:::::
::::,
..J
Uniform compression on disc Complex 0
., Accounts for middle divot of Difficult to tune
<I)
~
disc a:
Eliminates disc jamming 0
Solution Requirements
Fixed Intake with Bottom Plate
• Must only use legal VEX Robotics Competition parts
- Utilizes a fixed wheel and polycarbonate
* Must fit within 1s•x18"x1 a• cube ramp
• Must work using no more than 1 motor
- Inspiration of design from youtube video:
"Purdue SIGBots VEX Spin Up 2022-2023
Ri20"
Solution Goals
* Move a disc from the field into the shooter In under one second Positives
Negatives
* Have the stamina to pick up 30 discs in 60 seconds
• Weigh less than 31bs to keep robot weight down and center of gravity balanced Fast (sub 1 second pickup)
Uneven disc compression
Light (mostly consists of rubber
More likely to jam with multiple
band and sprockets) discs
Simple & not mechanically
complex
t
Fast (sub 1 second pickup)
ves
Most mechanically complex Negatives
Consistent Heavy
Less likely to drag on the field High traction
Heavy relative to size
CD
tiles
I Somewhat squishy
Mechanically forgiving
Special hub pieces required for
3• & 4•
~ Possible Solutions - Intake & lift rollers materials Flex Wheels - 60a z
z
0
~
D
- Hardness level comparable to a car tire
- Available in multiple sizes (1.625", 2•, 3", 4")
~
::,
....J
3:: 0
Vl Flex Wheels - 30a V)
0 - Hardness level comparable to a rubber band :E
r- a:
~ -Available in multiple sizes (1.625", 2•, 3•, 4")
~
0
z
Positives Negatives
,J
Positives
High traction
Mechanically forgiving
:-i: Negatives
-
Heavy relative to size
Special hub pieces required for
3• & 4•
Firm
z
<
a:
ID
High traction
Heavy relative to size
Easily Compressed
Special hub pieces required for
Mechanically forgiving 3· &4" Intake Roller
- Rubber Fingers
Positives Negatives
DATE
Pos itives
High Traction .
Negatives
--~- Rubber Band roller fl""xe
...d.,____ _
l
Rubber bands wear out intake
Light weight relative to size - Time consuming to replace
Squishy/ compressible • Sprockets block side entry of
High mechanical forgiveness objects
OJ
:o Tank Treads/ Flaps
~ - Large rubber chain links with
~ attachable naps
0 - Lots of size options (any size
~ sprocket)
"'
0
,...
Flex wheel hinged intake
~
0
z Positives Negatives
L
Customizable tread pattern Prone to snapping
Flaps push items well Medium Traction
Light weight relative to size
~ ~ ~ ..
DISCu>sEo TON.a UNOEMTOOO&Y
PROPRIETARY INFORMATION
"''"'
~ G/ q/'ZD22
ConlinuBd from Plt90 S-J
Rubber Flex Double
-
----;::-~--:-----------------=------, -~
SELECT AND PLAN bands wheels flywheel
Intake & Lift Average 1.225 0.76 1.6 Fastest: Flex wheels
B
Goal We will select the solution that is best for the intake and lift so
that we can plan how to build it
Range 0.2 0.1 0.2
Most Precise: Flex wheels
Test 2: Consistency
Prototype Testing Test Procedures
1. Attach prototype to back of robot base
Test 1. Speed 2. Line up top of conveyor to shooter disc holder
Test Procedures 3. Hook the wires up to run prototype motor
1. Attach prototype to back of robot base 4. Run motor at full speed
2. Hook the wires up to run prototype motor 5. Record Pass/Fail if the disc lands where it is needed for the
3. Run motor at full speed . shooter
4. Record the amount of time it takes for a disc to be picked Test Results (measured in success)
up and moved to the top of the intake
Test Results (measured in seconds) Trial 2 3 4 5 6
Vl 7
z
m
,--
m
Trial 2 3 4 5 6 7
Rubber
band
v v v v v v v :5a.
Q
)>
Rubber 1.2 DNF 1.3 1.3 DNF 0
z DNF 1.1 z
band Flex X
0
wheels
X X v v v
<{
Flex .8
b
w
.7 .8 .8 .7 .8
heels
.7
Tank tread v v X v
...J
w
X v X
Vl
Trial 2 3 4 5 6 7 Throughout testing, we realized that the intake does not have to be all one type
of roller, but instead a combination of multiple roller types that are best in their
respective placement on the intake.
Rubber X X X X X X X
band
The combined specs are below;
Flex
wheels
v v v v v 'V v Speed Weight Consistency Mechanical Total
forgiveness
Tank tread v v X v X 'V X
Hybrid Flex
wheel hinged/
5 4 5 5 19
Rubber Flex Tank tread rubber band
band wheels roller intake
Fixed Intake 3 5 3
tank tread 3 13
[lop View]
eon,_,.,,... bI
..,. .... b/lo/ 2.D?.-2 ~-~ ~
- eon-.,.... (o'),
G) lO/u,z.z.. PROPRIETARY INFORMATION OtScl.OSED TO AAD UNO(ASTOOOIY .... "'"6/1 I/2o2-L
~Al,v1JJ"~Az~c,_;... G/11/zo,zz_ PROPRIETARY INFORMATION
b CcinrinuedfrompafJIJ 2
2
/ CAD Plan 1
[TOP VIEWJ [ISOMETRIC VIEW]
B
8
V,
m
r
m
Q z
:i,.
:3a.
z 0
0 (FRONT VIEW] [SIDE VIEW] z
"O
~
~ l:;
z LU
_J
P•rtf Hem Qvilndry LU
1/l
'T]O,AAexWhetl
2"30ii Ruwtlttt
VtrHhub Ad,ptus
Custom Pd)Qrbonlto!
Beanngn.u
"''
"'·
BOM A
Sh•ftCallus
"''
10 Asscrt~SpKm "''
"''
~
11 Anan:itdScrtws
"''
__ " Moto,
13 Rul>btrNnds
\..._.._
"'' 1:8 · 6af8
2 1
ea,,,,,_, lo p,90 63
..
=----
~ ~~~
DISCLOSED TO AND UNO(AS1'000 BV
D,\Tf
PROPRIETARY INFORMATION
VVl J3i,,_,Az..c;z;:_- PROPRIETARY INFORMATION
BUILD SOLUTION
Intake & Lift ----------- TEST SOLUTION
Intake & Lift
· s0 that we can test its
We will build our planned soIut1on
performance ~
l::_J
We will test the solution that we have built to ensure it fits the
requirements and potentially find any flaws
/ Assembled Build /
Trial
2 3 4 5 6 7
Hybrid flex .6 .7 .7 .7 .6 .7 z
wheel/ .6 0
rubber band i'.=
::,
..J
0
V)
Test 2: Consistency Average: 0.66 Range: 0.1 Iii
Test Procedures w
f--
1. Attach design to back of robot base
2. Line up top of conveyor to shooter disc holder
3. Hook the wires up to run design motor
4. Run motor at full speed
Note:
5. Record Pass/Fail if the disc lands where it is needed for the
Overall with the prototype and CAD plan the shooter
build process was simple and just a matter Test Results (measured in success)
of assembly.
Trial
This design is unique because it is very light 2 3 4 5 6 7
and quick at collecting discs. Its light desig
Hybrid flex 'I/ 'I/
additionally balances the center o f gravity o 'I/ 'I/ 'I/ 'I/
our robot w heel/ rubber 'I/
band
Con-,._ x_ Avera e: 1
Ran e: 0
..,. b/1,f2.o2-1- - """""""""'-b.b
PROPRIETARY INFORMATION
0.SCu)sEO TO ANOUl',IOlR.ST0008Y
.."' b{~\\(2D2..c ~
PROPRIETARY INFORMATION
c,,,,,;,u,dltom psga]'..
Test Procedures
1 Attach design to back of robot base
IDENTIFY PROBLE M
2: Line up top of conveyor to shooter disc holder Roller Mechanism _ _ _ _ _ __ _ _ __
3. Hook the wires up to run design motor
4. Run motor at full speed .
5. Record Pass/Fail if the disc Is successfully picked up by the We will identify an objective for our robot so that we can address
it and build an effective roller mechanism
~m .
6. Push in discs from alternating sides from the side
Test Results (measured in success) Problem Statement
band
Solution Requirements
-i
Average: 1
§I
Range: 0
Conclusion /
* Must only use legal VEX Robotics Competition parts
* Must fit within 1s·x1 s·x1 a· cube
~ - Pick up and index a disc into the delivery in under 1 second Success * Must work using power from another subsystem ( drive, intake, or shooter) ~
3 - Pick up 30 disks within 60 seconds .iccess
UJ
...J
o
z
- Weigh less than 31bs S·1ccess
m
Solution Goals 0
0::
a.
Our Hybrid Intake & lift has succeeded by passing 3 out of 3 goals. We are
excited to utilize this in providing a steady flow of discs into our delivery in * Spin the color roller t o the proper color in less than .5 of a second ~
match play and skills. * Have enough t orque to spin the roller consistently i=-
z
* Have a high tolerance for error where the roller can be misaligned 3 inches to UJ
Q
the left or rig ht and still be successful.
* Overall simple and effective
ContJnu«J l o ~
EJ . brainstorm
we will • poss'ible solutions for our roller mechanism so
that we can select the best one for o u : :C.Sr
~ Of: v#
-, wJ
• Similar to how a human hand turns the
roller while resetting the field
-..~---, _ _ Tl/lW -r~OL!a
,.,,"====---c.E '1'
(....._ _ _ c-~tt~<lyfl,...
Possible Solutions - Designs r,<; ~~ Rllo\--,,.
I
· Extremely consistent
(-11i01-+ _ _ Durable Heavy
Difficult to build
Difficult to power
Positives Negatives
m
~ Consistent Heavy Possible Solutions - Motor sharing z
z Durable 0
Positives
Negatives
Positives Nearby to roller mechanism
Negatives Chain breaks then roller cannot
location
Very simple Lower speed of intake = less
move
Easy to build Shaft prone to bending gearing down Roller Will spin forward and J
Consistent
light
I Add more friction to other
subsystem
simple backwards with intake _____J
------------- eon,~,L
lil)~ TUFIE
C/15 I 1.):)1,?..
""" bI15IlD22 ~.r<¼t .e-~~y
-~~-~ (,,/I"I t.o 2-2.
PROPRIETARY INFORMATION
Q,\Jl '/1•1,
'(JI)
MI"">
'-'-' vt... PROPRIETARY INFORMATION
"""""""'-- 0
Chain roller to flywheel . C.S!D, v)Ew/ LE>< WYl;i;I,
• Connect a chain to the flywheel mechanism RO'-t..Eil. Mt<,.N Prototyped Solutions
allowing the movement from that motor to also PR<,<KEr
power the roller 1'1\tAJ
Positives Negatives
Claw twist
G/ 17 ZC:;, 2.
PROPRIETARY INFORMATION
72 """"---
11
- - ... --
~
SELECT AND PLAN Test2:Speed
Roller Mechanism - - - -- - - --- Test Procedures
1. Setup roller in the match orientation (in
We will select the solution for our roller mechanism so that we between the two colors)
can plan how to build it 2. Place prototype in front of roller
3. Set the target velocity of the prototype to
127(max)
Prototype Testing 4. Start the stopwatch and start motor
5. Once the prototype has claimed the roller,
Test 1: Strength stop stopwatch
Test Procedures 6. Record results
1. Setup roller in the skills orientation Test Results (measured in seconds)
(blue up & screw up)
2. Place prototype in front of roller Trial 2 3 4 5
3. Set the target velocity of the 6 7
prototype to 127(max) Inclined Plane 0.25 0.93 1.12 0.64
4. Start the motor and wait 2 seconds 0.32 0.74 0.52
5. Record whether the prototype
Wheel Roller 0.15 0.14
V> successfully claimed roller or not 0.15 0.1 5 0.15
~ Test Results (measured in success)
0.15 0.14 z
m
Q
Trial
Claw Twist 16.13 20.42 14.52 13.53 16.25 15.92 17.30
:s
a.
)> 2 3 4 5 6 0
z 7
Incline z
0 Wheel
~
"ti Inclined
Plane
X v X X X X X Plane Roller
Claw Twist <t
1--
u
z w
Average 0.65
...J
0.1471 w
Wheel Roller v v v v v v v Range 0.87
16.30 Fastest. Wheel Roller
Most Precise: Wheel Roller
V)
0.01 6.89
Claw Twist X X X X X X X
Incline Wheel Claw Twist Test 3: Cycle
Plane Roller Test Procedures
1. Setup roller in the match orientation (blue
Average 0.14 Most Success: Wheel Roller up & screw up)
0
Most Precise: Wheel Roller 2. Place prototype in front of roller
Range 0 0 3. Set the target velocity of the prototype to
127(max)
4. Start the stopwatch and start motor
5. Once the prototype has rotated the roller 5
times, stop stopwatch
6. Record results
- - - - - - - - - - - - - - - - - -...=,~,___ eon,._,,._. 73
ConthJ«I to page ,. ~
b(lt l~OL.;__
''" 'l<Zo'l- ...
°"" PROPRIETARY INFORMATION
Test Results (measured in seconds) / Sketch Plan ]
Trial 2 3 4 5 6 7
Inclined Plane 102.S 104.2 102.6 108.2 107.4 110.2 100.9 C-£.lb'!WOOr_c.
Inclined Plane 5 3 3 16
Wheel Roller s 5 5 15
Claw Twist 3 5 3 13
51Gt.,AT1Jfl[
PROPRIETARY INFORMATION
PROPRIETARY INFORMATION
(;DOtinv,d!rompag,7
j CAD Plan 2 1
[TOP VIEW] [ISOMETRIC VIEW]
B
B
[SIDE VIEW]
z
5
a.
''0 Q
z<{
i t;
w
'•rt l lt•m ..J
qu.,,dty w
l/)
J"lOiflnWhftl
2"~A0Whtt1 rl.l---
"'-.l
ve,-,..hubAdiipmn 0
Auarted Sprocttt1
°"'"
nit
nit
Roller N
"
A AJsoned J-4~ Struccure:
J-
CunomPol-Jc.r1>ofW1~
~ar1ngFt.ts
nit
nit
nit
BOM A
Shan.Celius nit
10 Auorted Sp.cm nit
AHCll'ledSa~
"
12
nit
,, """
Rubbtt b.lncb nit
1:s -· Sofa
2 1
Con.,,_,,,,,,.g, 77
l«.NATUAE
"""''"'""'°- "-..__
PROPRIETARY INFORMATION
~t~~ou,~~ij llAlt G l'i ' l-0-L 1.
- ~ ~'e..,
PROPRIETARY INFORMATION
;. "-'"' -"·"'- ---- -_.c.'1<-_ _ _ ________________ _____7 -~
BUILD SOLUTION
Roller Mechanism - - - - - - - - - -
TEST SOLUTION
Roller M echanism - - - - -- - ---
~
~
We will build our planned solution so that we can test its
performance ~ We will test the solution that we have built to ensure it fits the
...:c:__J==-=--r--'e-=
a,u"'-
ire.:.;m
.;.;,..;:
e;_;,;
nt.s and potentially find any flaws
/ Assembled Build / Test 1: Consistency /
Test Procedures
1.
Setup roller in the skills orientation (blue up & screw up)
2.
Place prototype in front of roller
3.
Set the target velocity of the prototype to 127(max)
4.
Start the motor and wait 2 seconds
5.
Record whether the prototype successfully claimed roller or
not
Test Results (measured in success)
Trial 2 3 4 5 6 7
Wheel Roller v' v' v' v' v' v' z
v' 0
Average: 1 Range:O i=
_,
:::>
/ Test 2: Speed 0
l/l
Con1intJfldlapa9a
DATE
aiaw.tulE "°'2._linuodtt,_ _ 80
{;/2CJ/ZD'2-'2-
DATE / / r,j.-,
~<"\ "\
~ LJJ ~t,-.1..,
r PROPRIETARY I NFORMATION GI E-L/<Jcil,2.
~ A A ~
..... ~/2.,,\ / 2J5).c PROPRIETARY INFORMATION
/ Test 3: Cycle
IDENTIFY PROBLEM
Test Procedures
1. Setup roller in the match orientation {blue up & screw up) Endgame Expansion
2. Place prototype in front of roller
3. Set the t arget velocity of the prototype to 127(max)
4. Start the stopwatch and start motor
5. Once the prototype has rotated the roller 5 times, stop
EJ We will identify an object ive for our robot so that we can address
it and build an effective Endgame mechanism
stopwatch
6. Record results
Test Results (measured in seconds)
/ Problem Statement J
Trial 2 We need a mechanism to expand
3 4 5 6 7 outwards and touch as many field tiles
Wheel Roller 1.65 1.1 2 1.42 as possible for the last 10 seconds of
1.39 1.73 1.53 1.64 the match so that we can score
Average: additional points during a match
-I
m
~ / Conclusion
Solution Requirements ~
E - Turn the roller consistently to the opposite color Success
l1J
..J
::! - Rotate the roller the in under .5 second ID
~ Turn the roller 5 times Success • Must only use legal VEX Robotics Competition parts 0
a:
Success *Must fit within 1s·x18"x18" cube a.
• Must work using only pneumatic components c::
The Roller worked great on the robot! It performed similar to its prototype counterpart
j::
The decrease of speed is due to a new chain ratio in favor of torque to provide more z
precise readings. The loss of time is negligible, but t he increase in strength is Solution Goals w
important for field roller variance. Q
* Expand in less than 2 seconds
* Cover at least half of the field tiles
* Weigh less than 31bs to keep robot weight down
Conlinwdtopo~
DATE
String Positives
Negatives
-Available up to¼" diameter
- Rope or sting both available Durable
Heavy
- Unlimited amount allowed Easy to fasten to
I Very large
(D
Possible Solutions - Endgame design z
~
z
Positives
Negatives
0
"i=
~
:0
- Very light weight
Very compact
- Tangles easily String Catapult
3
0
(/1
~ Can be easily pushed can be ::;:
Easy to coil up Pneumatic launch
(/1
easily moved by opposing a:
0 String bundled up inside of
r
C
alliance
catapult cradle 8
Vl
--i
0
z -
Wire Rope
Technically ·rope•
z
~
a:
I
- Unlimited amount
- High tensile strength
Ill
Pos itives
Negatives
I
Very compact Simple & not mechanically
Can be easily moved by complex String can come out prematurely
Easy to coil up
opposing alliance
Durable
Somewhat heavy
Ha rd to tangle
r-a...Tf
a<i,;;,-rii,e&~ "°""""""'°-~\\
G,/22/'2.0'2.2. PROPRIETARY INFORMATION OISQ.oS(D TO AH0 u,«)£A$1000 av
.... b/23j1..<I2.."- --
~h~ .fJc. PROPRIETARY INFORMATION
l>-,-,.,."
LJ
It
Metal drop down
- Four hinged 35x long
metal pieces
- Drops down from
pneumatic release
Metal Scissor wall
Deployable scissor lift
Pneumatic deploy
Rubberband expanded
Positives
Negat ives
Positives
- Fast (all metal has to do is - Negatives
unfold) Low point potential
- Heavy Durable
- Consistent (nothing to tangle) - Can block off a portion of the
Very heavy
Metal can block other
field Very large
mechanisms
CD
~ I
z
1/1
String shooter
z
Similar to how a human can
bXl shoot a rubber band with their
0
;:::
~ fingers. Only difference is a :::i
..J
1/1 weight and string attached 0
0 V1
r- Pneumatic release mechanism ~
e
-; a:
0
z ~
z
~
0:
Positives al
Negatives
Fast
- String can tangle
High point potential
Compact Requires storage system for
string
.._ ---------------
Light
•~iiAniii• ~ ~
PROPRIETARY INFORMATION Orlset.osEo TO N-.0 LIND£AST000 av ..,..
Jo/~ PROPRIETARY INFORMATION
I '
I
IResults
string is ours on the field assuming
other teams might also use string
for endgame
Due to the overwhelming ratings of the String Shooter, we decided to not prototype
our solutions. It's simple and efficient design will give us the most scoring • Easy to score
potential over all other solutions. The next step of our endgame design is the o High contrast on the field tiles will
length and material type of the string. make it quicker and easier for
scoring refs to know exactly which
tiles our string is touching
"""-ro,- ~
PROPRIETARY INFORMATION
DISCLOS(QlO AAo UNOCASlOOO IV
°'"' 6/-i.q ]202.2.. '
/Yc, P,,~--- PROPRIETARY INFORMATION
Endgame String
Length [ Sketch Plan /
00
[Top View]
V,
,...
m
/ CAD Plan m
Q
"Cl / Sketch Plan )>
i; These images are of one unit. We plan to build z
z three of these and place them on our robot 45 (ISOMETRIC VIEW]
- / DP Vn I\N 1 .
degrees apart to increase scoring potential.
0
"Cl
~~
Our string
J
11~1~ 1/t: 7:-~~ projectile is
expected to look
[TOP VIEW]
!
~
V
,
similar to the left.
I 4~
,c..-,
r1'
I
- .... - -
~
-
~t::: II(
JJ
We will flatten the
linear slide to
improve the k
!
aerodynamics of
\ "\
µ 1H ~1~ tr J I_. I-' I .. f::
the design
I iA ~ 1,, - I
• -
"·"""'~--~""""' !..'~•'
- ') ~ I "\. '-" i..-
J
I
[SIDE VIEW]
...,.,_ ~ ~
eon,..,.,...,,...qo
~To~ayty_~ '"'"'Mi, ~ ~
o.ii bh-\r~(J2,)__ -
PROPRIETARY INFORMATION
Dl5Q.OsE0 TO AND 1Jf.OEA5T00o BY .,..,,,
~ J:r°'-7~ io/J.4f2cJ2'L PROPRIETARY INFORMATION
Ccntinu«J from~ 'I.
2 1
BUILD SOLUTIO N
Endgame Expansion
~
~
We will build our planned solution so that we can test its
performance
B B / Assembled Build
{TOP VIEW]
{ISOMETRIC VIEW]
V,
,...
m
m
q
)>
5
6
9.492 - - --
z
0
'U
£:'
z
Part# Item
Endgame Double Acting
Quantity
A Pneumatic Cylender
BOM 2 Custom Polycarbonate nla
A
3 Metal Structure nla
4 Assorted screws nla
5 Assorted Nuts nla
6 Bearing Flats 2
1:3 6 of7
2 1
~ x
~
IIGH4l\ME c.n11nu.,,,,, ....
DATE
PROPRIETARY INFORMATION
"'"'
C,/Uoh.02,z..
TEST SOLUTION
Endgame Expansion Test 3: Point Potential
r;,:;---i We will test our solution to find flaws and ways to improve it
~ Test Procedures
1. Place design on corner of field
I Test 1: Speed /
~::....-L~---.. Test Procedures:
2. Deploy Endgame design
3. Record number o f tiles claimed by robot
Test Results(measured in tiles)
1. Upload program that deploys the endgame on startup Trial
2. Run program and start stopwatch 2 3 4 5 6 7
3. Once engame has settled, stop stopwatch
4. Record results String Shooter 18 18 18 18 12 18 18
Test Results (measured in seconds) Average: 17.14 Range: 6
Trial
String 0.4
2
0.5
3
0.4
4
0.4
5
0 .3
6
0.4
7
I Conclusion
Shooter 0.4
--1 Expand in less than 2 seconds
Success
rn--1 Average: 0.4 Range: 0.2
Cover at least half of the field tiles
Sui;:cess
z
0
Weigh less than 31bs
VI
s ---~ ;::::
0 =>
r- ..J
e The Endgame mechanism completed all three of our goals. Its near-instantaneous 0
--1 Test 2: Consistency VI
0 scoring method will be use ful in matches where defense from opposing team
t;;
z Before Trails: prohibits slow expansion. Because the endgame can be used in skills driver and l1J
autonomous, our composite score has effect ively increased by 100 points. We are I-
• Deploy endgame 5 times and record distance st ring traveled
- Set average of 5 runs as a benchmark for test excited to discover new match st rategies that use our quick-response design.
Test Procedures:
1. Deploy endgame and record distance string traveled
o·
2. Record whether distance is within 1 of benchmark
Test Results (measured in success)
Trial 2 3 4 5 6 7
String
v' v' v' v' X v'
Shooter v'
::t::.
Average: 0.86 Range: 1 CQ
PROPRIETARY INFORMATION
·--·~~
DISCLO~o TOANO U,,,0£Mfooo BV
0.1'
- Con~to~
bh'7/-W2..""2..
~
PROPRIETARY INFORMATION
Conr,,,uedlmmpogo )(
DRIVETRAIN WALLS
DELIVERY WEIGHT
CJ;: J.
CJ
A~+..r
/ Solution
Con/Jnood lo pa[Jt!J ~ •
OOCL.0sE:>TO~IHXFlsrooo ,,,-
-_,TE
.... ~i~17-D).._")_
~ (of 2 ~ j '2.o2,'2., PROPRIETARY INFORMATION
OSCLOSEO 10 MO llf.lO£ASlooo 8'1'
PROPRIETARY INFORMATION
IDENTIFY PROBLEM
Intake Improvement BRAINSTORM SOLUTIONS
Intake Improvement
We will identify a problem with our intake so t hat we can address
~
~
it and improve our design's performance We will brainstorm possible solutions for our intake problem so
that we can select the best one for our design
/ Problem Statement
Possible Solutions
We need a mechanism to maintain chain tension to the front intake wheel while
icking up discs so that we can have a more efficient and reliable intake.
Fixed Bar
- Horizontal Standoff Vertically offset from the
- .. C.SIOf. Vi~J
........
front intake roller
- Shares the same center of rotation as front
Solution Constraints intake roller
___.._______________
Easy to tune
~ Solution Criteria
Light
j::
-0 ::i
;o -'
0
0
CD
* Pick up disc in 1 second VJ
r * Have no slips in chain tension for 20 degrees of rotation ~
m Intake l ock a::
~ • Collect 3 discs in x seconds
* Weigh less than 1lb - Standoff rotationally intertwined with front and
middle intake rollers
~
z
- Forms a shape reminiscent of a 4 bar lift <t
a::
- Similar to intake lock design from last season's CI!
"Tipping Point"
Positives
Negatives
- Accounts for both sprockets of
Heavy
[ chain
Difficult to tune
Contains a wide range of motion
S10~ruJ1E
Gf3olzoz'2 °""""""'"'"-4,_
1rH ,,,., iX.\.~, ,
Dl5ct,0$(c,lO AND IJkotRSTOOO 1$»
J
PROPRIETARY INFORMATION
l[1ett\ !\¼5\):IN'~
PROPRIETARY INFORMATION
c..:.,,ioE -'iEwJ
Pneumatic Push Ellfi\c
- Standoff pushed against chain with constant low rnu,
Prototyped Solutions
pressure .
- Pressure against chain is generated by a piston an
d
1 ;.n,ooFF
,P0 cc«r
regulator . . Prs;,,. We have de~ided to prototype the 3 most diverse solutions to get the most
widespread 1nformat1on
- Similar concept to suspension on a vehicle L'(l••~•li.
....,:::.;,;,::.:.;_:::.:,;;,,;,:;.;_;,;~~-----
Positives Negatives
. - This will help Us understand how these chain tensioners will compare under
our priorities
Band Holder
- Standoff pivoting on front intake wheel
CD - Rubber banded in a way that always has the
j; standoff have contact with the c hain
z
~
;o
3::
Positives
CJl Negatives
0
r-
e Light
--i Difficult to maintain condition
0 Does not cause much friction Difficult to tune
z
~ _ _ _ (.•<~¼l~i
7/1/?..oz.1
·"'"'7/1 2CJ7J._ PROPRIETARY INFORMATION
PROPRIETARY INFORMATION
I
c,,nt,nuodfrompago\OC> ~
. ;:=:=--'--'--'=--------------------, 101
SELECT AND PLAN Test 2: Tension Degrees
Test Procedures
Intake Improvement
1. Allow Prototype to fall to its resting position
~
2. Hold protractor so that its base line is flush with
We will select the solution that is best for our design so that we the bottom of the intake hinge and its origin is
c::__J can plan how it coincident with the intake's
4. Spin intake motor at max speed and slowly raise
the front intake wheel's supporting L-brackets
/ Prototype Testing / 3. Once front intake wheel's chain slips, Record
angle measure of protractor
Test 1: Intake Disc Test Results (measured in degrees)
Test Procedures
1. Place Prototype 5 Inches away from disc, facing Trial 1 2
the disc 3 4 5 6 7
2. Start stopwatch and slowly push disc towards Fixed Bar 4
prototype 3 3 3 4 3 5
3. Once disc contacts bottom polycarbonate of Intake lock
delivery, stop stopwatch 12 12 12 13 12 12 12
v, 4. Record Results
m
r Test Results (measured in seconds)
Band Holder 20 21 23 21
z
m 20 20 21 j
Q Trial a.
2 3 4 0
)> 5 6 7 z
z Fixed Bar Intake Lock Band Holder <t
0 Fixed Bar 1.38
1l 1.93 1.32 2.14 1.58 2.63 1.32 Average 3.57 12.14 20.86
t
UJ
£; Intake lock largest Range: Band Holder -'
z 1.85 1.52 1,78 1.36 UJ
1.48 1.52 1.04 Range 2 1 Most Precise: Intake Lock (/)
3
' Band Holder 2.63 2.32 2.92 c~
2.81 1.39 3.01 2.42 Test 3: Rapid Collection ,I-)
Test Procedures b
1. Place prototype in same conditions as it was in <1-1
,-. Fixed Bar Intake lock Test 1
b Average
Band Holder
2. Place an additional 2 discs adjacent to the first (Q
1.76 1.5 2.5 and in line, but not contacting, the robot
r~
.~
- I.)
,t Range
4. Spin prototype at max velocity, start stopwatch
""""'"' eo,,,,,,,,.,,,.,... 10 I
°"'"'
7/2./262.7...
DAJE 7, 2-/2.o ]._.(_ PROPRIETARY INFORMATION 7 /2. IZo'2.?.-
"'"' 7/zJ2.02.{_ PROPRIETARY INFORMATION
102 eon.,_,..,.._ IC> I
' l
. Test Resulls (measured in seconds)
/ Sketch Plan /
Trial 2 3 4 5 6 7
Fixed Bar 2.47 3.32
0 0 D O 0
2.94 2.37 2 .49 0
3 .22 2.34
b C.·LIIA,JrJe._L.
Intake Lock 2. 13 2.57 2.63 3.18 2.88 2.59 2.87
Band Holder 3.23 3.48 3.92 3.74 4 .24 4.32 3.59
- [Front View]
We will be using the Intake Lock to tension the chain for our front rol ler because
it scored the highest composite score on our design matrix. This design
resolves our problem of losing chain tension while collecting discs anywhere.
PROPRIETARY INFORMATION
C,,,,,,,,uodlrom,_, loq
I
CAD Plan I 2
1
j
[TOP VIEW)
[ISOMETRIC VIEW]
B
®',~' I
B
11.569
z
17.85 j
Q.
P.art • Item
I
l_
Q
z<(
t;
w
..J
w
1"30.Atx~ffl 1/l
2•~FIU:Whftl
Vtrs.hub M.lpcen
Assert.ta SprockfU .,. Intake
°""" .,.
A .,,
Assarttd Metal Stru<turt
Cusrom PdyCllrt>onlr, .,. Improvement A
BurlngR.lts
10
Sh•rtColl•rs
AUCl'ttd Sp.(ttS
.,."''
.,.
BOM J
11 An0r1K1Saews ,,,.
12 Mo<o,
13 Ruobtrbiincb nl•
1:8 9ol9
2 1
ContJttfJfd lo pagtt
SIG~
Continllltdtopag. -~
DAT£ -
~~.... b,...l,\ljtr
PROPRIETARY INFORMATION D•~o~
PROPRIETARY INFORMATION
~E
eo,,r/,,00<1humpago ')(
~ ~
BUILD SOLUTION
Intake Improvement TEST SOLUTION
~
l::_1
We will build our planned solution so that we can test its
performance
B Intake Improvement
We will test our solution so that we can evaluate the design's
Performance.
[ISOMETRIC VIEW] / Test 1: Intake Disc /
/ Assembled Build
Test Procedures
[TOP VIEW] 1. Place Design 5 inches away from disc, facing the disc
2. Start stopwatch and slowly push disc towards Design
3. Once disc contacts bottom polycarbonate of delivery, stop
stopwatch
4. Record Results
Test Results (measured in seconds)
Trial 1 2 3 4 5 6 7
Intake Lock 1.42 1.62 1.29 1.83 1.20 1.34 1.83
-
Test Procedures Vl
Note:
Overall, with the prototype and CAD
plan, the build process was simple
1. Allow Design to fall to its resting position
2. Hold protractor so that its base line is flush with
the bottom of the intake hinge and its origin is
~ t
r
(D
r
I
coincident with the intake's
and just a matter of assembly.
4. Spin intake motor at m ax speed and slowly raise
the front intake wheel's supporting L-brackets
3. Once front int ake wheel's chain slips, Record angle tr---
measure of protractor
Test Results (measured in degrees) C>
Trial 1 2 3 4 5
-ti -~
ml"3>
6 7
Int ake Lock 14 13 13 13 14 13 14 I'
Average: 13.43 Range: 1
Conbnued to P894
SI G ~ - - ----..,. _eo,,°""""'°,,...IOJ{
7/<.f/20'2.'2...
DATE7/4/-2.rr2.l PROPRIETARY INFORMATION ~~~~ 0
"'1/£"/2022
7__/51?..02.'2.
PROPRIETARY INFORMATION
Test 3: Rapid Collection
Test Procedures
1. Place Design in same conditions as it was in Test 1
IMPROVEMENT
2. Place an additional 2 discs adjacent to the first and in line, but Color Sensor
not contacting, the robot
4. Spin Design at max velocity, starl stopwatch and push discs
into Design at a constant speed
EJ We will automate roller claiming so that we can have more reliable
fEJ
6. Once all discs are in the delivery storage, stop stopwatch. autonomous programs
5. Record results
Test Results (measured in seconds
The robot should know whether the goal is owned and how to claim it.
Trial 1 2 3 4 5 6
7
Intake Lock 2.43 2.94 2.48 2.47 2.13 2.58 2.83
DATE
PROPRIETARY INFORMATION
tltSCLOSEO 10 AND IJ~f\STOOO IY
"'"7/b/~'-
,<'I,, .tr_~ PROPRIETARY INFORMATION
IMPROVEMENT
Match Load
IMPROVEMENT
Endgame String Holder
I IThe robot should be able to pick up discs straight from the match
Concept _ load s tation.
/,..c_ o
_n_c_e_p_t.'/ The robot should be able to securely hold onto the endgame string
securly for the entirety of the match and then allow for a smooth
release of the strino durino the last 1 Oseconds
,. ,1
ISolution I Solution I
We have utilized a polycarbonate plate We have a shelf on the robot for the
and our roller wheel to pick up match load :::2::iii string to sit on. Using a pneumatic
discs. This will allow us to collect three cylinder and a mesh covered piece
discs without moving the drive joysticks. of polycarbonate, the string is held
We are very happy with how our match in place. Once the endgame is ready
load attachment came out. to deploy, the string holder opens
and the shooters fire.
- .,
.
~--,-~ ~ °"""""""'-x.
PROPRIETARY INFORMATION
DISQ.O!e:o TO ANO UNDtRSTOOO BY
DATE
7/?/~2.?..-
7/ ~/7.DZ.'2- PROPRIETARY INFORMATION
PROGRAM ODOMETRY Important Statistics
- Odometry is a methodology that finds the robot's position at any place on the * Decision : We will be using the PROS library for our odometry to increase
field. effrciency when programming. This will allow us to spend more time
on our autonomous programs
-----
- By using the three tracking wheels on the drivetrain, we will calculate the robot's
X, V. and angle value based on an origin point on the field
- Equations : 1Advantages J
tis sin(0+/i0/2)=liy
Change in Y 2----EJ i
v l
I
I The PROS odometry works consistently
It tracks the robot's position anywhere on the field
We measure the robot's position in inches
tis cos(0+ti0/2)=tix
Chaag, ;, X ~ i The loop updates the position every 20 milliseconds
tisr- /isl = ti0
2L
c~~e~a~~ /
The angle of the robot does not reset after 360 degrees
- Our backtracking wheel allows us to measure strafing
X
We will use Odometry in autonomous to calculate where the robot.is.at any point
in time
/ Process Start
Update li0 to the difference between sl and sr over 2L ; Update 0 to itself plus ti0
.... eoot/nuedtopago I~
Coolinwd1o,,_ K..
PROPRIETARY INFORMATION
PROPRIETARY INFORMATION
eo,,,,,,uod rrom _, 11'-I
PROGRAM PIO P - Proportional
D - Derivative
Targe :E t : t error
- Encode
For our robot
Ki f e(t)dt Set Robot Y(t) - Derivative restricts rapid changes in motion for both acceleration and
Drive Motors deceleration
- Multiplies a gain factor by the change in distance from the target over the
change of time
VEX Encoder
Values - We will use this in our autonomous programs to prevent the robot from making
D Kd ~dt sloppy movements that cause dri~ from the intended route
- Equation : Kd ~
dt
Calculate the
difference between
the target distance
Use PID to decelerate, accelerate, and
transition between both by: multiplying Assign the speed
I Code I
the error by a gain factor, taking the sum of the drive to u(t) Rinclude "11ain.h"
and the current
of all changes in error, and finding the void setDrivePID(double dist){
distance and assign //Capture Starting tiae
current change in error, respectively. Add
it as e(t), or error
each factor together to get u(t). 4 double lastTime,.,pros: :millis();
5
- We will use this in our autonomous to get to places more accurately and 6 //Oeftne PIO attributes across the X axis
efficiently. This will greatly improve our autonomous programs 7 double kP ,,. 6;
double kt • 0.801;
9 double kD • 9;
10 double error .., dist;
11 double errorsum = 0;
12 double errorlast • error;
r.;;_,;.;;;....,=----------------------.,....,.=,.----~~==-=::::'•~
_Conbn_,._Li__G'
15 int nttleT.h,e•O;
16
17
//Cht!clt if the positt° ; ( i f , y 011d angle hove been tffet
•hlle(settleTi•e<500) 0 PROGRAM PURE PURSU IT
18
19
~
//Update the Last Error to adopt to change
We will program and tune pure pursuit so that we can have
~
20 ,rrorl.tst•error;
21 quicker and more efficient autonomous programs
22 //Set the distance froa the target as ERROR
23 error•dhtastartValue;
General Overview
24
25 //Add to the cu11Ho t ive Errors over time - Pure Pursuit is a methodology that allows the robot to follow a path without
26 errorsu~error •Je; stopping to change direction
27
- By using the X, Y, and angle values found using odometry, we will drive the robot
28
29
38
//Set the speeds based on these attributes
spood•(kP•orror)+(kI •errorSum) +(ko• (error-errorlast)); 0
("':;\_ through multiple points on the field
-Equations: ~ 2
31
32
//Sot the speed in dr!ving f!eld centr!c0
setDrive(speed);
y=m(x-x,)+y, Y ----,L / 0
33 K+✓r'-(x-h)'=m(x-x,)+y,
E---_-x_____ _ _------
1st point X Y/ 3
K-✓r'-(x-h)'=m(x-x,)+y,
34 //J..'oi t for i,otors to update 1
35 pros: :delay(18); 2nd point X
36 } ......................., ........................
,
+
37 setDrive(B); • ♦ •••••••••• . . . . . . . . . . ..
38 }
xO T 0=tan·1 (X/Y) Angle
0
I
0
While the robot
0
I
hasn't reached its
target
Set and solve PIO Run the motors
yq F=100 Forward
Velocity
I
/ Conclusion /
Robot~-"-.,___ _ _
Center
+'-----
~ ~D margin
- Our PIO loop works consistently across many distance inputs with a ¼" error
- We will use Pure Pursuit in autonomous create complex movements
-
~ - The tracking wheels we have were good at updating the robot's current position
throughout the function I Process Start
- We have an effective process for tuning the gains with good results.
, ~ 1. Increase P gain from Ountil the robot slightly ocelates
Generate Pure Pursuit path and create a circle around the robot
' 2. Decrease P gain to its last value before oscillation
' 3. Increase I gain until the robot slightly ocelates and bring back value before
ocelation
4. Repeat steps 1-3 two more times Find Intersection Points between circle
5. Increase D gain until robot ocelates and bring back value before ocelation
Turn robot in direction of point while driving forward at the velocity of F
....,.,_ Con/Jtlu«I IOf»f/0 y'
- .,.. o...T'E
7/ I i/z.o2.:2..
PAOPRIETARY INFORMATION 7/t7.-/2o?..'2.
PROPRIETARY INFORMATION
EJ The following fs an excerpt of our circle-line intersection. Full program is
in Notebook Appendix A
Co,,t!nuod-,,... l l
278
2 8 // •· • ··•······ Fl/,o POINrs ••••••••••••••• II 279
239 II F(nd thr ~o pofots tllr robot can drive to on a gtven Line 280
double xRoot2 • (-quadrat1ce - std::sqrt(std::pow(quadraticB,2) - (4.9_- •- ~ ~
240 void purr-Pursu1t::fJndPotnts(po1nt2 circleCenter, double radius, point2 linePoiitl, point2 quadratic()))/ (2. e"-q uadraticA);
HnePoint2, int indeic)( 281
241 double )'Root2 • ml • ( xRoot2 . xl) + yl;
2S2
242
/I If the X and V voLues between the .start and end point of the line or~ close , make it not 283 xRoot2 +• circleCenter.x;
24)
lf(std::•bs(lln•Polntl.y • llnePolnt2.y) < 8.803){ 284 yRoot2 •- circleCenter. y;
244
UnePolnU.y • linePoinU.y + 8,083; 285
245
246
H(std::abs(HnePointl.x - linePoint2,x) < 0,003){
286
287
II If the potnt is wtthtn the Line, odd it to the List 3
247 if(xRoot2 > rdnX && xRoot2 < 11axX)(
linePointl.x • UnePoint2.x + 0.003; 288
248 point2 newPoint(xRoot2,yRoot2, 9);
) 289
249 allPointsArr(index] .appendite■(nNPoint);
290 )
258 291
d®blt al • (lineP0int2.y - line-Point1.y)/(linePoint2.x - linePointl.x); )
251 292 catch(exception){
252 double quadraticA • 1.0 + std: :pow(ml,2); 293
25)
294
254
doubh Xl • UnePointl. x · circleCenter. x; 295
255 296
double yl • UnePointl.y - circlecenter.y;
256
257
dm.ible quadratic& • (2.0 ' cnl • yl) - (2.0 • std: :pow(•l, 2) • Xl);
Find the X value of
0
258
Evaluate if the 1st
259
double quadr.iticC • ((std::pow(111, 2) • std::pow(Q.,2))) - (2.e•y1•111•x1) + stj::pow(yl,2)
- std!!PQW(radtus,2);
the first intersection
point 0 point is within the
line snippet 0
Run the same
process for a
260
261
262
Hsu allPoints; I Conclusion
second point
263 try{
264
· Our Pure Pursuit improves the development and execution time of autonomous
dOtJblr xRootl ., (-quadraticB + std: :sqrt(std: :pc,_;
0 aticB,2) with a ½" error margin
265
qu•drotlcC)) )/(2.8•qu•dr•tlcA); 1 - (4.8 • qua:JraticA •
• Our PIO function works well in the adapting to changes in direction along the
double )'Roou .., ■1 • (XROOtl - Xl) + yl; path
266
267 xRootl +• circleCenter.x;
· The Pure Pursuit methodology allows us to make the following movements
268
1. Move along a path
yAootl " circleCenter.y;
2. Drive in a semicircle motion
2 '
,78 3. Turn to point
271 4. Move a specified distance
m
t
double •Inx • std: :11in(linePoint1 .x, linePoint2 .x);
2'2 double aaxX • std: :11ax(UnePoint1,x, linePoint2.x); · For each of t hese movements, Pure Pursuit allows for realignment in the event a
2'3 misfired disc from another robot interacts with our drivetrain
274
II I/the pofnt is within the L!ne., odd list
275 if(xAootl > minx && xRoot1 < •axX){ 2
276 point2 newPolnt(xRoot1,yRoot1,0);
277
allPointsArrfindex) . .appendite■(nei..Point), Its on array of List2. IT sho.JLe hlOrlt as
1o1ritten., but something is wrong.
CMl/nuodto,_ uq
712.o /?0'2-"2--
·.,,.,.,7/2..s:ih.o)._,'1._ PROPRIETARY INFORMATION
PROGRAM SOLUTION
Con--- 171)
Win Point
~ We will create an autonomous that scores the autonomous win
#include "main. h"
7
*Start 8 / I Set up autonomous progratfl
o • ·Score Disc 9 void a_LBONRT(){
. _Spin Roller 10
Start
20
21
22
23
24
I I • • - •• CLAIN BOTTa-, ROLi ER •• •• / I
qulckRoller() ; I I Quickly cLauo r-olt,r
pros: :delay(S0) ;
0
shooterMtr..•122; / / Set up ddivery to score di.tits
1
25
26 II -···· SCORE PRELOAOS •• -- II
Claim bottom Roller and drive to autonomous line to score preloads 27
rnoveOistance (l0); // Hove a,,.,ay /NIM roller
28
setRoller(48); // Fnsure aLL disks are shot by l!ft:fng
29
turnToPoint(16,115. S); // Turn to better shoot at goaL
Pick up discs from the stack of three and score discs 30 setOrive(e,e); // Stop ,iovtng
31
hai1Mary(2,287); / / Shoot the prelaodi
32 shooterMtr• -91;
Pick up discs from the line of three and claim top roller 33
34
II ·-··- SCORE J STACK OF OISKS ••••• II
35
setRoller(l27); / / Start running Li.ft
36 turnToPoint(S6.4,35.7,true); / / Turn to line up to pid1 up stack
37 drive.backwards....true; / / Hove bacltwards
38 drive.111.axve1 ..1s; // Go faster
39
DAJE
eoo1N1uoc110 PB9" Cl.._
\
om eon.,_,,._. J'2. 2-
PROPRIETARY INFORMATION 7/7._'-t )202:z..
PROPRIETARY INFORMATION
~ c.n,_..,...,. 1'2-I
eonbflU«ltrom fJ.i19o
41 dl"ht . .addPoi nt(56.J, JS.7);
...
4J d,-1vt,itddPoinl(56,4,3S . 7);
drive.run();
45
•r;
IIOVOOhun«(-23); PROGRAM SOLUTION
47
~
turnToPol nt(lS.6, 127); // Ai• Robot t o s core disks Skills
48
49
50
II Seo~ Ots•s ..,.,,He driving forward slowly
sotRoll,r(40);
~
/r-P-ro_g_r_am
We will create an autono111ous that utilizes all 60s of skills so that
we can have a high composite skills score
0
51
_ _R_o_u_t_e--,J
set0rhe(0,8);
52
pros: :Task uyncKove(asyncMoveOtstance );
53 HlDriv•(O);
54
hiilf1.Jry(l,186); II Shoot 3 d!slls ot 186rp,,
ss *Start
S6 ~ Drive Forward
II ··•·· CLAT/'f TOP ROLLER ••••• II
S1 0 · · Score Disc
tur-nToPoint(lOl.5,82,true); // Turn t o 3 row of dtsks
58
setRoller(l27); //start running Lift - -Spin Roller
S9
60 /I Drive to pick up 3 row of disks
61 drive. backwards•true;
62 drive.a.,xVel•68;
63
Anticipated Points: 174
drive.reset();
64
Scored Discs : 16
drive. oddPolnt(lOl. S,82);
6S Claimed Rollers : 4
driv,. addPolnt(124, 113);
66 dr-ive.run();
Covered Tiles : 18
67
68
tumToAngle(-96,0); // Turn to Rolle r
Discs in robot after time: 0
69
0
78 II CLot. Rol(cr / Steps Start
71 SHOri\re( -127);
72
pros::delay(l88);
73
,. setRoll,r(-127); 3 Claim Bottom and Left Roller
f 75
pros: :delay(200);
setDrive(8);
.:::i 16
77
setRoll,r(88);
Score Preloads
~
~
78
Contmved,opago X.~-
"'" c.,,,,_,.,,,.,,.17-4
7 /24 / zaz:z.
DATE
...J.
Pick up row of 3 discs and claim right roller
0
110veDistance(48,78); II Move tOliOrds goat
J1 II St-t up Pu~ Plirsutt
82
83
haill'tary(l.,145); / / Scor-e PreLoods 2
3a drh·•.dttHtCirc • S; shooterNtr•-0; /I Save aotor powrr
84
)9 drh1t.poJntConstdrr • 2;
85
48 drh,• ...•Vel•SO;
•t drht.rent(); .,•• II -------------------- STEP J --···----------- --- II
..
•2
03 II ~-,ptn fty,,11 . .1 ••89 II ----- PICI< IJP STACK OF DISCS ----- II
,hoottrfttr--90; setRoller(127); II PNtpa~ tnta-"e to ptclr up disc$
45 90
..
•6
0
II - ·---------------·-- STEP 1 -------------------- II .,••
91
n
I I Ori.ve through o stock of discs
drive .bacbtards•true;
drtve.pointConsider • 2;
drive ,fla>eVel•SS;
0
49 II --•-- CLAIII IIOTT~ ROLLER ·-·· • II 95 drlve.ruet();
se std Us~oller();
96 drive.addPoint(24.,ita):
51
97
n II ----- CLAIII LEFT ROLLER ----- II
drive. addPoint(48, 27);
98 drive.run();
5l
so
II .Ve turn towards Left rotter
..hi le (a.1tchOrive->eetSotl'(). thcu. convert( degree) <90)
••
100
1110veOistance(-17); / / StobUfze ftOtor aovttent
55 utDrive(42, -0) 1 101 II----- SCORE DISCS----- II
SG
nUolltr(127); / / PNpore 'Lntokr to pfrll up o d{sc 182
57 drhe. b.ach..1rds■ true; turnTo4ngle(90); // Qtticlr tt1r-n t:awar-ds gooL
103
51 drhe. pointConstdcr • 2; shooter"Ntr•-9S; II Prepare ~Lt\lrry to sea~
18' 1110veOistance(38); II Hove closer to goal
59 drh-e.a.iixVcl•SS;
185
GO dri,..eo. rurt();
106
6} turnToPoint(124.,17); // Loclt (tt angle to goat
drive. run(), 187
6' setRoller(48); // Ensure no discs ore hanging off 1ntoo\e Ledge
a0\le01st.a!'lce(8); 108
65 haUMary(l,155); // Score discs
nt1tolJN-(49); / / Slow down rotler to counter-act lf/lOVe•enr of rotler when drfvM 109 shooteN'ltr•8; // Save 1JOt:or pow,-
!nro 110
66 ntOrJ~c(-.:8); /I Or!ve into roller Ill
67 112
II----•-···--·------·- STEP• --··-·--·----------- II
113
Cor,hll(JH IO PllfJII
OAT£
PROPRIETARY INFORMATION
11,
115
,, II ···• PICK UP "4TCI; 1041) SET I •···· II
116
117
tur-nToAnslr(lO): '/ rum co arotch load PROGRAM SOLUTION
srtOr-tveo(•foO); '/ Drtvr t0t,,ord.s 40tch tOCJd for 300.s
I
,,.
118 pro,: :do1•y(300), Supporting Win Point
We will create an autonomous that score as part of the AWP criteria
II • • • • SCORE ,.. TCH 1041) SET J •• • • II
1.)
shoot"f"Ntr•-98; II PN!po~ ~Ltvtry to scort
so that our partner and us can score more discs in combined
ti• turnToPointArc(l24,'1,hlu,•1efr); / / Arc turn to goal.
us setOrivt(e);
/ Program Route
126 h•U'1.lry(J,1S8); // Scare discs
127
st,oottrfietr-O; / / Saw #Otar ~ r
Lll
129
*Start
II ··•·· PICK UP "'TCH 1041) SET 2 •···· II O · · Score Disc
138
tumToAnalt(JO); // Tur-n baclt to aotch toad . _Spin Roller
lJl
setDrivt(•SB, .. Se); // Or(vt' towards .atch Load for sea.rs
132 pros: :dtlay(I08);
133 Anticipated Points : 25
...
-
13'
135
136
137
ua
~tchlo.ad(); // P(c• up J dtscs
1 ••••• II
Shoottr11tr•-98; / / Prtport Dt-Live-ry to scar~
aatch Load stot:ton
0 Swing: 45
Scored Discs : 5
Claimed Rollers : 1
u,rnToPointArc(l45.,-2 1 r~1se,•1crt"); // Arc turn to goat
139 s~t0rlvo(8); Discs in robot after time : 0
1'8 hallKary(3.,150); / / Scar~ dbcs
UI shoott"'1tr•O; / / Savt ollOtor powr
142
I
10
14'
II ···········•········ STEP S ··················•• II Steps
145
146 II ••••• PICK IJP STACK OF DISCS ••••• II
U7 setllollrr(127); / / Prcpo~ tntaA'p to ptc• up dbcs
141
drhC!ToPoint(66~20.true); II Drfvt' into stock of dbcs Pick up and score disc with preloads
149
158
151
II ····• SCORE SrACK OF DISCS ••••• II
-----
152
15!
shoottNCtr■-99; II Prepare Detfvt'ry to score discs
drh'eToPoint(93, -4); /I Drfve in front of goat.
turnToPoint(l4S, -10); /I Lock tn ongLe towards. goat
h~il.Kal'")'(l, 15S); II Score discs
Pick up and score row od discs and
7
Claim Right Roller
'-.,...c;""'=------------------------7.."',,. -----==-=..::....:'°.:-=_v,.__
c -1
tp _ -M.._ _f:rr _L. tY
~TO~~~~
~ ~ PROPRIETARY INFORMATION
PROPRIETARY INFORMATION
reon_..._,,.,,
_-_1"11
_•_1'2~ ~
_ _' ___--=-....:-:__.:~:._:~:......::~~=----.::_
- .::_
~ _ _::__ __::
· •'.._--::.....__:.., ~
42
~include •· .. atn.h• 43
II ••·•• SCORE DISCS ••••• II
2 •oid •_STDN()( 44
shooterMt r-..103; // Prepare fLy~heeL to score discs
r::'\
6
3
4
5
II • • • • • IN/rIAlJZE AUTIJIVOHOUS ••• •• I I
llltchOrive•>setState({l2S_in, 84_in, ·9D_deg});
45
46
47
turnToAngle(-232,500); /I Turn to Goo(
ha i1Mary(2, 194 ); /I Score l discs ot JS4rpm 0
setRoller(l27); / / Prepare Intake to coLLect a disc 48
7 49
8 I I •• · • · · · • · • ·•• · · · •• ·· STEP 3 •••••••••••••••••• •• I I
/I Set up Pure Pursuit drtvetratn 50
9 drive.detectCirc • 5; 51 5CtRoller (0); II Turn off roLLer motor
18 drive.potntConsider • 2; 52 t urnroPoint(126,68.-t,.ue); // Turn towords roHer
11 drJve,NxVel•45; 53 I/ Drive towards roL Ler
12 drive. bac~wards•true; 54 drive . backwards•tru~;
ll drive,restt(); 55 drive.11axve1 ..100;
14 56 drive . r eset();
IS 57 dr1ve.addPo1nt(l38, 68);
16 58
/I ·········•·········· STEP J •••••••••••••••••••• II drive. addPo1nt(U8, 68);
17 59 drive.run();
18 I/ •···• PICK UP DISC ••••• II 60 I I Lock motors to hard stop 1n place
19 61
drive.addPo1nt(l48,82); // Drive into disc on the row leftFrontHtr. set_brake_llOde(t'l)TOR_BRAKE_HOLO);
20 dr1ve.addPoint(l48, 82); 62
l e ft MidNtr, set_brake_OlOde(NOTOR_BRAKE_HOlD);
21 drive.run(); 63
left8ack.Mtr. set_brake_llOdc (!-\OTOR_BWE_HOLO);
22 setDrive(O); 64
r i ghtFrontMtr. set_brak:e_mode (1«:JTOR_B lA!CE_H'.JLO)
23 110vt0ist.1nce(•l8}; // Stobtltze ddve 1P101Je1Jent 65
rightMidMtr. set_brake_llOde(HOTOA_BRAXE_HOLO);
24 66
r i ghtSackMtr. set_bra fte_lflOde (MOTOR_BRAA:t_J.()LO);
0
2S I/ ••••• SCORE DISCS ••••• II 67 setDrive(0);
26 68
shooterNtr•-121; II Pre,x,re flywheel to srore discs pros::delay(2S0); // l,IQft for ""tOl's t, stop
0
27 69
turnToPoint(lS,140,true); // Turn to Goat setDr ive(-20,-8O);: / / Arc t1Jrn into rollrr
28
29
hailllary(3,207); II Score J discs ot 267 rpm 1 70
71
pros: :delay(750); / / Mitt fol' arc ccriplet~
set Drive(e); II Stop drhetro
30 72 quickRoller(); II Claim rot •r 3
31 73 pros: :delay(10eeeoe);
II ·•···············•·• STEP 2 ····•··············· /I
32 74 )
3J II ••·•· PICK UP DISCS •·••• II 75
34 turnToPoint(l62,9J,true); // Turn to remaining discs in row
35 II Drive into remoing dtscs
36
37
'8
drive.backwards-.truc;
drive.reset();
drive. addPoint(l62,91);
0 Score first set of
discs 0 Score second set of di0 Claim roller
39 drive. addPo1nt(l78, 104 );
40 drive.run();
l nove0istance(•18); II Stabilize drive M01Je111ent
-
sia,u,JUFtf-
. f--0~ J:)~(A~
DISCLOSED TO Ji'«) IJM>fRSTOOO er~
~ ~~ PROPRIETARY INFORMATION
c,,n,Jnue<Jf,ompago 'I--
DR IV E STRATEGIES ~
TOURNAM ENT ANALYSIS
~ We ~ill use different drills to help improve our driving speed and
~ consistency
.
51 SR Scrimmage
SUM of Total
B We will reflect on our performance at the 51 SR Scrimmage so that we
can improve our robot design and game play strategy. -
In 1 minute the goal is to score as
many points as possible. We track
our scores to see progress
overtime.
I Match Results /
Ql
Red Alliance Blue Alliance Result Auton AWP -
7368C 515R
323V 139 9364A 153 v' X X
"
POINT BREAKDOWN SCORE GRAPH I Q4 51 5R 7368C
169 127 v' X X
Objects Scored
9364C 2775V -
Q6 9364A
r:J - High goal # - Low goo I# Rollers# - Endgame?
46 515R
167 v' v' X
~=~
9364E 2775V
~ QB 2775V
118 323V
v' -
CX,
15
10 _ 515R 6210X 105 v' X -
c§ ; Q9 6210X
176 9364A
50 v' v' v'
515R 9364C
/ Strategy c/12.: Roller Swing / Ql 1 9364E
~~
7368C 106 6210X
515R 99 X v' X ~~
Rollers will decide lots of matches due to their quick point change. Practicing changing 11:
these as quick as possible will help swing matches in our favor. Q13 9364C
Practice with this has decreased the time to switch color rollers to less than 1 second 9364E 107 323V
515R 153 v' X X 'r--
on average. '1<>
15mNAMe -- - Cono,.,..,tDpago~ x _
.... "'~ ou-.f . t ~
o.i<"
8/7/Zo'l..1-
~ ~ ~ /1fz.01-1,.
PROPRIETARY INFORMATION
O,T[
PROPRIETARY INFORMATION
Fl SlSR
,-----'-- I
168 v·
9364C
2775V 171 323V X X + Tallest intake & lift on the field.
+ Collected discs quickly and effectively.
F2 51SR
132 v
9364C
2775V 207 323V v v + When we used match load discs, all entered discs were collected as expected
F3 - Intake & lift flex wheels became very dirty after each match.
51SR
146 v v
9364C
2775V 2 06 323V X - Inherently cannot pick up and deliver from the same side, greatly decreasing the
efficiency of the design.
- Other teams have wider intakes that allow for a more lenient and consistent
Record: 10-1 collection of discs.
Award: Scrimmage Champion
• DQ for pinning for 7 seconds
Roller
Wins vs Loses + Worked properly in every match
Autonomous Bonus + Each roller took roughly 2 seconds to claim
lOUe•
+ Roller defense strategy allowed for guaranteed ownership of two rollers
Lost - Autonomous code for claiming rollers is inconsistent
36.4%
Eomed Endgame
636'j\, + Worked properly in every match
+ There were no problems with string getting tangled with the deploy and itself
Height of Endgame deploy mech expansion was above the perimeter wall and
Robot Performance less string contacted the tiles as a result
Drivetrain
+ Fastest and strongest drivetrain on the field
I Conclusion I
+ Worked properly all matches
+ Disks that were lodged under drivetrain were easily removed We are very happy with the performance of our robot. The drive strategies and
+ Did not overheat during matches
design improvements gained us the first seed and champion banner of the
scrimmage. It was additionally a great learning experience of how to improve our
- Front bar bent inwards due to heavy defense. design
Delivery
+ Fastest cycle time on the field The greatest loss in efficiency, compared to the other designs, is our Intake & Lift.
Having the intake on the opposite side of shooting discs requires the robot to turn
+ Filled goals effectively due to fast and consistent shot s around nearly every time it collects discs disks in order to score. We will improve
+ No discs were blocked by defense from the opposing alliance our Intake & Lift by having it collect and score from the same side of the robot.
- Failed multiple shots during autonomous due to inconsistent speed and position Because this is a large change to the design, we will layout the full CAD of our
robot so that we can have a clearer understanding of relative scale when going
through our design process again.
eo,,.....,,.,,... I
eo,,,,_,,._ 13 'i
817 /2.ofl.2
PROPRIETARY INFORMATION 8l'U 202'2.
PROPRIETARY INFORMATION
2 1
8
B N
pI
• I
• N
0 t-
'C8 j.
-0
- 0
"<
n
n,
SCALE 1:8 Part# Item SCALE 1:8 Quantity h,
-, I---
Revision 2
Drlvetraln
Delivery r-
O"'
0 0
A 0 3 Intake & Lift
f - - - - - + - - - - ---+-----1
4 Endgame Mech 3
A
OJ
'<
::J
OJ
.--a,.....,.,..._o.
-----•k~ r-t
~
i:=:-+----f---j 1--i
0 (D
_..t::~ ~·:. r.:::.=--+:---::---t-=---b--------------1 >
h
C
r-t (./')
OONOfSCAll~wtN<i
7J ::r
51SR Robot
"
h - ,___
= 0
(D
..
m
~
OJ (D
N
_, 1:4 ......,
~ @
2
1 of7
~ ::J r-t I
1 )>
1.
Cl)
SIG!Uil\lRE-
om ~titwedlOpafJCJ V
'ii IC/ I U:Jz:z__
g / '8 I Z.o 2-2 PROPRIETARY INFORMATION Q~M~
..,. ~h/2.o2--1.. PROPRIETARY INFORMATION
/~Con--- >< -----
~ -----
TO URNAMENT ANALYSIS
Rl 6 8-1 '-
51SR
168 v
MOA Signat ure Event
171 6008C
v v
a We will renect on our performance at the Mall of Amer ica Signature
Event so that we can improve our robot design and game play strategy.
QF4
9364C
323V
2775V207
6008A
515R
9364C 132 v v' v
3141A 20
Match Results / SF2
51 SR
1569A 6 9364C 146 v' v' v'
Match Red Alliance Fl
Blue Alliance Result Auton AWP 4082B 153 515R
170 v X
21 45Z 9364C v'
65 v
Q12 99116X 8110X
515R 182 X X F2
8110M 4082B 149 51SR
181 v' v'
21 45Z 9364C v'
178 v
Q25 7225F 3141G
3759X 83 515R
X X Record; 12-1
Awards: Tournament Champion; Excellence
Q32 515R
7686B 121 3141A
4082B 178 X X X Wins vs Loses
Autonomous Bonus
L. , _
104 v
Q60 606X 8481Z
> 515R 131 9116Y
v' X
- Q67
25146A 1 Q5 98377G 164 v
' 19355A 515R
v' v W1ns
92.3~
Q85 355N
6210X 107 515R
9821A 180 v X X
~
Robot Performance
11 6 v
Q104 515R 839A
3150A 149 3324B X X Drivet rain
+ Fastest drivetrain on t he field
Q119 + Did not overheat throughout all matches
l LI
8110R
9364E 97 515R
8110G
189 v v v - Opposing robot's wedges lifted drive wheels
~-
-' - Discs and barriers were lodged under the drivetrain multiple t imes
;1,
\: .1
-traction
Ea_sdy pushed sideways due to the omnidirectional wheels having minimal side
-"""'
'""''"""
S11s12.02.i
.... 2 /\i;/2D2.2.-1 PROPRIETARY INFORMATION
Delivery
+ Worked properly all matches
+ Filled goals consistently because of quick and precise shots GANTT CHART
➔ Allowed us to score discs above adjacent robots
- - - - - - - - - - - - VRC Spin up - - - - - - - - - -- -
~
Inherently cannot match load directly into nywheel storage, significantly lowering
the match load cycle speed We will create a Gantt Chart for the remaining time of the season so that
- Scored slower than most opposing robots that have triple-shot delivery systems l::_j we can effectively plan our future designs
I
+ Collected discs quickly and effectively. g ;; • Serves as a
f•
1s
16 < guideline for
1l 17 ;u hour our t ime
- Generally slower than opposing robots that pick up and score from the same side ~ 18 () will be
-■
- Cannot pick up multiple discs at the same time o. 19
.); 20 en
"O
managed
Roller • 21
1l 22 5'
+ Quickest roller on the field §23 C
+ Defensive roller strategy allowed for guaranteed two rollers for our alliance
24
• 25
"O * Overlapping
Jl 26 en boxes
~ 27 Cl)
represents
- Every field roller, being newer than ours, was difficult to rotate
- The match load method through the roller is slower than opposing alliance
~ 28
29 lli
0
schedule
designs that directly insert into the flywheel storage I!~ ::::, flexibility
■
•I
~ 32
O 33
Endgame 34
;' 35
+ Covered the most tiles In each of our matches ~ 36
+ Had no issues with the deploy slider and rubber bands
- String had knots when expanded
re
~
39
40
~ 41
37
<
;o
- Opposing robots were able to block some of of the string deploys 42 0
"5
i
43
44 "O
en
45 3·
/ Conclusion / i :~ C
"O
We are excited with the performance of our robot. The drive strategies and slight en
Cl)
design improvements gained us a tournament champion and excellence award. It .0l
(/)
also gave us a greater insight of different subsystem designs that we had not
;! ~ considered yet. 0
::::,
l 1
~ ", During our rebuild process, we will find inspiration in many designs from the MOA
>.: event as well as observations of the performance of our own design.
~'----------------------------------;
~ ---------------------;:,=------=Con::""
::"="":.:'°:.:"'~•c:._•~i-..~
~~~
D4TE
IMONAT\IRe
~ ~
. 9,1 1~201..2- ~ J:';~'LM/b-
..,.g/IS/2o2.l- PROPRIETARY INFORMATION
D!SCt.oseoroMDUkC>fMTOOODY0
~ ~Q_
y 'iil/Glzo'l'l-
O>.n:~/16( 20'2.l PROPRIETARY INFORMATION
ConfifW«I from PllfJtJ ~
IDENTIFY PROBLEM
Drivetrain Rebuild BRAINSTORM SOLUTIONS
EJ We will identify a major problem with our drivetraln so that we can
address it and improve our design's performance
~
Drivetrain Rebuild
Positives
Negatives
Easy to build
Simple Difficult to tune
Creates a large delay in rotation
between motor and wheel
Conllnuod to paga X.
W_ I 7/1.0'1...'7.
_ eon~,..,.. l'-lk
PROPRIETARY INFORMATION ~/ 7 liLTZ.
PROPRIETARY INFORMATION
ec,,,;.,,d/,om-•J'ii
Direct Drive
- Motors are directly connected to the wheels
"---------='-c-~~-=--...::...__ _.:._~'---':---:C,
All in the front
- Each motor is inherently spread evenly Cs.to e ll'r61<0
across drivetrain - All motors are placed in the front of the ,vloToR.
drivetrain
- Third most common MOA design at MOA ~SAtJflo?F
- Motors are geared/chained backwards to oMfvl wllF-.f.t.-
the middle and back drive wheel
Positives
Positives Negatives
Negatives
L - Very Light
Extremely easy to build
limits motor placement
Uneven motor power to each
wheel
Allows for a lot of space in the
middle and back for future
subsystems
Forces front intake to be less
wide
Very Front-heavy
OJ Generally Back
~ Possible Solutions - Motor Position M,Tc>R _ - Two motors are placed near the back
z ~ ~5r/WOOFt- wheel and the third connected to the
~
:,;:,
All in the back
~ Oi'MJ'f: t,:IH:eL- middle
- Motors are connected together and
z
0
~ Every motor is closest to the Cr,t,.fJ,WJ £<-
geared/chained to the front wheel
§
_J
Vl back drive wheel 0
0 Vl
r Each motor is either geared or Positives
C ~
:j chained forwards to the Negatives a
remaining gears
~
0 Light
z Complex
Does not cause much friction
Difficult to tune
z
~
Ill
Positives
Negatives
Even Distribution
Allows for a lot of space in the
Positives
Negatives
I'
[ Balances center of gravity
Simple Allows less room for front intake
Very light Forces drive speed to be solely
dependant on motor cartridge
Center of Gravity
Simplicity How significantly the design misaligned the COG
Size How easy the design is to build and tune
Perceived area allotted to the intake
RPM adjust
How much adjustable the RPM of the design is
DATE
8'/1q/un,z.
""" gI Vt{2.o2.-]... PROPRIETARY INFORMATION
2 l
/ CAD Plan
B
[TOP VIEW] [ISOMETRIC VIEW]
B
z
:5a.
Q
z
SCAlE 1:7 SCALE 1:7 <t
t:;
w
..J
w
Item Ul
Qu,1nt!ty Parte
Assorted C-Channels I 14
72TGear 6 2
[FRONT VIEW] [SIDE VIEW]
24T Gear 6 3
A 3.25" Omni Wheel 6 4
vs Motor 6 5
A
2.75" Omni Wheel 6
VS Rotation Sensor 3 7
Assorted Spacers n/a 8
Assorted Standoffs n/a 9
15 3of9
2 1
OAT£ SIG~ eoollnuod,.,_ I 'f8
~~
0An
<J/2(J I '2-eJ,z,'2.
gf2-0 )'2.02..-2 ~-ul?.:~ t/io/7o1-,z_
DATE PROPRIETARY INFORMATION
~~ ''"' 9/2..n/2rr),,.1- PROPRIETARY INFORMAT10N
Tracking Wheel Movement
BUILD SOLUTION
Distance from the Drivetrain Rebuild
tracking center to the
back tracking wheel is
6.07" ~
L-J We will build our planned solution so that we can test its
performance.
..,,.,.""'" ConliootJdto/NJf}tl
SfGN,\l\JR£
- ...x..
C-ootinued topago
- ~ JI').()/2.oz 'l
"'"'l /20 2.JJI)__ PROPRIETARY INFORMATION
~0-~~~ 8/2112022..
,, ~ ..,.() nl/nr.-i~
<cl. .t--1 vV_.,.L... PROPRIETARY INFORMATION
150
-----'-- - - - - - - - - - --.:...::.::._~-4.--
TEST SOLUTION Test 3: Field Maneuverability
151
Drivetrain Rebuild
~
~
We will test our solution so that we can evaluate the design's
erformance.
Test Procedures
1. Place design against and in the middle of a wall
Test 1: Turn Speed 2. Place _5 discs, separated 20in apart, 1Oin in front
of the design
Tes1 Procedures 3. Enable driver control and start stopwatch
1. Place design on the center of the field and 4. Driver uses joystick to weave around the discs
remove any nearby discs 5. Once t he driver waves around the final disc, stop
stopwatch
2. Set the target velocity of side of the design in
6. Record results
opposite directions of max and start stopwatch
4. Once t he resign has turned 1O times, stop the Test Results (measured in seconds)
stopwatch
5. Record Results Trial
2 3 4
Test Results ( easured in seconds) 5 6 7
Trial 1 2 3 4 Drivetrain 6.13
5 7.12 7.32 6.93 6.26
6 7 Rebuild 6.74 6.63
-I Orivetrain 19.38
m 19.29 18.74 18.65 20.19
Rebuild 19.73 19.80 Average: 6.73
~ Range: 1.19 z
tll 0
0 Average: 19.39 Range: 1.54 ;::::
r ::,
__,
C
-I Conclusion 0
6 Test 2: Forward Drive tll
z t,;
Test Procedures Spin 1 O times within 20 seconds LU
1--
1. Place design flat against a perimeter wall, facing Drive across the field within 10 seconds
the opposite wall on the other side of the field Drive with excellent maneuverability and response
2. Set the target velocity of the drivetrain to max Contain a wider tracking system <.
3. Start the stopwatch and motors
4. Once the design has reached the opposing wall, Our geared drivetrain rebuild has succeeded by passing 4 out of 4 goals. We
stop the stopwatch plan to use to score higher in skills and match autonomous programs.
5. Record results
Test Results (measured in seconds)
Trial 2 3 4 5 6 7
Orivetrain 7.62 6.85 7.42 7.66 8.14 6.93 7.57
Rebuild
eo,,...,,.,,,,_(SI
OAT<
"""'-.,_ X
rr/.z:l-(_"2,:,..2_2_.
""'g /2-1{:usi-2. PROPRIETARY INFORMATION
PROPRIETARY INFORMATION
IDENTIFY PROBLEM 153
Delivery Rebuild BRAINSTORM SOLUTIONS L:-
~ We will Identify a major problem with our Delivery so that we can Delivery Rebuild
t.::::_j address it and improve our design's performance
~
~
We will brainstorm possible solutions for our delivery rebuild so
that we can select the best one for our team
Problem Statement
Possible Solutions
We need the nywheel roller type for our delivery so that we can have a more
consistent and efficient delivery subsystem for skills and match play 30a Flex Wheel
Solution Constraints - Hardness similar to that of a rubber band
- Available in multiple sizes (1.625", 2", 3", 4")
- Most common roller type at MOA event
• Must only use legal VEX Robotics Compet ition parts
* Must fit within 1s·x1 B"xl a· cube
* Must work with only l motor
5
m
z Solution Criteria
Positives
Negatives z
:j
0
~ High traction ,n I - f'.:
1l Hub attachments required for ::>
:0 * Land all discs of a triple shot from near the goal Consistent compressio:_______i_ - 3" and 4"
....J
0
0
m
* Shoot t hree discs in under 2 seconds
Low density
V)
r
m * Score one disc 3/5 times from the autonomous fine ~
a:
l: * Land all discs of a triple shot 2/5 times from the roller 0
45a Flex Wheel
Iii
z
- Hardness simllar to that of a pencll eraser <{
a
- Available in multiple sizes (1.625", 2•, 3', 4") al
- Second most common roller type at MOA
event
Positives
Negatives
High traction
Special hub pieces required for
Has some compression 3• & 4•
DATE
Con- lo - )l
Contmood.,p,go/54
I t/1.,'3/~'2:2-
0ArE8 I2: 2D21-- PROPRIETARY INFORMATION
""" o;..,1l1/0--,--, 'o/2.4 )lC/2.1.,.
~ L-- L.JJt-t- PROPRIETARY INFORMATION
60a Flex Wheels
- Hardness similar lo that of a car tire
- Available In multiple sizes (1.625", 2", 3", 4")
- Third most common roller type at MOA event SELECT AND PLAN
Delivery Rebuild
Positives
Negatives
~
t...::'._J
We will select the solution that is best for our team so that we can
plan how to build it
Has very little compression
High traction
Mechanically forgiving
Special hub pieces required for
3" & 4• r Decision Matrix I
High Density Density
How the design will improve interia
Consistency
How smooth the surface of the design is
Rubber Band Wrapped Wheel
Custom Weight
Durability
Accessibility with adding more weight to the design -
- Traction wheel wrapped in 64x Length of time before cleaning/refurbishing design -
m rubber bands, equally spaced and
lJ layered Density Consistency
I Custom Weight Durability Total
:l>
- Bands are secured by a zip t ie
z
V, - Image from 750S's "Nothing but l
30a Flex
d
lJ
net" robot
Wheel
4 5 4.5 3.5 17
~ z
V,
,..
0
Negatives 45a Flex 4.5 5 4.5 4
::5
a.
Wheel 18
C Has little compression Cl
::l High traction z<(
0 60a Flex 5
z High Density 5 4.5 4.5 19
Wheel tiw -
_J
Rubber Band Roller intake w
2 1 1 Vl
- Two sprockets spaced apart with Roller 5 9
rubber bands stretched in between , I
- Available in multiple sizes: 6t, 12t, Rubber 1 4.5 4
~
18t, 24t, 32t sprockets Band Roller 2 11.5
- Image from 1460J's "Nothing but
Net" robot Rubber
Band Wrap.
4 3 5 2 14 i
Positives \ i;
Negatives
We will use the 60a Flex wheel for our delivery rebuild because it ranked the
C
High Traction highest from our decision matrix. This design allows us to have higher inertia and _)
Rubber bands wear out greater durability than our last design.
High mechanical forgiveness Very low density
Sprockets block side entry of We chose to not prototype our solutions for the delivery rebuild because the key
objects deciding factor was based on weight and longevity rather than day-long testing. -
1-
......."""
l!~--u~
~.!AM>ur«)£R$T0009Y ./ - - gfz._<-i. I 'U:11-2-_
SIONAlURE
DATE-
/ CAD Plan ]
croP V TEW]
oo•~---------=r
:ot> ~ ( -C.-C.UA.VNE.'-
~u
0 oD -A,c,e,,~Oou\TE [TOP VIEW]
C:C [ISOMETRIC VIEW]
0 00 a
0~ 0
- ~o~ - - 0 -MOTOR
10:0 i
~o P
11:=ll-- - -- - - - - o -keAR [TOPV/EW]
0
0
\-- - - - - - - - / 0 -lllu.. SfA,!.w~
0
o
C
w ... .ii:a
V, D
m 0
r
m 0
Q 0
):,, z
z j
0 C.
"O [FRONT VIEW]
[SIDE VIEW) 0
r; z
z <(
t;
LU
J
LU
Vl
(FRONT VIEW] -
S•GNATlJRE
OATIS
Conlino«J/Opa. . 1W
~/27(2o?.1,
PROPRIETARY INFORMATION
PROPRIETARY INFORMATION
2 1
Flywheel Roller
A»Drttd Suindoffs A
114- squue shift
• Sh11'\C0J11rs
& 10 BtarfngAus
n/a
,,,,
~ 11 Assorted Sp•cers ,,,,
~
---..
12 Assoned Screws
13 "''
!
Assorted Nuts nla
1:5 _, 4of9
2 1
eon"'"""'° .... K
"'""
"61 Z-8'/2(:)z:z..
PROPRIETARY INFORMATION
DATE l( 28' 202."2-. PROPRIETARY INFORMATION
Continuedhom page ~
BUILD SOLUTION
Delivery Rebuild
TEST SOLUTION
~ Delivery Rebuild
~
We will build our planned solution so that we can test its
t...:::__} performance
~ We will test our solution so that we can evaluate the design's
performance.
Test Procedures
[ISOMETRIC VIEW] 1. Place Design in the center of the field, facing a goal
2. Tune Flywheel Velocity until the design can score in the goal
3. Shoot 5 discs in a row, counting the numb er of fails/successes
4. Record Results
Test Results (measured in success out of 5)
Trial 2 3 4 5 6 7
Delivery 5/5 5/5 4/5 5/5 5/5 5/5
Rebuild 4/5
Average: 4.71 Range: 1 z
0
f-
::,
_,
0
VI
Test 2: Roller Score f-
lfl
Test Procedures f-
1. Place Design adj acent to a roller, facing the furthest goal from the roller
2. Tune Flywheel Velocit y unt il the design can score in the goal
3. Shoot 5 discs in a row, counting the number of falls/successes
Test Results (measured in success out o f 5)
Trial
2 3 4 5 6 7
Delivery 3/5 3/5 3/5 2/5 4/5
Rebuild 4/5 3/5
Average: 3.14 Range: 2
Conbnu«J ro1»911
°"'"
[/zci/2.ozi
°"" ~/2A/'2_022 PROPRIETARY INFORMATION
Jl]O /rro (1,/1.,
°"" ~/3o fz._02,.L P;OPRIE;ARY INFORMATION
] 62 eon,,..,.,, __ IG I
ContKIWd from page
/ / Test 3: Quick Score
Test Procedures
1 Place Design on the center of the field
2 Tune Flywl1eel velocity and distance from goal until it is the closest
IDENTIFY PROBLEM
scorable distance with the lowest speed possible Intake & Lift Rebuild
3. Prepare Flywheel at target velocity and placement
4 Start Stopwatch and score 3 discs as quickly as possible.
5. Once the third disc has scored, stop stopwatch
~ We will identify areas of improvement with our Intake & lift so
5. Record results
C'._J that we can address it and improve our design's performance
,..0
C
I
Score Consistently from the autonomous line
* Must work with only 1 motor
~
-I Success Solution Criteria w
..J
0 Have the possibility to score from the roller a:i
z - Shoot three discs at an accelerated pace Success 0
Weigh less than 31bs Success * Must be able to pick up discs up to 6" off from the center of the robot a:
Success * Disc pickup speed improved by 20°"' or more
* Smaller and lighter by 20% or more than previous intake
Our Delivery Rebuild has succeeded by passing 4 out of 4 goals. We are excited 1-
to utilize it in quicker and more efficient skills and match games. zw
Q
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _Con:..:___tintHldtopaga '/,
Cot'llinu.dt,page X
..,. 'g /31 /20J.-'L
PROPRIETARY INFORMATION
PROPRIETARY INFORMATION
BRAINSTORM SOLUTIONS
Above Delivery LS.LOI, v,e... , LIFT
Intake & Lift Rebuild - - - - - - - - - • Intake drops disc down into delivery from abovea ~ • "'~Ee.L
~
- Built to go up and around delivery . FLyw,,e,1,.
~
We will brainstorm possible solutions for the route of our intake
and lift rebuild so tha t we can select the best one for our team ,- --01'!<- P~ll-l
Possible Solutions - Intake Location 1 C.-L,.."-Ai\Jl'IIE.\.
Positives
Negatives
Delivery Side . Consistent
ll\JTAf(E .
-~
• Intake shares the same direction as the Delivery C~10~ VLEWJ . Low jam probability
Complex
. Heavy
(placed in the front of the robot) - FL1WH1:EL
Positives
Negatives
tl c - -(..•4flw k U.
t---F\,E,.v>ffEaL,
Underneath Delivery
- Disk enters delivery from coin
slot opening in the bottom of
delivery
z
. Easier to drive forwards
0
. More efficient pathing for disc
.
Added build complexity
i=
::::i
. Increased risk for damage ..J
pickup 0
U)
Positives :E
Negatives a:
~
L::::_j
We will select the solution that is best for our Intake and Lift so
that we can plan how to build it
Size
Distance How much space is projected to be taken up
Simplicity How far disc travels before entering the delivery
Disc Rotation Number of moving parts in solution
Decision Matrix• Intake Location How much the disc needs to rotate throughout solution
Size Size Distance
Distance How much space is projected to be taken up Simplicity Disc Rot. Total
Simplicity How far disc travels before entering the delivery
Weight Number of moving parts in solution Above Delivery
Amount solution weighs
3 4 4 3 14
Size Distance Underneath
Simplicity Weight 5 5
Total Delivery 4 5 19
Delivery Side 5
tn 4 4 Side of 3 5
5 18 3
m
r
Delivery 12
m z
q Opp. Delivery
Side
3 4 5 :3
)> 4 16 We will be using a Delivery Side Intake and an Underneath Delivery Lift. C.
z 0
0 z
<(
"
~
z
Due to all of the information collected the last time we build an intake and lift
mechanism we have knowledge about what works and what doesn't. For this
t:;
reason we will not be prototyping this time and instead apply our previous
_,
w
w
knowledge to make the best solution for this scenario. tn
eon.,,-,._. /b
SIONATUffE -- - /-
- _eon,,,,_,.,"'!"')b'&
OISa.0StD TON«JIICIOIST0a)r,
~;..-c. ~ Uc.j\J,
DAT<
~~
otSCios£o TO.-..'Cl
UNOfffiTOOO !IY
DA,. °',p/2.D2,2
9/2./UJVL PROPRIETARY INFORMATION
PROPRIETARY INFORMATION
7
nf -Fl-fxwHG£l,
-SH,1Ff
lJ
---=---::~-=1.:==---=:___~or~
- [TOPVIEW]
f---->I,.,
.C-o -PoL1<.MJloN,'!il,
Cl
z
~
D
D =::-ft.e~ W tt i:'t;:t-
:sa.
[FRONT VIEW) 0
i==:=:::f O ::=J._<;,l~F'f z
0 cl:
0 ti
UJ
...J
0 -Mon,a. UJ
0 Vl
: 0
[FRONT VIEW] -
0
~I==== =i= 0
f-0-0={]-
DlSO.osEo T l ) A . t , O ~ lrY ~ ..!=:""'""""-/Jo
-~ ~ "'" Wq {'2..0L-l
PROPRIETARY INFORMATION "'"
':U'-!/Z.02-2 PROPRIETARY INFORMAT ION
2 1
BUILD SOLUTION
- - - - - - -- - - Intake & Lift Rebuild
~
t..:'..:_J We will build our planned solution so that we can test its
performance
B I Assembled Build
[TOP VIEW]
[ISOMETRIC VIEW]
Qu•ntlty
lOW-Slfflghc Stwft
......
AuonHI Mtt.l Structure I
1:3.s -· s or 9
1
CM/Jflllfldtip,,g.
&~
O!SCI.OSED TO AND UNDERSTOOD D'f' ....
o,TE
q;rs/m2-'-- .
PROPRIETARY INFORMATION
915/1.D'l-'Z- PROPRIETARY INFORMATION
TEST SOLUTION
Test 3: Rapid Collection
Intake & Lift Rebuild
EJ We will test our solution so that we can evaluate the Intake and
lift's erformance.
Test 1; Floor to Score
Test Procedures
1. Place robot onto field
2. Line up three discs in a straight row touching each other
3. Set intake velocity to 127
Test Procedures
4. Drive the robot into all three at full speed
1. Place design on field and s• away from a disc, facing the disc.
5. Record time from when the robot first touches the discs to when all 3 are in
2. Set design motor velocity to 127 and start stopwatch the delivery mechanism
3. Slowly push disc towards design. Test Results (measured in seconds)
4. Once disc has broken the plane of the delivery floor, stop stopwatch
4. Record Results
Trial 2
Test Results (measured in seconds) 3 4 5 6 7
Trial 2 3 Intake & Lift 1.3 1.2 1.2 1.2 1.3 1.2
4 5 6 Rebuild 1.3
7
Intake & Lift .42 .36 .31 .43
Rebuild .32 .34 .39
;;l Average: 1.24 Range: .1
~
V,
0
r
~
Average: .39 Range: .11
Conllnwdto-113
COlltinUfJd topagoX
OCSCloSmTOA,,a)LNJOISTOOoBY
9',~ee.
r, ,
a- o
I field rollers. Wheel will be geared down for strength
I
0
- The two tall c-channels at the back of the robot will
[ Solution be used to mount the roller D
D
!
'
.,,.,..
""'"""~ ~
~~
ConfXM.Jedtopago 'f..
0ISCl.OSm T O . A H O ~ Bl'
~ p ~y PROPRIETARY INFORMATION
oiSClosEP lDMo UNDEft!rooo av
6 Solution Constraints
m
2: Posit ives
-I Negatives
~ • Must only use legal VEX Robotics Competition parts
• Must fit within 18"xl a·x1 a· cube - High launch power
"O - Possible early release
:0 * Must work with only pneumatic components Easy to load
0 Large
CD • Utilizes string to cover tiles - Heavy
r-
m
I: Solution Criteria
Catapult
• Measures less than s• in length
- Rubber Bands pull lever with weight on
• Weighs less than ¼ lb for one mechanism other end
• Cannot release early
- String attached launches along with weight
Positives 1
Negat ives
- High launch power
- Simple
-
Doesn't always shoot straight
Prone to launch early
-- """"'....,...,.i7l(
DATE
9/9/W22.
•.,. ct/Jrf7.,o2,1.,
PROPRIETARY INFORMATION
CoolNlued from~
Slingshot
- Rubber Band pulled back wi th weight in
front
- Held back by pin on hinge
SELECT AND PLAN
Endgame Rebuild
~
l::..J We Will select the solution that is best for our Endgame so that we
can plan how to build it
Positives
I N egat ives
- Space efficient
- Decision Matrix - Intake Location
- Early release proof Launch power
- Light Size
Distance How much space is projected to be taken up
Simplicity How far endgame deploys before contacting the ground
Consistency Number of moving parts in solution
How reliable the design is
m Drop Anchor
:0
l> - Metal weight with string spool Size Distance Simplicity
z attached Consistency Total
~
:0 - Second most popular design at
String Shooter 2 5 4 5 16
~ MOA
V1
0 Catapult
z
r 4 5 5
C 3 3 a.
~ 15
Positives 0
6 Negatives z<(
:z Slingshot 5 4
Simple 4 5 18 I-
u
Ease of build Low point potential w
Requires robot movement for Drop Anchor ...J
w
4 2 5
expansion 3 V1
14
The slingshot solution checked the most boxes overall and wlll help us to improve
our scoring opportunities during endgame. We chose to not prototype for this
decision because we have enough previous experience to know what works and
what doesn't for endgame.
Con-.,,,... Jg0
OISCl.OSCDTO»«J~wr
[FRONT VIEW] 2
1
sr,<-c.~
fi"'E~:~~~~!,
~
D cl 0 !,t.~W
C.F~
a 0 0
C.'\,\<~"1£1.,
D D
a () u - sPflt.eR
D
- ~ ew D
0 0 0
D D
a 0 0
(1:n ➔
~1 •o~ B D D
tl O 0
D
B
0
D
V,
m
r-
I
CAD P la n D D 0
0
m [iOP VIEW]
Q [ISOMETRIC VIEW]
)> z
z ::5
0 Q.
1)
0
s; z
z D 0
<i:
0 0 D 0 ~
u
w
0 0 D □ a D 0
.J
D UJ
V)
....
ConWIUtldlO~•
.... q} j l\ /2__o2..,1- I --
r
~-~ ~
Oi$C\OSEO TOMO UNtltR.SfOOO l'I'
2 1
_
.."q/l~/2.o),2,
Conlinwdto- 1<[2,,.
.
'1!14/2on.
~ ,fY~ra_.,q;;,-
PROPRIETARY INFORMATION
PROPRIETARY INFORMATION
- String storage is integrated below
the launch mechanism and is
inside a 1 x3x8 C channel.
BUILD SOLUTION
Endgame Rebuild
~
- String is coiled up and then
~
pressed into the C channel slot We will build our planned solution so that we can test its
performance
- Friction holds the string in for
match play but can still release for
expansion Assembled Build
[TOP VIEW]
[ISOMETRIC VIEW]
-~ ~
DtSCLOs:m-TO~U<CIER.SToCX>rt
S!aNATURE W)- ~
01$ClOS[OTOAMll.O,D~
~ - "°"""""'"'-)(.
..,. 9-/15/2.oJ..1- -
PROPRIETARY INFORMATION
9/IS/roz_z_ PROPRIETARY INFORMATION
TEST SOLUTION
Endgame Rebuild Test 3: Early Release
~
c:::...J We will test our solution so that we can evaluate the design's
performance. Test Procedures
1. Load all endgame mechanisms
iest 1: Expansion Time 2. Shake robot around for 30 seconds
3. Record if any string came out or any mechanisms shot early
Test Procedures
Test Results (Pass\ / / FailX J
1. Load all endgame mechanisms
2. Have a stopwatch and the drive program running Trial
2 3 4 5
3. Press to release the endgame and record expansion time 6 7
Early launch \/
Test Results (measured in seconds) V V V V V V
Trial
2 3 4 Success rate: 1 00%
5 6 7
Slingshot .4 .4 .4 .5 .4
Expander .4 .4 Conclusion
z
0
i= Average: .41 Range: 0.1 - Expansion time
::> Success
...J - Total tile coverage Success
0 - Early release
ti) Su cess
Test 2: Tile Coverage
m
.... Our Endga_me Rebuild has succeeded by passing 3 out of 3 goals. We are
Test Procedures pleased with these results and will move onto improving other parts of the
robot.
1. Load all endgame mechanism
2. Launch endgame from corner of field facing out
3. Record total# of tiles covered
Trial
2 3 4 5 6 7
Slingshot 18 20 17 17 19 18
Expander 21
-- - eo..,,_.,,,_x
DISClosED ro At-0 UNO£ASTQOO IY
..,. q/Jb/1..CJ22.. -
PROPRIETARY INFORMATION
9."1 \Q. I WZ.7... PROPRIETARY INFORMATION
IMPROVEMENT
Drivetrain Wedges
IMPROVEMENT
a We will Identify and solve a problem with our Drivetrain so that we
can have a more efficient design. Delivery Deflector
~ The robot must have the ability to adjust the arc of discs in order to
C!>IOE VJE.,.;:J ~ score from closer or further from the goal
~ ~ r~~i-..~ - - 4 E----
ro..:.,.
aiiiww
ConllnuedlOP"9' 'f-
DATE
9/ 17/W7./2-
C,/1 V u:ru,.
°",. ~/ fl{L..02.J.. PROPRIETARY INFORMATION
om q/j ~/1.o2."2_ PROPRIETARY INFORMATION
IMPROVEMENT
Intake Funnel
IMPROVEMENT
EJ We will identify a problem with our Intake & Lift so that we can address it
and have a more consistent and lenient design. Match Loader
~
~
The robot must be able to funnel match load discs directly into the
Delivery
c: td'vrewJ
Motl!
l B O h < .~
oa1m:y
f'oi.ll'/IGlui<e
l!,a~T
Af tc.r
..~•
.
ConlilluedlOPM}IJ
917.()Jzon 9/z-1/zoz:z...
"""' ~/7.JJ/2.tJ U PROPRIETARY INFORMATION
"""ct/1_//LOLL. PROPRIETARY INFORMATION
Contlnuod from pagG
IMPROVEMENT
Roller Arrangement Prototype Testing
We will identify and solve a problem with our Roller so that we To determine the correct flex-wheel variant we have run the roller wi th all
available densities. '
can address it and have a more consistent design.
45a 30a
60a
~
~
The robot m ust be able to claim a roller that is blocked by an
opposing robot's "wings".
CTc,P V[E1uJ
~ Test Procedures
1. Place prototype against a freld roller and set target velocity to 127
/ Solution /
2. Start motor and stopwatch. Once the roller has rotated 360 deg, stop stopwatch.
3. Repeat 5 times and record average time of stopwatch
We have added a Flex wheel roller to Test Results (in seconds and observations)
each side of the robot so that the area
of potential contact with rollers Flex-wheel type Time to spin roller (in seconds)
Observation of strain*
expands from 3 inches to 12.
45a 0.63
Both flex wheels are placed x in from Somewhat strenuous
the middle. 30a 0 72
Large amount of strain
The density variant of Flex-wheel is yet 60a 0.52
Little to no strain
to be determined. We will decide the
right type o f roller by examining each in • Diffic ulty overcoming field ro ller screws.
perfonmance.
. ___....,..__.../ Conclusion
We will use the 60a flex-wheel density for our Roller Improvement because it has
the least strain and time to claim a roller. We are excited to utilize our new
flex-wheel arrangement and density in driver, and autonomous control.
..
~ ~~
OSCI..OSU>TON«ltJNOf.MTOOOIY L()
••ri 9/2-y(2.o22.
c.,,.,_,.,....,
PROPRIETARY INFORMATION
~ -rp ~ qh'i /1.ffl,1, PROPRIETARY INFORMATION
Con,,,,_, __ )'/2
PROGRAM ENDGAME
Set Target Time
~
No
1 'incl ude "aaln.h•
2 // Oe/fne t~ tf.tt ~adirtg ot thr Har, of dr-i"~r c tl"O(
3 int st.1rn1~. .1 ·
II St orr the lrngth of thr ctr(1,1er control trcn,,.hnq i;i,, "'1'14 Jt.i!r hr
f"'Obot ts fo sHLLs or .atch ploy
6 int _,.t chT1at•8 ;
Deploy Endgame Mechanism
8 //De/foe"°" aony 111Httsrconds froa the end of th,r tia,r t~ r"Obot
will depfoy
10
0
lS bool isltOver(){
16 return pros: :r.Ulis()>Shrtl i11e+ll.o)tchTi•e-t111eLeft;
17
18
21
n
30
tf(,lutoS•l-·skUls"')
Ntchn~seoe;
•h• lf(.1utoSdt••")
0
II Chongr thr lttngth of tht .oteh bastd
chonn
2
°" whtch auto/10l!IJ0Us ws t..:::::_J
,~_G_e_n_e-ra_l_O
that we cannot break the possession limit of 3 discs.
_v_e_rv-ie-w--,1
31 utchllat•18000; A line tracker placed adjacent to the third disc in delivery storage checks for light
32 I - If the line tracker reads darkness, there is a stack of 3 discs in front of the sensor
..
33 Diagram:
lS
36
37
38
39
II Otploy tht" endg~ •echantsa {f its r~ to
"°Id ondG...O.ploy{)(
1-f(lsltOvl'r() && st.1rtTh1el • -l)
1etRoller(127);
0
II -------------•--- ENO GAME DEPLOY MA.IN -----·--········· II
3 1 Disc
Scenarios
2 Discs 3 Discs
••
41 0------
B v'
Returns •/ X
0 Determine if it is
time to deploy 0 Determine whether its
timed for skills or
match
0 Composite all factors
into full function
Returns Returns
Key
D-
Line Line tracker
__'
(.....
Disc
Tracker laser
....
64
•s
'VOid H UolltrNotor(){
..
67
thlrdDhcl nTlo<• O; ~
0 - -------~
more time to strategize an autonomous will our alliance partner.
CD
General Overview
boot fUllload•thlrdDh cl nTl. ., 100;
78
71
II Ottf{M the spud of thr Ltft The autonomous seJector will be run on the control/er for efficiency
72
73
lnt PoW<r; 3 Up to 8 match autonomous programs are selectable
74
,,, s.-t thr spnd bond on drtvtr tnput
The program will also give the option to select our alliance
75 Due to there only being 3 lines on the controller screen, the selection must happen
in 3 steps
,. PQwc-r-127• (controller. &et_di 1ltal(0I GITAL_ll)&& I cont r ol ler. 1et_diglUl (DI GITAL_R.2)&&I fuULo•d).
117• ( controlltr.1et_di1ttal (DIGIT Al_l 2)&& I controllrr .e;et_dta t t al (0IGITAL_R2 )); - Tree Graph:
--
n powr-•121 • (controUer,gu_digital(DlGITAL_ll)&&lcontr oller .1et _ dtgit al(Dl GITAL_R2)a&ful U o.id) ;
Controller Screen
..
18 II Appl)' the lolt'Loctty of tM the Ltft
-
79 setltoller(powr);
)
11
( ] ( )
0
Red Alliance
-
Blue Alliance
0 Determine if t here
is a third disc in
Remove consideration
of passing discs 0 Lock out forward
....
...--
-~ -
the robot m ovement when t here
is a third disc
-- ---
Comrnu«Jtof)a!J'I "f.
9f1..q/t,Q7/l..
PROPRIETARY INFORMATION
PROPRIETARY INFORMATION
Alliance Selection
Side Setup
131 //Four Dptfons
132
- Determines which side of the field the design is on vold setllpP•1e(std::strin1 P-lleQ, 5td::str-ing P•ieTne, std::strin ••
std: :str1n1 b. std: :strtnc c, std: :string d){ 1
Stored in the string "autoSel" with initials 't: for left and 'R' for right
- Used to determine general robot path
133 ,,..,
std::stritli Sde{J•{•,b,c,d,"-•,"--'"}; //(~rt Arroy for options t.n
145
r,:::,
~
The following is an excerpt of our line setup. Full program is
in the Programming Appendix
146 //Orrt Opt {a,,
147 void setUpPo1e,(st1::ss:ririg P•B~, :nd:•str1,,, p>ror,-pe,, sto :strln4 a)(
18J // -- -- SH UP P~GE - - --- -- - /I 148 std::.strin1 s.tle(J•h,"••,•--•,•---·,• .•.•............, 1/(l'ff."r Arrov
181 •I ~t up arro>'S based off Utputtd lnfor-.atton for options t,, po~•
1&9 voJd ,etUpP1aeT)'pe(std: .st,-Jng pageq, std:: strin1 pageType, std:: str1ne 149 SttlipPagHv;i~(r.irf'Q, P.t~Tvpe, HlC)
sdC[J){ 158
118 lS1
0
H(p,11e••p.ag~)( //Jf the- page (n question b the octuol page
Ul updattltow(HIC); 152 II •·--••----•- ••· INITlAl.r,.~f - - • -•- -- /
11' 153 / / CLror tl:P scrc«-n Or>d print starttnq te,~
11J r1ght8utton(); 154
114 leUButton(), 155 void JnltUtu~u()(
11> blutton(), 156 prfotR~Cente,-(2,.tutoSd);
lS7
116 1f(page-Type I•"Info")
lSS
117 aBut"ton(ulC); 159
lll )
Jt9 ) 160 II---·-----·-----·· ICAJN ·--- ····----·- -· II
128 161 II AU oth«-r /uricttons brorich off fro- the ao(n /unct(on
1152 voJd tontrollPrOispby~l()(
121 //Sb Opttons
163 in1Ullzffltnu(); / / Intt(ot.fu t~ controUtr sc~rn
121 void ntUpPilge(std:: stt"in&: pageQ. std: :strin1 p•gelype, std: :string a , 164 wt!Ue(true){ I/ .,.,,,Ue tilt- butt°" r U nor presnd
std: :str!n1 b, std: :str'in1 c, std: :.nrin1 d, std: :str-Jng e, std: :stdna 165 II Print poges
f){
166 II Pt19e 10 Poge Ible Op. J Op. 1.
UJ std~~strina ulC(]•{a,b,c,d,e.,f}; //Create Ar'roy for options ill page Op. J
Op. 4 Op. S Op. 6
167
"""""-"' Contint.Hldlo~
IOI5/2<.flz
°"'"' la/'5 /2.cJl.7-., PROPRIETARY INFORMATION
.... la/ fi(2oi2.
l0/S/U:l/.2-
PRoPR1erARY INFORMATION
199
..
161
, lftllpP.111e("'~~•,
"'Lon1•);
Corninv«Jitompa,- }(..
"'
,ns
•1_L8°""):
HtUpP~,:e("Skills" •
"'S!r;llls");
"Sehct",
/l···--1
El We will create an autonomous that scores the autonomous win
point so that we can earn an additional win point during a match
/'"-P-ro_g_r_a_m_ R_o_u_
te--J~
ll•--1
176 pros::deby(lO):
177
0 Determine which
line the user is on 0 Allow dynamic
autonomous count for
each side
0 Declare each
autonomous program
* Start
o · •Score Disc
a--Spin Roller
Anticipated Points: 60
Scored Discs: 8
Claimed Rollers : 2
Start
.__ _ __ _P_ic
_k_ up discs from the stack of three and score discs - "===:J
Pick up discs from the line of three and claim top roller while scoring discs
SIGK,\TIJf\£
_ __
DATE
IC,/ 5 (Ufl.1-
OATE II'\/ d,, ~· -, 10/6/70?.1-
l>--f :l/ L>J <,,- t- PROPRIETARY INFORMATION
"'" )O/b/2021.. PROPRIETARY INFORMATION
l .
►
'
I
S2
S3
setDr!ve(-98,-98); // Drive into rotter
- 10
• II •••••• •••·•• •••••• STEP J .•• • ••• • • •• •••••••• • II S4
ss
pros::delay(688); / / lrl'att for robot ta arrtve at roltt"r
qulcli:Roller(); // Ru11 Roller claia code
II S6
II ••·•• CIAIII IIOTJGW ROHER • • ••• I I II ••••• SCO•E OISCS ••••• II
0
u qtJJ<Utoll•r-O: // Run RoLLrr Clot11 functton 57 t1aUM.1ry(l,l65); // Score discs
II SB
••
I\
II • ... SCO/lf PRELOADS •···· II
s,
0
Swlnaturn(•terr, 45) ; // Swing tur n tOtlOrds stac.-. of dtscs
••
►
17
II
19
pros::d•l•y(6eo); II Watt for turn to stttL,:
~"tObt t,nce,(11,58); // Dr(vr away / f"OII rotter
r:;\
0 Claim bottom
roller Score preloads
0 Collect stack of discs
- lt
turntoPo1nt (20, 125); // Tum tOf/lOrds outonOll'us ltnr
~•1111,ry(l, l&a) ; II Score pr,toods 'J 2
"
. X
, .
22
JJ
II ••••••••• • •••••••• STEP 2 •••••••.•••••••••••• II
0
ll
pro1::deby(2eo) , // .,'att for turn to srt t lt
19
w SMRollrr(U7); // P,-.partt lift to ptc• of dbcs
II "°"e<>ht.>nce(48, ,.O); /I Drillr fot o d fsn
Jl
ll
.. I/ •·· >CME DISCS •··• II
furnToPoint(le, 125); // Turn t o..."Ords goal
p s
6
h;,ill'l,,ry(3,l35); / / Score dhcs
'
' I/ •··•··•··•··•··· •• S TEP 3 •··· · · · ············· II
"
.,a Hc,,.eOisUl"lce(l00); / / ,lofove through d(scs
CotifinuedroJ»f10 J(
PROPRIETARY INFORMATION
PROPRIETARY INFORMATION
PROGRAM DISTA NCE RESET
8
~
- Prepares all foundational values for program
We will create a program that calculates the robot's distance from a -theIncludes
C'._J wall using distance sensors value ofconstant values of position with regard to sensors and changing values of
the sensors
~.--
G-e-n e
_ra
_l O
_ v_e_rv
_i_e _w--./
- Used to reset robot posit ion during the skills autonomous period
- Two dist ance sensors, spaced evenly from the center, are used
8
Angle is direction of the robot in relation to the wall
- Distance from wall is calculated from the product of the robot's angle and the It is calculated by the inverse tangent of overall distance over length between
average distance from the wall Measured in radians
- Diagram :
Overall Sm (SI+ )
distance
- 2-
Sm
Angle 0 atan(Sm/Dr)
Position St cos@•srn
[ Robot
"'"
""""'"""'°-J Conbno"'1to- U{;
DATE
lo/q /20 z.7,.
I011o! zoi 'Z..
PROPRIETARY INFORMATION
"'"' lo lo(2o2-l..._ PROPRIETARY INFORMAT10N
r,::::::--i
~
The following is an excerpt of our main align function. Full program is
the Programming Appendix
111
PROGRAM SOLUTION
.."
17
,.."
d1'Un0Ltft••O.tlu111;
dl,tnuAlCht ••I.Oltl711;
0
rolnU tt,..,.IOht ''-~(lil~bl• dlt,t•nu•Ltft, double d1st•ntelt1ght){
1
~
~
Skills
We Willhcreate an autonomous that utilizes all 60s of skills so that
we can ave a high composite skills score
II ••u• C:.fr VAU~S • ·• II lr ~-r_o_g_ra_m
_R_o_u_te--....,J
ltl
II rvsrtSidt stnJo..~11tuirlront(d(sranuLe/c,dbtanceR(ght,S.S,l9); // Stnsor- Va~uts based or,
,..
Ill
llJ ,..HtUd• u"sorY11uerront(dlstanceltrt,dlstancelHght,6.336,6.883l5); // sirn.so· Va(11cs baHd on
,..
Hf1'1,orvo1tu.t l"Ont. hf trront • •Hn1orYo1luer ront ,oHsetCfflter;
11$
n-nsorv• l~t ront . r 1&hllacIi. • • s ensorva 1utr ront , of rse t Center; * Start
,.,
,.....
po.lnU l'ull( •H, •10, ..10);
..,_ Drive Forward
0 · · Score Disc
tt (,ffl)Of'V•l~rNfflt ,lC'ftFront---1 11 stnsorYalutfroot.rlghtB.ack.•••l)
,..htf'fl null; - - - Spin Roller
111
111
II . ·H•• .••• THlTA VAt.uE -·-··-- ··- II
lU / / •••u T1flAM:i{E 1/ta<f TIW'ElOIO ...... / /
llJ
,,. doubl• bHff •SfthSOt'Valutfront ,dhtanc•Apart;
Anticipated Points : 174
11'
doubl• hti&htr • nt1sor"V•luefront. lPftrront•Jt'nsorVllurfront.rlgtitetck; Scored Discs : 16
to....,. o""1 .saoH•r dUto1ct' vatuu Claimed Rollers : 4
"' r-::\ Covered Tiles : 18
111
111
u•
uo
/ / ....... SOU'i fklNrGlE Jto\l(itt / GET 111UA ..
dol,ol• th•t.V1l • (lftf...UV,l(b1Stl,h•lt1htf))1
I/
0 Discs in robot after time : O
// •••·••••• A/Y VAUit • • u ..... II
Ul
II •.•. '"'""'" 'Dll K/Y VAUit ··••• II
U2
doubl• h)'pof • (unscrV,luef ront, leftFrMt•s,,,sorvalutfront .r1Jht8tck)/2;
1U
u•
U>
.( u Claim Bottom and Left Roller
✓ • SDil.H 84Sf LENGTH / Gt r x.;r ..
12 doubl• "'-"""'•t'flXY\lll(hypof ,an1r);
UJ
5 U9
no
lll
.// ca,,,,,nss lhlOR.'fA1JON .......
potntZ ,..,ult(n"-l-, thot1Vl1,0);
/I
-------- Score Preloads and Bottom Match Loads
~
IU
Pick up and score row of 3 discs
Convert from
millimeters to
inches
0 Solve for the Angle 0 Solve for position Pick up stack of three discs and claim top and right rollers
-----------------~""DA'°n:=------Con-titlvtldtopag. X
:~~
eon,-,.,... 2.0ff'
10 / I '3 /'2..o 2.1..
o,n:l<)/ 1J / 2o21- PROPRIETARY INFORMATION
10/i Y/2..o'Z,'Z..
PROPRIETARY INFORMATION
Pick up and score row of 3 discs
.,
43
5S
drl\/e.•ddPoint (71. 2, 12);
dl"lVC!.MJn();
56
pros: :d•lfy(Sot); II lllfoft for robot to srttl.•
..
58
It
• htShootft'(tl); // Prvpor,r Ft>1•et for scor(ng
seto,.he(-31); // Driv• fnro roLltr
59
.uttPht on(•~flector",. •up'"); / / MJun dhc arc ta bt c.pwaras
,.
11
quiclcJtoll•r(-SO,I); // ctat. roLhr hhUe dr!vtng 58
0
lS
16
~d:11tt.nce(2); / / lf01J1 awo;, /roa roller
21 7l
/ / ....... ClA.11( lffT ROHU ·•·•· / /
,."
22
lumJGAJ,11e(l,40); // Pr-odJ11n robot nro:1tng 73
>J
•JS,◄lt); II Turn tol!Ol"(IS dbc
,~ SW1n,T~l"J1(.Atsttt•f
uutoll•r(U7); // Prt"part! Ufr ro p(cll up 75
II Sinte tlte rGbot ts /lot avoinst t/1/t> 11oUl,~ r-uet (t r "'ar1,., ,., , 2S
:s •nc.h1>rivt•>setSt•te((11,,11tct.OrhP•>gctS:•ce().,:,t 2~_1r., Jruwu.111 t;n_h .. uonC) •t_d,.&)).,
,."
16
26
pros~•dd111(CCO); // fn.<u~ Siring rum fs srctLl'd
,.
27
,-,..eohtait<1(29, la); I/ Drf'-'r ofJd ptclt tip disc
II •••••·•• •••• • • • srtP 3 I Sill' S
. ,,
T1o1mToAn1let9G,60); / / rum towards rotltr 79 11 ••••• PUt or ftQ./ or orscs - •• 11
2"
60 Hovl'Oht•nCl'(7,!iO); II Dr{v~ a.,uy fro. 14.Hcll Loao .Stat'(o,,
Je HtRoller(a); /I Turn off tfft 81 lu,-nrOAnale(!o,SO); II ru,.,, to tm- dosrH row of O'tsn
11
c.hush.1tt_llOdit(tz::DISA.8Lt); I/ Turn off lfotor Loe# 1.2 set11oll•rt121, // ~oar• tlft to atct w dfsc
3l sctt:Orh-e(-l&); II Drf'11' Into roLLt!r t3
IJ
84 Have-Dtsti1nce(49,S0): II DI-ht' toword.s tht ftrst dfsc
J4 pros::dtlay(SOO); / / MJlt for robot ta rtoch rollrr 15 TurnToAn&l•(•S,59); II Turn to n1110l1t(,rq discs
15 qufc.kRoller(l,-40); // CLoC. roLLrr
0
116 setShoote,.(108); II P~parr fLYli,htrl. Jor FrHdo. Shot
J6 ""'-'d>ht.1nc•(2); II Drtvt- owy fro. roLLer 17 Novttlist.1nu(48,S8); // Pfc# 11p N'llllan{ng dbn (n r"OW'
31 88
..,,
3a
31
II CaLculat&- dbtonct- /rv:. ""°ll and srt H as >t.
rt-sult • findDisunc•(b•cli.lraclcldt .cet()~bad:JrulclUght. set());
I I prtntRaw(J, ro_s trfng(..atcllDr(ve•,gdStotr(}. x, convert((nch) ) 1 •, •, ta_s trfn 1(r-rsuL.t .x));
89
90
,,
91
II ••••• PICK OF ROW or DISCS ...... II
TurnTo.An&h(J67,5,58); / / rum towards goo(
h~UK.li"y(l, 140); II Scarr dhcs
a.tUIIOrh~•>setSute( (result. x• J_fn, a.1tchDl"J ve. >tl'l St.re(). y, NtchDrlve. >get St 1te(). thrt.1});
..
9l
,.,
116
lDI
drtv, ...h,Vtl-ss:
dr-ivr.btdw1r1h.■ fdse;
"'
111 // ...... PAlNE. POSirlON ro LOOP ••••• II
Competition Results
Match Play
111 Tt.trnlaAnal•(l,50) i II ~rn to Rottrr
lU NoveOl ninu(Sl,20); II Dr{1i1t towards Rottrr
Match Red Alliance
UC 1urnTOAAalt(llO,SI); // Sptn 188 to Prr.. rotter ctoUII Blue Alliance Auton AWP
US st-tPJston("lnd(')t"', ·ovr); II Scarr excrss dbc
116 pros::del1y(lOO); Q9 9364E
111
Ill
sttPJston("Jndt11:"'. "'ln"'); II 1'e-set Oelhfirry
(hus.ts.s11t_~.(H: :DISABLE); // Turn Off lfotor lod·
515R 238 77000X
83757A 39 v X
119 setOrht-(•51): II Ftnisl'I ,IIIOVr.-nt fnto roUrr
Q20 97934V
121
12.J.
121
pro,-: :dtlay(20I); / / Wott to rNch roller
tnerttel.r-ent(); II Rt'stt lnirrHot Votur 51SR 158 19355A
40828 147 X v
UJ II ~un Stl!p.S 4°6 Q33 99060W
124 st,1,-tSC"Ctlon(); 663A 33 515R
99060K 170 v X
0 Claim Bottom
Roller 0 Reset X position
based on wall 0 Score Preloads and
Match Loads
Q59
Q69
9364C
96504C
51 5R
188 11124\,\·
515R 167 v' X
663D v·
6210U 200 8481S 101 V
Q85 2011F 38555A
229V 111 515R 151 if j(
Q97 51 5R 93648
842T 175 11124P 68 V X
0112 5203G
663C 130 515R
1457V 145 V V
R16 7-1 515R
40828 170 6210M
8481S 68 V X
1:-
\· L _ _ _ _ _ __ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ I
C.O,,fjnu«Jto~
DATE
Conbnu«tto- 'U1.
r DATE
IO/J 'B'/'l,01,-7-
I
''" t54'tl-
We are proud of the success of our design. Overall, we earned the highest judged and
performance awards. Among our notable observations, there were only two were
negative. We will address these issues and improve the functionality of our design.
IConcept
The robot must be able to knock d?wn a 3 stack of ?iscs. This will
~
C'.__}
We will improve our endgame to account for new regulations on
string diameter (ie. work with v.• string) due lo the recent rule
allow it to intake a single one at a time and prevent Jams. change.
~
r,::::=:-i The robot must have a stronger string shooter and more resistant to
early release.
c.~ ••
/«l!J;,T
Fu, "' HE£1., LUI<&<!.
~ -D•-<, flLE'- 1.u,1eet..
' ... Oi:$L..
Aft.,-
llt.(ott.
/ Solution
---
[ Solution]
~~
C s.iosa, ~ ~~Bl'
DATE
- The time in between Delivery shots must decrease. Delivery Velocity to 127
- Sets t he target speed t o max for a short period of time after scoring.
- Flowchart : Sets Delivery Velicity to the highest possible speed
- Allows Delivery to prepare to score faster
Match Driver Enabled
l Wait 500ms J
Waits for 500 milliseconds / 0.5 seconds
· Allows ample time for the flywheel to return to speed
No
Delivery Velocity to Normal
<;-
~
Set Delivery Velociity
EJ
.,
to 127 (max)
..•• U (shootet'flodt!.-. Spt'~ t1p•J(
0
if(quiclcSpi nT!,~>lSU 11 ~hoot11,.. poJ•t.,.nhoott't'Mtr let.nti,d N! · ! ty() ,
0
....,__ 100
101
182
18]
..
186
18 1
,
189
Return Delivery
Velocity to Normal
0 Wait for 350 ms
0 When the velocity is
close to target, set a 0 When the velocity is
far from target, set the
medium velocity
highest velocity
Cant,ooo,Jtopago 't-17
~ , ..... >I
DATE
1012.. 7 / Z.CJ'l?..,.
lo/z.7/2.o2-1.. PROPRIETARY INFORMATION
•..,. YJ/30/2..02-1... PROPRIETARY INFORMATION
- =---
~eon,,,,.,..,.,,.._ X
- ~
~ --- 216'
PROGRAM DISC FRICTION I I
EJ We will create a program that accounts for varying disc friction so that we
can more easily adjust our autonomous programs across fields
- Solution
I I
Overview Free-body Diagram
- The more a disc is used, t he less friction it places on a flywheel mechanism Before
~
After
• Tournaments usually have new discs while we have very well-used tournaments
Free-body Diagram
[SIDE VIEW]
'l FN
Fi., ~c..-8
◄- - ~~
FA ►
Not 10 Scale
Force Fk1 Fk2 Kn Kg FA
Magnitude(N) y=0.08Sx2 y=0.1 x2 y=0.08Sx 2 *7 .2
0.2 0.1 0.39 0.39 5 New Disc Velocity Target Velocity
Name New Disc Velocity
New disc We/I-used disc Normal Gravity Flywheel With scale
friction friction Force Power
Net Force
- L.-
24
25
double CoofOffrktion • 1:
-,b'
~
28 void setShootcr(Jnt JIO',~r}(
,.
29 shoot•Ntt,...=_r•c~k>fFricUor4; II Apply F,-(ct10tt ,~lfk1tllt
.·►
Fnet2
'
~p ll
32 // •.....••.•..... CiET OEUVERY VELOCJTY ···········-··· II
Not to Scale JJ // ~t FLyl<lhtd s~ed rith accounttd /dct(o,,
34 d~blt geUl)""MdVtlodty()(
Net Force Difference: 0.1 Newtons 35 r-Murn shootcrl'ltr.gC!!t_.llCtu~l lltlocity{)/Coe(Offrictton; // A.ppLy lrictton c~f/1c"1tfft
l6 )
Anticipated Points: 60
13
14
15
16
MoveOistance(-6,l28); / / o,-tve tnro rotter
chassis.nt_node(t'l! :DISABLE);
setDrJve(-59); / / Sec a basr sp«d to ensur« contact with roUer
pros: :delay(l00); // Nott for Spttd to regfster or, robot
0
Claim
17 Roller
18
Scored Discs : 5 qulckAollor(0, -59); II Ruo o co••<md Choe spfos ch,~ o shore Cui•
19
Claimed Rollers : 1 20
21
II --- .• COLLfCT DISC ·- II
Mo11e01stance(4~J21R); // Dr{11r a.oy fro. gooL
V
Discs in robot after time : O 22
setRoller(127); I/ Prtparf! Lfft to piclt up dhc
0 0
23
TurnToAn1le(l4i,UO) / / li.m tOt,1Qrds autonoi o..o.i U1 dt.s<.
24
25
set5hoot•r(94) 1 // ~PIJtv: /L)WhuL to .u:on
26
27
NoveDi.stiit1Ce(9,12 ; // Ortvjf" ittto rif.sc Collect
Auto-line
Start ,.
28
0
37 TurnToAncle(42,110)j // Turn towards rv,w of d1 ·c Score
38 setRoller(l27); II Prel'(lre Intate to piclt up i,bc Row of
Pick up and score row o f discs
39
40
MoveD1stance(6S,50); // Drht" tnro "°""
of discs Discs
Mo11eDlstance(-28,J80); // Dr-t..,e "into row of discs
41
42 TurnToAngle(l24,110); // Turn to)ollQrdS goat
43
hailMary(l,129); // Remo Co.tand that SC0t'1"S the roi,, of discs
44
45 a
"°""'""""',,... --Z,1.I
DAlY
I I / 'Q/ 10-a- l l/J/zoz:z...
PROPRIETARY INFORMATION om \l/f/2.0'2.?.. PROPRIETARY INFORMATION
ConlHKJIJdfrom~
X
DRIVE STRATEGIES ~
--
'
~
>
r:::::7 We will add to our drive st rategy list to further improve upon our TOURNAMENT ANALYSIS
~ speed, accuracy, and consistency
Speedway Signature Event
Strategy #1 : Practice positions B We will refle?t on our performance at the Speedway Signature Event so
that we can improve our robot design and game play strategy. -
Not always in matches can we be lined New places to stand
up at the same angle with the robot. This while driving
/ Competition Results /
means that aiming toward the goal can Match Play
be off.
Match Red Alliance
To combat this we practice driving from Blue Alliance Auton AWP
different standing areas to get a better Q11 978178
idea of where the robot is and improve 355N 52 515R
11158 153 v v
aiming despite where we are standing.
Q35 11124W
515R 131 1075A
99904W 84 v v
Strategy #2: Low goal maneuvering Old place to stand QSO 38141A
Being able to thread the needle and go
while practicing
~:.;;:;;;..:===:;;;;;;;.;::.;;;;;;;;_- 355V 28 99904A
515R 147 v X
through the low goal first try is a major
Q60 515R
advantage in matches. It increase cycle
time of shooting and can help to evade
6842C 163 8481X
6842G 58 v v
defenders.
Q85 21417A 7282Z
To practice this we do figure 8s bet ween
515R 161 sn11c 99 X v
both low goals. Doing t his at full speed Q116 11124P
allows us to maneuver faster though the 16868A 86 515R
6842K 187 v X
low goal and around it.
Q129 6842R ;j
1115D 46 323V
515R 253 v v {a
/ Strat egy #3: Keeping M omentum
Q149 8349A ; S"
With our full omni w heel drive it allows to make smoother movements while 515R 196 323E
1233W 26 v v ....
.,...
,...
driving. As a result to keep up our speed we can utilize this to slide into place to
Rl 6 5-1 515R
Ci
shoot, keep forward m omentum while tuning to get a disc and t hen t urning back
without having t o fully accelerate again and overall do fun spin moves! 40828 169 355N
355V
61 v v
"""""'
~ ..FY.,__ JL~ ..
SIOMfUR~ - - O.,.yt""
Conwwt,a to,,.,. Z.2.'(
D l $ 0 0 $ F J ) T C N , i 0 ~ ~· ""V 1'1 ! <712oz:z. ~ - Jo/~
DISClOSE.D TO ANO IJNOlRSTOOOll'r ll/z..t/Zoz_2.
~ ~ PROPRIETARY INFORMATI ON
' . ~~ DAU \l/1-1/2o2-2. PROPRIETARY INFORMATI ON
224 Con--- 2.23
ec,,...,,.,_,,... 22..'I
Match Red Alliance Blue Alliance Auton AWP Observations
Robot Observations
QF 3-1 51 5R
40828 146 6210K
6210U 49 v V
[Side View]
Flywheel causes discs to
SF 2-1 5 15R
40828 194 100A
2775V 155 v V spin, sliding out of the goal
F 1-1 7368C 51 5R
323V 168 40828 176 X V Autonomous program
worked nearly every time
F 7-2 7368C
143 515R
X
323V 40828 153 V No intake jam problems
occurred during match play
Wins vs Losses Auto Bonus Auto Win Point
.__
•""-
We are proud of t he success of our design. Despite not having the time to submit the
notebook digitally, primarily from lengthy college applications, we managed to earn the
Think, Skills, and the Tournament Champion award. We were also able to reflect on our
solutions for the two prior issues from the Haunted competition with great success.
From our observations of this competition, we had only found one main problem and
will address it in our next it erat ion.
Con- to - 1..1,!,
Il/'2..2..!Zo z..z.
PROPRIETARY INFORMATION
PROPRIETARY INFORMATION
=--.. . }- 227
-- D ,. •
-. . .
)>
M N
- I
I
- -- - - - - - - - - -r
f f lfi ll f I n ll qt
f
I p
q Il
B l
00 ~
B r-~ (;)
N
1
N
r·
,.
N
,. " • l
I
0
N
0
8
~
""O 0
.
0
- 0 !
'<
n
OJ
'
0-
0
g
2 Delivery
::J
A 1 3 Intake & Uh
A OJ
~ t-- -0---09---0--0-
oao ~\\o
4 Endgame Mech 4 ~
o O
rt
,-
~,
► r-
OJ l/')
(D ,-..
.
5 1SR Robot i3
'< ::r
-- --
r 0 (D I I
-.. 1:7 .. C.,,t
2
~ C (D ®- ~ I 0
0
1 of 9 rt rt =
2 1
~
)>
©--~,- •
I
---. to
ConlilNHldtopagtJ
•~-.~ ~
__ Conbt'M.rodll()~o ,X,
L1M°iilio~
0
DA» 11 /2?.-po21..
I/22.l2o2"2.
DlSCLOS.to TC AND Uf'C)fftSTOQO IY
Notebook One
- -
~
- 1
T~
,___,_
-r-
__ .__
- - - ... T'--
C«IINNNld topag6
"""
11/2}:i/Zr:ni
DAil' ) 1/2::)2£,2._1._ PROPRIETARY INFORMATION
DiSCl.08£0 TO AND ll.CEA!TDOO l'i
PROPRIETARY I NFORMATION
r~r 11 1· ~,ry m•, (Ji ~_,_.
•• ~
'
••s
'
Di~
iAJ
t f
!1 II
a,
i, ,ii![lr11:·r1::
l . . ,. N
~
0
Ii
" l''.·
t
it
I - '
I
~
1.
t
I'
J-
+ . .
+
•
,.
I
;
I
I
. 1 1 11 t .
1 rii 1 I · ' 1··
.
_
I l .
.l. •t
i 1--~J-1· t .I ,l l
~ i I . • I lt fil -_
,-,11 I
~ I . .11--~- L,,.1,
lf,11J•)!J1r,,
I~ . . -. rI I ·I t .+·. it ! I / 1 '. ! I !.- T /·
i
~
t
• . ; .1·
.
; : .; i r ~ ! i r I..I
t !
• t 1·1 f r
i i.
.
11 , r:,; ' l i
! I I : : I' f I j 1t [ I ·. .~..·11.' 1' I II ' I I I
I
11 11111 /r: :,· .,,,',
t I
' . II I' . I 1 I I I I I ' i
'- I I I ' I
~ ~
t tI I j T -
- I. .I I .
I I I ll
l I I J. I I
j I f
I ' I I
I I l I
I
• • I l I j ' I I I
1./( , +
. .~
. .' ; JI I I I i f t I I, 1
I r 1 , 1 t , , 1 .
1 r I '
J. l It . I I
I
f '
'
e:
~ ;.t[
,,0
:JJ
;;;
~
,tttli:~:. t 1
' r
:JJ
-<
,,z If 11~1ii1t~,
0
:JJ
;:
~
a
I
I • •
,/j
I r j•trltl
f •
1~
GUIDELINESt
NOTEBOOK
INTRODUCTION
U Ing a Nolebook 10 record Ideas. inventions, experimentation 5 Never loa11e blank spacos, and never erase or r
NOTUIOOIINO 2 ~rds, observations and all work. details Is a vltal part of any material Y04J have added Simply drew lmos lhrou ehm:~o
1aooratory process. Careful attenhon to how you koep your bfank spaces al the same tlmo you aro making your !ntrmi
CQNT1'<1/(0rll()O,INOITDOOI\NO 1 CONTINUED TO NOTEBOOK NO,~ - - -
r.,ioteboOk can have a positi~e impact o,i the patent outcome or a
pending discovery 01' fnvent10n.
Do not erase errors. Just draw a alnglo lino lhrou,gh an
ermnoous entry, lhen acid your lnUfals. Enter lho correJ
entry nearby.
Following are some overall recommendations 10 help you keep
rno<e efficient and accurale Notebook entries. Remember, how- 7. You can supptemen1 your entries With supporting material
vc<. that these are s!mpty a suggested set of guidelines. Onry (e.g., lesl•result printouts and olher documentation) 8 t
ASSfG,p,j(O Tl)
:.00r'artomey can supply the exact guideHnes she would like you must permanently affix the materfal onco a page In ·usup,:
to follow 10 satisfy spec.me legal requirements. That Is why we or chronologlcal locaUon.
recommend that you consult your legal counsel. 8. Never rely solely on any supplemental attachment. Always
include Your own entry describing the attachment and add
RECORDING DATA any conclusk>ns that you might draw from Its aubstanco.
Your Notebook Is a vltal record of your work whether 9. Ooca;Sionally, secondary sources mlght be too large or lnap.
it Is fo< patent purposes, legal records or documenting drug propnate to attach directly lo your notebook. In this case
research under FDA guldellnes. The Notebook can help you ~ can add all secondary sources to an ancillary record
mamlained pred~ely for this purpose. However, always
0,\TCISSUED NaJc.Mbcr 2. 71 207:1.._av, ________ _ _ __ prove:
a Exact detaifs and dates of conception
remember to wnte a descrtptlon or these secondary
sources, cfearly and unamblguousl'y, In your notebook.
b. Details and dates of reduction to practice
c. DIiigence In reducing your invention to practice DOCUMENTING PATENT ACTIVITIES
_____EMAi..__ _ _ _ _ _ __ _ _ __ __
d. Oetaifs regarding the structure a nd operation of your A primary purpose of a Notebook Is the supPort of documenting
Invention
wort( ttial may be patentable. To support palenl activities 11 Is
e. Experimentation observations and results necessary to provide ciear. coodse, chronobgk;al entrle$' with
f. A chronok>gical record of your wotk spedRc dates, To rel'y on those dates. you must have at least one
non--lnventor corroborate that the events aclualty happened and
g. Other work details lhat ho or she under,tOOd )'OUr Invention by signing and dallng
tho "Disclosed lo and UnderstOOd by'" slgnalure bloc:l<s.
~ 8350 Co.Mp Ernt. j. Rel. Follow a few slmple rules of thumb Your Notebook should help you document and prove:
1. Alwclys record entries legibly, neauy and In pennanent Ink, 1. ConceptJon Dat&--The date that you knew your Invention
would solve lhe pn,blem.
2. lmmedlalely enter Into your notebook and date all origin.at
eoncepIs, dala and observations, using separate headings 2. Dato of reduction to Practlce--The moment lhal you made a
lo differentiate each. worldng embodiment of your lnvenlk>n.
cm- llniOl'I
3. Record all concepts, results, references and other lnforma. 3. Dlligence In reducing your Invention to pmcth:&-Dillgence
Oen In a systematic and orderly manner. {Language, charts refers to you, Intent and conscious effort lo make a working
and numbering systems should be maintained consistently embodlmenL You are not required to rush, or even lo take
throughout) the most efficient development strategy. But )'OUr Notebook
must include details relating lo your dJIJgent activities. These
NUMB~_OF PAGES f:'ILLEO__I_N_ 4 It is acceptable to make your entries brief. Al-ways, however, are dates and facts that show what activities you have con•
Include enough details for someone else to successfully ducted to reduce the Invention lo practice, and when such
duplicate the WOO< you have recorded.
'<Ctn aebvtties were conducted. Since you may still be diHgenl
5. label all figures and calculations. despite periods of not working on reducing your Invention 10
6. Never, under any circumstances, remove pages from your practice, atways remember to provide reasonable e>tcuses
notebook. for these periods of Inactivity by supplying facts relabng to
why there was no activity during the period In quesbon.
{e.g., unavailability of test cond11ions or equipmenl),
Rtmember to treat your Notebook as a legal document: It 4. How to make and use your lnvontion-provido documonta•
records the chronological history of your acbv1tJes. The foHowing lion details sufflcfenl to teach a colleague how lo make and
gu,deUnes should help you maintain the consistent and accurate use your invenbon.
entries needed for future legal purposes.
1 S. The best mode ol practicing your lnvenlion-documenl the
, Start enlfies at the top of tho first page, and always make besl way to practice your Invention.
successive. dated entries, wo,king your way to lhe bottom of
the last page. A non•lnventor colleague should corroborate each of these
events/facts by signing the ·olsclosed to and Understood by. on
2. After completing a page. sig n ll before continuing 10 tho next tho relevant pages
page.
WWW.BOOKFACTORV:COM 3
- Make sure that you record the date of each entry clearly and
unambiguously.
I Bookfaco,,y f)IOYldes 1hese sample guldef.,.. •AS IS" w,""'"1 wono<11y
D OC UMENTING YOUR WORLD' 4
Never let anyone other than yourself w nle In your Nolebook
~ llxtcr, cxm PH 937 2267100 / FAX- 614.388 5635
(excluding witness signatures, discussed later).
""•~ B..,.;1 ► 'l is ,11 Veier•n•O*,,fd Fum Prouo1, M•de ,111tie USA
TABLE OF CONTENTS
PAGE SUBJECT
1
Projed MMo..~e men f: R~111~,c,f\ 2 DATE
: l
• lovr11o-mGl\t Aro.I'/&•~ : Pvrdve Polyhln,c. GiMpe~, f;(j/J
5 Teo.M C.,ht10(\ :'1mw
• Teo.«i Cto.tio() Z.77sv
1
8
Fobo+ Exwil"le"to..ti0 " : S;ruo.ti()llaJ Stro.t~~
lour~11f Am\)'i>is : Love.la.,,J
-,: Tou.rra.Me11t Sh·o.te.~jles: ~+ch Pk.\'f
11
1
'\ Tovrnc.._ll'}etd Ar)(). lvs_,_~ Riv~rbot 5 '.:l,9ooh,:~ Elf(,_~:!-
" __l_ _ j1211v.z.c,z.:..
I V f,/?.<S'.;_
" Icl-n+Jy Prgble1,~ Dr,~1,c.~" r-eb..,, ld
12/2ah-a.z
Brs /\S1ocm Sok-h'cv15 Or-,vr,-fr<..ih_ ~6,,; Id
i ,. l
IS
tZn. 1/zci-......,
f 1
Sel,cflq_rid Plat')• Dr~k.11 R:.1)(.,11:) 12 fl l/2[17,_
21
/VI~
12/23/?tJn
I
l/5/6ZJ
l/b/2d23
l 2..//<f/W
l/1/201.3 '2/17/2023
\/ffw23
\/g/2t;23
If.I 71) 2:2> 73 Tovrf\c>-rv)en+ Al'.c\l yt,is: M, !ford Ohio CoMp,+ 1-io11
l
Z/ l~ /W'l'J
1/101'162:3 74 ~e.t\a.c.+iM '2/2?.,j?.oz.J
\/n'2cf2.:i 1s Pos-1-5 List: Re~is'10/\ 2 2-ft.lr/zo1.3
I/ 13 / 2'J2.3
I/\ '!,r1,0-i:J
l/lS/7.-0
:Rev·,sl
78 ioti 2
1
l. f2.5"/2-02
l/f~b,2,3 1
Pol ,1c.o• 6oro.+e s~ll.t Lo.yo"+ 2./25/2.c,
i.
•
r.,\l . .~ · ,,,cr1
1
ll /8/Zo13
00
81
82
Go.n H Cho.rt : Re v,s ,011 '3i
Mo11-t~ l y Goc-.1s · /'Y\c.rc.h Goo.ls
To.G.M C,+a.-tio(I : 33 2'1G 11'10.lys ;~
7/2o2'.3
3/9/2023
•, _j_ J_ 93
\(!.WV) C.-lc-.t:on: :-141_H Aool ~i5 ,o; . ~
· f. " J_ A.i:.\w01::. Ko.' \,._v, Clc<,s,c. Tc,..c11a m</l~ 1/2.'3/a,-i.,3 : RebU:1 fu1gn . Dl'tve,-\ro_ll\ l\er41IA, 3j_fi!UJ?,.3
Fhw11ee,I .. Rebu,~ \)69f) :D-Gl1wr~ ~&;..(,lo ~~~
"'.!Ml'folJ~Crrf '. f)!hVer1 /icr12oMo.l
,._. p,. 1.tlj
•1 I
l-.\,\ G~ ;-h O -,p"y
•/I,J
//2,77i1,-)
87
88
89
-l-
Rekl\l:) ~~ : Tn+o-Ke.
1
2 L,f+- \:<e,'PV:11J f 4/2.01.,
"' Pr re,,-;-0.. 'j . Pro I..,,,,.~ Co>.. 2./1!'2..3
90
R~'ou,lcl: Rol\o.r R~'ou,\J 3/2£,/1131,J
.. I : Rebuj_ [ksi3 n·, f N3C'MQ, Rebu}~ )/2.1/1-1;:,
J_
"' T~t,-,,~,-...11 '..,c. ,_.,: l'.,r e:i;" lv-~eo1,1r1 Sf-o.vOOvJA V4IZO'l3
<1 Mo11hl1 Go.I;,'. hbli.:ro..y P~ 1./5/lO'l,3 93
1,..,pro~I"\+: fY1ul+;'5,~ Oe~l~cl-c,r
: P,n:lr'"" (). l,1.- • R)"" ,c~I \:c.loL,ry Ulltr"t>I 2-IG/l.n'J 94
({\c,/\+h\., Goo..\s ·. F;f\c,,_\ PutiV1
2.1'! /UJ1-'J. 95 Pro,ra.fY\ De bv.9 : Cvt +;eld Updo.tG
1 I 96
TABLE OF CONTENTS TABLE OF CONTENTS
p~"""l1
•• 131
100
132 ,
133
IOI O,se, Uf'.1-";1Y 134
102
135
103
104
Pni9,o.'"'_1 Sokhol\ :Left Sitle- I\Worof'YJ\J.S Re--~ri\-e, 136
137
105
138
106
107 139 + +
140 -1-
t
108
141
109
142
110
+-
111
i 143
112 I 144
145
113
+
146
114
147
115
148
116 +-
+
149
117
118
151
119
120
t 152
+-
153
121
154
122
123 155
124 156
125 157
126 158
127 159
128 160
----- TABLE O
F CONTENTS
TABLE OF CONTENTS
SUBJECT
°"" PAGE
SUBJECT
OAl'E
193
194
,. .
,..
195
I,. 196
197
I ,.,
Ill
199
198
f
I::
200
:I 113
.,.
+
t
201
202
203
"°'
205
t
I"' t 206
r
207
Ill
200
117
209
Ill
1 210
Ill
I,.,,., 211
212
I·~
113
213
2 14
215
1. .
216
,.. 217
218
117
219
,.. 220
110 221
222
" 223
224
----- -- TABLE OF CONTENTS
TABLE OF CONTENTS
sUSJECT
PAGE
SUBJECT DATE
2S7
258
259
260
261
262
263
t
265
266
n,
267
2311
268
269
t
"" 270
I
271
272
273
274
275
276
+-
278
279
280
281
,., 282
283
2S2
284
2Sl
254 285
2SS 286
287
--- -- Confinutld lrom ~~ X,
5UBJ€CT
PROJECT MANAGEME NT
Revision 2
~ We will reflect on our progress and time management from the past six
L..::'...J months so that we can better prepare for the remainder of this season
+
j
I Refl ection - Season Goals
t
Out of the six goals we stated at the start of the season, five have already been
completed, with the final being achievable until may;
"Qualify for worlds through the State Competition·
We will add to our season goals with new challenges of design and programming.
... These goals will motivat e us as we continue to improve our design and
understanding of robotics .
"'
~
C
""'
chart being an oversimplification of our design
progression. Although this was great for mapping
I
t he general direction of each month, the actual
day-to-day operations were determined each day.
....
:ii
(") -
To better plan the objectives of our team, we will
creat e an assignment list each month for us to ""'5
~
complete. This will act as a middle-man between
the gantt chart and day-to-day work, specifying .."'
which aspects of the robot to tackle, and which to 8
--
:,
not.
Continued lO page 2_
PROPRIETARY INFORMATION
- - ..L ..L
I December Goals J
I tes to the author of new goal 1. Compete at Pmdue Polytechnic 4. Create a list of strategies to utilize
Color of highlight corre a with tournament reflection in skills and match play.
Ben Logan
2. Research two teams and list their 5. Compete at Riverbots Signature
unique strategies event with tournament reflection
. h I helps us adapt during match play
create a list of strategies~ af going into a match, the better we are 3. Experiment with different strategies 6. Reflect on usage and effectiveness
• The more that we know e ore of strategies in matches
1. prepared for that match
• Writing down the strategIes
reminds us in the event we forget one 4. Compete at Loveland Competition
with tournament analysis 7. Design and build new drivetrain
31
Ql
(/)
a.
:::)
5.
Qualify for Worlds through the State Competition
bid will mean we are among the 13 best teams in the state.
_
- There are 13 world bids through the KY state competition. So, earnrng a
• The process we will have preparing for the State Competition will be
used for worlds as well.
,.
-•■ C:
0
~
Ql
(/)
a.
:::i
I
C:
Win an Award at the World Competition ·a
6. · Since we are both seniors, the world championship is t he final
tournament of our high school VEX experience, so winning an award there
(/)
u
Q'.
would be the perfect send-off for us. >
• The preparation and knowledge to get ready for worlds can be applied
to college/workplace projects in the future.
'3
"""'""' eo,,1;>UBdlOP,. . Conlinu«l/opago )(
~{, ~~
S tGHA~
71/iq /?ftl.1--
.~ ~--'/-=----__.._lt....:_lll/1},.::~::./~2a2:::.'.2:..__~PR:O:::P:Rl:ET:A:.RY:_:l:NF_:O~RM~A~T-IO_N_J PROPRIETARY INFORMATION
eo,,.....,1mm,... X
TOURNAMENT ANALYSIS
Purdue Polytechnic Competition TEAM CITATIO N
ance at the Purdue Polytechnic event so 4082B Analysis
We wtII renect on Our Perform
El
G I
oa
.
that we can discover and develop new game strategies ~
t..:::::_J
To analyze the highly competitive, and strategic, team 40828 so that we
can understand their approach and apply their skills on our own design
- Find out what other people are doing for alliance selection and adjust
accordingly for best outcome
Avoids deploying endgame if they are winning by a lot Knowing the limits of our robot will help us to better handle problems if they arise.
While some of these situations will rarely happen, knowing what the robot can and
can't do will be helpful when it is needed.
Cclltlt'lufd to page X
-- ~ - ..-'f.
....- l'l/6/Zoi 'l ·~~~ DATI! l7J J-/?...o2'L
12/b lii7l
EDTOAN l.l.llERST
Type Win Rate Auto Bonus Rate AWP Rate Skills Rank Strategy in Spin Up for us is less of a list, and more of a flowchart. If something
happens, we act upon it. Since there are many, many scenarios, we will break It up into
Percent 100% 83% 50% #7 different sections of a larger flowchart.
Scoring Discs
Rollers and Defense
Switch between types
Successful Failing features
features - If the partner prevents
- If we can lock down the - If our partner is not
the other team from
opposing team high discs, good at defense, or
scoring, it will effectively
our partner can secure scoring, then we will
be a skills run for us high discs. handle both.
Focus on
rollers and
derf'n3e
ClalmRol~r
Focus on
soormg
discs
Piclcupdl1e1
Approach to game strategy Since this is the only match we lost at Riverbots,
improved since last tournament it is worth noting the mistake made and how to
improve from it.
t
Roller mechanism works on
plastic and metal fields the same During the Endgame period, we had an opposing
robot pinned against a wall and, at 4 seconds
remaining, let go to expand. In the remaining
Flywheel places spin on disc, time, they managed to drive out and expand as
causing it to slide out of the goal well.
Conenwd to pago I ;,
OAT'E
°"'"'"'4 '° _. X
1 11~/t)u
OAT< I?JI~ /2.c,2.."'L PROPRIETARY INFORMATION
PROPRIETARY INFORMATION
IDENTIFY PROBLEM
BRAINSTORM SOLUTIO NS
Drivetrain Rebuild
Drivetrain Rebuild
. · oblem with our drivetrain so that we can
~Goal
L.:'...J We will identify_ a maJor pr d . n's performance
address it and improve our es1g ~ We will brainstorm possible solutions for our drivetrain rebuild so
t...::::_J that we can select the best one for our team
Possible Solutions
Problem Statement
3" Spacing
We need a drivetrain that is optimized in s!ze
while maintaining stability so that our design - Construction c--channels that contain the
can have more mobility during match play. drive gears are spaced 3 inches apart
- Gears are doubled-stacked to fill empty
space in between c-channels
Solution Constraints
Positives Negatives
• Must only use legal VEX Robotics Competition parts
0 • Must fit within 18"x18"x1 s· cube - z
m Easy to build - Shaft less supported 0
z Must utilize current gear ratio, cartridge type, and motor distribution - j::
-< Spacing is easy to get correct - Widest option ::i
~
.J
- Unnecessary gears 0
1l Solution Criteria V)
l)
~
0 a:
a, • Have 3 degrees of free-spin from front wheel to back wheel
~
r-
m • Drive with excellent maneuverability and response 2" Spacing
:s::
• Improve on small structural features - Construction c--channels that contain the drive
gears are spaced 2 inches apart
~
a:
I-
CD
- Gear configuration is left unchanged from
Revision 1
Positives Negatives
- Proven & Reliable - Shaft less supported
- Easy to build - Wider than other options
J
;-
- Uses high strength gears
01$::uxc::,n,AA:ilHJOISTDCor,
DATE- I L./ '/.()/2 ) I, I Je,_;j- Ml: Jj fJ\u:: 0
~ ,µCv~f-r<..
\2.) ~0/)ol,°"2_ PROPRIETARY INFORMATION ~1t,~-"T~=~ PROPRIETARY INFORMATION
riJ.,.....,..--1(-
~,,w::~
16 Conr!nwd from /)ago ;(.
1.5' Spacing .
• construction c-channels that contain the
drive gears are spaced 1.5 inches apart SELECT AND PLAN
.
~
p;K ~ Q p
b •
.,r,,
..,,\1 ..
_Gears are cut in half and counter-sunk into
omni-wheels in order to fit within space Drivetrain Rebuild
DA Gf~R&>X ~ We will select the solution that is best for our team so that we can
.
C
~ plan how to build it.
~
z 1" Spacing
Ease of
build
Simplicity Shaft support Size Total
~
C
r
]
t
~
-"'
"°"""'
"
CDl>tirJwdfopa!Jd
ea,,,.,_,.,,... t,X
~ ;...,~.. ~~
o..r,
DATi ..
17,/lljlµ L
{ . -1Jc1,r/4
- • .r<.. 'J
OAT<
0 [TOP VIEW]
0 [TOP VIEW] [ISOMETRIC VIEW]
[FRONT VIEW]
(II
m
r
m z
~ :3
l> a.
z 0
0 z<(
"tl
~ t:;
z [FRONT VIEW] [SIDE VIEW] w
_J
w
V)
2
Tracking Wheel Movement
Distance between
motors Is
4.338"'
- 4.33" -
B B
Drivetrain Traction
Drivetrain Traction
A
Item
...,.,, Quantity Drivetrain A 14 - - - - - - Overa II width of
drivetrain design is
6
~
Assontd C<Nnneti g
Rebuild
Su-
2.5'~moom
2'U-Ol.lnno!
CAD
ltotlbon Sens«
lNn~TGtu
lhlin60T~ar
A - 1:5 2o/6
2
_,,_
lf _t)'. ..,. Continuod 10,... '2. I
sia"'IATVA-E- - Conlinv«11o,,.,,. x.._
"'"
17..JlGJwn 11JzG l--zpz-z.,
12-/2b/2o2.2 PROPRIETARY INFORMATION
D.\rE
E]
Goal
We will build our planned solution for the drivetrain rebuild so that
we can test its performance.
The 48T Gear is also shaved down to
0.3"wide
Process of Assembly
Attach nut retainers and standoff Make sure that the motor wire
retainers to C·Channels faces opposite to the other motors
DATE
eoo,,,_,.,_.?,.,3
12/17/'&J'l.?... °'"'
11,/1,,7/'1-01,,"l.
"'" I2- J2-1/2oL)_ - ~ROP~IETAFW INFORMATION
-..,. I2-/27/2.02.?... PROPRIETARY INFORMATION
AssernbledBuild TEST SOLUTIO N
[TOP VIEW] [ISOMETRIC VIEW]
Drivetrain Rebuild
Test Procedures
1. Place design in the center of the field and remove any nearby discs
2. Set the left side power to 127 and right side to -127 and start stopwatch
3. Once the resign has turned 10 times, stop the stopwatch
4. Record Results
Test Results (measured in seconds)
OJ
C Trial 2 3 4 5 6 7
5
U>
[FRONT VIEW] [SIDE VIEW] Drivetrain 18.79 18.61 18.23 18.46 17.18 18.92 18.63
,..0 Rebuild z
0
~ Average: 18.40 Range: 1.74
j::
0 ::::,
__,
z 0
U'l
tii
Test 2: Forward Drive ~
Test Procedures
1. Place design flat against a perimeter wall, facing the opposing wall
2. Set drive power to 1 27 and start stopwatch
Our new Drivetrain addresses our problem of size and expands with additional 3. Once the design reaches the opposing wall, stop the stopwatch
build improvements. For example, we changed the mini-gearbox suspension from 4. Record results
spacers to standoffs for a lighter and more structural sound design. Test Results (measured in seconds)
Another feature that helped us was the process of assembly. In case we want to Trial 2 3 4 5 6 7
use the same drivetrain design in "Revision 3", we have clear instructions as to the
rebuild. Drivetrain 2.12 1.83 1.79 2.32 1.96 2.21 r
1.73
Rebuild
We will now test this solution to assess which aspects work and which don't.
Average: 1.99 Range: .59
Coniinu«Jto~ _){_ -
''"" Sl<lNATUAE
-~~~
IZ/2'6/cJYL:z_
\2/29/202.2
DATE 12/U/2..t:J2-2. PROPRIETARY INFORMATION
CATE 12 -/'2..q/202..2 PROPRIETARY INFORMATION
Test 3. Wheel Stability
- L
=--- /(
Test Procedures. . e no wheels contact the ground
MONTHLY GOALS
1. suspend design 1n a way wher wheel with both lined up with each other January Plan
2. Hold protractor tangent t? dnhve two angle distances together
3. Rotate left and right, adding t e
6 Record sum of angles
~ We will complete a list of projects to complete by the end of January so
Te~t Results (measured in degrees)
L.::_J that we can maintain an efficient schedule during our processes
DATE
Con/Jnued lO page X
,iii£
IDENTIFY PROBLEM
BRAINSTORM SOLUTIONS
Delivery Rebuild
Delivery Rebuild
r,:::7
~
We wlll identify a major problem with our Delivery so that we can
~ solve it and Improve our design's performance We will brainstorm possible solutions for the routing of our Intake
t...:::_J & Lift rebuild so that we can select the best one for our team
Positives N egatives
J7
Places no spin on disc
nproven design from research
Very small
Has no configuration that
Straightforward to t une
scores multiple discs -----I
eon,,.,.,,,.,,... X
""'"'
°""
12131/,bz.'2.. PROPRIETARY INFORMATION ""'"'
I/ I /ZOZ-3 PROPRIETARY INFORMATION
30 /"""""'""-- '2.'-1
► ►
- CofltJIIUOd from pago X
_:j Catapult
011iV£R'/ woe vrn,n
• Hinged arm centered below the disc
OISC.--~
,.,,,,.,,~ SELECT AND PLAN
• Uses a slip-gear setup so that the arm
springs forward after a specified angle of Delivery Rebuild
turning
~ We will select the solution that is best for our team so that we can
. t..::'._J plan how to build it
Positives Negatives
Decision Matrix
I
Can score 3 discs at a time Difficult to tune
?l
provide force to disc f----Or!.<.
\. lb~ 1U\~Oo ij~iE highest in our design matrix. This flywheel variant allows us to remove the spin
from discs being score, while maintaining simplicity and consistency.
-~ Positives
Negatives We made the choice to not prototype these solutions because the sheer amount
L
of efficiency put into o ur original design would most definitely skew the results.
• Known to work .
<1? Simple to implement -
Bulky
Puts spin on disc, causing it to
From our understanding, this is one of the first times that a team has
implemented a vertical flywheel design, so we are excited to learn the potential
slide out of goals of its design.
-
_,,,.,. ~ ColllmutKitOf)ll'//fl
)
~ ~ -- =-~-36
OAT£
1/1I 202-~
MNATU~
asa.osmro1,,-.::,~ 'ST0001'1'
OAT£ •.,. lj-2-/2023
~,v. f.,..,.h9 I /l/'2.dl,3 PROPRIETARY INFORMATION
DISCLOSED ro ANO UM)(RSTOOO av OAT£
0 0
0 0 [TOP VIEW]
0
[ISOMETRIC VIEW)
D
0
....
0
b 0
D 0
t, 0 a
0 D
. a
a
□ □
0 D a
D
0 0
D
D
- - - [TOPVIEW)
~ ~ KJ:
0 0
a
1----~ - - - ~ - . J I
a t
I
Q I
C VI
m
r-
m z
Q ::5
a.
z► [FRONT VIEW)
0
0 [SIDE VIEW) z<(
,:,
~ ti
z w
...J
w
Ill
[FRONT VIEW] - -
0
0
a l:==::==::=;:============:==:::::::I
a
ooooooobc,aoouo
0 'O
- =-to~
..,.l/~ /'2>12s
PROPRIETARY INFORMATION
2
/ Gearbox ]
rn []
B
wide range of velocity values, while having
enough strength to cycle fast.
B The new addition in this design is the shaved
60T gear, the same width as in our drivetrain.
..t
This allows the gears to spin together
without having additional friction from
unnecessary surface area.
- - - 9331
Item Quantity
A Mo<or A
Assoned C-Ownllffl 5
We decided to motorize the indexer because
of its smaller and more efficient design.
High S!r•nglh Shah
Colar By removing the need of air for scoring, we
no longer require a second reservoir(air
•• 60A Fla_, tank). This decreases the overall weight of
VtrM Hub Adapc:rr our robot by 0.5 lbs
1!3.S l 016
2
'°""'"' ----
~-:\.
~"OMO~!!'!'
~
4 :;.e,,, ~).\J:: Olsci.OSED ro AHO LINDE:RSTOOO 8Y
tJ~
36 c,,,,--- X
BUILD SOLUTION
Drivetrain Rebuild Build a framework of the flywheel
gearbox. It is a 4.5" C-Channel offset
from the right structural beam by four
0Goal We will build our planned solution for the drivetrain rebuild so that
we can test Its performance.
0.75" stand-offs.
Attack an addition 7" L-bracket across the two in the previous design
beams to prevent bowing.
+
eo,,,.,.,.,,,,,,,... 37
~~ /,.JI~ ~Tt: -
COlltinlHldtopago.38
~TO~~a,
Trial 2
CD
3 4 s 6 7 -t--
C
;= Vertical 3/5 4/5 3/5 2/5
0 [FRONT VIEW] [SIDE VIEW] 2/5 3/5 3/5 -,-
V) Flywheel
0
r
z
Average: 2.6 Range:2 Q
~ ::J
6 ...J
z
(/)
Test 2: Roller Score f-
V)
UJ
f-
Test Procedures
1. Place Design adjacent to a roller, facing the furthest goal from the roller
2. Tune Flywheel Velocity until the design scores in the goal
3. Shoot 5 discs in a row, counting the number of fails/successes
4. Record Results
Test Results (measured in success out of 5)
The new Delivery rebuild works to remove the spin of discs while keeping the
simplicity of our previous design. We also had time to make minor structural Trial 2 3 4 5 6 7
tweaks, one of which shaving down the 60T high-strength gear to reduce
friction.
Vertical 3/5 2/5 2/5 2/5 1/5 3/5 2/5
Flywheel
We will now go on to test this solution and asses the working and failing
aspects of the design
Average: 2.14 Range:2
ContintHK/topaf}fl j'
-,;..,:"'"'~ ~
D•SW>S<OTO"'O"jf'~
PROPRIETARY INFORMATION \}'iJ/20'2-3
/ Test 3: Quick Score
Test Procedures f the field facing the red goa I ISHIKAWA DIAGRAM
1 Place Design on the center O ' • the goal
2:
Tune motor velocity until the Design can score rn Delivery Improvement - - - - - - - - - -
3. Set motor to said velocity and sta~ stopwatch
4 Shoot three discs as fast as possible . . h
s:Once the final disc no longer contacts the design, end stopwatc
6. Record results
We will find all possible causes of our Delivery's lack of
consistency so that we can improve it.
Test Results (measured in seconds)
Trial 2 3 4 5 6 7 ~ ...
~
When a disc is fired, it has a large
8
Vertical 2.32 2.63 2.81 2.94 2.35 2.58 2.72 ~
variance in the spot it hits the goal.
Flywheel Some go in, while others flop to the
ground. .... -
Average: 2.62 Range: 0.62
-i Conclusion
~-
E
VI Score consistently from the autonomous line Fall r ;,,,-.-._
,,--,...
,..0 Have the possibility to score from the roller Fall I"""'-;
C
-i
- Shoot three discs below 2.5 seconds Success
0 - Discs that are scored do not have spin Success Possible Causes
Flywheel Built with Wobble Roller Position
z
Our Delivery Rebuild has failed two out of the four goals. Before we can move Screws that stick out create air Roller has air space ln•between
on to the intake and lift, we will solve the issue of consistency. We will do this disc during scoring process
by looking at all probable causes and solve the most likely problem. Roller weight Is not balanced Flywheel contacts disc twice
Disc Shots
Vary in
Direction
Tested with different motor control
algorithm
Metal-backed polycarbonate
We used the VEX bullt·ln velocity
allows no compression
control; It oscillates greatly
eon,,,,.,,.,,.,,... 4 2:
..,. 1/9/ZoZ:3
1/'if/t.dll?,
PROPRIETARY INFORMATION
Conbnued htim pago X
Root Cause
ISolution I B We will rebuild our previous design to fit with our new drivetraln
and delivery.
- The Roller wheel shares the same motor as the Intake and Lift
Test Solution - The polycarbonate backplate is unsupported by metal this time to allow more
mechanical compression forgiveness & allow for a lighter robot
Test Procedures:
1. Place Design adjacent to a roller, facing the furthest goal from the roller
2. Tune Flywheel Velocity until the design scores in the goal
3. Shoot 5 discs in a row, counting the number of fails/successes
4. Record Results
EJ [Top View] [Isometric View]
Trial
Improvement
Average: 4.43
4/5
2
4/5
3
5/5
4
5/5
s
4/5
6
4/5
7
5/5
.~
1:. .
i•
Range: 1
Conclusion
- ------------~-==----
,. ..
eon,,,,..,,,.,,.11" X,
Conlinwd1op.,g,, L1Lt
J/ l('.)/202.B DAT£ /262,3
I/ /3
PROPRIETA RY INFORMATION
PROPRIETARY INFORMATION
Con/lnwd "°'"!'? k'
Build Solution
- des1·gn is as follows:
We build the CAD model and the resulting REBUILD
Roller Rebuild
IOverview -,..
Trial 2 3 4 5 6 7
String 4.63 4.73 4.12 5.63 5.82 4.63 4.34
Shooter - We used a high-strength shaft to hold the
roller to prevent bowing when under defense
Average: 4.84 Range: 1.7 by opposing robots. This will also allows us to
only support the roller flex wheels from one
side.
Conclusion
/ Overview
Type Win Rate Auto Bonus Rate AWP Rate Skills Rank
- Similar to shooting a rubber
Percent 100% band
93% 9% #1
Point Pot ent ial: Using 6 of
Awards: Tournament Champion I Skills Champion I Excellence
these placed at specific
angles will allow for touching
/ Observations / all 28 tiles
Subsystem Observations
- Placement: The sides of the
Oue to little time available to spend programming, we only had one autonomous to
robot are open which will be
use. This, alongside 11ft and delivery problems, caused our low AWP score.
where the endgames will fit.
It will likely be a tight fit but
doable without interfering
Rollers worked with no issues with anything. <>
-- =- ...... 4l
°'" l/1'c/2-cJ2),
PROPRIETARY INFORMATION
7 COtllinlNJdfTomp,age
Build Solution
j Overview
- We have added a polycarbonate plate
in front of the delivery mechanism so
Trial 2 3 Implementation
4 5 6 7
String Shooter 5 5 5 6 6 5 6
- To ensure little loss in energy, we sanded
the polycarbonate plate down. This allows
Average: 5.43 Range: 1 the discs to slide better and ultimately
maintain the same speed.
Conclusion
The Endgame rebuild was a great success! Despite each mechanism placed at a
different height, no strings came close to bouncing out of the field
~ ,,,,,,.,,,,..1o..,,.'i.,
DAT< 11 lb /2.o1.?>
l/lG/2o7.> PROPRIETARY INFORMATION
PROPRIETARY INFORMATION
IMPROVEMENT Flywheel Weights
IConcept
At the Cov Cath competition, we not_iced tha~ discs shot differently
than on our field. We will improve this by giving the flywheel more \JEI GH1 Wf!GHT
compression,
-i;;~e~E( ~ -, ,
14 -,-,,. f
=-
;:c:=====:::::;:j:;.,_~Ef
.- ~
I Solution - VEX Weights
j_
r
We utilized the VEX Flywheel weights
Solution • Delivery Compression ~ because of their high density low air +
production.
We decreased the thickness of the flex
wheels from 1• to o.s· In order to implement the weights, we
shaved the radius down by nearly 0.5'
so that it does not contact discs that
This decreases the overall contact to
are in the process of being scored.
scored discs, allowing the flywheel to
give more of a light touch to the disc,
rather than slamming it. The flywheel weight now replaces our
delrin flywheel cover.
However, less mass of flex wheels has
resulted in less inertia, causing the
flywheel to lose too much speed after a
disc is shot We will find a new weight
I
Conclusion
system to return this inertia Our Delivery improvement is a great addition to the robot design. It not only increases
)
the consistency of scoring, but also decreases the ov~rall size. The skinnier flex
wheels have less contact, allowing for greater maintained velocity and the VEX
weights allow the system to return to a similar inertia to before.
Disc shooting is very inconsist ent Our main approach for the elimination bracket
in autonomous was for our alliance partner, 2775V, to focus on
scoring discs while we prevent the opposing
Goal filling worked great in driver alliance from scoring any.
control
We do this by waiting beneath their high goal and
shoving them when they are about to score.
Intake rarely jammed during When they back away to collect more discs, we
match play. go back into the low goal zone and wait for the
next robot to line up.
Endgame deployed great for all Pinning an opposing robot This allows our partner to, essentially, be the only
of the matches we used it in the low goal robot scoring in the driver control period.
features Our design performed great at t he Kalahari Classic tournament in offensive and
defensive play. We consist ently scored high in qualification matches and stopped the
opposing team from scoring in the elimination bracket. The main issue arose from the
autonomous period, where we missed most, if not all, of the discs. So, the next step for
---
us is to fix this flywheel inconsist ency.
Continued.,,... 53
~~
~ ~A.'C>Ll!C.'ClllmXl)ty //23/2..023
~ ~ 1/z.u-z.o,.3
""" I 2...3/2..o23, PROPRIETARY INFORMATION
PROPRIETARY INFORMATION
+--- +- - -
Commuod - -·;:
l_ ...... ..........
IMPROVEMENT
Delivery Horizontal Flywheel
PROGRAM DEBUG
Live Graph Display
~ We will improve the consistency of shooting from t_he auto~omous line so
L.::'.:.J that we can earn more autonomous win points during quahficat 1on We will program a feature that collects and visualizes data in real time so
matches that we can detect and source issues in our code or design
l
Spinning the discs allows for stabilized trajectory. Because our vert ical General Overview
/ Concept
flywheel puts no spin on discs, its trajectory 1s very unstable, lowering
consistency.
Graph Progression +
""
,c.,
1 J
110,
/ Solution /
Resulting Graphs
I I
Python Code
-·· ■f.4t11r.f-k Q
llM
left
ltr.•4:
,u.~, >1 11M(01J-' '
c::owi.t>at.artln.Jcx :
,i;, y,r • 1lne. n1,1lt(',' I
l!nc(OJl-'lll' I l in<HOJ I •','
U,AJ'.'Pl"rldlll• •'htJ)
Y•••rrt-M(tl(At IYI I
::, • .1Pl)C'nd(H .at (ZI I
~t•-1
-··•I'
.. -.t,clir-,u t }
• • Lp
:,,tf.11. , y,i)
t ( JU.,:u)
PROGRAM DEBUG
PIO Tuning Box
B T~e following is an excerpt of our PID Tuning calculation. The full program
1s in our Programming Appendix.
I
VS.,ftt11,HtZt!'91'1~•fN);
range from wS;.iu"'.,.tl•l'Olt•11c-'flt1(M);
...
- Currently, we tune PIO by changing the constants on-computer and re-downloading
the program.
.
. .
- Ideally, a const ant o f PIO is changed while the program 1s running, making each
Get value based
0 ....., .,,,s..
...
,..
<M
161
ttdl.1ttv.ilve();
kJ•lS,,,ltdl.lttY,IIW();
~l>aclSo,lull.ettv•l.,.(J;
t•l"J:•t~ltt"•S"'"••'-'l"lJi
0
- This, along with the live graph, will make the time of tuning PIO very low. on pre-set 1
attributes
lM void ltldT\lf'tl'::lljNl,attSQl,1Kt.-()(
0
- Potentiometers are used for their exact and 1'5 // U.f,ilil Cllc /•fNt of /titdf,y ft>• Slapt of• tW, ..- wilt /V"fl t/llf <1-J,, C,,, Y owr I'
146 aoublt c~"lt11'1V•1 • •~ulw••!n_,,,1..,.J II 0,0,,,. f1t " 1 ,,.,.,,.,.,,,_ •
.........
storage of positional data of rotation. The more
a sensor is rotated, the higher a PID constant -
value goes Use slope
form ula to scale
- Brain is used to run test motor and transmit UJ . .1, ,tdl_,.l'ttt'hl.,.{I{ sensor values
graph data to the computer ...
U..e i.pd.atdut,huo.-(l; // s,,c,,,u rr fub fr- •111 11 ..ic -.1.-
based on given ..
max and min.
0
lf(r-nwud)
/ Process of Assembly ,-•wlt•r•.-_••••rtJ~lt,
..,
'" /I lf Ir. .,.cw h OOG\-Ta.,,,....., It_,,.
....., 0
lf(rH.1lu,._~.._.•Uf'O_r_,"'-""•)
1'1't.,lt•rA1_.,. •. Hro_r1"f1_....,
Clam p Sensor
Layout CAD model
into outlines
Laser cut acrylic
using outlines
Connect everything ... I I l/ UM• IIO'C1,, IJ o.rl""' .,[ft, ett, It _.,,. data t o desired
and plug in wires "'
, .. ,lw lf( •ttvluurv_r-"'Cf_&.111)
"1'1Vl l•11ff>_r•~r.•S11;
m ax and min
"'
111
"'
"'
.,,
II ""°"'" ui. irro r,l"Of
,.,vlt••nr-o_r•"'C•-•ln;
5
0
rt11,ltt-t.,_~•l•: Apply scale and
m offset to
...
11,
Ill )
clamped sensor
value
DATE
ca,,.,_,lo_. ) 'I lSIGNAT\.NIE Cao-lo .... )(
2/ l,11.ctl-3 1/1/ZIYl,3
PROPRIETARY INFORMATION
°"" 2./t /2.JJL) PROPRIETARY INFORMATION
TOUR NAMENT ANALYSIS
MONTHLY GOALS
Northeast Wisconsin Showdown
February Goals
~ We will renect on our performance at the Northern Wisconsin event so
~ that we can find focal points of programming to improve on ~ We will create a list of goals to achieve by the end of February so that we
~ can stay on track complete Revision 2 before 1he State Championship.
Type Wm Rate Auto Bonus Rate AWP Rate Skills Rank 1. Program Great Flywheel Velocity Control
5 Days
Percent 87.5% 66% 55% #2 2. Finalize Revision 2 Programming Commands
Awards: Tournament Champion I Skills 2nd Place I Excellence 5 Days
I
Observations Strategy Observations
3. Determine if We Need a New Match Autonomous
3 Days
~
I
B .
We w,11 create an effi1c1en
. t flywheel control algorithm
.bl
maintains the correct velocity as fast as poss, e
that gets to and
106
187
108
void voltt1g1ToRPH(lnt t,1rge:tRPN)(
)
le f t_,tr. l"OYf t t argatRPf1/8.62); ,~
- ~
f Staircase Code
j General Overview / r
11, 'l!lld Udf<Uf'(lnt t.1r11U"")(
.L-
- Multiple problems with our current system _of flywheel.
_ Runs on voltage, instead of velocity, varying from motor-to-motor
111
"'
II <=ot"'-'r Clln"tnt ltl¥'f l'Ndl,,f fro. aoro,,
-,__
,..
ltlt <~left_lltr.s.t_.1et1.1d_vtlocJt)I();
UJ
- Slow to spin up and maintain speed . . . II CO.,,OtT Clotn"Mf ro t'o"!ltt ,.,,,. ....,t-,-
- New flywheel control will be based on velocity, adjusting voltage to
"'
116
Int '""" - t•rs•t.,..•tMl'r•PM; >-
account for changes between motors 117
111
/I Conw!rt lfhf to Vote-., f«' 1drot pow,r OllflllVf
IM lH•IVolt • t•rst.tltP!ot/1.fl;
-
"'
.,, II stq do.n t~ ....,,rag, u,, cto,_""' rtt ro tN rCJW'9tt ~tocu, .._.
Possible Algorithms 111
II ,,.,,, titntr tM dtUat1Ct fn:a ta'""r, tlle llli!~tl" t~ c,cubrvtfo,i
Ul
m
irrt rtiwlt • ldHlVOlt;
lf(,.-ror,2t) - I
We will test multiple different control algorithms to find the best one "' ru.,,lt•U7;
~ -
"'
"'
dst 1f(,rr-or>ll)
NHlt • idHJVolt; -
.-
121 th, 1'(ff1'0N•lt)
T
I "' 1n, N,.ct,.wia()(
"'
"' Int c~,.rltl»II ~ •torSy.11t_-...lotltrO:
jj
PIO Control
Classic control algorithm
Feedforward Take-back-half
PIO loop with an additional PIO loop that only uses the
...
m
if(U,.tt)( I
~ ~ 1/GI'k!;J;J,
PROPRrETARY INFORMATION o~~ I
''"' 2jq/'2D2,3
'l.( 9 1?.Cst.:>;
PROPRIETARY INFORMATION
PID Control co;-i
Take-back-half Code
, .. ....,, • ttic.tNll(l,.l.,, h'l•,C
.....
......
,..
"'
- U ~
,• .---..,1
c-.n..-1 Cl'III O ...1... f. ~
"'
US
"'
Clo..bl■ lhtl,0.H•HCJ(
-..l♦ etl,._.;
fMl♦ 1rro,,,.tq,tflN!••t-S)',C♦t_,.1lO(ity();
clo.bl1 ,-.,.,.Jt•••rT'Dl"'C•1";
,,
"' ._.l, r,..,_.i1....,.l • U'•.,.,....l 1U th• if(ruulti•) ruyh ..;
... t■ o!'Mr•.. ,..,, l"tfW"!Jl ,,,,. .,, u•t"t t~ t'llllll'llltftr, tf'f'W' .,,,,.,.., u• lf(,a,,(tl"f'Oll")l•Sr,(J.utfl'T'Ol"')l(
,,,
, .. ..........,..,
111-........,,., 132
1))
tO'l•re•ult;
lnu,.,..,..,r"'""''
,.,"'..
The tuning process of Feed-Forw ard took a total of 20 minutes. Because we used the
PIO Box, a great deal of time w as saved by making small adjustment s to constants
and testing them within seconds.
...
11 rw n.u_.,. ,,. w,""""' It• , r,·u1,r
u....,..~tv.-....,,111,
,.._, :
oaoc.nt, frf ao.- ..-olf0,1'
Ti me(ms)
"""
Target RPM Current RPM Output power
CorltJmJ~fO~
1-19 . 'lO?.,'!,
PROPRIETARY INFORMATION
TO URNAMENT ANALYSIS
Nuketown Competition
PROGRAM AUTO. SELECTOR
0 A A
Minimal mechanical flaws of
build ...
Flywheel control worked 2_,, 3
extremely well in auto and driver
t t t ..
Returns Returns
Autonom ous selection was slow 2 Returns 3
due to using the controller
0
over the barrier
N
Indication
t
Selection
::::r:: Successful Failing features
Wheel Indicator
G::) features
eo,,.,,,,...,.,.. i;~
U(~eclJ
t,,. fs ~"c-rnd, rt:~rrs,
IIU:,. JIJ:f.S J)'StNI
rrN
S)'StH Ott 0 Anticipated Points: 270
Scored Discs : 30
,,.
l • ~uh•....,_N.:•ruult; Claimed Rollers : 4
Covered Tiles : 28 T
II If l,,.
"11:w 1s Obaw ........... (t mx
lf(tt1ult>rh_uc-uro_r• "ll'_..a)
0
,...,wlt•,...,.,..,.ir.•nro_r.ariclf..•H; Discs in robot after time : 0
...
II If ttt. ~lilt b WL0trt ■in, -ah it atn
•lM If( ,...,11ltutro_ro111gt_a.in)
rwsult-t....o...r1rp_lll.n;
I
Steps J Start
'6
m
ti Jl,ilt l,ly row da(o t,y s-cote focro,-
aM.1h • • ,ul tt_f.actor;
ll'rttt ~a,,.JjrtJdo,,,r~t11.-
P'TtUNr"'l"~""lt;
Pick up and score row of 3 discs
0 Get scale of
values
t:\ Crimp the rotation to
V defined degrees 0 Apply Scale factor to
potentiometer value
Pick up stack of three discs and claim top and right rollers
U 13/1ffl-3
""" -zII3/2,o2,:) PROPRIETARY INFORMATION
1/IL//202.3
PRO PRIETARY INFORMATION
Pick up and score row of 3 discs .,••
...,, II Clot,. hft Ralt•r
qutc1t11ot lu(e,-se);
""
qulckP:ollcr(e, ·SO);
..
Iii *h.-,pol'ltCCl'lllftf' • 2;
•, ........ ._....1.11; 67 fur-nToAncle(77);
u .-1.....
N<cl.~s•f•h•;
ti
0
69 II Seo~ 11 Phcs • 2 (n cos• of Jaftun'
79 t,,d lN.lr-ySktlh(18, UKl);
,.11 NtttO'-h••)UtSUte((U.U_ln, u.s_tn,O_dec)); // Of/(M robot's pos(Uot1
,,
71 hallH,trySUlh(l,108:);
n 1.-tarh•(·'.le)o II ~w into rotl.rr
:u
"
.. ,rcs::..h)'(~); II W,{t {Of' robot to- l"e'OC" roUtr Sw1nctum("P:Jgt,t'",1.S,511); II TuNt ta tlk ct<' ~,t ro. of cttsc~
21 74 .1o~tPlst on(·0en"ctar.. , •ao..n" J: /I 1..0..u 0.-fh ·tor
,...
7S .1oetShoot•r-(◄1l, "vtola(t ty");
76
~
77
..
Htltollt'r(127); /I PrPP,.,N! U/t ro pld, "P disc
..
,.
78
l> HoveOlst~•(45,llG,tru1,.,) ; / / DrCvtt tCMJ"'t'.s r".,. Jartt dts,
TtH'nlOMJle(SJ,130); II Turn to t"ftro(r.ir-J alsc,:
..
:.
n
PQl'IU ,.~,11lt • fiNDi\t•P1tt(b,1ck.Tr.cklC'ft.1•t(J,b•c"-Tr~ckUcht.gtt());
pri"t«.(t. to_1,trJ"C(••tc"'°"he•)CC'tState() ,y .coovrrt(1ncn)) • ",
II ltsrt ,. pos(tfon (\'0'1u /f'Olf ftrtf/ to f(tfd)
• • to_string(r:111lt. 11)); 11
82
"
✓J -o-rch!l!"'-t~·< •>sttStott((-,rchDrlw•>9ttStotr().:#, ~tut r .x•J_ tn,J_fo• 1. s_f.11.,.a !chDrt1,e-,gt:tStatr(). o,rto}); 111
II ,..t,l'b-{w- UrtStotr((aot~lvt•>grtStot<'().~ 1 rrs11l t.x•J_Ul•J_(n,4_ (n,1110tc IOr(vr-,gftStatt:( ). tht:to}); II FA
""""'
.."
8S
II ··-·- SCO,E DISCS •·· • II
Tur-nToAn&le(l65,He); II T11m towonJ~ ;,t,gt
" I Nfd'IOlr1W'f'
t,..ttlXl'f
J.ut.Stott"((-att"tJOr-fvt•JQ't:tStatt:().~, ~sutt.x• J.. 1n,1_Cn•S_tn,ratc- ,o,-tvr-,9..-tstott:(), theta}); II {{1
.,•• hili.l.Nary(l, I); /I scorr dtsu ( r,
....••
Ht5hoattr-(Sle, ·velodty*),
a,tct0-1..-..,wtSt•t•((.,.tcN>rtv\1•>1t-tSUt11() .x, r-uult ,JI' 1_1n•l_1n•7, s_tn,atchlrtve•>gttStne{). t,.et~}); I I lttM
.,
92
•fr.
'°DrtOht.anc.(.?9,l-0,trw); / / Orlw- ar,d pfcA> up df.ic
IIP"ftfoll'Wlif(H,M): II Turn tai.urd~ l"OUt'r .. II • COU.tCT O!SCS ·--·- II
TurnToAnglt'(171); /I Spin Jff to Pr<- roU•r c(ata
M"tlQllff'(t}:
"91
ffldlHt•tr-ue; II Stop dt•c Jo..t,,g rast
HtDr-1~•~);
98 setRoll•r( • 127);
,re,, .Ot11J(Hlt); // a.ult /or- robor ro rrach raLt,:,- 99 pros: :ctt'lay(lJo);
100 .seUolltr-(127);
eo,,,-.,..,,. ]L
2/17/2023
PROPRIETARY INFORMATION
PROPRIETARY INFORMATION
'""'' ""'«lt(lU)J 11 S.,la 1,. h~ ,..,., n,Urr ctot•
Ut~Jl..-(1),
TOURNAMENT ANALYSIS
•II ""'°" tod
...
m ,Nuh,N\.._.(,u:NWU)i II ,.,,.,.
100% 100% t
Ill 90% #1
\21 t
Ul
Awards: Tournament Champion I Skills Champion I Excellence
UJ // l "rlrtt&l llE l'OSITION ·• · ·• II
:u•
.,,
'"
111
-,c"Ol"'h.... Utt.)tfU((U.n_ln, 11.s_tn,ch1111s ,1et...JYro{) 'l_dt1•ll8_d~1»; // lkf(M robot 's positfo"
0 Claim Bonam
Roller 0 Reset X position
based on distance
from the wall
0 Score Preloads and
Match Load Discs
Autonomous selector was very
useful in setting up the robot fast
I Conclusion
The most used match autos were
solo AWP and left-side
Our new skills autonomous route excels in points and consistency. Our anticipated
reset half-way through the run helped to remove any skew from compounding out of Match autos scored fewer points
control. We are excited to run our skills autonomous program in the upcoming throughout the day
tournament and raise our global ranking, as a result.
/202-3
~ ~ 2/17)2o7..3 PROPRIETARY INFORMATION
PROPRIETARY INFORMATION
Conllflu«Jhml'~ X
REFLECTION
PARTS LIST
. d tonomous scores so t hat w e Revision 2
We will reflect on our skills driver an au
can set an end-season skills score goal.
Driver Skills
EJ We will review the amount of materials required to build each subsystem of
our design so that we have a clearer picture of rebuilding the robot.
Drivetrain Delivery
Over the last eight months, we recort e
development This allows us to see ren s
t
d d actice driver runs and charted its
over time for specific game obj ect s. Item Quantity Item Quantity
VS Smart Motor 6 VS Smart Motor 1
Skills Driver Objects over Time VS Rotation Sensor 2 30A Flex Wheel 1'II," 2
Rotlers # - Endgame?
Omni-Directional Wheel 3.2S' 6 60A Flex Wheel 3" 1
111
60T High Strength Gear Custom Cut 6 Flywheel Weight 2
= ~ - H,ghgoat• - Lowgoa
48T High Strength Gear Custom Cut 6 Aluminum Plate 1 "x7" 4
Aluminum Bar ½·x2½• 2 Aluminum C-Channel ½•x1 "x½'xl 7½' 1
Aluminum C-Channel ½·x1·x1s· 4 Aluminum C-Channel ½·x1 "x7' 2
c Aluminum C-Channel ½"x1"x14" 3 Aluminum C-Channel ½"xl"x½"xl" 2
8:, ,o Aluminum C-Channel ½'xl"x3½'
Aluminum Li-Channel 1·x1•x1·x2½'
4
2
Aluminum C-Channel ½·xi "x½"x8' 1
Aluminum C-Channel ½'xl "x½'x7½' 1
0 •·~uly ~ Aug. , Sept. Oct. Nov. Dec. Jan. Feb. Nylon Spacer ½" x 'Ao"
Nylon Spacer 'Ao' x ¾.
9
13
Aluminum C-Channei ½'xl ½'x½'x4½'
Aluminum Angle Bracket ½' x½"x7"
2
2
Date Nylon Spacer¼" x ¾' 2 Aluminum Angle Bracket ½"x½'x6½" 1
Nylon Spacer 11,· x 'Ao" 20 Aluminum Angle Bracket ½"x½"x3½" 2
IConclusion
When looking back at our progress thus far in the season, it is clear t hat t he part t h_at
we lack in the most is earning the Autonomous Win Point. In our next design, we will
focus on improving this AWP percentage, while maintaining great driver performance.
-----------------:o.'"re=-----c«i11nuodtop,g< A
__ ~-.,,,.•. 7b
1./ 2.2. /7fJ 1,3
04T£ 2./2-q )2.o2-3
"""
°'" ?. jl2{2.d2!, PROPRIETARY INFORMATION
1/z.l-/ /2CJ 'l '3 PROPRIETARY INFORMATION
ea,,li,w«J--
Roller 2
Intake and Lift
Quantity Item Quantity
Item
VS Motor I
---------+---
60A Flex Wheel 3" 2
30AAexWheel 1v,• 5 32T Sprocket 6P 2
36T High Strength Gear 1 16T Sprocket 6P 2
AlumlnumC-Channel ½"x1"x½"x11!t" 2
24T High Strength Gear 1
High Strength Free Spinning Adapter 4
12T High Strength Geer 1
16T Sproc~et 6P 1 Low Profile Bearing Fial 2
BT Sprocket 6P 8 High Strength Shalt Spacer½" 4
Aluminum Plate 1·x sv.· 1 High Strength Shah Spacer\\" 2 B
Aluminum C-Channel l!t• x ½• x 1• 2 High Strength Shalt Spacer 1116" 6
Aluminum Angle Bnlcket Y,xl!t'x41!t. 2 Versa-Hex Adapter Y, 4
N)1on Spacer l!t• x •• 13 High Strength Pillow Block Bearing 2
Nyton Spacer'-"~ 'lo" 4 Assorted Small Steel washers NI A
Nylon Spacer 1'• x 'lo· 2 Assorted Siar Screws NIA
N}1on SpaCff 11• X¾• 5 Assorted Aluminum Nuts NIA
Post Nut Relainer 6
Standard Shalt 7,,_. 2
Shaft Collar 6
High Strength Shalt Adapter Insert 19
High Strength Free Spinning Adapter 1
Versa-Hex Adapter v,• 1o
Pillow Block Bearing 4
Custom Po~rbonate Pieces NIA
Assorted Siar Screws NI A
Assorted Aluminum Nuts NIA
IConclusion I
We have used a wide variety of components to assemble our robot but there are
0
distinct materials that we do not use. This Includes parts such as s teel C-Channels
and Low Strength Gears.
For our next iteration, we will preemptively buy new parts that reflect this design's
A
partshst so that we will not have to wait a week during each design process for parts
to arrive.
Part Quantity
Orlvetraln
Odvtry
Intake Ind Uft
Revision 2
Roller
6of6
Endgo11me
2
~.,,... X
---
o;sa,cac
~ ~
jAH,J ~ ....
- --- - .... '2.-/2-r;/2o1-3
PROPRIETARY INFORMATION
w~ J:f~:;. 2J2,'1/W2-'l,
78j,,__,_,_ X
79
2 L l
f- 12.000
7 TOURNAMENT ANALYSIS
0- Kentucky State Champ1onsh1p
0-1 ~ We will reflect on our performance at the Kentucky State Championship
t..::::_J
0-_J 24,
so that we can prepare for our final rebuild
B
0 B
Type Win Rate Auto Bonus Rate AWP Rate Skills Rank
IB--
0 --t-ie I
IObservations General Observations
.....
2/25/?o~ 3/5/2.07,.J
.... 2/vs/2023 PROPRIETARY INFORMATION °'" 3/C-/'L">'l
.J ~..) PROPRIETARY INFORMATION
MONTHLY GOALS
GANTT CHA RT March Goals
_ _ _ _ _ _ __ _ _ _ _ VRC Spin up - - - - - - - - - - - -
r;;;i7 We will compile our build goals for the month of March so that we can
~ We will create a Gantt Chart for this season so that we can manage our ~ be effective and on-track for our robot design of Revision 3
L:'.::__J time effectively.
Allows for 6 Days of Buffer
-I •
Strategy Build Improve Program * This serves
Week
as a guideline 1. Cite Teams that Excel in Skills Driver and Autonomous
C for how we will
38 0 2 Days
~ 37
(/) manage our
2 Ill time effectively
(I)
£ 38 (/)
2. Rebuild Drivetrain Subsystem w/ Improvements
0..
39 3 Days
::J • Schedule
C
'° ·5. flexibility is
shown through
-5 "u (/)
u overlapping
3. Rebuild Flywheel subsystem w/ Improvements
""
4 Days
a:: blocks
..
'3
45
>
4. Rebuild Intake and Lift subsystem w/ Improvement s
4 Days
a.< 4&
----
om
::, / 7 / '20?..3
om 3/ J/262.-°3> PROPRIETARY INFORMATION
82 - - - x.
TEAM CITATION
TEAM CITATION 21417A Analysis
33248 Analysis
~
EJ To analyze one of the best middle school teams, 33248, ~
We analyze the high scoring team 1 OOA so that we can understand their
approach to the skills autonomous and driver and utilize their techniques
21477A Robokauz
33248 Supernova Calamity
Design Details
__ ,..,
zc:;-,
Design Details
· Custom-cut Sprocket for unique
- Collects from the same side speed conversions
that it spins the roller
Motor setup on drivetrain is similar
- High strength shaft for roller is to that of ours
flush with flex wheels
Drivebase runs on 400RPM for
- Two roller mechanisms are three 3.25" wheels
used for more applications of
roller play
Roller mechanism does not use
VEX Versa Hubs
- Front intake roller can
pneumatically actuated upwards - 1 :1 cartridge on flywheel motor Counter Roller
Secondary - Utilizes a Catapult with
Roller excellent disc-grouping
Skills Strategies
Match Strategies
Uses different routes for driver and autonomous skills
- Collects three stacks of discs on the autonomous line in match play programs
- Starts both skills types at the match load station
- Unique roller-play techniques through the use of front and back roller wheels
- Flywheel 1s used for match loading and catapult is used for regular scoring
- Unes up for disc shots at the same spot for most scored discs
..,. co,,,-dto~.:f,__
,.,, ....)f
')_/ 1\/,-, ,.,.., '2
'1 w~::) PROPRIETARY INFORMATION
PROPRIETARY INFORMATION
REBUILD DESIGN We built the CAD model and resulted with the following pictures The Improvement
here is that the total wheel count went from 6 to 8 for greater surface area on the tiles
Drivetrain Rebuild [TOP VIEW] [ISOMETRIC VIEW)
I Overview
- We will use eight 3.25' omni-directional wheels, four for each side, t hat allows for
movement around the field
- Each wheel is connected via a gear system. This ensures t hat all wheels are provided
with the same amount of power and are converted with a unique speed conversion
Test Solution - Speed
- Six Motors provide the drivetrain with a great balance of torque and speed
Test Procedures:
1 Place design against a perimeter wall, facing the opposite wall
2. Set drive speed to max and start stopwatch
3. Once design contacts the opposing wall, stop stopwatch
[Isometric View] 4. Record results
[Top View]
Test Results (measured in seconds)
4 5 6 7
2 3
Trial
2.81 2.97 2.84 245
Drivetrain Rv3 2.64 2.47 2.46
Conclusion
Success
Drive effectively around the field Success
Be within a height of 4 inches Success
- Weigh less than 3 pounds
[Side View] We are excited with the first completed subsystem for the final robot design. The
drivetrain passed all of our expectations m increased simplicity while maintaining
(J-.
: .. consistency. We wlll now move on to scoring discs with the delivery subsystem.
- ~IOp,,ge"'
- - __ eon.,_,.,.,..~g_[_ ""'3/15 }2D2-3
_,_~ ~ ..,. 3 }\ S/1-(Jt) PROPRIETARY INFORMATION
om 3/15/ 1c'l..3
OIICl,OEJ TON#Ju,r,dMT000 9'1' PROPRIETARY INFORMATION
?,/15/2.0'1..3
REBUILD DESIGN We built the CAD model and the resulting design 1s as follows
I
Overview
• Four our final iteration of the delivery system, we decided to maintain the same
layout, but optimizing each component.
- One change is the extra-wide cutout for index wheels. This allows us to utilize a
larger flex wheel when indexing, resulting in a faster index time overall
- Another change is in the structure. On the delivery side, the vertical C-Channel was Test Solution - Precision
cut to accommodate the flex wheel. We now have it only partially cut.
Test Procedures:
1 Place design In center of the field, facing a goal
[Isometric View] 2. Tune flywheel velocity through Feed-Forward Algorithm
EJ [Top View]
3. Record the working velocity, use this as the target for five shots
4. Record results
Test Results (measured in success out of five)
4 5 6 7
Trial 2 3
C,ontlfNN#dlO~V.-
DA1'3/'1~2-02-) .
""'"""'"'~ ~
CUiel05ED TO A.NO UtootflflOOO IY
..1/1.'l-fio?..~
..
PROPRIETARY INFORMATION ~w, cffeu;~
I s9
Build Solution
REBUILD DESIGN We used the CAD model to rebuild this intake and lift Additional fine tuning was
made to make the subsystem as smooth as possible.
Intake and Lift Rebuild
[ISOMETRIC VIEW]
B
l
We will rebuild the Revision 2 intake to fit the new robot design so that
we can collect and store discs during matches
Overview
I
- The overall layout of the lift stays the same. There is a wide set of rollers on the
bottom, one roller in the middle, and one roller at the top.
- For smoother collection, we made two changes to the bottom set of the rollers.
1. The furthest left and right rollers are slightly smaller This allows for discs to
have an easier transition to the middle of the intake
2. We added a chain link to the top lift roller. This gives the lift an additional reach
for storing discs in the flywheel tray. Test Procedures:
1 Place design flush to a penmeter wall, facing the opposing field all
E] [Top View] (lsometnc View] 2. Place four discs in fron the robot, m line with robot, and spaced 2' apart
3. Set intake velocity to 127 and drive the robot in a straight line
4. Record results
Test Results (measured m seconds)
5 6 7
2 3 4
Trial
4 66 4.54 4.23 5.12
Intake and Lift 4.23 4.59 4.37
Rebuild
Conclusion
Success
Collect row of discs in less than 8 seconds
Success
Intake Funnel Improvement Success
- Alignment Forgiveness Success
Weigh less than 31bs
We are confident in our Intake and Lift rebulld because 11 succeeded in our overall
test of consistency. We are excited to not only move on to the next subsystem, but
to stay on track with our monthly goals in the process
~ .. -x_
Coo-lOPllil' ~ .... 3/2'1/W3
OAT( 3/1-"'\)io'2-7:) - O~Tl
3/'l'-\{W1.~
PROPR1ETARY INFORMATION
PROPRIETARY INFORMATION
3/Z.4 /7.,0Z,3
REBUILD REBUILD DESIGN
Endgame Rebuild
Roller Rebuild
B we will rebuild our roller mechanism so that we can utilize field rollers
during the skills and match play periods
B We will rebuild the Endgame mechanism with consistency Improvements
so that we can effectively cover tiles at the end of skills and mat ch play
I
Overview
[ Overview
Implementation
i
[SIDE VIEW]
[FRONT VIEW}
o,,,_.,_q2.
om
""3/2...7/20'2.~
3/2.S /207.;3 0t9CI.OSI.D f0 AN> UH\)f."5ffl00 If'(
3/7..1/ 2.023
PROPRIETARY INFORMATION
PROPRIETARY INFORMATION
JY~y
I
~ L Continuod from page >(
+
io: the build implementation, we chose to make the Endgame mechanisms asl
as possible. This prevents the metal release to bounce out of t he field.
IMPROVEMENT
i Multi-Stage Deflector
I
[SIDE VIEW] [TOP VIEW]
:et~il; improvehour deflector design by adding an additional angle option
a we can ave greater accuracy for each application of scoring.
■ II
'1i I Overview
=============
Our Endgame rebuild was a great success! The passive locking mechanism allows
the robot to hold the rubber band in place without any need for air. Everything else in
the Endgame remains the same as our previous iteration.
Continued lo page :<
Continued to page
SIGNATURE
,._TVR13.vi
~~
~
MONTHLY GOALS
Final Push
PROGRAM DEBUG
Live Field Update
~ To prepare for our final month of the season, we will create a list of
r
~ everything left to complete before the World Competition We will program a feature that plots the robot on a digital field so that we
can track the precision of our autonomous programs.
r
~
Allows for 2 Days of Buffer
+- I General Overview
~
1. Program a New Framework to Utilize in the programming
-- 5 Days Graph Progression
~
II
200 ,.o
-+
3. II 300 7.0
Program Improved Flywheel Control in the New Framework
I
2 Days
•oo
500 ,,
7.1
~
- 600
700
BOO
900
1000
7.7
10.10
10.11
10.12
10.13
+
1200 11.12
1 Day
- 1300 12,12
.-
1 Day controller through the robot position every visualizes all data in a
terminal 100ms full graph
Continued to pago /(
con.,..., 1o , , _ 'fS
I"';; 31/?.073
om':) /2' ('2JJZ,:) PROPRIETARY INFORMATION
I""TE 3/31 ]2.til?:, I PROPRIETA RY INFORMATION
Conllnuod from pag~
t
.tapU1ycv..1ue1: tuunJ(UOAt (Value) I
~II"., 100
nc.. lc- - f'do]f' 0 1/U◄ .O
robot T\lrt1411 0
robot.p,,nupo
r-obol, •fl"'t'd (?OOJ
I
Conclusion
robc)t,l'lh~pll(•tt1TT ,-")
robot. t 1llcolor ('""7rce.r."I We are excited _with _the precision and value provided by our live graphing program.
ta.-..,•l ~l.cl°'"' C, This will be utilized in future design process testing and program solutions. For our
tarvl'!t..ahaP"("'~·•r""h "')
t:.,r9et.rlllcolc;,r{"ni "I next step, we will create a system of rapid tuning for PID Constants.
l!f-•t' Al •• lal') r:
linr t:
~ ~
MTE PROPRIETARY INFORMATION
c,,,,,nued/rompago 'Vil'
Program Begins
I Threshold Check I
- Compares motorVel value to those of day-old motors.
- If the motorVel is greater than values, the motor is considered "good"
Run M otor at 127{max) - Otherwise, the motor is considered "bad"
for 1 O seconds - The return statement contains a string with the statement "good" or "bad"
t
i
•
7 vold runSubsystNtf'\t{l•.t t ••• pros :'"'1tor · ,r , IM ,1,Dfld1!tpl.,llP, l"t •l"l,ut'Sp,t'd, l11t •llkll•Sr,Hd, 1
No • int rou tlonCounurri:I;
0
IO II Spfn t M 110tor t o ~~ sµcd
ll .ot or• 127;
12
13 II watt t"t ghtn tni:K.1t of ipt 11 r
14 pros: :dl'l1'i(Sl'Cond55plni.p ' 1N .,
.!C Yes lS
---r--
1 IJ tl, . ~l 1
0
16 I/ TM sprf"d of t l'lt' .,tor t,, U Z H'
---
1'-'
C
Return motor is · good" Return motor is" bad" ,.
18
19
pros: : ll• ll'i(SNi);
routlor.Count ir , .->tor,1.-t_,n~l-~•l~ l t y \ 1;
~
}
21
u // roltt' rtt,o O•t'r'D9r of r,iuu s~tcf.s
-
k ==----------- - - --------- ..-""ne= - - - - -"""
- "'"""
- -'°-'-,,...
-'-..,_1,,,
o"'o'--1
COtitJnuedtopagtl
"""'""" >---
4/ 2./ 2.0'23
$1Co'-l.r ....-it
..,. y/2-/2,,cil._)
~ ~,P:~r "'"'y/-z_f 2 0 2J
', / 2.( 2.o2.3
PROPRIETARY INFORMATION
PROPRIETARY INFORMATION
~~
c«itlnuod from pago "/
- - - -------·- - - ' - - ' -
2) rohtlonCount cr-/•5,;
.J.
24
25
//rr(n t tht' l~rd to trlr cont rollt'r
dl~pl ■ySc.!l( Jndex)•rohtlon<:ounlt•r;
PROGRAM DISC CAPACITY
"
,,,."
// Wonll' thf' 1110t or baslfd' on tf•t' 9h,rt1 rortk SfU't'dS
dJ1ophySrt(in1h~>-• l )•O;
••
dbpl■ySet[lndu.• t)••rotat loncountc,..,..int-Spced; 0
dhpllySet{lndt>.t l ) ••rotatlonCounter-)tl.iddlrSpeed; 3 ~ We will create a program that removes excess discs from the robot so
ll dhphySet [ JnCIU• 1] t •rotlt ionCounUl">Nldpecd; L.::'.:....J that we can avoid disqualification in skills and match play.
l2 rl_
G_e_n_e-ra_l_O
_v_e_rv
- ie-w~ I
+
t
"... II Stop thr aotor
aotor-0;
"
36
pf'Os::~lly(loot);
Calculate the average speed velocity of a motor when it is set to max vo ltage
Motors t hat are above the speed threshold are acceptable to put on the design
" Threshold is set by the average velocity of day-old motors
Flowchart:
Conclusion
We are excited with the precision and va lue provided by our live graphing program.
This will be utilized in future design process t esting and pro gram solutions. For our
next step, we will create a system of rapid tuning for PID Constants. No
L
Continued to page
""""'""''°- (0'2...
!O;TE/?../?.JYJ,,3_ ;c;'l
°""II7 0 ,.,n 'J
l,\/k0 PROPRIETARY INFORMATION
DATE ~ 2-( '2.cr2.;3:, PROPRIETARY INFORMATION
Continued from pago t.C) 1-
Run Lift Motor
14 0
141
:~ :f
5
t here ore not three d iscs (n t he fLy,,ihceL troy
- Sets the target velocity of motor at 127(rnax) 142 lnta k<!Tini<!•8; II Rcut thr u.,u
- Runs forwa rds w hen at/below c apacity and backwa rds w hen over capacity 143
144 II If t he.r e have been discs 1n t he fLy..iheel tra for JSO.S
145 I f ( tnt akeTbc>l50) y
Detect Excess 146
} inta keHode•l_TI-IREE ; I I COllf(dcntly say thcrc ore thrcc discs f n t he tray
147
- Looks at the intake and delivery for a fourth disc 148
- Two conditions are taken into account: if there are 4+ discs loaded or 3 discs "'
150
II · • · · · ···· · DETECT FOOkrH DISC • •••••. •••• /I
II Arc t here J discs in the robot ? If so .••
loaded and one in the intake ' 151 e l s e 1 f (i ntaktl1ocle • •1_THR[E)(
I Threshold Check
152
153
154
155
I I If a new dlsc is found tn t hr fntoll'c,
l f ( dis tlnta k.e . get ( )<di sllntake,Uu h)
0
156 I I Re~ve one frM t hr t ray and ptc/f t his ""'" one up
Lift continues to spin in reverse until t he robot only has t hree discs left. 157 lnta keYoodc•I_ RE~E_ 2LEFT;
T he two previously stated conditions lead to different thresholds to check 158
- When there are four discs loaded, reverse lift until t here are three 159 II If o fourth d isc (s found in t hc robot,
- When a disc is in the intake, reverse t he lift until two discs are loaded •••
161
e lse l f (dl s tStatl,:. ge t ( )<f 01Jr5tac:I.Ois tl'.a,c)
0
176
122 h ltff'Ot.- ~ O"lti four stcct j...r(t{on -
UJ
u,
vo.id • ,ur011.1rA1:,nc1artt•()1
I If,,., .,,ti,fo,, sroc:t ti ""' dt<clt,Lrl
177
178 ln t a keHode.. J_HrunAL, 3
179 lntakeT hre• lt;
12!1 lf(11tt~ti:-"Dder•r_ofSAILE)(
180
C-
l
126
181 l
127 II - • sr,u, ---- II 182
118 cDl'ISt l.hort ♦ QR'Stac.•!>tst:N• • V1.; ~/ Fo-.ir Stoct ()htancl' rhresho ld (Rongts f roa .ll&t11 to 14JM )
ll!J I/ If t hc task ts dUoDltd on1 t~I" llait I~ riot rt'Ul
119 ccw,5t ,tiort U'.....St.cl:>U\~1: • i~e; I/ Thr,.r Stoct Dhtonu Th~shold (Rong!S f ro,, 147,_, to 168-) els e If (lntakcT!.-el• O)
18'
UI caul •hort 4 U tak,.Tll\t. 15;; / / I lltalfr Ohc ~li!'c t{on ( Olstorict" under 9;.. rl!'ans disc f ound) i ntal<cTi•e• O; II Re1rt the t i,~
185
1)1 186 )
132 II·- -· - Oll\.1:' TidEE C'ISCS · - ·-·- - · -·· II 187
C
0
~ J II 1/ trwrr Wl"II' r.:r rt!rff ouc:s in rhl!' /Lyh.,.rL troy 1r.s ogo
I~ Sf(l~tlk~t-J_J.;:LJTUL)f
1..
I. 5
I ,
138
I t Oirrut ttlf"N' dun t11 th# /L:;,,,,l!rrL tray
1f(Ol,:tSu~,.,ct(J , t1...-c-cStu·U>l•"tl'\.I .. aa Ol stS"tll t k. .sct ()>200)
lrou•t"Ti••....28; II Add lO tM COII/ Cdrncr ci•rr 0 If the robot
contains at least
3 discs
0 If a fourth disc is
detected, whether in
intake or in the intake
0 Once robot is under
disc limit, restore
speed t o forwards
' 9
Contifluod to page X
Con6nood la page lb '3
...... SIGNATlJRE
PROGRAM SOLUTION
5 vold Awp(){
- - - - - -- - - Left Side Autono mous Re-w rite
~t~~;~~d~;;TJALlZE AUrONOHOuS ••••• II
B We will rewrite our autonomous r
____c_o_m~ m..:;a::nds so that we can h p ogram s t o m atch the new format of
setflywhed(600);
0
ave more effi cient routes sorn:w ROUER
r " II ••••• CUllf ••••• II
1
I
_ Program Route .
I
quickAoller{•58,8); // Rim RoHtr ct11C.. /unction
:ut::.:~l:~
0
chau1s,sw1nR..Pld(tUGIT_SWll.:;,-H,l3i); // Tum 0._,, /.
ch1ssb.drlvc_pld(3,5,138,hlu}; // Dr(vr towords dtsc
*Start
0 · · Score Disc :::::!:·::~:e_pld(·l,130,hlse); // Dt-hlt away,,_ outonmous lfnt
a - Spin Roller ·
1
_pid(Sl,UO) : II Turn t oo scar-Ing posltfon Claim
di::::~:~:::::~::: :~l: : : :t~;d::,~:::,:::rds scorfo9 position Roller
Anticipated Points ; 45
Scored Discs ; 7
Claimed Rollers ; 1
chusls.turn_pld{· l4, UO); // rurn tOtlOrds goal
hi11UYr-y(3) ; II Scarr J d iscs
0
chilss1s,wiltt_dr1ve(); II hb(t far l'Clbot to co-pteott dr(ve .ov-nt
chu;sh.stt_pld_constants(&chnds.hudlngPID, ll, O, 20, 8); II Retum hC'<ldl119 to d1tjo11tt :stotr
Start
II ••••• SCORE DISCS •• ••• II
0
chusls.turn_pld(-J),120); II riirn towcirds gool
dlSilbleAutolntake(); II Olsoble fOIJr dUt dtttctto,, 3
pros::dehy(200); II 1,'olt for dtsc to ~etrlt tn r<1bot
Claim Bottom Roller
_______
hi11lK.1ry(l); II scort J discs
Score
II ••••• PW( UP DISC •••· II Stack of
.__ Pick up disc from autonomous line and score preloads setrlywheel{556); // Set Jt;~hetl tu,vrt ta ~~ l.lli'I
discs
enilbldutolnUke(); II E"ablt" crl,C I f(CCIOII
chus l s,drive!_pld(U,~O) i II Pie• 11p J(sc fro. ,1uto llllt
----------
dhableAutolf1Uk1();
haUIWry(Z); II Shoat 2 dt.scs ( t llert Jl'lc4.IJ orilt ~ or"it t, rd,,t tvt Just n c 1t I )
,etrly,;htel(900); II Stt ftyt,:llttl ro ao• s~td ru oh, .. /t:,..t.,:d to not u°" Wf'lrg di.10.:,l
~
mNA~
'-l/ 7/ 'Lo'lJ
~~ Y / 7 J 7,JJ7-3
I~ Conllnuod from pago
L
L .... "------"---'-- I
-- - L
I
T r + + +
-- I
I
-1
I
r-+- --
--
-+-
+
- -
~
-
~
'
I
' I'
I
I
I ' ' I
I
I
~~
+-
...
'----
~~
~
-
L
- ---- '
I I
I
'
I
I
I
I
I
'
I I
'
I
I
I
'
--- ' I
-'-- ~ __,_ ~
I
I
I
I
' I
---, . .,_.___,.. r I I I I
I I
---- -- r
I
I I I
r I I I
' I '
I I I I
... t r - - I I '
I I
'
I
I '
I
I
I
I I
I
I
I' : I
I I
'
I I I I I
'
'I
~ +---- 'I
I I
I I
' ' I'
-~ ... i I I I
'
I
I '
'
I I
I
--+ - I I I
I I I I I I
I
I
T
I I I I I '
I I I I
; I
I i ' ' I ' I I
---+- - - I I
:,
I I I I I I '
I
' I
I I ' I
'
I I '
L
..,_
- I
I
I
I
I
I
' I
I ! I
I
I
'
I
I
,-~ J.. f ' I I I I I I
I I
' I I
---
I
: I I I I I I I
' I
I
,- r -
' ' I I I _,_
T l
I I I I I I '
I
--- - I
i
I
I
I
I
I
' I I
' I I I I I I
- ___
I - '
' ' I I ' I
l
I I I
I '' I
' ..._ I I I I I I
! I
+ '
I
l I I I I I
I I
I I I
.
'
I I I I I I I
I ; I I
i I
- I
I
I
' I
I I
I
'
I I
I ' I I
I I
' ' I'
' ' I I I I
I
I ' I
--~ '
I
I
I
I I
i 'I I
- - + - I I I I
I
~-~ -- I I
I I I
I
I
I
I
I
'
I '
! '
I
I
I
' I
' +
'
+ ' ' I
I I
--- ----+------'" ...
~
-- +
I
I
'
7
I
' I I
I
I
,----.-
' '
'
+ T -
'
I
I
- ----- ...
I
' I
-L---.-
.,_ .- I I
- -
- . Continued to pa90
---
lc;;;;
J._ - ,.. --+-
Conllnued to page
810:::""ccrucc
,cc,----- +
SIGNATURE
I DATE
16 ••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••• ········· ·I
,_,.. _.__,.. ..
,._,_,.,.,
.,,,,,_,,,, .. 18 II ···········-···· INITIALIZE ·······-········ II
7, •11J11'JY'"Wl....,..l1,n>
19 II ~ts up aU sensors, aQtors and taslls
20 void iflithlhe() {
.."
.utchDr1ve•>HtState ({8_ 1n, 8_1n));
)
.."
void disabled() {
ss std :strina iiUtOl'IOIIOUST1tlts(8 J• {"Skills", "Win Point", • sue Left Side", "LS filld l" , "Loni Side Full ", "Lona Side No
Stiitk", "Short Side", "Win Point 2"};
62 void autonoaous() {
63
64 inithlizeAuto (); II Set up for Aut~us
UUUS\
U _U\
U U U\
U _U\
U\ U \
U IL i
"
66 II Ftnd the currently selected auto fro. the potenttOllrter selector.
U I U I UUU\ UUU\ U UU\ SUUS\ UUU\ U U U \UU\ u ' u I U UU\ SUUS\ U UU\ UUUS\ nuns IU \ U\ U\ int illltOMs • std: :floor(ilutoSwitch. get\lalue ());
:u:S<1
SU UU IU _U\ $$ _U\ U _ U\ H _U\ \ _U \ U _U _U\ uunu IU _ U\ n _U\ u _ U\ u _U\ u _u tu I\U \ u I
U _ I U I \_J U I U I U / U )U I \_ISU UU IU / U / U I
u
U I
I u
U
I
I
$$ I
\U U U
n IU I u
I U UUU IU I
JU I u _u IU I u
\ SUU U I U I U I U
I u I
I
:: ,-:: ::: r :: 1:: ~ :: :::us~::: : :: 1:: ~ :: t:: :~
U I U ISUUU I UUSU I \ UUSU\ U I U I \ USU U IU IU /\U \
69 II Chtcll through tach possible outonoaous to find tht correct one
switch (ilutous) {
LI \_I \_I \_H ILi ' I _ I \ _I LI LI LI \_IU _1 U _ I \ _ I L i L I \_ILI\...J L I
U \U ! u I u I
\UUU I u I u I 7l II •• ••• • SKILLS AUTONOl'()IIS • • •• II
\.___J LI L I 7J CilSe i :
II Halle turns aQrt: snopt,y ond turn on Color Stnsor LEOS
1=-,
> I
Cl
I I I_
I I 1=-,
> I
I - \
I I I I
1=-,
> I
1=-,
_l I
74
7S
76
chassis. set_pid_const ilnts(lchassis. turnPIO, 6. 5, 8 . 883, 75, 15);
leftR.olle rcolor. set_led_p1a( l 88);
I I 1==1 I I - I 1==1 I I 11 I I I I I <
I I_
I_ I
I IUI
_I \.__I
I I_
I_ I
I U I
\.__/
I I_
I_
_ ll
I I__/
,. right RollerColor . set_led_pi,a( 188);
..
82 II --- - - WIN POINT AUTONOIOJS ----- II
83 cas@ 2: 1•----------·--·----·-----·----·-----·------------·--·-·-----------------------
chassis • set_dr1ve_b r ake (MOTOR_BRAKE_HOLD);
I _I/ I _ /-/_ - - I-/
"
86
a_LBONRT() ;
break; ff _ffl_\f'_\ l_' /ff
• IUl/1/UIIUIIUII/
"
88 II ••••• WIN POINT NO STACK AUroNOIOJS ••••• II I_//_/ LJ /_._/ L,_/U
,.
89 easel :
a_LBDN( ); 9 Created on 512912922
break; 10 Lost updated on 211612922
"
92
u
12 Jntttoltzts otL devices used in the progN19
,.
9) // - - WIN POINT GWLY STACK AUTCWCll'llUS - - - //
"
96
a_LBOH_FlELD_1 ();
bruk; 15
16
• Controlle r
• Opttcol ~nsors
97
17 • Oistonct St nsors
,," II ••••• LEFT SIDE SUPPORT AIJTONOl'('J(JS ••••• II
18
19
• Pneuaottc Mstons
• Jnerttol Sensor
a_LBON();
191 break; 20 • Rotot ton St nsors
,..
192
183
,.,
/ / ••••• LEFT SIDE SUPPORT NO STACK
c,se 6:
a_ LBON_ NOSTACl ();
AllT(W()'l)(JS ••••• II
22 Totot Sensor Count :
24 --············································································I
"' break;
"
26 II ---------------- ALL!ANCE ---------------- II
"' 27 I/ Defiltts t lle au toneII! the robot U on
"' / / ••••• RIGHT SIDE SUPPORT N.JTONOlfOUS • · · • II
28 II ~fault oLLtance ts RED
"' 29
,. std:: s tring dlhnce • • Red" ;
'"
m
a_STOH();
break;
m
II ----- VACANT SPACE FOR TESTING----- II
"
32 II ................ l«JTORS •••••••••••••••• II
cue 8:
H I I port • Hator Nae
34 // H - U:ft ,ro,,t ,<tot,;,r
AWPalt();
116 break;
35 II l2 - Left HtddLt Motor
m 36 II ll • left Baell Motor
)7 II 1 • Right Front /'IOtor
118 }
119 pros : : delay (leeeeeeet); 38 /I s - Right HtddLe Motor
129 } 39 II J • Ri§lht Botlt Hatar
49 /I 16 - Intalre/UftlRoLLer /'IOtor
II •••••••••••••••• DH.l\lE'R CONTROL •••••••••••••••• II 41 II 17 - Delivery /tlotor
132 CoefOfFrictlon..e. 97; II ScoLt: up fLy.ht:eL powr dut to dt:crtostd frtction 51 pros : Jllotor rolle rf"ltr (16, pros: :E_l'IOTOR_GEARSET_18, true, pros :E_l«)TOR_ ENCOOEI_OEGREES);
52 sylib ; Jllot o r shooterf"ltr (7, 680,tNe);
133 tndLlf t•trut;
134 lifti11gEn;1bled..-fdse; II Tum eff Async Lift Tosi!
54 ohpi : Jllot orCiroup l'ltrGroupL({B,12,11});
55 ok•pi ; Jllot orGroup l'ltrGroupR({l,5,3));
136 /I NoturaL Starting PN9raa without
137 1 f (controller. get_ digi td (DIGITAL_R2)Mcontroller. get_digltd (OIGITAL_IXMN)) {
138
139
pros:: h sk controllerOi sphy( cont rol l erObph ySel ); II Start Controtler dh,Lay to see tnfo
return;
"58 II ••••••••• • • • •••• CCWTRDLLER •••••••••• ••••• • II
59 I/ Controller II
6Q pros: :Cont roller controller(pros : : E_CONTIIOLLEII.J 1ASTER);
/I Stt deflector ' s dtfouLt statt os "up"
ntPhton( "Oeflector" , • down" );
"
62
63 II ---- --- - --- - -- - · DISTANCE ------------ - -- - II
64 II port - Disto11ce Se11sor ~
145 setShooter( e ); II Rtset Fl)"""1eet
65 II 7 • Front Left otstcmc,
66 /I 8 - Bact Rtght ots ronce
/I Ensu~ drtve .otors o~ not Lochd tn place
148 chn sis . set_drive_br<1ke(MOTOR_8RAl(E_COAST); 67 pros :Oist ,nc e b•tklreckLeft (3);
68 pros : 01st1nc• b•ckTrackRlght (2);
"' 69 pros : Oi stlnce clel!YtryDisunce (5);
"' /I Loop IntftteLy throu9hout Driver Control
71 II ••••••••• • ••••• • POTENTIOl'IETER ••• •••• • •• •••••• /I
while(true){
72 // port • Potenttc:aeter Na.it
153 // --- - - Ortvetrotn --- - - II
1S4 set0!"1vefolotors(); /I 'F' - Au-tono.ous loflu L Indtcotor
74 Pot f\gr autoSwltch('f');
,s
1 56 II ----- Deltvery ----- II
76 II GPS Sensor is not used, but stays he~ for testing purposts
if(trunning)
setShoot erNotor(); n pros: :GPS Gops (2);
"'
168 II - --- - Int11lre/LtftlR0Uer --··- II
79
8e
II ------ PNEUMATIC PISTON-- - ----------- II
II port • Piston No.e
161 if(tr-unnln1)
162 set Rollerf'lotor (); 81 II 'H ' • DefLtttor Piston
82 // 'G' - Endol:IM! P-Otons
#include "■a1 n.h"
83 pros : ADID111lt lll0Vt deflectorPlston ('H');
pros : ADlDi11it ll10Ut endGameSoootPiston( '6' ); 1•------------· ---------------·----·-----·--·----·--------------------·--------
..
84
85
87 // Ltne foUOWf!'r 1s not used, but stays here for testing purposes
1 -' __ ,=)_ __ 1-,_ - - --'='--
{ I I /J '_// /\ \III_ \{ _If '_fl_· fl fl '_ \
88 pros::ADlAnillogln deliveryFoll°"'er ('Z ' ); • I U II I I I I , 11 JI L I I I U II II I I I
89 , I__/ U U V L I LIU L,_IUU U
90
9 Created oo S/21/2622
91 // ---------------- OPTICAL SENSOR -------•-------- II
92 // port - OpttcoL Sensor NoN 10 Lost Updated Oil 2/16/2622
93 // 6 - Left Roller Color 11
112
113
// These encoders ore not used. They ore he re for testtng purposes
AOIEncoder 1({16, ' A', ' B'), false);// Left Encoder
"
31 // Sets the veLoctty of the OMvetrotn 1aOtors
114 AOifncoder r({ 16, 'C', 'D'), hlse); // Rtght Encoder 32 // ALL Drive l'IOtors are s e t to the soae speed
33 void setDrive( double speed){
ADIEncoder ■({ 16 , 'E ' , 'F'}, fillse); // Htddle Encoder
s peed•- 1. es,
35 chassis. set_tank(speed, speed);
" )
" )
t 1nclude ".a in.h" 83
-- .
II Used to slow down the flyl</Mel wtthout turning tt off cc:apLeteLy
I"············································································· 84 if(controller.get_digital(OJGlTAL_OCMN)&& 1controller.1t1t_di1ital(DIGllAL_R2)){
shooterHode•"Low";
I_, 1/U
II II _11 __ _____ _
• I I I I I - ,, II ,, \ I / I - I/ ·_11 I I /
I /_/ II _I/ 11 I I v I/ _I/ I I U I
" II· ···· ····OFF·········· II
89 II Toggles onu buttons "DGIN" and "R2" or-e pressed
/_ I L/UU LI I_//_/ L, / 90 II Used during procttce or debugging to prevent battery death by unused eotor
_I/ i f(controller .get_dlgital(DJGITAL_DOWN)&& controller. get_d1g1tal (DJGITAL_R2) ){
10 C~ated on Sl2Bl2822 (_I 92 shooterl4ode•"Off";
11
12
13
14
Last Updated on l/Jl/2022
Contains c-,nds for the Del bery sys tea in shooting Dis/ts
Uses PJD I FEED FORWARD ta qutcltLy adapt flywheel control to a target RPH
. )
l
98 void setShooter5peed{){
..
138 targetPower-0;
shoott1Nlode•"M.ilx"; II Set globoL aode
" 139
,
59 141 }
60 ll··········FAR••········II
61 II occurs once buttons •u• ond "R2" ore prrssed
62 I I Turned on to score early tn a ""1tch
i f(contro l ler .aet_dili tal (OIGITAL_Rl) && controller. 1et_di1i tal(DIGITAL_R2)) {
64 shooterNode-"rar•; II Set gLobol lltOde
65
66
67 ll··· ······ ·MlD···· ······ II
68 II Occurs once buttons •s• ond "R2" orfl pr-used
II rurned on to score NrLy in o 110tch
70 if( controller .aet_digi Ul(OJGJTAL_ll) && controller. &et_d1gital(OIGITAL_R2}) {
71 shooterltode•"f"lid"; II Set globoL aode
..
79
13 Feed forword ts on odilonced PID Loop thot sets the /lywlleet to o spectfi.c RPf'f voLue
"
95 II ------------·-- PIO CONTROL ------·----·--- II
14 loflen the the current lfPH is wLL below the des i red tofllet, vottoge is aut~UcoUy set to - "
96 II Deterwtne the PID output of the flywheel control
lS ·----·--------------------------·---·------------·---------------·----·---·-- •/ 9? double PlOControl( int de luT111e)(
16
11 do11ble urgetPower..e; // Creote o GL08AL vortcbLe to set the torvet llf'Loctty
99 / / Grob the current RPH readf.ngs ustng SyLtb Motor estt.lt1ons
tee double currRPN • shooterMtr . get_vel ocity();
19 // Ooeclore o 110,-ie ty of 11odabLe to create o ..:wing aveN1ge a,-ray
101
20 bool init.-fdse; 182 /I If the Current RPH is below e, aallfe 1t zero.
21 i nt,.~Indel(-e;
183 if(currlll'l'l<8 )
22 doubl e rpr,Ar'ray ( 29);
104 currllPH•8 ;
i nt saniplel•28 ;
,.
23
106 // Ftnd the dt fference bet'Wen target and c11rrentRPH and .orllf tt os e rror
2S I/ ---------- GET ARRAY---------- II
26 // Obtafo array
27 double• getArr1y()( 189 // Colculate Proportional by •uLt1pLytng the error by a goin factor
118 double proportional • kP•error;
,." )
112 // Colculote the tntegral te,w by tollf1n9 the co.postte error values
31 II ---------- INITIALIZE WEIGHrED AVERAGE - --- - ---- II 113 suniError+•111rror 0 kI 0 deltaT!Jwe;
32 II Start orray by ftLLing every t1Le with 8 114 if(sUIIError> 58)
3l void i nitAver1ge(){
SU11Er ror- se;
34 for(:lllt 1 - e , i~s-i;,ld, 1 ... )
116
35 rpllArr ay[i] • &;
11? // Store the sia as the integral terw
36 init•tNe; Oouble integral • s u.iErr<lf";
3? ) 119
120 // Colculote Dertvattve by tollff.ng the difference of current ond Lost error
39 // ---------· ADD f'OVING AVERAGE VALUE- --------- II double derivative • kD•(error-lastError)/deltal i11e;
4e /I Insert a 110L~ tn the ffrst tndex and .-ove e11erythlng to the right by one tndu
41 void addVa l ueAverage ( int value){
lastError•e rror;
if(r p,llndel(<SMplel){
rpMrray[ rJllllndH)•value;
125 II Find the MIii ve locity 1110 PW. Holte sure to add on t he currentRPf'f as weU
., r~Indel(♦-t;
126 double result • (proportion,! + int egral + derh 1tive)+curr ll~S8 ;
"
53 // ---------· CALCULATE AVERAGE ---------- //
134
135 )
return 1etwelghU.verage();
74 double •1n151111•8;
75 for(lnt 1- e ; 1<silllll)lel; 1++){
•1ni SUll+-i+t;
"
82 return result:
t 1nclude "uin. h" t 1nclude "u i n.h"
1• •···························· ········································ ········ 1••············································································
,_ _, I I I I UI _/ I I _u II L _/ / /
I I __ / __ / / _ /_
I I
I I
I I
I I _, _, _,,_
/_/
II
II
I-' ///
I I_J I_ I I I ___ I LJ / _/ /___ _
11
I I I I _ _ _I I _ _
I I I ·- \/_I_. I /II_ I I I I/ I I I I I - II_ \/ / /I_ \ "_/ 6 I _1 I_/ _t _ 1/ ·- 1 I I I I I '_ \ I_· /I_ \ \I I
_/ U I I/ II Cl I < _I I I //_/////_ II I I II U I I I __1 I II /LI//U//// I I _J U / I I U / _I> <
/_ /_/ L/LL ,_/_/LL_ / u /__ /_/_/ L/ u /_/ LL_I/_L/L_L/ /_/ L/_ /LL_IL/ /_/ 1_1 J_ /_/ U L , _JL_I../LI
ll Sets up the c-nds used for ptc.lrtng up dts.lrs and spinning /teld rollers 13 Sets up all custoa pneiaatic and aotortzttd index c-nas
14 Usttd far pie.Iring up D'islrs and Sptnnin11 Rollers dur1"11 Drive r and A u t - s periods 14 Usttd (.n Autonoaous and Ortver Control
15 The Speed 1s set by Sensor and ControLLl!r Input 15 Toggles fftween true and false for alt pbtans
16 Uses the ('ontrotler as on inP'l't for au fun('tions
.............. ................. ........................................ ······/
18 18 ··· ······· · ······· ······· ·· · ···· ·········· ············ · ········· · ······· ····· •/
19 / / •• ••• • ••.•••• • •• IIITAXE I LIFT a I/OLLER SPEfO ••• ••• •••••• • • • • // 19
28 // Sr t t he i,eloctty ref t he .otor 20 // •••••••••••••••• SET PISTON ••••••.••••.••••
21 \/Old setl/oller(int power ){ 21 // Intuittw- function to .eve pistons
rollerftt.r • power; //Set the w-Loctty of the Subsyste.s n /I The t ll'O ptstons are "Index" and "End11tae"
.n } 23 // The tll'O ways ta .eve the pistons are "out" and • tn•
24 24 bool de flectorllp-fds e;
25 25
II ••••••••·••••·•• SET LIFT •••••••••••••••• II 26
27 II Pre 11ent J-tng by revteirutg tnt alre i,elocHy 27 void setPiston(std::s t ring pistonType, bool dir){
/I If the velocity h 8, then the fnto.lre h J - d
29 // Reverse the Ulto.« for a s et a-wnt of tt.e and resi.e 29 // •••••• OEFEtCTOR ••••• II
38 bool endLift• filhe; 30 if(plstonType••"Deflector" )(
ll \lo id setlift(){ 31 deflectorPiston . set_v1lue(dir );
"
33 setRoller(127); // Start fotalre sptrm fng
32 deflectorUp•dir;
,.
// ••••• ENOGNfE ••••• II
"
36 // J,ihi(e the tnta.lre jaa de t ectton is enabled
35
36 else 1f(phtonTy pe••"End11me" )
whlle(lendlift){ endG111eShootPiston. set_vilue( d 1r);
38 ,. )
//If t he into.Ire is J - d (vta Law ,,,,_ 11aL11e)
" 1 f(rolleNttr. get_1ct 11d_vdocity( ) <15) { "
48 void setPiston(std::string pistonType, std :str ing direction){
" // Spin the into.Ire 1.n rei,erse to free up j ~ dtsc // Convert 01.r ection Strtn11 to Bool ean (where outwards fs TRUE)
setRoller(·l27); bool dir • directionaa"wt• 11 direction•• "up";
pros ::del1y(2M);
..
// Send out Piston 1.n specified direction
II 1/esuae pie.Iring up disc 45 setPiston(phtonType, dir);
setRoller(127); )
"
64 // Define the speed of the Ltft "
64 // i.flHe tt.e has not R en rit0ched ond the Joysttclrs have not .oved
65 i nt power; 65 while(count<ti- && lh"'>ved ())(
count~10; // Add 18 .ws to tt.wer
67 // Set the speed hosed on drtver 1nput 67 pros: :de by(18 ); // Wait 18 • s
68 power-121• (controller. get_digi t1l (DIGITAL_l1 )U Icontroller. get_digi Ul (DlGlTAL_R2 )II! fu l lloiid) • 68 )
127•(controller . 1et_ dtgiti l (DIGITAL_Rl )U Icontroller. get_ dllit.111 (DIGITAL_ 112)); 69 )
69 power•• 127 • ( controller . Bet_digitll ( DI GITAL_Ll )&&Jcontroller . get_digit1l(DI GlTAL_R2)l&fu lll oiid) ;
78 power+•leee• (controller. 1et_11111t1l(OI GITAL_l1) &&controller . aet _ diait1l(DIGITAL_L2) ) ; 71 // Prepare SOiie general boolit0n tools for p1.stans
72 bool triggered • fll se;
72
7l
// Apply the veLoctty of the t he Lift
setRoller(power) ; ,.
73 bool tri ggeredDeflectar • fllse;
,. ) 75 i nt dt sccwnter- e ;
76 i nt discU..e- e ;
77 int d1scDelly(3] •{1S8,288,8 };
,.
..
79
81
bool r unning;
"
92 // ----- DEFLECTOR ----- II
10
11
Created on llJl/2822
Lost updated on 211612922
93 if(controller . get_digi td ( OIGJTAL_L2) && I controller . eet_d1&1tll (DIGITAL_R2) )(
94 lf(l triggerede>eflector){ // If ( t had r,ot pre.,tousLy beM presstd
9S se tPiston("Deflector" , !defl ectorUp); // Send pistM code
13 Organizes sen.sor data by the poten1oaeter to be u.sed for a wide variety af appL t :aMons
96 triggeN!dOeflector• true; // Ol!terwtne that the button has bun prvsstd 14 This custa. code aUaws far purpons tncLudtng tht faUawtng:
- Setting .a.ll/• in vaLut af sensor
"
98 )
) 16 - Cr{,-ptng values to a sputjted degr-tts of ratat1an
99 else
17 --------------------------------------- --------------------------------------•1
t ee trl11ere<1Deflector• fal se;
19 II --·-··----··--- POTENTiatETER HANAGER ---------·-·--· I/
20 II Define tht vaortcibtes tho-t wf.H bt use d in the ctass, as i.,ell as tntttOLtzin9 the lt'5 s ensor through the spedfted port
102 II----- EMJGAJE ----- II
21 PatM&r: : PoV\ar{char portCh1 r, boal di!'fftlon, int •ax, int .in, int terallangefta){, int 1tr-oRangelU11) :
103 1 f(controller.1et_dl1ita 1 {DIGITAL_Rl )&&controller. set_d i s l tal ( DIGITAL_X ) ) {
104 setPhtoo ( •Endgame• , •our); potentiDN!ter (portChar){
105 ) pros: :ADIAnalo1In kPAdjus t ( portChar);
•a"_value-ma";
"'
m ) 24 •in_va1ue...1n;
25 zero_ r ,1n1e_..,~,.de11reesTOTick s( zeroR,1nge!U~);
26 zero_r,nge_• in• degreesToTlcks ( ieroRangeHin);
" )
"
"
30 II - - -- --- - -- GET RNI VALUE - - - - -- · -- II
31 II Returns the bast! vatut fro. pottnic:wtt r .sensor (ranges froa 8 to 4885)
32 int Potl'lllr: :getRitW\lalue (){
B return pote ntilal'tt'r,1et_vdue(),
,. }
"'
51 II ---- ------ GET HIN DEGREES RANGE ---- ------ II
52 / / /'far/ts a spectfied a.ount of degrees o.s ••tn •
S3 II St.Har to /'fox Dl!s,reu, this prevents a .sudden jusp fro. the Min to aa1t
~ double Potf'11r::1etZeroRan11if'\in{){
SS retum Tlcks ToOegre-es (rero_range_•ln);
S6 )
"
58 II -·-------- GEr ,C,,.X - ---- - ---· II
S9 II ~ts the aaxi - vatw s t t by t he ust r
68 double Potl\ir:r: :getl'la1t(){
61 retum U ){_value;
" )
"
64 II •--- -- -- -- GET HIN•---- - ---- II
6S II ~ts the • int.a votw set by the user
..
66 double Potf'11r::1etl'tl11(){
67 retum 11in_nlue;
)
,.
93
)
u11._value...aK;
13
14
PrUICJry sourer for scoring dhills tn goals
Sets up t:iut~s and ,_rids to scoring dhl!s
96 / / ---------- SET MIN ----- --- - - II
lS Contotns usrr•sr lected disc count and sp,eed to scan
16
97 // Sets the .-tni- vcilue by a gtven l'Olue
11 The process of scoring d1sills ts as follows:
98 void Pot/olgr: : setf'lin(doubl e ■in){
99 ain_villue• in; 18 J. Srt de ttvt-ry .-otor to l27(■ax)
19 2. 1,to(t 1mt1l target s~ed ts reached
100 )
28 J. Send fodex c-nd t o scON d{s,\• ond lfDtt for dtsill to ftN:
21 4. Loop strps J·J unttL oU d tsills hovr been scored
192 / / - - --•-- - - SET DIRECTION-------- -- / /
183
H)4
// Sets the •tnt- value by a given volui!
void Potf'l,gr: : set 01rttt1on( bool dir){
" ·············•I
185
106 )
revtrs ed• dir;
"
2S II················· HAIL 11ARY!II •••·••••·•••••••· II
26 II Hrmdles qutcill vottrys of discs into the high 900L
"'
108 27
28
I I This parttcutor function ts useful for Ntch outonoe,ous
void hd1"1ary(1nt hrShots, int t.1rSpeed){
1e9 // •••••••••• DEGREES TO TICKS •••••••••• II
118
1 11
// Converts gtve-n degrers to smsor ttcl!s
d o11ble POt"flr:: degr eesloTlc ks ( double degr ees ){
"
3e II Se t Ft.)IWl« t tor,rt to ■ax teapororHy
31 double te111pl'ower•t.1rgetl'ower;
112 double result • degrees/360°r,.-_Mx;
r eturn result; 32 t.1r1etPower• l000;
114 }
)4 chas.sh . s r t_drtve_braJ,.r(~Oft_llft.AKf_tCILO); /I toe/Ir the Orlvrtroln In ptacr
116 // •••••••••• TICKS TO DEGREES •••••••••• II 3S seU.olle r{&}; I I Stop thr tntal!e froa r-unntng
117 II Converts gtven sensor rte.Its to degnes 36
118 double Potf'lgr;; TicksTooegreu (double ticks){ II Loop for each shot of the scoring function
for(int 1..e; i<tarShots; 1+-♦-){
119 doubl• result • ticks•l6e/r.tW_Nx;
129 rl!turn result; 39 bool lutShot• (l•• hrShots•l); II Drtenrine tf this ts the final shot
1 21 }
II wtt for thr td1toL vrtoctty to be - t
while( shooterfttr. get_veloc 1t y( )• 2S· 3 • las tShot<teapPower} ;
II •••••••• • UPWITE SCALE •••••••••• II
setRoller(•12?); II Indrx o d1.sc into thr shooter
.,
126
II Uses slope· for.vLo to ftnd the chor19e tn IIOLW owtr change tn ttd1 count
void PotNgr; : upd.1teSclle f 1ctor (){
..
.,
pros :;dd ay(2SB + 100• 1utShot); II watt for disc to shoot
1 27
128
129
II Ustng the forr,ot of ftndtng th1t stopt of o ttM, w wHt find the chor191t tn Y ov1tr X
double ch.1n1einVl1 • ux_v;1lue• ■ ln_vdue; II Chonge in Y (change froa .-(n to ■ 1x)
double snpleCoont • r.1w_1Ux•(zero_r.1n1e_ux+zero_r.1n1e_■in); II Change tn X (~IJlfPLe :Size)
.. set Roller(l27); II Resrt the tndex systffl
pros::delay(l48); II l«ltt for systt11 to r eu-t
.,"
148 if(re sult>r;;,w_AilX•ltro_range_■ilX)
149 result • raw_■,1x.zero_r.1nge_■ilX;
68 II 1,1ott for the tdeaL ve lodty to be - t
while( s hooterNtr. 1et_ve loc 1t y( )+25• l "h st5hot<te.p~r) ;
"' II If the 110tue ts below ■tn, ■alfe 1t ■tn
" set Roller(•l2?); II Index a dUc tnto the shooter
e lse if( result<zero_range_■1 n)
t Sl re sult• nro_range_.,ln; pros:;delay{2S8 + 100•1.1stShot ); II lrii:J1t for d1sc to shoot
"'
161
162
resultua ln_ value; II A"'1 sin val~ ta
.."'
81
)
"' "
38
)
120 setRoller(127);
121
122
walteutloystic k(140);
if(fabs{driv1 Joyst1cs.x)>8 II filbs{i3riveloyst1cs,y)>8){
"
48 / / ••••••••••••••••• SKIUS ROLLER ••••••••••••••••• II
chassh . set_dri ve_ brake(l'OTOR_BRAl<E_COAS T);
41 /I SA>Uts Rolttr Codt
124 return; 42 // Cotldtnsu othtrwf.st l"t!~ti.ttvt codt with J tint functtort caU
43 void skillsRoller( int leftSpeed, int ri1htSpeed, pros :Optlcd stnsor)(
setRoller(U7);
126 )
chants . set_drive_ brake ( l'OTOR_BRAl(E_COAST); setDrive(leftSpeed, riKfltSpeed);
"'
129 )
48
int rolltrTiae-e;
int rolltrPulseTiae•8;
"' 49 wh1le(1etColor( s tnsor.1 et_hue ())l • "Red" &S rolltrT iae<S98){
51 rollerTi•..,.18;
52
if(roller"ulseT1H >300){
S4 setDri ve(e);
pros: :delay(l&e);
56 sttDrive{ld tspttd, richtSpetd);
57 rollerPulseTiae-8;
"
59
)
pros ::dthy(18);
68 rolle rPulse Ti.e-+-10;
"
64 pros::deby(328);
65 setRoller( •127);
66 pros::delay(l00);
67 setRoller(0);
68 sttOrive(e);
., )
t 1nclude ".ain.h"
1•-----------------------------·-----------------------------------------------
1 _ I _ _ _ I IU ___ _
.."
85
return null;
,.
27 II
II hetght f
I "'
168 return result; // send tn/o...,tton off to progr-
109 l
II (•nown) f I
,." II I I
no
II
"
32 II
/I
3l II tan(Theto) • hetghtlbor.e
)4 // Theta • lnve,•i;e tan(hlt'l9ht/t>(U lt') hotote Theto
3S double a:etThetaVd(doub le bV;al, double hVd){
36 return (;i,tan{hVill/bVal));
37 l
"
4e / / ---------------X/Y CALCULATICW --------------- II
41 // Calculates X/Y froa given hypotenuu: and angle
II otogroll
II
II
4S //
'6 II
47 II hetght / I Hypotenuse (•1'CIWl'I)
48 / / (un• nawn)f I
49 // / I
,;a II /I
51 /I The to(.--nown)
S2 II cos(The to) • hetght/hypotenuu
53 // cos (Theta)•hypotenuse • hetght Isolate he tght
S4 double 1etxYVd (doubh cVill , do1,1ble 8Val){
r-eturn cvill •cos (BVd);
"
S8 resetSide: :ruetSide (double newLe ftFront, double newlUghtElack, double newDistannApart, double newoffsetCenter){
S9 leftFront•newteftFront;
60 rlghteack• newRlghteack;
61 dhhnceApart•newOht.inceApart;
62 offSetCeflt er-newoffsetCenter;
63 l
.,
68 po1nt2 f1nd0htanc e(daubl1 dhtanuteft, double dhtanceR1ght){
13 68 second Autoaoeous
"92 Swin1Turn("Rlght", -36,88); II rum towards dtsc
93 setRolle r{127); II Prepore Lift to ptclll up
14 38 Hililh D1scs
15 8 low D1sc 95 l'IOYeDisunce{29,88,tl'\le ); II Ddve and ptclf up dtsr
16 4 Rollers 96 TurnTWlgle (98,89); /I Turn t~rds roller
17 28 T{(es 97 setRolle r{8);
18 278 poUlt s
28 STEP J
"99 chas s is. set_-ade (n::DISABU);
setDrive(-58);
21 ------
191 pros : :delay(398); II wait for robot to reach roller
22 CLot. the bottoa Roller.
CLaW the Le~ Roller.
,.
23 193
HM
II Clot. Left Roller
quickRoller(e,-58);
2S STEP 2 tes 11uickRoller(e,-se);
26 ------
27 score PreLoods and Hatch Lood otscs. II Calculote dtstonce froa M:JLL and set it as X.
198 result • findDistance (backTrackLeft . get(), backTrackR11ht . aet() );
29 STEP 3
,. 189
118
print Row( 1,ta_str1na;(■atchDr1ve. >getState ( ) . IC . conve rt (inch))+-•, • +-to_st rl111 (r ~sul t . •) ) ;
■atchOrlve• >setSt ate( { result . x• 1_ln+-l_in , INtchllr 1ve • >aetStat e ( ) . y, inertial . get _rotlltion( ) • 1_dl!&}):
31 Ptclf up row of 3 dtscs.
111
32 Score dtscs.
..
46 P1clf up
47 s,ore dtscs. "'
127 II Score 18 Discs +- 2 tn rose of foHure
hai1XarySk1lh(18, 188);
49 STEP 7 129 ha11/'4.arySk1lls(2,l98);
51 Piel// up staclll of 3 discs. 131 II -------- ---- - ------ - STEP 3 ------------- ------- II
52 Score discs. 132
53 Drtve to corner of /1.d d. 5wingTurn(•Rtght",3.S,58); II Turn to the rlosest row of discs
S4 Deplo)' Endf1CJ91/ •ch. 134 setPistonc·oenector" , ·down·); I I Lower Deflector
setShoot er(4B, " velocit y");
56 - -- - ------ - -- - --- --- · ----- ---- - --- - ----- - -· --- ------- - -- -- -- - ------ - - -- -----·1
57 double angleChangeError-9;
137 setRoller(l27); II Prepore Lift to ptclll up disc
"
59 void a_5KILLS(){
138
139
l'IOYeD1st ance{45,130,tl'ue ); II Drive towrds the first dtsc
TurnToAtlgle (53,l38); II Turn to reaJtntng discs
60 II · ·-·-···· SETUP ROBOT ·········- II
61 set5hooter(413, " velocity"); /I Set flywheel to 413 RPf'f
l'loveDistance(32· 3,98,true); II Piel// up reeoning discs tn N:N
62 pros: : Task del1very5e tup(set5hooter Async);
/I ••••• SCORE DISCS • •••• II
64 II Ensure the Deflector ts foctng upwor'Cls 144 TurnTOAng:le(16S,138); II Turn tot..ards 900L
65 setPhton("Deflector" , "up"); ,.,
146 hail/'4.ary(J, 8); II Score dhcs
67 II Se t up Pure Purs uit 147 s et Shoot e r{519, " velocity");
68 drive.detectCirc • 8;
69 drive . po1ntConsider ,. 2;
149 TurnToAngle (-2);
79 drive . 1,u CVd•79;
1S9 setRoller(127);
l'loveDhtance(44,38,trve); II Drivt to;..ords Roller
"'
183 // - - --- INITIALIZE POSirION - -- -- II
262
263
/ / Turn tawords Goat
TurnToAnglt (76.5-anglt'CM1ngeError);
184 .atch0r1ve- >Set5tate({32.25_in, 11 . 5_1n,chassis . get_&Yro()•t_deg•l88_deg)); // oeftnt robot"s posttton
185 "'
265 // Shoot 18 dtscs ot goal (plus t1,10 i n cast of fotltd s care )
266 hail.l\.arySkill$ (10,106);
II •• •• • • •••••••••••• • • STEP 4 •••• •••• •••••• • •• • •• II
267 haill\.ary5kilh (2,180);
"'
189 II Clot. Top Rotter
268
'"
194 l'loveDhtionce(2,89,true); // Move OMJ.)' froa roller
set5hooter(416, " veloc1ty"); // .Mt Fl)'Wlee l ta 41 6 RPl'f
"'
196 // Cotculote dtstonct froM 1,10Lt and nt tt os Y. 276
setll.aller(l27), / / l'N!,X,•~ Lift to p lc" up disc
i'lo'lleD1st ance{46,130,t r,;e); // Ori.ve towords tht fi.rst dtsc
point2 resultAverage(0,8,8); // Creote o vodoble to start the overage dtstonc ~ 110l11es
TurnToAngle ( S3- an1lech1ngeError, 138); // Turn to rearointn11 dtscs
198 double nu..28.0; / / Run fer ze 1terottons
199 for(lnt 1 ..0; i<nua; 1++){
279 l'loveD1sUnce(33-S,98,true ); // Piclt up rfll0ntn11 dis c s tn rot1
280 po1nt2 t eap • findDlstance (backTrackleft . get(),backTrackRight.get()); // Ftn1 a set af dtstonce values
201
202
re sultAve r age .x+• t e11p.x/nua; // Re cord the posttton offset to the v11rioble
resultAver;,ge.y•• t l!IIIJ.yfm• ; / / Record the onfile offset
'"
281 // ----- SCORE DISCS ----- II
282 TurnTaAngle (l65-angbChangeError,130); // rum towords gaol
263 pros : :delay(20); // watt for sens or update hail.l\.ary(3, 0); // SCON! dtscs
"'
..
284 setShooter(475, "velocity" ); // Set Fly'\fhee L to 47S RP,f
"'
206 angleChangeError• -chnsh. get_gyro(); // Reset robot angle "'
,
"'
208 // Update the Y val11e of OrJo.etry ta the distance frc. the 1o11Jtl (Vortes froa fle Ld to fie ld)
287 // •• ••••••• ••• • ••••• •• STEP 7 •••• • ••• • • • ••• •••• • • II
209 // .atchortve- >SetStote((-,tchDrtvt->gttStott( ).x, resuttA11erogt• .1r•1_ tn-+l_ 1n+51. ;_1n,-.citchDt-tvt->9ttStatt(). theto} ); II
289 TurnToAn1l• (8••ngleCh<1nge Error); // Turn towords ftnat stoclt of dtscs
WISCO TOURNEY
290 setRolltr{l27); // Prepore Lift ta cotltct discs
210 -..tchDrlve- >utSUU ( {• tchOrhe• >1etSt1te () • x, N!SU l U.verage . x• 1_111 ♦ l_in+12. S_ ln, utchDri ve- >getStlte () • theu}) ; / /
/lloveD1stance p9,30,true); // Orivt towards Rolltr
NORSE TOURNEY
"'
293 II • • •• • COUECT DISCS • •• • • II
II • • ••• CLAD! RIGHT ROLLER ••••• II 294 TurnToAngle (•94•angleChangeError); // Turn tO#Ords goal
TurnToAngle(0-angleCha ngeError,48); // Rl!!-adjust robot h!!!adUlg
295 endtift• true; / / Stop dtsc j ~ Tos•
214 SwingTurn(• 111ght" , -43-angleChanse Error, 80); // n,rn towards dtsc 296 hail.l\.arySkilh (3,e); // Scort dtscs
215 Htllolle r(l27); // PN!pore Hft to pk.. up
298 TurnToAngle (-60- anglechangeError, 138); II Tum towords carnt r of the f teLd
l'loveDist a nu (25,80, t r,;e) ; // Drtvt ond ptc• up dts,:
299
TurnToAnale(98- analechangeError,80); // Turn tawords rollt r
380 setShoot er(8, "velocity"); // Stop FLy,,,httL f rc. spinning
"'
220 setRoller(0); // Turn off Ltft
301
302
setRoller{0); / / Stop Uft f roM running
l'loveDistance (- 11,130); // Drive towords corner of fteld
221
222 chush.set_llOde(ez::OlSA8LE); / /Turnoff Motor Loe/II 304 TurnToAngle (-135-angl eCM11ngeError,Ue); // rum tt:MJrds tht apposite ,:omtr of tht fittd
setDrive (-48); II OM\/t tnto rollt r 305 setPiston( • Endgae" , •out• ); // Depto~ t ndgo,it
224 pros: :deby(406); // Wott for robot to reach roller
"' )
226
227
// Clot. Rtght Roller
qu1ckRoller(0,-S0);
"'
228 quickRoller ( 0, • 58);
"'
240 / / Update the X ond Theta 1/0lue based on dtstonce fro. the lo/lJll
aatchDr i ve• >set St a te( { resultAverage2. x • t_in♦2. S_ in,mtchDri ve- >getSta~e ( ) . y, (9 3♦resultAverage2. y) •1_deg});
t 1nc l ude "ma i n.h"
83 setOrlve(-Se):
1•-------------------···---------------------------·--------------------------- 84 pros::daloy(509);
85 qu1ckRoller(9,·60); / / Run Roller Claia function
4 I I I U I _I U // 86
I I II I I __ _ I f_! /_ _ __ I f_
87 II -•-•• SCORE DISCS - - •-- II
I I/ I/ I/ / '_ \ I _ I _ I/ / '_ I/_/ 88 1'10VeOisUnce(4, 120,hlse); // DM.ve away /f'OII roUer
I II I / / / / / II IU//1//f_ 89 TurnTOAAale(•78,120); // Turn towords goot
\I \I /_/_/ /_/ LI I_IL/_/ LILI 98 setRoller(-127);
91 pros :: delly(298);
10 Created on 8/14/2812
92 )
11 Last Updated on 2/16/2822
93
12
13 15 second Autonomous
15 5 Disks I 2 Rollers
16 45 points
I /I I
8 ,__ / /_/ /_/ L/ \._/ 8 /_I /_/ /_I uu
9 Long Side I BottOt'II Roller I Disc Path : Normal Stack 9 Short Side J Top Roller J Disc Path : Normal Row
10
11 Created on 9l25l2fJ22 11 Created on 9125/2022
12 Last Updated on 9l29l2922 12 Last Updated on 2ll6l2022
13
14 15 second Autonomous 14 15 second Autonomous
15 15
7 Dtslrs I 2 RoLt.ers 16 7 Disks I 2 Rollers
17 65 poi.nts 17 65 points
18 18
19 Best used with a partner who has a strong RIGHT SIDE Autonomous 19 Best used with partner who hos a strong Short side autonomous
20 20
_____ ................................................................................................................................. - .... •1 21 _______________________________ .. __________ ___________ ____ .. ____________ _____ .. _.I
13 Prtnt tnfotWation on the Bratn Scref'n 13 Prints tnforwutton too gt11Pn cont rollPr LtnP
14 The tnforwutioo ts chonn through the aoi11.cpp tntt10Lt1:atton fum;tioo 14 Worlts os the foce of tht controller aLr,ortttm; 011Ly printing olld not storing
lS Inforaation printftl includes . .
16 • Posttton
17 • l'IOtor Tl'lllpf'roture
18 • Etteoder VoLues 18 // --------- ---- - - - - DISPLAY SET -----·------ --- -- II
19 • Of'bug Jnforwation 19 // Worts as a Of'bug array for tht Controlle r
20 // When tf'sttng o SPf'dftc •chonts•, infor.otton is ploced in this arroy to bt ,rtnte d to tht'! scrttn
21 ---------- ----------··--------····----·--·--------·--------------------------•1 21 i nt displayset[15J • { • le, -10, •10,-10,• 18,·10};
"
23 II •• ···-·· BRAIN OISPI.AY POSITION--······· ····-·- // "23 II ------··---- ---- PRI/lfT ROW--·-------------- II
24 II OhpLoy on tire Brain scru m tire current e 11coder 110Lues and Oclo«f'try posit ion 24 // Prints t t'!xt oo a gillf'n row ond ot o gillf'n start point
2S I/ Prtnt the f'IICodt r \IOLUf'S on 2-4 L1MS 2S void prl ntR-(int row, i nt s t artPolnt, std: :s tring s tr){
26 // Print tht Odoeetry position on linf's S-1 controllrr. set _text(l1neC,0, • "); // Re Sf't t~f' SCrf'M
27 11oid brdnDlsphyPos(){ pros: :dehy(58); II watt for screPn to update
pros::lcd::initialize(); //inttioLhe Broin scf'f'tn so kif' con Sf'f' info Loter 28 controU , r.spt_t,xt(row,stilrtPoint, str);
while(true){ // Loop tnfinitty ,, )
,.29
poi nt2 r-esul t • findDistance (b;ickTrilckleft.get(),b;ickTrilckRight . get( )); " ROW-···-··-····-····
"
32 printR-( e, to_ string(.at chDrille• >getState () . y. con11ert (inch))+" , " +to_ string ( rn ult. x});
31
32
II • · ········ ··-·· · PRI/lfT
// Print tf'Xt on a row starting at thf' far left
II
lliltchDrille• >se tStilte ( (NtchOri11e - >getSt;it e ( ) . x, result . x• t_in+l_in, utchOri 11e • >getSt ;ite ( ) . thet.)); void printR-(int row, std: :st ring s t r){
,. 33
" pros: :print(l, "Auto JD: Sf",std::floor(;iut oSwitch.getVdlH!'())); II Print •iddle f'ncodf'r 11aLuf' on Ltnf' 2 37 II • ··-·· · · ····· · ··· PRINT ROW CENTER • · ··· ··· - ····· -·· I/
pros :print(2, "Auto:
.."
Is " ,1utono.ousl1tln [index]); // Print l f'ft f'f'ICode r 110Luf' on Linf' 3 38 /I Print U.rl tn the •iddtt of the Co11trollf'r Ltnf'
pr os :led :print(3,"Right: Xf",shoot erfttr.get_11elodty()); // Print right rncodr r 11olur on Lfoe 4 39 void printRowCf'f'lt f'!r(i nt row, std ;:string str){
pr os :led :print(4, "XPosition(in): Xf", result.x); // Print X posttton on Ltne s 40 i nt 1idT,xt• str.lPn11th()/2; II Find •tddLe of tert
pr os :led :print(S, "YPodtion (in): 11:f" , r-esult.y); II Print Y posftion on linf' 15 int 5tilrtPoint-9•• idTtxt; /I F{nd placP to put ttxt
pr os :lcd::pr1nt(l5, "Angle: Xf", 1NtchDrive->getSt1te(),the til); II Print the to on line 7 printRCM(row, stilrtPoint , s tr);
pros :deli1y(20); II watt for thf' scret'!n to updatf'
" )
..
., )
) II•-·-··-··-· -··- - - PRI/lfT SCREEN -·-··-··· ···-- ·-- II
46 II Gtvf'n tnforwatton of au thref' rows, print to thf' ""'olf' ControLLtr screen
void printScrttn(std::string 5tr[3]){
"
48 II ---------- -- ----- IIRAlN OISPI.AY POSITION -- -------·-····- II 48 for(int 1• 0 ; 1<3; i H )
49 /I DispLoy on thf: 8rotn screen the current e ncoder 11otues ond Oclo«f'try position 49 pri ntRCM(i, str[i]);
se II Prtnt the e11coder 110Luf's on t ines 2· 4 50 )
51 // Prtnt the Och»f'try position on Linf'S 5•1
S2 110ld br•inDhphyGrid(){
pros::lcd::initialh.e(); //tnittottze 8rotn screen s o kif' con S f'f' tnfa Loter
S4 whilf'(t rue){ // loop tnftnttty
OdOll'Oebug displily(l v_scr_ilct(), LV_COLOR_"'-'VY);
56 dhplily. setOiltil( {u tchOri11e- >1etSt;ite() . x, 11i1tchDri11e- >1etStilte () . y, utchOrlve- >getSt ilte() . thet il},
{r ollerfttr,get_;ictual_velocity() , rRot. get(), allot.get()});// Qlkltts used _for stott (x,y, thf'to)
57 pros :delily(20); /I hl:l'it for the screen to update
5B )
"
60
)
61
62 II ------- - ------ - -- BRAlN OI5PI.AY TEHP - ------------ - --- II
63 II Prtnt the Lt ft front dri11e tf'llpf'roture on line 2
64 / / Prtnt the right front drl11e tl'llpf'roture on Line 3
6S II Prtnt the rtght bocl drtllf' t~roture on Line 4
66 / / Print the Left bacl dM11f' tNpf'roture on ttne S
67 void brlinDlsphyTe.p(){
68 pros: : l ed: :initialize(); /lintttottie Brain SCf'f'tn so kif' con ste tnfo Lottr
69 whUe(t r ue){ // Loop inftnitLy
70 pros::lcd ::pr 1nt(0,"51SR Re 11ision"); II Print Title on line l
pros: :lcd::print(l,"lf: lf", l eftFrontl"ltr.get_tNper ilt ure ()); II Prtnt thf' Lf'ft front drillf' tnperoture on Ltne 2
pr os::lcd ::pri nt(l, "rf: ll:f" , rightfronun:r.get_t e.per1tur e ()); /I Print the right front drille tNpf'roture on
line 3
pros:: l cd : :pr1nt(3,- rb : lf" ,r1ght8ilckNtr.gt t_tNperature ()); fl Prtnt tht r t ght bod drt11t ttllj:)f'roture on Ltne 4
74 pros : :lcd::print(4,"lb: Xf",lf'ft8ilckMtr.g,t_t u,per ;it ure ()); / / Print tY le~ boclt drillt'! tf'IIPl'!roturf' on Line 5
75 // pros::Lcd::print(s, · deL : xr,sfloott rHtr. gt'!t_tN()f'roture()); II Print the Left bocl1 drive tNpf'rot ure on Une s
pro~ :d,hy(20); // watt for th, scref'n to updatP
)
,. )
..
"'