Go Down

Topic: Libreria CapSense (Read 2431 times) previous topic - next topic

Ambrogio

Ciao a tutti. Sto facendo alcune prove con la libreria CapSense perchè vorrei costruire dei pulsanti a sfioramento.

Ho però un problema: ho collegato una resistenza da 1 MOhm tra i piedini 2 e 4 come descritto nel Playground e toccando con il dito il piedino della resistenza vedo variare il valore circa da 2 a 11000. Fin qui tutto ok, il problema è il tempo di risposta. Sembra che devo toccare il filo per almeno 3 secondi perchè l'Arduino se ne accorga.
Collegandomi con il serial monitor vedo che i valori vengono aggiunti alla visualizzazione ogni 2-3 secondi ... come se ci fosse un delay nello sketch ma non c'è nessun ritardo a parte i 10 mS per non intasare la seriale !

ecco il link al playgroung dove ho anche preso lo sketch
http://www.arduino.cc/playground/Main/CapSense

Ambrogio

Dai, non ci credo che nessuno ha provato ... come si fa a fare una cosa di questo tipo: http://www.youtube.com/watch?v=m91dwBjfAng

Dalla descrizione sembra che ci vuole solo una resistenza da 20M e un foglio di alluminio ! Se è così allora il problema nel mio caso è nel software.

Ambrogio

Ok ho risolto da solo. Spiego che cosa ho fatto nel caso servisse a qualcuno:

Lo sketch di esempio della libreria CapSense si riferisce a 3 resistenze collegate rispettivamente ai pin :

tra 4 e 2
tra 4 e 6
tra 4 e 8

se si collega una sola resistenza (come nel mio caso tra 4 e 2) arduino rimane in attesa degli altri due valori e quindi fino a quando non va in timeout non esegue la lettura successiva.

Ho risolto lasciando nello sketch solo la parte riguardante il sensore 4-2

NetWorm

zie Ambrogio, domani ci gioco un po' anche io =)

camba192

ho provato anche io questa libreria tra ieri e oggi e noto che é una bella cosa, l'unica cosa e che i dati nn sono precisissimi avete qualche idea per renderli un po piu precisi?

Ambrogio

Ma teoricamente io avevo sentito che migliorava mettendo il GND dell'arduino a terra ... poi non so. Per ora non ho fatto molte prove visto che ho solo di max 1 MOhm

emanuele

ragazzi ma avete provato il    qt 100 ???

camba192

e cosa sarebbe? spiegati ...

emanuele

allora sono una specie di integrati che con 2 condensatori e una resistenza permettono di fare un pulsante capacitivo cioe se ci mette dietro un vetro e sfiori il vetro dove e posto lui praticamente attivi il pulsante e questi integrati anno la possibilita di fare  un pulsante e arrivano fino 48 tasti e li puoi mettere dietro a qualsiesi superfice non so se mi sono spiegato bene qmc se vuoi ti to il link

Davide

s', posta il link. Mi incuriosisce.

camba192

gia anche a me. e una cosa interessante ...

emanuele

allora questo e il link http://www.siongboon.com/projects/2007-11-29_touch_sensor/index.htm

e scpiega anche il semplice circuito ,spiega anche altri circuiti ma li devi perforsa toccare il filo senno' non va

io ne ho acquistati una decina ad un canale e 5 ad 8 canali

ci sara' da divertirci!!!
il costo e irrisorio

ciao

gec

#12
May 26, 2010, 04:59 pm Last Edit: May 26, 2010, 05:17 pm by gecnicolson Reason: 1
salve a tutti, mi sto approcciando ad arduino..e vorrei utilizzare la libreria capsense per i sensori capacitivi, ma non riesco proprio ad installare le librerie..nel senso che io le installo, ma mi dà errore nella compilazione del listato dicendo che non riesce a trovare il file capsense.h


**aggiornamento**
ora ancora peggio

Code: [Select]
o: In function `CapSense::reset_CS_AutoCal()':
C:\DOCUME~1\ETEROG~1\IMPOST~1\Temp\build4784774640396026877.tmp/CapSense.cpp:130: multiple definition of `CapSense::reset_CS_AutoCal()'

C:\DOCUME~1\ETEROG~1\IMPOST~1\Temp\build4784774640396026877.tmp\CapSenseSketch\CapSense.cpp.o:C:\Documents and Settings\Eterogeneo\Desktop\arduino\libraries\CapSenseSketch/CapSense.cpp:128: first defined here

