
2025 Autor: John Day | [email protected]. Naposledy zmenené: 2025-01-23 15:05

Home System 3000 je zariadenie, ktoré používa Arduino, teplotný senzor, piezoelektrický bzučiak, optický detektor/fototranzistor a servo na zobrazenie spôsobov, ako zlepšiť energetickú účinnosť domácnosti.
Krok 1: Snímač teploty

· Spustite napájacie a uzemňovacie vodiče z
mikroovládača na boku dosky na chlieb
· Umiestnite teplotný senzor do dosky na chlieb a zapojte zodpovedajúce napájacie a uzemňovacie vodiče
· Všimnite si, že snímač teploty má tri hroty a stredný hrot má vodič, ktorý vedie z portu „A0“.
· Kód pre snímač teploty:
answer = questdlg ('Spustite arduino a štartovací kód serva', 'odpoveď', 'Ok', 'Ok')
prompt = 'Začnite stlačením ľubovoľného klávesu'
pauza
prompt1 = 'Nastaviť minimálnu teplotu'
x = vstup (výzva1)
prompt2 = 'Nastaviť maximálnu teplotu'
y = vstup (výzva2)
prompt3 = 'Začnite stlačením ľubovoľného klávesu'
pauza
obrázok
h = animovaná čiara;
sekera = gca;
ax. YGrid = 'zapnuté';
ax. YLim = [65 85];
stop = nepravda;
startTime = datetime ('teraz');
zatiaľ čo ~ zastaviť
% Prečítajte si hodnotu aktuálneho napätia
v = readVoltage (a, 'A0');
% Vypočítajte teplotu z napätia (na základe technického listu)
TeplotaC = (v - 0,5)*100;
TempF = 9/5*TempC + 32;
% Získajte aktuálny čas
t = datetime ('teraz') - startTime;
% Pridajte body do animácie
body pridania (h, dátum (t), TempF)
% Aktualizovať osi
ax. XLim = dátum ([t-sekúnd (15) t]);
datetick ('x', 'keeplimits')
sťahovať
% Skontrolujte stav zastavenia
stop = čítaťDigitalPin (a, 'D12');
Krok 2: Bzučiak

· Drôt v bzučiaku, ktorý bude použitý na signalizáciu extrémne vysokých alebo extrémne nízkych teplôt
· Z kladného stĺpca na kladnú stranu bzučiaka neprechádza žiadny drôt
· Namiesto toho je drôt vedený z kladnej strany bzučiaka do portu označeného „11“
Toto sa neskôr použije na vyvolanie polohy bzučiaka v napísanom kóde.
· Kód pre bzučiak:
ak TempF> = r
disp („zatvorte dvere, je horúce“)
playTone (a, 'D11', 500, 1)
elseif TempF <= x
disp („zavri dvere, je zima“)
playTone (a, 'D11', 250, 1)
koniec
koniec
Krok 3: Optický detektor/fototranzistor

· Tento senzor vyžaduje na rozdiel od ostatných odpory
· Po zapojení káblov skontrolujte, či sú v slučke zahrnuté všetky štyri hroty senzora
· Senzor detekuje zmenu svetla, predstavujúcu pohyb, a zaznamenáva ho ako vstup
· Kód pre optický detektor/fototranzistor:
jasné a
a = arduino ('/dev/tty.usbserial-DN01DVI2', 'Uno', 'Libraries', 'Servo');
prompt = 'Nastaviť prah úrovne svetla'
z = vstup (výzva)
lightLevel = 0
zatiaľ čo lightLevel ~ = -1
lightLevel = readVoltage (a, 'A1')
ak lightLevel> = z
answer = questdlg ('chceli by ste zmeniť AC?', 'áno', 'nie')
prepnúť odpoveď
prípad „áno“
answer2 = questdlg ('Turn AC up or down?', 'response', 'Down', 'Up', 'Up')
prepnúť odpoveď2
prípad „dole“
s = servo (a, 'D10');
pre uhol = 0:.1:.5
writePosition (s, uhol);
current_position = readPosition (s);
aktuálna_pozícia = aktuálna_pozícia * 180;
% tlač aktuálnej polohy servomotora
fprintf ('Aktuálna pozícia je %d / n', aktuálna_pozícia);
Je potrebné % malé oneskorenie, aby bolo možné servo umiestniť na
% uhol na to povedané.
pauza (2);
koniec
% vrátiť motor do polohy 0 uhla
writePosition (s, 0);
jasné s
prompt = 'Pokračujte stlačením ľubovoľného klávesu'
questdlg ('AC odmietnuté', 'odpoveď', 'Ok', 'Ok')
prípad „hore“
s = servo (a, 'D10');
pre uhol =.5:.1: 1
writePosition (s, uhol);
current_position = readPosition (s);
current_position = aktuálna_pozícia * 180;
% tlač aktuálnej polohy servomotora
fprintf ('Aktuálna pozícia je %d / n', aktuálna_pozícia);
Je potrebné % malé oneskorenie, aby bolo možné servo umiestniť na
% uhol na to povedané.
pauza (2);
koniec
Krok 4: Servo

