SlideShare a Scribd company logo
1 of 6
Download to read offline
Textul si imaginile din acest document sunt licentiate
Attribution-NonCommercial-NoDerivs
CC BY-NC-ND
Codul sursa din acest document este licentiat
Public-Domain
Esti liber sa distribui acest document prin orice mijloace consideri (email, publicare pe website / blog, printare,
sau orice alt mijloc), atat timp cat nu aduci nici un fel de modificari acestuia. Codul sursa din acest document
poate fi utilizat in orice fel de scop, de natura comerciala sau nu, fara nici un fel de limitari.
Senzorul capacitiv
Prezentare.
In acest tutorial vei descoperi cum se poate construi si utiliza, cu o placa Arduino, un senzor
capacitiv. Libraria pe care o vei instala iti transforma 2 pini de pe placa Arduino intr-un senzor
capabil sa detecteze capacitatea electrica a corpului uman. Senzorul se poate construi relativ usor si
este format dintr-un rezistor de valoare mare, un fir de conexiune si o folie de Al. In functie de
valoarea rezistentei si de suprafata foliei, senzorul poate detecta corpul uman de la o distanta de
cativa cm.
Unde se poate aplica ?
Senzorul capacitiv se poate utiliza in orice loc unde detectia prin atingere este preferabila si
detectia este posibila chiar si prin cativa mm de material plastic, lemn, ceramica sau alte materiale
izolatoare. In acest mod senzorul poate fi acoperit si protejat.
Daca senzorul este acoperit cu un izolator ca foaia de hartie, atunci el se poate comporta ca
un senzor de forta avand un raspuns aproximativ logaritmic.
Cum functioneaza?
http://www.robofun.ro/forum
In imaginea de mai sus, cei 2 pini “Send” si “Receive” se vor conecta la placa Arduino. In
libraria speciala a senzorului exista o functie capacitiveSensor care schimba starea pinului Send. In
tot acest timp functia testeaza si cronometreaza daca pinul Receive a ajuns la starea pinului Send si
in final returneaza o valoare care variaza in functie de capacitatea senzorului.
Fizic, senzorul este alcatuit dintr-un rezistor care are o valoare cuprinsa intre 500KΩ-50MΩ.
Rezistorul se conecteaza intre pinii Send si Receive, iar la pinul Receive se conecteaza o folie din
Al, printr-un fir de conexiune si reprezinta de fapt partea sensibila a senzorului.
Atunci cand starea pinului Send este schimbata de placuta Arduino, dupa o perioada de
timp, pinul Receive isi schimba starea functie de Send. Perioada de tranzitie a pinului Send si a
pinului Receive este data de R * C, R fiind valoarea rezistentei si C este capacitatea care se
formeaza la pinul Receive. Valoarea rezistentei este constanta, dar capacitatea se schimba atunci
cand exista o atingere pe folia de Al. In acest mod exista intotdeauna o diferenta notabila atunci
cand folia este sau nu atinsa.
Functiile librariei.
CapacitiveSensor CapacitiveSensor(byte sendPin, byte receivePin)
Functia creaza o instanta a librariei si accepta 2 parametrii de tip byte, respectiv pinul Send
si pinul Receive.
long capacitiveSensorRaw(byte samples)
Functia returneaza o valoare de tip long integer a capacitatii absolute. Accepta ca parametru
un numar de samples sau esantioane. Cu cat samples este mai mare, cu atat rezolutia este mai mare
dar performanta este mai scazuta (timpi de executie mai mari). Daca valoarea returnata este -2
inseamna ca valoarea capacitatii depaseste valoarea CS_Timeout_Millis. Valoarea nominala
CS_Timeout_Millis este de 2000 mS.
long capacitiveSensor(byte samples)
Functia necesita parametrul samples si returneaza o valoare cumulata de tip long a
capacitatii. Functia returneaza o valoare foarte mica atunci cand nu exista nicio atingere pe folia de
Al.
void set_CS_Timeout_Millis(unsigned long timeout_millis)
Functia iti permite sa alegi perioada de timeout in care se asteapta ca pinul Receive sa isi
schimbe starea dupa pinul Send. Daca in perioada aleasa nu se realizeaza tranzitia Send / Receive,
se paraseste automat din functie cu valoarea -2. Valoarea nominala este de 2 secunde.
http://www.robofun.ro/forum
void reset_CS_AutoCal()
Prin aceasta functie se poate initia o calibrare fortata a senzorului.
void set_CS_AutocaL_Millis(unsigned long autoCal_millis)
Functia stabileste perioada de timeout pentru cealalta functie capacitiveSensor.
Cum utilizez senzorul cu placa Arduino ?
Iti propun urmatorul test pe care il poti realiza pe un breadboard avand o rezistenta, 3 fire de
conexiuni si o folie de Al. Se poate urmari schema orientativa din prima imagine.
Fizic, testul va arata astfel:
Descarca libraria de aici si dezarhiveaza continutul fisierului libraries in locatia:
arduino-1.0.x/libraries.
Deschide un sketch nou si copiaza (copy-paste) codul listat mai jos.
Incarca sketch-ul in placuta Arduino si deschide monitorul serial. Vei observa o serie de
valori ce se vor schimba atunci cand atingi sau nu folia de Al.
Monitorul va arata astfel.
http://www.robofun.ro/forum
Cand senzorul nu este atins, valorile vor oscila intre 1 si 2 (cea de-a doua coloana). Cand
senzorul este atins apare o diferenta notabila intre valori (peste 200).
Codul sursa.
http://www.robofun.ro/forum
#include <CapacitiveSensor.h>
CapacitiveSensor cs_4_2 = CapacitiveSensor(4,2); // 10M
resistor between pins 4 & 2, pin 2 is sensor pin, add a wire and or
foil if desired
void setup()
{
cs_4_2.set_CS_AutocaL_Millis(0xFFFFFFFF); // turn off
autocalibrate on channel 1 - just as an example
Serial.begin(9600);
}
void loop()
{
long start = millis();
long total1 = cs_4_2.capacitiveSensor(30);
Serial.print(millis() - start); // check on performance
in milliseconds
Serial.print("t"); // tab character for
debug windown spacing
Serial.print(total1); // print sensor output 1
Serial.println("t");
delay(100); // arbitrary delay to
limit data to serial port
}
Concluzie.
Este important ca placa Arduino sa fie conectata la o impamantare (GND). Daca utilizezi un
laptop, este posibil ca senzorul sa devina instabil. Daca devine instabil atunci poti conecta
incarcatorul, pentru ca iti ofera si punct de masa. O alta cale de a conecta placa Arduino este printr-
un fir de conexiune direct la un punct care face contact cu impamantarea, dar numai daca se doreste
si daca este posibil.
Stabilitatea senzorului se poate imbunatati printr-un condensator de 100 pF - .01 uF conectat
intre pin-ul Receive sau punctul senzitiv si GND.
http://www.robofun.ro/forum

