The Triple Weekend Update Part III: Playing With Inexpensive Chinese Ducted Fans

introduction

I already am publicly known to have an unhealthy obsession with Inexpensive Chinese Brushless Motors (ICBMs). But did you know that I’ve also recently grown an addiction for Inexpensive Chinese Ducted Fans? There’s no smart acronym for “ICDF”….except for maybe the Iraqi Coastal Defense Force or something.

Hey Charles, do you have enough of these things yet?

For one reason or another, over the past month or two, I’ve just been buying random ducted fans from Hobbyking (where else?). At first it was out of a desire to find a good propulsion source for Chuckranoplan 0004, which I promise is still under way. But then with the advent of Fanscooter and its derivatives, I’ve been thinking about ways to use these cheap EDFs effectively…. or just in large quantities, to get higher thrust values for any propulsive task I can think of.

background

Now, real EDF systems from European and American boutiques are known to be great performers and are well-built – generally made of metal alloys or laid up from carbon fiber and dynamically balanced. These are the things that tear ass at upwards of 50 to 60,000 RPM in model fighter jets that go 200 miles an hour or more.

The problem is that they are EXPENSIVE. Like, dear Robot Jesus are they expensive. The TF8000 is generally my calibration point for how much I can’t afford a quality large EDF setup – the fan itself, without a motor, is $600. The motor is usually an exotic German make (like Lehner or Hacker) that costs $700 to $1000 by itself. Throw in the extra bigass controller you need to run that motor and you’re looking at nearly $2,000 for a single thruster setup. Granted it is like 30 pounds of thrust, but still – how do these guys even?

I mean, besides massive funding.

 

That’s why I have decided to explore the parallel design space loci a little, since it doesn’t cost too much for me to do so. Hobbyking currently has two large EDFs, both in the 5 inch (120mm) range, and I got them both.

  • HK #OR003-00113-7B Haoye 125mm rotor, 7 blade. This one has been around longer, but I only got it recently on a whim. It has a set screw type propshaft for 6mm motor shafts, and a removable nosecone. The construction seems to be pretty standard “cheap EDF” – unreinforced plastic (ABS, judging by the smell… read on to find out), but the rotor looks to be glass filled nylon. The price is $30, and the maximum motor diameter is about 50mm or so.
  • HK #102F “ChangeSun” 120mm rotor, 4 blade.  For 40 bucks, I threw one in on a parts order for Chuckranoplan. I like the construction of this one much more. The propshaft is a collet-type one, not a set screw, and the shiny aluminum nosecone is also a nut. The rotor and casing are both made of fiber-reinforced nylon and both are very stiff…which fiber is, of course, dubious – carbon fiber is claimed, but why do I not believe that? The maximum motor diameter is 52mm.

 

Finding motors to drive these fans was difficult. HK doesn’t have purpose-build EDF motors larger than 36mm (the type which has a tailcone and longer shaft). I also was not too please with the reviews on their large inrunners (up to 45mm diameter), and I hate inrunners anyway. The only thing left that was in stock were 600-class helicopter motors. I ended up getting a T600-880 and then a T600-1100 – two different winding variants of the same motor so I could test different battery voltages. There were some motors with potentially higher power, but they were not in stock and if I backordered them, I would probably get them some time in late September of next year.

Just to give an idea of how stupidly big this thing is… here it is next to a commonly scale item. The outer casing on this is about 130mm.

I also bought this cute little prop balancer from HK after feeling that I would need it.

A few unrecorded test spins of the fans revealed their very, very Chinese nature – the rotors themselves were severely off-balance. Using the über-cool magnetic levitation feature, I attached little chunks of rubber magnet stock I found at MITERS to the interior of the rotor using CA glue until I was satisfied.  That step was easy enough. At least the Haoye unit had a straight propshaft (set screw notwithstanding): the ChangeSun’s propshafts were completely and utterly useless. They fit the motor shaft well, but they were drilled off-center and wobbly, and the aluminum alloy was also rather soft.

Seriously, what a corner to cut. The rotor itself and casing are both very nice injection-molded parts, but the one critical component to connect them is garbage. Because of this inherent Chinese-ness, I can’t recommend them to anyone who isn’t willing to put some work into polishing them up.

For the ChangeSun 120mm fan, “polishing up” meant putting the 5mm adapter on a lathe and carefully reaming the bore to 6mm. In order to eliminate one major source of uncertainty in this, I elected to perform the operation on a nicer campus student shop machine.

Four blades versus seven… which one will win?

As usual, I’m interested more in the static and quasi-static (read: slowly moving forward) thrust of these fans. I’m not likely to build something that travels very fast or anywhere near the “prop speed” for these things, so my testing would focus on static thrust characteristics.

