Field Oriented Control development boards

Stuff at random:
Support of Alan's choice of Stella: (80 MHz part)
Finally, the Stellaris family features peripherals designed specifically for intense industrial motor control, including motion control PWMs and quadrature encoder inputs...Single-cycle multiply instruction and hardware divide. (Mandatory IMHO) All StellarisWare software has a free license and royalty-free use to allow the creation of full-function, easy-to-maintain code. (TI "got it" Home run on this one. Make the tools free and available. Sell more silicon.)[/quote

I fully agree that sensors (some type) are mandatory for starting.

Heading forward I see the need for better position measurement. I have been researching magnetic angle encoders. I could never figure an elegant way to incorporate them on outrunners. Hence more interest these days in inrunners. That won't solve the hub motor issue with an encoder, but halls may be enough. Amberwolf had a wheel chair (Invacare?) hub motor disassembled one time and showed me pictures of an "analog type" hall used as a sin/cos position sensor. I would really like to know more about how they did that.

C2000 series:
The C2000 controller uses a central 32-bit CPU core, called C28x, coupled with a highly optimized peripheral and interrupt management bus. As a cross between a general microcontroller and a digital signal processor, the C28x core brings the code density and execution speed of a DSP with the ease of use and accessibility of a microcontroller. ...Single cycle read-modify-write instructions, single cycle 32-bit multiply. ...32-bit floating-point unit on select controllers...
Enhanced PWM modules offer high resolution (down to 65ps) duty cycle, period, and phase control. Additionally, fully programmable trip zone detection and dead-time generators offer complete system protection from faults and surges. (Does Stella have this?)

***Alan have you been able to determine which is "better" or how key characteristics differ between Stella and Piccollo for motor apps? We know it is out there somewhere in TI space, but I haven't been able to find it. It looks like Hercules is the top dawg, but it is 2x the cost and a larger board as you said. The control card pushes $100 in lieu of $45 ish.
 
bigmoose said:
Stuff at random: ...

C2000 series:
The C2000 controller uses a central 32-bit CPU core, called C28x, coupled with a highly optimized peripheral and interrupt management bus. As a cross between a general microcontroller and a digital signal processor, the C28x core brings the code density and execution speed of a DSP with the ease of use and accessibility of a microcontroller. ...Single cycle read-modify-write instructions, single cycle 32-bit multiply. ...32-bit floating-point unit on select controllers...
Enhanced PWM modules offer high resolution (down to 65ps) duty cycle, period, and phase control. Additionally, fully programmable trip zone detection and dead-time generators offer complete system protection from faults and surges. (Does Stella have this?)

***Alan have you been able to determine which is "better" or how key characteristics differ between Stella and Piccollo for motor apps? We know it is out there somewhere in TI space, but I haven't been able to find it. It looks like Hercules is the top dawg, but it is 2x the cost and a larger board as you said. The control card pushes $100 in lieu of $45 ish.

I have not found the details. At this point it seems to be "ARM vs DSP" on the one side, but details about the control hardware are not visible yet. I would expect they used the best they knew on both of them so they may be quite similar. The ARM might be newer, not sure, but that could be good for improvements. But the devil is in the details, so would be good to understand them. I would like to see the pinout on their 64 pin ControlCard as well, that's what we would have to work with when doing the power board.
 
I downloaded both the Stella and C2000 software last night. I'll try to install it and see what it might have in it. It is strange, and a huge change for me, when you go after a single issue data sheet, to have to download 3/4 of a Gig in an exe file!
 
bigmoose said:
I downloaded both the Stella and C2000 software last night. I'll try to install it and see what it might have in it. It is strange, and a huge change for me, when you go after a single issue data sheet, to have to download 3/4 of a Gig in an exe file!

I wish they would not do that. Kind of nuts.
 
Arlo;
I dug out my signal gen and the dual channel Textronix to see if the 555 I'm building will pulse my fuel injectors adequately for cleaning. This got me thinking.
I'm wanting to order this board, just to wake up a few neurons (if possible); http://learn.parallax.com/ Propeller BOE. What do you think of it.

Arlo1 said:
I think you need to pic your processor then see what is available for development boards. I have a microchip development board that comes with a dspc30f4011 its most of what you would need then just hook up a power stage and away you go.
I chose microchip because it was recommended but now I see the advantages like the code samples and open support. I also thought an arduino would be cool but they seem to be lacking in the processor power/speed and pin outs.
 
Gordo said:
Arlo;
I dug out my signal gen and the dual channel Textronix to see if the 555 I'm building will pulse my fuel injectors adequately for cleaning. This got me thinking.
I'm wanting to order this board, just to wake up a few neurons (if possible); http://learn.parallax.com/ Propeller BOE. What do you think of it.

Arlo1 said:
I think you need to pic your processor then see what is available for development boards. I have a microchip development board that comes with a dspc30f4011 its most of what you would need then just hook up a power stage and away you go.
I chose microchip because it was recommended but now I see the advantages like the code samples and open support. I also thought an arduino would be cool but they seem to be lacking in the processor power/speed and pin outs.
Gordo my megasquirt has a perfact injector test mode. Just let me know I have a fuel pump and regultor and fuel rail and some cups for mesureing and testing injectors. I made a injector test bench with fuel pump, regulator and all. Let me lend i to you or help your with it
 
Alan B said:
Here is a video specifically on Field Oriented Control:

http://www.youtube.com/watch?v=cdiZUszYLiA&feature=relmfu

The above video is a good one for those interested in what Field Oriented Control is, and how it works. It also covers what observers are and how they work, and at the end talks about a Piccolo based reference design that controls two motors with one processor which would be great for a 2wd application.
 
Its all about the ecosystem, the tools, sample code, libs, reference projects, forums and communities. And without a contest the strongest embedded ecosystem out there is Arduino. Period.
Just days ago they released the ARM based Due, it has a AT91SAM3X8E with everything you need for FOC. http://arduino.cc/en/Main/ArduinoBoardDue .
It has USB host support, ADK will be a pice of cake. Pair it with Shane Coltons arduino driver shield http://scolton.blogspot.se/p/motor-controllers.html#hexbridge for prototyping and then merge the open schematics for a singel design.
It is the obvious path for the ultimate kick ass open and free controller. :)
 
