Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   Electrical (http://www.chiefdelphi.com/forums/forumdisplay.php?f=53)
-   -   Non-FRC Motor Controller? (http://www.chiefdelphi.com/forums/showthread.php?t=106252)

rbmj 03-05-2012 12:55

Non-FRC Motor Controller?
 
Hi everyone,

I was looking for a couple of motor controllers for some personal projects of mine and was wondering if you all had any suggestions. It seems like everyone and their dog sells an arduino motor controller shield, and then there's also the stand-alone motor controllers.

I would use the controllers for FRC except those are expensive (victors are $90, jaguars $110) and seem (are they?) to be overkill.

If anyone has had success with a low-cost motor controller (either PWM or arduino shield preferably, though I2C could also work).

Also, do I need to get a speed controller, or can I just rapidly pulse on/off? I'm just a programmer, so I don't know if I'll burn out the motors or blow a fuse that way :D

AdamHeard 03-05-2012 12:56

Re: Non-FRC Motor Controller?
 
What motor are you planning to control?

Mk.32 03-05-2012 13:00

Re: Non-FRC Motor Controller?
 
For small personal projects I have used this with success:
http://www.sparkfun.com/products/9571
Note that it can only supply up to 2Amps per motor or 4amps total.

The biggest questions is how many amps do you expect your motor to draw?
If it is as big as the FRC motors an victor maybe be your cheapest option.

techhelpbb 03-05-2012 13:05

Re: Non-FRC Motor Controller?
 
If your motors are DC brushless, not DC brush, there are quite a few cheaper options than the FRC electronic motor controllers, for example:

http://www.hobbypartz.com/skyrcesc.html

rbmj 03-05-2012 13:58

Re: Non-FRC Motor Controller?
 
OK, so I don't even know how much current I expect the motors to draw. Mainly because I don't know what motors to use, either :D. I know that motors are (generally) much cheaper though, so I figured if I screwed that one up I could just buy more :P

I'm figuring around 6V for the motor, probably 0.5-1A current draw, but what do I know? If any of you have any input on that, let me know. Unless it needs to be 12V (the internet doesn't seem to have many 6V motors) in that case I'd probably go with the small banebots motors or similar.

techhelpbb 03-05-2012 14:07

Re: Non-FRC Motor Controller?
 
Quote:

Originally Posted by rbmj (Post 1166505)
OK, so I don't even know how much current I expect the motors to draw. Mainly because I don't know what motors to use, either :D. I know that motors are (generally) much cheaper though, so I figured if I screwed that one up I could just buy more :P

I'm figuring around 6V for the motor, probably 0.5-1A current draw, but what do I know? If any of you have any input on that, let me know. Unless it needs to be 12V (the internet doesn't seem to have many 6V motors) in that case I'd probably go with the small banebots motors or similar.

I think RadioShack still sells small DC brush hobby motors and those motors with a realistic mechanical load can be controlled with the L298 (the integrated module on the SparkFun PCB linked in this topic).

Those motors are usually good to around 6V.
http://www.radioshack.com/product/in...ductId=2914699

They sell a 9V version but it's more speed than torque, maybe too much speed to gear it down without issues.

rbmj 03-05-2012 14:16

Re: Non-FRC Motor Controller?
 
Thanks all of you for your replies. Just so that I can get a bit of an understanding, do I need a full blown speed controller? Or can I just get a relay and pulse it at a high frequency? Forgive my inexperience with electrical work...

And just out of curiosity, most of the FRC size motors have a no-load current of about 1A. If there's only a small load on the motor, how much does this go up?

Lastly (and this will sound like a stupid question) if I got one motor controller, could I run multiple motors off of it as long as I don't exceed the rated amperage?

techhelpbb 03-05-2012 14:25

Re: Non-FRC Motor Controller?
 
Quote:

Originally Posted by rbmj (Post 1166518)
Thanks all of you for your replies. Just so that I can get a bit of an understanding, do I need a full blown speed controller? Or can I just get a relay and pulse it at a high frequency? Forgive my inexperience with electrical work...

And just out of curiosity, most of the FRC size motors have a no-load current of about 1A. If there's only a small load on the motor, how much does this go up?

A CIM on stall will draw 120+ Amps or more.

A typical 4 CIM robot drive often sits between 25A-45A per speed controller.

You can drive a motor in a single direction with MOSFET transistor(s) easy enough.

I would not attempt to pulse a relay. You'll eventually damage the contacts.

The Innovation FIRST Spike relays are really similar in design to the electronic motor controllers (they are also H-Bridge circuits), but are no match for the larger motors. I've not tried pulsing them but as they are solid state it might work.

Mk.32 03-05-2012 14:33

Re: Non-FRC Motor Controller?
 
Quote:

Originally Posted by rbmj (Post 1166518)
Thanks all of you for your replies. Just so that I can get a bit of an understanding, do I need a full blown speed controller? Or can I just get a relay and pulse it at a high frequency? Forgive my inexperience with electrical work...

And just out of curiosity, most of the FRC size motors have a no-load current of about 1A. If there's only a small load on the motor, how much does this go up?

Lastly (and this will sound like a stupid question) if I got one motor controller, could I run multiple motors off of it as long as I don't exceed the rated amperage?

Well lets take the biggest motor in FIRST the CIM motor as an example. When the motor spins with no load it draws not a lot of current, 1-2 amps maybe. However when I put the motor in a robot and use that robot to push another 150lbs robot the load on the motor causes it to draw more amps to supply more power which is required for something like pushing another robot, P = V*I. The Victors/Breakers lets the motor get up to 40 amps before they get cut off.

