Go Down

Topic: Encoder based ultra slow speed servo motor control through arduino (Read 37 times) previous topic - next topic



I have no experience in electronic designing so need some suggestions about a desired project using arduino.

My requirement is to monitor a very slow rotating servo motor shaft (one revolution per 24 hours) and to provide a calculated correction to maintain a uniform speed throughout rotation at high resolution (send 5 corrections per seconds to motor firmware with a 0.06 arc-sec resolution).

As I understood I have to use an analog rotary encoder for the purpose to monitor angular speed of servo motor and electronic circuit to calculate speed and position to determine the correction values.

I want to use a sin cos rotary incremental encoder with 2048 pulse (Heidenhain ERN 1387) as no absolute encoder can give that resolution. Is there anyone can suggest what should be approach. I would need to read analog output of encoder convert it to digital value through ADC which I have no experience.

How should I choose a ADC for my requirement. I tried to go through various forums but didn't get complete understanding about this. Please let me know if anyone can help on this.

Thanks in advance.


I want to use a sin cos rotary incremental encoder with 2048 pulse (Heidenhain ERN 1387)
Post a link, not a vague description.

For a 1 revolution per day shaft turning that coder, you'd get 2048 pulses per day, or 86 pulses per hour, or less than 2 per second.

Telling the servo to speed up, or slow down, 5 times per second, given new data less than twice a second, seems pointless.

Is the servo really rotating that slow? Or is there a gear drive that is reducing a more reasonable motor speed to RPD?
The art of getting good answers lies in asking good questions.

Go Up