Doel:€250.00
Donaties:€50.00

Per saldo:€-200.00

Steun ons nu!

Laatst bijgewerkt
op 03-01-2024

Vacature: secretaris bestuur
Algemeen

De stichting

Recente berichten

LSM I1 of I2 NMBS Ep IIIa door applor
Vandaag om 04:33:32
De fabriek - Spoor 0 door Hoontje
Vandaag om 02:18:40
Werkspoor Kathedraal als minibaantje. door NS264
Vandaag om 00:49:52
LokSound 4 decoders, files verbeteren (voor Roco b.v. TEE RAm, NS2400, etc) door Biesje
Vandaag om 00:43:09
Mijn eerste H0-modeltreinbaan in aanbouw door DJV
Vandaag om 00:29:34
Digikeijs DR5000 Centrale, vragen en antwoorden door humberthx
Vandaag om 00:23:15
Modelbouwshow Goes door SBBcargo
Vandaag om 00:20:02
US diorama in H0 door Wim Vink
Vandaag om 00:01:32
Pfarrerwinkel bahn door Jelmer
26 februari 2024, 23:49:29
Modelbaan Beltheim. door Wim Vink
26 februari 2024, 23:34:07
Stroomafnames voor rijtuigen met plastic assen. door bask185
26 februari 2024, 23:22:58
meerdere aansluitrails. door Quinzeedied
26 februari 2024, 23:19:51
NS2413 in Nederland? door T.Spat
26 februari 2024, 23:05:38
Kurk, welke dikte gebruiken als demping? door MichielB
26 februari 2024, 23:02:40
Bouw Bührtal III door MichielB
26 februari 2024, 22:56:44
La vie...Sud-Est; zolderbaan met thema zuidoost Frankrijk door Roel1959
26 februari 2024, 22:54:51
NS 6000 (in schaal 0) door FritsT
26 februari 2024, 22:29:52
condensator toepassen ( powerpack) door muiswcp
26 februari 2024, 22:22:44
Brezelbahn in H0, Duitsland tp III. door MichielB
26 februari 2024, 21:58:50
Am Ende der Strecke, modulebaan op 1 M2 door Frank 123
26 februari 2024, 21:54:25
PIMP my S3/6 door Dave.......
26 februari 2024, 21:54:16
De overeenkomst tussen een Ovaalramer en een Motorpost. door FritsT
26 februari 2024, 21:27:05
Bf Kibronn door Benelux795
26 februari 2024, 21:21:41
Wie wilt er een EX-MotorShield8874 door momfer
26 februari 2024, 21:19:03
Nederdam, H0 1970 - 1990 door Pascal77
26 februari 2024, 21:18:22
Toon hier je nieuwe (model-) spooraanwinst(en)... door DV modelspoor
26 februari 2024, 21:04:30
Tips voor een natuurgetrouwe modelbaan door 1200blauw
26 februari 2024, 21:03:25
Driewegwissel en rocrail door GeerC
26 februari 2024, 20:44:49
MTB MP5 duwt door door d.vanaalst
26 februari 2024, 20:43:22
ICR's als museumtrein door Boerammetje
26 februari 2024, 20:43:16
  

Auteur Topic: Schema Arduino DCC decoder  (gelezen 3157 keer)

Wummeke

  • Offline Offline
  • Berichten: 406
Schema Arduino DCC decoder
« Gepost op: 01 december 2023, 17:02:17 »
Op basis van een aantal bestaande ontwerpen, heb ik een eigen ontwerpje gemaakt van een DCC decoder op basis van een Arduino Nano.
De reden dat ik geen bestaand ontwerp gekozen heb, is omdat ik een decoder wil voor eenvoudige seinen verkeerslichten bij mijn Carsystem baantje. Een ander reden is dat ik het leuk vond om weer eens iets nieuws te proberen: het maken van een electronica schema. Ik heb echter een paar "tekortkomingen". Hoewel ik de basisprincipes van de electronica begrijp en in grote lijnen de functie van componenten wel snap, snap ik nog niet helemaal exact waarom er bepaalde componenten op bepaalde plekken noodzakelijk zijn. Vandaar mijn vraag hier of iemand eens naar mijn schema kan kijken en van uitleg, tips en tricks kan voorzien.

Eerst maar eens het schema:


Als bron heb ik geput uit de volgende schema's:
Voor de voeding van de schakeling: http://www.trainelectronics.com/DCC_Arduino/Decoder_board/index.htm
Voor het verzenden van het DCC Ack-signaal: http://www.harald-sattler.de/files/DCC_Monitor_V1.4_sch.jpg
Voor het ontvangen van het DCC-signaal:  https://i.stack.imgur.com/TzGoO.png

Vragen die ik heb:
1. Gaat dit werken?
2. in de voeding schakeling worden een aantal 0.1f (?) condensatoren gebruikt. In de originele tekening zijn er een paar getekend als gepolariseerd, een paar niet. Als je naar de uiteindelijke PCB op die pagina kijkt, dan lijken het daar ongepolariseerde condensatoren op getekend te zijn. Kom ik er mee weg om ongepolariseerde condensatoren te gebruiken?
3. Volgens mij is (voornamelijk) C2 bedoelt om de spanning constant te houden, klopt dat? Waar is dan de functie van de overige condensatoren?
4. De exacte functie van D2 en D3 zijn mij ook niet helemaal duidelijk.
5. Als ik naar dit schema kijk: https://www.opendcc.de/elektronik/HW5_swiss/SignalDeco_Schaltplan.gif dan lijk de voedingschakeling daar ook een stuk minder ingewikkeld. Is mijn voedingsschakeling niet een beetje "over-engineered"? Dat schema neemt overigens geen power van het DCC-signaal af, wellicht dat dat er mee te maken heeft?
6. De schakeling voor het ack-signaal (vanaf pin D3 van de Arduino tot aan D5) heeft met D5 zijn eigen gelijkrichter. Ik vroeg mij af, waarom kan ik die niet achterwegen laten en de schakeling op D1 aansluiten?
7: Staat D5 eigenlijk wel goed aangesloten? Moet die niet een kwartslag worden gedraaid?
« Laatst bewerkt op: 01 december 2023, 17:14:00 door Wummeke »
Gr,

Jan Willem

Fritsprt

  • Offline Offline
  • Berichten: 2617
Re: Schema Arduino DCC decoder
« Reactie #1 Gepost op: 01 december 2023, 17:15:10 »
R1 lijkt mij aan de lage kant. Minimaal 1k5 gebruiken

0,1uF is 100nF. Deze condensatoren zijn niet gepolariseerd en dienen voor HF onderdrukking.  Overigens zit er een basis fout in het (condensator)schema rondom de 7805. De capaciteit op de ingang moet groter zijn dan de capaciteit op de uitgang om beschadiging van de 7805 te voorkomen. Dus C1 moet bijvoorbeeld 470uF zijn en C2 47uF. C3 kan je gewoon handhaven.
D2, D3, C4, C5 en C6 kan je volgens mij laten vervallen.

Bruggelijkrichter D5 is inderdaad fout aangesloten. Deze moet met de wisselspanningsaansluitingen aan het DCC signaal gekoppeld worden. Je kan inderdaad met één gelijkrichter volstaan (D1)
« Laatst bewerkt op: 01 december 2023, 17:34:00 door Fritsprt »
Groet Frits

bask185

  • Offline Offline
  • Berichten: 3910
Re: Schema Arduino DCC decoder
« Reactie #2 Gepost op: 01 december 2023, 17:31:11 »
7). Ja, plusje moet boven.

Maar ik zou het hele ack gebeuren weglaten. Je hebt er niet veel aan ofzo.

Bas
Train-Science.com
Train-Science github
It ain't rocket science ;-)

Patrick Smout

  • Offline Offline
  • Berichten: 413