o: In function `CapSense::set_CS_AutocaL_Millis(unsigned long)':
C:\DOCUME~1\ETEROG~1\IMPOST~1\Temp\build4784774640396026877.tmp/CapSense.cpp:134: multiple definition of `CapSense::set_CS_AutocaL_Millis(unsigned long)'

C:\DOCUME~1\ETEROG~1\IMPOST~1\Temp\build4784774640396026877.tmp\CapSenseSketch\CapSense.cpp.o:C:\Documents and Settings\Eterogeneo\Desktop\arduino\libraries\CapSenseSketch/CapSense.cpp:132: first defined here

o: In function `CapSense::set_CS_Timeout_Millis(unsigned long)':
C:\DOCUME~1\ETEROG~1\IMPOST~1\Temp\build4784774640396026877.tmp/CapSense.cpp:137: multiple definition of `CapSense::set_CS_Timeout_Millis(unsigned long)'

C:\DOCUME~1\ETEROG~1\IMPOST~1\Temp\build4784774640396026877.tmp\CapSenseSketch\CapSense.cpp.o:C:\Documents and Settings\Eterogeneo\Desktop\arduino\libraries\CapSenseSketch/CapSense.cpp:135: first defined here

o: In function `CapSense::SenseOneCycle()':
C:\DOCUME~1\ETEROG~1\IMPOST~1\Temp\build4784774640396026877.tmp/CapSense.cpp:144: multiple definition of `CapSense::SenseOneCycle()'

C:\DOCUME~1\ETEROG~1\IMPOST~1\Temp\build4784774640396026877.tmp\CapSenseSketch\CapSense.cpp.o:C:\Documents and Settings\Eterogeneo\Desktop\arduino\libraries\CapSenseSketch/CapSense.cpp:142: first defined here

o: In function `CapSense::capSenseRaw(unsigned char)':
C:\DOCUME~1\ETEROG~1\IMPOST~1\Temp\build4784774640396026877.tmp/CapSense.cpp:116: multiple definition of `CapSense::capSenseRaw(unsigned char)'

C:\DOCUME~1\ETEROG~1\IMPOST~1\Temp\build4784774640396026877.tmp\CapSenseSketch\CapSense.cpp.o:C:\Documents and Settings\Eterogeneo\Desktop\arduino\libraries\CapSenseSketch/CapSense.cpp:114: first defined here

o: In function `CapSense::capSense(unsigned char)':
C:\DOCUME~1\ETEROG~1\IMPOST~1\Temp\build4784774640396026877.tmp/CapSense.cpp:70: multiple definition of `CapSense::capSense(unsigned char)'

C:\DOCUME~1\ETEROG~1\IMPOST~1\Temp\build4784774640396026877.tmp\CapSenseSketch\CapSense.cpp.o:C:\Documents and Settings\Eterogeneo\Desktop\arduino\libraries\CapSenseSketch/CapSense.cpp:68: first defined here

o: In function `CapSense':
C:\DOCUME~1\ETEROG~1\IMPOST~1\Temp\build4784774640396026877.tmp/CapSense.cpp:20: multiple definition of `CapSense::CapSense(unsigned char, unsigned char)'

C:\DOCUME~1\ETEROG~1\IMPOST~1\Temp\build4784774640396026877.tmp\CapSenseSketch\CapSense.cpp.o:C:\Documents and Settings\Eterogeneo\Desktop\arduino\libraries\CapSenseSketch/CapSense.cpp:20: first defined here

o: In function `CapSense':
C:\DOCUME~1\ETEROG~1\IMPOST~1\Temp\build4784774640396026877.tmp/CapSense.cpp:20: multiple definition of `CapSense::CapSense(unsigned char, unsigned char)'

C:\DOCUME~1\ETEROG~1\IMPOST~1\Temp\build4784774640396026877.tmp\CapSenseSketch\CapSense.cpp.o:C:\Documents and Settings\Eterogeneo\Desktop\arduino\libraries\CapSenseSketch/CapSense.cpp:20: first defined here

pitusso

@Ambrogio e  @emanuele
grazie mille!
Mi frullava in testa di utilizzare interruttori capacitivi / a sfioramento per una lampada RGB (in bagno ho un interruttore del genere sulla specchiera e mi intrippava troppo..), ma non mi ero ancora guardato in giro!





Go Up
 


Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

Arduino
via Egeo 16
Torino, 10131
Italy