検索コード

プロジェクト:RJT520 リレータイマー、555、6Vから18V、20A

プロジェクト:RJT520 リレータイマー、555、6Vから18V、20A

このチュートリアルでは、RJT520リレーと6Vから18Vの電圧範囲で動作する555タイマーICを使用してリレータイマー回路を構築します。このプロジェクトは、ライトや家電など、オンまたはオフになる前に遅延が必要なデバイスを制御するのに最適です。結果として、最大20Aの電流を処理できる機能的なリレータイマーが得られ、幅広い用途に対応できます。

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

555タイマーICを単安定モードで利用して、遅延タイマーを作成します。トリガーされると、タイマーは指定された期間リレーを作動させ、その後オフにします。このプロジェクトはシンプルでありながら効果的で、あなたの電子機器ツールキットに素晴らしい追加となります。より視覚的な説明については、ビデオ(ビデオの02:15)をチェックしてください。

ハードウェアの解説

このプロジェクトの主なコンポーネントには、RJT520リレー、555タイマーIC、および電源が含まれます。RJT520リレーは、最大20Aの負荷を切り替えることができる高出力リレーであり、大型デバイスの制御に適しています。555タイマーICは、モノスタブルモードを含むさまざまなモードに設定できる多用途のコンポーネントであり、私たちのタイマーに使用します。

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

リレーは、電磁石を使用して接点のセットを機械的に切り替えることで動作します。555タイマーの出力が高くなると、リレーコイルに電流が流れ、接点が閉じて接続された負荷に電流が流れるようになります。この設定は、リモート操作や自動化を必要とするアプリケーションにとって有益です。

データシートの詳細

製造業者RJT
部品番号RJT520
供給電圧6-18 V
出力電流20 A 最大
コイル電流70 mA 標準。
切替電圧250 V AC / 30 V DC
接触設定SPDT
動作温度-40から85 °C
パッケージ標準リレーパッケージ

  • リレーが負荷電流(最大20 A)に対応できることを確認してください。
  • リレーが高温で動作する場合は、適切なヒートシンクを使用してください。
  • 555タイマーが損傷しないように電圧レベルを確認してください。
  • 555タイマーパワーピンの近くにデカップリングコンデンサを使用してください。
  • リレー接点の摩耗を確認し、必要に応じて交換してください。
  • 誘導負荷を切り替える際は、逆起電力に注意してください。

配線指示

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

RJT520リレータイマー回路を配線するには、まず555タイマーICを接続します。555タイマーのピン1(GND)を電源のグラウンドに接続します。次に、ピン8(VCC)を電源の正端子(6Vから18V)に接続します。

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

次に、ピン2(TRIG)をトリガースイッチまたは入力信号に接続します。このピンは、低パルスを受信するとタイマーを起動します。555タイマーのピン3(OUT)をリレーコイルの一端に接続し、コイルのもう一端をグラウンドに接続します。回路を逆起電力から保護するために、リレーコイルにダイオードを追加するのを忘れないでください。

リレー出力の場合、共通端子の1つを制御したい負荷に接続し、もう1つの端子を電源に接続します。負荷のもう1つの端子を共通接地に戻すことを確認してください。最後に、希望する遅延のために、ピン6と2に接続されたタイミングコンポーネント(抵抗器とコンデンサー)を設定します。

コード例とウォークスルー

コード内で、次のような重要な識別子を定義します。triggerPin入力トリガーとrelayPinリレー出力のために。セットアップ関数はこれらのピンを初期化し、ループ関数はトリガー状態を監視します。

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
  }
}

この抜粋はピンを初期化し、トリガーピンがHIGH信号を受信するたびにリレーを1秒間アクティブにするように設定します。特定のタイミング要件に合わせて遅延を調整してください。

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

ここでは、私たちが確認します。triggerPin高いです。もしそうであれば、リレーをオンにし、1秒間それをアクティブに保ちます。delay()機能。アプリケーションに応じて遅延を調整してください。

デモンストレーション / 期待すること

配線とプログラミングが成功した場合、トリガーが作動するとリレーが作動するはずです。リレーが定格仕様内で正しく動作することを確認するために、さまざまな負荷をテストできます。一般的な落とし穴には、誤った電圧接続やバックEMFからの保護を怠ることが含まれ、これが回路を損傷する可能性があります。

ビデオのタイムスタンプ

  • 00:00- はじめに
  • 02:15- 配線の説明
  • 05:30- コードウォークスルー
  • 07:45- デモンストレーション

画像

リレーツイマー 555 6Vから18V 20A PCB 1
リレーツイマー 555 6Vから18V 20A PCB 1
リレーミニタイマー 555 6Vから18V 20A PCB 2
リレーミニタイマー 555 6Vから18V 20A PCB 2
リレーマイタイマー 555 6Vから18V 20A PCB 3
リレーマイタイマー 555 6Vから18V 20A PCB 3
リレーテイマー555 6Vから18V 20A PCBガーバーファイル 4
リレーテイマー555 6Vから18V 20A PCBガーバーファイル 4
リレータイマー 555 6V〜18V 20A PCB ガーバーファイル 5
リレータイマー 555 6V〜18V 20A PCB ガーバーファイル 5
リレーレ timer 555 6Vから18V 20A PCBガーバーファイル 6
リレーレ timer 555 6Vから18V 20A PCBガーバーファイル 6
リレーチマー555 6Vから18V 20A PCBガーバーファイル7
リレーチマー555 6Vから18V 20A PCBガーバーファイル7
リレーティマー555 6Vから18V 20A PCBガーバーファイル8
リレーティマー555 6Vから18V 20A PCBガーバーファイル8
リレータイマー555 6Vから18V 20A PCBガーバーファイル 9
リレータイマー555 6Vから18V 20A PCBガーバーファイル 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
言語: 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); 
  }
 
}

ファイル📁

その他のファイル