Re: Schema Arduino DCC decoder
« Reactie #3 Gepost op: 01 december 2023, 18:34:55 »
Met de ACK schakeling is nog meer aan de hand.
Volgens DCC norm moet dit een puls zijn van minimaal 60mA. Het probleem is dat de CNY17-1 een CTR ( current transfer ratio of versterking) heeft van 40-80%. Dit betekent dat je minimaal 60/0,4 = 150mA door de LED van de opto moet jagen om zeker te zijn dat er 60mA zal vloeien. De microcontroller trekt dat helemaal niet en de LED van de opto mag ook max. 60mA hebben. Een mogelijkheid zou zijn om een CNY17-4 te nemen (CTR 160-320) en dan kom je op ongeveer 37mA LED stroom. Dit is ok voor de LED in de opto en net ook ok voor de Nano (40mA per IO pin) .
Verder is het geen goed idee om opto's te nemen waarvan de basis naar buiten gevoerd is en die dan zwevend te laten. Kan je beter een opto nemen waarvan de basis niet naar buiten gevoerd is.


« Laatst bewerkt op: 01 december 2023, 18:45:44 door Patrick Smout »
Met vriendelijk groeten,

Patrick Smout

Wummeke

  • Offline Offline
  • Berichten: 406
Re: Schema Arduino DCC decoder
« Reactie #4 Gepost op: 01 december 2023, 21:27:53 »
@Frits:
Bedankt Frits, voor je antwoord. Ik heb nog even rond gekeken voor wat betreft R1. De meeste schema's hebben een 1K weerstand tussen het DCC signaal en de optocoupler zitten. Maar ik kom er inderdaad ook tegen waar een 1k3 of 1k5 weerstand voor zit. Klopt het dat deze weerstand er zit om het voltage naar beneden te brengen ter bescherming van de LED in de optocoupler? Dan kan ik waarschijnlijk uit het datasheet van de optocoupler de juiste weerstandswaarde afleiden.

Voor wat betreft de condensatoren rond de 7805: is er een bepaalde verhouding tussen de C voor en de C na de 7805? Of zijn er minimum waardes? in het datasheet staat bijvoorbeeld een voorbeeld met een 0.33uF en een 0.1uF condensator. Maar dat is wellicht toepassings afhankelijk?

@Bas:
Bedankt Bas! Ik heb in mijn schema de diodebrug een kwart gedraaid. Je opmerking over die ack laat ik voor nu even links liggen, for the sake of education  ;) Ik wil beter begrijpen hoe de electronica werkt. In de software ben ik wel thuis, nu de hardware nog.

@Patrick:
Ook jij bedankt Patrick voor je input. Ik denk dat ik je uitleg met betrekking tot de CNY17-1 vs CNY17-4 begrijp. Het is dus kwestie van de versterkingsfactor en het maximum vermogen wat de Nano kan leveren waar ik vooral op moet letten. Overigens zit in dit schema nog een transistor achter de optocoupler. Waarschijnlijk om het signaal van de optocoupler verder te versterken?

Alleen je opmerking over "de basis die naar buiten word gevoerd" is mij niet helemaal duidelijk. Bedoel je daar mee pin 6 van de optocoupler? Zou ik die met een pull-up of pull-down weerstand hoog of laag moeten maken? Heb je anders een suggestie voor een optocoupler zonder een dergelijk naar buiten gevoerde basis?
Gr,

Jan Willem

Jeroen Vreeken

  • Offline Offline
  • Berichten: 295
Re: Schema Arduino DCC decoder
« Reactie #5 Gepost op: 01 december 2023, 21:57:11 »
De 1k weerstand zit er inderdaad om de LED in de optocoupler van een geschikte stroom te voorzien.
Deze LED heeft een forware voltage van 1.1 tot 1.7V
De recommended forward current is 5mA to 15mA (en maximaal 20mA)
De DCC spanning is iets tussen 7 en 27V.

