Update: Subsequent to posting this answer, I switched to a Melexis MLX91206 linear Hall effect current sensor, with the current to be measured being passed through a coil with the sensor at its core. This permitted measuring currents down to 100 mA, with isolation. See this answer for more details.
One of my projects required high side current sensing of up to 500 mA full-scale at a voltage of 24 volts unregulated. We could not find any integrated device with isolated current sensing like the Allegro ACS parts for that current range.
A non-isolated solution using Analog Devices AD8217 Current Shunt Monitor ($2.44 single unit at Digikey) was chosen, based on this article which provided useful insight into the several options we were considering.
- Disadvantage: Unidirectional current sensing, not suitable for AC
- Advantages: Minimum part count, and device contains internal LDO so unregulated Vcc was fine.
For sensing bidirectional current flow we did consider using an AD8210 Bidirectional Shunt Monitor (nearly $5 each!), but eventually just went with current sensing before the coupling capacitor stage. This does introduce some error, but it was approximately linear error within our range of interest, hence eliminated in software.
An useful background reference was Linear's Current Sense Circuit application note.
Also, if someone does identify, or introduce, a hall effect isolated current sensor like Allegro's range, but for low currents, we would happily change over to it.
Torque is directly proportional to current. If the current to the motor is limited, then it's torque will be limited. Whether it can start with reduced torque is only something you can say. It depends on what the torque versus speed profile of the load looks like.
If you don't allow the motor to produce full torque on startup, it might not spin at all, therefore trying to draw the startup current forever. It is not a good idea to plan a motor controller that can only deliver the stall current for a short time. If not, you should have some mechanism in there to shut the motor off after the full current times time limit has been reached. You can do some computation in the processor to simulate temperature in both the motor and the driver, and shut things down when you think either gets too hot. You can also outright measure temperature, but due to lag in getting heat from where it is produced to the sensor, it may not tell you of a over temperature condition in time to prevent damage.
Best Answer
A Hall cell insulated and pressed against the current carrying conductor will allow current to be monitored.
You will get a few zillion ideas from these images - each is hot linked to a page.
There are MANY hall sensors available which would do this job.
The items below are far from the cheapest but are better optimized for this task than many due to integrated "magnetic concentrators".
Digikey will happily sell you the devices below
Good article here
Available here
Datasheet here for one version - SOIC8.