The T600 motors seem to be a good fit for both, but is a little tight on the Haoye 125mm (This would later prove to be a little tighter than I imagined). On the Haoye, the vent holes of the motor can stick out just enough to make it look like it was meant to be there…as well as providing a better airflow path.

On the contrary, the motor is pretty much flush with the backside of the ChangeSun 120mm fan. The vent holes are therefore much less effective here. This may have implications for continuous high-power operation of the whole assembly. A longer (read: more powerful) motor would be better for it.

In the picture, I was executing the auto-“Hey, hold this while I plug it in” test on the Haoye fan. I didn’t hold on for too long…

procedure

To measure the static characteristics (thrust, RPMs, power consumption), I set up the Fankart test rail. The EDFs are screwed to some cut-off 2×4 sections, which are in turn clamped to the linear ball bearing platform. I rigged up an electronic pull scale behind it, and located the controller (and Turnigy power meter) near that.  You can already see the dot of retroreflective tape I attached to the rotor so it can be measured using laser tachometry.

I make “laser tachometry” sound ultra-sophisticated, but it’s this one. You should get one since it’s useful, but it needs reflective markers – a sharpie mark won’t do.

Next up was the Haoye fan with the T600-1100 motor already loaded. At the very start, I noticed the current draw was much higher than I would have expected. But the ESC is (allegedly) 80 amps, so I kept going anyway.

At somewhere near top speed, the fan suddenly locked up…and then this happened.

The destruction was instant.

Model airplane controllers really amaze me in how close the components are pushed to their absolute maximum ratings. They also have absolutely no protection whatsoever – at least, in this case, the protection wasn’t fast enough to respond to a sudden locked rotor at full throttle. The thing lit up and actually started shooting jets of fire.

Yeah, it’s pretty gone.  The shorting current was enough to blow off several wires completely and heat up my double 14-gauge battery jumper. So when this happens to your plane in midair, does the whole thing just light on fire or something?

I literally had to hammer out the motor from the casing. Something went terribly wrong…

Yes, that is a ring of melted ABS plastic hanging out of the motor. I know it’s ABS because it smells like all three cancer-causing constituents of ABS plastic, and is the smell that Make-A-Bot constantly creates when it’s in operation.

It looks like a severe case of… well, severe case interference from the distal end of the motor can to the walls of the housing. What this tells me is that the T600 is just a bit too large in diameter to really fit the housing, and the vibrations induced from operation are enough to make the can scrape the inside. At high speeds, this translates into quick rapid heating that melts the housing and turns the plastic goopy.

I assume at some point enough plastic goop is hanging onto the motor to drag it to a stop. No data was recorded on this run because I was too entertained by watching controllers explode.

While the long-term solution for this problem is to find a different motor, the short term one is to just bore the housing out. I took everything out an extra millimeter so the motor had plenty of clearance.

After that, I remounted everything and, using a different controller, put the test rig back together.

results and discussion

The test on 10S LiFePO4 cells with the T600-880 motor yielded:

  • 19100 RPM
  • 2.9kgf static thrust
  • 95.5A peak
  • 30.01v minimum.

I elected to not even try the 1100kV motor in the Haoye fan after this, since it would probably just try to pull a thousand amps without getting much work done. Judging by the very low RPM figure, the readings are reasonable. It’s clear to me from looking at the fan blade geometry that the Haoye is designed for a very high vehicle speed. The blades are very heavily pitched (actually perpendicular for the most part) and not very swept or twisted at the tips (not much washout, a plane word I learned). From the findings on Fankart, this would make for worse static thrust per power consumption, and the results reflect that here.

Further tests with the ChangeSun fan on 12S LiFePO4 (38.4 volts) found that it’s very well paired with the T600 motors at that voltage.  I got the following data points:

  • 31.1Vmin, 53A continuous, 2.8kgf static, 24800 RPM with T600-880
  • 30.0Vmin, 86A continuous, 3.8kgf static, 28500 RPM with T600-1100
  • 36.7Vmin, 75A continuous, 4.1kgf static, 28540 RPM with T600-880 on 12S LiFePO4

I also decided to not test the T600-1100 on 12S since it was clear the continous current was going to be over 100 amps, and the motor will definitely not take that much. I think even 75 amps max is pushing it for the T600-880 motor.

I think to prevent future friction stir welding situations, the motor should be a large inrunner, preferably with an aerodynamic tailcone. The problem is that HK doesn’t carry huge inrunners yet, and real inrunners (from say, Neumotor, Lehner, Hacker, etc…) would be kind of lame to pair with a cheap fan. So if you know any Chinese inrunners in the 50mm size class and of more than 2+kw continous power, let me know.

