Batay sa Arduino ng Battery Over Discharge Protection Circuit

Subukan Ang Aming Instrumento Para Sa Pagtanggal Ng Mga Problema





Sa post na ito, magtatayo kami ng isang over circuit ng proteksyon sa paglabas para sa 12v na baterya gamit ang Arduino na maaaring maprotektahan ang 12V SLA na baterya laban sa labis na paglabas, at protektahan din ang nakakonektang pagkarga mula sa labis na boltahe kung sakaling ang sobrang labis na baterya ay konektado.

Pag-unawa sa Mga Bayarin sa Pagsingil ng Baterya / Pagpapadala

Ang lahat ng mga baterya ay may natural na pagtanggi, ngunit karamihan sa kanila ay nasira dahil sa kamangmangan mula sa bahagi ng mga gumagamit. Ang haba ng buhay ng baterya ay magpapapaikli kung ang boltahe ng isang baterya ay mas mababa sa ilang tiyak na degree, sa kaso ng 12V SLA na baterya, hindi ito dapat pumunta sa ibaba 11.80 V.



Ang proyektong ito ay maaaring magawa sa mga kumpara, ngunit narito ginagamit namin ang microcontroller at coding upang magawa ang pareho.

Ang circuit na ito ay angkop na angkop para sa mga resistive load at iba pang mga pagkarga na hindi nakakabuo ng ingay sa supply habang nagpapatakbo. Subukang iwasan ang mga inductive load tulad ng brushing DC motor.



Ang mga microcontroller ay sensitibo sa ingay at ang pag-set up na ito ay maaaring basahin ang mga halaga ng boltahe ng error sa ganitong kaso, at maaaring maputol nito ang baterya mula sa pagkarga sa maling boltahe.

Paano ito gumagana

Batay sa Arduino na Batas sa Proteksyon ng Paglalabas

Ang tinalakay higit sa proteksyon sa paglabas circuit para sa 12v na baterya ay binubuo ng isang voltage divider na kung saan ay responsable para sa pagbaba ng input boltahe at bawasan sa makitid na saklaw kung saan maaaring mabasa ng arduino ang boltahe.

Ang 10k pre-set resistor ay ginagamit upang i-calibrate ang mga pagbabasa sa arduino ang mga pagbabasa na ito ay ginagamit ng arduino upang ma-trigger ang relay, ang pagkakalibrate ng setup na ito ay tatalakayin sa ibang bahagi ng artikulo.

Ang isang tagapagpahiwatig ng LED ay ginagamit para sa pagpapahiwatig ng katayuan ng relay. Itinulak ng transistor ang relay on / off at ang isang diode ay konektado sa kabuuan ng relay para sa pag-aresto sa mataas na boltahe na spike na nabuo mula sa relay, habang binubuksan ito / patayin.

Kapag ang boltahe ng baterya ay bumaba sa ibaba 11,80V, ang relay ay nakabukas at ididiskonekta ang baterya mula sa pag-load at ang tagapagpahiwatig ng LED ay naka-on din, ito ay nangyayari nang pareho kapag binabasa ng circuit ang sobrang lakas mula sa baterya, maaari mong itakda ang cut-off ng labis na boltahe sa programa .

Kapag ang baterya ay bumaba sa ibaba 11,80V, idiskonekta ng relay ang pagkarga, ang relay ay makakonekta muli ang pagkarga sa baterya pagkatapos lamang makamit ng boltahe ng baterya sa itaas ng nominal na boltahe na nakatakda sa programa.

Ang nominal na boltahe ay normal na boltahe ng pagpapatakbo ng pagkarga. Ang mekanismo ng nakasaad sa itaas ay tapos na dahil ang boltahe ng baterya ay tumaas pagkatapos na magdiskonekta mula sa pagkarga at hindi ito dapat mag-trigger ng relay ON sa mababang estado ng baterya.

Ang nominal na boltahe sa programa na itinakda bilang 12.70 V na kung saan ay buong boltahe ng baterya ng mga tipikal na 12V SLA na baterya (Buong boltahe ng baterya pagkatapos na idiskonekta mula sa charger).

Code ng Programa:

//---------Program developed by R.Girish----------//
float cutoff = 11.80 //Cutoff voltage
float nominal = 12.70 //Nomial Voltage
float overvoltage = 14.00 //Overvoltage
int analogInput = 0
int out = 8
float vout = 0.0
float vin = 0.0
float R1 = 100000
float R2 = 10000
int value = 0
int off=13
void setup()
{
pinMode(analogInput,INPUT)
pinMode(out,OUTPUT)
pinMode(off,OUTPUT)
digitalWrite(off,LOW)
Serial.begin(9600)
}
void loop()
{
value = analogRead(analogInput)
vout = (value * 5.0) / 1024
vin = vout / (R2/(R1+R2))
if (vin<0.10)
{
vin=0.0
}
if(vin<=cutoff)
{
digitalWrite(out,HIGH)
}
if(vin>=nominal && vincutoff)
{
digitalWrite(out,LOW)
}
if(vin>=overvoltage)
{
digitalWrite(out,HIGH )
delay(10000)
}
Serial.println('INPUT V= ')
Serial.println(vin)
delay(1000)
}
//---------Program developed by R.Girish----------//

Tandaan:

float cutoff = 11.80 // Cutoff boltahe
nominal float = 12.70 // Nomial Voltage
float overvoltage = 14.00 // Overvoltage

Maaari mong baguhin ang cut-off, nominal at overvoltage sa pamamagitan ng pagbabago ng mga halagang nasa itaas.
Inirerekumenda na huwag baguhin ang mga halagang ito maliban kung nagtatrabaho ka sa iba't ibang boltahe ng baterya.

Paano i-calibrate:

Ang pagkakalibrate para sa baterya na ito sa paglipas ng circuit ng proteksyon ay dapat gawin nang maingat na kailangan mo ng isang variable na supply ng kuryente, isang mahusay na multimeter at isang driver ng tornilyo para sa pag-aayos ng pre-set risistor.

1) Ang nakumpletong pag-set up ay konektado sa variable power supply nang walang load.
2) Itakda ang 13 volt sa variable power supply, i-verify ito gamit ang multimeter.
3) Buksan ang serial monitor at paikutin ang 10k preset risistor na orasan o counter orasan nang matalino at ilapit ang mga pagbasa sa mga pagbabasa ng multimeter.
4) Ngayon, bawasan ang boltahe ng variable power supply sa 12V, ang multimeter at serial monitor ay dapat basahin ang pareho o napakalapit na halaga.
5) Ngayon, bawasan ang boltahe sa 11.80 V ang relay ay dapat na mag-trigger at ang LED ay dapat na ilaw.
6) Ngayon, taasan ang boltahe sa 14.00V ang relay ay dapat mag-trigger sa at LED light up.
7) Kung ang mga hanay sa itaas ay matagumpay na palitan ang variable power supply ng isang ganap na sisingilin ng baterya, ang mga pagbasa sa serial monitor at multimeter ay dapat na pareho o malapit sa pareho.
8) Ngayon ikonekta ang pagkarga, ang mga pagbabasa sa pareho ay dapat manatiling pareho at na-synchronize.
Kung ang mga hakbang sa itaas ay matagumpay ang iyong circuit ay handa na upang maghatid ng baterya.

TANDAAN:

Mangyaring tandaan ang puntong ito habang naka-calibrate.

Kapag ang relay ay na-trigger dahil sa mababang pagputol ng boltahe o dahil sa cut-off ng boltahe, ang mga pagbasa sa serial monitor ay hindi babasahin ang tamang boltahe tulad ng sa multimeter, at nagpapakita ng mas mataas o mas mababa kaysa sa multimeter.

Ngunit, kapag ang boltahe ay bumabalik sa normal na boltahe ng pagpapatakbo ang relay ay papatayin at magsisimulang magpakita ng wastong boltahe.

Ang pagtatapos ng punto sa itaas ay na, kapag ang relay ay na-trigger ON, ang mga pagbasa sa serial monitor ay nagpapakita ng ilang makabuluhang pagkakaiba-iba at hindi mo kailangang i-calibrate muli sa yugtong ito.




Nakaraan: Kinokontrol ng Timer na Nailulubog na Pumpset Circuit Susunod: 1.5V Power Supply Circuit para sa Wall Clock