More Related Content

Similar to Arduino capacitive sensor-robofun

Arduino protocolul 1 wire
Arduino   protocolul 1 wireArduino   protocolul 1 wire
Arduino protocolul 1 wireIulius Bors
 
Controlul unui motor pas cu pas
Controlul unui motor pas cu pasControlul unui motor pas cu pas
Controlul unui motor pas cu paskramactar
 
Arduino indicatoare cp-usiram
Arduino indicatoare cp-usiramArduino indicatoare cp-usiram
Arduino indicatoare cp-usiramIulius Bors
 
Set prizecomandatedinarduino
Set prizecomandatedinarduinoSet prizecomandatedinarduino
Set prizecomandatedinarduinoIulius Bors
 
Curs gratuitarduino lectia9-senzoriatmosferici
Curs gratuitarduino lectia9-senzoriatmosfericiCurs gratuitarduino lectia9-senzoriatmosferici
Curs gratuitarduino lectia9-senzoriatmosfericiIulius Bors
 
Arduino comparatorul intern
Arduino comparatorul internArduino comparatorul intern
Arduino comparatorul internIulius Bors
 
Cursuri. Calculatoare de bord.pdf
Cursuri. Calculatoare de bord.pdfCursuri. Calculatoare de bord.pdf
Cursuri. Calculatoare de bord.pdfChristinaArgesanu
 
Revista Tehnium 74_06
Revista Tehnium 74_06Revista Tehnium 74_06
Revista Tehnium 74_06mircea7
 
Arduino uno rfidid-12
Arduino uno rfidid-12Arduino uno rfidid-12
Arduino uno rfidid-12Iulius Bors
 
Senzori noi
Senzori noiSenzori noi
Senzori noigelu2001
 
Arduino - senzori
Arduino - senzoriArduino - senzori
Arduino - senzoriIoana Culic
 
Supliment Alarme.pdf
Supliment Alarme.pdfSupliment Alarme.pdf
Supliment Alarme.pdfivan ion
 
Arduino alcoolmetru
Arduino alcoolmetruArduino alcoolmetru
Arduino alcoolmetruIulius Bors
 
Arduino comunicatie i2c
Arduino comunicatie i2cArduino comunicatie i2c
Arduino comunicatie i2cIulius Bors
 
Despre automate programabile
Despre automate programabileDespre automate programabile
Despre automate programabileRomica Dilimot
 
Revista Tehnium 73_08
Revista Tehnium 73_08Revista Tehnium 73_08
Revista Tehnium 73_08mircea7
 

Similar to Arduino capacitive sensor-robofun (20)

Arduino protocolul 1 wire
Arduino   protocolul 1 wireArduino   protocolul 1 wire
Arduino protocolul 1 wire
 
Controlul unui motor pas cu pas
Controlul unui motor pas cu pasControlul unui motor pas cu pas
Controlul unui motor pas cu pas
 
Arduino indicatoare cp-usiram
Arduino indicatoare cp-usiramArduino indicatoare cp-usiram
Arduino indicatoare cp-usiram
 
Set prizecomandatedinarduino
Set prizecomandatedinarduinoSet prizecomandatedinarduino
Set prizecomandatedinarduino
 
Curs gratuitarduino lectia9-senzoriatmosferici
Curs gratuitarduino lectia9-senzoriatmosfericiCurs gratuitarduino lectia9-senzoriatmosferici
Curs gratuitarduino lectia9-senzoriatmosferici
 
Arduino comparatorul intern
Arduino comparatorul internArduino comparatorul intern
Arduino comparatorul intern
 
Cursuri. Calculatoare de bord.pdf
Cursuri. Calculatoare de bord.pdfCursuri. Calculatoare de bord.pdf
Cursuri. Calculatoare de bord.pdf
 
Revista Tehnium 74_06
Revista Tehnium 74_06Revista Tehnium 74_06
Revista Tehnium 74_06
 
Aiesec University 2012-arduino
Aiesec University 2012-arduinoAiesec University 2012-arduino
Aiesec University 2012-arduino
 
Arduino uno rfidid-12
Arduino uno rfidid-12Arduino uno rfidid-12
Arduino uno rfidid-12
 
Senzori noi
Senzori noiSenzori noi
Senzori noi
 
Arduino - senzori
Arduino - senzoriArduino - senzori
Arduino - senzori
 
Supliment Alarme.pdf
Supliment Alarme.pdfSupliment Alarme.pdf
Supliment Alarme.pdf
 
Arduino alcoolmetru
Arduino alcoolmetruArduino alcoolmetru
Arduino alcoolmetru
 
Arduino comunicatie i2c
Arduino comunicatie i2cArduino comunicatie i2c
Arduino comunicatie i2c
 
9906i.pdf
9906i.pdf9906i.pdf
9906i.pdf
 
Despre automate programabile
Despre automate programabileDespre automate programabile
Despre automate programabile
 
