R/C Tech Forums

R/C Tech Forums (https://www.rctech.net/forum/)
-   Radio and Electronics (https://www.rctech.net/forum/radio-electronics-137/)
-   -   "Load Master" (https://www.rctech.net/forum/radio-electronics/1113686-load-master.html)

trilerian 06-15-2023 07:34 AM

"Load Master"
 
As requested I am posting this in the electronics sub forum.

I am have built a load tester "Load Master" thanks Bsthetech . The Load Master is a simple design, the idea is to put a load on a motor under test when using a Trinity Motolyser 2 or SkyRC motor analyser. The test motor is coupled to a slave motor which then has resistors connected to the phases and then wired together. I do not take credit for the idea, I've seen it while researching dyno alternatives in the many threads and forums I have been learning through. What I have done is put in the leg work to test this with the Trinity Motolyser 2 and the SkyRC Motor Analyzer. I have also designed a 3d printed motor mount that will hold the motors and attach to the analyzer without alligator clips or having to solder anything to the tabs. You can still solder to the tabs of the motors if you want, you just need to take off the spring clips and the top cover of the mount.

The unit will also work with an R1 digital 3 esc and wifi module.

Hobbywing support response for the Tunalzyer:

Tech Support Dept (HOBBYWING)

Jun 14, 2023, 10:42 AM PDT
Hello,

12 amps is what we see most often as the max. There are some variances, but typically it's right around there when the safety kicks in. Made for no load testing more so than "dyno" type usage.



Here is a pic of a completed unit.
https://cimg9.ibsrv.net/gimg/www.rct...782eb8924f.jpg





Here is a pic of a 13.5 under test by a Motoyser II coupled to a USGT motor attached to 2 ohm 100 watt resistors.


https://cimg6.ibsrv.net/gimg/www.rct...df563cd9fd.jpg



Here is a pic of the same 13.5 being driven by the SkyRC analyzer, coupled to the USGT motor and connected to 1 ohm 100 watt resistors.

https://cimg9.ibsrv.net/gimg/www.rct...2207c01a7c.jpg


My ultimate intention is to make a unit that will drive the setup without the need for a external motor controller. However that is going to take a bit. More realistically though I am designing an Arduino interface that can read the RPM, current draw, and voltage of the system while connected to an ESC. Below is my prototype.

https://cimg9.ibsrv.net/gimg/www.rct...cc03189434.jpg


And finally, here is my current schematic for the design.
https://cimg7.ibsrv.net/gimg/www.rct...a61604839f.png



If people are curious, I can go through how I am calculating current, voltage, and rpm. I would also like to add sensor angles to this at some point.

Roelof 06-15-2023 07:47 AM

Well, with my tiny knowledge of electronics I think you will not read any voltage :sneaky:

trilerian 06-15-2023 07:52 AM


Originally Posted by Roelof (Post 16012318)
Well, with my tiny knowledge of electronics I think you will not read any voltage :sneaky:

Voltage is being read on Pin 1 through the voltage divider in the circuit...

I have code setup in the arduino that uses the voltage divider formula to return the correct voltage.

Here is a pic that has everything...

EDIT: My schematic is off, sorry...

https://cimg6.ibsrv.net/gimg/www.rct...e6b5b999eb.jpg


trilerian 06-15-2023 07:57 AM

Fixed the schematic...


https://cimg0.ibsrv.net/gimg/www.rct...da9c9c2ef8.png



trilerian 06-15-2023 08:14 AM

Here is a pic comparing RPM and Current from my prototype to the Motolyser. I just got the voltage setup last night so I haven't had time to tweak the code yet, so no comparisons for that.

https://cimg1.ibsrv.net/gimg/www.rct...069a72b424.jpg

trilerian 06-15-2023 08:28 AM

Here are some pics of the output of the current reading on my scope. This has been fun, lol.

https://cimg2.ibsrv.net/gimg/www.rct...874e38fb26.png
https://cimg3.ibsrv.net/gimg/www.rct...744d50505e.png
https://cimg4.ibsrv.net/gimg/www.rct...340afeda72.png
https://cimg5.ibsrv.net/gimg/www.rct...4a295a627d.png
https://cimg6.ibsrv.net/gimg/www.rct...1cdaff62d0.png
https://cimg7.ibsrv.net/gimg/www.rct...bb133546e9.png


The RPM sensors are so much easier.

https://cimg8.ibsrv.net/gimg/www.rct...35ef157f0e.jpg



Bsthetech 06-15-2023 09:05 AM


Originally Posted by trilerian (Post 16012312)
As requested I am posting this in the electronics sub forum.

I have built a load tester "Load Master" thanks Bsthetech .

No problem. I figured it sounded better than “Loader McLoaderface”.

Bsthetech 06-15-2023 09:09 AM

I plan to mainly use it with my 1s 17.5 motors. Should I choose a different load for the slave motor?

trilerian 06-15-2023 09:37 AM


Originally Posted by Bsthetech (Post 16012350)
I plan to mainly use it with my 1s 17.5 motors. Should I choose a different load for the slave motor?

I think the 1 ohm resistors will be fine for 1s 17.5. If you are using a 21.5 for the slave, then the bemf will be around 4.5-5.0v. Power dissipated by the resistor will in the ball park of 20-30 watts. You could go down to 0.50 ohm 100 watt resistors for more of a load. Power dissipated will be around 50 watts. These are rough guestimates, but should be close.

EDIT: Are you going to be using a 1s for testing? The above statement is based on using a 1s.

gigaplex 06-15-2023 03:00 PM

What are you ultimately trying to measure here? You'll be able to measure electrical power in, but you won't be able to measure mechanical power out.

Roelof 06-15-2023 03:17 PM


Originally Posted by gigaplex (Post 16012451)
What are you ultimately trying to measure here? You'll be able to measure electrical power in, but you won't be able to measure mechanical power out.

Basically he can measure the mechanical power. When using a 3 phase rectifier making DC he can easily read the current and voltage generated by the driven motor. Comparing the powers on both sides you can determine the efficiency.

gigaplex 06-15-2023 05:06 PM


Originally Posted by Roelof (Post 16012455)
Basically he can measure the mechanical power. When using a 3 phase rectifier making DC he can easily read the current and voltage generated by the driven motor. Comparing the powers on both sides you can determine the efficiency.

Current and voltage generated by the driven motor doesn't give you mechanical power, without knowing the efficiency of the conversion. And that conversion efficiency is not linear.

trilerian 06-15-2023 05:21 PM

R1 Wurks can say it better than I can.
YouTube video

gigaplex 06-15-2023 07:30 PM


Originally Posted by trilerian (Post 16012487)
R1 Wurks can say it better than I can.
YouTube video

In that video they didn't measure the load output, they just had it as a generic load and to hold the motor in place. There was no explanation of how they're measuring the output or how they're choosing the resistance for a proper equivalence load. Just lots of ums and ahs about using it to choose out of 2 motors which one is best. The only data used in this video was input current and output RPM vs timing endbell. And given how low the input current was in their data, the slave motor doesn't appear to have been putting much of a load on it.

trilerian 06-15-2023 08:18 PM


Originally Posted by gigaplex (Post 16012525)
In that video they didn't measure the load output, they just had it as a generic load and to hold the motor in place. There was no explanation of how they're measuring the output or how they're choosing the resistance for a proper equivalence load. Just lots of ums and ahs about using it to choose out of 2 motors which one is best. The only data used in this video was input current and output RPM vs timing endbell. And given how low the input current was in their data, the slave motor doesn't appear to have been putting much of a load on it.

The idea with this is to put a load on your test motor. Why is that important, I don't know, go read through the many posts that state how motor analysers give unloaded outputs and how they would be better if there were a load on them. But regardless, one of the things you can do is see how much of an rpm drop you have under certain loads. If you are looking for top speed down the straight use a lower load or higher value resistors. If you are looking for more pull out of corners use a lower value resistor for more load. Compare rpm drop from different timing settings. You can also do the same old test where you plot the rpm vs current draw for different timing and find where the current goes up with not much rpm gain. And you also have the benefit of knowing it was with a load.




gigaplex 06-15-2023 11:02 PM


Originally Posted by trilerian (Post 16012530)
The idea with this is to put a load on your test motor. Why is that important, I don't know, go read through the many posts that state how motor analysers give unloaded outputs and how they would be better if there were a load on them. But regardless, one of the things you can do is see how much of an rpm drop you have under certain loads. If you are looking for top speed down the straight use a lower load or higher value resistors. If you are looking for more pull out of corners use a lower value resistor for more load. Compare rpm drop from different timing settings. You can also do the same old test where you plot the rpm vs current draw for different timing and find where the current goes up with not much rpm gain. And you also have the benefit of knowing it was with a load.

Just putting an unknown load on it at a steady state RPM isn't that much better than running unloaded. How do you know what resistor value is appropriate? Why would you use less load to simulate the straight? That's when friction and aerodynamic drag is at its peak. Adding more load to the slave and seeing where RPM tops out doesn't actually tell you how quickly it accelerates.

An analyser has a lot of limitations due to being an unloaded test. But just adding an arbitrary load to the analyser and checking final RPM has most of the same limitations.

Roelof 06-16-2023 12:15 AM


Originally Posted by gigaplex (Post 16012477)
Current and voltage generated by the driven motor doesn't give you mechanical power, without knowing the efficiency of the conversion. And that conversion efficiency is not linear.

If you could calibrate the driven motor with several loads it is possible to get real numbers. Also if you slowly raise up the revs you can still make a dyno like power graph and if you take such a graph from both sides and put them over each other. There is still a lot of info created to work with.

gigaplex 06-16-2023 01:54 AM


Originally Posted by Roelof (Post 16012558)
If you could calibrate the driven motor with several loads it is possible to get real numbers. Also if you slowly raise up the revs you can still make a dyno like power graph and if you take such a graph from both sides and put them over each other. There is still a lot of info created to work with.

Yes it's possible to calibrate it, but you need a way to measure it in the first place to build that model. It's possible to build a dyno out of a slave motor but the math is a lot more complicated than using a flywheel. When I asked what they were trying to achieve, I was wondering if they were trying to make a dyno or just a loaded analyser.

Roelof 06-16-2023 02:44 AM


Originally Posted by gigaplex (Post 16012565)
Yes it's possible to calibrate it, but you need a way to measure it in the first place to build that model. It's possible to build a dyno out of a slave motor but the math is a lot more complicated than using a flywheel. When I asked what they were trying to achieve, I was wondering if they were trying to make a dyno or just a loaded analyser.

If you can learn such a setup and translate it to the perfect setting it will be better than setting a motor to the magic 6A on the tester.

trilerian 06-16-2023 05:21 AM


Originally Posted by gigaplex (Post 16012565)
Yes it's possible to calibrate it, but you need a way to measure it in the first place to build that model. It's possible to build a dyno out of a slave motor but the math is a lot more complicated than using a flywheel. When I asked what they were trying to achieve, I was wondering if they were trying to make a dyno or just a loaded analyser.

If you are trying to get actual dyno numbers out of the test motor, then yes it would be complicated. But if you are just trying to get relative numbers it isn't that difficult. The good thing about the slave motor is the timing it is set at doesn't make a hill of beans difference to the back emf, or voltage it generates at the phases. When we hook the resistors up to the slave motor in this fashion, the voltage will drop to 0 over the resistors giving us the ability to calculate the power dissipated by the resistors. You now have relative power to work with. But the end user doesn't really need this info, because it is all based on the rpm of the system. The rpm is what matters here. You can then plot the rpm at different voltage steps (throttle input). You can then compare this to different loads, or no load.

As to the load choice itself, my initial thought was to build my own analyser with built in motor controller. Well, that is a challenge, (one that I want achieve, but it will take a while). So I had to work with something that is out there in the wild. And I had a Motolyser so why not use that. The Motolyser is capable of up to 20a on the phases, which will translate to a lower number from the battery. So I needed to use a load that would stay under the current cutoff for the Motolyser.

I recommend the 1 ohm 100 watt resistors for higher turn spec motors like the 21.5 or 25.5. I recommend the 2 ohm resistors for 13.5 or 17.5. Also the choice of a slave motor makes a difference. Higher turn motors are better inductors, which also have a lower kv and will generate a higher voltage on the phases than lower turn motors. I actually measured the voltage on the phase of the slave using a USGT being ran by a 13.5. It was close to 13v! This makes the 1 ohm 100 watt resistor not a good choice here since you are dissipating nearly 170 watts. Short bursts are fine, but the resistors will get rather warm. I had an "oh duh" moment when I was first testing this and the resistors got up to 85* C.

When evaluating the above, you come to the conclusion that you can't make one load work for all motors. So I decided on a couple of values that would produce a noticeable load but would stay within the operating parameters of the controllers.

gigaplex 06-16-2023 06:03 AM


Originally Posted by trilerian (Post 16012580)
The rpm is what matters here. You can then plot the rpm at different voltage steps (throttle input). You can then compare this to different loads, or no load.

Careful with that assumption. Lowering the voltage will not be the same as maintaining the voltage at a reduced duty cycle. It won't simulate reduced throttle like you'll expect. Also, steady state RPM at 1/4 throttle for example doesn't really tell you much about how well it'll accelerate so I'm not sure what conclusions you'll hope to gain from such readings.


Originally Posted by trilerian (Post 16012580)
As to the load choice itself, my initial thought was to build my own analyser with built in motor controller. Well, that is a challenge, (one that I want achieve, but it will take a while). So I had to work with something that is out there in the wild. And I had a Motolyser so why not use that. The Motolyser is capable of up to 20a on the phases, which will translate to a lower number from the battery. So I needed to use a load that would stay under the current cutoff for the Motolyser.

I recommend the 1 ohm 100 watt resistors for higher turn spec motors like the 21.5 or 25.5. I recommend the 2 ohm resistors for 13.5 or 17.5. Also the choice of a slave motor makes a difference. Higher turn motors are better inductors, which also have a lower kv and will generate a higher voltage on the phases than lower turn motors. I actually measured the voltage on the phase of the slave using a USGT being ran by a 13.5. It was close to 13v! This makes the 1 ohm 100 watt resistor not a good choice here since you are dissipating nearly 170 watts. Short bursts are fine, but the resistors will get rather warm. I had an "oh duh" moment when I was first testing this and the resistors got up to 85* C.

When evaluating the above, you come to the conclusion that you can't make one load work for all motors. So I decided on a couple of values that would produce a noticeable load but would stay within the operating parameters of the controllers.


trilerian 06-17-2023 05:49 AM


Originally Posted by gigaplex (Post 16012586)
Careful with that assumption. Lowering the voltage will not be the same as maintaining the voltage at a reduced duty cycle. It won't simulate reduced throttle like you'll expect. Also, steady state RPM at 1/4 throttle for example doesn't really tell you much about how well it'll accelerate so I'm not sure what conclusions you'll hope to gain from such readings.

Are you being intentionally obtuse? You keep misrepresenting what the use of this is for. Of course you can’t measure acceleration. That is the change in velocity with respect to time. Nowhere in this system are we measuring time. Again, this is a relatively low cost unit designed to put a load on a motor to test.

If you want a Dyno there is one available for about $1000, and you will still need an esc and a computer to run the software. Oh wait, you have issues with that too…

Now if you have something constructive to say, then I welcome your input. But if you are just going to be a naysayer, then don’t bother.

gigaplex 06-17-2023 06:23 AM


Originally Posted by trilerian (Post 16012799)
Are you being intentionally obtuse? You keep misrepresenting what the use of this is for. Of course you can’t measure acceleration. That is the change in velocity with respect to time. Nowhere in this system are we measuring time. Again, this is a relatively low cost unit designed to put a load on a motor to test.

Did you miss the part where I was warning you that lowering the input voltage is not the same thing as changing the duty cycle? That's information you may need to get relevant data.


Originally Posted by trilerian (Post 16012799)
If you want a Dyno there is one available for about $1000, and you will still need an esc and a computer to run the software. Oh wait, you have issues with that too…

Where the hell did that come from? Why do you think I'd have a problem with an ESC and a computer?

trilerian 06-17-2023 08:12 AM

Here is a quick run I did with a Slot Machine 21.5.

https://cimg3.ibsrv.net/gimg/www.rct...f7dc731ec5.png

The spread sheet is available from R1 site.
You can see the RPM plot in blue. Look at how the rpm stops going up as fast when timing goes up. This doesn't happen when running the motor on the analysers without a load. RPM increases in a more linear fashion and you have to look at amp draw. Looking at this data, I would time this motor at 45*. And that directly compares to dyno runs I have made with the MiniPro dyno.

trilerian 06-17-2023 08:13 AM


Originally Posted by gigaplex (Post 16012808)
Where the hell did that come from? Why do you think I'd have a problem with an ESC and a computer?

You have an issue with the MiniPro dyno. You have argued its validity with me a few times...

Bsthetech 06-17-2023 11:24 AM

I plan to use an R1 Digital 3 ESC to show me real world rpm/amp draw/temps/gearing in my touring car, with that data I can then set an appropriate load on the slave to then allow me to plot timing/amp draw/temps in my basement to set my motors for my conditions. In the end will it make much difference? Who knows but it will be a fun experiment here in the winter when it rains non-stop and I need something to do. Hoping to learn something while I’m at it.

gigaplex 06-17-2023 03:58 PM


Originally Posted by trilerian (Post 16012832)
You have an issue with the MiniPro dyno. You have argued its validity with me a few times...

I questioned your setup because the low RPM part of the curve didn't look right. It looked like a soft start was being used. You confirmed you were doing a soft start. I never said the minipro was an invalid tool.

trilerian 06-20-2023 08:48 AM

I have come up with a board design using Kicad. I have never designed a board before and this is just a prototype. Eventually I will break out the 328p from an arduino and just have that with the required components instead of using a full nano. There will be some other changed as well, I'll probably end up using the ACS724 sensor instead of the big ACS772. Also I will try to reclaim space. My routing probably isn't optimal, but it should be fine for a prototype.

I still need to figure out all the requirements for where I choose to get it made. And, I will be moving very shortly, so the time I can put into this is going to be minimal for the next few months.

Also I am working on getting timing. I think this can be achieved by comparing the rising edge of sensor inputs to each other. I just haven't sorted out the code. But it should be fine using the digital pins I am using for rpm, so it is just a matter of coding.

https://cimg7.ibsrv.net/gimg/www.rct...88baa21993.png

PDR 06-20-2023 03:42 PM

If you want to bounce any ideas off someone, let me know. I've done a decent number of custom boards using microcontrollers. Some general suggestions - I'd use something more modern than a 328P. There are AVR devices with better internal peripherals, more flexible and simpler to implement that cost half the price. Not quite sure how you'd establish timing from the sensor signals alone, since they'll always have a fixed relationship relative to each other.

trilerian 06-20-2023 04:48 PM


Originally Posted by PDR (Post 16013473)
If you want to bounce any ideas off someone, let me know. I've done a decent number of custom boards using microcontrollers. Some general suggestions - I'd use something more modern than a 328P. There are AVR devices with better internal peripherals, more flexible and simpler to implement that cost half the price. Not quite sure how you'd establish timing from the sensor signals alone, since they'll always have a fixed relationship relative to each other.

I actually just bought an STM32 Nucleo to start tinkering with it. But I will probably take you up on your offer as well. As to timing, I was going to start with just getting sensor angle offset from 120*, I hadn't quite worked out what to use as a fixed reference to compare that to.

trilerian 06-21-2023 02:48 PM

I ordered a couple of prototype boards today!


https://cimg6.ibsrv.net/gimg/www.rct...7c4b7bde74.png

Bsthetech 06-22-2023 10:16 AM

I picked up my Load Master yesterday. Looks well made. Hoping to try it out later today. I also picked up a R1 Digital 3 ESC. I’m hoping to get it installed for this weekends race and start generating some real world numbers for a 21.5t TC on an asphalt track.

trilerian 06-24-2023 10:01 PM

I have figured out how to measure timing. Now it is a matter of writing the code for it. The back emf of the motor is not dependent on timing, whereas the hall sensors obviously are. So to measure timing you need the delta between the rising edge of the sensor pulse and the rising edge of the back emf. Here are a couple of scope pics that I did. The first one the can timing on the motor is set to 0*, you can see that the rising edge of the back emf and the sensor line up. The second pic has timing advance of about 40*, you can see that the back emf lags behind the sensor.

https://cimg9.ibsrv.net/gimg/www.rct...316494d27d.png
https://cimg0.ibsrv.net/gimg/www.rct...f02bc7d176.png

trilerian 06-26-2023 10:21 AM


Originally Posted by PDR (Post 16013473)
If you want to bounce any ideas off someone, let me know. I've done a decent number of custom boards using microcontrollers. Some general suggestions - I'd use something more modern than a 328P. There are AVR devices with better internal peripherals, more flexible and simpler to implement that cost half the price. Not quite sure how you'd establish timing from the sensor signals alone, since they'll always have a fixed relationship relative to each other.

What is your opinion on the RA4M1 mcu? Granted the chip is more expensive than the 328p, but it offers up to 3x the clock speed and a lot more memory. Which would be nice since I like using the oled displays but they are memory hogs. I would like to stay with 5v vcc instead of moving to 3.3v, so I am interested in this chip. I am going to order an uno 4 for testing. Also as a huge bonus, it has a 14 bit adc instead of 10 bit. Which will be nice because another project I am working on I am adding an mcp 3204, which is a 12 bit.

PDR 06-26-2023 03:42 PM


Originally Posted by trilerian (Post 16014682)
What is your opinion on the RA4M1 mcu? Granted the chip is more expensive than the 328p, but it offers up to 3x the clock speed and a lot more memory. Which would be nice since I like using the oled displays but they are memory hogs. I would like to stay with 5v vcc instead of moving to 3.3v, so I am interested in this chip. I am going to order an uno 4 for testing. Also as a huge bonus, it has a 14 bit adc instead of 10 bit. Which will be nice because another project I am working on I am adding an mcp 3204, which is a 12 bit.

I haven't had any experience with it, but looks capable. I couldn't find an Arduino core for it, but it appears to be coming since there's a new Arduino board built around it. The additional memory is nice for OLED fonts, but I've gotten better at using the tiny4k library and its built-in font scaling and can get good things happening with the 16k variants. Most of my projects are using the AVR 1-series, 2-series or Dx range. The IO on those things is really, really good and most of the features are available directly via Arduino or not hard to do with direct register setting. With the CPU clocked at 4MHz, I can get clock-rate resolution (0.25uS) on PWM signals and the 2-Series and Dx ADC can oversample to 17-bit resolution. No external crystal required too, which keeps part count down and the program uploading is much easier than ICSP. I've also used the RP2040 for native USB and it has some cool things, but the 3.3V-only thing is a bit annoying. There's a DU chip coming that will have native USB...

trilerian 06-26-2023 08:26 PM

So I guess, back to struggling with timing... The issue is the calculations I make don't come close to the Trinity Motolyser. While the calculations do increase and decrease when changing the timing on a motor and compare across motors, the values are off and not by the same coefficient. I am attaching screen shots of 3 different motors. The first is an v21s (21.5), the second a slot machine (21.5) and the third an mc4 (17.5).

Trinity Motolyser readings are as follows:
v21s - 42.1*
SM - 45.2*
mc4 - 38.9*

My calculated values:
v21s - 56.5*
SM - 58.2*
mc4 - 56.1*

The measurements are done vs sensor c and phase c
My calculation is (1/frequency of motor)/360 to get degrees per second. Then take the time difference between the rising edge of the hall sensor - the guestimated zero cross of the bemf on phase c. The zero cross will be about halfway through the first small rise. The output is only showing half the bemf wave. The cursors in the pic show where I am calculating from and the delta is calculated by the scope.

Anyway, delta time/ degrees per second = degrees timing.

What am I missing here? I can use comparators to get a real zero cross, but I doubt it will account for 15-20* difference. And if that number just stayed the same, it would be easy.

R1 v21s 21.5

https://cimg7.ibsrv.net/gimg/www.rct...d5714e342b.png

Trinity Slot Machine 21.5
https://cimg3.ibsrv.net/gimg/www.rct...5cf662dd36.png

Motiv MC4 17.5
https://cimg5.ibsrv.net/gimg/www.rct...df62e998aa.png

gigaplex 06-27-2023 12:26 AM

It wouldn't surprise me if the method of measuring the rising edge would account for such a big delta. I've seen massive variances (15+ degrees) just between a SkyRC analyser vs a Hobbywing Tunalyzer. Though maybe they're also using different algorithms to compute the value.

Your back EMF signal looks pretty isolated. Are you measuring this on the slave motor? I'd expect the timing delta to be different on the driven motor. The EMF distorts as the motor rotates. There's also the winding time, which should be a fixed lag caused by the inductance of the stator. I'd expect the field distortion to be similar on the master vs slave, but the winding time might be an offset in the other direction since it's a lag of the input vs output.

https://pphaneuf.github.io/rccars/ar...timing-theory/

Does your margin of error vs the Motolyser decrease as the RPM is reduced?

trilerian 06-27-2023 06:20 AM


Originally Posted by gigaplex (Post 16014840)
It wouldn't surprise me if the method of measuring the rising edge would account for such a big delta. I've seen massive variances (15+ degrees) just between a SkyRC analyser vs a Hobbywing Tunalyzer. Though maybe they're also using different algorithms to compute the value.

Your back EMF signal looks pretty isolated. Are you measuring this on the slave motor? I'd expect the timing delta to be different on the driven motor. The EMF distorts as the motor rotates. There's also the winding time, which should be a fixed lag caused by the inductance of the stator. I'd expect the field distortion to be similar on the master vs slave, but the winding time might be an offset in the other direction since it's a lag of the input vs output.

https://pphaneuf.github.io/rccars/ar...timing-theory/

Does your margin of error vs the Motolyser decrease as the RPM is reduced?

The back emf is being measured on the motor I want the timing on. The slave isn't connected in this instance. When measuring the slave motor you don't see the duty cycle that you can see in the above pics. As far as the emf distorting as the motor rotates, it actually gets easier to read as the rpm goes up until you hit max duty, then it much clearer. And in discussions with Motolyser they have told me to use the full test for timing as that runs at fully duty. This gives the best results. The timing can change a couple of degrees through the rpm range with my measurements, with the motolyser it is generally only a few tenths.

As to the scope output, I have played around with different grounding points to see what gives the easiest output to trigger on. When using the virtual common ground between the phases it is extremely hard to trigger on the wave, but you do see the alternating voltage that way. The way I am measuring in the pics above is to use the ground on the rpm sensor and trigger on that. That square wave is easy to trigger on so it stabilizes the emf wave to read, but since the grounding is different, you only see part of the wave. If I use the virtual common, the rpm sensor wave is distorted and harder to trigger on. I have measured the intervals using the virtual common as well, and they are the same.

EDIT: For clarity, the virtual common is created by using a 10k resistor off each of the phases and connected together, creating a virtual common between each of the phases.

If inductance was playing a role, I would expect the 17.5 to have a smaller margin of error vs the 21.5 since the 17.5 has lower inductance. Also, I am not sure how the motolyser would account for that since that would change with each motor.

I did order some lm339 comparators to use for getting a more accurate zero cross, I tried using the internal comparator on the arduino, but I think my code was wrong.


EDIT: I tested my slot machine 13.5, certified slot machine 21.5, and my other R1 to compare. The slot machine and the v21s all have on offset of 17-18* throughout the timing range. It is only the mc4 that is higher. I need some other brands of motors to test with...

Roelof 06-27-2023 07:38 AM

Maybe this topic will help: Non-timing "Blinky" ESC Test Using an Oscilloscope - R/C Tech Forums (rctech.net)


And here some vids:
Pole Position RC Club | Facebook

trilerian 06-27-2023 08:56 AM


Originally Posted by Roelof (Post 16014899)


I had a look through that, thanks. It looks like the setup he is using is similar, we are both triggering on the hall sensors then looking at the rising edge of the hall sensor compared to the motor signal. The only difference is he changing the x axis, where I like to see the complete waveform. A big difference though is that I have been using the motolyser to run my tests and not an esc. So I tried using my hobbywing xr10 pro. The output for the motor looks easier to work with, more comparable to a square wave at full throttle, which I should be able to read with the arduino on a digital input. I measured a few motors and they all seem about 20* off, so that just may be my offset I program in. Here is a pic using the xr10 pro. And now, I'll need to test on other esc's and motors...

https://cimg2.ibsrv.net/gimg/www.rct...0f8ebe3785.png



EDIT:

It was really cool being able to see amp draw, rpm, voltage, and "sort of" timing without using a motolyser.

EDIT: After running a 17.5 and a 13.5 the waveform looks more trapezoidal. So I will need to use a comparator still.


All times are GMT -7. It is currently 02:04 AM.

Powered By: vBulletin v3.9.3.9 Patch Level 3
Copyright © 2026 MH Sub I, LLC dba Internet Brands. All rights reserved. Use of this site indicates your consent to the Terms of Use.