2017-06-18 3 views
0

Ich verwende Kraftsensor für die Messung seines Wertes über ADC von Arduino, hier ich 5V auf Kraftsensor und einen 3.3k Widerstand für liefern Pulldown. Nun wandeln Sie diesen rohen adc-Eingabewert (Bereich 0-1023) in eine Codierung um. Jetzt muss ich arduino entfernen und diesen Kraftsensor direkt an ESP8266 12F anschließen und sein adc verwenden, um die Spannung zu messen. Aber das Problem ist seine Reichweite ist nur 0-1V. Ich habe einige Spannungsteiler ausprobiert und 1V von der 5V-Versorgung auf der Rückseite gemacht, jetzt hat der adc-Wert einen Bereich von 0-90, die Kartenfunktion von arduino verwendend, die ich 0-90 zurück zu 0-1023 umwandelte. Hier ist die Codierung für 5V:Konvertieren 0 v-5 V Spannung auf 0-1 V für ADC (für ESP8266 12F)

fsrADC = analogRead(A0);      
float fsrV = fsrADC * VCC/1023.0;   //VCC = 5 
float fsrR = R_DIV * (VCC/fsrV - 1.0); //R_Div = 3300 for 3.3k pulldown 

Hier ist die Codierung für 1V:

fsrADC = analogRead(A0);   
fsrADC = map(fsrADC,0,90,0,1000);    
float fsrV = fsrADC * VCC/1023.0;   //VCC = 5 
float fsrR = R_DIV * (VCC/fsrV - 1.0); //R_Div = 3300 for 3.3k pulldown 

Danach gibt es ein paar mehr Zeilen, die diesen Widerstand zu Gewicht umwandelt. Wie Sie sehen können, brauche ich 0-1023 Bereich der Eingabe Analogwert für die nächste Zeile, um richtig zu funktionieren. Das berechnete Gewicht ist nicht genau. Ich denke, es ist das Problem der Versorgung, weil ich die 5V-Versorgung zu 1V durch eine Spannung geteilt und seine Ausgabe zu einem Sensor umwandelt. Irgendwelche Vorschläge und eine gute Spannung geteilt Schaltung?

+0

Etwas stimmt nicht mit Ihrem ADC; Das sollte von 0-1023 reichen, nicht nur von 90. Sie brauchen auch nicht die zweite Zeile in Ihrer "1V" Version, die insgesamt nur "(adc/1023) * VCC" sein sollte – dandavis

Antwort

0

Sie haben die richtige Idee im Vergleich zu 1.0V. Aber Sie müssen den ADC-Wert mit einer besser geeigneten Referenzspannung als described in the documentation vergleichen. Idealerweise würden Sie EXTERNAL 1.0V Referenz verwenden, die auf den Pin angewendet wird, obwohl die 1.1V Referenz auch mit einer geeigneten Software Skalierung ziemlich gute Ergebnisse liefern könnte. Referenzspannung ist der Schlüssel. Soweit Spannungsteiler Schaltungen gehen, google sie einfach, es ist eine super-einfache Schaltung vorausgesetzt, Sie haben die richtigen Widerstände. Sobald Sie sehr nahe an 1.0V kommen, wenden Sie das an AREF an und richten Sie das als Ihre Referenz entsprechend der Dokumentation ein.