Sadržaj:

Arduino dvokanalni modul osjetnika napona: 8 koraka
Arduino dvokanalni modul osjetnika napona: 8 koraka

Video: Arduino dvokanalni modul osjetnika napona: 8 koraka

Video: Arduino dvokanalni modul osjetnika napona: 8 koraka
Video: Изучите Arduino за 30 минут: примеры и проекты 2024, Srpanj
Anonim
Arduino dvokanalni modul osjetnika napona
Arduino dvokanalni modul osjetnika napona
Arduino dvokanalni modul osjetnika napona
Arduino dvokanalni modul osjetnika napona
Arduino dvokanalni modul osjetnika napona
Arduino dvokanalni modul osjetnika napona

Prošlo je nekoliko godina otkad sam napisao pouku, mislio sam da je vrijeme da se vratim. Htio sam izgraditi senzor napona kako bih se mogao spojiti na napajanje svoje klupe. Imam dvokanalno promjenjivo napajanje, nema zaslon pa moram koristiti voltmetar za postavljanje napona. Nisam inženjer elektrotehnike ili programer, ovo radim iz hobija. Rekavši da ću opisati što ćemo ovdje graditi i da to možda nije najbolji dizajn ili najbolje kodiranje, ali dat ću sve od sebe.

Korak 1: O projektu

O Projektu
O Projektu
O Projektu
O Projektu
O Projektu
O Projektu

Prije svega, ovo je samo idejni projekt nečeg stabilnijeg i pouzdanijeg, neke komponente neće završiti u konačnom dizajnu. Većina komponenti odabrana je samo zbog dostupnosti (imao sam ih u kući), a ne zbog njihove pouzdanosti. Ovaj dizajn je namijenjen za napajanje od 15 V, ali možete zamijeniti nekoliko pasivnih komponenti i omogućiti mu rad na bilo kojem naponu ili struji. Trenutni senzori dostupni su u 5A, 20A i 30A. Možete samo odabrati amperažu i izmijeniti kôd. Ista stvar sa senzorom napona možete promijeniti vrijednost otpornika i kod za mjerenje viših napona.

PCB nema zadane vrijednosti jer možete zamijeniti pasivne komponente kako biste zadovoljili potrebe napajanja. Dizajniran je za dodavanje bilo kojem izvoru napajanja.

Korak 2: Senzori napona

Senzori napona
Senzori napona
Senzori napona
Senzori napona
Senzori napona
Senzori napona
Senzori napona
Senzori napona

Počet ćemo s osjetnicima napona i osjetnicima struje. Koristim Arduino Mega za testiranje sklopova i koda, tako da neki početnici poput mene mogu sami izraditi i testirati umjesto da moraju graditi cijeli modul na ploči.

Možemo mjeriti samo 0-5 volti koristeći Arduino analogne ulaze. Da bismo mogli mjeriti do 15 volti moramo stvoriti razdjelnik napona, djelitelji napona su vrlo jednostavni i mogu se stvoriti pomoću samo 2 otpornika, u ovom slučaju koristimo 30 k i 7,5 k koji bi nam dali omjeru 5: 1 pa možemo mjeriti vrijednosti od 0-25 volti.

Popis dijelova za osjetnik napona

R1, R3 30k otpornici

R2, R4 7.5k otpornici

Korak 3: Trenutni senzori

Senzori struje
Senzori struje
Senzori struje
Senzori struje
Senzori struje
Senzori struje
Senzori struje
Senzori struje

Za trenutne senzore koristit ću ACS712 proizvođača Allegro. Prvo što moram napomenuti je da znam da ti senzori nisu baš točni, ali to je ono što sam imao pri ruci prilikom projektiranja ovog modula. ACS712 je dostupan samo u paketu za površinsko montiranje i jedna je od rijetkih SMD komponenti koje se koriste u ovom modulu.

Popis trenutnih dijelova senzora

IC2, IC3 ASC712ELC-05A

C1, C3 1nF kondenzator

C2, C4 0,1uF kondenzator

Korak 4: Senzor temperature i ventilator

Senzor i ventilator temperature
Senzor i ventilator temperature
Senzor i ventilator temperature
Senzor i ventilator temperature
Senzor i ventilator temperature
Senzor i ventilator temperature

Odlučio sam dodati kontrolu temperature modulu jer većina izvora napajanja proizvodi dobru količinu topline i potrebna nam je zaštita od pregrijavanja. Za temperaturni senzor koristim HDT11, a za kontrolu ventilatora koristit ćemo 2N7000 N-kanalni MOSFET za pogon 5V ventilatora procesora. Krug je vrlo jednostavan, potrebno je primijeniti napon na odvod tranzistora, a na vrata vratimo pozitivan napon, u ovom slučaju koristimo digitalni izlaz arduina za osiguravanje tog napona, a tranzistor se UKLJUČUJE omogućujući ventilatoru energiziran.

