I am presenting a total of five different versions:
2. DIYduino with integrated sensor and 1-channel motorshield - no speed control
3. DIYduino with integrated sensor and 1-channel motorshield - with speed control
4. DIYduino with integrated sensor and 2-channel motorshield - no speed control
5. DIYduino with integrated sensor and 2-channel motorshield - with speed control
My pictures represent the third version, which is the one I chose for a particular robot application that I am currently building.
Step 1: Parts List
I did not consider the prices marked with the single asterisk for the total price of the device. Further note that item prices at Newark drop when you order a certain number of parts, typically if you order more than 10x. I listed the highest individual prices here and also ignored any special offers or promotions. If you buy more the price will go down. On another note, not all of the parts listed here are really necessary for operation. The parts that you can omit are marked with a double asterisk. The 'bare bones price' is also indicated at the bottom of the table.
Last not least, the ATMEGA 328 that I used required a bootloader. I recently created an instructable called ArduinoISP Bootloader/Programmer Combination Shield that addressed how to upload a bootloader to a “virgin” ATMEGA. You can also buy ATMEGAs that have a bootloader installed. They are almost double the price. For completion I listed one in the table.
The component prices were taken from www.newark.com and www.mcmaster.com. You can find order numbers and prices in the table.