CENTRAL DE ATENDIMENTO
De segunda à sexta das 9:00 às 18:30
(11) 3522-7626 / vendas@robocore.net
Retornar
ao topo

Classifique este tópicoPéssimoRuimMedianoBomÓtimo
Autor
Mensagem
3
mtuzzin

Level 0
105403 xp

Registrado em:
29/08/2018





Mensagens:
2
3
mtuzzin

Responder com citações
Mensagem Qui Set 19, 2019 9:33 pm
Erro Básico Código com Display
Boa tarde galera!

Preciso de uma pequena ajudinha com um programa bem simples que fiz. Porém é quase uma emergência.

Elaborei um descritivo do que tem que acontecer, e tbm um descritivo do que está tendo problemas, e logo abaixo estou postando o código para que possam ver meu erro.

O funcionamento é o seguinte:

*Elevador começa parado no chão.

Pino 8 – HIGH – Aciona Relé 01, por 12 segundos (Tempo que o elevador demora para subir)

*Elevador chegou em cima.

Pino 9 – HIGH – Desliga os relés por 2 segundos (Para não dar problema de acionar os dois relés juntos).

Pino 10 – HIGH – Aciona relé 02, por 7 segundos (Tempo que o elevador demora para descer)

*Elevador chegou no chão.

Pino 9 – HIGH – Desliga os relés por 2 segundos

---- TOTAL 1 CICLO-------

Pino 9 – HIGH – Desliga os relés por 4 minutos

Após os 4 minutos recomeça tudo novamente, isso por 5000 vezes.

*** Problemas que estão acontecendo:

- Na troca de ciclo, entre subida e descida, um relé, fica levemente acionado, ainda passando corrente.

- Cada troca de ciclo, o display apaga todos os dados, e reinicia novamente, porém com incremento de número de ciclos.

O que está sendo utilizado:

- 01 módulo de relé 24 v – Controlado por 5vc (específico para arduíno) ( Alimentação VC e GND é por fonte externa)

- 01 diplay LCD 16 x 2 – Alimentação de GND e VC pelo arduíno

- 01 arduíno UNO

-----------------------CÓDIGO-------------------------

//Programa: ENSAIO DINAMICO ELAVADOR
//Autor: MATHEUS TUZZIN

//Carrega a biblioteca LiquidCrystal
#include <LiquidCrystal.h>

//Define os pinos que serão utilizados para ligação ao display
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

int SOBE;
int DESCE;
int Intervalo;
int i=0;


byte fase;

void setup()
{
lcd.begin(16, 2); //Define o número de colunas e linhas do LCD
lcd.clear(); // Limpa a tela do LCD

pinMode(8, OUTPUT);
pinMode(10, OUTPUT);
pinMode(9, OUTPUT);

}

void loop()
{
SOBE= 12000;
DESCE= 7000;
Intervalo= 3000;
DESLSAIDA= 1000;

{
if(fase == 1) {
fase = 0;
}
else if(fase == 0) {
fase = 1;
}
}

if (fase == 1)
{
for (i=0; i<5000;i++)
{
digitalWrite(8,HIGH);//SOBE
digitalWrite(9,LOW);//INTERVALO
digitalWrite(10,LOW);//DESCE
delay(SOBE);

digitalWrite(8,LOW);
digitalWrite(9,HIGH);
digitalWrite(10,LOW);
delay(Intervalo);

digitalWrite(8,LOW);
digitalWrite(9,LOW);
digitalWrite(10,HIGH);
delay(DESCE);

digitalWrite(8,LOW);
digitalWrite(9,HIGH);
digitalWrite(10,LOW);
delay(Intervalo);

digitalWrite(8,LOW);
digitalWrite(9,LOW);
digitalWrite(10,LOW);
delay(240);


//Posiciona o cursor na coluna 0, linha 0;
lcd.setCursor(0, 0);
//Envia o texto entre aspas para o LCD
lcd.print("ENSAIO DINAMICO");
delay(5);
lcd.setCursor(0, 1);
//Envia o texto entre aspas para o LCD
lcd.print("N. CICLOS:");
delay(5);
lcd.setCursor (11,1);
lcd.print (i);
delay(5);

}

}
else if(fase == 0){
digitalWrite(10,HIGH);
digitalWrite(8,HIGH);
digitalWrite(9,HIGH);
delay(10000);
}
}
Mostrar mensagens desde a última:




Ir para:  
Todos os horários são GMT - 3 HorasVocê não tem permissão para escrever novas mensagens
v não tem permissão para responder às mensagens
Você não tem permissão para editar suas mensagens
Você não tem permissão para deletar suas mensagens
Você não tem permissão para classificar tópicos
Você não tem permissão para classificar mensagens
Você não tem permissão para votar em enquetes
Anexar downloads : Proibido
Fazer Download de Arquivos: Proibido
Powered by phpBB © 2001 phpBB Group