Sadržaj:
- Korak 1: Oprema
- Korak 2: Postavljanje mikrokontrolera
- Korak 3: Postavljanje MATLAB -a
- Korak 4: Funkcije
- Korak 5: Testiranje
- Korak 6: Zaključak
Video: Arduino model klima uređaja: 6 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:37
Kao dio demonstracije sposobnosti našeg tima da izradi model pametnog vlaka u marketinške svrhe, cilj je bio stvoriti sustav u kojem senzor temperature čita podatke iz kruga i pretvara podatke u vrijednost temperature koja je prikazuje se na osvijetljenom zaslonu i fokusira se na to hoće li se ventilator uključiti ili isključiti. Svrha je pomoći u prilagođavanju uvjeta vožnje putnika pomoću automatiziranog sustava koji također prikazuje temperaturu u neposrednoj blizini.
Koristeći Arduino komplet mikrokontrolera i MATLAB verzije 2016b i 2017b, uspjeli smo relativno uspješno pokazati ove rezultate.
Korak 1: Oprema
Komplet mikrokontrolera sa sljedećim:
-Sparkfun Crvena tabla
-Sparkfun Breadboard
-LCD ploča
-Potenciometar
-Senzor temperature
-Servo
-USB/Arduino adapter
-Jamper žice (najmanje 25)
Prijenosno računalo (Windows 10) s USB ulazom
3D ispisani objekt (izborno)
Korak 2: Postavljanje mikrokontrolera
Uzmite u obzir ovo: cijeli sustav sastoji se od jedinstvenih jedinica od kojih svaka primjenjuje značajan faktor prema konačnom rezultatu. Iz tog razloga, preporučuje se postavljanje slike kruga prije pričvršćivanja žica u zamršen nered.
Slike svakog pojedinog modela mogu se pronaći u priručniku alata za mikrokontroler ili na njegovoj web stranici na adresi
Počnite s pričvršćivanjem osjetnika temperature, potenciometra, servo konektora i LCD -a na ploču. Preporučuje se da zbog veličine LCD -a i zahtjeva za brojem žica za njega, bude postavljen na vlastitu polovicu ploče s ostalim dijelovima na drugoj polovici i da potenciometar bude u području gdje netko može lako okrenuti gumb.
Za referencu:
LCD: c1-16
Servo: i1-3 (GND + -)
Senzor temperature: i13-15 (- GND +)
Potenciometar: g24-26 (- GND +)
Zatim počnite spajati kratkospojne žice na svaki pin jedinice mikrokontrolera; iako proizvoljan u cjelokupnoj velikoj shemi, dizajn je nastao s ovim važnim vezama:
Povezivanje potenciometra s LCD -om: f25 - e3
Servo GND žica: j1 - digitalni ulaz 9
Senzor temperature GND: j14 - analogni ulaz 0
LCD ulazi: e11-e15-Digitalni ulaz 2-5
e4 - digitalni ulaz 7
e6 - digitalni ulaz 6
(Napomena: Uspješno, oba svjetla na rubu LCD -a trebala bi zasvijetliti, a potenciometar može pomoći u podešavanju svjetline nakon što dobije napajanje iz adaptera.)
Izborno: 3D ispisani objekt korišten je kao dio zahtjeva. Kako bi se izbjeglo moguće oštećenje osjetljivijih dijelova, produženo kućište postavljeno je kao omotač oko LCD -a. Mjerenje LCD zaslona pokazalo se otprilike 2-13/16 "x 1-1/16" x 1/4 ", pa je samo visina značajno promijenjena. Ako je 3D pisač odmah dostupan, razmislite o dodavanju osobnog predmeta, iako nepotrebno. Također imajte na umu da se mjerenja mogu razlikovati.
Korak 3: Postavljanje MATLAB -a
Instalirajte ažuriraniju verziju programa MATLAB (2016a i dalje), dostupnu na web stranici MathWorksa https://www.mathworks.com/products/matlab.html?s_tid=srchtitle. Nakon otvaranja, idite na Dodaci na kartici Početna i preuzmite "MATLAB paket podrške za Arduino hardver" kako bi naredbe mikrokontrolera bile dostupne.
Nakon što se dovrši, može se izvršiti test kojim se utvrđuje povezanost mikrokontrolera s vlastitim računalom/prijenosnim računalom. Nakon što ste ih povezali s USB adapterom iz kompleta alata, umetnite naredbu "fopen (serijski (" nada "))."
Pojavit će se poruka o pogrešci koja kaže da je konektor "COM#", što će biti potrebno za stvaranje arduino objekta sve dok je to uvijek isti ulaz.
Budući da LCD nema izravnu vezu s Arduino knjižnicom, mora se stvoriti nova knjižnica za prikaz poruka. Preporuka je stvoriti datoteku LCDAddon.m od primjera LCD -a koji se nalazi u prozoru za pomoć MATLAB -a nakon pretraživanja "Arduino LCD -a" i stavljanja u mapu +arduinoioaddons ili upotrijebiti komprimiranu mapu i kopirati sav njezin sadržaj u prethodno spomenuto mapu.
Ako uspije, kôd za stvaranje Arduino objekta u MATLAB -u je sljedeći.
a = arduino ('com#', 'uno', 'Knjižnice', 'ExampleLCD/LCDAddon');
Korak 4: Funkcije
Izradite funkciju MATLAB. Za ulaze koristimo varijable "eff" i "T_min"; za izlaze, iako nepotrebni u cjelokupnom dizajnu, koristili smo varijablu "B" kao način za sadržavanje podataka iz rezultata. Ulaz "eff" omogućuje upravljanje maksimalnom brzinom servo, a ulaz "T_min" kontrolira željenu minimalnu temperaturu. Vrijednost "B" bi stoga trebala proizvesti matricu koja sadrži tri stupca za vrijeme, temperaturu i učinkovitost ventilatora. Također, kao bonus detaljima, dolje navedeni kôd također sadrži if-izjavu tako da će se brzina ventilatora smanjiti za pedeset posto kada se približi željenoj minimalnoj temperaturi.
Ako su svi ulazi i kratkospojne žice točno postavljeni i pod pretpostavkom da je priključak arduino veze COM4, a naziv funkcije "fanread", sljedeći kôd trebao bi biti dovoljan:
funkcija [B] = čitač ventilatora (Tmin, eff)
očistiti a; clear lcd; a = arduino ('com4', 'uno', 'Libraries', 'ExampleLCD/LCDAddon');
t = 0; t_max = 15; % vremena u sekundama
lcd = addon (a, 'ExampleLCD/LCDAddon', {'D7', 'D6', 'D5', 'D4', 'D3', 'D2'});
initializeLCD (lcd, 'Redovi', 2, 'Stupci', 2);
ako je eff> = 1 || e <0
pogreška ('Ventilator se neće aktivirati osim ako je eff postavljeno između 0 i 1.')
kraj
za t = 1: 10 % broj petlji/intervala
jasan c; % spriječiti ponavljanje pogreške
v = readVoltage (a, 'A0');
TempC = (v-0,5)*100; % procjena raspona napona 2,7-5,5 V
ako je TempC> Tmin ako je TempC
c = ['Temp', num2str (TempC, 3), 'C uključeno'];
writePWMDutyCycle (a, 'D9', eff/2); % uključite servo na pola brzine
spd = 50;
drugo
c = ['Temp', num2str (TempC, 3), 'C uključeno'];
writePWMDutyCycle (a, 'D9', eff); % uključite servo pri zadanoj brzini
spd = 100;
kraj
drugo
c = ['Temp', num2str (TempC, 3), 'C Off'];
writePWMDutyCycle (a, 'D9', 0); % isključeno ako je već uključeno
spd = 0;
kraj
printLCD (lcd, c);
stanka (3); % prođu tri sekunde po petlji
vrijeme (t) = t.*3;
tempplot (t) = TempC;
act (t) = spd;
podcrt (2, 1, 1)
nacrt (vrijeme, grafički prikaz, 'b-o') % linijski graf
os ([0 33 0 40])
xlabel ('Vrijeme (sekunde)')
ylabel ('Temperatura (C)')
drži se
iscrtavanje ([0 33], [Tmin Tmin], 'r-')
drži se
crtanje ([0 33], [Tmin+2 Tmin+2], 'g-')
podcrt (2, 1, 2)
stupac (vrijeme, čin) % stupčasti grafikon
xlabel ('Vrijeme (sekunde)')
ylabel ('Učinkovitost (%)')
kraj
B = transponirati ([vrijeme; tempplot; čin]);
kraj
Sada kada je funkcija dovršena, vrijeme je za testiranje.
Korak 5: Testiranje
Sada testirajte funkciju u naredbenom prozoru umetanjem "function_name (input_value_1, input_value_2)" i gledajte. Budite sigurni da već nema Arduino objekta; ako je tako, upotrijebite naredbu "clear a" da biste je uklonili. Ako se pojave pogreške, provjerite jesu li priključci na krivom mjestu ili se koriste pogrešni digitalni ili analogni ulazi. Očekuje se da će rezultati biti različiti, iako to može biti uzrokovano postavljanjem određenih kratkospojnih žica i osjetnika temperature.
Očekivanja rezultata trebala bi proizvesti promjene u performansama serva i podacima na LCD -u. Sa svakim intervalom od tri sekunde, redak teksta trebao bi prikazati temperaturu u Celzijusima i je li ventilator aktivan ili ne dok ventilator radi punom brzinom, polovinom ili bez brzine. Podaci najvjerojatnije ne bi trebali biti dosljedni, iako ako želite više različitih rezultata, postavite vrijednost "Tmin" blizu prosječne temperature koju proizvodi krug.
Korak 6: Zaključak
Premda mukotrpan zadatak koji je trebalo izvršiti pokušajima i pogreškama, konačni su se rezultati pokazali prilično zanimljivim i zadovoljavajućim. Sustav kao takav pomaže ilustrirati koliko se složenih strojeva, pa čak i nekih njihovih dijelova, može vidjeti kao skup neovisnih dijelova postavljenih zajedno kako bi se postigao određeni cilj.
Zbog prilično pojednostavljenog dizajna završnog projekta, oni koji imaju interes poboljšati njegove performanse mogu napraviti ugađanja i izmjene u konačnom proizvodu koji projekt mogu učiniti boljim i razrađenijim. Međutim, otkriva slabosti u krugu, kao što je aktiviranje servo -a što rezultira sporadičnim fluktuacijama očitavanja napona u krugu, što može uzrokovati da sustav nikada ne daje identične rezultate. Također, bilo je problema s promjenom brzine servo servera kada je "eff" postavljeno 0,4 i više. Da je korišten senzor temperature i vlažnosti, konačni model bio bi složeniji, ali bi imao dosljednije vrijednosti. Ipak, ovo je iskustvo koje pokazuje da složeni stroj može funkcionirati kao kombinacija njegovih jednostavnih dijelova.
Preporučeni:
Automatski prekidač klima uređaja: 5 koraka
Automatski prekidač za klima uređaj: Budući da postoje različite stvari koje ljudi trebaju raditi tijekom svog svakodnevnog života, često zaboravljamo neke manje detalje, ponekad uzrokujući ozbiljne posljedice, a jedan od njih je zaboraviti isključiti klima uređaj. Dok su ljudi slučajno
PCB vodič za rad klima uređaja i njegov popravak: 6 koraka
PCB vodič za klima uređaj s njegovim radom i popravkom: Hej, što ima, dečki! Akarsh ovdje iz CETech -a. Jeste li se ikada zapitali što se događa s unutarnje strane vaših klima uređaja? Ako da, onda biste trebali proći kroz ovaj članak jer ću danas dati uvid u veze i komp
Automatsko uključivanje klima uređaja: 5 koraka
Uređaj za automatsko uključivanje klima uređaja: Ovaj uređaj naziva se uređaj za automatsko uključivanje klima uređaja. Kada ste u svojoj vrućoj sobi, a tek ste završili školu, previše ste umorni da biste uključili klima uređaj, onda je ovaj uređaj savršen za vas. Mehanizam ovog uređaja je vrlo jednostavan. W
Razumijevanje IC protokola daljinskih upravljača klima uređaja: 9 koraka (sa slikama)
Razumijevanje IC protokola daljinskih upravljača klima uređaja: Već neko vrijeme učim o IC protokolima. Kako slati i primati IC signale. U ovom trenutku preostaje jedino IC protokol daljinskih upravljača za izmjeničnu struju. Za razliku od tradicionalnih daljinskih upravljača gotovo svih elektroničkih uređaja (recimo televizora) gdje
Hladniji zrak! za manje novca! Punjenje klima uređaja !!: 14 koraka (sa slikama)
Hladniji zrak! za manje novca! Punjenje klima uređaja !!: Ovom metodom možete postići bolje hlađenje i niže troškove energije. Klima uređaj radi tako da komprimira plinsko rashladno sredstvo dok se ne kondenzira u (pogađate) kondenzatoru na vanjskoj strani. To oslobađa toplinu vani. Onda kad to