Eap 3 Timer
Eap 3 TimerEap 3 Timer
Eap 3 Timer
 
Revista Tehnium 73_08
Revista Tehnium 73_08Revista Tehnium 73_08
Revista Tehnium 73_08
 
Arduino sht11
Arduino sht11Arduino sht11
Arduino sht11
 

More from Iulius Bors

Raspberry pi wirelesshotspot
Raspberry pi wirelesshotspotRaspberry pi wirelesshotspot
Raspberry pi wirelesshotspotIulius Bors
 
Raspberry piuln2803
Raspberry piuln2803Raspberry piuln2803
Raspberry piuln2803Iulius Bors
 
Raspberry pi timelapse
Raspberry pi timelapseRaspberry pi timelapse
Raspberry pi timelapseIulius Bors
 
Raspberry pi lcd-shield20x4
Raspberry pi lcd-shield20x4Raspberry pi lcd-shield20x4
Raspberry pi lcd-shield20x4Iulius Bors
 
Raspberry pi bmp085blueedition
Raspberry pi bmp085blueeditionRaspberry pi bmp085blueedition
Raspberry pi bmp085blueeditionIulius Bors
 
Raspberry pi firmata - arduino
Raspberry pi   firmata - arduinoRaspberry pi   firmata - arduino
Raspberry pi firmata - arduinoIulius Bors
 
Programare in prolog_pentru_inteligenta_artificiala
Programare in prolog_pentru_inteligenta_artificialaProgramare in prolog_pentru_inteligenta_artificiala
Programare in prolog_pentru_inteligenta_artificialaIulius Bors
 
Motoare pascupasarduinoeasydriver
Motoare pascupasarduinoeasydriverMotoare pascupasarduinoeasydriver
Motoare pascupasarduinoeasydriverIulius Bors
 
Curs gratuitarduino lectia15-seismografcuexcel
Curs gratuitarduino lectia15-seismografcuexcelCurs gratuitarduino lectia15-seismografcuexcel
Curs gratuitarduino lectia15-seismografcuexcelIulius Bors
 
Curs gratuitarduino lectia14-analogieelectricitatecurgereafluidelor-proiect-f...
Curs gratuitarduino lectia14-analogieelectricitatecurgereafluidelor-proiect-f...Curs gratuitarduino lectia14-analogieelectricitatecurgereafluidelor-proiect-f...
Curs gratuitarduino lectia14-analogieelectricitatecurgereafluidelor-proiect-f...Iulius Bors
 
Curs gratuitarduino lectia13-mousesitastatura
Curs gratuitarduino lectia13-mousesitastaturaCurs gratuitarduino lectia13-mousesitastatura
Curs gratuitarduino lectia13-mousesitastaturaIulius Bors
 
Curs gratuitarduino lectia12-conexiunewifi-googledocs
Curs gratuitarduino lectia12-conexiunewifi-googledocsCurs gratuitarduino lectia12-conexiunewifi-googledocs
Curs gratuitarduino lectia12-conexiunewifi-googledocsIulius Bors
 
Curs gratuitarduino lectia11-muzicacuarduino
Curs gratuitarduino lectia11-muzicacuarduinoCurs gratuitarduino lectia11-muzicacuarduino
Curs gratuitarduino lectia11-muzicacuarduinoIulius Bors
 
Curs gratuitarduino lectia10-lcd-uri
Curs gratuitarduino lectia10-lcd-uriCurs gratuitarduino lectia10-lcd-uri
Curs gratuitarduino lectia10-lcd-uriIulius Bors
 
Curs gratuitarduino lectia8-comunicareethernet
Curs gratuitarduino lectia8-comunicareethernetCurs gratuitarduino lectia8-comunicareethernet
Curs gratuitarduino lectia8-comunicareethernetIulius Bors
 
Curs gratuitarduino lectia3-proiectesimple-1
Curs gratuitarduino lectia3-proiectesimple-1Curs gratuitarduino lectia3-proiectesimple-1
Curs gratuitarduino lectia3-proiectesimple-1Iulius Bors
 
