Hi dear Support,
I’m using a Pololu Simple Motor Controller 24v23.
Everything works fine but when I accelerate or when I apply a manual resistance to the engine I lose connection to the virtual COM port.
The same happen if I use a TTL jumper connection using a USB->UART converter. Sometimes when this error happen, I receive a clear indication that my PC USB port is not providing enough current.
It is probably clear that the serial connection is not optoisolated, how can I avoid the motor driver to absorb extra current from the serial connection?
Hi dear Support,
Is the blue electrolytic capacitor installed? If it isn’t, installing it will help a lot. Otherwise, can you please tell us more about how you are supplying power to the board?
Hi dear Support,
I confirm, it’s a voltage spike problem.
Do you sell any optoisolated interface to deal with the motor controller?
It’s not a good idea leaving a 40V GND reaching the USB controller on my pc.
Sure, it is.
I’m powering the board using 3 12V Pb batteries in series for a total of 40V
I’ve also powered up the blue capacitor with an additional huge 50V 4700μF but the problem is exactly the same.
I’m convinced that the serial connection should be optoisolated.
How did you confirm that it is a voltage spike problem? How long are your motor and power leads?
Note that the board you are using has an absolute maximum voltage of 40 V, and I think you are just asking to break something by powering it from three 12V batteries in series. If you decrease the input voltage and take steps to decrease motor noise, does the problem go away? Also, have you tried using the SMC’s built-in acceleration limiting?
it is a voltage spike problem because everything works fine if I decrease the pwm frequency to 11kHz.
The out wires are 10cm long, twisted, 4mm squares sections. The power wires are the same but 40 cm long.
However I’ve just ordered a cheap USB->UART optoisolated converter to definitely solve the problem. The converter I’m using now is not isolated.
Those are somewhat long wires. It seems like there’s a high likelihood of your SMC is being exposed to voltages over 40 V in this setup, so I strongly recommend you lower your input voltage.
Thanks Ben for your support. I’ll follow your advice
I’ve optoisolated the TTL connection, the problem is totally solved and I use the maximum PWM frequency 21kHz without any problem.
I’m just wondering why Pololu does not assembles the motor controllers with an embedded optoisolator, it’s so cheap…
What optoisolator are you using? The motor controller has a single microcontroller that connects directly to USB; isolating that is not easy, as far as I know. That leaves the microcontroller’s connections to other stuff on the board, which would require much more than just one or two optoisolators, which again complicates things more than you are suggesting.
I communicate with the motor controller via TTL/UART and I’ve bought a cheap USB-TTL/UART optoisolator for 13$.
On ebay you can also buy an USB-USB optoisolator for 26$.
If you endorse I can post the links.
It’s fine to post links to the optoisolators.
The USB-UART optoisolator, this is what solved my problem:
And this is an Isolated USB Converter for general purposes: