Inhaltsverzeichnis:
- Schritt 1: Materialliste
- Schritt 2: Schaltung
- Schritt 3: Code
- Schritt 4: Testen
- Schritt 5: Widerstand testen
Video: I - V-Kurve mit Arduino - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:17
Ich beschloss, eine I-V-Kurve von LEDs zu erstellen. Aber ich habe nur ein Multimeter, also habe ich mit Arduino Uno ein einfaches I-V-Meter erstellt.
Aus Wiki: Eine Strom-Spannungs-Kennlinie oder I-V-Kurve (Strom-Spannungs-Kurve) ist eine normalerweise als Diagramm oder Grafik dargestellte Beziehung zwischen dem elektrischen Strom durch eine Schaltung, ein Gerät oder ein Material und der entsprechenden Spannung, oder Potentialunterschied darüber.
Schritt 1: Materialliste
Für dieses Projekt benötigen Sie:
Arduino Uno mit USB-Kabel
Steckbrett und Duponts-Kabel
LEDs (ich habe 5 mm rote und blaue LEDs verwendet)
Drop-Widerstand (Shunt-Widerstand) - ich habe mich für 200 Ohm entschieden (für 5V ist maximaler Strom 25 mA)
Widerstände oder Potenziometer, ich verwende eine Mischung aus Widerständen - 100k, 50k, 20k, 10k, 5k, 2.2k, 1k, 500k
Schritt 2: Schaltung
Schaltung besteht aus Test-LED, Shunt-Widerstand (R_drop) zum Messen des Stroms. Um Spannungsabfall und Strom zu ändern, verwende ich verschiedene Widerstände (R_x).
Grundprinzip ist:
- Gesamtstrom I im Stromkreis erhalten
- Spannungsabfall beim Testen der LED-Ul erhalten
Gesamtstrom I
Um den Gesamtstrom zu erhalten, messe ich den Spannungsabfall Ur am Shunt-Widerstand. Dafür verwende ich analoge Pins. Ich messe Spannung:
- U1 zwischen GND und A0
- U2 zwischen GND und A2
Von diesen Spannungen unterscheidet sich der gleiche Spannungsabfall am Shunt-Widerstand: Ur = U2-U1.
Der Gesamtstrom I beträgt: I = Ur/R_drop = Ur/250
Spannungsabfall Ul
Um einen Spannungsabfall an der LED zu erhalten, subtrahiere ich U2 von der Gesamtspannung U (die 5 V betragen sollte): Ul = U - U2
Schritt 3: Code
Schwimmer U = 4980; // Spannung zwischen GND und Arduino VCC in mV = Gesamtspannung
Schwimmer U1=0; // 1 Sonde
Schwimmer U2=0; // 2 Sonde
Schwimmer Ur=0; // Spannungsabfall am Shunt-Widerstand
Schwimmer Ul=0; // Spannungsabfall an der LED
Schwimmer I = 0; // Gesamtstrom im Stromkreis
Float R_drop=200; // Widerstand des Schließwiderstands
Void-Setup ()
{
Serial.begin (9600);
PinMode (A0, EINGANG);
PinMode (A1, EINGANG);
}
Leere Schleife ()
{
U1 = float(analogRead(A0))/1023*U; // Spannung zwischen GND und A0 in Millivolt abrufen
U2 = float(analogRead(A1))/1023*U; // Spannung zwischen GND und A1 in Millivolt abrufen
Ur=U2-U1; // Spannung am Shunt-Widerstand absenken
I=Ur/R_drop*1000; // Gesamtstrom in Mikroampere
Ul=U-U2; // Spannungsabfall an der LED
Serial.print("1");
Seriendruck (U1);
Serial.print("2");
Seriendruck (U2);
Serial.print("///");
Serial.print ("Spannungsabfall am Shunt-Widerstand: ");
Serial.print (Ur);
Serial.print ("Spannungsabfall an der LED: ");
Serial.print (Ul);
Serial.print ("Gesamtstrom: ");
Serial.println (I);
// Pause
Verzögerung (500);
}
Schritt 4: Testen
Ich teste 2 LEDs, rot und blau. Wie Sie sehen können, hat die blaue LED eine größere Kniespannung, und deshalb brauchen blaue LEDs eine blaue LED, die um 3 Volt brennt.
Schritt 5: Widerstand testen
Ich mache I - V-Kurve für Widerstand. Wie Sie sehen, ist der Graph linear. Grafiken zeigen, dass das Ohmsche Gesetz nur für Widerstände gilt, nicht für LEDs. Ich berechne Widerstand, R = U/I. Die Messungen sind bei niedrigen Stromwerten nicht genau, da der Analog-Digital-Wandler in Arduino eine Auflösung hat:
5V / 1024 = 4,8 mV und Strom -> 19,2 Mikroampere.
Ich denke, Messfehler sind:
- Breadboard-Inhalte sind keine Super-Inhalte und machen einige Fehler in der Spannung
- gebrauchte Widerstände haben ca. 5 % Widerstandsvarianz
- ADC-Werte von analogen Leseschwingungen
Empfohlen:
Heimwerken -- Einen Spinnenroboter herstellen, der mit einem Smartphone mit Arduino Uno gesteuert werden kann – wikiHow
Heimwerken || Wie man einen Spider-Roboter herstellt, der mit einem Smartphone mit Arduino Uno gesteuert werden kann: Während man einen Spider-Roboter baut, kann man so viele Dinge über Robotik lernen. Wie die Herstellung von Robotern ist sowohl unterhaltsam als auch herausfordernd. In diesem Video zeigen wir Ihnen, wie Sie einen Spider-Roboter bauen, den wir mit unserem Smartphone (Androi
Bewegungsaktivierte Cosplay Wings mit Circuit Playground Express - Teil 1: 7 Schritte (mit Bildern)
Bewegungsaktivierte Cosplay-Flügel mit Circuit Playground Express - Teil 1: Dies ist Teil 1 eines zweiteiligen Projekts, in dem ich Ihnen meinen Prozess zur Herstellung eines Paars automatisierter Feenflügel zeige. Der erste Teil des Projekts ist der Mechanik der Flügel, und der zweite Teil macht es tragbar und fügt die Flügel hinzu
Schnittstellentastatur mit Arduino. [Einzigartige Methode]: 7 Schritte (mit Bildern)
Schnittstellentastatur mit Arduino. [Einzigartige Methode]: Hallo, und willkommen zu meinem ersten instructable! :) In diesem instructables möchte ich eine fantastische Bibliothek für die Schnittstelle der Tastatur mit Arduino teilen - 'Password Library' einschließlich 'Keypad Library'. Diese Bibliothek enthält die besten Funktionen, die wir wi
SCARA-Roboter: Lernen über Vorwärts- und inverse Kinematik !!! (Plot Twist Erfahren Sie, wie Sie mit PROCESSING eine Echtzeitschnittstelle in ARDUINO erstellen !!!!): 5 Schritte (mit Bildern)
SCARA-Roboter: Lernen über Vorwärts- und inverse Kinematik !!! (Plot Twist Learn How to Make a Real Time Interface in ARDUINO Using PROCESSING !!!!): Ein SCARA-Roboter ist eine sehr beliebte Maschine in der Industriewelt. Der Name steht sowohl für Selective Compliant Assembly Robot Arm als auch für Selective Compliant Articulated Robot Arm. Es ist im Grunde ein Roboter mit drei Freiheitsgraden, da er die ersten beiden Displ
Einfaches BLE mit sehr geringem Stromverbrauch in Arduino Teil 3 - Nano V2-Ersatz - Rev 3: 7 Schritte (mit Bildern)
Einfaches BLE mit sehr geringem Stromverbrauch in Arduino Teil 3 - Nano V2-Ersatz - Rev 3: Update: 7. April 2019 - Rev 3 von lp_BLE_TempHumidity, fügt Datums- / Zeitdiagramme mit pfodApp V3.0.362+ hinzu und automatische Drosselung beim Senden von DatenUpdate: 24. März 2019 – Rev 2 von lp_BLE_TempHumidity, fügt weitere Plotoptionen hinzu und i2c_ClearBus, fügt GT832E