Motor Encoder emulation

Hello, I am thinking about building an position 1024 encoder emulator. It should read the position value from the TMS320F2818 through SPI and then generate the encoder pulses. The pulses are to be sent to the standard Inverter which is running a motor control program.The hardware seems not to be a problem, but I completly don't know how can I generate pulses from the TMS signal. Did somebody try to do this?

Thanks, pawl_s

Reply to
pawl
Loading thread data ...

When does your homework have to be handed in?

Deep

Reply to
Deep Reset

I've done it from a DSP56F805. I approached it several ways, then came upon a really solid way. The timers in this DSP are about the best I've ever seen for useful modes. Here are some comments from my program. (I'd include the program but it is Forth and specific to this processors, so just the comments might give you the idea.)

Using four timers could create perfect form waves, to 25ns anyway One timer is needed to do prescaling to bring the quadrature down to reasonable rates, say milliseconds. Then another timer is set to count how many of these ticks pass per phase. Two other timers count this output. These two timers have repetitive counts to 2, and are set off by one count. They toggle their outputs each time out.

Reply to
RMDumse

Thanks for help. I don't want to do this in the DSP, because I use it to control the Inverter and calculate a lot of other things in a bigger project with the interrupt frequency up to 80kHz (I should do it up to

100kHz but it seems that my code is to much for the DSP). That is why I want to send the signal out of the DSP to the external encoder emulator made with FPGA or something. Your idea could also be implemented in the DSP I think, I will try this.

Greetings, pawl_s

Reply to
pawl

Hello Deep, no, it is not my homework. I am not a specialist in the encoders, I write control programs for the IGBT inverters. Normally there is an encoder on the machine, and this signal is used in the speed control loop. But in this case there is no encoder provided and I want to simulate this for test purposes. I would have to sit here and think about the algorithm for a week or so, or maybe there is somebody, who did this before and I can save my time for the control program tests.

Greetings, Pawl_s

Reply to
pawl

The nice thing about my method of using timers is there is no interrupt overhead, or software overhead necessary at all to have a continuous stream of quadrature at a given frequency. Only when you want a freqency change is there any processor overhead to change the prescaler or middle timer.

If you want to put something external to your TMS, our TiniPod(TM) is very small, costs less than $100, has the DSP56F803, and could do quadrature generation, and still have most of its capacity left over for other tasks. I can provide my software with it. (Several pages, but most of it comments and explanation of how the timers work.

-- Randy M. Dumse

formatting link
Caution: Objects in mirror are more confused than they appear

Reply to
RMDumse

PolyTech Forum website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.