Мазмуну:

Arduino менен I - V ийри сызыгы: 5 кадам
Arduino менен I - V ийри сызыгы: 5 кадам

Video: Arduino менен I - V ийри сызыгы: 5 кадам

Video: Arduino менен I - V ийри сызыгы: 5 кадам
Video: Гостиницага келдик бир берейин эми 2024, Май
Anonim
I - V ийри Ардуино менен
I - V ийри Ардуино менен

Мен LEDлердин I – V ийри сызыгын түзүүнү чечтим. Бирок менде бир гана мультиметр бар, ошондуктан мен Arduino Uno менен жөнөкөй I-V метрди түздүм.

Викиден: Учурдагы -чыңалуу мүнөздөмөсү же I -V ийри (ток -чыңалуу ийри) - схема, түзүлүш же материал аркылуу өткөн электр тогу менен тиешелүү чыңалуу же анын ортосундагы потенциалдуу айырма.

1 -кадам: Материалдардын тизмеси

Бул долбоор үчүн сизге керек болот:

USB кабели менен Arduino Uno

нан жана дюпонт кабели

LED (мен 5 мм кызыл жана көк леддерди колдондум)

түшүү каршылыгы (шунт каршылыгы) - Мен 200 ом үчүн чечим кабыл алдым (5В үчүн максималдуу ток 25 мА)

резистор же потенциометр, мен резисторлордун аралашмасын колдоном - 100k, 50k, 20k, 10k, 5k, 2.2k, 1k, 500k

2 -кадам: Circuit

Circuit
Circuit

Район токту өлчөө үчүн LED, шунт каршылыгын (R_drop) текшерүүдөн турат. Чыңалууну жана токту өзгөртүү үчүн мен ар кандай резисторлорду (R_x) колдоном.

Негизги принцип:

  • чынжырдагы жалпы токту I алам
  • тестирлөөдө чыңалуунун төмөндөшүн алып Ul

Жалпы ток И

Жалпы токту алуу үчүн, мен шунттун резисторунда Ur чыңалуусунун түшүшүн өлчөйм. Ал үчүн аналогдук төөнөгүчтөрдү колдоном. Мен чыңалууну өлчөйм:

  • G1 менен A0 ортосундагы U1
  • U2 GND жана A2 ортосунда

Бул чыңалуудан айырмаланып, шунт каршылыгындагы бирдей чыңалуу төмөндөйт: Ur = U2-U1.

Жалпы ток I: I = Ur/R_drop = Ur/250

Чыңалуу төмөндөшү Ул

Жарыктын чыңалуусун түшүрүү үчүн, U2 жалпы чыңалуусунан U2 бөлөм (5В болушу керек): Ul = U - U2

3 -кадам: Код

калкып U = 4980; // GND менен arduino VCC ортосундагы чыңалуу mVде = жалпы чыңалуу

float U1 = 0; // 1 иликтөө

float U2 = 0; // 2 иликтөө

float Ur = 0; // шунт каршылыгынын чыңалуусу

float Ul = 0; // электр чыңалуусунун төмөндөшү

float I = 0; // чынжырдагы жалпы ток

float R_drop = 200; // жабуу каршылыгынын каршылыгы

жараксыз орнотуу ()

{

Serial.begin (9600);

pinMode (A0, INPUT);

pinMode (A1, INPUT);

}

боштук цикл ()

{

U1 = float (analogRead (A0))/1023*U; // миллиВольтто GND менен A0 ортосундагы чыңалууга ээ болуңуз

U2 = float (analogRead (A1))/1023*U; // миллиВольтто GND менен A1дин ортосундагы чыңалууга ээ болуңуз

Ur = U2-U1; // шунт резисторунда чыңалуу төмөндөйт

I = Ur/R_drop*1000; // microAmpsтеги жалпы ток

Ul = U-U2; // LEDдеги чыңалуунун төмөндөшү

Serial.print ("1");

Serial.print (U1);

Serial.print ("2");

Serial.print (U2);

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

Serial.print ("шунт каршылыгындагы чыңалуу төмөндөшү:");

Serial.print (Ur);

Serial.print ("чыңалуу төмөндөдү:");

Serial.print (Ul);

Serial.print ("жалпы ток:");

Serial.println (I);

// тыным

кечигүү (500);

}

4 -кадам: Тестирлөө

Тестирлөө
Тестирлөө
Тестирлөө
Тестирлөө
Тестирлөө
Тестирлөө

Мен кызыл жана көк түстөгү 2 ледди сынап жатам. Көрүнүп тургандай, көк ледде тизе чыңалуусу чоңураак, ошондуктан көк LED көк вольтту 3 Вольттун тегерегинде үйлөп башташы керек.

5 -кадам: Резисторду тестирлөө

Testing Resistor
Testing Resistor
Testing Resistor
Testing Resistor

Мен резистор үчүн I - V ийри сызыгын жасайм. Көрүнүп тургандай, график сызыктуу. Графиктер көрсөткөндөй, Ом мыйзамы светодиоддор үчүн эмес, резисторлор үчүн гана иштейт. Мен каршылыкты эсептейм, R = U/I. Өлчөөлөр төмөн токтун маанисинде так эмес, анткени аналогдук - санариптик конвертер Arduinoдо чечимге ээ:

5V / 1024 = 4.8 мВ жана учурдагы -> 19.2 microAmps.

Менимче, өлчөө каталары:

  • нандын катышуучулары супер конкуренттер эмес жана чыңалууда кээ бир каталарды кетиришет
  • колдонулган резисторлордун каршылыгынын 5 % тегерегинде
  • Аналогдук окуудан ADC мааниси термелет

Сунушталууда: