Pārsniedz strāvas padeves pārtraukumu, izmantojot Arduino

Izmēģiniet Mūsu Instrumentu Problēmu Novēršanai





Šajā amatā mēs izveidosim akumulatora atdalītāju / līdzstrāvas mainīgu barošanas avotu, kas automātiski pārtrauks barošanu, ja strāvas plūsma caur slodzi pārsniedz iepriekš iestatīto sliekšņa līmeni.

Autors Girish Radhakrishanan



Galvenās tehniskās īpašības

Piedāvātajai strāvas pārtraukuma strāvas padeves ķēdei, izmantojot Arduino, ir 16 X 2 LCD displejs, ko izmanto, lai reālā laikā parādītu spriegumu, strāvu, enerģijas patēriņu un iepriekš iestatīto sliekšņa strāvas robežu.

Būdami elektronikas entuziasts, mēs pārbaudām prototipus uz mainīga sprieguma barošanas avotu. Lielākajai daļai no mums pieder lēts mainīgas barošanas avots, kas, iespējams, nedarbina ne sprieguma mērīšanas / strāvas mērīšanas funkciju, ne īssavienojumu vai iebūvētu strāvas aizsardzību.



Tas ir tāpēc, ka barošanas avots ar šīm pieminētajām funkcijām var bombardēt uz jūsu maka un būs pārāk kvalificēts hobija vajadzībām.

Īssavienojums un strāvas plūsma ir iesācēju problēma profesionāļiem, un iesācējiem tas ir tendence biežāk pieredzes trūkuma dēļ, viņi var mainīt barošanas avota polaritāti vai nepareizi savienot komponentus utt.

Šīs lietas var izraisīt neparasti lielu strāvas plūsmu caur ķēdi, kā rezultātā pusvadītāju un pasīvo komponentu termiskā pārbēgšana var izraisīt vērtīgu elektronisko komponentu iznīcināšanu. Šajos gadījumos oma likums pārvēršas par ienaidnieku.

Ja jūs nekad neveicāt īssavienojumu vai ceptu ķēdi, tad apsveicam! Jūs esat viens no nedaudzajiem cilvēkiem, kas ir ideāls elektronikā vai nekad neizmēģināt kaut ko jaunu elektronikā.

Piedāvātais elektroapgādes projekts var pasargāt elektroniskos komponentus no šādas cepšanas iznīcināšanas, kas būs pietiekami lēts vidējam elektronikas hobijam un pietiekami viegli izveidojams tāds, kurš ir nedaudz virs iesācēja līmeņa.

Dizains

Barošanas avotam ir 3 potenciometri: viens LCD displeja kontrasta pielāgošanai, viens izejas sprieguma diapazona diapazonam no 1,2 V līdz 15 V un pēdējais potenciometrs tiek izmantots strāvas robežas iestatīšanai no 0 līdz 2000 mA vai 2 ampēriem.

LCD displejs katru sekundi atjauninās ar četriem parametriem: spriegumu, strāvas patēriņu, iepriekš iestatīto strāvas robežu un slodzes patērēto enerģiju.

Pašreizējais patēriņš, izmantojot slodzi, tiks parādīts miliampos, iepriekš iestatītais strāvas ierobežojums tiks parādīts miliampos, un enerģijas patēriņš tiks parādīts mili vatos.
Kontūra ir sadalīta 3 daļās: strāvas elektronika, LCD displeja savienojums un jaudas mērīšanas ķēde.

Šie 3 posmi var palīdzēt lasītājiem labāk saprast ķēdi. Tagad apskatīsim jaudas elektronikas sadaļu, kas kontrolē izejas spriegumu.

Shematiska diagramma:

Pārsniedz strāvas padeves pārtraukumu, izmantojot Arduino

Transformators 12v-0-12v / 3A tiks izmantots sprieguma samazināšanai, 6A4 diodes pārveidos maiņstrāvu par līdzstrāvas spriegumu un 2000uF kondensators izlīdzinās nemainīgo līdzstrāvas padevi no diodēm.

LM 7809 fiksētais 9V regulators pārveidos neregulēto līdzstrāvu regulētā 9V līdzstrāvas padevē. 9 V barošana darbinās Arduino un releju. Arduino ieejas padevei mēģiniet izmantot līdzstrāvas ligzdu.

Nepalaidiet garām tos 0,1uF keramikas kondensatorus, kas nodrošina labu izejas sprieguma stabilitāti.

LM 317 nodrošina maināmu izejas spriegumu pievienojamai slodzei.

Izejas spriegumu var noregulēt, pagriežot potenciometru 4,7K omi.

Ar to noslēdzas jaudas sadaļa.

Tagad apskatīsim displeja savienojumu:

Informācija par savienojumu

Virs strāvas pārtraukuma barošanas avota displeja shēma, izmantojot Arduino

Šeit nekas nav daudz izskaidrojams, vienkārši pievienojiet Arduino un LCD displeju atbilstoši shēmai. Pielāgojiet 10K potenciometru, lai iegūtu labāku kontrastu.

Iepriekš redzamajā displejā parādīti četru minēto parametru rādījumi.

Jaudas mērīšanas posms

Tagad sīki apskatīsim jaudas mērīšanas ķēdi.

Jaudas mērīšanas ķēde sastāv no voltmetra un ampērmetra. Arduino var vienlaikus izmērīt spriegumu un strāvu, savienojot rezistoru tīklu atbilstoši shēmas shēmai.

rezistoru tīkls strāvas padeves pārtraukumam, izmantojot Arduino

Releja savienojuma detaļas iepriekšminētajam dizainam:

Arduino releja savienojuma informācija

