thomas3120:
I tried another way using the do-while loop and had better results (sort of hehe).
I got a nice smooth increase in acceleration but it went to full throttle instead of leveling out at my max. throttle threshold.
I'll see if I can dig the code out from my overun desktopand post back.
This is not a problem that really calls for while loops and so on.
I think the key concept is that you have a target speed and an actual speed. The target speed can be changed arbitrarily by outside forces at any time. The actual speed is controlled by the Arduino. At regular intervals the Arduino compares the actual and target speeds and moves the actual speed towards the target speed. The 'blink without delay' example sketch shows you how to carry out processing at regular intervals - here, instead of blinking an LED, you would update the speed. The acceleration characteristics would be defined by how frequently you updated the speed, and how much you updated it by.