- Kraftsensor oder kraftempfindlicher Widerstand
- Erforderliche Komponenten
- Schaltplan und Arbeitserklärung
In diesem Projekt werden wir eine unterhaltsame Schaltung mit Force Sensor und Arduino Uno entwickeln. Diese Schaltung erzeugt Schall, der linear mit der auf den Sensor ausgeübten Kraft zusammenhängt. Dafür werden wir den FORCE-Sensor mit Arduino Uno verbinden. In UNO verwenden wir die 8-Bit-ADC-Funktion (Analog to Digital Conversion), um die Aufgabe zu erledigen.
Kraftsensor oder kraftempfindlicher Widerstand
Ein FORCE-Sensor ist ein Wandler, der seinen Widerstand ändert, wenn Druck auf die Oberfläche ausgeübt wird. Der FORCE-Sensor ist in verschiedenen Größen und Formen erhältlich. Wir werden eine der billigeren Versionen verwenden, da wir hier nicht viel Genauigkeit benötigen. FSR400 ist einer der billigsten Kraftsensoren auf dem Markt. Das Bild des FSR400 ist in der folgenden Abbildung dargestellt. Sie werden auch als kraftempfindlicher Widerstand oder FSR bezeichnet, da sich sein Widerstand je nach Kraft oder Druck ändert. Wenn Druck auf diesen Kraftmesswiderstand ausgeübt wird, nimmt sein Widerstand ab, dh der Widerstand ist umgekehrt proportional zur ausgeübten Kraft. Wenn also kein Druck darauf ausgeübt wird, ist der Widerstand von FSR sehr hoch.
Nun ist es wichtig zu beachten, dass der FSR 400 entlang der Länge empfindlich ist. Die Kraft oder das Gewicht sollte auf das Labyrinth in der Mitte des Auges des Sensors konzentriert sein, wie in der Abbildung gezeigt. Wenn die Kraft zu falschen Zeiten angewendet wird, kann das Gerät dauerhaft beschädigt werden.
Ein weiterer wichtiger Punkt ist, dass der Sensor Ströme mit hoher Reichweite ansteuern kann. Beachten Sie daher bei der Installation die Antriebsströme. Außerdem hat der Sensor eine Kraftgrenze von 10 Newton. Wir können also nur 1 kg Gewicht auftragen. Bei Gewichten von mehr als 1 kg kann der Sensor Abweichungen aufweisen. Wenn es mehr als 3 kg erhöht ist. Der Sensor kann dauerhaft beschädigt werden.
Wie bereits erwähnt, wird dieser Sensor verwendet, um Druckänderungen zu erfassen. Wenn also das Gewicht auf den FORCE-Sensor aufgebracht wird, ändert sich der Widerstand drastisch. Der Widerstand des FS400 gegenüber dem Gewicht ist in der folgenden Grafik dargestellt.
Wie in der obigen Abbildung gezeigt, nimmt der Widerstand zwischen den beiden Kontakten des Sensors mit dem Gewicht ab oder die Leitfähigkeit zwischen zwei Kontakten des Sensors nimmt zu. Der Widerstand eines reinen Leiters ist gegeben durch:
Wo, p- Widerstand des Leiters
l = Länge des Leiters
A = Leiterfläche.
Stellen Sie sich nun einen Leiter mit dem Widerstand „R“ vor. Wenn auf den Leiter etwas Druck ausgeübt wird, nimmt die Fläche des Leiters ab und die Länge des Leiters nimmt aufgrund des Drucks zu. Nach der Formel sollte sich der Widerstand des Leiters erhöhen, da der Widerstand R umgekehrt proportional zur Fläche und auch direkt proportional zur Länge l ist.
Damit erhöht sich für einen Leiter unter Druck oder Gewicht der Widerstand des Leiters. Diese Änderung ist jedoch im Vergleich zum Gesamtwiderstand gering. Für eine beträchtliche Änderung werden viele Leiter zusammengestapelt. Dies geschieht innerhalb der in der obigen Abbildung gezeigten Kraftsensoren. Bei genauem Hinsehen sieht man viele Linien im Sensor. Jede dieser Linien repräsentiert einen Leiter. Die Empfindlichkeit des Sensors wird in Leiternummern angegeben.
In diesem Fall nimmt der Widerstand jedoch mit dem Druck ab, da das hier verwendete Material kein reiner Leiter ist. Die FSR sind hier robuste Polymer-Dickschichtvorrichtungen (PTF). Das sind also keine reinen Leitermaterialvorrichtungen. Diese bestehen aus einem Material, das mit zunehmender Kraft, die auf die Oberfläche des Sensors ausgeübt wird, eine Abnahme des Widerstands aufweist. Dieses Material zeigt Eigenschaften wie in der Grafik des FSR gezeigt.
Diese Änderung des Widerstands kann nichts nützen, wenn wir sie nicht lesen können. Der vorliegende Regler kann nur die Spannungschancen ablesen und nicht weniger, dafür verwenden wir eine Spannungsteilerschaltung, mit der wir die Widerstandsänderung als Spannungsänderung ableiten können.
Der Spannungsteiler ist eine Widerstandsschaltung und ist in der Abbildung dargestellt. In diesem Widerstandsnetzwerk haben wir einen konstanten Widerstand und einen anderen variablen Widerstand. Wie in der Abbildung gezeigt, ist R1 hier ein konstanter Widerstand und R2 ist ein FORCE-Sensor, der als Widerstand wirkt. Der Mittelpunkt der Verzweigung wird zur Messung gebracht. Mit R2-Änderung haben wir Änderung bei Vout. Damit haben wir eine Spannungsänderung mit dem Gewicht.
Hierbei ist zu beachten, dass der vom Controller für die ADC-Konvertierung verwendete Eingang nur 50 µAmp beträgt. Dieser Belastungseffekt des auf Widerstand basierenden Spannungsteilers ist wichtig, da der aus Vout des Spannungsteilers entnommene Strom den Fehlerprozentsatz erhöht, da wir uns jetzt nicht um den Belastungseffekt kümmern müssen.
So überprüfen Sie einen FSR-Sensor
Der Kraftmesswiderstand kann mit einem Multimeter getestet werden. Verbinden Sie die beiden Stifte des FSR-Sensors ohne Krafteinwirkung mit dem Multimeter und überprüfen Sie den Widerstandswert. Dieser ist sehr hoch. Wenden Sie dann etwas Kraft auf die Oberfläche an und sehen Sie die Abnahme des Widerstandswerts.
Anwendungen des FSR-Sensors
Kraftmesswiderstände werden hauptsächlich zur Erzeugung von Druckmessknöpfen verwendet. Sie werden in einer Vielzahl von Bereichen eingesetzt, z. B. in Bezug auf Fahrzeugbelegungssensoren, resistive Touchpads, Roboterfingerspitzen, künstliche Gliedmaßen, Tastaturen, Fußpronationssysteme, Musikinstrumente, eingebettete Elektronik, Prüf- und Messgeräte, OEM Development Kit und tragbare Elektronik, Sport. Sie werden auch in Augmented Reality-Systemen sowie zur Verbesserung der mobilen Interaktion verwendet.
Erforderliche Komponenten
Hardware: Arduino Uno, Stromversorgung (5 V), 1000 uF Kondensator, 100 nF Kondensator (3 Stück), 100 kΩ Widerstand, Summer, 220 Ω Widerstand, FSR400 Kraftsensor.
SOFTWARE: Atmel Studio 6.2 oder Aurdino jeden Abend
Schaltplan und Arbeitserklärung
Die Schaltungsverbindung für die Verbindung des Force-Sensing-Widerstands mit Arduino ist in der folgenden Abbildung dargestellt.
Die Spannung am Sensor ist nicht vollständig linear. es wird laut sein. Um das Rauschen herauszufiltern, werden Kondensatoren über jeden Widerstand in der Teilerschaltung gelegt, wie in der Abbildung gezeigt.
Hier nehmen wir die vom Teiler bereitgestellte Spannung (Spannung, die das Gewicht linear darstellt) und speisen sie in einen der ADC-Kanäle von UNO ein. Nach der Konvertierung nehmen wir diesen digitalen Wert (der das Gewicht darstellt) und beziehen ihn auf den PWM-Wert zum Ansteuern des Summers.
Mit dem Gewicht haben wir also einen PWM-Wert, der sein Tastverhältnis abhängig vom digitalen Wert ändert. Je höher der digitale Wert, desto höher das Tastverhältnis von PWM und desto höher das vom Summer erzeugte Rauschen. Also haben wir Gewicht mit Klang in Verbindung gebracht.
Bevor wir fortfahren, lassen Sie uns über ADC von Arduino Uno sprechen. ARDUINO verfügt über sechs ADC-Kanäle (siehe Abbildung). In diesen kann einer oder alle von ihnen als Eingänge für die analoge Spannung verwendet werden. Der UNO-ADC hat eine Auflösung von 10 Bit (also die ganzzahligen Werte von (0- (2 ^ 10) 1023)). Dies bedeutet, dass Eingangsspannungen zwischen 0 und 5 Volt auf ganzzahlige Werte zwischen 0 und 1023 abgebildet werden (5/1024 = 4,9 mV) pro Einheit.
Hier verwenden wir A0 von UNO.
Wir müssen einige Dinge wissen.
|
Zunächst haben die UNO ADC-Kanäle einen Standardreferenzwert von 5V. Dies bedeutet, dass wir für die ADC-Wandlung an jedem Eingangskanal eine maximale Eingangsspannung von 5 V angeben können. Da einige Sensoren Spannungen von 0 bis 2,5 V liefern, erhalten wir bei einer 5-V-Referenz eine geringere Genauigkeit, sodass wir eine Anweisung haben, mit der wir diesen Referenzwert ändern können. Um den Referenzwert zu ändern, haben wir ("analogReference ();"). Im Moment belassen wir ihn als.
Standardmäßig erhalten wir die maximale ADC-Auflösung der Karte von 10 Bit. Diese Auflösung kann mithilfe des Befehls ("analogReadResolution (bits);") geändert werden. Diese Auflösungsänderung kann in einigen Fällen nützlich sein. Im Moment belassen wir es als.
Wenn nun die obigen Bedingungen auf Standard gesetzt sind, können wir den Wert vom ADC des Kanals '0' lesen, indem wir direkt die Funktion "analogRead (pin);" aufrufen. Hier steht "pin" für den Pin, an den wir das analoge Signal angeschlossen haben, in diesem Fall für den wäre "A0". Der Wert von ADC kann als „int SENSORVALUE = analogRead (A0)“ in eine Ganzzahl übernommen werden. ”, Durch diesen Befehl wird der Wert nach ADC in der Ganzzahl“ SENSORVALUE ”gespeichert.
Die PWM von Arduino Uno kann an jedem der auf der Leiterplatte als „~“ symbolisierten Pins erreicht werden. Es gibt sechs PWM-Kanäle in UNO. Wir werden PIN3 für unseren Zweck verwenden.
analogWrite (3, VALUE); |
Aus dem obigen Zustand können wir das PWM-Signal direkt am entsprechenden Pin erhalten. Der erste Parameter in Klammern dient zur Auswahl der Pin-Nummer des PWM-Signals. Der zweite Parameter dient zum Schreiben des Tastverhältnisses.
Der PWM-Wert von UNO kann von 0 auf 255 geändert werden. Mit "0" als niedrigster Wert auf "255" als höchster Wert. Mit 255 als Tastverhältnis erhalten wir 5 V an PIN3. Wenn das Tastverhältnis mit 125 angegeben wird, erhalten wir 2,5 V an PIN3.
Jetzt haben wir einen Wert von 0-1024 als ADC-Ausgang und 0-255 als PWM-Tastverhältnis. Der ADC ist also ungefähr viermal so groß wie das PWM-Verhältnis. Wenn Sie also das ADC-Ergebnis durch 4 teilen, erhalten Sie das ungefähre Tastverhältnis.
Damit haben wir ein PWM-Signal, dessen Tastverhältnis sich linear mit dem Gewicht ändert. Da dies dem Summer gegeben wird, haben wir je nach Gewicht einen Schallgenerator.