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.
Gyorskeresés
Legfrissebb anyagok
- Bemutató Spyra: akkus, nagynyomású, automata vízipuska
- Bemutató Route 66 Chicagotól Los Angelesig 2. rész
- Helyszíni riport Alfa Giulia Q-val a Balaton Park Circiut-en
- Bemutató A használt VGA piac kincsei - Július I
- Bemutató Bakancslista: Route 66 Chicagotól Los Angelesig
Általános témák
LOGOUT.hu témák
- [Re:] [Luck Dragon:] Asszociációs játék. :)
- [Re:] Elektromos rásegítésű kerékpárok
- [Re:] [bb0t:] Gyilkos szénhidrátok, avagy hogyan fogytam önsanyargatás nélkül 16 kg-ot
- [Re:] [attilasd:] A laposföld elmebaj: Vissza a jövőbe!
- [Re:] [gban:] Ingyen kellene, de tegnapra
- [Re:] [Parci:] Milyen mosógépet vegyek?
- [Re:] [D1Rect:] Nagy "hülyétkapokazapróktól" topik
- [Re:] [Kolondrum:] Én és a Martes foina, közismertebb nevén a nyest
- [Re:] [bitpork:] 2024 phautós tali ?
- [Re:] [cigam:] Milyen NAS-t vegyek?
Szakmai témák
PROHARDVER! témák
Mobilarena témák
IT café témák
Útvonal
Fórumok » Egyéb hardverek » Mikrokontrollerek Arduino környezetben (programozás, építés, tippek)Téma összefoglaló
Hozzászólások
happy555
aktív tag
Motor felől van két vezetéked, ha az egyikre adsz fázist jobbra forog (pl nyit), ha a másikra akkor balra (pl zár).
Nem így van?
A reléden pedig két érintkező közt mozog a harmadik.
Nem vagyok babonás, mert az szerencsétlenséget hoz!
Pubszon
veterán
Egyenáramú motor, a trafó 230V-ja lesz kapcsolva.
Amúgy megjött a 4-es relé modul meg az arduino is!
ASRock X79 Extreme6, i7 4930K, 32GB DDR3, GTX 1080 G1, Corsair RM750x...
Pubszon
veterán
Na és össze van állítva próbára, működik ahogy elgondoltam!
Itt a kód, tippeket várok.
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(vegallasPin1, INPUT);
pinMode(vegallasPin2, INPUT);
pinMode(iranyPin1, OUTPUT);
pinMode(iranyPin2, OUTPUT);
pinMode(jelzoPin, OUTPUT);
pinMode(ACvPin, OUTPUT);
pinMode(resetPin, OUTPUT);
pinMode(ledPin, OUTPUT);
}
void loop()
{
nyitoGomb = digitalRead(buttonPin1);
zaroGomb = digitalRead(buttonPin2);
vegallasNyitva = digitalRead(vegallasPin1);
vegallasZarva = digitalRead(vegallasPin2);
digitalRead(buttonPin1);
digitalRead(buttonPin2);
digitalRead(vegallasPin1);
digitalRead(vegallasPin2);
if ((nyitoGomb == HIGH) && (zaroGomb == LOW) && (vegallasNyitva == LOW)) // Nyitas
{
digitalWrite(jelzoPin, LOW);
digitalWrite(ledPin, HIGH);
digitalWrite(iranyPin1, HIGH); //+
digitalWrite(iranyPin2, LOW); //-
delay(300);
digitalWrite(ACvPin, LOW);
}
else if ((nyitoGomb == HIGH) && (zaroGomb == LOW) && (vegallasNyitva == HIGH)) // Nyitva
{
delay(11); //Ha kinyilik, mennyit toljon meg, hogy feszes legyen
digitalWrite(jelzoPin, HIGH);
digitalWrite(ACvPin, HIGH);
digitalWrite(resetPin, LOW);
do
{
digitalWrite(ledPin, HIGH);
delay(100);
digitalWrite(ledPin, LOW);
delay(100);
digitalRead(nyitoGomb);
digitalRead(zaroGomb);
break;
}
while((nyitoGomb==HIGH) || (zaroGomb==HIGH));
delay(400);
digitalWrite(resetPin, LOW);
}
else if ((nyitoGomb == LOW) && (zaroGomb == HIGH) && (vegallasZarva == LOW)) // Zaras
{
digitalWrite(jelzoPin, LOW);
digitalWrite(ledPin, HIGH);
digitalWrite(iranyPin1, LOW); //+
digitalWrite(iranyPin2, HIGH); //-
delay(300);
digitalWrite(ACvPin, LOW);
}
else if ((nyitoGomb == LOW) && (zaroGomb == HIGH) && (vegallasZarva == HIGH)) // Zarva
{
delay(11); //Ha bezarul, mennyit toljon meg, hogy feszes legyen
digitalWrite(jelzoPin, HIGH);
digitalWrite(ACvPin, HIGH);
digitalWrite(resetPin, LOW);
do
{
digitalWrite(ledPin, HIGH);
delay(100);
digitalWrite(ledPin, LOW);
delay(100);
digitalRead(nyitoGomb);
digitalRead(zaroGomb);
break;
}
while((nyitoGomb==HIGH) || (zaroGomb==HIGH));
delay(400);
digitalWrite(resetPin, LOW);
}
else if ((nyitoGomb == LOW) && (zaroGomb == LOW)) // Mind 2 gomb kikapcsolva a taviranyiton, alap statusz
{
digitalWrite(iranyPin1, HIGH);
digitalWrite(iranyPin2, HIGH);
digitalWrite(ACvPin, HIGH);
digitalWrite(jelzoPin, HIGH);
digitalWrite(resetPin, HIGH);
do
{
digitalWrite(ledPin, HIGH);
delay(100);
digitalWrite(ledPin, LOW);
delay(100);
digitalRead(nyitoGomb);
digitalRead(zaroGomb);
break;
}
while((nyitoGomb==LOW) && (zaroGomb==LOW));
}
else
{
digitalWrite(iranyPin1, HIGH);
digitalWrite(iranyPin2, HIGH);
digitalWrite(jelzoPin, HIGH);
digitalWrite(ACvPin, HIGH);
digitalWrite(resetPin, LOW);
do
{
digitalWrite(ledPin, HIGH);
delay(100);
digitalWrite(ledPin, LOW);
delay(100);
digitalRead(nyitoGomb);
digitalRead(zaroGomb);
break;
}
while((nyitoGomb==LOW) && (zaroGomb==LOW));
delay(200);
digitalWrite(resetPin, HIGH);
}
}
[ Szerkesztve ]
ASRock X79 Extreme6, i7 4930K, 32GB DDR3, GTX 1080 G1, Corsair RM750x...
g0dl
addikt
Ezzel a modellező eszközzel kapcsolatban van valakinek tapasztalata? Mennyire korlátozott az ingyenes változat.
happy555
aktív tag
Mire?
Nem vagyok babonás, mert az szerencsétlenséget hoz!
Pubszon
veterán
Hogy mi az ami felesleges vagy hogy lehet egyszerűbben, vagy bármi más hasznos dolgot.
ASRock X79 Extreme6, i7 4930K, 32GB DDR3, GTX 1080 G1, Corsair RM750x...
happy555
aktív tag
Lehet csiszolgatni (fogod is ) bőven.
Már csak azért is, mert megfelel erre a feladatra, de mást így nem tud végezni, mivel megakasztod a programot egy led villogtatás loop-al.
Pedig míg nincs más dolga, kezelhetne esti fényt, mérhetne és küldhetne hőmérsékletet, kezelhetne csengőt, fénysorompót, stb......
Jahh és lehetne benne "kiskapu funkció" is, amikor nem nyit ki teljesen, csak hogy gyalog be lehessen menni.
Nem vagyok babonás, mert az szerencsétlenséget hoz!
Pubszon
veterán
Az ilyesmik érdekelnek engem.
A LED villogtatás nem fontos, helyette tényleg csinálhatna valami mást.
Erre mit ajánlsz?
ASRock X79 Extreme6, i7 4930K, 32GB DDR3, GTX 1080 G1, Corsair RM750x...
happy555
aktív tag
Led villogtatás pl.:
program elején
boolean T;
Loop végére pl.:
if(((millis()/100) & 1) == T){//tizedmásodperces ütemezés
T=!T;
digitalWrite(ledPin, T);
}
Fut tovább a progi és kapcsolgatja a ledet
Nem vagyok babonás, mert az szerencsétlenséget hoz!
Pubszon
veterán
Ez is jó, bele is tettem a programba, ami most tökéletesen működik.
Viszont azt már most látom, hogy nem lesz könnyű megcsinálni az RF vevővel ha meg jön.
Most azzal kísérletezgetek, hogy hogy kell egy pillanatkapcsolóból billenőkapcsolót csinálni.
Itt van hozzá egy kód, ami működik is ahogy kell, de már ez is elég bonyolult, főleg hogy még rakjam is bele a kapunyitó programba, meg még az RF vevőt is bele kell.
Jó lenne, ha ezek meglennének könyvtárként.
ASRock X79 Extreme6, i7 4930K, 32GB DDR3, GTX 1080 G1, Corsair RM750x...
happy555
aktív tag
Most azzal kísérletezgetek, hogy hogy kell egy pillanatkapcsolóból billenőkapcsolót csinálni.
Érdekes kísérlet
Mi a célod vele?
Létezik rf könyvtár rcswitch
[ Szerkesztve ]
Nem vagyok babonás, mert az szerencsétlenséget hoz!
Pubszon
veterán
Rosszul fejeztem ki magam, de így biztosan fogod érteni.
Viszont jól átalakítottam a kódot és most pillanatkapcsolóval menne, amivel még egyszerűbb az egész.
Most úgy van, hogy pl nyitás közben ha megnyomom a zárás gombot, akkor csak megáll, ha pedig megint megnyomom, akkor meg bezár, és ez fordítva is igaz. Ez jelenleg csak pillanatkapcsolóval működik, de ez a resetelős megoldás amúgy sem jó.
kagzer fórumtárs küldött tegnap egy RF vevőt, remélem holnap megkapom és akkor lesz az igazi!
[ Szerkesztve ]
ASRock X79 Extreme6, i7 4930K, 32GB DDR3, GTX 1080 G1, Corsair RM750x...
happy555
aktív tag
Úgy oldottam meg, ha nyitás közben nyomok nyitást akkor áll meg, ha zárást akkor visszafordul. Ehhez még kell határozni egy időt aminek el kell telnie két gombnyomás közt, hogy az érvényes legyen.
Nem vagyok babonás, mert az szerencsétlenséget hoz!
Pubszon
veterán
Most én is módosítottam, nyitás vagy záráskor bármely gombot ha megnyomom akkor megáll, vár 1000ms-ot és csak utána lehet adni neki a következő parancsot.
A végálláskapcsolókat is módosítottam, folyamatosan HIGH állapotba vannak, mikor benyomódnak akkor lépnek LOW-ba. Ezt a biztonságért, hogy ha szakadás van, inkább ne induljon el, minthogy valami leégjen.
Viszont megjött az RF vevő amit a fórumtárs küldött, ráadásul 2 vevő és 2 transzmitter!
Ezennel is köszönöm, amint tudom meghálálom.
Na de egyelőre csak a vevőt használnám, ahhoz hol találom meg a megfelelő könyvtárat és leírást?
2 gombos távirányítót használnék.
ASRock X79 Extreme6, i7 4930K, 32GB DDR3, GTX 1080 G1, Corsair RM750x...
happy555
aktív tag
Nem vagyok babonás, mert az szerencsétlenséget hoz!
Pubszon
veterán
És hogy tudom meg a távirányítóm kódját?
ASRock X79 Extreme6, i7 4930K, 32GB DDR3, GTX 1080 G1, Corsair RM750x...
happy555
aktív tag
Nézz körül a mintapéldáiban!
ReceiveDemo_Simple
Nem vagyok babonás, mert az szerencsétlenséget hoz!
Danex
addikt
Nálam sajnos a RCSwitch nem működött, vagyis csak hibásan, szóval ha esetleg neked se megy akkor szólj és megkeresem azt amit ment nálam.
happy555
aktív tag
Nekem megy, de kíváncsian várom mid van!
Nem vagyok babonás, mert az szerencsétlenséget hoz!
Pubszon
veterán
Szia.
Nem jutottam semmire, pedig egy DIP kapcsolós konnektoraljzattal is próbáltam, de semmi.
Jó lenne ha elküldenéd.
ASRock X79 Extreme6, i7 4930K, 32GB DDR3, GTX 1080 G1, Corsair RM750x...
Danex
addikt
RemoteSwitch lenne az
#include <RemoteReceiver.h>
void setup() {
Serial.begin(115200);
RemoteReceiver::init(0, 3, showCode);
}
void loop() {
}
void showCode(unsigned long receivedCode, unsigned int period) {
Serial.print("Code: ");
Serial.print(receivedCode);
Serial.print(", period duration: ");
Serial.print(period);
Serial.println("us.");
}
A kódja is egyszerű, nekem az RCSwitch nem tudta érzékelni a jeleket, illetve volt, hogy néha egy véletlenszerű kódot lökött a Monitorra, de nem jártam vele sikerrel.
(#370) Pubszon
Most látom, hogy nem sikerült neked se, a library tartalmazza az alap programot ott leírás is található, hogy hova kell kötni az érzékelőt.
[ Szerkesztve ]
happy555
aktív tag
Nem ismertem!
Elro , kaku, blokker, mik ezek?
Nem vagyok babonás, mert az szerencsétlenséget hoz!
Danex
addikt
Mik?
Pubszon
veterán
Köszi, frankón mutatja minden gombnak a kódját a 433MHz-es távirányító esetében, viszont ami nekem van a kapuhoz, azzal az a baj, hogy 315MHz-es és annál nem mutat semmit.
Teendő esetleg?
ASRock X79 Extreme6, i7 4930K, 32GB DDR3, GTX 1080 G1, Corsair RM750x...
Danex
addikt
Ahhoz 315Mhz-es érzékelő(és adó) kell sajnos (tudomásom szerint).
happy555
aktív tag
Így igaz!
Nem vagyok babonás, mert az szerencsétlenséget hoz!
Pubszon
veterán
Ez van most, de csak a távirányítóját használom, leírásban 315MHz.
A receiver ami most rá van kötve pedig ez.
Mind a 2 tudja a 315MHz-et.
ASRock X79 Extreme6, i7 4930K, 32GB DDR3, GTX 1080 G1, Corsair RM750x...
happy555
aktív tag
Ez nem úgy van Hogy ha tud 433-at akkor tud 315 is.
Az egyik 315-ön megy, másik 433-on!
Ez fix érték.
[ Szerkesztve ]
Nem vagyok babonás, mert az szerencsétlenséget hoz!
Danex
addikt
Ez a különbség a 315mhz és a 433mhz-es között. Szerintem a menetszámra gondol bal fent, és nem a tekerésre (csavar).
Az én érzékelőm hátlapján jelölve van a 3 érték közül a 433-as.
[ Szerkesztve ]
Pubszon
veterán
Na, akkor vennem kell egy 315-ös receivert is.
csak azt nem értem, hogy mi az a customized frequency is available...
mármint írni kell nekik, hogy milyet küldjenek?
ASRock X79 Extreme6, i7 4930K, 32GB DDR3, GTX 1080 G1, Corsair RM750x...
Danex
addikt
igen, így érthették. Vagy lehet érdemesebb lenne teljesen áttérned 433mhz-re.
[ Szerkesztve ]
Pubszon
veterán
Lehet az lesz, egész olcsón vannak jó távirányítók.
[ Szerkesztve ]
ASRock X79 Extreme6, i7 4930K, 32GB DDR3, GTX 1080 G1, Corsair RM750x...
happy555
aktív tag
Mondtam valamelyik nap, hogy a 433 járja errefele.....
Ugrókódossal nem boldogul, fix meg max csak gagyi cuucoson van
Hiába törölsz, már tudjuk mi a csapás
[ Szerkesztve ]
Nem vagyok babonás, mert az szerencsétlenséget hoz!
happy555
aktív tag
Mintákban szerepel.
De ezek szerint nem jártál utána miket tud a progi.
Nem vagyok babonás, mert az szerencsétlenséget hoz!
tvamos
nagyúr
Ne hasznaljatok a 315MHz-es cuccokat! Nem jo az nektek!
"Mindig a rossz győz, és a jó elnyeri méltó büntetését." Voga János
Pubszon
veterán
Akkor átállok 433-ra, ahhoz 4 gombos távirányító is van 5-600Ft-ért, amivel ahogy korábban mondtad egyéb funkciók is megoldhatóak.
Gyakorolni meg van mivel addig helyette.
Direkt vártam pár percet szerkesztési időben, hogy hátha látjátok, de akkor nem mondtam újat.
Az én kocsim távja jelét nem fogja, de a faterét igen, ami utólag lett beszerelve.
Nem tudom hogy ugró kódos e.
(#385) tvamos: Nem fogom, de miért nem ajánlott?
[ Szerkesztve ]
ASRock X79 Extreme6, i7 4930K, 32GB DDR3, GTX 1080 G1, Corsair RM750x...
Danex
addikt
Mert a 315MHz EU-n belül tiltott frekvencia
Pubszon
veterán
Jah, azt hittem valami komoly ok miatt, de kidobni nem fogom.
Rendeltem egy ilyet, remélem jó lesz.
Szerinted?
ASRock X79 Extreme6, i7 4930K, 32GB DDR3, GTX 1080 G1, Corsair RM750x...
Danex
addikt
Öhm, ha jól értem neked most van egy reléd ami 315MHz-es távkapcsolóval megy. Ahhoz ez nem lesz jó.
Pubszon
veterán
Igen, de ahhoz van 2db 315MHz-es távirányítóm is, az jó lesz máshova, viszont van az arduinohoz 433MHz-es receiver 2db meg 2 transmitter is. Ahhoz lenne ez a távirányító.
Remélem jó lesz hozzá, mivel ez 4 gombos, így egyéb funkciókat is tudok beprogramozni a nyitás/záráson kívül (elektromos kapunyitó).
ASRock X79 Extreme6, i7 4930K, 32GB DDR3, GTX 1080 G1, Corsair RM750x...
Danex
addikt
Akkor úgy jó lesz elvileg
happy555
aktív tag
Jó lesz.
Csak majd tenni kell rá kódot, mert ez gyárilag üres.
Nem vagyok babonás, mert az szerencsétlenséget hoz!
Pubszon
veterán
Zsír, ilyen van itthon, erről rá is tudom tenni akkor a D meg az E párost és elég lesz az az egy távirányító meg ez.
Ezzel addig tudok tesztelni is.
ASRock X79 Extreme6, i7 4930K, 32GB DDR3, GTX 1080 G1, Corsair RM750x...
happy555
aktív tag
Tudtad fogadni a kódját arduinoval?
Akkor nagyon valószínű.
Nem vagyok babonás, mert az szerencsétlenséget hoz!
Pubszon
veterán
Igen, ennek minden gombját szépen mutatta a serial monitor.
Sőt, még ennek a központi zár távirányítónak a jelét is fogta, de lehet ez ugrókódos.
ASRock X79 Extreme6, i7 4930K, 32GB DDR3, GTX 1080 G1, Corsair RM750x...
Pubszon
veterán
Meg van a 4 gomb 6 számjegyű kódja.
Egyelőre 2 gombot akarok használni, ami lényegében ugyan azt a funkciót töltené be, mint 2 pillanatkapcsoló.
Az egyik kód lenne a nyitoGomb a másik pedig a zaroGomb.
Hogy tudom megoldani?
ASRock X79 Extreme6, i7 4930K, 32GB DDR3, GTX 1080 G1, Corsair RM750x...
happy555
aktív tag
if(receivedCode==ami_a_kodod){
...........
receivedCode=0;
};
Nem vagyok babonás, mert az szerencsétlenséget hoz!
Pubszon
veterán
Deklarálni kellene, de az nem tudom hogy kell.
Illetve a 246757 kódnak ugyan annak kellene lenni mint a nyitoGomb=HIGH-nak.
ASRock X79 Extreme6, i7 4930K, 32GB DDR3, GTX 1080 G1, Corsair RM750x...
happy555
aktív tag
#define nyitas 246757
boolean nyitoGomb=false;
if(receivedCode==nyitas){
nyitoGomb=true;
receivedCode=0;
};
Ezutan vizsgalhatod hogy if(nyitoGomb==HIGH) ....
Csak művelet befejeztével vissza kell állítani false-ra.
De egy kicsit foglalkozz a C++-al, fejtegesd a mintákat!
Nem vagyok babonás, mert az szerencsétlenséget hoz!
Mai Hardverapró hirdetések
prémium kategóriában
- Játszós PC , i7 7800X , GTX 1080 , 32GB DDR4 , 256GB NVME , 1TB HDD
- Gaming PC v2 , R5 4500 , RX 5700 XT , 16GB 3000MHz , 256GB NVME , 1TB HDD
- Samsung Galaxy A04s 32GB, Kártyafüggetlen, 1 Év Garanciával
- Microsoft Surface Go 3 Wi-Fi - I5, 8GB/128GB SSD Platinum
- Dell Latitude 7320 Intel Core i7-1185G7 16GB memória 512GB SSD 13.3 colos Full HD kijelző