Excuse me if there is any mistakes in my explanation, not an expert on the topic.

And in FIRST running multiple motors on one controller is not legal however doing this for other projects is okay if you do not exceed the amp rating, at least in my experience.

techhelpbb 03-05-2012 14:37

Re: Non-FRC Motor Controller?
 
Quote:

Originally Posted by Mk.32 (Post 1166524)
The Victors/Breakers lets the motor get up to 40 amps before they get cut off.

The self-reseting breakers allow some massive spikes in current before they actually open. It's easy to draw upwards of 90A through them before they open.

Mk.32 03-05-2012 14:40

Re: Non-FRC Motor Controller?
 
Quote:

Originally Posted by techhelpbb (Post 1166527)
The self-reseting breakers allow some massive spikes in current before they actually open. It's easy to draw upwards of 90A through them before they open.

Oh yes, the 40amp number is continuous draw.

Ether 03-05-2012 14:43

Re: Non-FRC Motor Controller?
 
Quote:

The Innovation FIRST Spike relays are really similar in design to the electronic motor controllers (they are also H-Bridge circuits), but are no match for the larger motors. I've not tried pulsing them but as they are solid state it might work.
Not disagreeing, but how do you know this? Did you find a schematic, or perhaps take one apart?



techhelpbb 03-05-2012 15:03

Re: Non-FRC Motor Controller?
 
Quote:

Originally Posted by Ether (Post 1166532)
Not disagreeing, but how do you know this? Did you find a schematic, or perhaps take one apart?



http://www.robotmarketplace.com/prod...sersManual.pdf

"Spike is an H-Bridge relay module custom designed for Robotics applications. The most common use of Spike is to drive small motors in Forward, Reverse or Off. Spike can also be used to turn ON or OFF solenoids and lights. Spike takes input power from a 12V battery (labeled 12V, GND) and provides two outputs (labeled M+, M-). M+ and M- are typically connected to a motor. The unit is controlled via a three-wire interface, which connects to the Innovation First Robot Controller. Spike has a 20A integrated fuse to help protect the unit and it has an indicator to show status."

(That might have been my shortest post ever :D )

DonRotolo 03-05-2012 17:13

Re: Non-FRC Motor Controller?
 
Quote:

Originally Posted by rbmj (Post 1166465)
I was looking for a couple of motor controllers for some personal projects of mine

Step 1 is to identify the current draw of the motors you want to control. Figure 3 to 6 Amps for small motors, smaller than what you'd see in FIRST.
Second decide on a voltage. Much of the world is 12 volts, because of the automotive industry. Most motor controllers you will find handle a wide range of voltages.
Then pick a motor controller that handles the current and voltage you want, has the control inputs you plan to use (e.g., PWM), and fits your budget.

Pulsing a relay, whether electromechanical or solid=state, is not a good practice.

The EM relay's contact will last only a few hours (they do wear), the maximum switching speed is single-digits per second (poor control resolution), and since you will have a hard time controlling the on-off time (duty cycle) the motor will be hard to control other than on and off.

Solid state doesn't have the contact wear, but the other issues remain valid.

The bottom line is, if you want to control a motor, use a motor controller.

You CAN build your own motor controller for under $20, but given your level of experience perhaps you should wait on that.

So, go find some motors....

Alan Anderson 03-05-2012 17:22

Re: Non-FRC Motor Controller?
 
Quote:

Originally Posted by techhelpbb (Post 1166520)
The Innovation FIRST Spike relays are really similar in design to the electronic motor controllers (they are also H-Bridge circuits), but are no match for the larger motors. I've not tried pulsing them but as they are solid state it might work.

Where did you find this information? It's totally wrong.

Spike relay modules contain a pair of simple physical relays that use a pair of logic level signals to independently switch each relay's output between the 12 volt power and "ground" return inputs. When wired to motors, both relays are usually connected in an H-bridge configuration, but they don't have to be used that way. They are just as easily used as separate circuits, such as when powering LEDs or pneumatic solenoid valves.

Pulsing them is not recommended, as they are rated for a finite number of cycles and are likely to fail either electrically or mechanically.

techhelpbb 03-05-2012 17:27

Re: Non-FRC Motor Controller?
 
Quote:

Originally Posted by Alan Anderson (Post 1166609)
Where did you find this information? It's totally wrong.

Spike relay modules contain a pair of simple physical relays that use a pair of logic level signals to independently switch each relay's output between the 12 volt power and "ground" return inputs. When wired to motors, both relays are usually connected in an H-bridge configuration, but they don't have to be used that way. They are just as easily used as separate circuits, such as when powering LEDs or pneumatic solenoid valves.

Pulsing them is not recommended, as they are rated for a finite number of cycles and are likely to fail either electrically or mechanically.

If this is the case the documentation is not consistent, and in that case your criticism of the idea is quite valid:

http://en.wikipedia.org/wiki/User:As...novation_First
"The Spike relay, available in mechanical and solid state models"