I am a fan of Arduino, but from what I can tell of the AT91SAM3X8E, it is not optimized for high performance Field Oriented motor controls. For example it lacks the multichannel simultaneous ADC sampling required for Field Oriented Control. It does have PWM support for motor controls, so it would be wonderful and even overkill for hall sensored control. The Arduino DUE board is very new and so software support is just getting going. I'm not aware of anything like the Ti motor development software suite for any Arduino, so the infrastructure at least for motor controls development appears to be significantly weaker.

However, that said, I'm sure that the DUE could be made into a reasonable ebike motor controller. Go for it! We all benefit from some diversity and can share knowledge at various levels. Another candidate is the Teensy 3.0 which is somewhat similar to the DUE but physically much smaller.

I've been trying to order a DUE board but haven't seen them available yet at the usual suppliers in the US.
 
Alan, dug out one comparison on ADC conversion time:
Code:
Stella   LM4F211    1uS
Piccolo F28035       217nS
320F2811              80nS

I still cannot tell which "class" of processor is "better" Stellaris or the high end Piccollo... after spending a full day on the net, you should have an answer to this...

Here is the capability in the TI firmware development tools. I don't know anyone else that has anything 1/10th as complete.
http://processors.wiki.ti.com/index.php/TMS320C2000_Motor_Control_Primer
 
Interesting performance! That Piccolo really screams! The 32 bit floating point Piccolo is definitely a contender! Very high end PWM as well!

This video talks a bit about Piccolo vs ARM et al:

[youtube]m2yJF2viad8[/youtube]

This is part 2 of the MCR Wars video, part 3 was above, part 1 was less interesting.

One question to consider is how much do we care about ARM vs DSP?
 
Alan, got you a schematic and pin outs of the TI DRV8301 module!

Also another quote from the TI board for a very high speed controller:
Yes, at very high speed you may (probably) have to increase your control frequency which may require more MIPS. Many very high speed applications use Delfino class 150 MHz FPUs for this very reason.
 

Attachments

  • DRV8301-HC-RevB1-RELEASE.pdf
    312 KB · Views: 70
The Score So Far:

It seems to boil down to two kits at Texas Instruments via Digikey in the 32 bit floating point $300 neighborhood with plug-in ControlCard CPUs:

The

1) DK-LM4F-DRV8312 with the Stellaris Cortex M4

and the

