Is a motor controller essentially an inverter? Amp reading accuracy

harrisonpatm

10 kW
Joined
Aug 8, 2022
Messages
751
Trying to get my head around the battery amperage coming from my motorcycle. Pure sine wave inverters pull varying amounts of amperage from a battery to simulate sine wave. And that this may affect amp readings, because the actual amp draw may experience peaks of, say, 40% more than what's being read.

I have two ways of reading battery current. I have my JKBMS Bluetooth app that shows amp draw digitally. I don't know for sure, but I assume it's via a hall shunt within the bms, and the readings refresh 3-5 times a second. Not great, in my opinion. Plus I don't like to have my phone out while riding. In addition, I also use an old-school analog ammeter with a needle gauge on my instrument panel, which uses a shunt on the negative connection between the battery and the controller. I like this because the refresh rate is continuous, I can immediately see amps rise when I throttle up or climb a hill.

Trouble is, on the occasions when I use both my phone and ammeter on short rides to diagnose something, i tend to see some battery amps peaking higher than what the analog ammeter is showing. This concerned me for a bit, I didnt like like idea that one of my instruments was that inaccurate. Then I realized that the BMS was always the higher reading, and it was showing it in peaks, usually around 40 percent of what the ammeter read. Then dropping off.

So my question is, is a motor controller basically an inverter? If so, I would guess that the higher amp readings that I occasionally get from my BMS are actually the peak current "waves", which are like snapshots of the actual variable amp draw that the controller is pulling off the battery, because the BMS is only refreshing a few times a second. And since my needle analog amp gauge refreshes continuously, it can't show those peaks, but is better at averaging out the amps being pulled.

For my birthday this year, I need to gift myself a dc clamp ammeter, then I can clamp one of the battery wires during a ride and have a 3rd way of checking amps. Until then, does my theory sound somewhat accurate? Thanks in advance.
 
Regarding the first sentence of your thread title " Is a motor controller essentially an inverter?", yes.

This affects what current readings you get on each side of the inverter (source vs load), but doesnt' really make much difference to the accuracy of the readings--that's up to the metering method and device.

harrisonpatm said:
Trying to get my head around the battery amperage coming from my motorcycle. Pure sine wave inverters pull varying amounts of amperage from a battery to simulate sine wave. And that this may affect amp readings, because the actual amp draw may experience peaks of, say, 40% more than what's being read.
Depending on the refresh rate and sensitivity of the ammeter, significant peaks may be missed, or even falsely generated.

A digital one with it's own shunt may have multiple refresh rates that interact--it may have a sampling rate for the shunt, and one for processing the sampled readings, and another for displaying the results. If the interactions and smoothing math it uses work out wrong, it may show current that doesn't exist at certain times, though it's usually just missing current that does.

A system that sends a reading over a serial connection (wireless or otherwise) to a separate computer (phone, etc) running it's own OS that then runs an app to display the data has yet more refresh rates, and each one interacts with the others and lengthens the time between displayed readings. (even if the reading appears to change continuously on the display, it may not be based on present-time data, or in some cases even real data, if it averages the incoming data to smooth out missing packets, etc).


An analog meter is more continuous, but may still not respond instantly to peaks, since the meter movement itself has inertia and physical resistance to movement from it's return spring, so it may miss short spikes of current. It's less likely to miss significant spikes than the digital meter is, however, unless it is a high quality digital meter with high sampling rates and streamlined refreshing thru the whole path to the display (with a direct display built into it, not a remote one running on some other device, which will always have significant pipeline delays that may vary depending on device system cpu/etc load).


Some controllers have battery and phase current measurement that is externally visible/accessible, but it's usually via an app via BT so you run into the same problems as anything else displayed this way, unless it also supports "offline" logging/displaying of the actual raw data, unprocessed by the display smoothing/etc system.



I have two ways of reading battery current. I have my JKBMS Bluetooth app that shows amp draw digitally. I don't know for sure, but I assume it's via a hall shunt within the bms, and the readings refresh 3-5 times a second. Not great, in my opinion. Plus I don't like to have my phone out while riding. In addition, I also use an old-school analog ammeter with a needle gauge on my instrument panel, which uses a shunt on the negative connection between the battery and the controller. I like this because the refresh rate is continuous, I can immediately see amps rise when I throttle up or climb a hill.

Trouble is, on the occasions when I use both my phone and ammeter on short rides to diagnose something, i tend to see some battery amps peaking higher than what the analog ammeter is showing. This concerned me for a bit, I didnt like like idea that one of my instruments was that inaccurate. Then I realized that the BMS was always the higher reading, and it was showing it in peaks, usually around 40 percent of what the ammeter read. Then dropping off.

Most likely the BMS shunt is a shunt resistor (probably a typical manganin shunt), but it could be a hall based shunt if it is a very high current device in the hundreds of amps. Because of all the steps between measurement and display, it's much less likely to be accurate at any instant vs the analog meter, and because of the way sampling and averaging may be done in it's software, and/or within the app displaying the data it is sent, it may show peaks and dips that don't even exist in the real current.