Četri paralēli 10 omu rezistori, kas veido 2,5 omu šunta rezistoru, kas tiks izmantoti strāvas plūsmas mērīšanai caur slodzi. Rezistoriem jābūt vismaz 2 vatiem katrā.

10k omu un 100k omu rezistori palīdz Arduino izmērīt spriegumu pie slodzes. Šie rezistori var būt ar normālu jaudu.

Ja vēlaties uzzināt vairāk par Arduino bāzes ampērmetra un voltmetra darbību, pārbaudiet šīs divas saites:

Voltmetrs: https://homemade-circuits.com/2016/09/how-to-make-dc-voltmeter-using-arduino.html

Ammetrs: https://homemade-circuits.com/2017/08/arduino-dc-digital-ammeter.html

10K omu potenciometrs ir paredzēts maksimālā strāvas līmeņa pielāgošanai izejā. Ja strāvas plūsma caur slodzi pārsniedz iepriekš iestatīto strāvu, izejas padeve tiks atvienota.
Displejā var redzēt iepriekš iestatīto līmeni, tas tiks minēts kā “LT” (Limit).

Sakiet, piemēram: ja jūs iestatāt ierobežojumu kā 200, tas izsniedz strāvu līdz 199 mA. Ja strāvas patēriņš kļūst vienāds ar 200 mA vai lielāks, izeja tiks nekavējoties izslēgta.

Izeju ieslēdz un izslēdz Arduino tapa Nr. 7. Kad šī tapa ir augsta, tranzistors iedarbina releju, kas savieno parastos un parasti atvērtos tapas, kas veic pozitīvu slodzes padevi.

Diods IN4007 absorbē augstsprieguma aizmugures EMF no releja spoles, vienlaikus ieslēdzot un izslēdzot releju.

Programmas kods:

//------------------Program Developed by R.GIRISH------------------//
#include
#define input_1 A0
#define input_2 A1
#define input_3 A2
#define pot A3
LiquidCrystal lcd(12, 11, 5, 4, 3, 2)
int Pout = 7
int AnalogValue = 0
int potValue = 0
int PeakVoltage = 0
int value = 0
int power = 0
float AverageVoltage = 0
float input_A0 = 0
float input_A1 = 0
float output = 0
float Resolution = 0.00488
float vout = 0.0
float vin = 0.0
float R1 = 100000
float R2 = 10000
unsigned long sample = 0
int threshold = 0
void setup()
{
lcd.begin(16,2)
Serial.begin(9600)
pinMode(input_3, INPUT)
pinMode(Pout, OUTPUT)
pinMode(pot, INPUT)
digitalWrite(Pout, HIGH)
}
void loop()
{
PeakVoltage = 0
value = analogRead(input_3)
vout = (value * 5.0) / 1024
vin = vout / (R2/(R1+R2))
if (vin <0.10)
{
vin = 0.0
}
for(sample = 0 sample <5000 sample ++)
{
AnalogValue = analogRead(input_1)
if(PeakVoltage {
PeakVoltage = AnalogValue
}
else
{
delayMicroseconds(10)
}
}
input_A0 = PeakVoltage * Resolution
PeakVoltage = 0
for(sample = 0 sample <5000 sample ++)
{
AnalogValue = analogRead(input_2)
if(PeakVoltage {
PeakVoltage = AnalogValue
}
else
{
delayMicroseconds(10)
}
}
potValue = analogRead(pot)
threshold = map(potValue, 0, 1023, 0, 2000)
input_A1 = PeakVoltage * Resolution
output = (input_A0 - input_A1) * 100
output = output * 4
power = output * vin
while(output >= threshold || analogRead(input_1) >= 1010)
{
digitalWrite(Pout, LOW)
while(true)
{
lcd.clear()
lcd.setCursor(0,0)
lcd.print('Power Supply is')
lcd.setCursor(0,1)
lcd.print('Disconnected.')
delay(1500)
lcd.clear()
lcd.setCursor(0,0)
lcd.print('Press Reset the')
lcd.setCursor(0,1)
lcd.print('Button.')
delay(1500)
}
}
while(output >= threshold || analogRead(input_2) >= 1010)
{
digitalWrite(Pout, LOW)
while(true)
{
lcd.clear()
lcd.setCursor(0,0)
lcd.print('Power Supply is')
lcd.setCursor(0,1)
lcd.print('Disconnected.')
delay(1500)
lcd.clear()
lcd.setCursor(0,0)
lcd.print('Press Reset the')
lcd.setCursor(0,1)
lcd.print('Button.')
delay(1500)
}
}
lcd.clear()
lcd.setCursor(0,0)
lcd.print('V=')
lcd.print(vin)
lcd.setCursor(9,0)
lcd.print('LT=')
lcd.print(threshold)
lcd.setCursor(0,1)
lcd.print('I=')
lcd.print(output)
lcd.setCursor(9,1)
lcd.print('P=')
lcd.print(power)
Serial.print('Volatge Level at A0 = ')
Serial.println(analogRead(input_1))
Serial.print('Volatge Level at A1 = ')
Serial.println(analogRead(input_2))
Serial.print('Voltage Level at A2 = ')
Serial.println(analogRead(input_3))
Serial.println('------------------------------')
}

//------------------Program Developed by R.GIRISH------------------//

Tagad jūs būtu ieguvis pietiekami daudz zināšanu, lai izveidotu barošanas avotu, kas aizsargā jūs ar vērtīgiem elektroniskiem komponentiem un moduļiem.

Ja jums ir kāds īpašs jautājums par šo strāvas pārtraukuma strāvas padeves ķēdi, izmantojot Arduino, nekautrējieties jautāt komentāru sadaļā, jūs varat saņemt ātru atbildi.




Pāri: Izgatavojiet šo uzlaboto digitālo ampermetru, izmantojot Arduino Nākamais: Ievads par EEPROM Arduino