I am planning to (eventually) build an autonomous rover controlled with an Arduino. I am a total newbie to Arduino and electronics. I've been programming for many years. I expect that the hardware learning curve to be greater than the software learning curve. I don't have any hardware yet, will receive Arduino and some sort of starter kit for Christmas. Will start with learning the basics (blink the LEDs and respond to switches and sensors) and then build upon my knowledge and skills to achieve longer term project goals. I am in the dream/plan/learn stage.
An early goal for the project is to take a cheap RC car and control it with the Arduino. I've seen multiple projects like this so do not expect to have too much difficulty doing this.
I think I'll try controlling the switches in the remote first. Depending on results I may mount the Arduino on the car for more direct control or to add collision avoidance sensors.
I believe that controlling the car's direction won't be very difficult. What I'd like to do after I can control direction is control speed.
Let's assume that the car has no throttle and I am using the remote. I should be able to control the motor speed by toggling the 'go forward' switch quickly. More frequent or longer pulses == more speed. I understand that I may not get very fine control by using the remote, so that's okay initially.
Is this the right approach? Is there a better way? Is this a rudimentary form of PWM?
If the car does have a throttle then it's probably a pot or something similar (newbie here, help me with terms please) on the remote. If this is the case then I can control the throttle by changing the output of the pot, right?
If the above concepts are on track I am sure the code to do these this already exists or is pretty easy to write from scratch. I'm more interested in the viability of the concepts at this point.
Feedback please!