X-Git-Url: http://challenge-bot.com/repos/?a=blobdiff_plain;f=curriculum%2Fchallenge-bot.scm;h=7b6eef3f0bd507aa186e67bb0a9bfed885e77930;hb=d08737561143e6976048bb82189bbec63278458b;hp=18fdc886bec48ae1c340ffc4d23f4d31a3249b3d;hpb=57e1113821b536d87908c5733e32d1db299f5327;p=challenge-bot diff --git a/curriculum/challenge-bot.scm b/curriculum/challenge-bot.scm index 18fdc88..7b6eef3 100644 --- a/curriculum/challenge-bot.scm +++ b/curriculum/challenge-bot.scm @@ -5,12 +5,145 @@ :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 [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. + this means the hole needs to be big enough for the + screw body to fit through. + we want the screw to stay put once it's in place. + we also want the drill bit to be smaller than the + diameter of the thread. + the screw was chosen so that the hole on the arduino + was bigger than the body and smaller than the thread. + we will choose the biggest drill bit that fits through + the hole on the arduino.]) + (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")))) + (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.])) + (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.])) + (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 @@ -50,7 +183,11 @@ (section :title [serial] (subsection - :title [arduino software on computer]) + :title [software on computer] + (subsubsection + :title [arduino]) + (subsubsection + :title [fritzing])) (subsection :title [attach arduino and computer via cable]) (subsection @@ -58,19 +195,56 @@ (subsection :title [arduino reset button])) (section - :title [left sonar]) + :title [left sonar] + (subsection + :title [breadboard connectivity]) + (subsection + :title [cable]) + (subsection + :title [arduino headers]) + (subsection + :title [sound cm per microsecond at sea level])) (section - :title [both sonars]) + :title [both sonars] + (subsection + :title [breadboard power rail] + (p [power rail can provide power to more than one device.]))) (section - :title [left motor]) + :title [left motor] + (subsection + :title [arduino digital output]) + (subsection + :title [quad half h bridge, aka motor controller]) + (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