conclusion

Wait…what the fuck is this, a 2.671 paper?

Anyways, the conclusion here is that for a little over $150, you can get a solid 4 kilograms of thrust from the HK102F “Changesun” fan paired with a T600-880 motor, running on a 100A Turnigy HV controller. 12S LiFe cells is very much equivalent to 10S traditional ltihium polymer, and if you pair it with a DEAR GOD WHY DOES THIS EXIST 10S pack like this 5.0Ah pack from HK, then for less than the cost of like, one fan blade on the TF8000, you can have a full 4kg class power system for around $300*.  Most likely, that battery can feed two T600-880 powered fans at the same time – 150 amps continous (75 amps each) is only 30C, which is within the rating of the battery, and have a system capable of 8+ kg thrust.  Put two of those system side-by-side, and you’re looking at something which can lift Überclocker straight up in the air.

Just saying.

Oh yeah, if you want to hear what a (balanced) one of these sound in action:

*You better have a machine shop to clean up those propshafts though. I have not tried running the CS 120mm fan with the stock propshafts. They scared me too much even on low speed.

The Triple Weekend Update, Part II: The Brief and Tragic Catastrophe of the Land-Bear-Shark

Two weeks ago, I put together the CIMulink modules for my “trackboard” (as it has now been termed by a certain MIT professor). It then proceeded to sit under a table again for another week before I decided to blitz-finish everything so I could tool around on it come graduation day. As you might guess by the title, that didn’t quite go so well. But hey, when have I ever tried to build something involving a custom motor control solution and have it work on the first try?

The long story, spanning roughly the past week, follows:

You can’t have an electric vehicle without batteries, so the first order of business was putting together a gigantic pack of A123 DeWalt Drill Battery cells™. Originally, LBS was to run on a 12S pack for 38 volts nominal. However, the CIM motors are essentially 12 volt motors, and can be run up to 24 volts carefully. So I’m splitting the original 12S6P configuration into two 6S6P packs in parallel – or just 6S12P. This means it has something absurd like 26 amp-hours onboard, but the voltage is nominally 19 volts, a safe middle ground for the CIMs.

I used my usual tactic of Assnormous Busbraid & Ship-Soldering Iron with Gigasolder to make the connections between the cells. Soldering to Li cells directly is always looked down upon, but it’s possible if you’re fast and can dump heat quickly, so the soldering tip has to be massive and also well-tinned.

I added the cell taps and secured the top and bottom with sticky-back foam rubber, and then proceeded to Giant Kapton Tape the entire thing. I don’t have heat-shrink this large (do they even sell that stuff?) nor can I find a 55-gallon soda bottle, so GKT was the next best solution. The Giant Kapton was originally purchased as a build surface for Make-a-Bot, but it’s been more useful in this role.

I received the first batch of Small Cute Full Bridges from MyroPCB like this past Wednesday. I tried Myro out as a vendor evaluation this time – usually, my source for pretty finished boards is Advanced Circuits. Basically what I learned from this is that I should use Myro if I need a whole pile of boards for something (since their prices are lower), but if I need it OH GOD RIGHT NOW, I’m going to stick with AC. The quality of the boards seems to be on par, and Myro does offer the option of different colors without extra charge, so maybe that’s a feature to keep in mind.

Because LBS needs two controllers, I just decided to split off two boards like chocolates from the panel of 6.

And here they are assembled!

Here’s the underside. The switches are IRFS3004 low-voltage crackFETs from IR, the leading dealer of totally bitchin’ semiconductors. These things have the Rds-on of a chunk of copper. Seriously, what do you use them for in real life?

I’d have used my usual IRFS3107 parts, but because the electrical system of LBS is only going to be 20 volts anyway, there’s no point in using a 75 volt part.

The core processing power of LBS comes from a 2.007 Arduino Nano Carrier. This board was designed for students in the class to run their robots with, and features a Gravitech Arduino Nano, 3 amps of 5 volt rail for servo driving, and convenient breakout pins for digital pins for servo connectors, and a socket for an XBEE radio. It also has a breadboard section, which I’ve exploited to the max here – I needed the analog inputs and PWM-capable pins that weren’t available on the headers.

The pair of 2N7000 tinyFETs on the bottom right are signal inverters that generate a locked-antiphase PWM between the two inputs of the SCFB. I decided to pursue locked-antiphase again, like I did on Segfault, because it enables the command variable to be continuous (i.e. less software for me to think about)…and because the Arduino just doesn’t have 4 independent PWM pins. Two additional headers supply the SCFB board with 5 volts and power the ACS714 current sensors.

And last but very important, the capacitor circuit next to the 4-pin header group at the top is an interface for the rider detect switches.

