Go Down

Topic: Libreria CapSense (Read 2 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