I am working on a one axis traverse system, where a precise readout of the relative position is important.
I was planning to use an encoder like this:
I would prefer the 13 bit version but as i understand it the arduino can only handle 10bit.
I would also like the microcontroller to run a stepper motor and brake.
Should I use a ESP32 for this task instead with the 12bit encoder?
Also any suggestions to a stepper driver allowing microstepping is appreciated.
Thanks in advance!
You may also consider using an external ADC such as the 16-bit ADS1115.
as i understand it the arduino can only handle 10bit.
Your understanding is not correct. You are probably thinking of the Arduino analog inputs.
The encoder is digital, with a standard A/B/Z output, and as such, any of those encoders is compatible with Arduino. However, the electrical
interface is TTL and may require level shifting (https://knowledge.ni.com/KnowledgeArticleDetails?id=kA00Z0000019MNOSA2) (e.g. a 1K pullup resistor) for the Arduino CMOS inputs.
any suggestions to a stepper driver allowing microstepping is appreciated.
Buy one compatible with the current rating of the stepping motor you have in mind. Pololu has a good selection.
Thank you both very much!