Create 1 Details (For Reference Only)
- Arduino 1.0.5 IDE (select your operating system)
- Soldering Iron
- Phillips Head Screwdriver (Medium)
- Wire Cutters
- Wire Strippers
- Digital Multimeter
- Pliers (Small)
- Glue (such as All-Purpose Amazing Goop)
Step 1: Crimp the 10 conductor ribbon cable into the ribbon crimp connector. Note that pin 1 on the crimp connector is designated by a triangle on the side.
Step 2: Cut the ribbon cable to a length of 0.1 meters. Pull the opposite end of the ribbon cable apart and strip the insulation off the ends of wires 1 through 6. Solder the wires into the solder cups on the DB-25 connector per the list below:
- DB-25 pin 1 to crimp connector pin 4
- DB-25 pin 2 to crimp connector pin 1
- DB-25 pin 3 to crimp connector pin 5
- DB-25 pin 10 to crimp connector pin 6
- DB-25 pin 14 to crimp connector pin 2
- DB-25 pin 15 to crimp connector pin 3
Step 3: Assemble the Proto Shield board per the SparkFun instructions. Do not do the "Adding the Finishing Touches" section of the instructions.
Step 4: Solder the shrouded header to the board at the location indicated below (lower right 2x5 black box). Ensure that the notch in the header faces away from the A0-A5 header. Next, solder the switch at the location indicated below (left 1x3 black box). Next, solder the 47kOhm resistor at the location indicated below. Next, solder the RF receiver at the location indicated below (center right black box). Ensure that the GND pin is closest to the edge of the board.
Step 5: Use short jumper wires to join the following locations on the underside of the Arduino Proto Shield board. Either solder to the thru-hole pins if a location has a component already or to an adjacent via and add a solder bridge to the destination pin. If no part is present at the wire's destination, simply solder to the pad. Keep in mind that the diagram below is a top view but you will be soldering wires on the underside of the board.
Step 6: Continuing from step 5, use short jumper wires to join the following additional locations on the underside of the Arduino Proto Shield board.
Step 7: Solder 0.2 meter wires to the following locations on the top of the Proto Shield and attach the other end of each to a terminal block per the diagram below.
Step 8: Solder 0.3 meter wires of differing colors to each of the three pins on the four hall effect switches. Connect the wires to the terminal blocks according to the following diagram:
Step 9: Attach the Arduino Proto Shield pins to the matching headers on the Arduino Leonardo.
Step 10: Cut the PVC (or equivalent) sheet to an outside dimension of 6 inches x 10 inches (15.24cm x 25.4cm) to form the top plate. Note that any non-conductive material will suffice here provided it has strength comparable to 1/8" plexiglass. Drill holes and paint the top plate per the outline drawing here.
Step 11: Route the hall effect sensors through the center hole in the top plate and glue them to the locations indicated by the green stars in the outline drawing. If you are using a non-bussed terminal block, add jumpers between the ports. If you are using a bussed terminal block then this is not necessary. The following diagram shows the jumpers.
Step 12: Place all of the Leonardo hardware in the cargo bay of the iRobot Create, securing it to the base using adhesive velcro strips. Plug the ribbon cable 2x5 header into the 2x5 socket on the Proto Shield and plug the DB-25 connector to the cargo bay DB-25 connector on the iRobot Create. Next, attach the top plate to the iRobot Create mounting holes using four 6-32 screws. The iRobot Create should have shipped with a sufficient number of screws. The hardware will turn on automatically along with your iRobot Create using the main on/off button.
The build instructions are the same for an obstacle robot except the top plate has a mounting point for a pole. You can ignore steps 7, 8, and 11 when building an obstacle robot. Instead, follow this document for info about the mounting point and pole assembly. The firmware will execute either the obstacle or target robot behavior depending on which position the SPDT switch is flipped.
To build the obstacle robot you will need:
- Thin-wall 4" PVC pipe - Quantity 1 to 2 meters
- PVC 4" Drain Cleanout Plug - Quantity 1
- PVC 4" Drain Cleanout Adapter - Quantity 1
- Polyurethane Construction Adhesive - Quantity 1 tube
- 6-32 x 1.5" Pan Phillips Screws - Quantity 4
- 6-32 Hex Nuts - Quanity 4
- #25 Drill Bit
- Hand Drill or Drill Press
- Phillips Head Screwdriver
- Wrench or Nut Driver
- The communication between your computer and the Arduino will be via a Micro-USB cable. Plug the USB cable in to your computer (with the other end plugged into the Arduino Leonardo).
Launch the Arduino IDE software. The Arduino board should show up as an available serial or COM port in the Tools > Serial Port menu. Ensure that the correct port is selected. The exact port naming scheme will vary by operating system (e.g. /dev/tty.usbserial-xxxxx on Mac OS X, /dev/ttySx on Linux, or COMx on Windows). If you have more than one USB serial device connected, be sure to select the correct one. During the first connection, the serial port may take a few seconds to become available in the Serial Port menu.
- Select "Arduino Leonardo" from the Tools > Board menu.
- Unzip the ground robot code. The ZIP archive contains one folder called IARC7GroundRobot and a ZIP file named FSM Library.
- Go to the Sketch > Import Library... > Add Library... menu in the Arduino IDE software. At the file prompt, navigate to and select the FSM Library.zip file and click the Open button. Close the Arduino IDE.
- Open the IARC7GroundRobot folder and double click the file IARC7GroundRobot.ino.
- Press the right arrow button on the dark green banner at the top of the Arduino IDE window.
This verifies and compiles the code and then uploads it to your Arduino board. This may take a few minutes. After a successful compilation and upload, the status banner should read "Done uploading."
- Disconnect the USB cable. Connect the Arduino board to the iRobot create.
- Press the on/off button on the iRobot Create and wait for the second beep.
- Following the second beep, execution of the code can be initiated by pressing the "A" button on the keyfob. Button "B" will similarly halt execution.
Notes: The SPDT switch on the Proto Shield selects whether the robot behaves as a target robot or an obstacle robot. To switch from one mode to the other, flip the switch and then either press the reset button on the Proto Shield or power cycle the iRobot Create.