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.

CCS/LAUNCHXL-F28027: Use encoder with LAUNCHXL-F28027

Part Number: LAUNCHXL-F28027
Other Parts Discussed in Thread: LAUNCHXL-F28069M, TMS320F28027, , ENERGIA

Tool/software: Code Composer Studio

I am currently running a BLDC motor using Quadrature Encoder (AMT103-V) on LAUNCHXL-F28069M.

But for our other cost-effective product, we want to use TMS320F28027 and now I want to run the motor using LAUNCHXL-F28027 with our encoder. 

I got this Instructables post but here he used his custom-made encoder of optocouplers and programmed it using Energia.

I want to include the encoder functionality in lab11a and run it using LAUNCHXL-F28027.

If there is a tutorial or lab experiment doing this it would be very helpful.

  • As F28027F specification, F28027F doesn't have on-chip EQEP/QEP peripheral, you can't use encoder with EQEP directly on F28027F, so you have to use F28069F or F28054F.
  • Thank you for the reply,
    I want to know! That is there any way out if I am obligated to used Encoder with F28027.
    I think that I need to write the .h & .c files for the encoder and use appropriate pins to read the data.
    Is it possible to do and have anyone done this before?
  • Hi Kalpesh,

    I wouldn't recommend relying on a C2000 device that doesn't have a eQEP peripheral to obtain robust feedback from a A-B-I incremental encoder.  The eQEP is a very able pulse counter & simplifies the task considerably.

    Assuming your motor spins at 30krpm, it'd spin at 500Hz.  If the encoder has 2048 lines, the output signal from the encoder will change at 1MHz.  This means you'd have to sample these signals at 1MHz, and this would eat a lot of the available CPU bandwidth in the processor (and may make it challenging to control your motor).  If you don't sample at this rate, you are likely to miss pulses & then your angle feedback would be inaccurate. 

    If you need an A-B-I encoder, I'd strongly recommend choosing a device with an eQEP module.  In you're using InstaSPIN FAST, then the F2806*F or F2805*F devices are likely valid.  If you're not using InstaSPIN then F2803* may be viable.

    If you use an encoder with pulse-direction (instead of A-B-I), it may be possible to interface to a F2802* reliably, but it won't be as seamless as an eQEP driver.  The CpuTimer method described in the following might be an option:
    https://e2e.ti.com/support/microcontrollers/c2000/f/171/t/605566


    Thank you,
    Brett

  • Really, Thank you, Brett!!! For your detailed reply.
    I will discuss with my team and try to used F28069 for our next application.