· Servo predstavuje
klimatizácia a je výstupom zo vstupu na detekciu pohybu
· Vyžaduje kladný vodič, uzemňovací vodič a vodič z portu „D9“do serva
· Kód pre servo:
% vrátiť motor do polohy 0 uhla
writePosition (s, 0);
jasné s
prompt = 'Pokračujte stlačením ľubovoľného klávesu'
questdlg ('AC zapnuté', 'odpoveď', 'Ok', 'Ok')
koniec
koniec
pauza
prestávka
koniec
koniec
*Zvláštna poznámka: časť kódu pre servo je integrovaná s kódom pre optický detektor/fototranzistor.
Odporúča:
Návod na ovládanie servomotora Arduino: 4 kroky

Návod na ovládanie servomotora Arduino: Hej, chlapci! vitajte v mojom novom návode, dúfam, že sa vám už páčilo moje predchádzajúce inštruovateľné " ovládanie veľkého krokového motora ". Dnes uverejňujem informatívny návod, ktorý vás naučí základy akéhokoľvek ovládania servomotora, už som zverejnil video
Tri obvody reproduktorov -- Podrobný návod: 3 kroky

Tri obvody reproduktorov || Podrobný návod: Obvod reproduktora zosilňuje zvukové signály prijímané z prostredia na mikrofón a odosiela ich do reproduktora, odkiaľ sa vytvára zosilnený zvuk. Tu vám ukážem tri rôzne spôsoby, ako vytvoriť tento obvod reproduktora pomocou:
Senzor vlhkosti a teploty Raspberry Pi SHT25 Python Návod: 4 kroky

Senzor vlhkosti a teploty Raspberry Pi SHT25 Python Výukový program: Snímač vlhkosti a teploty SHT25 I2C ± 1,8%relatívnej vlhkosti ± 0,2 ° C mini modul I2C. Vysoko presný snímač vlhkosti a teploty SHT25 sa stal priemyselným štandardom z hľadiska tvarového faktora a inteligencie a poskytuje kalibrované, linearizované snímače
Dvojitý návod SONOFF: Ovládajte svoje elektrické spotrebiče na diaľku pomocou MQTT a Ubidots: 4 kroky

Dvojitý návod SONOFF: Ovládajte svoje elektrické spotrebiče na diaľku pomocou MQTT a Ubidots: Toto relé Wi-Fi za 9 dolárov môže ovládať dve zariadenia súčasne. Naučte sa, ako ho pripojiť k Ubidots a naplno využiť jeho potenciál! V tejto príručke sa naučíte ovládať niekoľko 110 V zariadení cez Wi-Fi za 9 dolárov pomocou SONOFF Dual od spoločnosti Itead.
Raspberry Pi - 3 -osý akcelerometer ADXL345 Java, návod: 4 kroky

Raspberry Pi-3-osový akcelerometer ADXL345 Java Výukový program: ADXL345 je malý, tenký, ultra nízky výkon, 3-osový akcelerometer s meraním s vysokým rozlíšením (13 bitov) až ± 16 g. Digitálne výstupné údaje sú formátované ako 16-bitové dvojčatá a sú prístupné prostredníctvom digitálneho rozhrania I2 C. Meria