Indholdsfortegnelse:

I - V -kurve med Arduino: 5 trin
I - V -kurve med Arduino: 5 trin

Video: I - V -kurve med Arduino: 5 trin

Video: I - V -kurve med Arduino: 5 trin
Video: Lesson 98: Arduino 10 LED Push button Projects, Potentiometer LED Voltmeter and Traffic Light 2024, Kan
Anonim
I - V -kurve med Arduino
I - V -kurve med Arduino

Jeg besluttede at oprette I – V kurve af lysdioder. Men jeg har kun et multimeter, så jeg lavede en enkel IV-måler med Arduino Uno.

Fra Wiki: En strøm -spændingskarakteristik eller I -V -kurve (strøm -spændingskurve) er et forhold, typisk repræsenteret som et diagram eller en graf, mellem den elektriske strøm gennem et kredsløb, en enhed eller materiale og den tilsvarende spænding, eller potentiel forskel på tværs af det.

Trin 1: Liste over materialer

Til dette projekt skal du bruge:

Arduino Uno med USB -kabel

brødbræt og duponts kabel

lysdioder (jeg brugte 5 mm røde og blå lysdioder)

faldmodstand (shuntmodstand) - Jeg besluttede mig for 200 ohm (for 5V er maksimal strøm 25 mA)

modstande eller potenciometer, jeg bruger blanding af modstande - 100k, 50k, 20k, 10k, 5k, 2,2k, 1k, 500k

Trin 2: Kredsløb

Kredsløb
Kredsløb

Kredsløb består af testning af led, shuntmodstand (R_drop) til måling af strøm. For at ændre spændingsfald og strøm bruger jeg forskellige modstande (R_x).

Grundprincippet er:

  • få total strøm I i kredsløb
  • få spændingsfald på test led Ul

Total strøm I

For at få total strøm måler jeg spændingsfald Ur på shuntmodstand. Jeg bruger analoge stifter til det. Jeg måler spænding:

  • U1 mellem GND og A0
  • U2 mellem GND og A2

Forskellige af disse spændinger er lige spændingsfald på shuntmodstand: Ur = U2-U1.

Samlet strøm I er: I = Ur/R_drop = Ur/250

Spændingsfald Ul

For at få spændingsfald på LED, trækker jeg U2 fra total spænding U (som skal være 5V): Ul = U - U2

Trin 3: Kode

flyde U = 4980; // spænding mellem GND og arduino VCC i mV = total spænding

flyde U1 = 0; // 1 sonde

flyde U2 = 0; // 2 sonde

flyde Ur = 0; // spændingsfald på shuntmodstand

flyde Ul = 0; // spændingsfald på LED

float I = 0; // total strøm i kredsløb

float R_drop = 200; // modstand af lukket modstand

ugyldig opsætning ()

{

Serial.begin (9600);

pinMode (A0, INPUT);

pinMode (A1, INPUT);

}

hulrum ()

{

U1 = float (analogRead (A0))/1023*U; // få spænding mellem GND og A0 i milliVolt

U2 = float (analogRead (A1))/1023*U; // få spænding mellem GND og A1 i milliVolt

Ur = U2-U1; // faldspænding på shuntmodstand

I = Ur/R_drop*1000; // total strøm i microAmps

Ul = U-U2; // spændingsfald på LED

Serial.print ("1");

Serial.print (U1);

Serial.print ("2");

Serial.print (U2);

Serial.print ("////");

Serial.print ("spændingsfald på shuntmodstand:");

Serial.print (Ur);

Serial.print ("spændingsfald på LED:");

Serial.print (Ul);

Serial.print ("samlet strøm:");

Serial.println (I);

// pause

forsinkelse (500);

}

Trin 4: Test

Test
Test
Test
Test
Test
Test

Jeg tester 2 lysdioder, rød og blå. Som du kan se, har blå led knæspænding større, og derfor har blå led brug for blå led at begynde at blæse omkring 3 volt.

Trin 5: Test af modstand

Test af modstand
Test af modstand
Test af modstand
Test af modstand

Jeg gør I - V kurve for modstand. Som du kan se, er grafen lineær. Grafer viser, at Ohms lov kun virker for modstande, ikke for lysdioder. Jeg beregner modstand, R = U/I. Målinger er ikke præcise ved lav strømværdi, fordi analog - digital omformer i Arduino har opløsning:

5V / 1024 = 4,8 mV og strøm -> 19,2 microAmps.

Jeg tror, målefejl er:

  • brødbrætskontanter er ikke superkontanter og laver nogle fejl i spændingen
  • brugte modstande har omkring 5 % variation i modstand
  • ADC -værdier fra analog læser oscilerer

Anbefalede: