I've seen examples of high voltage motor control with the arduino. I would like to control a treadmill motor with my arduino for speed and direction. Most treadmill motors are rated between 90-130 volts DC at about a max of 23 Amps, 2.75 HP. The schematics I've seen show tying the negative motor feed to the ground of the Aduino. This does not seem right to me because there is a large difference between the Arduino voltage and the motor feed voltage. The examples I've seen are useing just a 12 Volt motor.
Does anyone know the correct way to do this. I'm fairly new to the electronics world and don't like to let the smoke out of my project just yet.
This is in the wrong part of the forum. I will help you once it gets moved. And always post schematics. ![]()
Thanks robtillaart!
Ok. So post the schematics that you have seen. Preferably attach them.
Which motor controller(s) are you thinking of?
Since I'm new to using Arduinos and forums I don't know what or where to post this question. Please advise.
Well, it is in the right place now. A moderator moved it. So now you can focus on the topic. Anyway, post pictures of your motor, its specifications, and a schematic.
Normally you just common grounds, although for high power power drivers you'd
normally expect opto-isolated inputs in which case the logic side and the motor side
have no electrical connection - useful if nasty voltages get where they shouldn't
in the driver module.
For that voltage level normally you'd want a MOSFET or IGBT motor driver built for
the purpose. Single direction drive with active braking (2 quadrant control is the
technical description for such a motor driver).
2.75HP is awfully large, mathematically a 120VAC wall socket cannot power that as they should be breakered at 15A.
I'd be willing to bet that these DC motors use voltage control vs PWM for speed control. You don't have quiet the same accuracy in speed control but its so much simpler to design and run at those power levels. Without the switching of PWM you likely could get away with doing a common GND vs isolation.
Not all DC motors work with PWM, the switching can sometimes damage them, depends on how it was wire wrapped.
These motors are controlled by PWM. They use a controller called MC-60 and others. I've examined the schematics for them and did confirm PWM. The controller typically is outputting around 105 VDC. I found a simple diagram on this site which got me started and I believe I've sized my parts to handle the higher voltage and load, however I've recently learned about opto isolators. Can't seem to get the hook up right for it though. Don't know if I'm suppose to add resistors to it or what size. I'm testing it with a 12 volt motor to start, and can get it to work without the opto but not with it. I've also seen diagrams of people using SSR to achieve this control but I'll explore that later. I would like to develop this into an H bridge configuration for forward and reverse control.

The FQPF45N15 is not logic level, you need 10V gate drive for it.
For driving a high voltage system like this I'd recommend a MOSFET driver chip that
runs from 12V, converts logic input to 12V powerful gate signals. The MIC4422
is an example.
Optoisolation would be good, but you need a fast opto isolator, not a standard one, for
PWM (you'd typically be PWM'ing at 4, 8 or 16kHz).
You only need the top diode of those two, the MOSFET includes a diode as part of its
device geometry.
This circuit will not give active braking, so you won't have emergency stop ability. You need
2 quadrant control for that (a 1/2 H-bridge)
I guess I've got some good homework to do. Never heard of a gate drive, could you expand a little on that.
Don't need estop circuitry but would be nice to do some sort of braking by reversing the motor with limited effect controlled by programming.
Go easy on me, I'm somewhat new to tronics. My background is in Automation Engineering and programming. Tronics is a whole new brainbuster for me.
MOSFETs are voltage driven. Power MOSFETs are usually designed for 10 or 12V drive, and
don't switch on fully at 5V - they have thicker gate oxide layer for the necessary robustness
and thus take more voltage.
Somewhere in the datasheet there is a specification of Rds(sat) - the on saturation resistance,
given for one or more gate voltages. That is the key parameter - if only 10V is quoted, you
can only expect it to work with 10V of gate drive.
Big MOSFETs have lots of gate capacitance - this means you have to push/pull large
currents (100mA or more) into/outof the gate to charge and discharge it fast enough for
power switching. For high power PWM you need to switch fast or you'll dump huge amounts
of power into the MOSFET during the sluggish switch-over periods. Fast means less than a microsecond,
perhaps 200ns.
Fortunately MOSFET driver chips do this, and they are simple and easy to use. Use one.
Give it lots of decoupling on the 12V rail (0.1uF + 10uF ceramic, for instance).
At first I did not full understand everything you were talking about, but after some well found documentation on MOSFETs I've come to a better understanding. I guess the simplest solution is to use a logic rated MOSFET, or would a gate driver using 12 Volts be better or faster since my aim is PWM control.
The odd thing is I used this MOSFET with a 12 Volt motor directly driving it with the Aduino PWM output and it worked correctly. It was when I tried adding a opto that I couldn't seem to get it to work. Most examples I've seen for wiring an opto includes some resistors. That's my next thing to try as soon as I get a 100 OHM and a 50 OHM resistor.
I'm trying to take this project a simple step at a time so I not only understand how, but why I'm doing the things necessary to be successful.
Any of your help is greatly appreciated, THANKS
No, as I keep saying, use a MOSFET driver chip!
Logic level MOSFETs are far less robust in high voltage circuits, and driving direct from
the Arduino means you only have weak gate drive, which is asking for the thing to
fail in a very expensive manner.
You defintely want this:
Arduino -> opto isolator (high speed) -> MOSFET driver -> non-logic-level power MOSFET.
The opto isolator means when you blow up your MOSFET (you will, you are learning!), then
you haven't destroyed your Arduino and computer, only the MOSFET, driver and possible output
side of the opto-isolator.
Remember 130V will bomb through the MOSFET if it fails, fry the driver, then your Arduino, then
whatever is powering it via USB (ie your computer or laptop). DO NOT TAKE THIS RISK!
Great advice!!! Thank you very much. OK from here its order some parts, let some smoke out, and see if I'm successful. As a retired Electrical Engineer, I've let the smoke out of a few parts in my history. Lets see if I can do just as good a job with electronics.
There are some logic-speed opto-isolators out there - they are more expensive but have much faster
response and clean logic signal output, they are specifically chosen for isolating gate drivers in
power electronics, you get precise timing control and complete isolation. Other approaches
use pulse-transformers (a bit bulky), or using high voltage MOSFET high-low drivers with
no isolation (riskier though, the chips are available upto 600V rating, but they will not
tolerate a MOSFET failing such that the Vgs goes sky-high).
I should mention that standard photo-transistor output opto isolators are very slow to switch off,
not really up to high speed PWM motor control
OK. So here is a stab at my design. I need another brain to look at it. Hopefully I'm not too far off and can let the smoke out. See attached
Thank you MarkT for the contribution you gave to cazang question I was looking through out the web for any convincing explanation about how to control High voltage motor and I found your explanation full of expertise in this domain and now I will use your provided information it in my project as they are very clear. I just register for this forum right now in order to join this good community and also say Thanks to you.
Thank you MarkT and Cazang. This is excellent information and discussion. I needed this information very badly and glad I found this. I am going to use the circuit diagram provided by Cazang to construct a controller for my treadmill motor.

