Motor power control

Okay, so I am and all around n00b. I know enough about circuits to read and follow instructions.

Here is my issue. I bought and rc car from radio shack, ripped out the receiver and replaced it with an uno and the nkc motor driver shield. I have modified the shield to receive power from the onboard batteries (5 AA batteries giving 7.5ish volts.) I have the hs-06 bluetooth module running off of the UNO's power. The steering and drive are dc motors. Everything works.

My question is about power. I get about 5 minutes out if a set of batteries. Like I mentioned, I don't know much about circuits and power, but I think. I may be pushing too much to the motors. On tile floor the rear wheels burn out in either direction. I could try lowering the power with pwm but then I get that awful tone.

Are there any other things I might try?

From what you say it sounds like you have programmed things so that the motors are either off or full on. It's hardly surprising if the batteries are depleted quickly.

The usual way to control motor speed is using PWM. How bad is the "awful tone"?

Can you provide a drawing showing how everything is connected and the code that controls the motors.

Have you tried making a short-as-possible sketch that just controls the motors a little forward and a little backward while the Arduino is connected to the PC?

...R

Yeah, the code is set with pwm at 255. I have done some reading on pwm frequency and I am going to see what I can manage. The sound is loud and high pitched. It looks like the manufacturer might have tried to tone it down as they have the steering motor bridged with a cap and the drive motor has some extra stuff going on. Small circuit board with some stuff on it. ( I haven't dug too deep into what's on it yet). I may put the original control board back in and see what kind of result I get. I wish I could just use it, but it is not rx2 based. It has a COB and I am not sure how to trace out the paths.

If it was mine I think I would take all the stuff off and only have my own stuff connected to the motors. Some of that stuff may be wasting power because you are using it differently.

...R

Hobrawker:
I wish I could just use it, but it is not rx2 based. It has a COB and I am not sure how to trace out the paths.

You have read this thread, right?

http://forum.arduino.cc/index.php/topic,86883.0.html

The concepts behind that thread can easily work with anything - not just the TX2/RX2 chipset; in fact, it might just be that a blobbed chip on the board might be an RX2! But you won't know that without some research and reverse engineering effort.

Then again - it might not - but that doesn't mean you can't figure it out to use it in some manner. Also - if you have the transmitter, you might be able to find the chip input, and just use the Arduino to simulate what it would normally get from the RF receiver portion on the PCB (there is a link near the end of that thread above).

Finally - what kind of batteries were being used by the RC car you purchased? It could be that the addition of the Arduino and the extra boards (plus the motors) pulls too much current and depletes the batteries too quickly. Perhaps drop the AA batteries, and go with a 7.2 volt NiMh RC car pack (you'll want to get an appropriate charger for it as well).

Also note that the motor driver shield you are using has some inherent voltage losses (and may not have the current output needed for the motors - but that doesn't seem to be the case here, though you really should check) - you may be better off using a 9.6 volt NiMh RC car battery pack instead.

The motor for the steering needs to be controlled with 100% PWM - instead of PWM, just switch the lines HIGH/LOW as needed; this is because the steering isn't proportional on these cheap cars (it's called "bang-bang" control - because you slam the steering one way or the other). If you need or want proportional control, purchase a standard-sized servo and put it in place for the steering - and remove the other steering actuator.

Your drive motor, though, should be controllable with PWM, but if it is making noise (and the capacitor on the motor isn't for this, but rather to cut out RF noise from the commutator that can seep back up the motor wires and to the h-bridge, causing spurious signals) - you need to increase the PWM frequency (this will necessitate more advanced programming, using a different PWM library or something similar - as the standard PWM control doesn't have a high-frequency mode). The noise you are hearing with the standard PWM is resonant noise from the lower frequency used; with some motors it can be loud and annoying...