Je kunt dus uitgaan van twee uitersten:
Een DCC spanning van 7V met een LED die 1.7V drop heeft, dan mag de weerstand niet groter dan 1060 Ohm zijn, anders loopt er geen 5mA.
Een DCC spanning van 27V met een LED die 1.1V drop heeft, dan mag de weerstand niet kleiner zijn dan 1295 Ohm, anders loopt er meer dan 20mA.

Geen enkele waarde is dus goed voor de hele range.... Maar 7V is simpelweg niet realistisch, ik zou dus voor een veilige waarde gaan. Met 1k5 werkt het al vanaf zo'n 9V en er gaat zeker niks kapot.

Wummeke

  • Offline Offline
  • Berichten: 406
Re: Schema Arduino DCC decoder
« Reactie #6 Gepost op: 01 december 2023, 23:29:10 »
Dank je wel Jeroen, dat klinkt logisch! ik heb de weerstandswaarde aangepast.

Ook de rest van de tips heb ik verwerkt. Als alternatieve optocoupler voor het ack circuit heb ik een PC817 gekozen, geïnspireerd door dit schema. De PC817C variant zou de juiste CTR waarde moeten hebben om genoeg mA te kunnen leveren voor het ack signaal, zonder de Arduino te veel te belasten. Ook de transistor daarachter heb ik overgenomen uit dat schema. Het totaal plaatje ziet er dan zo uit:



Gr,

Jan Willem

Bert55

  • Offline Offline
  • Berichten: 571
Re: Schema Arduino DCC decoder
« Reactie #7 Gepost op: 01 december 2023, 23:47:21 »
Ik snap de functie van de PC817 niet. De transistor erachter hangt met de collector aan de 0, met de emitter via een weerstand aan de plus, verder niet.
Met vriendelijke groet, Bert
Märklin, DCCnext, ECOS
Bouw Witmoosdorf met zoon Rutger: 
  https://forum.beneluxspoor.net/index.php?topic=103485.msg3222322200#top

Wummeke

  • Offline Offline
  • Berichten: 406
Re: Schema Arduino DCC decoder
« Reactie #8 Gepost op: 02 december 2023, 09:30:29 »
Hi Bert. Mijn aanname is, dat de transistor achter de pc817 het signaal nog een beetje versterkt. Ik heb dit deel van het schema overgenomen uit het schema waar ik naar verwijs in mijn post. Volgens mij heb ik het correct overgenomen maar wellicht zie ik iets over het hoofd of interpreteer ik de functie van de componenten verkeerd?
Gr,

Jan Willem

Bert55

  • Offline Offline
  • Berichten: 571
Re: Schema Arduino DCC decoder
« Reactie #9 Gepost op: 02 december 2023, 10:09:50 »
Wat is de bedoeling van D3 op Nano? Een uitgang? Dan zit de optocoupler verkeerd om, de uitgang moet aan de plus van de led zitten. Dan doet de uitgang van de opto nog steeds niets. De emitter zit aan een weerstand, verder zit er niets aan.
Is de D3 een ingang dan werkt het ook niet.
Eigenlijk is de vraag: wat is de bedoeling van dat component.
Met vriendelijke groet, Bert
Märklin, DCCnext, ECOS
Bouw Witmoosdorf met zoon Rutger: 
  https://forum.beneluxspoor.net/index.php?topic=103485.msg3222322200#top

meino

  • Offline Offline
  • Berichten: 2054
