Simpleng Arduino Digital Ohmmeter Circuit

Subukan Ang Aming Instrumento Para Sa Pagtanggal Ng Mga Problema





Sa post na ito magtatayo kami ng isang simpleng digital ohmmeter circuit gamit ang Arduino at 16x2 LCD display. Susisiyasatin din namin ang iba pang posibleng mga ideya sa circuit gamit ang parehong konsepto.

Layunin ng Circuit

Ang motto ng artikulong ito ay hindi lamang paggawa ng isang ohm meter upang masukat ang paglaban ng iyong multimeter na maaaring mas mahusay na gawin ang pareho.



Ang pangunahing layunin ng proyektong ito ay upang gamitin ang halaga ng paglaban na basahin ng arduino upang makagawa ng ilang mga kapaki-pakinabang na proyekto, halimbawa, alarma sa sunog, kung saan ang pagbabago sa halaga ng paglaban ng thermistor ay madaling makita o awtomatikong sistema ng patubig kung saan, kung ang paglaban ng lupa napupunta mataas ang microcontroller ay maaaring magpalitaw ng water pump. Ang posibilidad ng mga proyekto ay nasa sa iyong imahinasyon.

Tingnan natin kung paano gumawa muna ng isang metro ng ohm at pagkatapos ay lumipat kami sa iba pang mga ideya sa circuit.



Paano ito gumagana

Arduino Ohmmeter Circuit

Ang circuit ay binubuo ng Arduino maaari mong gamitin ang iyong paboritong Arduino board, isang 16x2 LCD display upang maipakita ang hindi kilalang halaga ng risistor, isang potensyomiter upang ayusin ang antas ng kaibahan ng LCD display. Ginagamit ang dalawang resistor, isa sa mga ito ay kilalang halaga ng risistor at iba pa ay hindi kilalang halaga ng risistor.

Ang paglaban ay isang pagpapaandar na analogue, ngunit ang halagang ipinapakita sa LCD ay digital function. Kaya, kailangan nating gumawa ng analogue sa digital conversion, sa kabutihang palad ang Arduino ay may built-in na 10-bit na analogue sa digital converter.

Ang 10-bit ADC ay maaaring makilala ang mga antas ng discrete boltahe ng 1024, ang 5 volt ay inilapat sa 2 resistors at ang sample ng boltahe ay kinuha sa pagitan ng mga resistors.

Gamit ang ilang mga kalkulasyon sa matematika, ang pagbagsak ng boltahe sa node at kilalang halaga ng paglaban ay maaaring bigyang kahulugan upang makahanap ng hindi kilalang halaga ng paglaban.

Ang mga equation ng matematika ay nakasulat sa programa, kaya't walang manu-manong pagkalkula na kailangang gawin, maaari nating mabasa ang direktang halaga mula sa LCD display.

Prototype ng may-akda:

Arduino Digital Ohmmeter Prototype

Programa para sa Ohm meter:

//-------------Program developed by R.Girish--------//
#include
LiquidCrystal lcd(12,11,5,4,3,2)
int analogPin=0
int x=0
float Vout=0
float R=10000 //Known Resistor value in Ohm
float resistor=0
float buffer=0
void setup()
{
lcd.begin(16,2)
lcd.setCursor(0,0)
lcd.print('----OHM METER---')
}
void loop()
{
x=analogRead(analogPin)
buffer=x*5
Vout=(buffer)/1024.0
buffer=(5/Vout)-1
resistor=R*buffer
lcd.setCursor(0,1)
lcd.print('R = ')
lcd.print(resistor)
lcd.print(' Ohm')
delay(3000)
}
//-------------Program developed by R.Girish--------//

TANDAAN: float R = 10000 // Kilalang halaga ng Resistor sa Ohm

Maaari mong baguhin ang kilalang halaga ng risistor sa circuit, ngunit kung gagawin mo ito mangyaring baguhin ang halaga sa programa din.

Tulad ng isang maginoo multimeter, ang Arduino digital ohmmeter circuit na ito ay mayroon ding ilang mga saklaw upang masukat ang paglaban. Kung susubukan mong sukatin ang isang mababang halaga ng risistor sa saklaw ng mega ohm sa iyong multimeter, tiyak na nakakakuha ka ng mga halaga ng error.

Gayundin, totoo rin ito sa ohmmeter na ito.

Kung nais mong sukatin ang paglaban mula sa 1K hanggang 50K ohm, ang 10K ohm na kilalang risistor ay sapat na, ngunit kung susukatin mo ang saklaw ng Mega ohm o ilang saklaw na ohm makakakuha ka ng mga pagbabasa ng basura. Kaya kinakailangang baguhin ang halaga ng kilalang risistor sa isang naaangkop na saklaw.

Sa susunod na seksyon ng artikulong ito, pag-aaralan namin ang LCD display circuit para sa ohmmeter at makikita namin kung paano basahin ang halaga ng sensor (hindi kilalang paglaban) sa serial monitor.

Sasabihin din namin ang halaga ng threshold sa programa, sa sandaling tumawid ito sa paunang natukoy na threshold, magpapalitaw ng relay ang Arduino.

Diagram ng Circuit:

Code ng Programa:

//-------------Program developed by R.Girish--------//
float th=7800 // Set resistance threshold in Ohms
int analogPin=0
int x=0
float Vout=0
float R=10000 //Known value Resistor in Ohm
float resistor=0
float buffer=0
int op=7
void setup()
{
Serial.begin(9600)
pinMode(op,OUTPUT)
digitalWrite(op,LOW)
}
void loop()
{
x=analogRead(analogPin)
buffer=x*5
Vout=(buffer)/1024.0
buffer=(5/Vout)-1
resistor=R*buffer
Serial.print('R = ')
Serial.print(resistor)
Serial.println(' Ohm')
if(th>resistor) // if resistance cross below threshold value, output is on, if you want opposite result use '<' //
{
digitalWrite(op,HIGH)
Serial.println('Output is ON')
delay(3000)
}
else
{
digitalWrite(op,LOW)
Serial.println('Output is OFF')
delay(3000)
}
}
//-------------Program developed by R.Girish--------//

TANDAAN:

• float th = 7800 // Itakda ang threshold ng pagtutol sa Ohms
Palitan ang 7800 ohm ng iyong halaga.
• float R = 10000 // Kilalang halaga ng Resistor sa Ohm
Palitan ang 10000 ohm ng iyong kilalang halaga ng resistor.
• kung (ika> risistor)

Ang linyang ito sa programa ay nagsasaad na, kung ang paglaban ng sensor ay napupunta sa ibaba ng output ng halaga ng threshold ay ON at vice versa.

Kung nais mong i-on ang relay kapag ang pagbasa ng sensor ay nasa itaas ng threshold at kabaligtaran, palitan lamang ang 'kung (thresistor)'

Sa pamamagitan ng pagsukat nang direkta ng paglaban ng sensor (LDR o thermistor o anumang bagay) at pagtatakda ng isang threshold, maaari nating makuha ang mahusay na kawastuhan ng kontrol sa relay, LEDs, motor at iba pang mga peripheral.

Ito ay mas mahusay kaysa sa mga kumpara, kung saan nagtakda kami ng isang boltahe ng sanggunian at itinakda ang threshold sa pamamagitan ng pag-on ng bulag sa isang variable na risistor upang makamit ang katulad na uri ng mga proyekto.




Nakaraan: Circuit ng Controller ng Antas ng Storage ng Materyal Susunod: 10 LED Tachometer Circuit