Electronics > Projects, Designs, and Technical Stuff

Absolute Capacitive Rotary Encoder (ACRE) constructed out of two PCB's

(1/6) > >>


I made something cool and useful that I would like to share :scared:
An Absolute Capacitive Rotary Encoder (ACRE) constructed out of two simple PCB's.
After doing lots and lots of research (a few years back) I figured out how to replicate the technology used in electronic calipers.
Two weeks back I decided to create an opensource angle sensor using this technology and cheap parts. I have just released it on github: https://github.com/littleboot/ACRE.
I was thinking of using it for positional feedback for a NEMA17 stepper motor, to create a servo are something. But I believe it could be used for lots of other projects as well, any ideas?.

However I still have a few things I do not fully understand maybe someone here can help me answer these questions.
How the transmit signals can be created from scratch? (currently these are replicated using measurement data)
Why can't I use the FET as alternative for the analog switch?

Kind regards, Tom

Hi. This is quite an interesting idea.
Repurposing PCB for something else than a circuit board. We have seen PCB inductors, PCB fuses, PCB resistors but PCB capacitors are quite rare. There are capacitive sensing solutions but this concept (high resolution absolute position sensor)  :-+

I suspect that the capacitance in between layers might be a critical parameter in practical application. This is set by the distance in between capacitor plates..

So if you put a sticky elastomer between your two PCBs then you get the angular acceleration sensor.. It measures the twisting forces over elastomer. Of course yours has rather coarse resolution but I think it is not a problem to design artwork to cover smaller angles, with arbitrary resolution. Or you could make a 2D accelerometer this way.

Hi Alti thank you for your reply, The absolute capacitance value is not that critical, however it is important that the distance between the PCB's is evenly distributed (PCB must be parallel). It is possible to increase the distance between the PCB's or add an dielectric layer between the PCB's, I've tested paper and polyimide tape (kapton) without any issues. Increasing the distance or changing the dielectric layer mostly influences the amplitude of the signal on the receiving electrode, it does not influence the phase shift much so their is a minimum impact on the sensor output resolution. Increasing the distance between the electrodes has an impact on the resolution mostly because of the edge effect of a parallel plate capacitor that contributes to the total error, so placing the electrodes closer together is better.
(The distance between the reflector and transceiver PCB's in an electronic caliper is kept constant by the enclosure and a plastic sticker on top of the reflector).

What tool did you use to physically program the processor?



--- Quote from: littleboot on December 26, 2021, 12:28:49 pm ---The absolute capacitance value is not that critical, however it is important that the distance between the PCB's is evenly distributed (PCB must be parallel).
--- End quote ---
Yes, that is what I was thinking about. This distance must be kept within some tolerance.
Am I correct in understanding that this thing works like a Vernier scale? I read the description of the linked project but it is hard to imagine technical details. So you feed adjacent plates with same frequency phase shifted sin(t) signal (approximated by PWM-ed 0-1 that is then LP-filtered) and you look for the output phase shift (amplitude is ignored as long as this is within phase algorithm measurement range).

I was wondering about technological limitations of the resolution that can be achieved with general purpose PCB technology of such capacitive caliper scale. Imagine trace/clearance 10mils/10mils and the size of the sensor in the order of 2" (50.8mm). This allows etching 100 traces and 100 clearances. Assume capacitor plates separated by 10mil dielectric. How to estimate the working range vs resolution that can be theoretically achieved here?


[0] Message Index

[#] Next page

There was an error while thanking
Go to full version