Yeah PTC is another option. Or a fuse. But I won't be able to easily change the current limit, for example. This is a circuit I would like to set up on a breadboard quickly when I need them, so I'll preferably not have to rely on specific component values (unless I stock a big range of PTCs).
I had to build my own motor driver because 1) it's brushless (not brushed DC, where you just apply a voltage across them - for brushless you need to supply 3 phase power), and 2) it draws about 10A.
In your circuit. I am not sure why you need the Rsense resistor. If I understand your circuit, you're forcing the base current to remain fixed so that it will limit the amount of current flowing between the emitter and collector. The pair of diodes is to limit the voltage. Should a higher Vcc be used the pair of diodes would clamp the voltage and limit the base current. The Rsense resistor is not providing any feedback. If you want a feedback current limiter you need to use a something like a TL431 adjustable zenor (replacing the pair of diodes). The TL431 adj. pin is connected to the trace between the NPN emitter and the Rsense transistor so that as the voltage drop across the Resense resistor increases, TL431 zener voltage falls reducing the NPN base current. That said, you may run into problems running a motor that presumably has moderate current levels. The NPN transistor will act as a resistor dispating a lot of energy as heat, and has the protential of failure, if it gets too hot. BJT have a negitive thermal coefficient, meaning that the hotter they get, the more current they will pass. For instance an NPN transistor at 25C with a static base current might permit 1A to pass. At 150C it might permit 2A to pass. For example see this datasheet for the 2N3055 on page 3 showing the hfe plot at -55C 25C and 150C. http://www.onsemi.com/pub_link/Collateral/2N3055A-D.PDF
Not quite. When the voltage across Rsense increases to 0.65V, the 2 diodes (one of them to cancel out the 0.65V drop in base-emitter) will start to conduct, and turn off the transistor by taking away the base current, hence limiting current (or in other words, limiting the drop in Rsense to 0.65V).
It's not usually a good idea to design with the precise gain of the transistor, because the gain changes with a gazillion things. It's usually a better idea to design for the worst case gain (which can be max gain or min gain, depending on application).
This current limiter won't be there when I connect the motor. This is just for development/testing, in case a coding mistake causes a short in the MOSFETs.
The "real thing" will be run off a lithium polymer battery that can supply about 70A.