Curs gratuitarduino lectia1-arduinoblink
Curs gratuitarduino lectia1-arduinoblinkCurs gratuitarduino lectia1-arduinoblink
Curs gratuitarduino lectia1-arduinoblinkIulius Bors
 
Cum instaleziapachesimysql peraspberrypi
Cum instaleziapachesimysql peraspberrypiCum instaleziapachesimysql peraspberrypi
Cum instaleziapachesimysql peraspberrypiIulius Bors
 
Conector bluetoothmatesilver arduino-pc
Conector bluetoothmatesilver arduino-pcConector bluetoothmatesilver arduino-pc
Conector bluetoothmatesilver arduino-pcIulius Bors
 
Asamblare statie meteo
Asamblare statie meteoAsamblare statie meteo
Asamblare statie meteoIulius Bors
 

More from Iulius Bors (20)

Raspberry pi wirelesshotspot
Raspberry pi wirelesshotspotRaspberry pi wirelesshotspot
Raspberry pi wirelesshotspot
 
Raspberry piuln2803
Raspberry piuln2803Raspberry piuln2803
Raspberry piuln2803
 
Raspberry pi timelapse
Raspberry pi timelapseRaspberry pi timelapse
Raspberry pi timelapse
 
Raspberry pi lcd-shield20x4
Raspberry pi lcd-shield20x4Raspberry pi lcd-shield20x4
Raspberry pi lcd-shield20x4
 
Raspberry pi bmp085blueedition
Raspberry pi bmp085blueeditionRaspberry pi bmp085blueedition
Raspberry pi bmp085blueedition
 
Raspberry pi firmata - arduino
Raspberry pi   firmata - arduinoRaspberry pi   firmata - arduino
Raspberry pi firmata - arduino
 
Programare in prolog_pentru_inteligenta_artificiala
Programare in prolog_pentru_inteligenta_artificialaProgramare in prolog_pentru_inteligenta_artificiala
Programare in prolog_pentru_inteligenta_artificiala
 
Motoare pascupasarduinoeasydriver
Motoare pascupasarduinoeasydriverMotoare pascupasarduinoeasydriver
Motoare pascupasarduinoeasydriver
 
Curs gratuitarduino lectia15-seismografcuexcel
Curs gratuitarduino lectia15-seismografcuexcelCurs gratuitarduino lectia15-seismografcuexcel
Curs gratuitarduino lectia15-seismografcuexcel
 
Curs gratuitarduino lectia14-analogieelectricitatecurgereafluidelor-proiect-f...
Curs gratuitarduino lectia14-analogieelectricitatecurgereafluidelor-proiect-f...Curs gratuitarduino lectia14-analogieelectricitatecurgereafluidelor-proiect-f...
Curs gratuitarduino lectia14-analogieelectricitatecurgereafluidelor-proiect-f...
 
Curs gratuitarduino lectia13-mousesitastatura
Curs gratuitarduino lectia13-mousesitastaturaCurs gratuitarduino lectia13-mousesitastatura
Curs gratuitarduino lectia13-mousesitastatura
 
Curs gratuitarduino lectia12-conexiunewifi-googledocs
Curs gratuitarduino lectia12-conexiunewifi-googledocsCurs gratuitarduino lectia12-conexiunewifi-googledocs
Curs gratuitarduino lectia12-conexiunewifi-googledocs
 
Curs gratuitarduino lectia11-muzicacuarduino
Curs gratuitarduino lectia11-muzicacuarduinoCurs gratuitarduino lectia11-muzicacuarduino
Curs gratuitarduino lectia11-muzicacuarduino
 
Curs gratuitarduino lectia10-lcd-uri
Curs gratuitarduino lectia10-lcd-uriCurs gratuitarduino lectia10-lcd-uri
Curs gratuitarduino lectia10-lcd-uri
 