Kôd je vrlo jednostavan, uzimamo očitanje temperature s osjetnika DHT11 ako je temperatura veća od naše zadane vrijednosti, postavlja izlazni pin HIGH i ventilator se uključuje. Kad temperatura padne ispod zadane temperature, ventilator se isključuje. Napravio sam krug na svojoj ploči za testiranje koda. Napravio sam nekoliko brzih slika sa svojom ćelijom, nije dobro, žao mi je, ali shemu je lako razumjeti.

Popis osjetnika temperature i dijelova ventilatora

J2 DHT11 osjetnik temperature

R8 10K otpornik

J1 5V VENTILATOR

Q1 2N7000 MOSFET

D1 1N4004 Dioda

R6 10K otpornik

R7 47K otpornik

Korak 5: Krug napajanja

Krug napajanja
Krug napajanja
Krug napajanja
Krug napajanja
Krug napajanja
Krug napajanja

Modul radi na 5V pa nam je potreban stabilan izvor napajanja. Koristim regulator napona L7805 za osiguravanje stalne opskrbe od 5 V, o ovom krugu nema puno toga za reći.

Popis dijelova strujnog kruga

1 L7805 Regulator napona

C8 Kondenzator 0,33uF

C9 0,1uF kondenzator

Korak 6: LCD i serijski izlazi

LCD i serijski izlazi
LCD i serijski izlazi
LCD i serijski izlazi
LCD i serijski izlazi
LCD i serijski izlazi
LCD i serijski izlazi
LCD i serijski izlazi
LCD i serijski izlazi

Dizajnirao sam modul koji će se koristiti s LCD -om na umu, ali sam tada odlučio dodati serijski izlaz radi otklanjanja pogrešaka. Neću ulaziti u detalje o postavljanju I2C LCD -a jer sam to već opisao u prethodnom I2C LCD -u koji se može uputiti. Jednostavan način na koji sam dodao LED diode linijama Tx & Rx kako bih pokazao aktivnost. Koristim USB za serijski adapter koji povežem na modul, zatim otvaram serijski monitor u Arduino IDE -u i mogu vidjeti sve vrijednosti, provjeriti radi li sve kako treba.

Popis LCD i serijskih dijelova

I2C 16x2 I2C LCD (20x4 po izboru)

LED7, LED8 0603 SMD LED

R12, R21 1K R0603 SMD otpornik

Korak 7: ISP programiranje & ATMega328P

ISP programiranje & ATMega328P
ISP programiranje & ATMega328P
ISP programiranje & ATMega328P
ISP programiranje & ATMega328P
ISP programiranje & ATMega328P
ISP programiranje & ATMega328P

Kao što sam spomenuo na početku, ovaj modul je dizajniran za različite konfiguracije, moramo dodati način programiranja ATMega328 i učitavanja naših skica. Programiranje modula postoji na nekoliko načina, a jedan od njih je korištenje Arduina kao ISP programera, kao u jednom od mojih prethodnih ATMega za učitavanje s instrukcijama s Arduino mega.

Bilješke:

- Ne trebate kondenzator za učitavanje skice ISP -a na Arduino, potreban vam je za snimanje pokretačkog programa i za učitavanje skice napona_senzora.

-Na novijim verzijama Arduino IDE -a morate spojiti pin 10 na pin 1 RESET ATMega328.

Popis dijelova kruga ISP -a i ATMega328P

U1 ATMega328P

XTAL1 16-MHz HC-49S Crsytal

C5, C6 22pf kondenzatori

ISP1 6 pin zaglavlje

R5 10K otpornik

Resetirajte SMD prekidač 3x4x2 Tact

Korak 8: Bilješke i datoteke

Bilješke i datoteke
Bilješke i datoteke
Bilješke i datoteke
Bilješke i datoteke
Bilješke i datoteke
Bilješke i datoteke

Ovo je bio samo način na koji sam mogao staviti neke ideje u radni uređaj, kao što sam već spomenuo samo je mali dodatak za moje dvokanalno napajanje. Uključio sam sve što vam je potrebno za izradu vlastitog modula, sve Eagle CAD datoteke i sheme. Uključio sam Arduino skicu, vrlo je jednostavan i pokušao sam ga olakšati razumjeti i izmijeniti. Ako imate bilo kakvih pitanja, slobodno ih postavite, pokušat ću na njih odgovoriti. Ovo je otvoren projekt, prijedlozi su dobrodošli. Pokušavam unijeti što je moguće više informacija, ali kasno sam saznao za Arduino natječaj i htio sam ovo poslati. Ostatak ću pisati uskoro, također sam uklonio SMD komponente (otpornike i LED) i zamijenio ih TH komponentama, jedina SMD komponenta je trenutni senzor jer je dostupna samo u paketu SOIC, ZIP datoteka sadrži datoteke s TH komponentama.

Preporučeni: