Hirdetés
- Luck Dragon: Asszociációs játék. :)
- hcl: Xiaomi pumpa pumpálás
- eBay-es kütyük kis pénzért
- Mr Dini: Mindent a StreamSharkról!
- gban: Ingyen kellene, de tegnapra
- Trewerr: Analóg-digitális jelátalakítás (zenefájlok leegyszerűsítésével magyarázva)
- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- sh4d0w: Kalózkodás. Kalózkodás?
- GoodSpeed: Ágymatrac keresési kálvária
-
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
-
Pubszon
veterán
válasz
happy555
#335
üzenetére
Igen, azt szeretném, hogy a delay-ek egyszer fussanak le és ha bármi van egyből tudjon reagálni.
Na de inkább beírom ide az egészet, hogy így jó e.
Nagyjából meg van a leírás is hogy mi mi.
A resetPin az RF vevőt áramtalanítja, hogy a relék visszaálljanak alap állapotba. Ez addig lesz így, míg nem jön meg a másik. Mert ez csak self-lock, tehát egy gombnyomás akkor úgy is marad a relé. Az meg nekem nem jó, mert rövid áramszünet után kinyílna a kapu, meg ne legyen behúzva a relé, csak ha kell.
/*
Az aramkor:
* Gombok a +5V es a pin 2, 3, 9 es 10 koze.
* 10K ellenallas a pin 2, 3, 9, 10-re a GND-rol kulon-kulon.
* Megjegyzes: A legtobb Arduinon mar van egy integralt LED a pin 13-ra kotve.
A 4 csatornas rele panelen az 1. es 2. rele bemenetet ossze kell kotni a valtokapcsolas miatt.
Rele bekotese:
Rele 1: NC +30V DC motor fele, NO GND motor fele, COM +30V DC a tap felol.
Rele 2: NC GND motor fele, NO +30V DC motor fele, COM GND a tap felol.
Rele 3: NC 230V AC a DC tap fele, COM 230V AC a halozati arambol.
Rele 4: NC +12V DC a 2 csatornas tavvezerlo fele, COM +12V DC a tap felol.
*/
const int buttonPin1 = 2; // Kapu nyitas gomb, a vevo egyik releje
const int buttonPin2 = 3; // Kapu zaras gomb, a vevo masik releje
const int iranyPin1 = 4; // Kapu nyitas-zaras, elso rele valtokapcsolo 1. rele
const int iranyPin2 = 5; // Kapu nyitas-zaras, masodik rele valtokapcsolo 2. rele
const int jelzoPin = 6; // Jelzofeny nyitas/zaras ideje alatt 3. rele
const int resetPin = 7; // Vevo reset hogy a relek NO-ba alljanak 4. rele
const int ACvPin = 8; // Motor 230V lekapcsolasa 5. kulonallo rele
const int vegallasPin1 = 9; // Vegallaskapcsolo-nyitva
const int vegallasPin2 = 10; // Vegallaskapcsolo-zarva /Magnes erzekelo/
const int ledPin = 13; // Allapotjelzo LED, folyamatosan vilagit muvelet kozben
// valtozni fognak:
int nyitoGomb = 0; // Valtozik a gomb allapota alapjan
int zaroGomb = 0; // Valtozik a gomb allapota alapjan
int vegallasNyitva = 0; // Valtozik a vegallaskapcsolo allapota alapjan
int vegallasZarva = 0; // Valtozik a vegallaskapcsolo allapota alapjan
void setup() {
// Ki-bemenetkent:
pinMode(buttonPin1, INPUT);
pinMode(buttonPin2, INPUT);
pinMode(iranyPin1, OUTPUT);
pinMode(iranyPin2, OUTPUT);
pinMode(jelzoPin, OUTPUT);
pinMode(ACvPin, OUTPUT);
pinMode(resetPin, OUTPUT);
pinMode(vegallasPin1, INPUT);
pinMode(vegallasPin2, INPUT);
pinMode(ledPin, OUTPUT);
digitalWrite(ACvPin, LOW);
digitalWrite(iranyPin1, LOW);
digitalWrite(iranyPin2, LOW);
digitalWrite(jelzoPin, HIGH);
delay(2000);
digitalWrite(jelzoPin, LOW);
Serial.begin(9600);
}
void loop()
{
nyitoGomb = digitalRead(buttonPin1);
zaroGomb = digitalRead(buttonPin2);
vegallasNyitva = digitalRead(vegallasPin1);
vegallasZarva = digitalRead(vegallasPin2);
int lowlow = (nyitoGomb == LOW && zaroGomb == LOW) == true;
if (nyitoGomb == HIGH && zaroGomb == LOW && vegallasNyitva == LOW) // Nyitas
{
digitalWrite(jelzoPin, HIGH);
digitalWrite(ledPin, HIGH);
delay(250);
digitalWrite(iranyPin1, HIGH); //+
delay(250);
digitalWrite(iranyPin2, LOW); //-
delay(500);
digitalWrite(ACvPin, HIGH);
}
else if (nyitoGomb == HIGH && zaroGomb == LOW && vegallasNyitva == HIGH) // Nyitva
{
delay(196);
digitalWrite(jelzoPin, LOW);
digitalWrite(ACvPin, LOW);
digitalWrite(resetPin, LOW);
do
{
digitalWrite(ledPin, HIGH);
delay(100);
digitalWrite(ledPin, LOW);
delay(100);
}
while(lowlow == false);
delay(200);
digitalWrite(resetPin, HIGH);
}
else if (nyitoGomb == LOW && zaroGomb == HIGH && vegallasZarva == LOW) // Zaras
{
digitalWrite(jelzoPin, HIGH);
digitalWrite(ledPin, HIGH);
delay(250);
digitalWrite(iranyPin1, LOW); //-
delay(250);
digitalWrite(iranyPin2, HIGH); //+
delay(500);
digitalWrite(ACvPin, HIGH);
}
else if (nyitoGomb == LOW && zaroGomb == HIGH && vegallasNyitva == HIGH) // Zarva
{
delay(374);
digitalWrite(jelzoPin, LOW);
digitalWrite(ACvPin, LOW);
digitalWrite(resetPin, LOW);
do
{
digitalWrite(ledPin, HIGH);
delay(100);
digitalWrite(ledPin, LOW);
delay(100);
}
while(lowlow == false);
delay(200);
digitalWrite(resetPin, HIGH);
}
else if (nyitoGomb == LOW && zaroGomb == LOW) // Mind 2 gomb kikapcsolva a taviranyiton, alap statusz
{
do
{
digitalWrite(ledPin, HIGH);
delay(1000);
digitalWrite(ledPin, LOW);
delay(1000);
}
while(lowlow == true);
}
else
{
digitalWrite(jelzoPin, LOW);
digitalWrite(ACvPin, LOW);
digitalWrite(resetPin, LOW);
do
{
digitalWrite(ledPin, HIGH);
delay(100);
digitalWrite(ledPin, LOW);
delay(100);
}
while(lowlow == false);
delay(200);
digitalWrite(resetPin, HIGH);
}
}
Új hozzászólás Aktív témák
- Assetto Corsa Rally
- exHWSW - Értünk mindenhez IS
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- BestBuy topik
- A Sony megmutatja milyen monitor illik a PlayStation 5-höz
- Motorolaj, hajtóműolaj, hűtőfolyadék, adalékok és szűrők topikja
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Soundbar, soundplate, hangprojektor
- Gitáros topic
- Vezetékes FEJhallgatók
- További aktív témák...
- AKCIÓ! Apple Macbook Pro 16" 2019 i9 64GB 512GB 5500M macbook garanciával hibátlan működéssel
- HIBÁTLAN iPhone 13 mini 128GB Pink -1 ÉV GARANCIA - Kártyafüggetlen, MS3840, 100% Akksi
- BESZÁMÍTÁS! Asrock B450M R7 3700X 16GB DDR4 512GB SSD RTX 2070 Super 8GB GameMax Aero Mini ECO 600W
- REFURBISHED - Lenovo ThinkPad 40AC Thunderbolt 3 Dock
- Bomba ár! Lenovo ThinkPad L520 - i3-2GEN I 4GB I 160GB I DVDRW I 15,6" HD I Cam I W10 I Garancia!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: NetGo.hu Kft.
Város: Gödöllő

ekkold
