Measure the back emf of a bldc that accounts for timing changes - Oscilloscope - Page 1
Forum section: electronics / beginners

author: trilerian
author_rank: Regular Contributor
timestamp: May 04, 2023, 01:09:15 pm
content: I am a very new owner of an oscilloscope, as in it just arrived yesterday. So the first thing I did with it, (aside from calibrating the probes) is to measure the bemf of a slave bldc motor. A little background. I am into RC cars and racing them. My main focus is stock and mod 1/10 indoor touring cars. I have lots of gadgets for taking all sorts of measurement of these motors but I am wanting to test the validity of some. When we get motors they don't come with a Kv value, they come as simply the windings. Stock for my class is a 21.5 540 can size sensored bldc motor. I have a tool called a motolyser that measures the sensor positions, rpm, Kv, current, and phase current. It gives a test voltage used and the Kv is simply the rpm divided by the test voltage. My understanding is the Kv should be calculated using the bemf, so I am wanting to measure the bemf and compare to motolyser.I created an experiment to measure the back emf of a slave motor coupled to a motor being driven by the motolyser. I used a tachometer to verify that the rpm that the motolyser was reading was accurate. I then used the rpm value and divided by the rms voltage seen by my scope attached to the slave motor. After that I ran the slave motor on my motolyser and compared the Kv values. I thought I had a win, but I overlooked that we can adjust the timing on the can and my test will always provide the same results no matter the can timing. Whereas the motorlyser will have different results based on the timing.So I need a way to measure the back emf of a motor being controlled and running by a controller, and I would like to see it on my scope. From the reading I have done, it looks like I will have to use 2 channels and invert channel 2 and do a math calculation. I am still a little hazy on this. But even then, how can I isolate the bemf from the supply?

author: ace1903
author_rank: Regular Contributor
timestamp: May 04, 2023, 02:06:56 pm
content: When you are trying to measure BEMF of some motor , you need to look at it as generator. So controller is not needed for the measured motor.You can connect ground and signal from the probe to any two leads of the motor and spin the rotor by hand.Scope should show some sinusoidal signal in mV range(when driven by hand and relatively slow).When connected to motor that is driver it will give voltage range in volts.You need to use correct formula depending if you are measuring phase to phase voltage or if you can reach neutral(star) point of the motor and to measure single phase voltage.

author: trilerian
author_rank: Regular Contributor
timestamp: May 04, 2023, 02:24:09 pm
content: Quote from: ace1903 on May 04, 2023, 02:06:56 pmRight, but the emf will stay the same no matter how you change the timing on the motor. Physical timing on the can. I want to see the emf affected by the timing, and I don't think I can get that from running it as a generator.

author: ace1903
author_rank: Regular Contributor
timestamp: May 04, 2023, 06:00:29 pm
content: BEMF is related with the speed of rotation only and it kind of "virtual" value.With making longer duty cycle(I believe this PWM duty factor you are calling advanced timing) you give more time current to grow and to make more torque which at the end will make higher speed.With fixed power supply current can not grow to much since it is limited by the resistance of the switching devices and coil resistance.If you need higher speed you need to use power supply with higher voltage.So Kv is practical value that you can use to select correct motor for given use.I guess if you have boat you need lower RPM with higher torque and if you have plane you need higher speed with little bit lower torque.If you want to measure BEMF in circuit you need to measure resistance of the mosfets and coils and currents and then deduce BEMF which is very unpractical.If you want to see what PWM duty cycle does, then you need to measure phase currents with precise current clamp.

author: trilerian
author_rank: Regular Contributor
timestamp: May 04, 2023, 06:46:13 pm
content: With our motors there is the ability to physically change the location of the hall sensors that detect the rotor position. You can advance the sensor position which will increase the Kv of the motor and reduce torque. The effect it has is better efficiency in the higher rpm range vs lower, or vice versa depending on what you want. But the point is that those sensors make no difference when testing the motor as a generator. So while I may turn my motor from a 2500 Kv to 2800 Kv by increasing the timing it doesn't change the bemf when ran as a generator. Our rules do not allow us to use different voltages to increase the output of motors beyond the pwm capabilities of the esc at 2s. We get to use 2s lipo and that is it. Now mod you can use electronic timing in the esc, but with stock we can only use the can timing.Anyway, I found a video on popular mechanics that showed what I was looking for. He attached a probe from 3 channels to each phase of the motor and had a resistor from each phase all attach together which he connected a ground probe to. But how high do I need to go for a value on the resistors? Would 10k be high enough? Is there any danger to the equipment from this experiment? Since everything that is measure is run off a battery I assume I can't hurt anything.EDIT: My biggest fear is shorting my scope or the esc. If I am pretty much free to probe anywhere in the system because it is floating then I can experiment to see what I can see. I watched the don't blow up your scope video online somewhere and it seems that I should be good with this system.

