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.

TMS320F28069F: Differences between F28069F and F28027F, poor performance with '27F devices.

Part Number: TMS320F28069F
Other Parts Discussed in Thread: TMS320F28027F, , MOTORWARE

Hi,

I have a BLDC controller I've made with dual footprints supporting both the TMS320F28069F and TMS320F28027F devices.  Customer needs to fit the '27F device as a cost saving measure. Sensorless operation.

RPM for this application is low, only 2500RPM. Controller is near identical to HVKITR1.

Our boards with the '69F device work great. However the boards with the '27F device stutter and only achieve < 100RPM.  Our test project is basically Lab5a.

Our firmware is mostly identical, except of-course user.h and the hal files. Naturally the ADC's and PWM's are connected correctly.

For the '69F device our user.h looks like:

#define USER_SYSTEM_FREQ_MHz			(90.0)
#define USER_PWM_FREQ_kHz			(30.0)

#define USER_CTRL_HANDLE_ADDRESS (0x13C40)
#define USER_EST_HANDLE_ADDRESS	(0x13840)

#define USER_NUM_PWM_TICKS_PER_ISR_TICK		(1)
#define USER_NUM_ISR_TICKS_PER_CTRL_TICK	 (1)

And for the '27F device, our user.h looks like:

#define USER_SYSTEM_FREQ_MHz			(60.0)
#define USER_PWM_FREQ_kHz			(30.0)

#define USER_EST_HANDLE_ADDRESS    (0x600)

#define USER_NUM_PWM_TICKS_PER_ISR_TICK		(2)
#define USER_NUM_ISR_TICKS_PER_CTRL_TICK	 (2)

Wondering if anyone could suggest somewhere else to look?. Is this a ADC performance issue, or a control loop issue?

Irrespective of what we try with the TICKS values and even adjusting ADC_SocSampleDelay_x_cycles, we can't achieve motor operation.

Thanks.

 

  • stomp,

    Does the F28069F system work ok if you lower the system frequency to 60MHz? I would expect it to be fine at 60MHz, but it would help to eliminate one major difference (max frequency) between F2806x and F2802x.

    -Tommy
  • Set the parameters as below in user.h, and check ADC sample time is right for F28027.

    #define USER_NUM_PWM_TICKS_PER_ISR_TICK (2)
    #define USER_NUM_ISR_TICKS_PER_CTRL_TICK (1)
  • Hi Tommy,

    Thanks for the suggestion and sorry for the delays, took a bit of work to make the CPU freq selectable.

    I can confirm that F28069F works well at both 60MHz and 90MHz, but the F28027F device does not work at 60MHz, even with the same firmware (taking into consideration the 27F's differences).

    Any other thoughts from here in?

    Thanks.
  • 1. Did you use the correct fast library and cmd files for F28027F?
    2. Did you set the right switch on F28027F controlCard for EVM kit?

    Use a F28027F lab project for EVM kit in motorWare to verify your setting first.
  • Hi Yanming,

    Thanks for your continual help.

    Our hardware is custom, I have a dual footprint for both the F27 and F69 devices on the same PCB.

    I have the same application firmware (two different projects). All of the specifics for the two devices are changed including the ram load issues, ADC Pins and ADC delays, GPIO and GPIO Qualification periods, clock settings, and of-course FAST libraries and linker scripts.

    Subject to my other posts that you've been helping with. I think that I am just using the F27 device beyond its limits. I just think there may not be enough computing time per tick. Yet this does not explain why the F69 device works on the same board.

    My next step, I'll order a F27 control card and try it in HVKIT. Although this is not a real good representation as our inverter is using discrete FETS and not a module like on HVKIT.


    Thanks again, I appreciate it.

    Stomp!