Jump to content
  • ×   Pasted as rich text.   Paste as plain text instead

      Only 75 emoji are allowed.

    ×   Your link has been automatically embedded.   Display as a link instead

    ×   Your previous content has been restored.   Clear editor

    ×   You cannot paste images directly. Upload or insert images from URL.

  • Similar Content

    • By Leidsman217
      Ola a todos, tenho uma duvida quanto a programação de Arduíno. Gostaria de saber se o seguinte código foi escrito de forma correta  ? Agradeço desde já a atenção de todos !
       
         
    • By JPMOFARDINI
      Boa noite,
       
      Fiz um código no Arduíno está funcionando tudo normalmente só gostaria de saber como eu faço um comando para desligar e um para ligar todos os reles
       
      #include <IRremote.h>
      const int RECV_PIN = 2; // INCUI O PINO QUE SERÁ USADO NO LED RECEPTOR
      IRrecv irrecv(RECV_PIN);
      decode_results results;
      const int RelayIn1Pin = 3; // INCUI O PINO QUE SERÁ USADO NO RELÉ IN1
      const int RelayIn2Pin = 4; // INCUI O PINO QUE SERÁ USADO NO RELÉ IN2
      const int RelayIn3Pin = 5; // INCUI O PINO QUE SERÁ USADO NO RELÉ IN3
      const int RelayIn4Pin = 6; // INCUI O PINO QUE SERÁ USADO NO RELÉ IN4
      const int RelayIn5Pin = 7; // INCUI O PINO QUE SERÁ USADO NO RELÉ IN5
      const int RelayIn6Pin = 8; // INCUI O PINO QUE SERÁ USADO NO RELÉ IN6
      const int RelayIn7Pin = 9; // INCUI O PINO QUE SERÁ USADO NO RELÉ IN7
      const int RelayIn8Pin = 10; // INCUI O PINO QUE SERÁ USADO NO RELÉ IN8
      int statusRelayIn1Pin = 0;
      int statusRelayIn2Pin = 0;
      int statusRelayIn3Pin = 0;
      int statusRelayIn4Pin = 0;
      int statusRelayIn5Pin = 0;
      int statusRelayIn6Pin = 0;
      int statusRelayIn7Pin = 0;
      int statusRelayIn8Pin = 0;
      void setup() {
        irrecv.enableIRIn();
        irrecv.blink13(true);
        pinMode(RelayIn1Pin, OUTPUT); //DEFINE O PINO COMO SAÍDA
        pinMode(RelayIn1Pin, INPUT_PULLUP); //DEFINE O PINO COMO ENTRADA / "_PULLUP" É PARA ATIVAR O RESISTOR INTERNO
        //DO ARDUINO PARA GARANTIR QUE NÃO EXISTA FLUTUAÇÃO ENTRE 0 (LOW) E 1 (HIGH)
        pinMode(RelayIn1Pin, HIGH); //MÓDULO RELÉ INICIA DESLIGADO
        pinMode(RelayIn2Pin, OUTPUT);
        pinMode(RelayIn2Pin, INPUT_PULLUP);
        pinMode(RelayIn2Pin, HIGH);
        pinMode(RelayIn3Pin, OUTPUT);
        pinMode(RelayIn3Pin, INPUT_PULLUP);
        pinMode(RelayIn3Pin, HIGH);
        pinMode(RelayIn4Pin, OUTPUT);
        pinMode(RelayIn4Pin, INPUT_PULLUP);
        pinMode(RelayIn4Pin, HIGH);
        pinMode(RelayIn5Pin, OUTPUT);
        pinMode(RelayIn5Pin, INPUT_PULLUP);
        pinMode(RelayIn5Pin, HIGH);
        pinMode(RelayIn6Pin, OUTPUT);
        pinMode(RelayIn6Pin, INPUT_PULLUP);
        pinMode(RelayIn6Pin, HIGH);
        pinMode(RelayIn7Pin, OUTPUT);
        pinMode(RelayIn7Pin, INPUT_PULLUP);
        pinMode(RelayIn7Pin, HIGH);
        pinMode(RelayIn8Pin, OUTPUT);
        pinMode(RelayIn8Pin, INPUT_PULLUP);
        pinMode(RelayIn8Pin, HIGH);
      }
      void loop() {
        if (irrecv.decode(&results)) {
          switch (results.value) {
            case 0x807F728D: //Keypad button "1"
              if ((digitalRead(RelayIn1Pin) == HIGH) && (statusRelayIn1Pin == 0)) { //SE A LEITURA DO PINO FOR IGUAL A LOW E
                //VARIÁVEL statusLamp FOR IGUAL A 0, FAZ
                digitalWrite(RelayIn1Pin, LOW); //LIGA O MÓDULO RELÉ (LÂMPADA ACENDE)
                statusRelayIn1Pin = 1; //VARIÁVEL RECEBE O VALOR 1
                delay(200); //INTERVALO DE 200 MILISSEGUNDOS
              } else { //SENÃO, FAZ
                if ((digitalRead(RelayIn1Pin) == LOW) && (statusRelayIn1Pin == 1)) { //SE A LEITURA DO PINO FOR IGUAL A LOW E
                  //VARIÁVEL statusLamp FOR IGUAL A 1, FAZ
                  digitalWrite(RelayIn1Pin, HIGH); //DESLIGA O MÓDULO RELÉ (LÂMPADA APAGA)
                  statusRelayIn1Pin = 0; //VARIÁVEL RECEBE O VALOR 0
                  delay(200); //INTERVALO DE 200 MILISSEGUNDOS
                }
              }
          }
           switch (results.value) {
            case 0x807FB04F: //Keypad button "2"
              if ((digitalRead(RelayIn2Pin) == HIGH) && (statusRelayIn2Pin == 0)) { //SE A LEITURA DO PINO FOR IGUAL A LOW E
                //VARIÁVEL statusLamp FOR IGUAL A 0, FAZ
                digitalWrite(RelayIn2Pin, LOW); //LIGA O MÓDULO RELÉ (LÂMPADA ACENDE)
                statusRelayIn2Pin = 1; //VARIÁVEL RECEBE O VALOR 1
                delay(200); //INTERVALO DE 200 MILISSEGUNDOS
              } else { //SENÃO, FAZ
                if ((digitalRead(RelayIn2Pin) == LOW) && (statusRelayIn2Pin == 1)) { //SE A LEITURA DO PINO FOR IGUAL A LOW E
                  //VARIÁVEL statusLamp FOR IGUAL A 1, FAZ
                  digitalWrite(RelayIn2Pin, HIGH); //DESLIGA O MÓDULO RELÉ (LÂMPADA APAGA)
                  statusRelayIn2Pin = 0; //VARIÁVEL RECEBE O VALOR 0
                  delay(200); //INTERVALO DE 200 MILISSEGUNDOS
                }
              }
          }
           switch (results.value) {
            case 0x807F30CF: //Keypad button "3"
              if ((digitalRead(RelayIn3Pin) == HIGH) && (statusRelayIn3Pin == 0)) { //SE A LEITURA DO PINO FOR IGUAL A LOW E
                //VARIÁVEL statusLamp FOR IGUAL A 0, FAZ
                digitalWrite(RelayIn3Pin, LOW); //LIGA O MÓDULO RELÉ (LÂMPADA ACENDE)
                statusRelayIn3Pin = 1; //VARIÁVEL RECEBE O VALOR 1
                delay(200); //INTERVALO DE 200 MILISSEGUNDOS
              } else { //SENÃO, FAZ
                if ((digitalRead(RelayIn3Pin) == LOW) && (statusRelayIn3Pin == 1)) { //SE A LEITURA DO PINO FOR IGUAL A LOW E
                  //VARIÁVEL statusLamp FOR IGUAL A 1, FAZ
                  digitalWrite(RelayIn3Pin, HIGH); //DESLIGA O MÓDULO RELÉ (LÂMPADA APAGA)
                  statusRelayIn3Pin = 0; //VARIÁVEL RECEBE O VALOR 0
                  delay(200); //INTERVALO DE 200 MILISSEGUNDOS
                }
              }
          }
           switch (results.value) {
            case 0x807F52AD: //Keypad button "4"
              if ((digitalRead(RelayIn4Pin) == HIGH) && (statusRelayIn4Pin == 0)) { //SE A LEITURA DO PINO FOR IGUAL A LOW E
                //VARIÁVEL statusLamp FOR IGUAL A 0, FAZ
                digitalWrite(RelayIn4Pin, LOW); //LIGA O MÓDULO RELÉ (LÂMPADA ACENDE)
                statusRelayIn4Pin = 1; //VARIÁVEL RECEBE O VALOR 1
                delay(200); //INTERVALO DE 200 MILISSEGUNDOS
              } else { //SENÃO, FAZ
                if ((digitalRead(RelayIn4Pin) == LOW) && (statusRelayIn4Pin == 1)) { //SE A LEITURA DO PINO FOR IGUAL A LOW E
                  //VARIÁVEL statusLamp FOR IGUAL A 1, FAZ
                  digitalWrite(RelayIn4Pin, HIGH); //DESLIGA O MÓDULO RELÉ (LÂMPADA APAGA)
                  statusRelayIn4Pin = 0; //VARIÁVEL RECEBE O VALOR 0
                  delay(200); //INTERVALO DE 200 MILISSEGUNDOS
                }
              }
          }
           switch (results.value) {
            case 0x807F906F: //Keypad button "5"
              if ((digitalRead(RelayIn5Pin) == HIGH) && (statusRelayIn5Pin == 0)) { //SE A LEITURA DO PINO FOR IGUAL A LOW E
                //VARIÁVEL statusLamp FOR IGUAL A 0, FAZ
                digitalWrite(RelayIn5Pin, LOW); //LIGA O MÓDULO RELÉ (LÂMPADA ACENDE)
                statusRelayIn5Pin = 1; //VARIÁVEL RECEBE O VALOR 1
                delay(200); //INTERVALO DE 200 MILISSEGUNDOS
              } else { //SENÃO, FAZ
                if ((digitalRead(RelayIn5Pin) == LOW) && (statusRelayIn5Pin == 1)) { //SE A LEITURA DO PINO FOR IGUAL A LOW E
                  //VARIÁVEL statusLamp FOR IGUAL A 1, FAZ
                  digitalWrite(RelayIn5Pin, HIGH); //DESLIGA O MÓDULO RELÉ (LÂMPADA APAGA)
                  statusRelayIn5Pin = 0; //VARIÁVEL RECEBE O VALOR 0
                  delay(200); //INTERVALO DE 200 MILISSEGUNDOS
                }
              }
          }
           switch (results.value) {
            case 0x807F10EF: //Keypad button "6"
              if ((digitalRead(RelayIn6Pin) == HIGH) && (statusRelayIn6Pin == 0)) { //SE A LEITURA DO PINO FOR IGUAL A LOW E
                //VARIÁVEL statusLamp FOR IGUAL A 0, FAZ
                digitalWrite(RelayIn6Pin, LOW); //LIGA O MÓDULO RELÉ (LÂMPADA ACENDE)
                statusRelayIn6Pin = 1; //VARIÁVEL RECEBE O VALOR 1
                delay(200); //INTERVALO DE 200 MILISSEGUNDOS
              } else { //SENÃO, FAZ
                if ((digitalRead(RelayIn6Pin) == LOW) && (statusRelayIn6Pin == 1)) { //SE A LEITURA DO PINO FOR IGUAL A LOW E
                  //VARIÁVEL statusLamp FOR IGUAL A 1, FAZ
                  digitalWrite(RelayIn6Pin, HIGH); //DESLIGA O MÓDULO RELÉ (LÂMPADA APAGA)
                  statusRelayIn6Pin = 0; //VARIÁVEL RECEBE O VALOR 0
                  delay(200); //INTERVALO DE 200 MILISSEGUNDOS
                }
              }
          }
           switch (results.value) {
            case 0x807F629D: //Keypad button "7"
              if ((digitalRead(RelayIn7Pin) == HIGH) && (statusRelayIn7Pin == 0)) { //SE A LEITURA DO PINO FOR IGUAL A LOW E
                //VARIÁVEL statusLamp FOR IGUAL A 0, FAZ
                digitalWrite(RelayIn7Pin, LOW); //LIGA O MÓDULO RELÉ (LÂMPADA ACENDE)
                statusRelayIn7Pin = 1; //VARIÁVEL RECEBE O VALOR 1
                delay(200); //INTERVALO DE 200 MILISSEGUNDOS
              } else { //SENÃO, FAZ
                if ((digitalRead(RelayIn7Pin) == LOW) && (statusRelayIn7Pin == 1)) { //SE A LEITURA DO PINO FOR IGUAL A LOW E
                  //VARIÁVEL statusLamp FOR IGUAL A 1, FAZ
                  digitalWrite(RelayIn7Pin, HIGH); //DESLIGA O MÓDULO RELÉ (LÂMPADA APAGA)
                  statusRelayIn7Pin = 0; //VARIÁVEL RECEBE O VALOR 0
                  delay(200); //INTERVALO DE 200 MILISSEGUNDOS
                }
              }
          }
           switch (results.value) {
            case 0x807FA05F: //Keypad button "8"
              if ((digitalRead(RelayIn8Pin) == HIGH) && (statusRelayIn8Pin == 0)) { //SE A LEITURA DO PINO FOR IGUAL A LOW E
                //VARIÁVEL statusLamp FOR IGUAL A 0, FAZ
                digitalWrite(RelayIn8Pin, LOW); //LIGA O MÓDULO RELÉ (LÂMPADA ACENDE)
                statusRelayIn8Pin = 1; //VARIÁVEL RECEBE O VALOR 1
                delay(200); //INTERVALO DE 200 MILISSEGUNDOS
              } else { //SENÃO, FAZ
                if ((digitalRead(RelayIn8Pin) == LOW) && (statusRelayIn8Pin == 1)) { //SE A LEITURA DO PINO FOR IGUAL A LOW E
                  //VARIÁVEL statusLamp FOR IGUAL A 1, FAZ
                  digitalWrite(RelayIn8Pin, HIGH); //DESLIGA O MÓDULO RELÉ (LÂMPADA APAGA)
                  statusRelayIn8Pin = 0; //VARIÁVEL RECEBE O VALOR 0
                  delay(200); //INTERVALO DE 200 MILISSEGUNDOS
                }
              }
          }
          
          irrecv.resume();
        }
      }
       
       
       
      Se alguém puder me ajudar agradeço desde já!
    • By arduinoeletro
      Pessoal, boa tarde. 
       
      Sou iniciante em projetos de Arduino e comprei um kit para iniciantes Kit de Arduino para iniciantes ( coloquei o link aqui para vocês me ajudarem), mas não achei tão fácil quanto havia lido anteriormente. Vocês tem alguma dica para um iniciante bem iniciante mesmo?
       
      Me interesso bastante pela área de robótica e inovação, mas ainda não estou nem engatinhando no Arduino. 
       
       
    • By Numca
      int inputs[6] = {48,49,50,51,52,53};
      int outputs[12] = {0,1,2,3,4,5,6,7,8,9,10,11};
      int x;
       
      void setup() {
      for (x = 0; x <= 5; x = x + 1); {
        pinMode(inputs[x], INPUT_PULLUP);
      }
      for (x = 0; x <= 11; x = x + 1); {
        pinMode(outputs[x], OUTPUT);
      }
      }
       
      O trecho de programação acima era suposto que definisse as portas do primeiro array como entradas, e a do segundo array, como saída. Porém além de não acontecer, portas erradas são selecionadas. Gostaria de saber onde eu errei, grato desde já.
    • By Nico Las
      eu fiz o seguinte código, ele funciona com os botões mas o sensor não. O projeto é o seguinte, aperta o botão1 e liga o motor, para fazer a volta dele pode ser, ou pelo sensor ou pelo botão2
        #include <Stepper.h>   int bot1 = 3; int bot2 = 4; int PinSensor = 0; int chuva; //sensor Stepper myStepper(2048, 8,10,9,11);      void setup() {        pinMode (bot1, INPUT);   pinMode (bot2, INPUT);   myStepper.setSpeed(10);    }          void loop() {   chuva = analogRead(PinSensor);    if (digitalRead(bot1) == HIGH && digitalRead(bot2) == LOW){   myStepper.step(-2048);     if(chuva<500){  //valor testado       myStepper.step(2048);     } } if (digitalRead(bot1) == LOW && digitalRead(bot2) == HIGH){  myStepper.step(2048);  }     }  
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.