Proje: RJT520 Röle Zamanlayıcı, 555, 6V'dan 18V'a, 20A
Bu eğitimde, 6V ile 18V arasında çalışan RJT520 rölesi ve 555 zamanlayıcı entegresi kullanarak bir röle zamanlayıcı devresi inşa edeceğiz. Bu proje, açılmadan veya kapanmadan önce bir gecikme gerektiren cihazları kontrol etmek için idealdir, örneğin ışıklar veya aletler. Sonuç, 20A'a kadar akım taşıyabilen işlevsel bir röle zamanlayıcı olacaktır ve geniş bir uygulama yelpazesi sunacaktır.

555 zamanlayıcı entegresini monostable modda kullanarak bir gecikme zamanlayıcısı oluşturacağız. Tetiklendiğinde, zamanlayıcı belirli bir süre boyunca röleyi aktive edecek ve ardından kapatacaktır. Bu proje basit ama etkili, bu da onu elektronik aletler setinize harika bir ek yapar. Daha görsel bir açıklama için videoyu kontrol etmeyi unutmayın (videoda 02:15).
Donanım Açıklandı
Bu projenin ana bileşenleri RJT520 röle, 555 zamanlayıcı entegresi ve bir güç kaynağıdır. RJT520 röle, 20A'ya kadar yükleri anahtarlayabilen yüksek güçlü bir röledir, bu da onu daha büyük cihazları kontrol etmek için uygun hale getirir. 555 zamanlayıcı entegresi, monostabil mod dahil olmak üzere çeşitli modlarda yapılandırılabilen çok yönlü bir bileşendir, bu modu zamanlayıcımız için kullanacağız.

Röle, bir elektromıknatıs kullanarak bir dizi kontağı mekanik olarak değiştirmek suretiyle çalışır. 555 zamanlayıcı çıkışı yüksek olduğunda, röle bobinini enerjilendirir, kontakları kapatır ve bağlı yük üzerinden akımın akmasına izin verir. Bu düzenek, uzaktan çalışma veya otomasyon gerektiren uygulamalar için faydalıdır.
Veri Sayfası Detayları
| Üretici | RJT |
|---|---|
| Parça numarası | RJT520 |
| Besleme voltajı | 6-18 V |
| Çıkış akımı | 20 A max |
| Bobin akımı | 70 mA tip. |
| Anahtarlama voltajı | 250 V AC / 30 V DC |
| İletişim yapılandırması | SPDT |
| Çalışma sıcaklığı | -40 ile 85 °C |
| Paket | Standart röle paketi |
- Rölenin yük akımını (maksimum 20 A) kaldırabileceğinden emin olun.
- Röle yüksek sıcaklıklarda çalışıyorsa uygun ısı dağıtımı kullanın.
- 555 zamanlayıcının zarar görmesini önlemek için voltaj seviyelerini kontrol edin.
- 555 zamanlayıcı güç pinlerine yakın yerleştirilen ayrıştırma kapasitörlerini kullanın.
- Röle kontaklarını aşınma açısından kontrol edin ve gerekirse değiştirin.
- Indüktif yükleri açarken geri EMF'ye dikkat edin.
Bağlantı Talimatları

RJT520 röle zamanlayıcı devresini bağlamak için, 555 zamanlayıcı entegresini bağlayarak başlayın. 555 zamanlayıcının 1 numaralı pinini (GND) güç kaynağınızın toprak hattına bağlayın. Ardından, 8 numaralı pini (VCC) güç kaynağınızın pozitif terminaline (6V ile 18V) bağlayın.

Sonra, pin 2'yi (TRIG) tetik anahtarınıza veya giriş sinyalinize bağlayın. Bu pin, düşük bir darbe aldığında zamanlayıcıyı aktive edecektir. 555 zamanlayıcısının pin 3'ünü (OUT) röle bobininin bir terminaline bağlayın ve bobinin diğer terminalini toprağa bağlayın. Devreyi geri EMF'den korumak için röle bobini üzerine bir diyot eklemeyi unutmayın.
Röle çıkışı için, ortak terminallerden birini kontrol etmek istediğiniz yüke, diğerini ise güç kaynağına bağlayın. Yükün diğer terminalini ortak toprağa geri bağladığınızdan emin olun. Son olarak, istediğiniz gecikme için pin 6 ve 2'ye bağlı zamanlama bileşenlerini (rezistör ve kapasitör) yapılandırın.
Kod Örnekleri ve Geçiş Rehberi
Kodda, anahtar tanımlayıcılar olarak şunları tanımlayacağız:triggerPingiriş tetikleyicisi için verelayPinrelay çıkışı için. Kurulum fonksiyonu bu pinleri başlatırken, döngü fonksiyonu tetikleme durumunu izler.
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
}
}
Bu alıntı, pinleri başlatır ve tetikleme pini YÜKSEK sinyal aldığında röleyi bir saniye boyunca etkinleştirecek şekilde ayarlar. Belirli zamanlama gereksinimlerinize göre gecikmeyi ayarladığınızdan emin olun.
void loop() {
if (digitalRead(triggerPin) == HIGH) {
digitalWrite(relayPin, HIGH); // Activate relay
delay(1000); // Keep relay on for 1 second
digitalWrite(relayPin, LOW); // Deactivate relay
}
}
Burada, kontrol ediyoruz eğertriggerPinyüksektir. Eğer öyleyse, röleyi açarız ve bir saniye boyunca aktif tutarız.delay()fonksiyon. Uygulamanız için gerekli olan gecikmeyi ayarlayın.
Gösterim / Ne Beklemeli
Başarılı bir şekilde bağlantı yapıldıktan ve programlandıktan sonra, röle tetikleyici devreye girdiğinde aktif olmalıdır. Rölenin, belirtilen özellikleri içinde doğru çalıştığından emin olmak için çeşitli yükleri test edebilirsiniz. Yaygın hatalar arasında yanlış voltaj bağlantıları ve geri EMF'ye karşı koruma sağlamama yer alır; bu durum devreye zarar verebilir.
Video Zaman Damgaları
- 00:00- Giriş
- 02:15- Kablolama Açıklaması
- 05:30- Kod İncelemesi
- 07:45- Gösteri
Görseller
/*
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);
}
}
Kaynaklar ve referanslar
-
Dış555 Timer Book by Colin Mitchelltalkingelectronics.com
Dosyalar📁
Gerber files
-
555 Relay Timer-Gerber File for PCBXincluded the Gerber files 555 Relay Timer-Aug31.zip, 555 Relay Timer-BOM.xls and 555 Relay Timer-coor to place order
555 Relay Timer-Gerber File_3in1.zip0.16 MB