ajuda em um trabalho com arduino e sensores

Início Fóruns Arduino ajuda em um trabalho com arduino e sensores

  • Este tópico está vazio.
A visualizar 1 artigo (de um total de 1)
  • Autor
    Artigos
  • #16231 Responder
    karllos
    Convidado

    fiz essa programação para um trabalho onde inicialmente ele ira soltar dois bipes, logo após mostrara alguns dados que ao serem exibidos soltaram 1 bipe, então ao apertar o botão de ligar ele iniciara uma leitura da temperatura e exibira no display essa temperatura será mostrada e atualizara em tempo real, caso seja maior que 80 ele desligara já os motores representados por dois LEDs verdes faram uma partida direta e um tempo de pois uma partida estrela triangulo. Mais infelizmente ele só faz uma leitura e quando aperto para ligar a leitura some do display

    #include <LiquidCrystal.h>

    int RS = 7;
    int E = 8;
    int D4 = 9;
    int D5 = 10;
    int D6 = 11;
    int D7 = 12;

    int b0 = A4; // Botão Desliga
    int b1 = A2; // Botão Liga
    int brt = A3; // Relê Térmico
    int k1 = 6; // LED verde esquerda representando K1
    int k2 = 5; // LED verde meio representando K2
    int k3 = 4; // LED verde direita representando K3
    int q4 = 3; // LED amarelo para indicar falha
    int q5 = 2; // LED vermelho
    int buzzerPin = 13; // Pino para o buzzer
    int buzzerFrequency = 1000; // Frequência do som (ajuste conforme necessário)

    bool mensagensIniciaisExibidas = false;
    bool brton = false;
    bool ligar = false;
    bool bon = false;
    bool turn = true;
    long timer = 0;

    int LM35MT = A0; // Sensor de temperatura do Motor
    int LM35MC = A1; // Sensor de temperatura do Mancal
    int tempMT = 0; // Variável para armazenar a temperatura do Motor
    int tempMC = 0; // Variável para armazenar a temperatura do Mancal

    int interlockPin = A5; // Pino para a entrada de Interlock
    bool interlockAtivo = false; // Estado do Interlock (inicialmente desativado)

    unsigned long tempoEstrela = 0; // Tempo para acionar o contator K2 (em milissegundos)
    bool estrelaAtivada = false; // Estado da partida Estrela (inicialmente desativada)

    LiquidCrystal lcd(RS, E, D4, D5, D6, D7);

    void setup() {
    pinMode(b0, INPUT);
    pinMode(b1, INPUT);
    pinMode(brt, INPUT);
    pinMode(k1, OUTPUT);
    pinMode(k2, OUTPUT);
    pinMode(k3, OUTPUT);
    pinMode(q4, OUTPUT);
    pinMode(q5, OUTPUT);
    pinMode(LM35MT, INPUT);
    pinMode(LM35MC, INPUT);
    pinMode(buzzerPin, OUTPUT);
    noTone(buzzerPin);
    pinMode(LM35MT, INPUT);
    pinMode(LM35MC, INPUT);

    tone(buzzerPin, buzzerFrequency);
    delay(200);
    noTone(buzzerPin);
    delay(200);
    tone(buzzerPin, buzzerFrequency);
    delay(200);
    noTone(buzzerPin);
    delay(200);

    Serial.begin(9600);

    mensagensIniciaisExibidas = true;

    lcd.begin(16, 2);
    lcd.clear();
    lcd.setCursor(0, 0);
    lcd.print(“Universidade: UNIUBE”);
    lcd.setCursor(0, 1);
    lcd.print(“Aluno: Cleiton Resende”);
    delay(3000);
    lcd.clear();
    lcd.setCursor(0, 0);
    lcd.print(“Disciplina: Eletronica”);
    lcd.setCursor(0, 1);
    lcd.print(“RA: RA1079648”);
    delay(3000);

    tone(buzzerPin, buzzerFrequency);
    delay(200);
    noTone(buzzerPin);
    }

    void loop() {
    bon = digitalRead(b1); // Verifica o botão “ligar” no loop
    if (bon == true) {
    ligar = true;
    Serial.println(“motor ligado”);
    }

    if (ligar == true) {
    lcd.clear();
    digitalWrite(q5, HIGH);
    digitalWrite(k3, HIGH);
    Serial.println(“k3 on”);
    delay(1000);

    digitalWrite(k1, HIGH);
    Serial.println(“k1 on”);
    delay(3000);

    digitalWrite(k3, LOW);
    Serial.println(“k3 off”);
    delay(1000);

    digitalWrite(k2, HIGH);
    Serial.println(“k2 on”);
    delay(10000);

    digitalWrite(k2, LOW);
    digitalWrite(k1, LOW);
    digitalWrite(q5, LOW);
    Serial.println(“parada programada”);
    delay(10000);
    }

    }

    void desligar() {
    digitalWrite(k1, LOW);
    digitalWrite(k2, LOW);
    digitalWrite(k3, LOW);
    digitalWrite(q4, LOW);
    digitalWrite(q5, LOW);
    ligar = false;
    Serial.println(“motor parando”);
    }

    void reletermico() {
    desligar();
    digitalWrite(q5, HIGH);
    Serial.println(“rele termico acionado”);
    }

A visualizar 1 artigo (de um total de 1)
Resposta a: ajuda em um trabalho com arduino e sensores
A sua informação





<a href="" title="" rel="" target=""> <blockquote cite=""> <code> <pre class=""> <em> <strong> <del datetime="" cite=""> <ins datetime="" cite=""> <ul> <ol start=""> <li> <img src="" border="" alt="" height="" width="">