From c6eb72a0ba6dad73e5adfe6cf79aadf467c58e31 Mon Sep 17 00:00:00 2001 From: Will Date: Mon, 1 Aug 2022 18:57:27 -0500 Subject: [PATCH 1/3] Working Knob Board (Encoder) Page Working Knob Board (Encoder) Page. The .svg file needs to be redone so that it shows up in dark mode. --- .../knob-encoder/images/PCB_3D_Top.png | Bin 0 -> 68869 bytes .../knob-encoder/images/amdc-Knob_lpf.svg | 184 ++++++++++++++++++ source/accessories/knob-encoder/index.md | 105 ++++++++++ source/index.rst | 1 + 4 files changed, 290 insertions(+) create mode 100644 source/accessories/knob-encoder/images/PCB_3D_Top.png create mode 100644 source/accessories/knob-encoder/images/amdc-Knob_lpf.svg create mode 100644 source/accessories/knob-encoder/index.md diff --git a/source/accessories/knob-encoder/images/PCB_3D_Top.png b/source/accessories/knob-encoder/images/PCB_3D_Top.png new file mode 100644 index 0000000000000000000000000000000000000000..e6cc9b2d01b49abba4daf954b3c64761779d8b2c GIT binary patch literal 68869 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�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 + + + + + + + + + + V + out + + + + 10kΩ + + + (from op amp) + + + + + 0.1μF + + + + + + ANLG_OUT + + + (to BNC) + + + + + + + + + + diff --git a/source/accessories/knob-encoder/index.md b/source/accessories/knob-encoder/index.md new file mode 100644 index 00000000..4c7c9ae7 --- /dev/null +++ b/source/accessories/knob-encoder/index.md @@ -0,0 +1,105 @@ + +# Knob Board[](https://docs.amdc.dev/accessories/Knob/index.html#Knob-board "Permalink to this headline") + +This document describes the design considerations and implementation details for the AMDC Knob (Encoder) expansion board. A block diagram is presented to explain each component in detail. + +![](images/PCB_3D_Top.png) + +## Relevant Hardware Versions[](https://docs.amdc.dev/accessories/Knob/index.html#relevant-hardware-versions "Permalink to this headline") + +- `AMDC REV D` with `Knob Board REV A` +- `AMDC REV E` with `Knob Board REV A` + +## Design Requirements and Considerations[](https://docs.amdc.dev/accessories/Knob/index.html#design-requirements-and-considerations "Permalink to this headline") + +The AMDC Knob expansion board was designed with the following requirements: + +1. Allow for an additional input to the AMDC + +2. Works with DB-15 and DB-9 connectors + +3. Designed to run off of 5V power supplied from the AMDC + +4. Minimize noise with debouncing and a Signal Differentiator + +### AMDC Connector +The AMDC Knob expansion board interfaces with the AMDC via either the DB-15 (GPIO) connector or the DB-9 (encoder) connector. The pinouts of the two connectors differ from one another as shown in the tables below. + + +### DB-15 Connector + | Pin Number | Power Stack | + | ---------- | ------------- | + | 1 | `5V DB-15` | + | 2 | `Encoder 1A` | + | 3 | `Encoder ~1A` | + | 4 | `Encoder 1B` | + | 5 | `Encoder ~1B` | + | 6 | No Connect | + | 7 | `Encoder 1Z` | + | 8 | `Encoder ~1Z` | + | 9 | No Connect | + | 10 | No Connect | + | 11 | `GND` | + | 12 | No Connect | + | 13 | No Connect | + | 14 | No Connect | + | 15 | No Connect | + +### DB-9 Connector + | Pin Number | Power Stack | + | ---------- | ------------- | + | 1 | `Encoder 1A` | + | 2 | `Encoder ~1A` | + | 3 | `Encoder 1B` | + | 4 | `Encoder ~1B` | + | 5 | `Encoder 1Z ` | + | 6 | `Encoder ~1Z` | + | 7 | `5V DB-9` | + | 8 | `GND` | + | 9 | `GND` | + + Both the DB-15 and DB-9 connectors can be connected to the Knob expansion board, however, the single jumper on the Knob board ensures power will only be pulled from one of the connectors. + + ## PCB Layout[](https://docs.amdc.dev/accessories/Knob/index.html#pcb-layout "Permalink to this headline") + +Two polygon pours were used to reduce the number of required traces. The top pour is the +5V net, and the bottom pour is the GND net. All components and most traces are also located on the top of the board to simplify the fabrication of the board. Additional PCB properties are outlined in the table below. + +| Property | Value | +| ----------------------- | --------------- | +| Size | 70mm x 80mm | +| Number of Layers | 2 | +| Thickness | 1.6mm | +| Min Track/Spacing | 6/6mil | +| Min Hole Size | 0.3mm | +| Surface Finish | HASL (Tin-Lead) | +| Silkscreen | Top Only | +| Unique Part Count | 9 | +| Unique SMD Part Count | 5 | +| Total Parts | 17 | +| Through-Hole Count | 53 | +| Cost per Board (Unit 1) | $8.64 | +| Cost per Board (Unit 10)| $7.17 | + +### LPFs[](https://docs.amdc.dev/accessories/Knob/index.html#lpfs "Permalink to this headline") + +Low pass filters such as the one shown below are used throughout the Knob expansion board. These low pass filters are used to prevent debouncing while still allowing for signals to be sent at a rate of 160 times per second. + +![](images/amdc-Knob_lpf.svg) + + +The cutoff frequency is achieved based on the resistance and capacitance values of the filter: + + + +_f_c = 1 / (2*_π*R_*C_) + + + +The LPF’s cutoff frequency is set to 160Hz (a resistor with _R_ = 10kΩ and a capacitor with _C_ = 0.1μF achieves the desired frequency). + + ## Datasheets[](https://docs.amdc.dev/accessories/Knob/index.html#datasheets "Permalink to this headline") + +- Encoder: [`PEC12R-4220F-S0024-ND`](https://www.bourns.com/docs/Product-Datasheets/PEC12R.pdf) + +- Signal Differentiator: [`AM26C31CNS`](https://www.ti.com/lit/ds/symlink/am26c31.pdf?HQS=dis-dk-null-digikeymode-dsf-pf-null-wwe&ts=1652390392703&ref_url=https%253A%252F%252Fwww.ti.com%252Fgeneral%252Fdocs%252Fsuppproductinfo.tsp%253FdistId%253D10%2526gotoUrl%253Dhttps%253A%252F%252Fwww.ti.com%252Flit%252Fgpn%252Fam26c31) + diff --git a/source/index.rst b/source/index.rst index 040a3ed9..036cfd2e 100644 --- a/source/index.rst +++ b/source/index.rst @@ -48,6 +48,7 @@ AMDC Platform Documentation accessories/uinverter/index DAC accessories/test-board/index + accessories/knob-encoder/index Welcome to the AMDC Platform documentation. From b18757c7896c5017781a18bcf3d146b3d10f0436 Mon Sep 17 00:00:00 2001 From: Will Date: Tue, 2 Aug 2022 00:44:05 -0500 Subject: [PATCH 2/3] Updated amdc-Knob_lpf.svg to look nicer in dark mode. amdc-Knob_lpf.svg is much more visible in dark mode now. --- .../knob-encoder/images/amdc-Knob_lpf.svg | 96 ++++++++++++++----- 1 file changed, 72 insertions(+), 24 deletions(-) diff --git a/source/accessories/knob-encoder/images/amdc-Knob_lpf.svg b/source/accessories/knob-encoder/images/amdc-Knob_lpf.svg index a806aece..9c4cfaf2 100644 --- a/source/accessories/knob-encoder/images/amdc-Knob_lpf.svg +++ b/source/accessories/knob-encoder/images/amdc-Knob_lpf.svg @@ -18,9 +18,9 @@ inkscape:pageopacity="0" inkscape:pagecheckerboard="0" showgrid="false" - inkscape:zoom="8.1655106" - inkscape:cx="104.525" - inkscape:cy="44.332806" + inkscape:zoom="4.4589649" + inkscape:cx="95.444341" + inkscape:cy="21.447028" inkscape:window-width="1920" inkscape:window-height="1017" inkscape:window-x="-8" @@ -38,11 +38,13 @@ id="path4440" class="cls-1" d="M139.48,23H97.22" - transform="translate(-1.79 -1.38)" /> + transform="translate(-1.79 -1.38)" + style="fill:#ffffff;fill-opacity:1;stroke-width:1.42;stroke-miterlimit:11.34000015;stroke-dasharray:none" /> V + id="text72" + style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-opacity:1;stroke-width:0.5;stroke-miterlimit:4;stroke-dasharray:none">V out + id="text74" + style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-opacity:1;stroke-width:0.5;stroke-miterlimit:4;stroke-dasharray:none">out + transform="translate(-1.79 -1.38)" + style="fill:#ffffff;fill-opacity:1;stroke-width:1.42;stroke-miterlimit:11.34000015;stroke-dasharray:none" /> 10kΩ + id="text78" + style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.5;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1">10kΩ (f(frrom op amp) + id="tspan83" + style="stroke:#000000;stroke-opacity:1;fill:#ffffff;fill-opacity:1;stroke-width:0.5;stroke-miterlimit:4;stroke-dasharray:none">om op amp) + transform="translate(-1.79 -1.38)" + style="fill:#ffffff;fill-opacity:1;stroke-width:1.42;stroke-miterlimit:11.34000015;stroke-dasharray:none" /> + transform="translate(-1.79 -1.38)" + style="fill:#ffffff;fill-opacity:1;stroke-width:1.42;stroke-miterlimit:11.34000015;stroke-dasharray:none" /> 0.1μF + id="text90" + style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-opacity:1;stroke-width:0.5;stroke-miterlimit:4;stroke-dasharray:none">0.1μF + transform="translate(-1.79 -1.38)" + style="fill:#ffffff;fill-opacity:1;stroke-width:1.42;stroke-miterlimit:11.34000015;stroke-dasharray:none" /> + transform="translate(-1.79 -1.38)" + style="fill:#ffffff;fill-opacity:1;stroke-width:1.42;stroke-miterlimit:11.34000015;stroke-dasharray:none" /> ANANLLG_OUT + id="tspan98" + style="stroke:#000000;stroke-opacity:1;stroke-width:0.5;stroke-miterlimit:4;stroke-dasharray:none;fill:#ffffff;fill-opacity:1">G_OUT ((tto BNC) + id="tspan105" + style="stroke:#000000;stroke-opacity:1;stroke-width:0.5;stroke-miterlimit:4;stroke-dasharray:none;fill:#ffffff;fill-opacity:1">o BNC) + transform="translate(-1.79 -1.38)" + style="fill:#ffffff;fill-opacity:1;stroke-width:0.6;stroke-miterlimit:2.26999998;stroke-dasharray:none" /> + transform="translate(-1.79 -1.38)" + style="fill:#ffffff;fill-opacity:1;stroke-width:0.6;stroke-miterlimit:2.26999998;stroke-dasharray:none" /> + + + + + + From 8479bf929d391d2c911d04473411287b5d98e507 Mon Sep 17 00:00:00 2001 From: Will Date: Tue, 2 Aug 2022 12:43:06 -0500 Subject: [PATCH 3/3] Updated amdc-Knob_lpf.svg for clearer dark mode viewing Updated amdc-Knob_lpf.svg to show up a bit better in dark mode. --- .../knob-encoder/images/amdc-Knob_lpf.svg | 37 ++++++++----------- 1 file changed, 16 insertions(+), 21 deletions(-) diff --git a/source/accessories/knob-encoder/images/amdc-Knob_lpf.svg b/source/accessories/knob-encoder/images/amdc-Knob_lpf.svg index 9c4cfaf2..65e2f7a0 100644 --- a/source/accessories/knob-encoder/images/amdc-Knob_lpf.svg +++ b/source/accessories/knob-encoder/images/amdc-Knob_lpf.svg @@ -19,8 +19,8 @@ inkscape:pagecheckerboard="0" showgrid="false" inkscape:zoom="4.4589649" - inkscape:cx="95.444341" - inkscape:cy="21.447028" + inkscape:cx="95.425734" + inkscape:cy="21.52966" inkscape:window-width="1920" inkscape:window-height="1017" inkscape:window-x="-8" @@ -58,7 +58,7 @@ class="cls-5" transform="translate(23.92 21.05)" id="text74" - style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-opacity:1;stroke-width:0.5;stroke-miterlimit:4;stroke-dasharray:none">out + style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-opacity:1;stroke-width:0.4;stroke-miterlimit:4;stroke-dasharray:none;font-size:10.66666667px">out + class="cls-3" + style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.4;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + transform="translate(-0.44853459,-1.7941384)"> (f(from op amp) + style="font-size:12px;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.4;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1">rom op amp) + class="cls-3" + style="stroke-width:0.4;stroke-miterlimit:4;stroke-dasharray:none"> ((to BNC) + style="font-size:12px;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.4;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1">to BNC)