BeneluxSpoor.net forum
Vraag en antwoord => Elektronica en analoog => Topic gestart door: wimk op 11 March 2016, 08:09:11
-
Beste mensen,
Ik ben me aan het oriënteren, om op mijn baan (misschien) optocouplers te gaan toepassen in het electrisch circuit. Maar al lezende komen er bij mij steeds meer vragen, die ik in dit draadje maar allemaal neerleg. De encyclopedie geeft wel wat summiere informatie, maar voor mij nog niet genoeg.
Wat wil ik
Ik wil met een arduino een bepaald stroomcircuit schakelen. Aan-uit. Uiteraard kan dat met een relais of transistor, maar volgens mij kan het ook met een optocoupler. Daarbij kom ik termen tegen als foto-transistor, foto-darlington, triac, PC814, PC817. Met 4 pootjes, met 6 pootjes, met 8 pootjes. Door al deze zaken ben ik het overzicht een beetje kwijt.
Algemeen
- Wat is het verschil tussen de hierboven genoemde soorten optocouplers? (PC814=wisselspanning, PC817=gelijkspanning staat in de encyclopedie, maar wat zijn die andere?)
- Waarom zijn er met 6 of 8 pootjes? Je hebt toch alleen maar een primair circuit (2 pootjes) en een secundair circuit (2 pootjes)? Wat mis ik hierbij?
Primaire circuit. Deze moet door de Arduino worden geschakeld, en volgens mij zal bij een stroom door dit circuit het secundaire circuit geleidend worden. Vraagen daarbij:
- Welke spanning moet ik op het primaire circuit zetten? Is 5 volt mogelijk?
- Welke stroom gaat er lopen? Minder dan 40 mA (het maximum voor een poort van de Arduino)?
- Moet ik een voorschakelweerstand plaatsen? Zo ja, welke waarde?
- Wat is de minimum waarde (en wat is de maximum waarde) voor de spanning en/of stroom waarmee ik het secundaire circuit kan schakelen?
Te schakelen circuit. Vragen daarbij:
- Welke spanning kan ik schakelen? Is 12 Volt mogelijk?
- Welke stroom kan er door het secundaire circuit? Ik wil enkele honderden mA tot een halve Ampere.
- Zijn er beperkingen in de schakelsnelheid? Kan ik b.v. pulsen van 1 mSec (door de Arduino te genereren) schakelen?
- Maakt de polariteit van het secundaire circuit nog uit? M.a.w. is het mogelijk zowel heengaande stroom als teruggaande stroom te schakelen?
Andere vragen
Misschien zijn er nog wel meer vragen die ik had moeten stellen, maar waarbij ik de vraag niet weet. Ook daar mag antwoord op worden gegeven.
Graag meer informatie over de optocoupler.
Met dank,
Wim K
-
als je al een typenummer kunt vinden van een opto coupler kun je het beste de data sheet opzoeken, effe googlelen, dat kun je te weten komen waar deze voor bedoeld is en wat hij allemaal kan
-
Een optocoupler is meestal gewoon een combinatie van een LED en een foto-transistor in een samengesteld huisjes.
Een fototransistor heeft geen basis aansturing nodig, dus in totaal dan 2+2=4 pootjes, zoals de 817.
Als er meer pootjes zijn, zijn dat meestal samenstellingen van meerdere optocouplers, bijvoorbeeld de 847 (4 stuks) en de 827 (2 stuks, de naam zegt het al).
Een gewone optocoupler heeft 1 LED, dus daar moet de stroom in 1 richting doorheen (daarom niet geschikt voor DCC signalen in alle situaties).
Een "wisselstroom" optocoupler heeft 2 tegengekoppelde LEDs, dus daar maakt het niet, de ILQ620 bijvoorbeeld.
Aansturing van het primaire deel als een LED, dus meestal tussen de 5 en 20 mA met een voorschakelweerstand.
Het secundaire deel hangt sterk van het type optocoupler af, maar een typische 817 is "gewoon" een transistor die maximaal 50 mA kan schakelen...
En inderdaad, pak gewoon de datasheet erbij, die is voor een 817 of 847 echt niet zo ingewikkeld!
-
Beste Wim,
Met alle respect, maar als ik je vragen zo lees ben je geen electronica-hobbyist. Dat is helemaal niet erg want de één is beter in modelbouw en de ander beter in electronica. Gezien je vragen wil ik je aanraden om gewoon bestaande schakelingen van anderen te gebruiken. Bekijk de schema's en bouw ze eens na. Soms zal er iets stuk gaan maar daar leer je juist van. Experimenteren kan heel leuk zijn. Is dat juist niet wat je wil koop dan gewoon bestaande besturingselectronica. Dat is een stuk makkelijker aan de praat te krijgen en ook daar zit voor menige hobbyist voldoende uitdaging.
Toch nog even in vogelvlucht antwoord op je vragen. De arduino uitgang is 0V of 5V. Met deze 5V kan je een 5V relais rechtstreeks aansturen mits (zoals je zelf al gezien hebt) de stroom niet hoger is dan 40mA. Omdat een relais vaak meer verbruikt wordt dit eigenlijk nooit gedaan. Er wordt dan een transistor voor het relais gezet.
(https://images.beneluxspoor.net/bnls/relais1.png) (https://images.beneluxspoor.net/bnls/relais1.png) Plaatje van Arduino.nu (http://www.arduino.nu/Relais/)
Als je naar het schema kijkt zie je een voorschakelweerstand R1. Dat is dan gelijk het antwoord op een vraag. Verder zie je parallel over het relais een diode D1. Deze is altijd nodig om de inductiestroom van het relais kort te sluiten. Anders zal je transistor sterven.
Jij vraagt naar het gebruik van de optocoupler. De optocoupler wordt gebruikt om een galvanische scheiding te maken tussen het ene circuit en het andere. Theoretisch kan je voor de transistor nog een optocoupler zetten. Normaal gesproken zal dat niet echt nodig zijn omdat het relais ook reeds voor een galvanische scheiding zorgt. Mocht je echter zonder relais werken dan is het wel handig om een optocoupler toe te passen om te voorkomen dat bijvoorbeeld de hoge baanspanning op de Arduino komt te staan.
(https://images.beneluxspoor.net/bnls/FP6P4ZRIFMTPOTDMEDIUM.jpg) (https://images.beneluxspoor.net/bnls/FP6P4ZRIFMTPOTDMEDIUM.jpg)
In dit schema is het relais vervallen en is er een optocoupler toegevoegd (met voorschakelweerstand anders gaat de fotodiode in de optocoupler stuk!) De optocoupler stuurt de transistor en de transistor (in dit voorbeeld) een motor.
Ik hoop dat dit je een beetje op weg helpt.
Succes Frits
-
Bij een optocoupler moet je altijd letten op de current transfer ratio, meestal afgekort tot CTR. Dat is de verhouding tussen de stroom die je door de led stuurt en de stroom die je uit de fototransistor kan verwachten.
Voorbeeld: als de CTR 50% is, en je stuurt 10mA door de led, dan kan de transistor 5mA leveren.
De CTR is meestal kleiner dan 1 (=100%). Dus als je iets "groots" wil schakelen dan moet er een transistor achter om dat voor elkaar te krijgen.
-
Wat wil ik
Ik wil met een arduino een bepaald stroomcircuit schakelen. Aan-uit. Uiteraard kan dat met een relais of transistor, maar volgens mij kan het ook met een optocoupler.
Dat kan, maar een optocoupler is niet 1 op 1 te vergelijken met een relais of transistor. Een relais of transistor schakelt eigenlijk alleen maar aan of uit, een optocouplers scheidt de stuurelektronica van de vermogens-elektronica ook nog eens galvanisch. Daarbij komt wel dat je een optocoupler vaak niet zomaar in kan zetten zoals je een transistor of relais inzet. Optocouplers zijn niet gemaakt om grote stromen te schakelen.
Algemeen
- Waarom zijn er met 6 of 8 pootjes? Je hebt toch alleen maar een primair circuit (2 pootjes) en een secundair circuit (2 pootjes)? Wat mis ik hierbij?
Zoveel elektronica, zoveel optocouplers. Je hebt meerdere optocouplers in 1 huisje, optocouplers die aan de 'sterkstroomkant' extra pinnen hebben om de fototransistor als het ware 'in te stellen' (vaak onnodig) en zo kan er ook nog nuldoorgangsdetectie aangeboden worden bij sommige typen.
Primaire circuit. Deze moet door de Arduino worden geschakeld, en volgens mij zal bij een stroom door dit circuit het secundaire circuit geleidend worden. Vraagen daarbij:
- Welke spanning moet ik op het primaire circuit zetten? Is 5 volt mogelijk?
De LED in een optocoupler is, net zoals een gewone LED, stroomgestuurd. De spanning is dan ook van minder belang, het draait om de stroom, die begrenst moet worden door een voorschakelweerstand. Dat beantwoord tegelijk vraag 3.
- Welke stroom gaat er lopen? Minder dan 40 mA (het maximum voor een poort van de Arduino)?
Dat is afhankelijk van de optocoupler, maar al zou je 35 mA gaan trekken uit een pin van de Arduino (ÉÉN PIN IS GEEN POORT! Een poort is een verzameling in- en uitgangspinnen!) raad ik dat niet aan. Vaak mag een microcontroller maar een beperkte gezamenlijke stroom door (bijvoorbeeld) de massa-pin laten stromen. Van 2 of 3 pinnen 35 mA trekken kan best in het einde van je controller resulteren.
- Moet ik een voorschakelweerstand plaatsen? Zo ja, welke waarde?
Zie boven.
- Wat is de minimum waarde (en wat is de maximum waarde) voor de spanning en/of stroom waarmee ik het secundaire circuit kan schakelen?
- Welke spanning kan ik schakelen? Is 12 Volt mogelijk?
- Welke stroom kan er door het secundaire circuit? Ik wil enkele honderden mA tot een halve Ampere.
- Zijn er beperkingen in de schakelsnelheid? Kan ik b.v. pulsen van 1 mSec (door de Arduino te genereren) schakelen?
- Maakt de polariteit van het secundaire circuit nog uit? M.a.w. is het mogelijk zowel heengaande stroom als teruggaande stroom te schakelen?
Dit zijn vrijwel allemaal vragen die afhankelijk zijn van het type dat je kiest. Een puls van 1 mSec, waarbij ik vermoed dat je 1 milliseconde bedoelt (ms), zal voor de meeste optocouplers een peuleschil zijn. 1 microseconde komt al meer in de richting van 'uitdaging' .
Verder ga ik met Fritsprt mee: het is niet erg om te vragen, maar gezien de vragen lijkt het me beter wat basiskennis extra op te doen.
-
Hallo Wim,
Als je met een Arduino relais wilt schakelen kun je daarvoor kant en klare modules krijgen.
(https://images.beneluxspoor.net/bnls/relaismodule.png) (https://images.beneluxspoor.net/bnls/relaismodule.png)
Deze zijn al voorzien van een optocoupler en een indicatieled.
Ze maken daardoor iedere technische discussie overbodig.
Je kunt ze krijgen met 1, 2, 4 of 8 relais per module.
De Arduinopin kun je direct verbinden met een ingangspin van de module.
De voeding kun je van de Arduino halen of uit een externe voeding (aanbevolen).
Je kunt ze heel goedkoop bestellen op o.a Aliexpress (http://nl.aliexpress.com/wholesale?SearchText=relay+module+arduino&catId=&initiative_id=AS_20160311080003)
mvg
Nico
-
Een relais of transistor schakelt eigenlijk alleen maar aan of uit, een optocouplers scheidt de stuurelektronica van de vermogens-elektronica ook nog eens galvanisch.
Euh, een relais geeft toch ook een galvanische scheiding?
Het belangrijkste verschil is dat je bij een relais meerdere wisselcontacten kunt hebben, terwijl een opto maar 1 "maakcontact" heeft.
En zoals gezegd, dat bij een opto de uitgaande stroom meestal kleiner is dan de sturende stroom. Bij een relais is dat vrijwel altijd andersom.
-
En eens te meer wordt bewezen dat ik dat soort zaken niet met een migraine-kop moet schrijven ;)
-
Hoi
Citaat van Hans Q
Een gewone optocoupler heeft 1 LED, dus daar moet de stroom in 1 richting doorheen (daarom niet geschikt voor DCC signalen in alle situaties).
Een "wisselstroom" optocoupler heeft 2 tegengekoppelde LEDs, dus daar maakt het niet, de ILQ620 bijvoorbeeld.
Een gewone optocoupler kan wel degelijk gebruikt worden voor DCC signalen, ik gebruik dit om DCC voor aansturen wisselspoelen, servo's en seinen gescheiden aan te bieden zodat de rijspanning alleen voor het rollend materiaal wordt gebruikt. Heb hierbij een voorbeeld schema voor aansturing van 2 spoelwissels (2x2 uitgangen), werkt perfect zonder problemen. Wel heeft deze optocoupler die ik gebruik een voedingsbron nodig daar dan meer vermogen door de coupler wordt afgegeven.
Schema :
(https://images.beneluxspoor.net/bnls/DCC_Coil_4.jpg) (https://images.beneluxspoor.net/bnls/DCC_Coil_4.jpg)
Groeten Frans
-
Leuk voorbeeld van een toepassing bij wisselstroom:
het eerste onderdeel in het schema is een gelijkrichter!
-
Denk dat je nog steeds schema moet leren lezen, die wisselstroom wordt gelijkgericht voor voeding van de PIC en wissel aansturing.
De opto coupler is een geheel ander onderdeel, het DCC signaal, wordt hier ingegeven, zie X4-1 en X4-2.
Je kan ook gelijkspanning gebruiken en die gelijkrichter vergeten, zo doe ik het ook, maar alsnog, ergens wordt er van wisselstroom gelijkstroom van gemaakt om je overige elektronica te kunnen aansturen.
Ter informatie, de gebruikte 6N137 is niet meer verkrijgbaar, ter vervanging nu de 6N139.
Verder heb ik geen commentaar maar reageer als je weet waar je het over hebt.
Groeten Frans
PS, vraag me steeds af warom ik nog op zaken hier op Beneluxspoor reageer.
-
Ter informatie, de gebruikte 6N137 is niet meer verkrijgbaar, ter vervanging nu de 6N139.
Hoeveel had je er gehad willen hebben:
http://nl.aliexpress.com/wholesale?SearchText=6n137&catId=&initiative_id=SB_20160313020038 (http://nl.aliexpress.com/wholesale?SearchText=6n137&catId=&initiative_id=SB_20160313020038)
Nico
-
Nou Frans,
Beetje kort door de bocht.
Ook gewoon leverbaar bij Conrad, RS, Farnell, Reichelt (y)
En ongetwijfeld nog heel wat meer (online) elektronicawinkels.
-
Denk dat je nog steeds schema moet leren lezen, die wisselstroom wordt gelijkgericht voor voeding van de PIC en wissel aansturing.
De opto coupler is een geheel ander onderdeel, het DCC signaal, wordt hier ingegeven, zie X4-1 en X4-2.
enz.
Schema lezen en schema begrijpen is moeilijk.
Waar ik op doelde is D1, die er voor zorgt dat de ingebouwde LED in de opto coupler een positieve stroompuls krijgt waar die wat mee kan, namelijk aan de + kant, en tevens beschermd wordt tegen positieve stoompulsen aan de - kant, en die via de weerstand R3 afvoert.
Dat dat LED-je daardoor tig keer per seconde aan- en uitgaat is blijkbaar door de hoge frequentie van de DCC stroom (toch wel minstens 20.000 Hz heb ik ergens gelezen) geen probleem.
Het is dan wel niet de juiste benaming, gelijkrichter voor diode D1, maar in combinatie met de Light Emitting Diode in de opto coupler is het effect wel hetzelfde, van wisselstroom gelijkstroom maken.
-
Dat dat LED-je daardoor tig keer per seconde aan- en uitgaat is blijkbaar door de hoge frequentie van de DCC stroom (toch wel minstens 20.000 Hz heb ik ergens gelezen) geen probleem.
Een stroom van 20000 HZ ???
Stroom geven we aan in Amperes (A) en frequenties in Hertz (Hz) (y)
En DCC is een communicatieprotocol. En die heeft weer niets van doen met stroom, volt, frequenties etc.
Puur en alleen het geven van commando's.
-
Ik heb het over een frequentie en niet over stroomsterkte.
En dat protocol heeft alles te maken met frequenties, stoomsterkte en spanning in volt.
Oh, ik bedoel dus frequentie in Hertz, stroomsterkte in Ampère en spanning in Volt.
En met DCC stroom bedoelen we dus die digitale stroom die volgens het DCC protocol op de rails (of bovenleiding) komt te staan als we het over het digitale systeem hebben.
-
@Peter,
Een diode kun je voor meerdere toepassingen gebruiken, bv gelijkrichter of om een spanningsval te creëren (0.6 Volt)
Het doel van het het DCC ingangschema is het ENKELzijdig gelijkrichten van het DCC signaal. Het enkelzijdig gelijkrichten wordt door de LED afgehandeld (het is toch een diode).
De diode D1 is alleen nodig om de LED te beschermen tegen een te hoge tegenspanning en heeft geen functie in het gelijkrichten.
De tegenspanning is bij een 6N137 minimaal 5Volt (volgens spec). Door de diode kan de tegenspanning maximaal 0.6 Volt worden en daardoor is de led beschermd.
mvg spock
-
Ik heb het over een frequentie en niet over stroomsterkte.
Lees je eigen post en het vetgedrukte deel wat ik geciteerd heb nou eens terug.
Je hebt het over een DCC stroom van minstens 20000 Hz.
Dat klopt dus absoluut niet.
En dat protocol heeft alles te maken met frequenties, stoomsterkte en spanning in volt.
Helaas, een protocol heeft totaal niets met stroom, spanning of frequentie te maken.
Een DCC protocol (net als MarklinMotorola of Selectrix is een serie bitjes (o of 1) die een commando voor de decoder bevatten. Of dat nou met 5V of 18V gebeurd doet totaal niet ter zaken. Idem voor de stroomsterkte.
Het enige wat een beetje in de buurt komt is de frequentie. De opeenvolging van bitjes genereert een soort van blokgolf met een wisselende frequentie.
En met DCC stroom bedoelen we dus die digitale stroom die volgens het DCC protocol op de rails (of bovenleiding) komt te staan als we het over het digitale systeem hebben.
DCC zet helemaal geen stroom op de baan. Nogmaals, DCC is niets meer dan een protocol (zie het maar als een taal als dat het duidelijker maakt). Als ik in een bepaalde taal tegen je spreek genereert dat geen stroom, spanning of frequentie. het brengt alleen informatie over.
Je centrale zet een spanning op de rails en als gevolg daarvan loopt er een stroom.
Lees de Encyclopedie (http://encyclopedie.beneluxspoor.net/index.php/Uitleg_Digitaal) er maar eens op na om er van te leren (y)
-
Eric,
Lees het nou eens goed. Het staat er wel degelijk:
de hoge frequentie van de DCC stroom (toch wel minstens 20.000 Hz heb ik ergens gelezen)
En, jouw citaat: DCC zet helemaal geen stroom op de baan.
.
Dat beweert hij ook nergens!!
Er staat:
En met DCC stroom bedoelen we dus die digitale stroom die volgens het DCC protocol op de rails (of bovenleiding) komt te staan als we het over het digitale systeem hebben.
In plaats van overal zout op te leggen en dit weer eens persoonlijk op het forum uit te vechten.. >:(
Gr, Bert
-
Jammer Bert dat jij het ook niet snapt :-X
Lees mijn uitleg ook eens aandachtig door.
Ik leg nergens zout op slakken maar leg uit waar Peter het fout heeft.
Bijvoorbeeld:
En met DCC stroom bedoelen we dus die digitale stroom die volgens het DCC protocol op de rails (of bovenleiding) komt te staan als we het over het digitale systeem hebben.
Hier staat toch wel degelijk dat volgens het DCC protocol stroom op de rails komt te staan.
Kan je het er niet mee eens zijn maar het is toch echt fout 8)
-
De meeste vragen zijn al wel beantwoord maar toch nog mijn aanvulling.
Optocoupler en transistor/relays zijn geen 1:1 vervanging. Opto couplers zijn vaak niet zo heel goed in het schakelen van stromen en worden daarom vaak gebruikt om logische signalen te schakelen (bijvoorbeeld data maar ook het logische signaal voor een transistor).
Zoveel wensen zoveel smaken. Zoals Menno al aan gaf zijn er zo veel types omdat ze allemaal andere eigenschappen hebben. Sneller, betere CTR, kleinere schakelstroom enz. Dus ja, voor iets algemeens als schakelen met een Arduino heb je een heeeeele berg opties.
Triac is iets voor wisselspanning. Dit wordt veel gebruikt voor het schakelen van 230V (mains) maar voor laagspanning stuk minder. Een standaard triac is net als eens standaard transistor niet gescheiden. Maar hier zijn ook wel opto gescheiden triac te vinden, meestal aangeduid als triac driver (omdat ze vaak niet krachtig zijn, net als optocouplers, en dus op hun beurt weer een triac aansturen. Tenzij je veel leeswerk erover wilt doen is het denk ik niet iets dat je nu zou willen gebruiken.
Hamvraag terug
Belangrijkste hamvraag terug is eigenlijk, waarom denk je galvanische scheiding nodig te hebben? Vaak wordt er te snel gedacht dat het nodig is en worden er complexe oplossingen bedacht voor niets. Gewoon schakelen met een transistor (mosfet) is vaak net zo goed (seinen, wissels, verlichting etc) en heel stuk makkelijker.
Het in en uitschakelen van baanvakken is daar een uitzondering op omdat je hier te maken hebt met wisselende polariteit (rijrichting voor analoog en DCC voor digitaal). Een relay (module) kan hierbij makkelijekr zijn.
(daarom niet geschikt voor DCC signalen in alle situaties).
Met deze uitspraak ben ik het ook niet eens. Een DC optocoupler is inderdaad niet geschikt om direct aan DCC te hangen maar juist geschikt voor DCC signalen. Met een AC optocoupler zou je alleen kunnen zien of er spanning is maar niets over het DCC aspect. En ja, om hem direct aan DCC baanspanning te hangen heb je een weerstand een een diode nodig. Maar die diode is niet om het gelijk te richten maar om een te hoge reverse spanning te voorkomen. Zou je een 3Vpeak-peak DCC signaal hebben zou je de diode gewoon weg kunnen laten (als je een 6N136 of PC817 of vergelijkbare gebruik).
Als je met een Arduino relais wilt schakelen kun je daarvoor kant en klare modules krijgen.
Relay modules zijn inderdaad erg leuk. Zeker als je grote stromen wilt schakelen of hoge spanningen (230V) of een bi-directioneel signaal (DCC baanspanning in en uit schakelen bijvoorbeeld). Maar vaak is een mosfet net zo makkelijk. Zijn goedkoper, maken geen geluid, zijn niet mechanisch en je kan dingen als PWM toepassen.
Gebruik je dan toch een relay module blijf dan heel ver weg van de types met een opto coupler erop zoals in de foto van Nico. Deze zijn onnodig complexen opgebouwd, bijna allemaal active low (of erger, active float) en vergen dus meer (onduidelijk aangegeven) verbindingen. Helaas is dit schijnbaar het nieuwste type wat het afgelopen jaar enorm een rage is geworden op de China markt. Maar hou het gewoon bij de simpele relay boarden zonder opto erop zoals deze (http://www.aliexpress.com/item/1-Channel-5V-Relay-Module-for-SCM-Household-Appliance-Control/1125290860.html?ws_ab_test=searchweb201556_0,searchweb201602_2_505_506_503_504_10034_10032_10020_502_10001_10002_10017_10010_10005_10006_10011_10003_10021_10004_10022_10009_10008_10018_10019,searchweb201603_2&btsid=1e21474a-dc88-41a7-b0be-dadff19fd77b). Makkelijk te herkennen omdat op de foto de grote vierkante opto couplers missen :D
Timo
PS. Grom, heb weer eens op een NL AliExpress link geklikt :/
-
Timo,
Wat is er mis met active low?
Wat is er complex aan de opbouw?
Wat is er mis met deze optocouplers?
Kijk hier even (http://howtomechatronics.com/tutorials/arduino/control-high-voltage-devices-arduino-relay-tutorial/)om te zien hoe ze werken.
Als je zomaar beweerd dat ze inferieur zijn moet je dat wel beter toelichten.
Natuurlijk zijn die andere, zonder optocoupler, ook prima (zelfs nog wat goedkoper), maar vooralsnog zie ik geen reden om die andere maar in de prullenbak te gooien.
Ze werken uitstekend.
Nico
-
Hoi Nog even
Het DCC signaal is zeker geen 20.000 Hz ofwel 20Khz (minder nullen en misschien minder interesant), valt nog steeds onder de lage frequentie, maar voor de duidelijkheid is de DCC frequentie een soort blokspanning van 8Khz. Met een goede aansluiting van een koptelefoon of versterker, wel ingangs weerstanden gebruiken enzevoorts, kan men het signaal gewoon horen.
Dan de diode die tegengesteld over de led staat van de opto coupler, is niet bedoeld om spannings pieken op te vangen, wel om het DCC symetrisch te belasten, zowel op de positieve als de negatieve flank. Hier is over nagedacht omdat als men enkel de positieve flank zou belasten met een aantal van deze schakelingen kan het zo zijn dat de positeven flank een lagere spanning zou kunnen hebben dan de negatieve flank. Gevolg kan zijn voor decoders die het Lenz ABC protocol gebruiken hierop zou kunnen reageren. Dit gaat theoretisch erg ver maar die mogelijkheid wordt op deze manier uitgesloten.
De snelheid van de led in de opto coupler is afhankelijk van de kwaliteit, er zijn couplers die een video signaal doorgeven, zie hierover de data sheet van de coupler. Keuze opto coupler is dus eenvoudig te bepalen met wat wil en ga je ermee doen, dan geeft meestal de prijs en de datasheet, dus de gewenste kwaliteit de doorslag maar velen zijn voor elk toepassing te gebruiken. ( zo duur zijn de couplers nu ook weer niet).
Voor DCC is het belang de frequentie, is 8Khz, maar ook snelschakelend on-off, i.v.m. de blokspanning.
Het schema van de opto coupler die een relais aanstuurt voor de Arduinio is een prima schakeling en is niets mis mee. Ikzelf gebruik geen Arduinio maar PIC, en direct aan de uitgang van de PIC een transistor met aan de collector het relais met een diode naar plus, deze is wel bedoeld om de overspanningen op te vangen, dit is echter een ander verhaal. Kontakten zijn dus altijd gescheiden, dus waarom een opto coupler ertussen zetten.
Groeten Frans
-
Je hebt het over een DCC stroom van minstens 20000 Hz.
Dat klopt dus absoluut niet.
Ik snap de kruistocht tegen het verkeerd gebruik van het woord 'stroom', maar vraag me af of dat in dit geval iets toevoegt.
Daarnaast, als je dan wil muggenziften:
Helaas, een protocol heeft totaal niets met stroom, spanning of frequentie te maken.
Vooral dat laatste is hartstikke fout. Elk elektronisch communicatie-protocol op deze aardbol boogt op een bepaalde datastroom. Hoe groter die datastroom per seconde is of kan zijn, hoe hoger de overdrachtsfrequentie, draaggolf of modulatie daarvan moet zijn om dat mogelijk te maken of te zorgen dat zender en ontvanger elkaar begrijpen.
Voor DCC zal ook echt een standaard gesteld zijn: anders moet je elke ontvanger uitrusten met een berg software om eender welke baud/bitrate te herkennen. Daar is de ruimte (zowel fysiek als virtueel) niet voor, dus heeft men een vastgestelde bitrate gekozen.
@ Nteering: active low komt weliswaar vrij veel voor, maar is in het geval van Arduino-achtig spul en zeker een relais, geen handige keuze.
Arduino-hardware wordt veel gebruikt door lieden met minder verstand van elektronica. Dat is niet erg, maar voor hen zal een uitgang die laag moet worden om een relais juist te laten schakelen, waarschijnlijk erg verwarrend zijn: ze hebben hun software waarschijnlijk helemaal getest en aangepast op uitgangen die pas iets doen als ze hoog worden, vermoedelijk ook omdat veel software die in de libraries van Arduino's zit, ook zo geschreven is.
@ Timo: Voor een arduino zal een PC817, TIL111, 6N137 of 4n27 het prima doen. Het enige is dat je gewoon even moet weten hoe je 'm aan moet sluiten.
De MOC3020 een opto-triac, een type dat in staat is direct een triac aan te sturen, is ook de moeilijkste niet. Sterker nog, de moeilijkheden beginnen vaak pas bij het aansturen ván de externe triac.
Ik ben wel met je eens dat een optocoupler een relais laten schakelen nogal dubbelop is. De optocoupler scheidt de boel al en het relais doet dat nog eens dunnetjes over. Ook hier denk ik dat vooral de onkunde van menig Arduino-gebruiker noopte tot het bedenken van een shield met dubbele scheiding.
Wat betreft active float mag je me bijspijkeren: ik weet zeker niet alles en van Arduino heb ik zo goed als geen kaas gegeten (mijn beperkte kennis van PIC's stijgt er nog boven uit) maar ben wel benieuwd hoe dat dan werkt.
-
Ik snap de kruistocht tegen het verkeerd gebruik van het woord 'stroom', maar vraag me af of dat in dit geval iets toevoegt.
Het is geen kruistocht en ook geen kwestie van gelijk hebben ;D en voegt misschien ook niets toe aan de oorspronkelijke vraag maar de zin "hoge frequentie van de DCC stroom (toch wel minstens 20.000 Hz" is gewoon compleet fout en dat heb ik Peter proberen uit te leggen. Stroom en frequentie hebben in die zin totaal niets met elkaar te maken.
Is niet meer dan gewoon de juiste term voor de juiste grootheid gebruiken.
Weet iedereen waar het over gaat. (y)
Daarnaast, als je dan wil muggenziften:Vooral dat laatste is hartstikke fout. Elk elektronisch communicatie-protocol op deze aardbol boogt op een bepaalde datastroom. Hoe groter die datastroom per seconde is of kan zijn, hoe hoger de overdrachtsfrequentie, draaggolf of modulatie daarvan moet zijn om dat mogelijk te maken of te zorgen dat zender en ontvanger elkaar begrijpen.
Voor DCC zal ook echt een standaard gesteld zijn: anders moet je elke ontvanger uitrusten met een berg software om eender welke baud/bitrate te herkennen. Daar is de ruimte (zowel fysiek als virtueel) niet voor, dus heeft men een vastgestelde bitrate gekozen.
Dat leg ik later ook heel kort uit in de zin dat de opeenvolging van bitjes een bepaalde wisselde frequentie heeft 8)
Dat weet jij en dat weet ik, maar ik vermoed dat Peter daar iets minder van weet gezien zijn spraakverwarring.
-
Wat is er mis met active low?
In de basis niets.
Wat is er complex aan de opbouw?
Als de complexiteit te rechtvaardigen was met bijvoorbeeld makkelijker aansluiten ook niets. Maar de complexiteit voegt niets toe. Soort elektrisch Rube Goldbergmachine...
Wat is er mis met deze optocouplers?
Ik weet niet waar je hier naar verwijst :-\ Als je bedoelt, wat is er mis met het eerder gelinkte relais board zal ik daar zo toelichting op geven :)
Kijk hier even (http://howtomechatronics.com/tutorials/arduino/control-high-voltage-devices-arduino-relay-tutorial/)om te zien hoe ze werken.
Nico, jij weet ook wel dat je mij niet hoeft te vertellen hoe ze werken ;)
Ze werken uitstekend.
Ja, ze werken. Dat heb ik ook nooit proberen te ontkrachten. Maar ze zijn onhandiger dan de niet opto tegenhanger. Ken je deze bekende XKCD (https://xkcd.com/1172/)?
Goed, omdat er meer toelichting is gevraagd. :D
De opto is in eigenlijk alle gevallen zinloos. Waarom ook nog het relais galvisch scheiden als je daarna een relais schakelt? Om een losse voeding te gebruiken hoef je het niet te doen, dat kan met de transistor versie ook prima. 12V relais gebruiken, ook prima.
De opbouw van al die bordjes is allemaal redelijk hetzelfde. Ze hebben allemaal een super verwarrende JD-VCC of COM jumper ergens midden op het bord. En laat je deze zitten doe je eigenlijk het hele scheiden al te niet. Wil je het dan toch gebruiken heb je opeens één pin die los staat van alle andere pinnen waar je spanning heen moet gooien. Dit terwijl de rest van de aansluitingen zo mooi op één header zitten.
Ze zijn active float (aka deactive high?). Losgekoppelde relais (of als de Arduino nog uit staat) trekken aan. Tuurlijk kan je dit oplossen met een pull up maar waarom iets oplossen wat al geen probleem hoeft te zijn?
En active low is op zich geen probleem, zeker niet met een extra pull up. Maar wat veel hiervoor dan weer niet weten is dat je nu dus wel moet zorgen dat de pin HIGH is als je het een uitgang maakt, anders stuur je een korte ongewilde puls naar het relais. Waarschijnlijk is deze zo kort dat hij niets doet, maar je zal maar net een iets langere puls hebben omdat er interrupts vuren op dat moment. Leuk bugzoeken voor een beginner.
En dat deze relais modules zo veel lastiger zijn blijkt ook wel uit fora. Oa op het Arduino forum is het sinds die opto varianten in opmars zijn opeens ontploft met vragen van mensen omdat ze zo onduidelijk zijn. Terwijl dit daarvoor echt niet zo aak voor kwam. Die zonder opto zijn gewoon luid en duidelijk. Je hebt GND, een input en het voltage voor het relais. Klaar. Geen jumpers voor onnodige galvanische scheiding, geen relais die gelijk aan gaan als je nog niets gedaan hebt enz.
Dus ja, ze werken en je kunt ze gebruiken. Maar het onhandig zijn in gebruik raad ik ze enorm af. Waarom moeilijk doen als het makkelijk net zo goed kan? ;D
Dan de diode die tegengesteld over de led staat van de opto coupler, is niet bedoeld om spannings pieken op te vangen, wel om het DCC symetrisch te belasten,
Nouw, dat is echt niet zijn belangrijkste doel... Ver buiten de spec van de opto gaan zonder lijkt mij de belangrijkste keuze ;D
De MOC3020 een opto-triac, een type dat in staat is direct een triac aan te sturen, is ook de moeilijkste niet. Sterker nog, de moeilijkheden beginnen vaak pas bij het aansturen ván de externe triac.
Dat klopt wel als je maar geen DC probeert te schakelen. Met andere woorden, zolang je iets gebruikt waarvoor het bedacht is dat is het een stuk makkelijker. En ja, de triac daarna is vaak lastiger. Maar aan zich zou je ook direct een load kunnen schakelen met een MOC3020 zolang deze maar laag is. Eigenlijk zelfde als bij een normale opto coupler. Maar of dingen er dan makkelijker/beter van worden ;D
Wat betreft active float mag je me bijspijkeren:
Echt officiële term is het niet nee ;D Maar wat ik bedoel te zeggen, de schakeling is zo opgebouwd dat de opto de transistor die het relais schakelt uit zet. Dus als de input float (dus er is ook geen pull up of pull doen ofzo, echt 100% float) is er niets om het relais uit te zetten. Er moet echt een high aangeboden worden om het relais af te schakelen. Dit in tegenstelling tot met alleen een transistor (ook een PNP active low opstelling) waarbij er niets gebeurd (afgezien van misschien een lekstroom). Je moet de transistor echt open trekken (of dit nu high is voor NPN of low is PNP maakt niet uit) om het relais te doen schakelen.
Timo
-
Dan de diode die tegengesteld over de led staat van de opto coupler, is niet bedoeld om spannings pieken op te vangen, wel om het DCC symetrisch te belasten, zowel op de positieve als de negatieve flank. Hier is over nagedacht omdat als men enkel de positieve flank zou belasten met een aantal van deze schakelingen kan het zo zijn dat de positeven flank een lagere spanning zou kunnen hebben dan de negatieve flank. Gevolg kan zijn voor decoders die het Lenz ABC protocol gebruiken hierop zou kunnen reageren. Dit gaat theoretisch erg ver maar die mogelijkheid wordt op deze manier uitgesloten.
Groeten Frans
Hallo Frans,
Als de spanning inzakt door het gebruikt van teveel decoders dan is wat anders aan de hand. De spanning kan alleen inzakken door overbelasting van de booster. Dit los je m.i. niet op door de booster "evenwichtig" te overbelasten. Als je nagaat dat een decoder een belasting geeft van 10mA en op een decoder zijn 4 wissels aangesloten, dan betekend dat er met 100mA 40 wissels worden aangestuurd. Ter vergelijking, een lok geeft al een belasting van ongeveer 200mA. Er is dan m.i. een extra booster nodig.
De diode is er om de tegenspanning op de led te elimineren, zie de spec van de OC. Tegenspanning is wat anders dan een piekspanning.
mvg spock
-
Beste mensen,
Dank voor de uitgebreide antwoorden en reacties.
Wat ik uit het geheel begrijp, en voor mij erg belangrijk is, is het feit, dat je met een octocoupler geen grote vermogens (enkele 100-en millieamperes) kan schakelen. Verder duidelijke antwoorden.
Voor mij valt dit principe dus af. Toch maar terug naar een relais (als ik geen hoge frequentie moet schakelen) of een transistor. Eerder heb ik met relais geprobeerd, waarbij de voeding van de Arduino en die van het relais dezelfde waren. Misschien was mijn voeding te licht, maar ik merkte dat de spanning bij aanschakelen van het relais terugzakte van 5 Volt via 4 volt naar 3,5 volt, genoeg gezakt om de Arduino spontaan te laten resetten. Zal het nog eens proberen, maar dan met Arduino en relais ieder een eigen voeding.
Nogmaals dank voor alle antwoorden.
Wim K
-
Voor het schakelen van een relais heb je inderdaad een goeie voeding nodig. Maar ook genoeg ontkoppeling op de voeding. Een extra condensator kan helpen om de inschakelpuls op te vangen.
Ook moet je nooit de on-board 5V regulator van de Arduino om andere dingen dan chips en een paar ledjes te voeden. Daarvoor is hij simpelweg te licht. Gebruik hiervoor een externe (DC-DC converter) regulator.
Timo
-
Ik zou voor de relaisspoelen een hogere voedingsspanning kiezen, b.v. 12V.
Je kan dan vanuit de Arduino een transistor sturen die de onderkant van de relaisspoel naar massa trekt. De bovenkant van de spoel hang je dan aan +12V.
Voordeel is dat de spoelstroom van een 12V relais kleiner is dan van een 5V relais. De basisstroom, die door de Arduino wordt geleverd, kan dan ook kleiner zijn.
-
Hoi Allen
Zo doe ik het ook met de uitgangen van een PIC, deze is namelijk max 20mA, alleen ook een weerstand in de basis.
En als deze aanwezig is een hoger spanning aan de zijde van de of het relais.
Groeten Frans
PS Verder hoeven jullie geen reacties van mij meer te ontvangen op dit forum, zal alleen zo af en toe mee lezen.
Heb het gehad hier.
-
[...]
Eerder heb ik met relais geprobeerd, waarbij de voeding van de Arduino en die van het relais dezelfde waren. Misschien was mijn voeding te licht, maar ik merkte dat de spanning bij aanschakelen van het relais terugzakte van 5 Volt via 4 volt naar 3,5 volt, genoeg gezakt om de Arduino spontaan te laten resetten. Zal het nog eens proberen, maar dan met Arduino en relais ieder een eigen voeding.
Hoe zwaar was die voeding en hoe had je het aangesloten? De Arduino Uno (er even van uitgaande dat je de 'standaard' Arduino bedoelt) zelf wordt gevoed door een klein bemeten regelaar.
Als je al met een vrij hoge spanning binnenkomt, zal die regelaar het al vrij moeilijk gaan krijgen en een extra verbruiker echt niet trekken. Het zou kunnen dat die regelaar z'n uitgangsspanning gaat reguleren, maar eigenlijk lijkt een thermische afschakeling (waarbij alles in 1 klap uit gaat) logischer.
Een transistor die niet helemaal lekker opengestuurd wordt en als regelbare weerstand gaat staan dissiperen, op het randje van overlijden (en lekker stroom trekken), kan een voeding ook onderuit trekken.
EDIT: @ Frans, hoe is dat zo ineens gekomen?