Mashruuc: RJT520 Timer Relay, 555, 6V ilaa 18V, 20A
Casharakan, waxaan dhisi doonaa wareeg waqtiga relay ah oo isticmaalaya relay RJT520 iyo IC 555 timer oo ka shaqeeya xadka voltage-ka 6V ilaa 18V. Mashruucan wuxuu ku habboon yahay xakameynta qalabka u baahan dib u dhac ka hor inta aan la shidin ama la damin, sida iftiinka ama qalabka. Natiijadu waxay noqon doontaa waqtiga relay shaqeynaya oo qaadi kara ilaa 20A oo hadda ah, taasoo u oggolaaneysa codsiyo ballaaran.

Waxaan isticmaali doonaa IC 555 timer-ka qaabka monostable si aan u abuurno waqti-dheere. Markii la kiciyo, waqtigu wuxuu hawlgelin doonaa relay-ga muddo cayiman ka hor inta aan la damin. Mashruucani waa mid fudud laakiin waxtar leh, taasoo ka dhigaysa mid ku habboon qalabkaaga elektaroonigga ah. Si aad u hesho sharaxaad muuqaal ah, hubi inaad daawato fiidiyowga (fiidiyowga 02:15).
Qalabka la Sharxay
Mashruucan wuxuu ka kooban yahay qaybaha ugu waaweyn ee ay ka mid yihiin relay-ga RJT520, IC-ga 555 timer, iyo koronto. Relay-ga RJT520 waa relay awood sare leh oo awood u leh inuu beddelo culeysyo ilaa 20A, taasoo ka dhigeysa mid ku habboon xakameynta qalabka waaweyn. IC-ga 555 timer waa qayb aad u kala duwan oo lagu hagaajin karo qaabab kala duwan, oo ay ku jirto qaabka monostable, kaasoo aan u isticmaali doonno timer-keena.

Relay-ga wuxuu shaqeeyaa isagoo isticmaalaya magnet koronto si uu si farsamo ah u beddelo set-ka xiriiriyeyaasha. Markii wax soo saarka 555 timer-ka uu sare u kaco, wuxuu tamar siiyaan coil-ka relay-ga, xiraya xiriiriyeyaasha iyo oggolaanaya in koronto ay socoto culeyska la xidhiidha. Qaabkan wuxuu faa'iido u leeyahay codsiyada u baahan hawlgal fog ama otomaatig.
Faahfaahinta Warqadda Data
| Soosaar | RJT |
|---|---|
| Lambarka qaybta | RJT520 |
| Koronto bixinta | 6-18 V |
| Soo saarka hadda. | 20 A max |
| Current coil | 70 mA ca. |
| Koronto beddelka | 250 V AC / 30 V DC |
| Xiriir qaabeynta | SPDT |
| Heerkulka hawlgalka | -40 ilaa 85 °C |
| Baakidhka | Baakidhka caadiga ah |
- Hubi in relay-gu uu maareyn karo hadda (20 A ugu badnaan).
- Isticmaal qaboojiyaha ku habboon haddii relay-gu uu ka shaqeeyo heerkul sare.
- Hubi heerarka korontada si aad uga fogaato waxyeello u geysanaya 555 timer.
- Isticmaal capacitors-ka kala-soocidda oo ku dhow pins-ka awoodda 555 timer-ka.
- Hubi xiriirinta relay-ga in ay xiran yihiin oo beddel haddii loo baahdo.
- Ka taxaddar EMF gadaal ah markaad beddelayso yükta koronto.
Tilmaamaha Xadhigga

Si aad u xidhid wareegga waqtiga RJT520, ku bilow inaad ku xidhid IC waqtiga 555. Ku xidh pin 1 (GND) ee waqtiga 555 dhulka korontadaada. Kadib, ku xidh pin 8 (VCC) dhamaadka togan ee korontadaada (6V ilaa 18V).

Marka xigta, xadhig pin 2 (TRIG) ku xidh switch-kaaga kicinta ama calaamadda gelinta. Pin-kan wuxuu dhaqaajin doonaa waqtiga marka uu helo pulso hoose. Ku xidh pin 3 (OUT) ee 555 timer-ka hal terminal oo ka mid ah coil-ka relay-ga, kuna xidh terminal-ka kale ee coil-ka dhulka. Ha ilaawin inaad ku darto diode ka soo horjeeda coil-ka relay-ga si aad u ilaaliso wareegga ka hortagga EMF dib u soo noqoshada.
Si aad u hesho natiijada relay, ku xidh hal ka mid ah terminals-ka caadiga ah culeyska aad rabto inaad xakameyso, iyo terminal-ka kale ilaha korontada. Hubi inaad ku xidhid terminal-ka kale ee culeyska dhulka caadiga ah. Ugu dambeyntii, qaabee qaybaha waqtiga (resistor iyo capacitor) ee ku xiran pins 6 iyo 2 si aad u hesho dib u dhac aad rabto.
Tusaalooyinka Koodhka & Socodka
Koodhka, waxaan ku qeexi doonaa aqoonsiyo muhiim ah sidatriggerPinsababaha gelinta iyorelayPinwaxaa loogu talagalay wax soo saarka relay. Hawsha dejinta waxay dejisaa pins-kan, halka hawsha wareegga ay kormeerto xaaladda kicinta.
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
}
}
Qaybtaan waxay dejinaysaa pins-ka waxayna dejinaysaa relay-ga inuu firfircooni doono hal ilbiriqsi mar kasta oo pin-ka kicinta uu helo calaamad HIGH ah. Hubi inaad hagaajiso dib-u-dhaca si waafaqsan shuruudahaaga waqtiga gaarka ah.
void loop() {
if (digitalRead(triggerPin) == HIGH) {
digitalWrite(relayPin, HIGH); // Activate relay
delay(1000); // Keep relay on for 1 second
digitalWrite(relayPin, LOW); // Deactivate relay
}
}
Halkan, waxaan hubinaynaa haddiitriggerPinwaa SARE. Haddii ay sidaas tahay, waxaan shidnaa relay-ga oo aan haynaa firfircooni hal ilbiriqsi ah iyadoo la adeegsanayodelay()hawl. Ku hagaaji dib u dhaca sida loo baahan yahay codsigaaga.
Muuqaal / Waxa La Filan Karo
Marka si guul leh loo xiro loona barnaamijiyo, relay-gu waa inuu firfircoonaan marka xayndaabku la hawlgalo. Waxaad tijaabin kartaa culeysyo kala duwan si aad u hubiso in relay-gu si sax ah u shaqeeyo iyadoo la raacayo qeexitaankiisa. Khaladaadka caadiga ah waxaa ka mid ah isku xirka koronto ee qaldan iyo guuldarada ka hortagga EMF dib u soo noqoshada, taasoo dhaawici karta wareegga.
Video Timestamps
- 00:00- Hordhac
- 02:15- Sharaxaadda Xadhkaha
- 05:30- Socodka Socodka
- 07:45- Muuqaal
Sawirro
/*
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);
}
}
Kheyraadka & Tixraacyada
-
Dibedda555 Timer Book by Colin Mitchelltalkingelectronics.com
-
Dibedda
-
Dibedda
Faylasha📁
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