Touch Sensors

StigOfTheDump

Senior Member
I've spent a couple of days messing about making touch sensors.

The most successful and prettiest was 4 pieces of aluminium foil sellotaped to a piece of paper with a picture of 4 buttons on the other side. I couldn't solder to the foil so I sellotaped the wires on then laminated the whole lot in one of those ID badges.

The one with the highest change was a similar construction with one large piece of foil. 2 of these were stapled together (not through the foil) with a layer of quilted toilet tissue sandwiched in between.

Another effort was some 100uF electrolytics. It didn't seem to matter which lead you used (or even both) but best results were got by touching the side of the casing rather than the end. If these were encased you would get a much smaller contact area.

Todays efforts centred around some plastic covered drawing pins (250 various colours for £1.49 at Lidl, with 160 free coloured breadboard jumper cables that unfortunately dont have the ends stripped and are curled up like a paper clip). These have a stiffish plastic cover that springs away from the drawing pin so can be tuned so that you have to press on the plastic to operate.

The applications I have in mind will need to be in a strong plastic box and be at least IP68 preferably IP69K as they will be used in a hostile environment. I am thinking the higher I can get the change, the thicker I can have the plastic box.

Has anyone else had any phenomenal successes or tragic failures with home-made sensors?

The worst of all my efforts was the one that cost 4 pence!
 

StigOfTheDump

Senior Member
Test results

Here's the results I've got so far

Code:
Drawing pin model (near laptop)							
							
	Normal			Touched		Pressed	
w1	5624-	5649		6400		7200	
w2	5561-	5587		6100		6400	
w3	5592-	5609		6100		6500	
w4	7794-	7859		8250		9100	
							
							
Drawing pin model (away from electricals)							
							
	Normal			Touched		Pressed	
w1	5905-	5977		6694		7646	
w2	6089-	6104		6838		7920	
w3	6116-	6132		6936		7675	
w4	7217-	7241		8215		8475	
							
							

Laminated 4 button (without protoboard behind)							

	Normal			Touched			
w1	6298-	6305		10046			
w2	6278-	6289		9654			
w3	6399-	6419		9980			
w4	7492-	7514		10918			


Laminated 4 button (with protoboard behind)							

	Normal			Touched			
w1	7202-	7213		10987			
w2	6704-	6721		11521			
w3	6835-	6858		11418			
w4	8320-	8333		12815			
							


Laminated single button (with back plate not connected)							

	Normal			Touched		Pressed	
w1	6963-	6978		11735		21096	
							
Laminated single button (with back plate connected to 0v)							

	Normal			Touched		Pressed	
w1	27781-	27843		37536		49913
Simple code, 4 inputs & 4 outputs. It says in the manual that each input will be different. All the Bs were very similar but the C.2 was different. I swapped the sensors round but C.2 was still the highest.

Code:
'18M2

main:
	debug
	
	touch16 B.1, w1 'Green drawing pin
	touch16 B.2, w2 'Yellow drawing pin
	touch16 B.3, w3 'Red drawing pin
	touch16 C.2, w4 'Blue drawing pin

	if w1 > 6800 then
	high B.5		'Green LED
	else
	low B.5
	endif

	if w2 > 6800 then
	high B.6		'Yellow LED
	else
	low B.6
	endif

	if w3 > 6800 then
	high B.7		'Red LED
	else
	low B.7
	endif

	if w4 > 8200 then
	for b0=120 to 127 'Noise
	sound C.1,(b0,1)
	next b0
	for b0=127 to 120 step -1
	sound C.1,(b0,1)
	next b0
	endif

goto main
I was reading the results from the debug window. Is there any way to make it stand-alone so that you can type your new code values whilst it is still on display? It always has the focus, even when minimised so I have to close it first.

Drawing pin
Laminated1
Laminated2
 

StigOfTheDump

Senior Member
Hi

Thanks for the tips.

I never read the AXE181 module as I don't have one, but maybe I should have done!

The rest of this post has now been resolved. I left it in for the benefit of anyone who has been using the manuals in the same way as me. I read all 3 whilst waiting for my first shipment to arrive but now use mainly manual 2 for syntax and manual 3 for interfacing.

I tried sertxd. Would be good for checking historical data, but I found it hard to read the current data. Is there a newline character that can be sent? I tried using more than one sertxd commands but they just carry on, on the old line. I tried padding out with spaces but as the length of my variable changed it got misaligned again. Can I get the display in hex. I tried using $ and % instead of and as well as # but with no success.

I thought I'd found the solution when I found the option add <CR> on send, but it made no difference.

Eventually I found the solution. It is in the sertxd tutorial in manual 1

Lesson learned. Read the tutorials as well as the commands in manual 2!

Code:
sertxd ("w1 ",#w1,"   w2 ",#w2,"   w3 ",#w3,"   w4 ",#w4,CR,LF)
The CR & LF cause the new data to be on a new line. I thought that maybe the CR by itself would keep the data repeating on the top line but it didn't. The LF by itself did start a new line .

The postie's just brought my shipment of 28x2 modules. I couldn't resist them at half price.

Onwards and upwards.
 
Top