Wiki

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
university:tools:m1k:analog-mux [29 Dec 2020 19:23] – new analog accessory board version Doug Merceruniversity:tools:m1k:analog-mux [21 Dec 2022 18:49] (current) – fix a couple of things Doug Mercer
Line 3: Line 3:
 The two analog input channels of the ADALM1000 provide a high input impedance and wide dynamic range which is very helpful for many of the measurements that students would be making around their laboratory activities. However, there are only the two analog inputs. Often, there are many more than two signals in the circuit or system under investigation that you would like to monitor. Or there could be a number of low bandwidth sensors, such as ambient temperature or light levels around a room, that need to be measured or monitored over long duration times when gathering experimental data. As a solution to this need, the following multi-channel analog multiplexer is proposed. The two analog input channels of the ADALM1000 provide a high input impedance and wide dynamic range which is very helpful for many of the measurements that students would be making around their laboratory activities. However, there are only the two analog inputs. Often, there are many more than two signals in the circuit or system under investigation that you would like to monitor. Or there could be a number of low bandwidth sensors, such as ambient temperature or light levels around a room, that need to be measured or monitored over long duration times when gathering experimental data. As a solution to this need, the following multi-channel analog multiplexer is proposed.
  
-A first incarnation of this very simple design uses one CD4052 dual 4:1 analog multiplexer (or the equivalent 74HC4052/74HCT4052 ) to switch one or both analog input channels, see the schematic in figure 1. The 4:1 mux added to the two input channels allows the board to measure up to 8 signal channels. More information and CAD design files for this and the other ADALM1000 accessory boards can be found [[university:tools:adalm1000:accessory-boards-index|on this Wiki page]].+A first incarnation of this very simple design uses one CD4052 dual 4:1 analog multiplexer (or the equivalent 74HC4052/74HCT4052 ) to switch one or both analog input channels, see the schematic in figure 1. In addition the PDIP versions of the MAX4618 and MAX4582 are pin compatible with the industry-standard 74HC4052. 
 + 
 +The 4:1 mux added to the two input channels allows the board to measure up to 8 signal channels. More information and CAD design files for this and the other ADALM1000 accessory boards can be found [[university:tools:adalm1000:accessory-boards-index|on this Wiki page]].
  
 {{ :university:tools:adalm1000:analog-mux-bw-sch.png?550 |}} {{ :university:tools:adalm1000:analog-mux-bw-sch.png?550 |}}