Curs gratuitarduino lectia8-comunicareethernet
Curs gratuitarduino lectia8-comunicareethernetCurs gratuitarduino lectia8-comunicareethernet
Curs gratuitarduino lectia8-comunicareethernet
 
Curs gratuitarduino lectia3-proiectesimple-1
Curs gratuitarduino lectia3-proiectesimple-1Curs gratuitarduino lectia3-proiectesimple-1
Curs gratuitarduino lectia3-proiectesimple-1
 
Curs gratuitarduino lectia1-arduinoblink
Curs gratuitarduino lectia1-arduinoblinkCurs gratuitarduino lectia1-arduinoblink
Curs gratuitarduino lectia1-arduinoblink
 
Cum instaleziapachesimysql peraspberrypi
Cum instaleziapachesimysql peraspberrypiCum instaleziapachesimysql peraspberrypi
Cum instaleziapachesimysql peraspberrypi
 
Conector bluetoothmatesilver arduino-pc
Conector bluetoothmatesilver arduino-pcConector bluetoothmatesilver arduino-pc
Conector bluetoothmatesilver arduino-pc
 
Asamblare statie meteo
Asamblare statie meteoAsamblare statie meteo
Asamblare statie meteo
 

Arduino capacitive sensor-robofun

  • 1. Textul si imaginile din acest document sunt licentiate Attribution-NonCommercial-NoDerivs CC BY-NC-ND Codul sursa din acest document este licentiat Public-Domain Esti liber sa distribui acest document prin orice mijloace consideri (email, publicare pe website / blog, printare, sau orice alt mijloc), atat timp cat nu aduci nici un fel de modificari acestuia. Codul sursa din acest document poate fi utilizat in orice fel de scop, de natura comerciala sau nu, fara nici un fel de limitari.
  • 2. Senzorul capacitiv Prezentare. In acest tutorial vei descoperi cum se poate construi si utiliza, cu o placa Arduino, un senzor capacitiv. Libraria pe care o vei instala iti transforma 2 pini de pe placa Arduino intr-un senzor capabil sa detecteze capacitatea electrica a corpului uman. Senzorul se poate construi relativ usor si este format dintr-un rezistor de valoare mare, un fir de conexiune si o folie de Al. In functie de valoarea rezistentei si de suprafata foliei, senzorul poate detecta corpul uman de la o distanta de cativa cm. Unde se poate aplica ? Senzorul capacitiv se poate utiliza in orice loc unde detectia prin atingere este preferabila si detectia este posibila chiar si prin cativa mm de material plastic, lemn, ceramica sau alte materiale izolatoare. In acest mod senzorul poate fi acoperit si protejat. Daca senzorul este acoperit cu un izolator ca foaia de hartie, atunci el se poate comporta ca un senzor de forta avand un raspuns aproximativ logaritmic. Cum functioneaza? http://www.robofun.ro/forum
  • 3. In imaginea de mai sus, cei 2 pini “Send” si “Receive” se vor conecta la placa Arduino. In libraria speciala a senzorului exista o functie capacitiveSensor care schimba starea pinului Send. In tot acest timp functia testeaza si cronometreaza daca pinul Receive a ajuns la starea pinului Send si in final returneaza o valoare care variaza in functie de capacitatea senzorului. Fizic, senzorul este alcatuit dintr-un rezistor care are o valoare cuprinsa intre 500KΩ-50MΩ. Rezistorul se conecteaza intre pinii Send si Receive, iar la pinul Receive se conecteaza o folie din Al, printr-un fir de conexiune si reprezinta de fapt partea sensibila a senzorului. Atunci cand starea pinului Send este schimbata de placuta Arduino, dupa o perioada de timp, pinul Receive isi schimba starea functie de Send. Perioada de tranzitie a pinului Send si a pinului Receive este data de R * C, R fiind valoarea rezistentei si C este capacitatea care se formeaza la pinul Receive. Valoarea rezistentei este constanta, dar capacitatea se schimba atunci cand exista o atingere pe folia de Al. In acest mod exista intotdeauna o diferenta notabila atunci cand folia este sau nu atinsa. Functiile librariei. CapacitiveSensor CapacitiveSensor(byte sendPin, byte receivePin) Functia creaza o instanta a librariei si accepta 2 parametrii de tip byte, respectiv pinul Send si pinul Receive. long capacitiveSensorRaw(byte samples) Functia returneaza o valoare de tip long integer a capacitatii absolute. Accepta ca parametru un numar de samples sau esantioane. Cu cat samples este mai mare, cu atat rezolutia este mai mare dar performanta este mai scazuta (timpi de executie mai mari). Daca valoarea returnata este -2 inseamna ca valoarea capacitatii depaseste valoarea CS_Timeout_Millis. Valoarea nominala CS_Timeout_Millis este de 2000 mS. long capacitiveSensor(byte samples) Functia necesita parametrul samples si returneaza o valoare cumulata de tip long a capacitatii. Functia returneaza o valoare foarte mica atunci cand nu exista nicio atingere pe folia de Al. void set_CS_Timeout_Millis(unsigned long timeout_millis) Functia iti permite sa alegi perioada de timeout in care se asteapta ca pinul Receive sa isi schimbe starea dupa pinul Send. Daca in perioada aleasa nu se realizeaza tranzitia Send / Receive, se paraseste automat din functie cu valoarea -2. Valoarea nominala este de 2 secunde. http://www.robofun.ro/forum
  • 4. void reset_CS_AutoCal() Prin aceasta functie se poate initia o calibrare fortata a senzorului. void set_CS_AutocaL_Millis(unsigned long autoCal_millis) Functia stabileste perioada de timeout pentru cealalta functie capacitiveSensor. Cum utilizez senzorul cu placa Arduino ? Iti propun urmatorul test pe care il poti realiza pe un breadboard avand o rezistenta, 3 fire de conexiuni si o folie de Al. Se poate urmari schema orientativa din prima imagine. Fizic, testul va arata astfel: Descarca libraria de aici si dezarhiveaza continutul fisierului libraries in locatia: arduino-1.0.x/libraries. Deschide un sketch nou si copiaza (copy-paste) codul listat mai jos. Incarca sketch-ul in placuta Arduino si deschide monitorul serial. Vei observa o serie de valori ce se vor schimba atunci cand atingi sau nu folia de Al. Monitorul va arata astfel. http://www.robofun.ro/forum
  • 5. Cand senzorul nu este atins, valorile vor oscila intre 1 si 2 (cea de-a doua coloana). Cand senzorul este atins apare o diferenta notabila intre valori (peste 200). Codul sursa. http://www.robofun.ro/forum
  • 6. #include <CapacitiveSensor.h> CapacitiveSensor cs_4_2 = CapacitiveSensor(4,2); // 10M resistor between pins 4 & 2, pin 2 is sensor pin, add a wire and or foil if desired void setup() { cs_4_2.set_CS_AutocaL_Millis(0xFFFFFFFF); // turn off autocalibrate on channel 1 - just as an example Serial.begin(9600); } void loop() { long start = millis(); long total1 = cs_4_2.capacitiveSensor(30); Serial.print(millis() - start); // check on performance in milliseconds Serial.print("t"); // tab character for debug windown spacing Serial.print(total1); // print sensor output 1 Serial.println("t"); delay(100); // arbitrary delay to limit data to serial port } Concluzie. Este important ca placa Arduino sa fie conectata la o impamantare (GND). Daca utilizezi un laptop, este posibil ca senzorul sa devina instabil. Daca devine instabil atunci poti conecta incarcatorul, pentru ca iti ofera si punct de masa. O alta cale de a conecta placa Arduino este printr- un fir de conexiune direct la un punct care face contact cu impamantarea, dar numai daca se doreste si daca este posibil. Stabilitatea senzorului se poate imbunatati printr-un condensator de 100 pF - .01 uF conectat intre pin-ul Receive sau punctul senzitiv si GND. http://www.robofun.ro/forum