Analog Multiplexer for NXT touch sensor by STAAK
STAAK posted on the Polish LUGPOL forum an nice instruction guide in How to build a touch sensor multiplexer.
He describes:" For both multiplexers I used resistors with values 32k, 10k, 68k, and 150k. The NXT touch sensor already have a built-in additional 2.2 k resistor.
By design, the two multiplexers (RCX, NXT) will work with the NXT via a single block in NXT-G. Because the use of the internal resistors (and the same precision resistors), I needed to create a block for the NXT-G that allows the thresholds to be set by the user. Normally when you insert a block to the project can be seen only as the left side of the settings. Select the checkbox will show a window for manually setting the appropriate thresholds.
Port: 1 to 4 = the Port connected on the NXT
Limit: 1 to 6
TH1000 for threshold limit of 5 = 520 indicates that this threshold is detected in the range 515 < TH1000 < 525.
Threshold: 0 to 1023
Drop-down box in the left window is used only for viewing a given threshold value.
A threshold value is nothing more than the raw value for the relevant states of the configuration of sensors
TH1011 should be read as TH Sensor1=1 Sensor2=0 Sensor3=1 Sensor4=1 where
Sensor1 = in series with 10k resistor
Sensor2 = in series with 32k resistor
Sensor3 = in series with 68k resistor
Sensor4 = in series with 150k resistor
The output signal from this block is the four outputs (T1-T4), True / False
where True state of the output indicates that the sensor is pressed.
After setting the threshold check block, save the project.
The Copy/Paste option allows you to insert the block into a new project together with the pre-set thresholds.
Click here to download the block.
The cost of the multiplexer elements was less than 2$ for the resistors
The NXT-G block was written in LabView with the overlay LabVIEW Toolkit for LEGO MINDSTORMS NXT available on the National Instruments.
see also his Brickshelf folder.
Well done STAAK!