| 
  • If you are citizen of an European Union member nation, you may not use this service unless you are at least 16 years old.

  • You already know Dokkio is an AI-powered assistant to organize & manage your digital files & messages. Very soon, Dokkio will support Outlook as well as One Drive. Check it out today!

View
 

flex sensor

Page history last edited by Kristin Lucas 15 years, 6 months ago

Program a flex sensor

 
A Flex sensor changes resistance between 10k Ohms (straight) and 40k Ohms (bent). Follow this schematic to patch a flex sensor to your Arduino board. Connect the long lead of an LED in pin 13 of your digital in/out, and the short lead in Ground.

 

 

 

 

Download the schematic and breadboard diagram.

 
Copy and paste the following code into an Arduino sketch: 
 
 
 
int ledPin = 13; // declares a variable for the pin for an LED
 
int analoginPot = 2;   // declares a variable for the analog input pin
 
int potval = 0;   // declares a variable for reading the pin status
 
 
unsigned long ledCounter = 0; // a special integer variable for really big numbers
 
int toggle = 0; // declares a variable for a light switch, sets value to either 1 or 0
 
void setup() {
 
 pinMode(ledPin, OUTPUT);   // declares pin 13 as the output
 
 Serial.begin(9600);     // necessary if we want to report back to screen later in the script
}
 
void loop(){
 
  potval = analogRead(analoginPot);  // reads input value of analog pin 2
  Serial.println(potval);
 
  potval = (potval - 764);  // bend your flex sensor with serial monitor ON, subtract the lowest value received by your sensor
 
 
 ledCounter ++;  // adds 1 to our variable, represents time btwn on and off
 
 if (ledCounter > (potval * 10)) {  // multiplies potval variable times 10
 
                                                    // if condition is met it does the following...
 
   ledCounter = 0; // resets counter
 
   Serial.println("blink"); // prints the word “blink” in the Serial monitor
   
 
   if (toggle == 0){ // checks if light is switched on or off
 
     digitalWrite(ledPin, HIGH); // light (LED) turns on
 
     toggle = 1; // changes the switch for next time, so that the next time through it sets toggle to off
   }
 
   else if (toggle == 1){ // if toggle value is 1 and not 0 then ...
 
     digitalWrite(ledPin, LOW); // turns light on
 
     toggle = 0; // changes the switch for next time through
   }
 }

}  

Comments (0)

You don't have permission to comment on this page.