X-Git-Url: http://challenge-bot.com/repos/?a=blobdiff_plain;f=curriculum%2Fchallenge-bot.scm;h=15ea4e00f96688f15b856dac3faf8d649757ac1b;hb=543ad3c25d443343eca926e7e3ed6b325f9ec6ba;hp=82938c5b365bf9d4b9adcdf9d60dc374a42d5f22;hpb=805d636256487856a0d2e09dba541fc31a05d7d2;p=challenge-bot diff --git a/curriculum/challenge-bot.scm b/curriculum/challenge-bot.scm index 82938c5..15ea4e0 100644 --- a/curriculum/challenge-bot.scm +++ b/curriculum/challenge-bot.scm @@ -5,12 +5,174 @@ :title [challenge-bot] (chapter :title [mechanical] + (p [let's build your robot!]) (section - :title [arduino] + :title [arduino to deck] + (p [let's attach the arduino to the deck.]) (subsection - :title [arduino placement]) + :title [required materials] + (p [you will need the things in this picture. + ,(figure :legend "arduino to deck / required materials" + (image :file "arduino-to-deck/0-required-materials.png")) + ,(itemize + (item [medical kit with bandages]) + (item [safety goggles]) + (item [drill bit \(we will determine size in a moment\)]) + (item [drill]) + (item [alan wrench]) + (item [wood block]) + (item [arduino]) + (item [#6-32x3/8\", four of them]) + (item [robot deck, the white thing with a grid of holes1]))])) (subsection - :title [first hole and screw]) + :title [first hole] + (subsubsection + :title [choosing drill bit] + (p [the arduino comes with holes in it already, so we will make + some choices around those holes. + choosing the right drill bit depends on what job you are + doing. + right now, we are making holes for screws to hold the + arduino to the deck. + there are two constraints between the hole and screw. + each hole needs to be big enough for the screw body to fit + through it. + the holes also need to be smaller than the screw's thread. + since there are holes on the arduino already, the screw was + chosen to match it. + the screw was chosen so that the hole on the arduino was + bigger than the screw body and smaller than its thread. + we will choose the biggest drill bit that fits through the + hole on the arduino, then use that to drill holes in the + deck.]) + (p [here's a cross section of a screw in the deck] + (figure :legend "screw cross section" + (image :file + "arduino-to-deck/screw-cross-section.png"))) + (p [check + ,(itemize + (item + [what would happen if the drill bit were larger than the + screw thread?]) + (item + [what would happen if the drill bit were smaller than the + screw body?]))])) + (subsubsection + :title [inserting drill bit] + (p (figure :legend "arduino to deck / insert bit" + (image :file "arduino-to-deck/1-insert-bit.png")) + [insert the drill bit into the teeth of the drill. + insert it far enough that the teeth will clamp on the + smooth part of the bit when they are tightened.]) + (p (figure + :legend "arduino to deck / twist tighten drill teeth" + (image :file "arduino-to-deck/2-twist-tighten-drill-teeth.png")) + [while holding the drill bit, twist end of the drill to tighten + the teeth. + make sure that the teeth end up gripping the flat part of + the drill bit.]) + (p [check + ,(itemize + (item + [where should the teeth clamp down on the drill bit?]) + (item + [what would happen if the teeth tightened on the recessed + part of the drill bit?]))])) + (subsubsection + :title [holding drill] + (p [hold the drill with one hand on the handle and trigger. + put the other hand on the orange nozzle, before the + black spinning part.])) + (subsubsection + :title [arduino placement] + (p [the arduino should be placed as shown in this picture.] + (figure :legend "arduino to deck / place arduino" + (image :file "arduino-to-deck/3-place-arduino.png"))) + (p [here's a closeup] + (figure :legend "arduino to deck / place arduino closeup" + (image :file + "arduino-to-deck/4-place-arduino-closeup.png")) + [the picture above shows where to place the arduino on the deck. + the arduino should line up with the holes on the deck. + this alignment line is highlighted in pink. + on the arduino, there's a hole on the top left, between the + orange reset button and black headers. + the green circle shows where the hole is. + the blue box encloses the arduino hole and two deck holes. + place the arduino hole mid-way between the two + deck holes.]) + (p [check + ,(itemize + (item + [should the arduino be upside-down?]) + (item + [what should the upper side of the arduino align with?]) + (item + [why not place the arduino up along the left side of the + robot?]))])) + (subsubsection + :title [drilling])) + (subsection + :title [first screw] + (subsubsection + :title [fastening arduino to deck using #6-32x3/8\" screw] + (p [the "#6" part of "#6-32x3/8\"" is how big around the bolt is. + it is related to wire gauge. + bigger numbers mean larger screw. + smaller numbers means smaller screws.] + (figure :legend "arduino to deck / #6-32 screw" + (image :file + "arduino-to-deck/6-32-screw.png"))) + (p [check + ,(itemize + (item + [in the motor assembly, there are #4-40x1.25\" screws. + are those fatter, thinner, or the same thickness as the + #6-32x3/8\" screws?]))]) + (p [the "32" part is a measurement of how close the threads are to + each other. + this is related to the angle of the thread, which is also + called pitch. + it is a count of how many times the thread wraps around one + inch of the screw body.]) + (p [the head is the flat part where some tool, like the alan + wrench, can exert force to spin the screw.]) + (p [check + ,(itemize + (item [how many times will the thread wrap around one inch of + the screw body?]) + (item [what about 2 inches? + how many times will the thread wrap around two + inches of the screw body?]))])) + (subsubsection + :title [fasten the arduino board to the deck] + (p [push the 6-32 screw into the deck from the underside and at the + same time, spin the 6-32 screw clockwise while looking + down on its head. + twist until the bottom of the screw is + about to stick out on the top side of the deck.]) + (p [hold the arduino board flat to the deck and line up the arduino + hole so the screw can come up through it. + continue tightening the screw into the deck, spinning the same + direction as before. + tighten until the screw head touches the deck. + do not continue tightening after that.]) + (p [the arduino should still be flat against the deck still, just + as it was before tightening the screw.])) + (subsubsection + :title [assessment] + (p [does the arduino stay with the deck when the deck moves? + can the arduino board still rotate a few degrees? + warning, if you rotate the arduino board too much, you + will unscrew it from the deck and you'll have to screw it + back in. + rotating a few degrees should be ok.])) + (subsubsection + :title [arduino board move relative to deck] + (p [without any screws, the arduino board can move independently of + the deck.]) + (p [with the first screw, the arduino can rotate around one point + on the deck.]))) (subsection :title [second hole and screw]) (subsection @@ -51,9 +213,9 @@ :title [serial] (subsection :title [software on computer] - (subsection + (subsubsection :title [arduino]) - (subsection + (subsubsection :title [fritzing])) (subsection :title [attach arduino and computer via cable]) @@ -68,7 +230,9 @@ (subsection :title [cable]) (subsection - :title [arduino headers])) + :title [arduino headers]) + (subsection + :title [sound cm per microsecond at sea level])) (section :title [both sonars] (subsection @@ -83,13 +247,33 @@ (subsection :title [motor battery])) (section - :title [both motors]) + :title [both motors] + (subsection + :title [analogWrite])) (section - :title [untethered]) + :title [untethered] + (subsection + :title [arduino battery]) + (subsection + :title [off and on functions])) (section - :title [follow]) + :title [follow] + (subsection + :title [same wiring as untethered]) + (subsection + :title [set motor]) + (subsection + :title [go]) + (subsection + :title [determining speed])) (section - :title [stay on table]))) + :title [stay on table] + (subsection + :title [stop]) + (subsection + :title [backup]) + (subsection + :title [turn around])))) ;; Copyright 2016 daniel watson