| Both sides previous revision Previous revision | |
| pcbgraycode [2026/08/14 00:42] – removed - external edit (Unknown date) 127.0.0.1 | pcbgraycode [2026/08/14 00:42] (current) – ↷ Page name changed from pcbgreycode to pcbgraycode yair |
|---|
| | a turntable embedded on a PCB, a silkscreen on a round PCB to encode the position using [[#gray_code]] |
| | |
| | {{:video-1547726867.mp4}} {{youtube>em2OpwheHMU?medium}} {{:20190208_151040.mp4|}} {{::turntablepcb-v4-zofzpcb.mp4|using www.zofzpcb.com on archLinux/wine}} |
| | {{:v1.3.jpg?400}} {{:50533102_325584924718706_62649425226366976_n.jpg?400}} |
| | |
| | [[https://github.com/idiot-io/turntablePCB|github]] repository |
| | |
| | |
| | === tools used === |
| | |
| | [[https://inkscape.org|inkscape]]\\ |
| | extensions |
| | *[[https://github.com/badgeek/svg2shenzhen|svg2shenzhen]] |
| | *[[https://github.com/Hyvok/Inkscape-rotary-encoder-disk-generator|rotary encoder generator]] |
| | |
| | [[https://kicad.org|kicad]] |
| | *[[https://github.com/idiot-io/turntablePCB/blob/master/board/kicad_gerber_gen.py|python script example to create plot files to build a board]] |
| | |
| | ===Layout=== |
| | [[https://www.pololu.com/docs/0J13/2|digital]] \\ |
| | {{:pasted:20190122-211551.png}} |
| | |
| | [[https://www.pololu.com/docs/0J13/3|analog]] \\ |
| | {{:pasted:20190601-085501.png}} |
| | |
| | |
| | a few guides and approaches |
| | |
| | *[[http://gunook.com/honigbienenzahler-ii|Honey bee counter II]] |
| | *https://cdn.sparkfun.com/datasheets/Sensors/Infrared/SparkFun%20Line%20Follower%20Array_v10.pdf |
| | |
| | |
| | ===Gray code=== |
| | [[http://en.wikipedia.org/wiki/Gray_code|wikipedia]]\\ |
| | |
| | <blockquote>{{youtube>IeWcvAsz88o?medium}} |
| | <cite>"to get a gray number only change one bit"</cite> |
| | </blockquote> |
| | |
| | <blockquote>{{:pasted:20190122-192340.png}} |
| | <cite>http://datagenetics.com/blog/november32014/</cite> |
| | </blockquote> |
| | |
| | {{:greycode.png}} {{https://i.imgur.com/DbMB6Vvm.png}} |
| | |
| | |
| | ===components=== |
| | *QRE1113 - [[http://www.onsemi.com/pub/Collateral/QRE1113-D.PDF|datasheet]], [[https://www.aliexpress.com/item/50pcs-lot-QRE1113GR-QRE1113-QRE1113G-SMD4-Original-authentic-and-new-in-stock-Free-Shipping-IC/32841727674.html|aliExp]] |
| | {{https://i.imgur.com/oE29h9I.png}} {{https://i.imgur.com/82dWTnM.png}} \\ |
| | {{https://i.imgur.com/4fpaVVjl.png}} {{https://i.imgur.com/5jFBp8gl.png}} |
| | |
| | |
| | ====other methods==== |
| | the following are for reference |
| | ===LED as light Sensor=== |
| | no word regarding detection speed |
| | *[[https://wiki.analog.com/university/courses/electronics/electronics-lab-led-sensor|analog.com]] |
| | *[[https://makezine.com/projects/make-36-boards/how-to-use-leds-to-detect-light/|makezine]] |
| | |
| | ===magnetic=== |
| | [[http://www.ichaus.de/upload/pdf/WP6en_Magnetic_vs_optical_17092012.pdf|Magnetic_vs_optical]] |
| | |
| | ===DC motor=== |
| | simply connecting a dc motor to the spinning disk\\ |
| | by rotating the disk you convert the energy to analog input for MCU or whatever\\ |
| | problem with this approach it will not give enough output at slow speeds. so probably scratch that. |
| | |
| | ===Stepper motor=== |
| | |
| | same as with the DC motor, you connect the motor to the disks center, then hook the stepper winding A1/2,B1/2 to an MCU, you get a nice stepping encoder. |
| | |
| | following links are actually to use the sinusoidal wave of the stepper, a bit of a different approach\\ |
| | also a problem at low speeds. |
| | |
| | * [[https://wemakethings.net/2013/02/18/steppers-as-rotary-encoders/|steppers-as-rotary-encoders]] |
| | * [[http://www.4qdtec.com/stpen.html|stpen]] |
| | |
| | |
| | |
| |