Código de Pesquisa

Projeto: RJT520 Temporizador de Relé, 555, 6V a 18V, 20A

Projeto: RJT520 Temporizador de Relé, 555, 6V a 18V, 20A

Neste tutorial, construiremos um circuito de temporizador com relé usando o relé RJT520 e um CI temporizador 555 que opera em uma faixa de tensão de 6V a 18V. Este projeto é ideal para controlar dispositivos que requerem um atraso antes de ligar ou desligar, como luzes ou eletrodomésticos. O resultado será um temporizador de relé funcional que pode suportar até 20A de corrente, permitindo uma ampla gama de aplicações.

Relay Timer 555 6V to 18V 20A PCB 2

Utilizaremos o circuito integrado 555 em modo monostável para criar um temporizador de atraso. Quando acionado, o temporizador ativará o relé por uma duração especificada antes de desligá-lo. Este projeto é simples, mas eficaz, tornando-se uma ótima adição ao seu kit de eletrônica. Para uma explicação mais visual, não deixe de conferir o vídeo (no vídeo às 02:15).

Hardware Explicado

Os principais componentes deste projeto incluem o relé RJT520, o CI temporizador 555 e uma fonte de alimentação. O relé RJT520 é um relé de alta potência que pode comutar cargas de até 20A, tornando-o adequado para controlar dispositivos maiores. O CI temporizador 555 é um componente versátil que pode ser configurado em vários modos, incluindo o modo monostável, que usaremos para nosso temporizador.

Relay Timer 555 6V to 18V 20A PCB  Gerber file 6

O relé funciona usando um eletromagneto para comutar mecanicamente um conjunto de contatos. Quando a saída do temporizador 555 fica alta, ele energiza a bobina do relé, fechando os contatos e permitindo que a corrente flua para a carga conectada. Essa configuração é benéfica para aplicações que requerem operação remota ou automação.

Detalhes da Ficha Técnica

FabricanteRJT
Número da peçaRJT520
Tensão de alimentação6-18 V
Corrente de saída20 A máx
Corrente da bobina70 mA típico.
Tensão de comutação250 V CA / 30 V CC
Configuração de contatoSPDT
Temperatura de operação-40 a 85 °C
PacotePacote padrão de relé

  • Certifique-se de que o relé pode suportar a corrente de carga (20 A no máximo).
  • Use dissipadores de calor apropriados se o relé operar em altas temperaturas.
  • Verifique os níveis de tensão para evitar danificar o temporizador 555.
  • Use capacitores de desacoplamento próximos aos pinos de alimentação do temporizador 555.
  • Verifique os contatos do relé quanto ao desgaste e substitua se necessário.
  • Tenha cuidado com a EMF reversa ao ligar cargas indutivas.

Instruções de Fiação

555 Relay Timer of 20A 0-10 minutest on breadboard wiring
555 Relay Timer of 20A 0-10 minutest on breadboard wiring

Para conectar o circuito do temporizador de relé RJT520, comece conectando o CI do temporizador 555. Conecte o pino 1 (GND) do temporizador 555 ao terra da sua fonte de alimentação. Em seguida, conecte o pino 8 (VCC) ao terminal positivo da sua fonte de alimentação (6V a 18V).

Relay Timer 555 6V to 18V 20A PCB  Gerber file 8

Em seguida, conecte o pino 2 (TRIG) ao seu interruptor de disparo ou sinal de entrada. Este pino ativará o temporizador quando receber um pulso baixo. Conecte o pino 3 (OUT) do temporizador 555 a um terminal da bobina do relé e conecte o outro terminal da bobina ao terra. Não se esqueça de adicionar um diodo em paralelo à bobina do relé para proteger o circuito contra a EMF reversa.

Para a saída do relé, conecte um dos terminais comuns à carga que você deseja controlar e o outro terminal à fonte de alimentação. Certifique-se de conectar o outro terminal da carga de volta ao terra comum. Por fim, configure os componentes de temporização (resistor e capacitor) conectados aos pinos 6 e 2 para o atraso desejado.

Exemplos de Código e Passo a Passo

No código, definiremos identificadores-chave comotriggerPinpara o gatilho de entrada erelayPinpara a saída do relé. A função de configuração inicializa esses pinos, enquanto a função de loop monitora o estado do gatilho.

const int triggerPin = 2; // Input trigger pin
const int relayPin = 3;    // Relay control pin

void setup() {
  pinMode(triggerPin, INPUT);
  pinMode(relayPin, OUTPUT);
}

void loop() {
  if (digitalRead(triggerPin) == HIGH) {
    digitalWrite(relayPin, HIGH); // Activate relay
    delay(1000);                  // Keep relay on for 1 second
    digitalWrite(relayPin, LOW);  // Deactivate relay
  }
}

Este trecho inicializa os pinos e configura o relé para ativar por um segundo sempre que o pino de disparo receber um sinal ALTO. Certifique-se de ajustar o atraso para suas necessidades de temporização específicas.

void loop() {
  if (digitalRead(triggerPin) == HIGH) {
    digitalWrite(relayPin, HIGH); // Activate relay
    delay(1000);                  // Keep relay on for 1 second
    digitalWrite(relayPin, LOW);  // Deactivate relay
  }
}

