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.

Hercules TMS570LC43x LaunchPad Evaluation Kit Simulink and On-The-Fly-Calibration

Other Parts Discussed in Thread: HALCOGEN

Hello engineers,

I am apart of a University team that is building a scaled down Formula E car and I am in the process of choosing the main processing unit that will orchestrate the entire sensor and powertrain system.  Right now, Hercules TMS570LC43x LaunchPad Evaluation Kit seems to have everything I am looking for, but I am wondering if there is Simulink support for it or something similar. I saw this post, but that didn't really give me a definitive answer. e2e.ti.com/.../1296600

Also, the other question I have is in regards to on-the-fly-calibration, which is essentially changing variable values in the program wirelessly. For example, we may want to change a motor controller parameter from my computer on the Hercules board in the car while its driving.  How difficult would this be? Could I use Xbees to do this?

If you guys think there would be a better LaunchPad for this application, I am open to suggestions.

Best Regards,

Jason

  • Hi Jason,

    You can definitely use the TMS570 with Matlab/Simulink & Embedded Coder.   We have PIL running which lets you take your main control algorithm, which gets converted to C by the coders, and run this on the TMS570 hardware to compare numerical accuracy.    You would still need to write some code to create a standalone application - by using HalCoGen to create the driver code for peripherals and then stitching together calls to the generated model code with inputs from and outputs to the peripherals.   But this isn't difficult and HalCoGen gives you the driver code.   If you have a project team you could easily split the work as well where someone works on getting the IO right using HalCoGen and another person works on the modeling and embedded controller.

    There are actually multiple ways to change variables on the fly without disturbing the processor.

    The easiest is through CCS.   In addition to the CPU there is an other 'CPU' called 'DAP'  (I say CPU but all it does is read/write memory).
    While the Cortex R5 CPU is running you can use the DAP to peek and poke at registers without halting the Cortex.

    We also have some special ports on this device for calibraion -  RTP, DMM, and POM.    RTP and DMM let you trace RAM writes and also externally modify RAM but you need a tool for this and the only commercial tool I know of comes from Vector Informatik and may be out of your budget.    The protocol however isn't difficult and someone who is good with FPGAs may be able to build an adapter for this use.      POM lets you remap an area of Flash to RAM so that you can change parameters normally stored in Flash without reflashing (which would definitely be intrusive) and without changing your code.   This may be more of a luxury item -- something you could just as well accomplish with software if you are doing an R&D type project.

    I think you are dead on w. the launchpad.  

    Thanks and Best Regards,

    Anthony
     

  • Thanks for the response Anthony. I am glad the bulk of the algorithm can be implemented on the TMS570LC43x LaunchPad with Simulink. That doesn't sound like its too difficult to get up and running, but once the time comes to program it, I'm sure I'll have more questions on how to stitch together the code from Simulink and HalCoGen. Thanks for confirming this will work though.

    When you say the easiest way to change variables on the fly is through CCS, would you mind elaborating on what you mean? Are you referring to debug mode?

    What advantage would using that Parameter Overlay Module give me over the method through Code Composer? Do I need any special hardware to interface with this?

    Yeah, I couldn't believe the specs I was seeing for such a low cost. Its an incredible little board that's beautifully designed. I think it should be perfect for our car.