I've found that of the "wattmeters" I've used, the Cycle Analyst has been the most accurate and the best at catching peaks--even if I do not see them on the display itself, it does store the highest peak within the Amax reading for any trip (assuming the trip reset is used each time). It can also be used with an external serial-data recorder (like the Cycle Analogger) to keep a log of the readings it takes, which may be useful in diagnosing issues on a ride that cant' be measured on a test stand, and you can't see on the ride because you're watching the road. It's not a super fast refresh rate, but it's enough to test and verify and even troubleshoot most of the problems I've run across over the years.


The old Fluke77-III multimeter I've got is the most accurate of all the meters, and it does catch some pretty short current peaks, but it only reads up to 10A, so it's not useful for most ebike traction-battery current measurements under real riding loads.

A good quality logging / graphing ammeter or multimeter would be the best to use to see very short peaks, but this is likely to run in the hundreds of dollars minimum.
 
amberwolf said:
An analog meter is more continuous, but may still not respond instantly to peaks, since the meter movement itself has inertia and physical resistance to movement from it's return spring, so it may miss short spikes of current. It's less likely to miss significant spikes than the digital meter is, however, unless it is a high quality digital meter with high sampling rates and streamlined refreshing thru the whole path to the display (with a direct display built into it, not a remote one running on some other device, which will always have significant pipeline delays that may vary depending on device system cpu/etc load).

Don't get me wrong, I read your whole response, but of course this is what I'm gonna latch on to, because I prefer having an analog solution over a super expensive, but accurate one. Variables aside, do you think I can trust the average amp draw that I'm seeing on the analog meter? Doesn't need to be accurate, I just want to know that it's accurate enough to show me when I'm pulling way over 200 amps.

Despite fooling around with all these components, I'm a sucker for an analog solution over anything else.
 
harrisonpatm said:
So my question is, is a motor controller basically an inverter?
Yes. However, the current reading you are seeing is likely not due to an "inverter peak" since most inverters are three phase and the three phases sum to a constant value. The Bluetooth meter is simply sampling in a narrower time window so captures higher peaks. Your analog meter averages current and so misses the peaks.
 
harrisonpatm said:
Variables aside, do you think I can trust the average amp draw that I'm seeing on the analog meter? Doesn't need to be accurate, I just want to know that it's accurate enough to show me when I'm pulling way over 200 amps.

Probably. To find out for sure, you'd need to compare it to another meter that you *know* is correct, or setup a test that causes a known calculable current (based on a known voltage across a known resistance) to flow thru it and see what it says it is.



Despite fooling around with all these components, I'm a sucker for an analog solution over anything else.
So am I. ;)
This sees occasional use, but not generally portably; it's a little large.
file.php


Wish I still had this thing on the cart (and it's sibling on the bottom shelf, not shown):
2QDMotorTestSetup[1].JPG
 
Alright then, you brought up analog solutions, and my next question is still on topic, in a way.

I can make a battery from a number of different sources. I can rewind copper and rearrange magnets to make a motor. Not a good one, but I've done it. But if my controller fails, or if I don't have access to a controller, I don't have the technical know-how, programming knowledge or parts to make a BLDC motor controller. Yet. So, what's a hack solution to taking battery power and using it to spin a BLDC at variable speeds, using off the shelf components? Nothing fancy, nothing approaching the viability of a 600-amp programmed Kelly, Fardriver or Curtis controller. Just basic.

I guess you could say that I'm curious what a motor controller's analog analogue would be. Pun very much intended.

Edit: alright, I googled after posting, mortal sin. Who knows how to build a commutator?
https://www.youtube.com/watch?v=w3QW0ABfQXw
 
harrisonpatm said:
Alright then, you brought up analog solutions, and my next question is still on topic, in a way.

But if my controller fails, or if I don't have access to a controller, I don't have the technical know-how, programming knowledge or parts to make a BLDC motor controller. Yet. So, what's a hack solution to taking battery power and using it to spin a BLDC at variable speeds, using off the shelf components? Nothing fancy, nothing approaching the viability of a 600-amp programmed Kelly, Fardriver or Curtis controller. Just basic.
Well, if you want something technically uncomplicated, though using bulky parts, you use a brushed DC motor that physically turns a BLDC motor whose phase wires are connected to another BLDC motor's phases.

Forcing the first BLDC to turn causes current to flow from it to the second one, which then turns.


Every motor in the series must be capable of at least the amount of power you want out of the final stage, which makes it a cumbersome bulky setup, but it doesn't require any electronics. ;)


To variably power the brushed DC motor without a controller, you can use what is essentially a (very large and heavy, for the current required for this particular purpose) big wirewound potentiometer, sometimes used for old stage lighting controls, or varying the output of very old large high-current DC power supplies. (there are also versions that use Variacs / autotransformers to vary teh AC input--those won't work for this purpose, it has to be resistive and not inductor/transformer as those only work on AC).

It's very power wasteful, as all the power not being used to drive the motor is wasted as heat within the giant pot's resistive windings.

Or you can use a battery that is in several separate series sections, and just tap off the voltage you want at that moment with a (really big) rotary switch.

It's much simpler and cheaper to use a brushed motor controller to drive the first motor, and control it via a simple throttle, but it's definitely *possible* to do it without that. How well it works for any particular application might be another story. ;)

It just wont' all easily fit on a typical bike; it's going to take up space and weight you ideally would be using for battery.
 
Back
Top