Bara Veggin med en Arduino Beetbox (5 / 8 steg)
Steg 5: Arduino kod (Experiment)
#include < CapacitiveSensor.h >/*
* Använder ett högt värde motstånd t.ex. 10M mellan skicka pin och ta emot pin
* Motstånd effekter känslighet, experiment med värden, 50K - 50M. Större motstånd värden ge större sensor värden.
* Ta emot pin är givarstaven.
*/
#define error(msg) error_P(PSTR(msg)) CapacitiveSensor cs_9_6 = CapacitiveSensor(9,6); flyta calVal1 = 0,0; flyta total1 = 0,0; int jag = 0;
int LedPin = 2;
void setup() cs_9_6.reset_CS_AutoCal();
{
Serial.BEGIN(9600);
cs_9_6.set_CS_AutocaL_Millis(0x00001000); autocalibrate intervall på kanal 1
pinMode (LedPin, OUTPUT); void loop()
Jag = 0; / / Initiera vissa värden
calVal1 = 0,0;
}
{
total1 = cs_9_6.capacitiveSensor(30);
Röra sensorn medan lysdioden är hög att kalibrera TOUCH värdet
om (jag < 50) { / / kalibrera sensorn baslinje till Start
digitalWrite (LedPin, hög);
calVal1 = 0.1*float(total1) + 0,9 * calVal1;
Serial.println(calVal1); / / Skriv ut kalibreringsvärde under kalibrering cykel
delay(50);
digitalWrite (LedPin, låg);
Delay(50);
i ++;
}
annat { / / kalibrering är över
Serial.print(calVal1);
Serial.Print("\t");
Serial.println(total1); / / Skriv ut sensordata 1
om (total1 > 0,8 * calVal1) {
digitalWrite (LedPin, hög);
}
annat {
digitalWrite(LedPin,LOW);
}
}
}