2) DRV8312-C2-KIT with the C2000 Piccolo

Both of the above kits include the 8312 motor driver board, a motor, a power supply, the ControlCard plug in CPU module, plus various cables, software and documentation at about $300.

There are other kits with 16 bit CPUs, or costing $500 and up (Hercules safety/automotive CPU, etc). I'm not convinced they are worthwhile for this. The Hercules Automotive might make sense but as discussed earlier it is more costly and physically larger and more complicated.

The DSP appears to have a slight lead at the moment here, with longer history and more motor control related performance. The game is not over yet however, more research needs to be done and more comments considered!

Thanks,
 
Good summary Alan! Where I am. Now I am not sure the compiler comes with the kit. Not sure if it is just the Code Composer GUI, or the Code Composer Compiler! This should not be this hard... I'm starting to sound like a broken record... this is why I just stuck with the dsPIC 9 months ago... something I knew and had the tools to exercise.

With your help, perhaps we can figure this out!
 
According to this Digikey page:

http://www.digikey.com/product-highlights/us/en/texas-instruments-drv8312-c2-kit/1108

The following is included:

1 NEMA17 BLDC/PMSM 55 W Motor,
24 V wall power supply (with adapters),
DRV8312 baseboard with controlCARD slot,
Piccolo isolated F28035 controlCARD,
USB cable,
USB stick with GUI, CCStudie IDE, quick start guide, and link to controlSUITE for all documentation

The similar kit for the ARM does not have as much detail on what is included at the Digikey site.

At the TI site it shows:

Features and Contents

The DK-LM4F-DRV8312 motor control kit contains a cost-effective, Stellaris LM4F211 MCU-based controlCARD module compatible with other TI motor control platforms. The DK-LM4F-DRV8312 is a bundle of the following components:

MDL-LM4F211CNCD controlCARD module:
Stellaris 32-bit ARM® Cortex™-M4 LM4F211 microcontroller
Pluggable 64-pin DIMM form factor
Auto-isolation enabling upon debug connection
Hardware-compatible with the following TI DRV baseboards:
DRV8312 Rev D
DRV8301-HC and DRV8302-HC (High Current 60 A) EVM Kits, Rev C+
DRV8312 baseboard (TI-integrated 3P motor driver board supporting up to 52.5V and 6.5A)
NEMA17 BLDC/PMSM 55W motor
24V 2.5A DC power adapter, 110-240V AC input, USA power cable
USB-Micro-B to USB-A plug cable (for debug and serial communication)
Kit CD:
Complete documentation
LM Flash programmer utility for firmware updates
Applicable source code
Schematics

More info on Code Composer Studio Licensing:

Evaluation - free limit limited licenses that can be used to evaluation TI tools and devices.
Node locked - a license that is tied to a specific computer.
Floating - licenses that can be shared across multiple computers.
Code Size Limited - free 16KB code size limited license for MSP430.
Bundle/Dev Kit - free license for use with EVMs and development boards with onboard emulation as well as XDS100 class emulators.
University - contact the TI University Program for details.

Node locked licenses are $445, Floating are $795. What is the EVM Kit license? Do the ARM processors have the same software licensing issues?
 
The way the TI eval kits usually work is that it comes with a limited version of their eclips based Code Composer Studio IDE. The limitation is typicaly that it only connects to the USB JTAG interface that is on the evm. So if you just want to play around with the evm you are good. However if you want to build your own board you need to hook up an external JTAG interface and to use that you need the full blown version of the IDE.
 
I dont know how familiar you are with embedded sw development but pretty much all mcu/dsp (except for rellay small ones) have a high speed serial interface called JTAG. Initial it was intended for board level testing but has evolved into also beeing used for sw debugging. It allows a developer to read and write the memories and registers of the MCU and singelstep the CPU , set breakpoints etc. This interface runs at several Mhz so you need some hardware to allow a PC to talk to it.

Typical for TI something like this one is used : http://www.blackhawkdsp.com/products/USB560v2.aspx (its only $999, and that is cheap in this context, and it is not standardized so if you want to use a different vendor you have to get their version of it).

Now for the evaluation board TI has integrated a simplified version of the above JTAG interface onto the board itself. And the IDE that comes with the board only works with that simple interface, not the full blown one above.

And that USB port can only be used for that purpose, it cant be used for "normal" USB protocols.
 
Back
Top