Line 44: Line 46:
  
 <WRAP centeralign> Figure 8, Simply attach 74HC4052 on proto-board and jumper wires</WRAP> <WRAP centeralign> Figure 8, Simply attach 74HC4052 on proto-board and jumper wires</WRAP>
 +
 +There are other analog multiplexer configurations in the generic CD4XXX series of CMOS ICs. The CD4051 is a single 8:1 mux and the CD4067 is a single 16:1 mux. The old Motorola MC14529B analog selector can be a configured as a dual 4-channel or single 8-channel device depending on how the input controls are used. By using 3 or all 4 of the digital PIO bits and two of these single multiplexers either 16 or even 32 signal channels could be measured. This [[https://www.sparkfun.com/products/9056|16:1 mux breakout board]] available from SparkFun is based on the CD74HC4067 and works well with the ALM1000. Another [[https://www.sparkfun.com/products/13906|8 Channel Multiplexer Breakout]] based the 74HC4051 is also available. Either works well with the ADALM1000. Also available from SparkFun, the [[https://www.sparkfun.com/products/18931|MIKROE Analog MUX Click]] board uses the 74HC4067 16:1 mux. The MIKROE analog mux board comes with spring action terminal blocks for the 16 analog inputs which makes for easy connections.
 +
 +{{ :university:tools:m1k:mikroe-analog_mux_click_2_.png?200 |}}
 +
 +<WRAP centeralign>MIKROE Analog MUX Click</WRAP>
  
 The SparkFun analog mux boards do not come with header connectors so they would need to be added. The pins on the connector do not line up with the M1k connectors so male to male jumpers would be needed as shown in the figure 9. The SparkFun analog mux boards do not come with header connectors so they would need to be added. The pins on the connector do not line up with the M1k connectors so male to male jumpers would be needed as shown in the figure 9.
Line 57: Line 65:
 <WRAP centeralign>Figure 10 Breadboard adapter with analog MUX and input attenuators</WRAP> <WRAP centeralign>Figure 10 Breadboard adapter with analog MUX and input attenuators</WRAP>
  
-There are other analog multiplexer configurations in the generic CD4XXX series of CMOS ICs. The CD4051 is a single 8:1 mux and the CD4067 is a single 16:1 mux. The old Motorola MC14529B analog selector can be a configured as a dual 4-channel or single 8-channel device depending on how the input controls are used. By using 3 or all 4 of the digital PIO bits and two of these single multiplexers either 16 or even 32 signal channels could be measured. These two mux breakout boards are available from SparkFun, the [[https://www.sparkfun.com/products/9056|74HC4067 16:1 mux]] and the [[https://www.sparkfun.com/products/13906|74HC4051 8:1 mux]]. Either works well with the ADALM1000. +Another functionally similar option is the [[adi>media/en/technical-documentation/data-sheets/ADG608_609.pdf|dual 4:1 ADG609]] and single ADG608 8:1 multiplexers, which have a different pin-out than the generic CD4051/52 multiplexers. Through-hole and surface mount ADG609 based boards similar to the one in figure 3 are also included in the zip file.
- +
-Another functionally similar option is the [[http://www.analog.com/media/en/technical-documentation/data-sheets/ADG608_609.pdf|dual 4:1 ADG609]] and single ADG608 8:1 multiplexers, which have a different pin-out than the generic CD4051/52 multiplexers. Through-hole and surface mount ADG609 based boards similar to the one in figure 3 are also included in the zip file.+
  
 While the generic CD4052 is lower cost than the ADG609, there are two main advantages of using the ADG609 over the CD4052. The ADG609 on resistance maximum spec is 30 ohms, where the CD4052 on resistance maximum spec is 240 ohms and the 74HC4052 on resistance maximum spec is 120 ohms. This higher resistance could cause errors and distortions in the measurements under certain conditions. While the generic CD4052 is lower cost than the ADG609, there are two main advantages of using the ADG609 over the CD4052. The ADG609 on resistance maximum spec is 30 ohms, where the CD4052 on resistance maximum spec is 240 ohms and the 74HC4052 on resistance maximum spec is 120 ohms. This higher resistance could cause errors and distortions in the measurements under certain conditions.
Line 65: Line 71:
 The TTL compatible digital input minimum logic high voltage spec for the ADG609 is 2.45 V where the CD4052 and 74HC4052 minimum logic high voltage spec is 3.15V which is just slightly lower than the 3.3V typical logic high output voltage generated by the ALM1000. The actual logic threshold for the CD4052 is probably closer to VDD/2 ( 2.5V ) at room temperature and seems to work ( given this will probably be used at room temperature ) but there could be little margin in certain cases. The TTL compatible 74HCT4052 has a 1.6 volt typical logic high threshold which is perfect for the 3.3 V CMOS outputs of the ALM1000. The TTL compatible digital input minimum logic high voltage spec for the ADG609 is 2.45 V where the CD4052 and 74HC4052 minimum logic high voltage spec is 3.15V which is just slightly lower than the 3.3V typical logic high output voltage generated by the ALM1000. The actual logic threshold for the CD4052 is probably closer to VDD/2 ( 2.5V ) at room temperature and seems to work ( given this will probably be used at room temperature ) but there could be little margin in certain cases. The TTL compatible 74HCT4052 has a 1.6 volt typical logic high threshold which is perfect for the 3.3 V CMOS outputs of the ALM1000.
  
-This analog multiplexer data acquisition add-on board is a perfect candidate for writing a custom program using the ALM1000 Python interface software package ([[https://github.com/signalspec/libsmu|libpysmu]]). A basic example Python program (eight-channel-mux.py) is written with a minimal display but provides all the ALM1000 libpysmu specific code to pole the dual 4:1 MUX inputs through the two analog input channels A and B. The display window as shown in figure 11 displays the 8 raw voltage values. The program can of course be further customized by the user to display the input signals in the appropriate scale factor with any gain and offset calibration for the sensor(s) being used. A copy of the Python program is included in the zip file.+This analog multiplexer data acquisition add-on board is a perfect candidate for writing a custom program using the ALM1000 Python interface software package ([[https://github.com/signalspec/libsmu|pysmu]]). A basic example Python program (eight-channel-mux.py) is written with a minimal display but provides all the ALM1000 pysmu specific code to pole the dual 4:1 MUX inputs through the two analog input channels A and B. The display window as shown in figure 11 displays the 8 raw voltage values. The program can of course be further customized by the user to display the input signals in the appropriate scale factor with any gain and offset calibration for the sensor(s) being used. A copy of the Python program is included in the zip file.
  
 {{ :university:tools:m1k-analog-mux_f5.png?300 |}} {{ :university:tools:m1k-analog-mux_f5.png?300 |}}
university/tools/m1k/analog-mux.1609266181.txt.gz · Last modified: 29 Dec 2020 19:23 by Doug Mercer