Fórum | MyPower.CZ | Obnovitelné zdroje energie - energetická soběstačnost | Právě je stř lis 21, 2018 3:10 am


2xbutton-2xrelay help

Automatizace, řízení, měření, logování a programování s využitím platformy Arduino.

2xbutton-2xrelay help

Příspěvekod vikieso » stř črc 17, 2013 3:16 pm

zdravim mam problem z programom
mam 2 tlacitka a 2rele s casovanim 18 sekund

tlacitko-1 aktivuje rele-1 na 18 sekund
tlacitko-2 aktivuje rele-2 na 18 sekund

problem je ked aktivujem hoci ktore tlacitko to druhe je po dobu 18sekund nefunkcne a naopak ja by som potreboval aby boli na sebe nazavisle vie my niekdo upravit program lebo sa s tym uz tyzden hrajkam a bez uspechu
dakujem

Kód: Vybrat vše
int buttonState = 0;
const int buttonPin1 = 9;  // Tlacitko casovania PIN 9
//          Button      10K
//    +5 o---0__0---.--/\/\/---o GND
//                  |
// Pin 9 o-----------      :
const int buttonPin2 = 10;  // Tlacitko casovania PIN 10
//           PhotoR     10K
//     +5 o---0__0---.--/\/\/---o GND
//                   |
// Pin 10 o-----------     :
#define RELAY_PIN_3 6 // Reley-3 casovac PIN 6:
  //               .---.
  //   6 o---------| / | Rele-3
  // -0V o---------|   |
  //               .---.
#define RELAY_PIN_4 7 // Reley-4 casovac PIN 7:
  //               .---.
  //   7 o---------| / | Rele-4
  // -0V o---------|   |
  //               .---.
void setup()
{
  pinMode(buttonPin1, INPUT); // Tlacitko casovania VSTUP:
  pinMode(buttonPin2, INPUT); // Tlacitko casovania VSTUP:
  pinMode(RELAY_PIN_3, OUTPUT); // Reley-3 casovac VYSTUP:
  pinMode(RELAY_PIN_4, OUTPUT); // Reley-4 casovac VYSTUP:
  Serial.begin(9600);
}
   
void loop()
{
    buttonState = digitalRead(buttonPin1);
    if (buttonState == LOW) {  // ked je LOW:   
    digitalWrite(RELAY_PIN_3, HIGH); // RELEY-3 on:   
    }
    else { // inokedy HIGHT:
    digitalWrite(RELAY_PIN_3, LOW); // RELEY-3 off:
    delay(3600); // (ms)
    }
    buttonState = digitalRead(buttonPin2);
    if (buttonState == LOW) {  // ked je LOW:     
    digitalWrite(RELAY_PIN_4, HIGH); // RELEY-4 on:   
    }
    else { // inokedy HIGHT:
    digitalWrite(RELAY_PIN_4, LOW); // RELEY-4 off:
    delay(18000); // (ms)
    }
}
vikieso
 
Příspěvky: 2
Registrován: stř črc 17, 2013 2:18 pm
Reputation: 0

Re: 2xbutton-2xrelay help

Příspěvekod mypower.cz » stř črc 17, 2013 3:22 pm

volani funkce delay(18000) neznamena "drz stav pinu po dobu 18 sekund a nemen ho", ale "zastav program na 18 sekund a nedelej nic".
Podpořte MyPower.CZ | 2.24kWp FVE | MyPower MicroLog2 | Podpořte MyPower.CZ v soutěži Cena Bastlířů 2018
BTC support 37uvSpUKTCmcJZD9bs8ZWhdrubxBxRZSuT | LTC support LPYitoWPn3k5PqWBWmuzbcwj344THtZ7q2
Uživatelský avatar
mypower.cz
Site Admin
 
Příspěvky: 3347
Registrován: pát bře 04, 2011 11:36 am
Reputation: 178

Re: 2xbutton-2xrelay help

Příspěvekod bednar » stř črc 17, 2013 3:24 pm

Nejsem kovaný arduinista ale problem bude v tom delay().
Na tuto dobu je pozastaveno provadeni programu.
Obecně: Na tyto akce je třeba si zřídit pomocnou proměnnou, která načítá ve smyčce čas běhu xxx = millis().
A až bude větší než 18000 tak něco provést a proměnnou vynulovat.
Někdo sem třeba hodí i kód na pomoc.
bednar
 
Příspěvky: 51
Registrován: čtv čer 07, 2012 1:15 pm
Reputation: 1

Re: 2xbutton-2xrelay help

Příspěvekod vikieso » stř črc 17, 2013 3:26 pm

vedel by s vas niekdo upravit ten kod ako to ma byt bo ja som s toho trosku mimo dakujem
vikieso
 
Příspěvky: 2
Registrován: stř črc 17, 2013 2:18 pm
Reputation: 0

Re: 2xbutton-2xrelay help

Příspěvekod mypower.cz » stř črc 17, 2013 4:53 pm

Vedel. Oproti zaslani prijatelne podpory na provoz zdejsiho serveru vam to napisu, otestuju a zdokumentuju klidne i pro vice tlacitek/rele, s nezavislym a libovolnym nastavenim casu, pinu pro tlacitka a pinu pro rele. Mate-li zajem, poslete soukromou zpravu.
Podpořte MyPower.CZ | 2.24kWp FVE | MyPower MicroLog2 | Podpořte MyPower.CZ v soutěži Cena Bastlířů 2018
BTC support 37uvSpUKTCmcJZD9bs8ZWhdrubxBxRZSuT | LTC support LPYitoWPn3k5PqWBWmuzbcwj344THtZ7q2
Uživatelský avatar
mypower.cz
Site Admin
 
Příspěvky: 3347
Registrován: pát bře 04, 2011 11:36 am
Reputation: 178


Zpět na Arduino

Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 1 návštěvník

cron
Reputation System ©'