|
www.elektronik.si Forum o elektrotehniki in računalništvu
|
Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
mucek Član
Pridružen-a: Tor 01 Avg 2006 10:47 Prispevkov: 5334 Aktiv.: 24.73 Kraj: Domzale
|
Objavljeno: Sre Feb 04, 2015 10:28 am Naslov sporočila: |
|
|
Tole pa po mojem ne bo prava vezava ...
V optokoplerju je NPN, torej rabiš pin 3 optokoplerja dati na maso, s pinom 4 pa preko baznega upora odpirati PNP (ali PFET), pozabiti ne gre še pullup upora (ki zapre PNP/PFET, če je optokopler neaktiven).
LP, g _________________ ...lahko pa se tudi motim ... |
|
Nazaj na vrh |
|
|
Sigi Član
Pridružen-a: Čet 31 Jul 2014 11:42 Prispevkov: 199 Aktiv.: 1.68 Kraj: Kamnik
|
Objavljeno: Sre Feb 04, 2015 10:46 am Naslov sporočila: |
|
|
Transistor iz optokoplerja se lahko veže kot v shemi, ne glede ali je narisan NPN/PNP. Transistor v optotu lahko jemlješ kot brezpotencijalno stikalo za enosmerni tok. Napaka v shemi je le prevezava Vcc na kolektor, kar je "slovnična napaka", avtor se je s shemo lepo potrudil.
lp Žiga
PS: sem malo polepšal sporočilo, je morda prej izpadlo ostro, nenamerno.
Nazadnje urejal/a Sigi Sre Feb 04, 2015 11:09 pm; skupaj popravljeno 1 krat |
|
Nazaj na vrh |
|
|
Riven Član
Pridružen-a: Ned 16 Dec 2012 18:33 Prispevkov: 194 Aktiv.: 1.41 Kraj: Vojnik
|
Objavljeno: Sre Feb 04, 2015 12:35 pm Naslov sporočila: |
|
|
Aja ups...dal narobno shemo.
Kolektor tranzistorja, ki aktivira rele in kolektor tranzistorja znotraj optokoplerja, sta vezana še na VCC oz. napetost s katero želiš aktivirati "rele". Tako da tam vbistvu manjka še povezava na en del napajanja, če se razumemo. Oz nekateri ste to že opazili. Je tako tudi označeno, še sam nisem videl.
Pač na podoben oz. identičen način so realizirani tile moduli. |
|
Nazaj na vrh |
|
|
mi69 Član
Pridružen-a: Čet 04 Jul 2013 11:34 Prispevkov: 43 Aktiv.: 0.33 Kraj: MS
|
Objavljeno: Sre Feb 04, 2015 3:03 pm Naslov sporočila: |
|
|
Sem naredil tako, oz. imam že ves čas vse 0 in VCC povezane skupaj, pa mi releje proži le ko dam direktno 0 na IN od releja.
Arduino pa da spet 0.13V na izhod
Riven je napisal/a: |
Kot so že nekateri povedali, je notri optokopler, kateri ti sklene povezavo, ko ga povežeš na "0". -> takrat se ti rele aktivira.
Kodo najhitreje rešiš tako:
V glavi definiraš
#define RELEHIGH 0
#define RELELOW 1
digitalWrite(pinNUM, RELEHIGH); //vklop releja
digitalWrite(pinNUM, RELELOW); //izklop releja
masi arduinota in rele modula morata biti povezana. Napajanje (če je 5V) lahko uporabiš tudi iz arduinota.
In tile moduli z releji imajo vsi galvansko ločene povezave z optokoplerjem.
V priponki sem poslal podobno shemo, kako je rešen enokanalni relejni module. Kot so že povedali, na vhodu je povezan na VCC (torej tvojih 5V), rele pa aktiviraš tako, da drugi pin postaviš na maso oz 0V. Tako steče tok in optokopler se sklene. |
|
|
Nazaj na vrh |
|
|
Riven Član
Pridružen-a: Ned 16 Dec 2012 18:33 Prispevkov: 194 Aktiv.: 1.41 Kraj: Vojnik
|
Objavljeno: Sre Feb 04, 2015 3:16 pm Naslov sporočila: |
|
|
Pa imaš zagotovo vse OK povezano?
VCC = 5V
GND = 0V
IN1 = arduino pin ....
v programu moraš definirati program da je izhodni pin, imaš?
imaš inicializacijo narejeno takole?: - najprej vklopiš pin in ga postaviš na "0".
pini so ACTIVE LOW, torej jih moraš dati na 0, da stvar deluje.
digitalWrite(Relay, RELAYLOW);
pinMode(Relay, OUTPUT);
Lahko prilepiš kodo?
p.s. zagotovo je nekaj narobe z vezavo/arduinotem. Arduino z knjižnico nastavi izhode kot izvore (HIGH) z LOW pa postavi pin kot ponor pina. Tako da zadeva 100% deluje. Tukaj je sicer še PUD, ki bi kot izhodni pin moral biti tam onemogočen. Probaj izhodni pin vezati preko 5k upora na nulo. In iz tam na IN1 na rele modulu. Mogoče ima problem pri plavajoči napetosti? |
|
Nazaj na vrh |
|
|
mi69 Član
Pridružen-a: Čet 04 Jul 2013 11:34 Prispevkov: 43 Aktiv.: 0.33 Kraj: MS
|
Objavljeno: Sre Feb 04, 2015 4:48 pm Naslov sporočila: |
|
|
Bom še enkrat prevero vezavo, koda pa je tu:
#include <LiquidCrystal.h>
#include <Thermistor.h>
Thermistor temp(0);
#define RELEHIGH 0
#define RELELOW 1
int grelec1 = 6;
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void loop()
{
int temperature = temp.getTemp();
Serial.print("Temperatura senzorja: ");
Serial.print(temperature);
Serial.println("*C");
if (temperature <= 25) {
digitalWrite(grelec1,RELEHIGH);
}
else {
digitalWrite(grelec1,RELELOW);
} |
|
Nazaj na vrh |
|
|
Riven Član
Pridružen-a: Ned 16 Dec 2012 18:33 Prispevkov: 194 Aktiv.: 1.41 Kraj: Vojnik
|
Objavljeno: Sre Feb 04, 2015 4:53 pm Naslov sporočila: |
|
|
mi69 je napisal/a: |
Bom še enkrat prevero vezavo, koda pa je tu:
#include <LiquidCrystal.h>
#include <Thermistor.h>
Thermistor temp(0);
#define RELEHIGH 0
#define RELELOW 1
int grelec1 = 6;
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void loop()
{
int temperature = temp.getTemp();
Serial.print("Temperatura senzorja: ");
Serial.print(temperature);
Serial.println("*C");
if (temperature <= 25) {
digitalWrite(grelec1,RELEHIGH);
}
else {
digitalWrite(grelec1,RELELOW);
} |
Nimas definiranih pinov kot izhodi.
pinMode(pin, output); tako definiras da je pin izhod, po defoltu so pini inputi. Definiras pred glavno zanko! |
|
Nazaj na vrh |
|
|
tilz0R Član
Pridružen-a: Čet 31 Maj 2012 15:39 Prispevkov: 898 Aktiv.: 6.21 Kraj: Črnomelj
|
Objavljeno: Sre Feb 04, 2015 4:53 pm Naslov sporočila: |
|
|
Pogrešam funkcijo setup() v kateri so vse inicializacije,
recimo:
pinMode(grelec1, OUTPUT) ;
Pogrešam tudi inicializacijo za Serial.
PS: me je predhonik prehitel. _________________ Knowledge sharing is caring.
majerle.eu | stm32f4-discovery.net |
|
Nazaj na vrh |
|
|
mi69 Član
Pridružen-a: Čet 04 Jul 2013 11:34 Prispevkov: 43 Aktiv.: 0.33 Kraj: MS
|
Objavljeno: Sre Feb 04, 2015 5:16 pm Naslov sporočila: |
|
|
Sem pa res slika. To sem enkrat že imel a ko se mi je po win. updateu resetiral računalnik je edina testna koda bila v arduinotu in je nisem mogel več ven dobiti. Ko sem po spominu kopiral različne dele kode in razl. datotek sem izpustil pinMode in nastala je cela štala. SEdaj dela kot treba re rele ima kontra logiko.
Seveda pa imam v prg. setup in serial le smetiti nisem hotel celega posta.
No hvala vsem za trud.
Kot sem že vprašal kaj svetujete za detekcijo faze 230V (ACS712 bi bil ali kaj drugega) |
|
Nazaj na vrh |
|
|
|
|
Ne, ne moreš dodajati novih tem v tem forumu Ne, ne moreš odgovarjati na teme v tem forumu Ne, ne moreš urejati svojih prispevkov v tem forumu Ne, ne moreš brisati svojih prispevkov v tem forumu Ne ne moreš glasovati v anketi v tem forumu Ne, ne moreš pripeti datotek v tem forumu Ne, ne moreš povleči datotek v tem forumu
|
Uptime: 70 dni
Powered by phpBB © 2001, 2005 phpBB Group
|