As usual with boards I blitz and then send for fabrication without validation, there are Little Blue Wire (well, green wire) edits to be made. Fortunately, on this board, there was only one – I didn’t actually connect the output of the current sensors to anything. They went to a low-pass filter which was on both sides of the board, resistor on top, capacitor on bottom, to save space. Unfortunately, I neglected to actually connect the two layers.

The fix was to just join them at the signal wire using a jump. It certainly isn’t as catastrophic as when I cross a bunch of ground and common pins on the Segfault boards.

After this fix was made, my current sensors no longer “read” full negative current.

Alright, it’s mid-day on Thursday, so the electronics installation is happening NOW. In this picture, the batteries have been loaded in, the EV200A contactor (super legit and a total steal from Ebay) and distribution bus terminals have been installed. I’ve also put in the standoffs for holding boards away from the conductive surface below them.

The rider switches aren’t visible here, but they are small microswitches attached right under where the skateboard mount pivots. When I step on the board, the rubber shock mounts will deform and the switches will conduct, supplying 5 volt logic power to the RC circuit on the Nano Carrier breadboard. When I step off, the circuit discharges after about a second. I can then disable the contactor in software.

To drive the contactor and power the Nano Carrier, I was originally going to use a spare 12v DC/DC converter of the same type I used on LOLrioKart.

This would have worked if my electrical system was still 38 volts, but it isn’t. That DC/DC unit cuts out at anything below 36, which has certainly contributed to many embarassingly lame LOLrioKart demos.

Since I didn’t have a better idea, I just threw together a whole pile of 7815 type regulators. The load on the 15v rail will never be more than 1 amp anyway – unless I start piling on the gaudy lighting.

And everything has been messily mounted. What a nest…

To actually switch the contactor, I rigged up a single MOSFET low side switch. In the most convenient discovery possible, a servo header has the same pin arrangement (Signal, 5 volts, ground) as a typical TO-220 power MOSFET (Gate, Drain, Source). In a low-side switch, the source is grounded and the drain is connected to power through the load. So all I have done above is splice in the contactor coil negative terminal into the servo connector, and the FET routes power to ground when commanded.

The EV200A contactor has internal coil suppression, too, making this the easiest rig ever. This part worked great.

I threw together some quick evaluation software for the Arduino that read current sensors, tripped and latched the contactor, and took in servo signals from a radio. All of those functions were confirmed functional, so naturally I wrote some motor driving code next…

I’ll be honest: you probably saw it coming.

Oddly enough, there wasn’t total epic destruction – the traces on the board blew like fuses. The FETs, in all likelihood, are still fine. The symptoms, though, are indicative of Epic Simultaneous Cross-Conduction (shoot-through current) on both boards.

Something went terribly wrong. The 21844 gate drivers are supposed to prevent cross-conduction. To have the board fail in this manner means that they either were prevented from doing their job, like being damaged to begin with, or something was fundamentally wrong with the way the circuit was constructed.

Several factors differentiate the SCFB from my other motor controllers like Melontroller, the Segtrollers, and LOLrioKart’s controller.

  • The switching frequency was set to 32khz since it was easy to do (read: found on the Internet so I didn’t have to look through the chip manual to find the registers to set and clear), but that is potentially too fast for the IR21844 and IRFS3004 combo to handle.  One test that can be formed to confirm or refute this problem is resetting the switching frequency to my usual 4khz and putting together another board identically without changes to the rest of the circuit.  However, too-fast switching would be more likely to cause increased heating and lower power delivery to the motors instead of instant destruction.
  • The gate drives were receiving PWM (the software was active) before the motor drive boards received any power. They are on the opposite side of the contactor as the software, so do not receive ANY battery voltage before the contactor is engaged. The sudden application of power with the gate drives attempting to switch could have caused an indeterminate state where both switches conducted briefly. A change to resolve this problem would to be activating the motor PWM only after the contactor closes (it’s probably good practice anyway).
  • Alternatively, the gate drives could have been damaged by the inrush. There was no precharge circuit for the contactor. When it closes, the application of voltage to the bus capacitors on the board is instant, and that could have overwhelmed the linear regulator on the board (which supplies gate drive voltage) briefly, or a million other things that can happen when a massive inrush current pairs with a instant step in voltage. It’s definitely good practice to put a bypass resistor on the contactor so the logic can have power (and thus have determinate states) at all times.

The result of all this? Well, I decided to just stop at this point since I had to go set up a demo table in 6 hours. These boards have promise and will definitely be revisited and the whole power system rethought.

That’s all for now. I hauled the trackboard over to the demo table anyway, since it’s visually impressive, and it perhaps got the most “What IS this thing?” questions of all presented projects.