In any case the flaky documentation aside (here's a video of PWM driving a solid state relay...it's not ideal but under just the right circumstances it'll work):

http://www.youtube.com/watch?v=LL2Sryi57xA

I suspect that the confusion was caused because Innovation FIRST does sell a solid state module, but I don't see any evidence that it's called a Spike relay.

The Red Spike seems to have had no reverse polarity protection according to what I could find.
The Blue Spike fixed that apparently.

If that's incorrect please do correct me because Innovation FIRST Spikes are not something I usually mess around with, so my experience with all the flavors is limited.

MrForbes 03-05-2012 17:28

Re: Non-FRC Motor Controller?
 
Quote:

Originally Posted by rbmj (Post 1166465)
I was looking for a couple of motor controllers for some personal projects of mine and was wondering if you all had any suggestions.

If you describe the projects in detail, we might be able to give you some suggestions. Otherwise we're all just guessing, which is not very helpful.

billbo911 03-05-2012 17:47

Re: Non-FRC Motor Controller?
 
Quote:

Originally Posted by techhelpbb (Post 1166612)
If this is the case the documentation is not consistent:

http://en.wikipedia.org/wiki/User:As...novation_First
"The Spike relay, available in mechanical and solid state models"

I'd be really careful using Wikipedia.org as an authoritative document source.
The example you gave is a perfect example as why caution should be used.

As far as I know, they have always been mechanical contact relays.

You can find some Technical Specs on this page.

techhelpbb 03-05-2012 17:56

Re: Non-FRC Motor Controller?
 
Quote:

Originally Posted by Alan Anderson (Post 1166609)
Where did you find this information? It's totally wrong.

Spike relay modules contain a pair of simple physical relays that use a pair of logic level signals to independently switch each relay's output between the 12 volt power and "ground" return inputs. When wired to motors, both relays are usually connected in an H-bridge configuration, but they don't have to be used that way. They are just as easily used as separate circuits, such as when powering LEDs or pneumatic solenoid valves.

Pulsing them is not recommended, as they are rated for a finite number of cycles and are likely to fail either electrically or mechanically.

Quote:

Originally Posted by billbo911 (Post 1166621)
I'd be really careful using Wikipedia.org as an authoritative document source.
The example you gave is a perfect example as why caution should be used.

As far as I know, they have always been mechanical contact relays.

You can find some Technical Specs on this page.

Fair enough I provided the other link previously.
http://www.chiefdelphi.com/forums/sh...2&postcount=13

The term H-bridge shouldn't even apply to this unit anyway.

An H-bridge is a very specific circuit.
http://en.wikipedia.org/wiki/H-Bridge

This is at best a half bridge or half h-bridge.

I suppose if this were transistors you could also see it referred to as a totem pole, push-pull or class AB amplifier configuration.

However, to keep this on topic as I stand corrected on the details:
http://www.youtube.com/watch?v=LL2Sryi57xA

A solid state relay *can* be used to control motor speed under the right circumstances and Innovation FIRST does sell one (I've just never tried it with this relay and we don't know what kind of motor):
http://www.ifirobotics.com/ssr.shtml

Nikkocharger 03-05-2012 18:04

Re: Non-FRC Motor Controller?
 
Quote:

Originally Posted by techhelpbb (Post 1166476)
If your motors are DC brushless, not DC brush, there are quite a few cheaper options than the FRC electronic motor controllers, for example:

http://www.hobbypartz.com/skyrcesc.html

Recently I have been looking at motor controllers for my R/C car and I know that this place is always out of stock and those Leopard motors will de-bond if you put to much load on them. I would however recommend. http://www.hobbyking.com/hobbyking/s...ntrollers.html

Alan Anderson 03-05-2012 18:11

Re: Non-FRC Motor Controller?
 
Quote:

Originally Posted by techhelpbb (Post 1166612)
If this is the case the documentation is not consistent:

http://en.wikipedia.org/wiki/User:As...novation_First
"The Spike relay, available in mechanical and solid state models"

A Wiki user page is not documentation, especially when it contains a disclaimer about needing work.

techhelpbb 03-05-2012 18:17

Re: Non-FRC Motor Controller?
 
Quote:

Originally Posted by Alan Anderson (Post 1166631)
A Wiki user page is not documentation, especially when it contains a disclaimer about needing work.

The first bit of documentation I provided in this topic at Ether's request:
http://www.robotmarketplace.com/prod...sersManual.pdf

Seriously, this is professional documentation and it does not mention mechanical relay or solid-state.

However, it does incorrectly refer to itself as an H-bridge which as you and others say it is not. Should I also know better than to read Innovation FIRST documentation and take it for granted?

I've already stated I stand corrected on that detail....are you interested in the validity of my original suggestion which I provided a video demonstration for or something a little less gracious and professional?
http://www.youtube.com/watch?v=LL2Sryi57xA

Again:
A solid state relay *can* be used to control motor speed under the right circumstances and Innovation FIRST does sell one which apparently someone...somewhere thinks is called a Spike (I've just never tried it with this relay and we don't know what kind of motor):
http://www.ifirobotics.com/ssr.shtml

AlexH 03-05-2012 18:39

Re: Non-FRC Motor Controller?
 
these are all pwm esc's

for less than 1a http://www.fingertechrobotics.com/pr...d=ft-tinyESCv2

3-9a http://banebots.com/pc/ELECTRONICS/BB-0309

the sabertooth 25 is a pretty beastly dual channel controller. it will do 25a per channel or 50a single. i run one in my 30lb battlebot. http://www.robotmarketplace.com/prod...ER2X25-RC.html
the 12 amp version isn't too bad either.

for bigger stuff http://holmeshobbies.com/product.php...4&cat=2&page=1 it will do 80a at 24v and dosent have a fan like a victor.


robot market place has a pretty cool tool to find speed controllers
http://www.robotmarketplace.com/prod...lers_main.html

http://killerbotics.com/kbtools/TentacleTools/ is a great drivetrain calculator.

i would invest in a esc instead of pulsing a spike relay and you can always re use them in another project.

techhelpbb 03-05-2012 18:45

Re: Non-FRC Motor Controller?
 
Quote:

Originally Posted by AlexH (Post 1166647)
i would invest in a esc instead of pulsing a spike relay and you can always re use them in another project.

Okay, LOL, let's correct this because it was my mistake...the Innovation FIRST Spike (red or blue) relay shouldn't be pulsed as it wouldn't work Alan's statement is quite valid.

I was under the impression from the Innovation FIRST documentation and the Wikipedia page I linked it was a solid-state H-Bridge it is not (if you really need details why read posts from start of topic).

My earlier error removed:

If you pulsed the Innovation FIRST *solid state relay* with just the right circumstances you could control brushed DC motor speed with it.
http://www.youtube.com/watch?v=LL2Sryi57xA

BTW thanks for the reminder I couldn't remember that SaberTooth's name...they apparently ran out of big cat names so they went to extinct big cat names :p.

Alan Anderson 03-05-2012 19:33

Re: Non-FRC Motor Controller?
 
Quote:

Originally Posted by techhelpbb (Post 1166635)
Again:
A solid state relay *can* be used to control motor speed under the right circumstances

Agreed. Those circumstances might even be applicable to what rbmj (the original poster) is trying to do. He specifically asked about exactly what you suggested, but he quite properly recognized that such a scheme would not be using a speed controller.

The usual meaning of "motor speed controller" in this context is something which takes a hobby servo control signal and provides a suitable modulated and polarity-switched output. Using a solid-state relay is a lot like using raw transistors; you need to provide your own PWM. And you're not going to be able to control the motor direction with one.

Quote:

and Innovation FIRST does sell one which apparently someone...somewhere thinks is called a Spike (I've just never tried it with this relay and we don't know what kind of motor):
http://www.ifirobotics.com/ssr.shtml
Brian, I encourage you to slow down a bit and let some of the information you're reading sink in and get sorted out before you repeat it. Innovation FIRST hasn't sold that product for a great many years, and actually doesn't sell any of the products listed on the ifirobotics.com catalog pages anymore. Those pages are no longer accessible from the IFI home page. If you manage to find one by some other means, they all have that prominent red text at the top explaining that the Innovation First products are now sold by VEX Robotics under the VEX PRO brand. That solid-state relay module is not one of the products which made the transition.

techhelpbb 03-05-2012 19:47

Re: Non-FRC Motor Controller?
 
Quote:

Originally Posted by Alan Anderson (Post 1166676)
Agreed. Those circumstances might even be applicable to what rbmj (the original poster) is trying to do. He specifically asked about exactly what you suggested, but he quite properly recognized that such a scheme would not be using a speed controller.

The usual meaning of "motor speed controller" in this context is something which takes a hobby servo control signal and provides a suitable modulated and polarity-switched output. Using a solid-state relay is a lot like using raw transistors; you need to provide your own PWM. And you're not going to be able to control the motor direction with one.

I absolutely agree. I don't think he ever made it clear that the needs to go both forward and reverse from the input (he could just use more solid state relays or a reversing clutch...etc), or even what kind of motor, but if he does obviously your point is quite valid.

The other point taken as well, normally you'd expect your electronic speed/motor controller to operate on the input signal and condition the result for the output. Perhaps even give you some features like thermal protection.

Still without more detail we don't know what's expected. Several of those R/C speed controls will differ slightly in how they react as well.

Additionally I've assumed again he needs to drive a DC brush motor. I hope that the difference between that and a DC brushless motor has been realized. These two kinds of motor are rarely interchangeable unless the controller for the brushless motor is part of the motor.

Quote:

Brian, I encourage you to slow down a bit and let some of the information you're reading sink in and get sorted out before you repeat it. Innovation FIRST hasn't sold that product for a great many years, and actually doesn't sell any of the products listed on the ifirobotics.com catalog pages anymore. Those pages are no longer accessible from the IFI home page. If you manage to find one by some other means, they all have that prominent red text at the top explaining that the Innovation First products are now sold by VEX Robotics under the VEX PRO brand. That solid-state relay module is not one of the products which made the transition.
Fair enough. I saw that it linked over. The point was more that I suspect the initial confusion of the Wikipedia author originated in the availability of this item. It does not appear to me that Innovation FIRST ever actually called it a Spike relay. Perhaps you know better on that point.

I'm almost positive that this confusion is not new either. I recall vaguely a previous topic in these forums with a similar issue Spike relay related issue. Sorry didn't mean to step in the same mess again.

Al Skierkiewicz 03-05-2012 20:35

Re: Non-FRC Motor Controller?
 
OK,
Here goes...
The Red Spike which has not been sold for quite a while (+12 years) had a small limitation in that while it could reverse polarity to the output (M+ and M-) it could not independently switch from positive voltage to common. (It could make both outputs common) The Blue does allow that and so it has four states, one is both outputs high (+v), one is both outputs low (common), one where one output is high and one is low or one where the last condition is reversed. Spikes have never been solid state. In the strict definition of an "H" bridge i.e. four independent switches, the Spike meets that definition. It is simply two single pole, double throw relays, with the common terminal of each connected to the M+ and M- outputs.
The nature of the self resetting breakers used in FRC allow a 600% over current rating for up to 2 seconds before trip when at ambient temperature. That is 240 amps for the 40 amp breaker. It is likely that you will not experience a trip even at 45 amps. The CIM motor is rated at 133 amps in stall, and free speed current of almost 3 amps.
While you would think that software might be able to pulse the relay, in reality, the time it takes to move the contacts might make this a frustrating experience. When used with higher current motors, those above the rated 20 amps, significant arcing of the relay contacts will result from the inductive loading of a motor switched at a frequency needed to control motor speed. Used in this operation, the resulting degradation of the contacts may even fuse the contacts in some cases, rendering the relay permanently in one state.
Please note that while a single solid state relay is capable of switching the current to the motor, it is not capable of reversing the motor. An "H" bridge could be constructed using four such solid state relays. The cost of the four devices and drivers would approach the cost of a Victor or Jag. However one needs to be careful to use SSR designed for switching DC loads and rated currents. Please note that the IFI SSR linked above is rated for 7 amps.

techhelpbb 03-05-2012 21:10

Re: Non-FRC Motor Controller?
 
Quote:

Originally Posted by Al Skierkiewicz (Post 1166710)
OK,
In the strict definition of an "H" bridge i.e. four independent switches, the Spike meets that definition. It is simply two single pole, double throw relays, with the common terminal of each connected to the M+ and M- outputs.

Okay that description I agree forms strictly a relay based H-bridge.

Again, sorry about the confusion.

rbmj 04-05-2012 11:18

Re: Non-FRC Motor Controller?
 
Thank you all for your input.

One last question:

If I can't pulse a relay, is it feasible to pulse a bunch of MOSFETs? The data sheet at sparkfun says the switching delays are < 1us As long as my pulse period is in the ms order of magnitude than I should be fine, shouldn't I? I don't see propagation delay having a measurable impact here... Just need to make sure to have flyback diodes, right?

Again, my experience with electrical stuff is all theoretical digital logic stuff, so your input is appreciated! This is what happens when a code monkey tries to actually make something :D

techhelpbb 04-05-2012 11:29

Re: Non-FRC Motor Controller?
 
Quote:

Originally Posted by rbmj (Post 1166881)
Thank you all for your input.

One last question:

If I can't pulse a relay, is it feasible to pulse a bunch of MOSFETs? The data sheet at sparkfun says the switching delays are < 1us As long as my pulse period is in the ms order of magnitude than I should be fine, shouldn't I? I don't see propagation delay having a measurable impact here...

Again, my experience with electrical stuff is all theoretical digital logic stuff, so your input is appreciated! This is what happens when a code monkey tries to actually make something :D

Okay, before I step in this mess again.

Do you need forward *and* reverse or just one direction?

rbmj 04-05-2012 11:34

Re: Non-FRC Motor Controller?
 
The project is making a small to mid-size RC vehicle. Though I'd like to have forward and reverse, it's not totally necessary (I just think it'd be cool to have something that drives), so, for the sake of discussion, let's assume I only need single-directional control.

Ether 04-05-2012 11:35

Re: Non-FRC Motor Controller?
 
Quote:

Originally Posted by rbmj (Post 1166881)
is it feasible to pulse a bunch of MOSFETs?

That's what the Vics and the Jags do. But the circuit must be designed and controlled properly, using appropriate FETs.

See page23, and page19 Figure 4-4, of this document:

http://www.ti.com/lit/ug/spmu130c/spmu130c.pdf



Al Skierkiewicz 04-05-2012 11:43

Re: Non-FRC Motor Controller?
 
Quote:

Originally Posted by rbmj (Post 1166881)
If I can't pulse a relay, is it feasible to pulse a bunch of MOSFETs?

I suggest you take a look at the jaguar manuals to see the complexity of driving MOSFETs. Depending on the design, it might take some circuit black magic that would be beyond your ability.

techhelpbb 04-05-2012 11:49

Re: Non-FRC Motor Controller?
 
Are you trying to actually build the electronic motor control from scratch? (If so and you settle for just one direction of motor movement the problem is still advanced but incrementally less complicated).

If not then existing solutions that were previously posted at the start of the topic are cheaper than the Victors and Jaguars and benefit from mass production to keep that cost low. Course if you are using FIRST specification of motors your selection from that list will get more expensive and smaller.

If you're using FIRST specification motors the Victors and Jaguars are not a bad price for what they do.

Can you clarify your intent? I'd prefer not to see your topic derailed.

Also if the price of the Victors is your primary concern let me refer you to this topic from today:
http://www.chiefdelphi.com/forums/sh...d.php?t=106265

Perhaps that will ease your budgeting concerns.

rbmj 04-05-2012 12:01

Re: Non-FRC Motor Controller?
 
Quote:

Originally Posted by Ether (Post 1166890)
That's what the Vics and the Jags do. But the circuit must be designed and controlled properly, using appropriate FETs.

See page23, and page19 Figure 4-4, of this document:

http://www.ti.com/lit/ug/spmu130c/spmu130c.pdf



So, looking at figure 4-4, is this interpretation correct? The basic "OFF" state is q2g and q4g high. To go forward, q1g goes high, then after a little q2g goes low. Back off, q2g high, then q1g low. Reverse, q3g high, then q4g low. Back off again, q4g high, then q3g low. At each "then" is a small delay.

Then what are those zener diodes for (assuming I'm identifying them correctly)? Just in case there's a switching delay that isn't supposed to happen the MOSFETs don't get fried?

And then I can infer there's an oscillator that drives a clock for the whole thing? And the PWM signal is somehow fed into this oscillator that changes the frequency (and forward/reverse)?

Am I understanding this correctly? At this point, it's just theoretical (clearly that's above my skill level), but it's still interesting to understand how all of those "black boxes" work.

EDIT: @techhelpbb - thanks for the link! The links earlier up in the topic were very helpful - I think they give me enough information to make an informed decision.

Al Skierkiewicz 04-05-2012 12:19

Re: Non-FRC Motor Controller?
 
rb,
To start the zener diodes are a normal result of manufacture in these devices. there is a typo in the description, it is Q4 that is ON not Q2. In the jag, the control causes only the high side to turn on and off while the low side completes a path for current as described. Note the three states in Fig 4-4. The on board micro interprets the pulse width modulation on the input or the CAN input and converts that to a digital value. Then it generates switching signals to control the output circuitry. There is no relation from control PWM to output PWM pulse widths or frequency. Check the schematic at the end of the document for the actual circuitry and recognize that their is a secondary power supply to generate the high gate currents used in this design. You can get more info by looking at the gate driver here...
http://www.allegromicro.com/Products...Datasheet.ashx

techhelpbb 04-05-2012 12:19

Re: Non-FRC Motor Controller?
 
Quote:

Originally Posted by rbmj (Post 1166903)
Then what are those zener diodes for (assuming I'm identifying them correctly)? Just in case there's a switching delay that isn't supposed to happen the MOSFETs don't get fried?

I think you mean the body diodes of the MOSFETs.
Those are part of the MOSFET and allow current that would reverse the polarity of the MOSFET transistor itself to flow past it instead.

Many other details applicable to the circuit apply. Such as field collapse in the motor. Heating of those diodes. Synchronous rectification. I'd read the text on it.

Quote:

And then I can infer there's an oscillator that drives a clock for the whole thing? And the PWM signal is somehow fed into this oscillator that changes the frequency (and forward/reverse)?
The Jaguar contains a Stellaris microcontroller. Think small computer. The signals go into the Stellaris. The Stellaris requires an oscillator like most computers. The Stellaris processes the inputs and outputs and produces a new signal that it's programmed to produce from each input that it encounters (sometimes based on additional inputs and outputs as well).

rbmj 04-05-2012 12:43

Re: Non-FRC Motor Controller?
 
Yes, at some point the PWM has to be digitally processed - I think 1-49% is reverse, 50% is neutral, 51-100% is forward (based off of reading the WPILib source a while back, so might be a bit off). The code on the microcontroller must be very tightly optimized if they're generating the pulses on the fly - no interrupt timer will give you the time resolution you need - they must be relying on the actual instruction processing speed of the microprocessor. That manual talks about delays in microseconds...

So those diodes are part of the MOSFET? That manual says they're arranged in a circle under the fan - those heat sinks must dissipate a lot of power. I don't quite grok how the synchronous rectification works - seems like black magic to me. The energy in the motor has to go *somewhere*. It's just a matter of where and how quickly (right?). Maybe if they had all that current switched to a capacitor or something, it would make sense, but I don't understand how they get an order of magnitude less dissipated energy without channeling that energy TO somewhere.

MrForbes 04-05-2012 12:57

Re: Non-FRC Motor Controller?
 
The electrical energy going into the speed controller goes out to the motor, and some of it is dissipated as heat by the MOSFETs.

The motor does mechanical work (that's the whole point of having a motor), and it also gets warm.

To size the speed controllers you need to figure out how much mechanical work you need to do. Then you can select motors based on the rpm/torque requirements, and look at the current requirements and then select speed controllers.

techhelpbb 04-05-2012 12:58

Re: Non-FRC Motor Controller?
 
Quote:

Originally Posted by rbmj (Post 1166924)
Yes, at some point the PWM has to be digitally processed - I think 1-49% is reverse, 50% is neutral, 51-100% is forward (based off of reading the WPILib source a while back, so might be a bit off). The code on the microcontroller must be very tightly optimized if they're generating the pulses on the fly - no interrupt timer will give you the time resolution you need - they must be relying on the actual instruction processing speed of the microprocessor. That manual talks about delays in microseconds...

Courtesy of timers, purpose built hardware functions and the very sequential nature of code execution itself it's very doable with a microcontroller of this scale.

In point of fact many cheap electronic motor controllers use Microchip PICs and Atmel AVRs to perform this function, just slower and with less features.

Quote:

So those diodes are part of the MOSFET?
Yes.

Quote:

That manual says they're arranged in a circle under the fan - those heat sinks must dissipate a lot of power.
Yes the fan blows directly on the MOSFETs to keep them from overheating.

In other applications where weight and size would not be an issue heatsinks could be used.

In the current design there is no additional headsink beyond the packages of the MOSFETs themselves (obviously the MOSFETs have a little exposed metal on them someone might consider a heatsink).

The Jaguars I've seen have a plastic retainer around the MOSFETs that keeps them apart (generally the exposed metal on these MOSFETs is actually connected to one functional part of the MOSFET, it can carry an electric charge just as easily as the other connections on the MOSFET, for this purpose best to keep them apart).

Quote:

I don't quite grok how the synchronous rectification works - seems like black magic to me. The energy in the motor has to go *somewhere*. It's just a matter of where and how quickly (right?). Maybe if they had all that current switched to a capacitor or something, it would make sense, but I don't understand how they get an order of magnitude less dissipated energy without channeling that energy TO somewhere.
In effect the issue with synchronous rectification is that the body diodes heat up as the energy coming back from the motor dissipates. The MOSFET transistor (so long as the polarity of the current flow is considered) when fully turned on would have less resistance than the MOSFET body diode. Therefore it makes sense when possible to turn on the proper MOSFET transistor to take the current away from the body diode. The body diode would simply get hotter and take longer to allow the same current to flow. The savings is merely what gets hot as the energy moves. Storing the energy instead of letting it dissipate would be difficult because the exact timing and amount of energy flowing is hard to predict, better to let it dissipate.

Would the circuit function without that feature, yes. However, the MOSFETs as a package would get hotter. Obviously as designed getting rid of heat is a good idea so long as it doesn't make anything significantly more expensive.

Ether 04-05-2012 13:03

Re: Non-FRC Motor Controller?
 

For the forward direction, Q3 is always off and Q4 is always on. So for a single-direction drive you could remove Q3 and replace Q4 with a shunt.

During the ON portion of the output PWM cycle, Q1 is ON and Q2 is OFF.

During the OFF portion of the output PWM cycle, Q1 is OFF and Q2 is ON.

Q1 and Q2 must never be ON at the same time (I think you can see why). Thus, there is always a slight "dead time" where both Q1 and Q2 are OFF when switching states. During this dead time, the intrinsic diode in Q2 allows the inductive current in the motor to continue flowing so it doesn't create a large voltage spike.

So, during the OFF portion of the output PWM cycle, the stored energy in the motor's coils causes current to continue flowing through Q2 and Q4. This current maintains the motor's torque during the OFF portion.



rbmj 05-05-2012 09:11

Re: Non-FRC Motor Controller?
 
The microcontroller's timer interrupts must be highly optimized then... at full frequency on a PIT you can't do much of anything between ticks AFAIK, especially if you're on an embedded system.

Anyway, thanks everyone for you help. I learned a lot!

Al Skierkiewicz 05-05-2012 13:58

Re: Non-FRC Motor Controller?
 
rb,
The output frequency for the jag is about 15kHz. I can bet that the clock frequency is much higher than that.

EricVanWyk 05-05-2012 15:26

Re: Non-FRC Motor Controller?
 
Quote:

Originally Posted by rbmj (Post 1167163)
The microcontroller's timer interrupts must be highly optimized then... at full frequency on a PIT you can't do much of anything between ticks AFAIK, especially if you're on an embedded system.

Anyway, thanks everyone for you help. I learned a lot!

In general, your statement was true only a few years ago. Since then, microcontrollers have had an incredible growth in computational horsepower. It makes being an electrical engineer a lot of fun right now, because we suddenly have gobs of "free" computation to throw at problems. We are literally able to replace physical objects with lines of code, and that is freaking cool.


For reference, the 2006 IFI controller's microcontroller was a PIC18F. These perform on average one 8 bit operation every 4 clock cycles. The Jaguar's microcontroller is an M3-Cortex, which on average performs 1.25 32 bit operations each clock cycle. If they were clocked at the same speed, the M3 performs 5 times as many operations and those operations do more work. Additionally, the associated peripherals do more of the work, and handle things like quadrature encoders without bothering the main core.

Long story short, there is so much additional capability that they end up running the core much slower than it is capable of.

rbmj 05-05-2012 19:53

Re: Non-FRC Motor Controller?
 
All I'm saying is that the "DEAD_TIME" period is 2 us. Are the interrupts *that* fast? KHz, sure, but being able to control time to that resolution? They have to be either relying on the instruction speed of the processor to do a delay (noop loop) or sending a signal to a delay circuit, don't they? Or maybe I just don't have enough faith in the hardware...

I guess if the time is available on a port a tight loop with inportl or its moral equivalent could do it. The clock speed is what, a few MHz?

Ether 05-05-2012 20:08

Re: Non-FRC Motor Controller?
 
Quote:

Originally Posted by rbmj (Post 1167301)
They have to be either relying on the instruction speed of the processor to do a delay (noop loop) or sending a signal to a delay circuit, don't they?

I'm not saying this is the way it's done, but there is a third option. Most microcontrollers have a readable MHz system clock. Read the clock, turn Q1 off, read the clock until 2us have elapsed, turn Q2 on.



rbmj 05-05-2012 20:38

Re: Non-FRC Motor Controller?
 
The way they've drawn the arrows in Figure 4-4 makes it look like they're allowing current to flow through the MOSFET when source is more positive than drain. Doesn't the drain have to be more positive? It seems like even if Q2 is on it would only allow one way current (ignoring the diode - but they don't show flow through the diode...)

Ether 05-05-2012 21:11

Re: Non-FRC Motor Controller?
 
Quote:

Originally Posted by rbmj (Post 1167314)
The way they've drawn the arrows in Figure 4-4 makes it look like they're allowing current to flow through the MOSFET when source is more positive than drain.

The collapsing magnetic field in the motor's coils induces a voltage drop across the motor. This voltage causes current to flow in the direction shown in the Figure. Under these conditions, Q2's drain voltage is negative wrt its source (ground), but the gate voltage is still positive wrt ground.



Alan Anderson 05-05-2012 21:27

Re: Non-FRC Motor Controller?
 
Quote:

Originally Posted by rbmj (Post 1167301)
All I'm saying is that the "DEAD_TIME" period is 2 us. Are the interrupts *that* fast?

The Stellaris isn't just a microprocessor. It's a microcontroller. It has dedicated timing hardware connected to output pins. The software can set up all the timing in advance and let the hardware do its job.

Ether 05-05-2012 21:41

Re: Non-FRC Motor Controller?
 
Quote:

Originally Posted by rbmj (Post 1167301)
All I'm saying is that the "DEAD_TIME" period is 2 us. Are the interrupts *that* fast?

As shown in the schematic on page 23 of the document I referenced earlier, the Jag uses an Allegro MOSFET driver chip to drive the H bridge. The 2us dead time is handled in that hardware1 and is configured with an external resistor.


1 see page1 column2 paragraph4


sjspry 06-05-2012 17:49

Re: Non-FRC Motor Controller?
 
If you've seen how you can control the intensity of an LED via the Arduino library's analogWrite() function, it is the exact same principle for controlling a motor. How this is usually done on a microcontroller involves a circuit called a "timer", included on the chip's die with the processing core, which the majority of microcontrollers have (in some form). Basically, it increments 1 on every timer clock cycle, which is derived from the system clock, but may be the system clock divided by 2, 4, 8, etc (there are some chips which include a frequency multiplier to drive a "fast counter", but we won't talk about those).

The more complex portions of the timer include hardware to automatically toggle a pin on or off when the timer reaches a certain value - therefore, you can have it running in the background, and if you set the pin to toggle on timer count 127, you will have about a 1/2 duty signal coming out of the pin it is toggling (assuming timer overflow at 255, which is common). There's also more complex functionality related to receiving an interrupt when the timer overflows, or recording the value of the timer when a pin changes state, etc. But we just care about the automatic pulse generation.

You can, basically, drive a MOSFET directly from the pin of a microcontroller. However, it is not ideal. A MOSFET works solely on charge potential on the gate (switching pin) of the device. This means no current flows into or out of the gate pin... long story short: it is a capacitor. When you turn the signal to the gate from "off" to "on" (and to some extent the other direction too), it spends time somewhere in between full on and full off as the microcontroller pin must overcome the gate capacitance - this is bad, because when it is in this stage current still flows through it, but the MOSFET has appreciable resistance and dissipates energy as heat.

What does this mean for you? You want to change states as little as possible. Someone mentioned the Victors switching at roughly 15kHz, I think the Jaguars switch at 30kHz. That is actually pretty fast. PWM frequencies as low as 120Hz can be used (and I think that is the frequency which older Victors used).

Do you really need to consider these things? Maybe, maybe not. I made an H-bridge out of discrete MOSFETs, and it runs cool. If you are worried you can buy MOSFET driver chips or MOSFETs which contain their own drivers, that's really all the extra circuitry you'd need.

Al Skierkiewicz 07-05-2012 08:29

Re: Non-FRC Motor Controller?
 
Victors switch at 150 Hz while the Jags switch at 15 kHz. This is simply a design choice between the two manufacturers. The lower switching frequency gives better low speed power but sacrifices linearity over the power range. The higher switching frequency interacts with the motor inductance to give a more linear response over the entire power range but suffers at low power. The FETs used in the Jaguar have slightly less "ON" resistance so in theory should run a little cooler, the Victor has three FETs per leg vs. the two used in the Jag.

The MOSFETs used in the Jaguars are driven by a high current gate driver capable of 2 amps of gate drive.

Ether 07-05-2012 08:45

Re: Non-FRC Motor Controller?
 
Quote:

Originally Posted by Al Skierkiewicz (Post 1167663)
The lower switching frequency gives better low speed power

What do you mean by "better power" in this context.



Al Skierkiewicz 07-05-2012 08:57

Re: Non-FRC Motor Controller?
 
More current per pulse is applied to the motor during the lower throttle values at the lower switching frequencies.

dtengineering 08-05-2012 01:05

Re: Non-FRC Motor Controller?
 
I also seem to recall that a lot of the heat produced from a transistor in a PWM application comes from the time when the transistor is transitioning from ON to OFF... when it is fully on, it doesn't give off much heat because the voltage drop across it is fairly low, and when it is fully off it doesn't give off much heat because there is essentially no current flowing through it... but the transition time involves current flow and voltage drop and while very brief is non-zero. Thus a high PWM frequency could lead to increased heating relative to a lower frequency. The PWM frequency needs to be matched to the transistors that are doing the work... faster transistors can handle higher frequencies.

Its easy to manipulate the duty cycle at a constant frequency, but it seems that it could make sense to shift PWM frequencies "on the fly" as well as duty cycles in order to get the best of both worlds when it comes to speed controller response....

Chuck McManis, a BattleBots veteran, has presented some well-written information on speed controllers and MOSFETs on his site:

http://www.mcmanis.com/chuck/Robotic...sc2/index.html

Robot Power has some interesting designs, including schematics,

http://www.robotpower.com/

Which led me to an interesting part that I'm looking forward to trying out:

http://www.infineon.com/dgdl/BTN7960...17642084e76a7c

If I recall they are about $5/each on Digikey and throttle 30A easily when simply hooked up to a PWM source (PIC, Arduino... even a good old 555 timer should do it...) Mind you, as Chuck points out in his article about FETs, just because the silicon on the chip can handle high current doesn't mean it's package or your circuit board can!

Jason

Gdeaver 08-05-2012 07:54

Re: Non-FRC Motor Controller?
 
The BTN7960 and 7970 are nice chips. Cost has gone up. When you look at the cost for some of these motor drivers, the jag and vic appear to be a bargain.

Al Skierkiewicz 08-05-2012 12:43

Re: Non-FRC Motor Controller?
 
Jason,
In the Victor, the series resistance of three FETs in parallel is 4 mohm. At 100 amps that would equate to about 80 watts total device dissipation, or 12.6 watts at 40 amps. The FETs used in the Jag are lower on resistance but there is only two of them now. At 40 amps, about 6.4 watts at 100 amps, 40 watts.

dtengineering 08-05-2012 22:07

Re: Non-FRC Motor Controller?
 
Those are some interesting specs on the Jag and Victor, Al... I know that once we tried the Jags in our drive system our drivers wouldn't let us go back to the victors... the fine control response was just that much better. That response was due to the high PWM fequency, but I hadn't looked into just how much more efficient the new FETs were... that is quite an impressive difference... I guess they can switch as often as they want and still run cooler than the victor.

However as to the original poster's request for information on non-FRC speed control options... there are lots! Check out RobotShop, or any of the online robotics vendors... ROBOT or SERVO magazine... or take a look at the end of the BTN7960 datasheet listed above... if you can make a circuit board and program a microcontroller you should be able to build a decent speed controller for less than $20 that should easily handle the power requirements for a mid sized robot.... and without many of the hassles that come from building the control from "scratch".

Jason


All times are GMT -5. The time now is 05:56.

Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi