add overview for mechanical chapter
[challenge-bot] / curriculum / challenge-bot.scm
CommitLineData
37d286e7 1;; tldr; AGPLv3+
2;; copyright info at bottom
3
4(document
5 :title [challenge-bot]
6 (chapter
3c0c7ca4 7 :title [mechanical]
1625f486 8 (p [let's build your robot!])
3c0c7ca4 9 (section
58c778a1 10 :title [arduino to deck]
4a423b08 11 (p [let's attach the arduino to the deck.])
cf59d996 12 (subsection
13 :title [required materials]
14 (p [you will need the things in this picture.
15 ,(figure :legend "arduino to deck / required materials"
9fbc1a3f 16 (image :file "arduino-to-deck/0-required-materials.png"))
cf59d996 17 ,(itemize
18 (item [medical kit with bandages])
19 (item [safety goggles])
20 (item [drill bit \(we will determine size in a moment\)])
21 (item [drill])
22 (item [alan wrench])
23 (item [wood block])
24 (item [arduino])
25 (item [#6-32x3/8\", four of them]))]))
24b6d750 26 (subsection
59fef212 27 :title [first hole]
ff0f6a78 28 (subsubsection
52596bd0 29 :title [choosing drill bit]
30 (p [choosing the right drill bit depends on what job you are doing.
31 right now, we are making holes for screws to hold the
32 arduino to the deck.
33 this means the hole needs to be big enough for the
34 screw body to fit through.
35 we want the screw to stay put once it's in place.
8923a50f 36 we also want the drill bit to be smaller than the
37 diameter of the thread.
38 the screw was chosen so that the hole on the arduino
39 was bigger than the body and smaller than the thread.
40 we will choose the biggest drill bit that fits through
41 the hole on the arduino.])
85fae63f 42 (p [here's a cross section of a screw in the deck]
43 (figure :legend "screw cross section"
44 (image :file
45 "arduino-to-deck/screw-cross-section.png"))))
ff0f6a78 46 (subsubsection
ca8e4428 47 :title [inserting drill bit]
48 (p (figure :legend "arduino to deck / insert bit"
49 (image :file "arduino-to-deck/1-insert-bit.png"))
50 [insert the drill bit into the teeth of the drill.
51 insert it far enough that the teeth will clamp on the
3875c1ef 52 smooth part of the bit when they are tightened.])
53 (p (figure
54 :legend "arduino to deck / twist tighten drill teeth"
55 (image :file "arduino-to-deck/2-twist-tighten-drill-teeth.png"))
56 [while holding the drill bit, twist end of the drill to tighten
57 the teeth.
58 make sure that the teeth end up gripping the flat part of
59 the drill bit.]))
ff0f6a78 60 (subsubsection
7bf575b8 61 :title [holding drill]
62 (p [hold the drill with one hand on the handle and trigger.
63 put the other hand on the orange nozzle, before the
64 black spinning part.]))
c04a9631 65 (subsubsection
66 :title [arduino placement]
67 (p [the arduino should be placed as shown in this picture.]
cf59d996 68 (figure :legend "arduino to deck / place arduino"
6fc3d47b 69 (image :file "arduino-to-deck/3-place-arduino.png")))
70 (p [here's a closeup]
c1732375 71 (figure :legend "arduino to deck / place arduino closeup"
0b5cd84e 72 (image :file
73 "arduino-to-deck/4-place-arduino-closeup.png"))
74 [the picture above shows where to place the arduino on the deck.
75 the arduino should line up with the holes on the deck.
76 this alignment line is highlighted in pink.
77 on the arduino, there's a hole on the top left, between the
78 orange reset button and black headers.
79 the green circle shows where the hole is.
80 the blue box encloses the arduino hole and two deck holes.
81 place the arduino hole mid-way between the two
82 deck holes.]))
ff0f6a78 83 (subsubsection
59fef212 84 :title [drilling]))
85 (subsection
86 :title [first screw]
ff0f6a78 87 (subsubsection
9f651996 88 :title [fastening arduino to deck using #6-32x3/8\" screw]
89 (p [the "#6" part of "#6-32x3/8\"" is how big around the bolt is.
90 it is related to wire gauge.
91 bigger numbers mean larger screw.
6e7c78dd 92 smaller numbers means smaller screws.]
93 (figure :legend "arduino to deck / #6-32 screw"
94 (image :file
95 "arduino-to-deck/6-32-screw.png")))
9f651996 96 (p [check
59fef212 97 ,(itemize
98 (item
9f651996 99 [in the motor assembly, there are #4-40x1.25\" screws.
100 are those fatter, thinner, or the same thickness as the
101 #6-32x3/8\" screws?]))])
102 (p [the "32" part is a measurement of how close the threads are to
103 each other.
104 this is related to the angle of the thread, which is also
105 called pitch.
106 it is a count of how many times the thread wraps around one
107 inch of the screw body.])
108 (p [the head is the flat part where some tool, like the alan
109 wrench, can exert force to spin the screw.])
110 (p [check
59fef212 111 ,(itemize
9f651996 112 (item [how many times will the thread wrap around one inch of
113 the screw body?])
114 (item [what about 2 inches?
115 how many times will the thread wrap around two
116 inches of the screw body?]))]))
ff0f6a78 117 (subsubsection
118 :title [fasten the arduino board to the deck]
119 (p [push the 6-32 screw into the deck from the underside and at the
120 same time, spin the 6-32 screw clockwise while looking
9f651996 121 down on its head.
122 twist until the bottom of the screw is
ff0f6a78 123 about to stick out on the top side of the deck.])
124 (p [hold the arduino board flat to the deck and line up the arduino
9f651996 125 hole so the screw can come up through it.
126 continue tightening the screw into the deck, spinning the same
127 direction as before.
128 tighten until the screw head touches the deck.
129 do not continue tightening after that.])
ff0f6a78 130 (p [the arduino should still be flat against the deck still, just
131 as it was before tightening the screw.]))
132 (subsubsection
133 :title [assessment]
134 (p [does the arduino stay with the deck when the deck moves?
135 can the arduino board still rotate a few degrees?
136 warning, if you rotate the arduino board too much, you
137 will unscrew it from the deck and you'll have to screw it
9f651996 138 back in.
139 rotating a few degrees should be ok.]))
ff0f6a78 140 (subsubsection
141 :title [arduino board move relative to deck]
142 (p [without any screws, the arduino board can move independently of
143 the deck.])
144 (p [with the first screw, the arduino can rotate around one point
145 on the deck.])))
24b6d750 146 (subsection
147 :title [second hole and screw])
148 (subsection
149 :title [third and fourth hole and screw]))
57e11138 150 (section
151 :title [breadboard])
3c0c7ca4 152 (section
390d8f01 153 :title [battery packs]
154 (subsection
155 :title [leads])
156 (subsection
157 :title [deck attachment]))
3c0c7ca4 158 (section
5aa69c47 159 :title [motors]
160 (subsection
161 :title [leads])
162 (subsection
163 :title [mount])
164 (subsection
165 :title [deck attachment]))
3c0c7ca4 166 (section
1b593ec7 167 :title [wheels]
168 (subsection
169 :title [tread])
170 (subsection
171 :title [motor]))
3c0c7ca4 172 (section
2ccf4ca9 173 :title [caster]
174 (subsection
175 :title [deck placement]))
3c0c7ca4 176 (section
6550a556 177 :title [sonars]
178 (subsection
179 :title [deck placement])))
3c0c7ca4 180 (chapter
9fb37473 181 :title [wiring and software]
182 (section
f0876d62 183 :title [serial]
184 (subsection
1be43d04 185 :title [software on computer]
c3e8314c 186 (subsubsection
1be43d04 187 :title [arduino])
c3e8314c 188 (subsubsection
1be43d04 189 :title [fritzing]))
f0876d62 190 (subsection
191 :title [attach arduino and computer via cable])
192 (subsection
193 :title [debugging common connection problems])
194 (subsection
195 :title [arduino reset button]))
9fb37473 196 (section
bb801164 197 :title [left sonar]
198 (subsection
199 :title [breadboard connectivity])
200 (subsection
201 :title [cable])
202 (subsection
cb7d1c68 203 :title [arduino headers])
204 (subsection
205 :title [sound cm per microsecond at sea level]))
9fb37473 206 (section
9183d52b 207 :title [both sonars]
208 (subsection
209 :title [breadboard power rail]
210 (p [power rail can provide power to more than one device.])))
9fb37473 211 (section
805d6362 212 :title [left motor]
213 (subsection
214 :title [arduino digital output])
215 (subsection
216 :title [quad half h bridge, aka motor controller])
217 (subsection
218 :title [motor battery]))
9fb37473 219 (section
79d761bc 220 :title [both motors]
221 (subsection
222 :title [analogWrite]))
9fb37473 223 (section
aedd9003 224 :title [untethered]
225 (subsection
226 :title [arduino battery])
227 (subsection
228 :title [off and on functions]))
9fb37473 229 (section
28a2365e 230 :title [follow]
231 (subsection
232 :title [same wiring as untethered])
233 (subsection
234 :title [set motor])
235 (subsection
236 :title [go])
237 (subsection
238 :title [determining speed]))
9fb37473 239 (section
d460f45c 240 :title [stay on table]
241 (subsection
242 :title [stop])
243 (subsection
244 :title [backup])
245 (subsection
246 :title [turn around]))))
37d286e7 247
248;; Copyright 2016 daniel watson
249
250;; This file is part of challenge-bot.
251
252;; challenge-bot is free software: you can redistribute it and/or modify
253;; it under the terms of the GNU Affero General Public License as
254;; published by the Free Software Foundation, either version 3 of the
255;; License, or (at your option) any later version.
256
257;; challenge-bot is distributed in the hope that it will be useful,
258;; but WITHOUT ANY WARRANTY; without even the implied warranty of
259;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
260;; GNU Affero General Public License for more details.
261
262;; You should have received a copy of the GNU Affero General Public
263;; License along with challenge-bot. If not, see
264;; <http://www.gnu.org/licenses/>.