Saturday, June 26, 2010

HexBridge Shield BLDC and this silly thing from Texas Instruments

First, the Arduino HexBridge Shield BLDC challenge has been answered. In this post, Charles shows that it's a relatively simple matter to write control code for the Arduino that will turn the HexBridge into a viable brushless DC motor controller. As I mentioned (but was too lazy to prove) in the original post about the HexBridge concept, BLDC control involves setting one phase as high (or PWM), one as low, and one as off/floating. By cycling through all 3P3 = 6 permutations of this, you get rotational motion. The trick is linking this to the Hall effect sensors (or something else) that determine which state should be active. Here's the light load test video.

Dual BLDC control (when would you ever need that?) is simply replicating this on the second set of three half-bridges. Or you can run one BLDC controller and one reversible brushed DC controller using two out of the three remaining outputs. Or...well, you get the idea. Configuration flexibility proven, the next step is probably heavy load testing to see its limits. So far, I've tested to 20A. How about 50A?

Now for a bit of a rant...


This is the new Texas Instruments MSP-EXP430G2 LaunchPad. It's a $4.30 (clever) development board for the MSP430 value line devices. Does it look like a red Arduino? Can you imagine the developers' meeting? I can:
Hey guys, we're getting killed in the entry-level market by this Arduni thing. How are we going to get new engineers and embedded developers to use our product in the future?
How about we like...create something that looks like it, but with our cheapest chip. And we'll make it red. And we'll sell it at a loss, to get people hooked.
Now, I love the MSP430 microcontroller line. I use the MSP430F2274, specifically. It is significantly better in many ways than the ATmega328 used by the Arduino. But the chips they use on this board, the MSP430 value line, are actually somewhat lacking in features. For example, they have only one timer (vs. the ATmega328 with three). Timers are critical for the kind of stuff I do, like motor control, so that is a little disappointing. But I guess for the entry level, at $4.30, it's still a good way to get people engaged.

Except...do people use the Arduino because it's cheap? Or has a convenient form factor? Or is it because it's easy to program? I'm tempted to say it's the latter. And the MSP430 line, while being a pretty standard application of C programming, does not have the convenient (did I really just say that?) simplified programming language or the backing of a giant user group that Arduino now has. So I'm not sure. Maybe if they had come up with the idea of making an easy to use MSP430 dev board a few years ago, it would have caught on and been developed more.

Oh, wait.

How is that quarter not shorting out the 3V3 and GND pins?

That's right. Cam and I thought of putting an MSP430 chip on a dev board in 2007. (Seriously, look at the date on the board.) The thought process was essentially:
Hey check out this new Arduino thing. I wonder if we could make a better one.
How about using an MSP430F2274, and making it small enough to fit on a standard breadboard? And integrating an XBee header. And, heck, let's just make it USB and wirelessly programmable too.
We called it the 430stamp, or, informally, the wootstick (short for Wireless bOOTloading...sort of). It is arguably the most useful thing I have ever made. Seriously, I use it for everything. Doesn't it look familiar? It's the signal board for the 3ph Duo controller, where it executes simultaneous field-oriented control of two brushless motors. It's also the transmitter AND receiver for my RC car. There's one for programming the Cap Kart wirelessly. They were briefly used in 2.007. In other words, they work well enough that I rely on them. Very few things I've ever made have gotten to that status.

So, will I be buying any MSP430 LaunchPads? Probably not. So many people have told me about them now that I might just buy a few out of curiosity. But I already have a good, reasonably cheap (~$20) MSP430 solution. I wouldn't mind seeing more people use these as opposed to Arduino, just because they will have to learn how lower-level embedded programming works. (Not assembly...but low-level C. Fewer user-friendly libraries.) Overall, a $4.30 dev board from TI is a good thing, but I'm not necessarily impressed.

4 comments:

  1. Very interesting thoughts.

    I do agree with the low level C. I check some of there demo code and it is not something for a complete newbie. I am sure people/TI will start making libraries in the next few months.

    I think the price and the chip packaging factor is the the winner here.

    ReplyDelete
  2. omg...

    THEY DIDN'T EVEN USE ALL THE PINS IN THE SOCKET

    that's so... so.... ewwwww.

    ReplyDelete
  3. >THEY DIDN'T EVEN USE ALL THE PINS IN THE SOCKET
    Those are for the 20 pin chips that will be coming out later in the year.

    ReplyDelete
  4. There are tons of projects at the 43oh website:
    http://www.43oh.com

    ReplyDelete