I am a robotics research scientist with several years of experience in industry, but my background his primarily been concerned with high-level topics such as sensor processing, navigation, localization, planning, control, etc. I am interested in learning more about the hardware side of robotics, and as such, have decided to build an autonomous RC car.
What I'm hoping to get out of this post is some answers to questions I have about the process. Other than soldering some wires to convert my son's crib side music player from battery power to a wall socket AC/DC adapter power, I haven't seen any real work with electronics since sophomore year in college (many moons ago).
Anyway, here's what I've purchased, along with intended purposes:
RC car - This will serve at the platform for my robot. It's a scale model Hummer H2, which will provide enough space for mounting all the other hardware I have.
Arduino Uno - This will act as the "bridge" between a netbook and the RC car's motor control board (and the IMU). It will handle low-level control of the robot.
ArduIMU - I want/need some motion sensing.
Netbook - This will handle the high-level algorithms for the robot
Kinect - For 3D mapping and localization
Now I'd like to walk through my understanding of the process and ask some questions along the way:
Step 1: Open up the RC car and locate the motor control circuit board. As I understand it, the RC receiver will take radio control signals and pass them to the appropriate input pins on the motor controller. I can remove the RC receiver (unless I want to keep it for fun). I then need to connect the Arduino to the controller.
a. Is this correct? b. Can I use the motor control board that comes with the car, or do I need to purchase an Arduino motor shield? c. Do I need to worry about voltages/currents between the Arduino and the control board? d. What kind of hardware do I need for all of this (breadboards, wires, resistors, connectors, etc.), and why?
Step 2: Connect the ArduIMU to the Arduino. I'm assuming I can work this out from the documentation that comes with the unit or elsewhere online, but I may as well ask.
a. I'd like the connection between the Arduino and the IMU to be solid, but not permanent. What's the best option? I don't know a lot about small electrical components for PCBs.
Step 3: Connect the netbook to the Arduino.
a. The Arduino Uno appears to have a built-in USB-to-serial interface, allowing me to communicate with it using serial comms over a USB cable. Will this cable also power the Arduino, or do I need a separate power source for the board?
Everything else I can handle myself.
One more general question, though: if I wanted to add odometry to this robot, what would be the best way to accomplish that? I've seen hall effect sensors before; would that be a solid option?
Thanks in advance for taking the time to read and (hopefully!) respond.