Obsah:
- Krok 1: Zariadenie
- Krok 2: Nastavenie mikrokontroléra
- Krok 3: Nastavenie MATLAB
- Krok 4: Funkcie
- Krok 5: Testovanie
- Krok 6: Záver
Video: Model klimatizácie Arduino: 6 krokov
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 12:00
V rámci ukážky schopnosti nášho tímu vytvoriť model zariadenia inteligentného vlaku na marketingové účely bolo cieľom vytvoriť systém, v ktorom snímač teploty číta údaje z okruhu a prevádza informácie na hodnotu teploty, ktorá je zobrazené na osvetlenej obrazovke a zamerané na to, či sa ventilátor zapne alebo vypne. Účelom je pomôcť prispôsobiť sa jazdným podmienkam cestujúcich pomocou automatizovaného systému, ktorý slúži aj na zobrazenie teploty v bezprostrednom okolí.
Použitím súpravy mikrokontroléra Arduino a verzií MATLAB 2016b a 2017b sme dokázali tieto výsledky relatívne úspešne predviesť.
Krok 1: Zariadenie
Mikrokontrolérová súprava s nasledujúcimi funkciami:
-Červená tabuľa Sparkfun
-Sparkfun Breadboard
-doska LCD
-potenciometer
-Teplotný senzor
-Servo
-USB/Arduino adaptér
-prepojovacie vodiče (minimálne 25)
Notebook (Windows 10) so vstupom USB
Objekt s 3D tlačou (voliteľné)
Krok 2: Nastavenie mikrokontroléra
Zvážte to: celý systém sa skladá z jednotlivých jednotiek, z ktorých každá uplatňuje významný faktor na konečný výsledok. Z tohto dôvodu sa dôrazne odporúča nastaviť obraz obvodu pred pripojením vodičov v spletitom neporiadku.
Obrázky každého jednotlivého modelu nájdete v príručke k súprave nástrojov pre mikrokontrolér alebo na jeho webovej stránke
Začnite pripevnením snímača teploty, potenciometra, konektorov serva a LCD na dosku. Odporúča sa, aby bol vzhľadom na veľkosť LCD a požiadavku na počet vodičov položený na vlastnú polovicu dosky, ostatné kusy na druhú polovicu, a aby bol potenciometer v oblasti, do ktorej môže niekto ľahko otočte jeho gombíkom.
Pre referenciu:
LCD: c1-16
Servo: i1-3 (GND + -)
Snímač teploty: i13-15 (- GND +)
Potenciometer: g24-26 (- GND +)
Ďalej začnite spájať prepojovacie vodiče s každým kolíkom jednotiek mikrokontroléra; aj keď bol v celkovej veľkej schéme ľubovoľný, dizajn bol vytvorený s týmito dôležitými spojeniami:
Pripojenie potenciometra k LCD: f25 - e3
Servo GND vodič: j1 - digitálny vstup 9
Snímač teploty GND: j14 - analógový vstup 0
Vstupy LCD: e11-e15-digitálny vstup 2-5
e4 - digitálny vstup 7
e6 - digitálny vstup 6
(Poznámka: Ak je úspešný, obidve svetlá na okraji LCD by mali blikať a potenciometer môže pomôcť upraviť jeho jas po napájaní z adaptéra.)
Voliteľné: 3D tlačený objekt bol použitý ako súčasť požiadavky. Aby sa predišlo potenciálnemu poškodeniu krehkejších častí, bolo okolo LCD displeja ako puzdro umiestnené predĺžené puzdro. Merania obrazovky LCD sa ukázali byť približne 2-13/16 "x 1-1/16" x 1/4 ", a preto sa výrazne zmenila iba výška. Ak je 3D tlačiareň ľahko dostupná, zvážte pridanie osobného predmetu, aj keď zbytočné. Uvedomte si tiež, že merania sa môžu líšiť.
Krok 3: Nastavenie MATLAB
Nainštalujte si aktualizovanejšiu verziu MATLAB (2016a a novšiu), ktorá je k dispozícii na webovej stránke MathWorks https://www.mathworks.com/products/matlab.html?s_tid=srchtitle. Po otvorení prejdite na Doplnky na karte Domov a stiahnite si „Balík podpory MATLAB pre hardvér Arduino“, aby boli príkazy mikrokontroléra prístupné.
Po dokončení je možné vykonať test na nájdenie pripojenia mikrokontroléra k počítaču/prenosnému počítaču. Po ich pripojení k adaptéru USB zo sady nástrojov zadajte príkaz „fopen (serial ('nada'))."
Zobrazí sa chybové hlásenie s uvedením konektora ako „COM#“, ktorý bude potrebný na vytvorenie objektu arduino, pokiaľ je vždy rovnakým vstupom.
Pretože LCD displej nemá priame spojenie s knižnicou Arduino, na zobrazenie správ je potrebné vytvoriť novú knižnicu. Odporúča sa vytvoriť súbor LCDAddon.m z príkladu LCD, ktorý sa nachádza v okne pomoci programu MATLAB, po vyhľadaní výrazu „Arduino LCD“a umiestnení do priečinka +arduinoioaddons, alebo použite priložený komprimovaný priečinok a skopírujte všetok jeho obsah do vyššie uvedeného priečinok.
Ak je to úspešné, potom kód na vytvorenie objektu Arduino v MATLABe je uvedený nižšie.
a = arduino ('com#', 'uno', 'Libraries', 'ExampleLCD/LCDAddon');
Krok 4: Funkcie
Vytvorte funkciu MATLAB. Pre vstupy používame premenné „eff“a „T_min“; pre výstupy, aj keď v celkovom návrhu nepotrebné, sme použili premennú „B“ako spôsob, ako obsahovať údaje z výsledkov. Vstup "eff" umožňuje riadenie maximálnych otáčok serva a vstup "T_min" ovláda požadovanú minimálnu teplotu. Hodnota „B“by teda mala vytvoriť maticu, ktorá obsahuje tri stĺpce pre čas, teplotu a účinnosť ventilátora. Ako bonus k detailom má kód uvedený nižšie tiež vyhlásenie if, že rýchlosť ventilátora sa zníži o päťdesiat percent, keď sa priblíži k požadovanej minimálnej teplote.
Ak sú všetky vstupy a prepojovacie vodiče umiestnené presne a za predpokladu, že port pripojenia arduino je COM4 a názov funkcie je „fanread“, mal by stačiť nasledujúci kód:
funkcia [B] = počet prečítaných fanúšikov (Tmin, eff)
jasné a; čistý lcd; a = arduino ('com4', 'uno', 'Knižnice', 'ExampleLCD/LCDAddon');
t = 0; t_max = 15; % času v sekundách
lcd = doplnok (a, 'ExampleLCD/LCDAddon', {'D7', 'D6', 'D5', 'D4', 'D3', 'D2'});
initializeLCD (lcd, 'Riadky', 2, 'Stĺpce', 2);
ak eff> = 1 || e <0
chyba („Ventilátor sa neaktivuje, pokiaľ nie je efekt nastavený medzi 0 a 1.“)
koniec
pre t = 1: 10 % počet slučiek/intervalov
číry c; % zabrániť chybe opakovania
v = readVoltage (a, 'A0');
TempC = (v-0,5)*100; % odhad pre rozsahy napätia 2,7-5,5 V
ak TempC> Tmin, ak TempC
c = ['Teplota', num2str (TempC, 3), 'Zap.'];
writePWMDutyCycle (a, 'D9', eff/2); % zapnite servo na polovičnú rýchlosť
spd = 50;
inak
c = ['Teplota', num2str (TempC, 3), 'Zap.'];
writePWMDutyCycle (a, 'D9', eff); % zapnite servo pri danej rýchlosti
spd = 100;
koniec
inak
c = ['Teplota', num2str (TempC, 3), 'C vypnuté'];
writePWMDutyCycle (a, 'D9', 0); % vypnite, ak je už zapnuté
spd = 0;
koniec
printLCD (lcd, c);
pauza (3); Na jednu slučku uplynú % tri sekundy
čas (t) = t.*3;
tempplot (t) = TempC;
akt (t) = spd;
podkres (2, 1, 1)
plot (čas, tempplot, 'b-o') % čiarový graf
os ([0 33 0 40])
xlabel ('Čas (sekundy)')
ylabel („Teplota (C)“)
Počkaj
sprisahanie ([0 33], [Tmin Tmin], 'r-')
Počkaj
graf ([0 33], [Tmin+2 Tmin+2], 'g-')
podkres (2, 1, 2)
stĺpcový (čas, akt) % stĺpcový graf
xlabel ('Čas (sekundy)')
ylabel („Účinnosť (%)“)
koniec
B = transpozícia ([čas; tempplot; akt]);
koniec
Teraz, keď je funkcia kompletná, je čas na testovanie.
Krok 5: Testovanie
Teraz vyskúšajte funkciu v príkazovom okne vložením „názov_funkcie (vstupná_hodnota_1, vstupná_hodnota_2)“a sledujte. Uistite sa, že už neexistuje žiadny objekt Arduino; ak áno, odstráňte ho príkazom „clear a“. Ak sa vyskytnú chyby, skontrolujte, či nie sú konektory na zlom mieste alebo či sú použité nesprávne digitálne alebo analógové vstupy. Očakáva sa, že výsledky sa budú líšiť, aj keď to môže byť spôsobené umiestnením určitých prepojovacích káblov a snímača teploty.
Očakávania výsledkov by mali spôsobiť zmeny vo výkone serva a v údajoch na LCD. S každým trojsekundovým intervalom by mal riadok textu zobrazovať teplotu v stupňoch Celzia a to, či je ventilátor aktívny, keď beží na plné otáčky, na polovičné otáčky alebo na žiadne. Údaje by pravdepodobne nemali byť konzistentné, ale ak požadujete viac rôznych výsledkov, umiestnite hodnotu „Tmin“blízko priemernej teploty produkovanej obvodom.
Krok 6: Záver
Napriek tomu, že konečné riešenie bolo náročné pokusom a omylom, ukázalo sa, že konečné výsledky boli celkom zaujímavé a uspokojujúce. Systém ako taký pomáha ilustrovať, koľko komplikovaných strojov alebo dokonca niektorých ich častí možno vnímať ako zbierku nezávislých dielov umiestnených spoločne na dosiahnutie konkrétneho cieľa.
Vzhľadom na dosť zjednodušený dizajn konečného projektu môžu tí, ktorí majú záujem zlepšiť jeho výkon, vykonať úpravy a úpravy konečného produktu, vďaka ktorým bude projekt lepší a prepracovanejší. Odhaľuje však slabiny v obvode, ako je napríklad aktivácia serva, ktorá má za následok sporadické výkyvy v napätí obvodu, čo môže spôsobiť, že systém nikdy nedosiahne rovnaké výsledky. Tiež sa vyskytli problémy so zmenou rýchlosti serva, keď je „eff“nastavené na 0,4 a vyššie. Ak by bol použitý snímač teploty a vlhkosti, konečný model by bol komplikovanejší, ale predstavoval by konzistentnejšie hodnoty. Napriek tomu je to skúsenosť, ktorá ukazuje, že komplexný stroj môže fungovať ako kombinácia svojich jednoduchých častí.
Odporúča:
Automatický spínač klimatizácie: 5 krokov
Automatický prepínač klimatizácie: Pretože existujú rôzne rôzne veci, ktoré musia ľudia počas svojho každodenného života robiť, často zabúdame na niektoré drobné detaily, ktoré niekedy spôsobujú vážne dôsledky a zabúdanie na vypnutie klimatizácie je jednou z nich. Zatiaľ čo ľudia omylom
Výučba PCB klimatizácie s jej fungovaním a opravou: 6 krokov
Výučba PCB klimatizácie s jej fungovaním a opravou: Hej, čo sa deje, chlapci! Akarsh tu z CETech. Zamysleli ste sa niekedy nad tým, čo sa deje vo vnútornej strane vašich klimatizácií? Ak áno, mali by ste si prečítať tento článok, pretože dnes vám poskytnem prehľad o spojeniach a komp
Zariadenie na automatické zapínanie klimatizácie: 5 krokov
Zariadenie na automatické zapínanie klimatizácie: Toto zariadenie sa nazýva zariadenie na automatické zapínanie klimatizácie. Keď ste vo svojej horúcej miestnosti a práve ste skončili školu, ste príliš unavení na to, aby ste zapli klimatizáciu, potom je toto zariadenie pre vás to pravé. Mechanizmus tohto zariadenia je veľmi jednoduchý. W
Pochopenie protokolu IR diaľkových ovládačov klimatizácie: 9 krokov (s obrázkami)
Pochopenie IR protokolu diaľkových ovládačov Air Conditoner: O IR protokoloch sa učím už nejaký čas. Ako odosielať a prijímať IR signály. V tomto mieste zostáva už len IR protokol diaľkových ovládačov AC. Na rozdiel od tradičných diaľkových ovládačov takmer všetkých elektronických zariadení (povedzme televízora), kde
Chladnejší vzduch! za menej peňazí! Preplňovanie klimatizácie !!: 14 krokov (s obrázkami)
Chladnejší vzduch! za menej peňazí! Prepĺňanie klimatizácie !!: Touto metódou môžete dosiahnuť lepšie chladenie a nižšie náklady na energiu. Klimatizácia funguje tak, že stlačí plynné chladivo, až kým nez kondenzuje v kondenzátore (uhádli ste), ktorý je na vonkajšej strane. Vonku sa tým uvoľňuje teplo. Potom keď to