====== Relé-Modulok ====== {{ :hu:arduino:bmz_1.png?250|BMZ12TN Többcsatornás MOSFET IO-kártya}} ===== BMZxxTN Többcsatornás MOSFET IO-kártya ===== A kártya relék helyett MOSFET-ekkel végzi a kapcsolást, csatornánként opto-val izolált. A bemeneti oldal lehet 5/12/24 Voltos, a kimeneti oldal típusfüggő, 3.3/5/12/24 voltos lehet (a választott érték szerint kell rendelni). A csatornék száma is választható, 4/8/12/16 csatornás kivitelben (BMZ4TN, BMZ8TN, BMZ12TN, BMZ16TN) építik ezeket a modulokat. Az egység működhet NPN vagy PNP irányban is. A modul kinézete civilizált, szekrényben kalapsínre installálható. Én a banggood-ról rendeltem a modult, [[https://www.banggood.com/IO-Card-PLC-Signal-Amplifier-Board-PNP-to-NPN-Mutual-Input-Optocoupler-Isolation-Transistor-Output-Low-Level-Relay-Module-p-1545883.html|innen]]. ==== Technikai adatok ==== * Tápfeszültség: DC3.3 .. 24V * Üzemi áramfelvétel: 5 .. 10mA * Kimenet: optoval leválasztott, izolált * Maximális kimeneti áram: 6A * Kimeneti oldali feszültség: DC5V .. DC24V (fix) * Kapcsolási idő: legfeljebb 1 ms * Maximális kapcsolási frekvencia: 2000 Hz * Installáció: szabványos sín (kalapsín) ==== Bekötés ==== Az SS láb bekötéséval határozható meg, hogy a modul NPN vagy PNP irányban működik. Ha az SS lábra rákötjük a tápfeszültséget, ami lehet a konfigurációtól függően 5, 12 vagy 24 volt, akkor a modul PNP irányban fog működni: |{{ :hu:arduino:bmz_pnp.png?400 |PNP bekötés}}|{{ :hu:arduino:bmz_npn.png?400 |NPN bekötés}}| ===== HK4100F relé ===== {{ :hu:arduino:hk4100f.png?400 |HK4100F relé}} A kínai gyártmányú, nagyon gazdaságos HK4100F relécsalád az Arduinoknál -- mind direkt, mind kátryákon -- a leggyakrabban felbukkanó relétípus. Faék egyszerűségű, alapvelően megbízható, vezetékezése a fenti ábrán látható. Alapvetően 3 típusát gyártják, ezeknek a tekercsfeszülsége: 5V DC, 12V DC, 24V DC. Szekunderkörön mind AC, mind DC kapcsolására alkalmas. **Technikai adatai:** * Érintkező anyaga: Ezüst ötvözet * Szekunderkör jellemzői: 3A 250V AC / 3A 30V DC * Maximális kapcsolási feszültség: 300V AC / 60V DC * Maximális kapcsolási áram: 3 A * Maximális kapcsolási teljesítmény: 750 VA / 90 W * Érintkező ellenállás: 100 mΩ (1A 6V DC) * Impedancia: 120Ω +/- 10% * Tekercsteljesítmény: 0.2W * Névleges feszültség: DC 5V / DC 12V / DC 24V * Működési hőmérséklet: -25 ℃ - 70 ℃ {{ :wiki:arduino:4_csatornas_rele_modul.png?200|4 csatornás relé modul}} ===== 4 csatornás "klasszikus" relévezérlés ===== A klasszikus relémodulok 1-2-4-8 csatornás kivitelben kaphatók az Arduinokhoz. Csatornánként 15-20 mA szükséges a relék vezérléséhez. A relék optokkal vannak leválasztva a bemenetektől, és állapotukról LED visszajelzést is kapunk. A kimeneti oldalon egyenáram esetén maximum 30V 10A, váltóáram esetén 250V 10A kapcsolható. A kimeneti oldalon NO és NC kimenet is található. A modul alkalmazásával nekem vannak negatív tapasztalataim. Nagy terhelés esetén többször tapasztaltam, hogy nem azonnal, de egy idő után furcsa működést produkál az Arduino-val. Az egész kapcsolás elkezd ki-be kapcsolgatni, olyan másodperces ciklusban, és ebből a hibából csak teljes áramtalanítással lehet kivenni. Ezt a problémát valószínűleg az Arduino pinjének a túlterhelése okozza, ami után a board resetelni próbál, de mivel a terhelés továbbra is fennáll, a felfutás után ismét leállást okoz. A fő probléma ezzel a jelenséggel az, hogy nem lehet tudni, hogy mikor fog bekövetkezni. Elkerüléséhez, megoldásához érdemes nem relés kapcsolást alkalmazni (pl. MOFSET, solid state,..). ==== JD jumper ==== A JD jumperen/csatlakozón keresztül megvalósítható a relémodul teljes elektromos szeparálása az Arduino-tól: {{:wiki:arduino:rele_modul_jd_1.png?500|}} Ha a jumper VCC állásban van, akkor a relé meghajtását az Arduino-tól kapott VCC végzi. Ha a JD-VCC állásba külső megtáplálást csatolunk, akkor a VCC teljesen le lesz választva a relétől. Ebben az esetben így érdemes a mudult az Aurdino-hoz csatolni: {{:wiki:arduino:rele_modul_jd_2.png?500|}} ==== Relémodul példa ==== {{:wiki:arduino:rele_modul_pelda.png?400|Relémodul példa}} \\ kép forrása: [[https://randomnerdtutorials.com/guide-for-relay-module-with-arduino/|randomnerdtutorials.com]] Ebben az összeállításban a PIR mozgásérzékelő egy 230V-os lámpát kapcsolgat 10 másodperces késleltetéssel. A JD jumper itt VCC állásban van, a relé a tápját az Arduino-tól kapja. A példaprogram: // Relay pin is controlled with D8. The active wire is connected to Normally Closed and common int relay = 8; volatile byte relayState = LOW; // PIR Motion Sensor is connected to D2. int PIRInterrupt = 2; // Timer Variables long lastDebounceTime = 0; long debounceDelay = 10000; void setup() { // Pin for relay module set as output pinMode(relay, OUTPUT); digitalWrite(relay, HIGH); // PIR motion sensor set as an input pinMode(PIRInterrupt, INPUT); // Triggers detectMotion function on rising mode to turn the relay on, if the condition is met attachInterrupt(digitalPinToInterrupt(PIRInterrupt), detectMotion, RISING); // Serial communication for debugging purposes Serial.begin(9600); } void loop() { // If 10 seconds have passed, the relay is turned off if((millis() - lastDebounceTime) > debounceDelay && relayState == HIGH){ digitalWrite(relay, HIGH); relayState = LOW; Serial.println("OFF"); } delay(50); } void detectMotion() { Serial.println("Motion"); if(relayState == LOW){ digitalWrite(relay, LOW); } relayState = HIGH; Serial.println("ON"); lastDebounceTime = millis(); } Mondjuk ha már 230V-ot kapcsolgatunk, akkor lehet, hogy érdemes volna az optók előnyeit kihasználva az Arduino-t szeparálni a reléktől, az alábbi kiegészítéssel (lásd, a fenti JD jumperes pont): {{:wiki:arduino:rele_modul_pelda_2.png?400|}} \\ kép forrása: [[http://howtomechatronics.com/tutorials/arduino/control-high-voltage-devices-arduino-relay-tutorial/|howtomechatronics.com]]