Arduino en FSR druksensor |
Datum: Januari 2014
Inleiding:
De gedachte achter dit experiment was om te kijken of we m.b.v. een druksensor een balans kunnen bouwen. |
Principe:
Een druksensor gebruiken om een gewicht te bepalen. |
Materiaal:
|
|
|
Uitvoering:
|
|
Sketch code | |
//* FSR test sketch. Een contact van de FSR is verbonden met 5V. Het andere contact is verbonden met de analoge pin 0 en via een 10 Kohm weerstand met de min (Gnd).Led verbonden met pin 11 Voor meer informatie www.ladyada.net/learn/sensors/fsr.html */ int fsrAnalogePin = 0; // FSR is verbonden met analoog 0 int LEDpin = 11; // De LED is verbonden met pin 11 (pmw pin) int fsrWaarde; // De analoge waarde van de fsr spanningdeler int LEDhelderheid; // De helderheid van de led tussen 0 en 255 void setup() { Serial.begin(9600); // start de serial monitor pinMode(LEDpin, OUTPUT); } void loop() { fsrWaarde = analogRead(fsrAnalogePin); Serial.print("Analoge waarde = "); // print 'Analoge waarde' Serial.println(fsrWaarde); // print de fsrwaarde op de monitor // maak van getallen tussen 0 en 1023 getallen tussen 0 en 255 LEDhelderheid = map(fsrWaarde, 0, 1023, 0, 255); analogWrite(LEDpin, LEDhelderheid); delay(100); } |
Resultaten:
De opstelling werkt precies zoals in de instructies die ik op het web gevonden heb (Interactief Ontwerpen) vermeld staat zoals in onderstaande screenshot te zien is. Het probleem is echter dat men alleen waardes kan meten als men met zijn duim op de druksensor drukt. Als men een gewicht op de druksensor zet blijft deze een 0-waarde aangeven. |
|
Discussie:
Wederom een experimentje dat niet het
resultaat gaf waar ik op hoopte. Ik ben nog steeds een beetje gecharmeerd
over het oorspronkelijke idee, zet wat bekende gewichten op de druksensor en
noteer de gemeten waardes. Bereken een regressielijn, en programmeer deze in
het sketch programma. Geeft het gewicht dat men met de druksensor meet dan
weer op een LCD scherm. De reden dat ik dacht dat dit zou werken was omdat deze druksensoren een resolutie van ca. 10 g hebben, en dat ik een gewichtenset had die met deze range overweg kon. Zoals vermeld was het probleem echter dat er alleen maar een waarde gemeten werd als ik met mijn duim op de druksensor drukte, niet als ik er een gewicht op zette. |
|
De druksensor die we in dit experiment gebruikt hebben is een Force Sensitive Resistor (FSR), waarbij ij de weerstand afhankelijk is van de kracht de op het materiaal wordt uitgeoefend. De verandering van de weerstand als gevolg van een kracht is echter niet lineair. | |
De FSR is opgebouwd uit een geleidende polymeer. De detectiefilm bevat sub-micro deeltjes die of geleidend of niet geleiden zijn. Door druk uit te oefenen op het oppervlak van de sensorfilm worden deeltjes in de geleidende elektrode gedrukt waardoor de weerstand van de film veranderd. | |
Men zou dus verwachten dat het systeem gevoeliger zou zijn als er weinig kracht wordt uitgeoefend. Dat hebben we echter niet waargenomen.. De enige conclusie die ik dan kan trekken is dat de gewichten die we op de sensor gezet hebben te weinig druk uitoefenen om de deeltjes in de film te drukken. Misschien dat de kracht door de platte onderzijde net iets teveel gespreid wordt. |
Conclusie:
|
Opmerkingen:
|
Literatuur:
|
Relevante websites:
Minder relevante websites:
Achtergrondinformatie: Arduino is een opensource-computerplatform (printplaat, computer) bedoeld voor iedereen die geïnteresseerd is in het maken en ontwerpen van objecten die kunnen reageren op hun omgeving, door het aansluiten van allerlei sensoren en actuatoren op de Arduino. Via de sensoren kan digitale en analoge inputsignalen genereren die door de Arduino verwerkt worden en dan weer een actie kunnen initiëren door het afgeven van digitale en analoge outputsignalen. Input kan bijvoorbeeld worden gegenereerd door schakelaars, lichtsensoren, bewegingsmeters, afstandsmeters, temperatuursensoren, of op basis van commando's afkomstig van internet, een radiomodule of een ander apparaat met een seriële interface. Outputsignalen kunnen bijvoorbeeld motoren, lampjes, pompjes en beeldschermen aansturen, maar ook input genereren voor een andere Arduinomodule. Op de Arduino kan men zogenaamde "shields" zetten door dezen op de input-/outputpinnen van de Arduino te plaatsen. Deze shields kunnen bv extra functie toevoegen of verschillende sensoren en modules in één printplaat combineren. Het meest bekende shield is het ProtoShield dat dienst doet als breadboard, om op te experimenteren. |
19/01/2014