Re: Schema Arduino DCC decoder
« Reactie #10 Gepost op: 02 december 2023, 10:25:10 »
Toch begrijp ik iets niet, waarom zo ingewikkeld? Ik gebruik alleen de schakeling van Dave Falkenberg (https://i.stack.imgur.com/TzGoO.png), de 5v die dit nodig heeft komt van de 5v pin op de arduino. Verder heb ik een 12v ringleiding, de benodigde 5-6v voor de servos komt van step down convertor geplaatst dicht bij de servo's.

Groet Meino
A clean desk is a sign of an empty mind

Kranenberg
De CanBus komt naar Kranenberg

Patrick Smout

  • Offline Offline
  • Berichten: 413
Re: Schema Arduino DCC decoder
« Reactie #11 Gepost op: 02 december 2023, 11:58:28 »
Overigens zit in dit schema nog een transistor achter de optocoupler. Waarschijnlijk om het signaal van de optocoupler verder te versterken?
Klopt, deze schakeling versterkt idd het signaal van de optocoupler. Ipv. 40% krijg je nu een totale versterking van 40% x Hfe (versterking) van de transistor en die is minimaal 100 voor dit model. Komt dus op ongeveer 40 watmaakt dat een LED stroom van 1,5mA voldoende is. Meer technisch, de getoonde NPN/PNP combinatie is een zogenaamd Sziklai paar. Schakeling is nauw verwant aan een darlington schakeling echter met een aantal voordelen maar dat gaat voor hier te ver.
Bedoel je daar mee pin 6 van de optocoupler? Zou ik die met een pull-up of pull-down weerstand hoog of laag moeten maken? Heb je anders een suggestie voor een optocoupler zonder een dergelijk naar buiten gevoerde basis?
Het schema is in tussentijd al aangepast maar het gaat idd over pin 6. Zomaar aan Gnd leggen of aan Vcc via een weerstand is geen oplossing. De basis wordt naar buiten gebracht om de transistor op een bepaald werkpunt in te stellen. Wordt gebruikt bij analoge toepassingen, hier is de toepassing digitaal en ben je daar niets mee. Meer nog, zo'n pin die los hangt kan rommel oppikken waardoor de schakeling niet meer doet wat je zou verwachten. 
Met vriendelijk groeten,

Patrick Smout

Patrick Smout

  • Offline Offline
  • Berichten: 413
Re: Schema Arduino DCC decoder
« Reactie #12 Gepost op: 02 december 2023, 12:06:48 »
Wat is de bedoeling van D3 op Nano? Een uitgang? Dan zit de optocoupler verkeerd om, de uitgang moet aan de plus van de led zitten.
Is inderdaad een uitgang maar de anode van de opto LED moet aan de +5V hangen. Kathode hangt goed zo. Fout in het schema.
Dan doet de uitgang van de opto nog steeds niets. De emitter zit aan een weerstand, verder zit er niets aan.
Dit is een DCC ack schakeling. Bij het uitlezen/programmeren van een decoder wordt het stroomverbruik via het DCC signaal pulserend verhoogd (>=60mA gedurende minimaal 6ms). De centrale kan dit detecteren en zo worden 0/1 overgedragen van een decoder naar de centrale. Bij een loc is dit bvb de motor die als stroomverbruiker gebruikt wordt, hier een weerstand.
Met vriendelijk groeten,

Patrick Smout

Bert55

  • Offline Offline
  • Berichten: 571
Re: Schema Arduino DCC decoder
« Reactie #13 Gepost op: 02 december 2023, 12:29:57 »
Ah Patrick, dat verklaard het.
Dan “zit” ik nog met R5, ~50mA door de opto…..?
Met vriendelijke groet, Bert
Märklin, DCCnext, ECOS
Bouw Witmoosdorf met zoon Rutger: 
  https://forum.beneluxspoor.net/index.php?topic=103485.msg3222322200#top

Jeroen Vreeken

  • Offline Offline
  • Berichten: 295
Re: Schema Arduino DCC decoder
« Reactie #14 Gepost op: 02 december 2023, 13:07:24 »
R5 is inderdaad aan de grote kant. Maar het is geen 50mA (wat overigens volgens de datasheet van de PC817 nog net mag).
Forward voltage is 1.2V bij 20mA (typical)
Dus R = (5-1.2)/0.020 = 190 Ohm
Zelf zou ik 330 Ohm nemen voor R5. (De current transfer rate heeft een piek tussen 10mA en 20mA)