This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DSP selection for multiaxis motor control

Other Parts Discussed in Thread: STRIKE, AM4376, CONTROLSUITE

We're exploring motion control options for a multi-axis system.  The motors may be of different types on different axes.  Is there some TI presentation suggesting how much DSP processing power per axis I will require?  Are there other presentations to help guide DSP selection?  Motor type and PWM frequency are obvious factors, but are there others?

Thanks!

  • Nate,

    When I think of motor control, I think of our C2000 family of MCUs. There is a big variety of peripherals and software to support motor control using the C2000 devices.

    My recommendation is to go to TI.com, click on Applications & designs, and under the Industrial heading you will find Motor Drives. That will get you to a wealth of information ranging from devices to use all the way to reference designs ready to build.

    There are quite a few development kits from the C2000 family that give you a ready platform to test your algorithms or use some of the ones available from TI or our Third Party Design Houses.

    Regards,
    RandyP
  • Randy,


    That is a good start.  Looking there, I only see 1 or 2 axes of motion control - typically 1.  I need >6 axes.  The C2000 looks to have a robust ecosystem for motion control but does not strike me as having enough computation power for multiple axes.  How much computation power do I need per axis?

    Thanks,
    --Nate

  • Nate,

    The C2000 devices have PWMs and ADCs and fancy comparison logic that are tailored for motor control. They have multi-core and accelerators and InstaSpin software, all of which I only have awareness not useful knowledge to share.

    I will recommend you ask your question again on one of the C2000 Forums that you can find starting from here. Please include a link on this thread to that new one, and tell us your answer if you get one there.

    If it turns out you need more processing performance (I think you can find a C2000 solution, but I can imagine complex systems that might want more) and you want to return to this thread, come back and let us know what you have learned and what you need. Something like the C6748 or AM4376 could do the job, and we have much higher performing parts, too. But our peripheral mixes might make it less attractive than using two C2000s for something like that.

    Someone much better at motor control will be able to help you better on the C2000 Forums. Good luck with your project, it sounds fun.

    Regards,
    RandyP

  • I know that the early C2000 (F2812) processors were designed to be able to control 2 BLDC motors at once. With the F28377D, it looks like there is enough PWM outputs and ADC inputs to support more than 2 motors. With two processors, both running at 200 MHz, it looks like the F28377D could handle, but I am not sure that there exists software for more than 2 motors. There is an inexpensive Launchpad for the F28377D that would be worth the purchase, plus adding in motor control stuff from the ControlSuite - it may be closer than you think...

    Hopefully, that helps.
  • Todd, you are right about the F2837xD, it has 12 EPWMs, 4 ADCs, with multiple channels, and 2CPUs @200MHz and 2CLAs @200MHz giving a combined total of 800MHz compute power. Architecting the control for multiple motors is a matter of allocating the needed hardware and instantiating multiple instances of control software.

    Launch pad will help to evaluate controlling up to two motors only. If you want to control more, you may have to layout a new board to bring out all the pins needed. Though I have not implemented it, I would go onto say that it is easy to control 4 motors and possible to control even 6.

    rgds,

    ramesh