bitdump / BLHeli

BLHeli for brushless ESC firmware
GNU General Public License v3.0
1.9k stars 1.07k forks source link

BLHeil on Emax Budget 18A #26

Closed RalfBrandt closed 10 years ago

RalfBrandt commented 10 years ago

Hi For converting my quadro-copter into a Hexa-copter I ordered two Emax Budget 18A.

https://lh4.googleusercontent.com/-yBPbRTj44XA/U2Pu3lj-HLI/AAAAAAAAW3Y/nZ4yslhppmc/s800/DSCF8139.JPG

https://lh5.googleusercontent.com/-M45-bYoH47o/U2Pu2Lr1OhI/AAAAAAAAW3Q/et9w8GzDQ70/s800/DSCF8140.JPG

I thought I did used them for the existing four ESCs and flashed them with BLHeli. After they were delivered und I had removed the shrink foil, I figured that I remembered wrong, and the Emax Budget 18a is not supported by BLHeli. (The existing ones where FlyFun 18A).

But the good thing is, the Emax Budget 18A is based in the F330 SiLabs chip, so BLHeli could be adopted to that ESC.

With that in Mind, I started to analyses the layout of the Budget 18A.

https://lh5.googleusercontent.com/-qF6w--bn5kA/U2Pu7_y2ebI/AAAAAAAAW3g/WoGenclHmNc/s912/DSCF8142a%2520Kopie.jpg

https://lh3.googleusercontent.com/-9wqJHuEkutM/U2Pu0IljQQI/AAAAAAAAW3I/Ipx4klCEr4U/s1024/DSCF8141.JPG

Here is the CPU pin assignment I found. P0 P1
7 PPM 7 LED 6 ADC 6 NC 5 FbA 5 HfetA 4 4 HfetB 3 FbB 3 HfetC 2 SUM 2 LFetA 1 FbC 1 LferB 0 Reset? 0 LfetC

That looks like the Aeolian XP 18A. So I flashed that file for testing. But I does not work, you can hear the startup beeps with not Motor attached. That is definitely not good.

So I went into a more deep analysis of the circuit and created a schematic (at least the part of the power driver).

https://lh3.googleusercontent.com/-LPTbXxLlilI/U2PwQpFhXCI/AAAAAAAAW34/MPgQosQ2Q3w/s1172/ESCDrv1-page-001.jpg

No it was clear, why the file for the XP-18A did not work.

While the XP-18A is using an inverting Driver for the High side FETs, the Budget 18A is using non-inverting FET driver for low and high side. That is the case on for the xp-35a-sw as well.

So I tried that file. That one does work on the Emax Budget 18A. So now I do have a good starting point, but now I struggle:

How to determine proper values for P/N FETON_DELAY, COMP_PWM_HIGH/LOW_ON/OFF_DELAY?

I do have a 2 channel Scope, so I can do some measurements, but I have no idea what measurement setup I shall use, and what I shall expect to see or to look for.

Can you give me a hint, how to determine these values? Or is there some literature you can suggest, to get more comfortable with that?

Or can you suggest some save values, that I can use (not having perfect performance) but a working ESC?

Best Regards Ralf Brandt

sskaug commented 10 years ago

The COMP_xx values are not so important, if your motor runs well, you can just leave them. The P/N FETON_DELAY values are important, because if they are too low you can have high/low side FET cross conduction. You can measure that by looking at gate voltages and output voltages with your scope. These values are most important for the damped modes.

Good luck, Steffen

RalfBrandt commented 10 years ago

Thank you for the fast response. I tend to do that measurement with a resistor network attached as load. Is that a good choice, or can the measurement be done with the motor attached as load? Thanks a lot Best Regards Ralf Brandt

sskaug commented 10 years ago

I always do it with a motor as load. But often I put a resistor (a few ohms) in series with the battery plus. That helps protect the ESC (and motor) in case something goes wrong.

RalfBrandt commented 10 years ago

Thank you for your support.

I did the measurement, but I had to realize that my old nicolet 310 is to slow for a precise measurement.

What I can see is that the rise and fall time on gate and on the output is definitely below 1us, on both the high and the low side Mosfet.

What I can also see is that there is a propagation delay of about 2us from the microcontroller to the Mosfet gate. But that is the same for raise and fall and the same on high and low side. This seems to be manly caused by the PUMD12. But due to the fact that this is the same for raise and fall, high and low side I thing this can be ignored.

What I can say for sure is that the required P/N FETON_DELAY is less that the 6us found in the XP_35A_SW.inc.

For testing I reduced that values down to 1 and did not see any current spikes in the power line, even with maximum damping.

But on the other hand, I did not see any advantage in reducing these values. So I decided to use the original XP_35A_SW configuration for my Emax Budget 18A ESCs.

Thanks again that was really a big help. Best Regards Ralf Brandt