author: ace1903
author_rank: Regular Contributor
timestamp: May 04, 2023, 07:31:39 pm
content: I think that all this advance of the sensor does is that gives more time current to grow since switching point are little bit earlier at at cost of motor efficiency and heating.Since effect causes same effect as lowering Kv, sellers marketing it as adjustable Kv.You can put something like 0.01ohm in series with one phase and measure voltage drop on it with the scope set on mV range.You should see larger area under current waveform when switching is advanced(at constant speed and load).

author: trilerian
author_rank: Regular Contributor
timestamp: May 04, 2023, 08:05:07 pm
content: Can I accomplish the same thing by measuring between two phases if I know the stator resistance? 2 phase resistance on this particular motor is 0.0544 ohms. If not I guess I can cut a piece of 12awg wire until I get it to 0.010 ohms. The lowest value resistors I have are 0.10 ohms.

author: Benta
author_rank: Super Contributor
timestamp: May 04, 2023, 08:58:35 pm
content: In my opinion, you're overthinking this.As your say yourself, the BEMF is the same in all cases. The fine tuning of the Hall sensors (lead angle) is to optimize for torque or RPM, and that's motor dependent and can only be done with mechanical output shaft measurements. The problem is, that your Kv will vary with lead angle, so you'll basically have to plot lead angle vs. RPM (at some fixed voltage) to get a lead angle vs. Kv graph. From there you can take it further to lead angle vs. available torque, but then we're into dynamometer measurements.Simple trial-and-error in the application would be easier.

author: trilerian
author_rank: Regular Contributor
timestamp: May 05, 2023, 12:09:48 pm
content: Actually, I have a flywheel dyno and essentially what I do is a 100% full run for 6 seconds. I get all sorts of useful info from it but there are some limitations. Changing the can timing will change where peak power is made in the rpm range and it will change the the overall rpm of the motor. I generally try to maximize peak power as to where I set the timing and then use the rpm range to figure out the gear ratio I need to use.But this thread isn't about trying to find the optimal can timing. I'm trying to see the bemf on a scope. While that was easy setting the motor up as a generator it is a little harder when you are measuring at the motor leads when the motor is running. What I really wanted to do was verify the Kv value that one of my other tools is giving. But I think I have my answer, it derives the Kv value from the input voltage, not the bemf.

author: trilerian
author_rank: Regular Contributor
timestamp: May 05, 2023, 01:38:34 pm
content: Off topic to my original post. How can I go about measuring the phase current? Why? Because my dyno uses the inline current from the battery and gives inflated efficiency values because of it. I would like to get the phase current. These values can be anywhere from 1-400 amps I think. ESC is rated for 160 continuous and 1200 burst I think.

author: johansen
author_rank: Super Contributor
timestamp: May 05, 2023, 06:05:50 pm
content: buy a lem current sensor off ebay for a few dollars. power them from two 9v batteries, and you read the current as a ratio. many of them are 1000:1 ratio, so 1 amp of current generates 1ma of output current across a 10 ohm resistor, so 1 amp = 10 mv. near perfect isolation and you don't have to worry about blowing up your scope.many of them have 120khz bandwidth and operate on a +/- supply, this one is 240khz and runs from a single 5v source, so 2.5v is zero amps... read the datasheet before buying.https://www.ebay.com/itm/175304255020regarding the back emf, just spin the motor with a drill at 1200 rpm or so and measure the frequency and voltage on your scope.most motors are very heavy on the magnets and it takes a lot of extra current flowing in order to get more rpm out of them. (essentially you are weakening the magnets, but not permanently) and it takes a lot of amps to do that.

author: trilerian
author_rank: Regular Contributor
timestamp: May 05, 2023, 06:51:31 pm
content: Thanks for the info on the lem sensor. But I actually want a sensor that can connect to my dyno board that can give output with the rest of the measurements.As to spinning the motor, yeah, I did that before posting my OP.