Netduino home hardware projects downloads community

Jump to content


The Netduino forums have been replaced by new forums at community.wildernesslabs.co. This site has been preserved for archival purposes only and the ability to make new accounts or posts has been turned off.
Photo

Netduino PWM to control Treadmill motor?

PWM Netduino Motor Control Treadmill Motor

  • Please log in to reply
8 replies to this topic

#1 While(E)

While(E)

    New Member

  • Members
  • Pip
  • 4 posts

Posted 13 April 2013 - 02:13 PM

Hey guys, I recently had an accident with an MC-60 motor controller, which was rigged to control a 90v treadmill motor. I unknowingly dropped a washer on the board and fried something. I have replaced a everything I can test that's bad, yet nothing is working and I'm getting very little help from other communities regarding that actual circuit.

 

My question for this community is, would it be feasible to create a PWM circuit able to handle this type of load with a netduino?  If yes, what would be some of the necessary knowledge and components to do so? I have a background in C# and would be considered a novice electrician, but always willing to learn more.

 

If no, why would this not be feasible? Thank you for any advice!



#2 sebswed

sebswed

    Advanced Member

  • Members
  • PipPipPip
  • 45 posts
  • LocationSweden

Posted 14 April 2013 - 04:46 PM

Hi there.

 

I don't know what a MC-60 motor is or what kind of spec it has.

But it is possible to control heavy loads with PWM in a transistor circuit.

Example for DC here: http://tutorial.cytr...modulation-pwm/

Posted Image

 

 

If you need AC see the following link: http://hackaday.com/...pwm-connection/

(or search google for PWM AC motor control)


Netduino Plus 2 (v4.2.2.2)


#3 While(E)

While(E)

    New Member

  • Members
  • Pip
  • 4 posts

Posted 15 April 2013 - 09:22 PM

Thanks for the speedy reply, and the references. I'll be looking through everything tonight a little more. The MC-60 (motor controller) was to drive a 90v DC motor, so the voltages for most examples aren't what I need but the theory is still the same.  I have successfully isolated the netduino with optocoupler, and have this signaling the transistor, which is supplying the PWM to a test-lamp. Everything works except I salvaged a MOSFET from an old board, and the switch-off time lingers. In other words I don't think that'll do for the switch-speed required for PWM. I tested this by just using the button function on the netduino to turn the test-lamp on/off. Comes on real fast, but takes a second to drop completely off once released. After reading a bit I found that most MOSFET need a driver to solve this problem. Going to try the NPN before I go down that road. If that lingers I'll look into the Opto for the delay.



#4 NooM

NooM

    Advanced Member

  • Members
  • PipPipPip
  • 490 posts
  • LocationAustria

Posted 15 April 2013 - 10:46 PM

normally optocouplers (even cheap ones) and mosfets do fine, i have one myself, i can go up to 10khz without problems.

i ve also built a small mosfet driver with 2 transistors that allows for faster and better switching the mosfet (less energy loss = less heat)

 

for a 90v motor, i guess it needs quite some power, you want your mosfet cooled or it will get hot and burn



#5 While(E)

While(E)

    New Member

  • Members
  • Pip
  • 4 posts

Posted 15 April 2013 - 11:51 PM

Yeah I figured I'd have to cool the mosfet at some point, that's not too big of a problem. I can drive the motor with as little as 12v but obviously it will stall quite easily lol.

 

Have you experienced the delayed switch-off that I"m talking about with mosfet? It's might have been my particular circuit, I'm not too positive. I've seen a couple different solutions, but I figured I could push the button on the netduino -> activate Opto -> trigger mosfet -> turn on light.. it had to have been ok circuit-wise.



#6 NooM

NooM

    Advanced Member

  • Members
  • PipPipPip
  • 490 posts
  • LocationAustria

Posted 16 April 2013 - 09:40 AM

no ive never experience such a delay.

 

maybe your circiut is wrong.

 

http://upload.wikime...kret_simple.PNG

thats a basic driver, i guess around 5khz (wich is very good, and sufficient for a motor i guess)

 

thats the one iam using

http://upload.wikime...et_pushpull.PNG

you can remove the r2,r3 and d1 if you dont care about emf.

 

"IN" is the output from the opto-coupler



#7 hanzibal

hanzibal

    Advanced Member

  • Members
  • PipPipPip
  • 1287 posts
  • LocationSweden

Posted 16 April 2013 - 10:18 AM

for a 90v motor, i guess it needs quite some power, you want your mosfet cooled or it will get hot and burn

Aren't really good MOSFET supposed to have a such low internal resistance so that it won't burn? An ON resistance of 0.001 ohm would yield a power dissipation of just ~100mW at 10A and I suspect that wouldn't even require a heat sink.



#8 While(E)

While(E)

    New Member

  • Members
  • Pip
  • 4 posts

Posted 16 April 2013 - 10:13 PM

Yeah I've been reading that it all depends on the type of FET you use with the heat/burn problem. That's just a matter of finding the perfect component I believe.  The delay was the real issue I was concerned with, but like NooM stated I might have something wrong on my breadboard. I got the (Switch On)->(Light On) so figured it was correct but that was probably a false assumption. Will be reworking it with the driver circuit NooM posted to see if there are better results.  Thanks for the advice.



#9 hanzibal

hanzibal

    Advanced Member

  • Members
  • PipPipPip
  • 1287 posts
  • LocationSweden

Posted 17 April 2013 - 08:14 AM

Like NooM said, there should be no delay at all in either direction. Could it be you need a pull down resistor somewhere?







Also tagged with one or more of these keywords: PWM, Netduino, Motor Control, Treadmill Motor

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

home    hardware    projects    downloads    community    where to buy    contact Copyright © 2016 Wilderness Labs Inc.  |  Legal   |   CC BY-SA
This webpage is licensed under a Creative Commons Attribution-ShareAlike License.