Aqui, verificamos se otriggerPinestá ALTO. Se estiver, ativamos o relé e o mantemos ativado por um segundo usando odelay()função. Ajuste o atraso conforme necessário para sua aplicação.

Demonstração / O que Esperar

Após a fiação e programação bem-sucedidas, o relé deve ser ativado quando o gatilho for acionado. Você pode testar várias cargas para garantir que o relé opere corretamente dentro de suas especificações nominais. Armadilhas comuns incluem conexões de voltagem incorretas e a falha em proteger contra EMF reverso, que pode danificar o circuito.

Marcas de Tempo do Vídeo

  • 00:00- Introdução
  • 02:15- Explicação da Fiação
  • 05:30- Demonstração de Código
  • 07:45- Demonstração

Imagens

Relé Temporizador 555 6V a 18V 20A PCB 1
Relé Temporizador 555 6V a 18V 20A PCB 1
Temporizador de Relé 555 6V a 18V 20A PCB 2
Temporizador de Relé 555 6V a 18V 20A PCB 2
Relé Timer 555 6V a 18V 20A PCB 3
Relé Timer 555 6V a 18V 20A PCB 3
Relay Timer 555 6V a 18V 20A arquivo Gerber de PCB 4
Relay Timer 555 6V a 18V 20A arquivo Gerber de PCB 4
Arquivo Gerber de PCB do Timer de Relé 555 6V a 18V 20A 5
Arquivo Gerber de PCB do Timer de Relé 555 6V a 18V 20A 5
Arquivo Gerber PCB para Relé Timer 555 6V a 18V 20A 6
Arquivo Gerber PCB para Relé Timer 555 6V a 18V 20A 6
Arquivo Gerber de PCB do Timer de Relé 555 6V a 18V 20A 7
Arquivo Gerber de PCB do Timer de Relé 555 6V a 18V 20A 7
Arquivo Gerber de PCB do Timer de Relé 555 6V a 18V 20A 8
Arquivo Gerber de PCB do Timer de Relé 555 6V a 18V 20A 8
Arquivo Gerber PCB do Temporizador de Relé 555 6V a 18V 20A 9
Arquivo Gerber PCB do Temporizador de Relé 555 6V a 18V 20A 9
555 Relay Timer of 20A 0-10 minutest on breadboard wiring
555 Relay Timer of 20A 0-10 minutest on breadboard wiring
371-Arduino code for H-Bridge Project with TIP120/TIP125 Transistors
Idioma: C++
/*
This code is for:
Building an H-Bridge Motor driver using TIP120 and TIP125 on a breadboard and full PCB Design with Arduino
https://youtu.be/6ugrL5ziPn8

This code has been downloaded from Robojax.com
You can access the resources page and download the Gerber file to produce
the PCB or a fully assembled PCB from PCBX.com
Visit https://robojax.com/tutorial_view.php?id=392
to control a DC motor using TIP120 and TIP125 as an
H bridge
Written by Ahmad Shamshiri
26 Aug 2024
*/
const int PWM1= 9;//pin with ~
const int EN1= 8;

const int PWM2= 3;//pin with ~
const int EN2= 2;

const boolean CW =1;
const boolean CCW =0;

void Motor(boolean, int);//prototype
void brake();//prototype

void setup() {
  Serial.begin(9600);
  Serial.println("TIP120 H Bridge by Robojax");
  pinMode(PWM1, OUTPUT);
  pinMode(EN1, OUTPUT);

  pinMode(PWM2, OUTPUT);
  pinMode(EN2, OUTPUT);   

}

void loop() {
  Motor(CW, 50);//in CW at 50% speed
  delay(5000);

  stop();
  delay(2000);

  Motor(CCW, 80);//in CCW at 80% speed
  delay(5000);

  brake();
  delay(2000);

  for (int i=0; i<=100; i++)
  {
   Motor(CCW, i);
   delay(25);
  }
    delay(5000);

  brake();
  delay(2000);
}

/*
stop()
stops the output
*/
void stop()
{
    Serial.println ("=== Stop"); 
  digitalWrite(PWM1, LOW);
  digitalWrite(EN1, LOW);
  digitalWrite(PWM2, LOW);
  digitalWrite(EN2, LOW);  
}

/*
brake()
*/
void brake()
{
    Serial.println ("=== Brake"); 
  digitalWrite(PWM1, HIGH);
  digitalWrite(EN1, LOW);
  digitalWrite(PWM2, HIGH);
  digitalWrite(EN2, LOW);   
}

void Motor(boolean direction, int speed=0)
{
  int speedPWM = map(speed, 0, 100, 0, 255);
  Serial.print("Speed: "); Serial.print (speedPWM);
  Serial.print ("(");Serial.print (speed);Serial.print ("%)");


  if(direction){
    Serial.print(" dir: ");Serial.println ("CW");   
      analogWrite(PWM1, speedPWM);
    digitalWrite(EN1, HIGH);
    digitalWrite(PWM2, LOW);
    digitalWrite(EN2, LOW); 
  }else{
    Serial.print(" dir: ");Serial.println ("CCW");  
    digitalWrite(PWM1, LOW);
    digitalWrite(EN1, LOW);    
      analogWrite(PWM2, speedPWM);
    digitalWrite(EN2, HIGH); 
  }
 
}

Arquivos📁

Outros Ficheiros