- LordAthis: Ismét egy "Idióta" A.I. Projekt, hogy meglovagolja a trendeket...
- gban: Ingyen kellene, de tegnapra
- NASsoljunk: ZyXEL NSA-310 és az FFP
- Luck Dragon: Asszociációs játék. :)
- tildy: Új élet kezdődik
- sziku69: Fűzzük össze a szavakat :)
- Magga: PLEX: multimédia az egész lakásban
- Austin F.: Intel Iris Xe driver frissítés
- [K2]: A vagyonvédelmi rendszerszerelővé válás rögös útja
- Lalikiraly: Astra kalandok @Harmadik rész
-
LOGOUT
Arduino hardverrel és szoftverrel foglakozó téma. Minden mikrovezérlő ami arduinoval programozható, és minden arduino program, board, és hardverrel kapcsolatos kérdések helye.
Új hozzászólás Aktív témák
-
távcsőves
senior tag
válasz
Tomi8822 #7567 üzenetére
Remélem ez már elég segítség lesz. (nagyon belezavarodtál) Ha nem világos valami, kérdezz, de igyekeztem rendesen elmagyarázni a vázlatban.
// Megadod a szükséges könyvtárokat
#include <RTClib.h> //Ez kell az óramodul hardwerének kezeléséhez
#include <Wire.h> //Ez a könyvtár kezeli az I2C buszt, amihez az óramodulod kapcsolodik, A4 (SDA) és A5 (SCL) pin az Uno-n.
RTC_DS1307 RTC;
void setup() {
// Inditod az I2C buszt
Wire.begin();
// (3-as számú digitális pint kimenetre állítod) ezt majd töbszörözöd, ahány reléd van
// és amelyik pinhez kapcsoltad értelemszerűen változtattod a számát
pinMode(3, OUTPUT);
}
void loop() {
// minden ciklus elején kéred az óramodultól az aktuális időt/dátumot
DateTime now = RTC.now();
/*Szerintem érdemes lenne az időt egy egységben kezelned.
Tehát nem 6óra és 40percben, hanem percben. Ekkor a kapcsolási időket percben adod meg.
Példa: 6óra = 6*60perc ami, 360 perc, ehhez adod a plusz 40 perced. Az eremény
pedig 400 perc, ami egyenlő 6óra és 40 percel. A vázlatod alapján ez az első relé bekapcsolási ideje.
A vázlatodban az első relé kikapcsolási ideje pedig 17óra 40 perc (=1060 perc) ami felírható így is: 1060perc=(17*60)+40
A másodperceket szerintem teljesen elfelejthetted, nem hiszem, hogy egy akvárium lakói a másodpercekre
érzékenyek lennének. Meg az évre, meg a hónapra, meg a.... Természetesen fellehet írni órában is az időt, ekkor tört számot kapsz.
A lényeg, hogy egy egységben kezeld. Almát almával, körtét körtével hasonlíts össze. */
// Elkészíted a perc változót és a tartalma az aktuális óra és perc, percek számában.
int perc = (now.hour() * 60) + now.minute();
/* használod az if else statement a be és kikapcsolási idők ellenőrzésére egy egyszerű érték összehasonlításal.
tehát, ha az aktuális percek száma nagyobb, mint 400 de kisebb, mint 1060, a relé bekapcsolva, minden más esetben kikapcsolva.
if ((perc > 400) && (perc < 1060)) {
digitalWrite(3, HIGH);
} else {
digitalWrite(3, LOW);
}
*/
// Emberi szemnek értelmesebb formábban pedig így néz ki az if else, ez alapján remélem érthető a müködése egy relére
if ((perc > (6 * 60) + 40) && (perc < (17 * 60) + 40)) {
digitalWrite(3, HIGH);
} else {
digitalWrite(3, LOW);
}
} // És amig neked írtam, addig lekapott a pörkölt, ajánlom, hogy megépítsd az akvárium vezérlőd!! ;)
Új hozzászólás Aktív témák
- Apple MacBook
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Iszonyatos mennyiségű hulladékkal járhat a Windows 10 terméktámogatásának vége
- Linux kezdőknek
- Samsung Galaxy S25 - végre van kicsi!
- Azonnali VGA-s kérdések órája
- SUSE Linux
- Xiaomi 14T Pro - teljes a család?
- Samsung Galaxy S24 - nos, Exynos
- E-roller topik
- További aktív témák...
- Windows, Office licencek kedvező áron, egyenesen a Microsoft-tól - Automata kézbesítés utalással is!
- HP 200W (19.5V 10.3A) kis kék, kerek, 4.5x3.0mm töltők + tápkábel, 928429-002
- 121 - Lenovo Legion Pro 5 (16ARX8) - AMD Ryzen 7 7745HX, RTX 4070 (48 hónap garancia!)
- Zebra ZP505 EPL - Hőpapíros címkenyomtató
- Dell OptiPlex MT/SFF 3040, 3050, 7050, 3060, 3070, 5070, 7060 /WIN 11 - SZÁMLA- GARANCIA
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest