BeneluxSpoor.net forum
Vraag en antwoord => Elektronica en analoog => Topic gestart door: Dennis1984 op 09 November 2025, 22:24:29
-
Ha,
Begin dit jaar ging ik proberen een van de bestaande OpenDCC BiDiB-decoders te "resizen" naar een printplaatje van 5 bij 8 cm, omdat ik dat een handig formaat vindt en heb besloten dat formaat printplaten op mijn modules te gaan gebruiken (ruimte is daar beperkt met het idee wat ik heb).
Dat project slaagde op zich, maar ik bleef tegen die sterk verouderde Atxmega's aan lopen die op die printplaten gebruikt worden. Die bovendien ontzettend duur zijn bij JLCPCB.
Lang verhaal kort heb ik toen besloten zelf maar wat BiDiB-decoders te gaan ontwerpen from scratch. Na wat maandjes denkwerk, wat maandjes tekenen en al die tijd learning on the job (ook via tientallen YouTube-video's) heb ik inmiddels een vijftal printplaten gereed: een BiDiB-interface (met USB-PD aansluiting), een BiDiB-RailCom 16-voudige feedbackmodule, een BiDiB PowerBoard om op elke module de stroom te verdelen, een 8-voudige BiDiB servodecoder en tot slot een 32-voudige BiDiB leddecoder. Nog een aantal ontwerpen ben ik een heel eind mee op weg. Eerlijk is eerlijk: ik heb af en toe ook een AI-hulplijn ingeschakeld ;D.
Alle modules zijn op dezelfde manier opgezet: zelfde formaat, zoveel mogelijk hergebruik van componenten over de verschillende printplaten, duidelijke statusindicatoren van voeding en systeem met leds, omzetten van spanningen in principe met bucks en gebruik van moderne chips. Dat laatste vind ik stiekem ook wel een leuk aspect: lekker ontdekken wat voor mooie chips er wel niet allemaal te vinden zijn op internet. De centrale microcontroller is steeds een STM32C091. Alleen bij de feedback-module ben ik daarvan afgeweken want daar moet ik 16 ADC-kanalen hebben en dan moet je uitwijken naar de STM32F3 of G4 (ik heb de laatste gekozen).
Ook goed om te weten: doel van de printplaten waar iets op aangesloten is is om er steeds een 'hat' op te plaatsen waar soldeerpads op komen. Ik ga draden dus niet vastschroeven maar het idee is dat je heel makkelijk de boel kunt solderen op de hat. Lekker solide. De printplaten komen ook niet aan de onderkant van de modules te hangen, maar plaats ik aan de achterkant zodat je er eenvoudig bij kunt en ook direct aan de lampjes kunt zien of alles goed werkt.
De 32-voudige leddecoder wil ik binnenkort laten fabriceren in China. Zelf solderen is met de kleine componenten die ik heb gekozen in principe niet meer mogelijk. De laatste missende componenten heb ik net besteld en komen ergens begin december binnen. En ik dacht: misschien vindt iemand het leuk om nog even een laatste blik mee te kijken of ik nog ergens een domme fout gemaakt heb. Ik doe deze als eerste omdat hij het simpelst is (en daarom ook het goedkoopst) en er veel ruimte is om een groot aantal testpads te plaatsen, zodat ik bij het schrijven van de software (ergens volgend jaar beginnen) makkelijk kan debuggen.
Plaatjes:
(https://images.beneluxspoor.net/bnls_2025/BiDiB-LedControl32-69110516273e6.png) (https://images.beneluxspoor.net/bnls_2025/BiDiB-LedControl32-69110516273e6.png)
(https://images.beneluxspoor.net/bnls_2025/Board-0-6911052e763d9.png) (https://images.beneluxspoor.net/bnls_2025/Board-0-6911052e763d9.png)
PDF van het schema hier: klik (https://drive.proton.me/urls/6JE1RZGE5C#0dHAhTl0f6Pm)
PDF van de printplaat (alle 4 koperlagen en fab) hier: klik (https://drive.proton.me/urls/1JXWB7GRZ0#znTQ2Kfnmv9C)
Elke tip, suggestie of verbetering is welkom. Als ik nog iets moet toelichten: vraag het vooral.
Met vriendelijke groet,
Dennis
-
Ook goed om te weten: doel van de printplaten waar iets op aangesloten is is om er steeds een 'hat' op te plaatsen waar soldeerpads op komen. Ik ga draden dus niet vastschroeven maar het idee is dat je heel makkelijk de boel kunt solderen op de hat. Lekker solide. De printplaten komen ook niet aan de onderkant van de modules te hangen, maar plaats ik aan de achterkant zodat je er eenvoudig bij kunt en ook direct aan de lampjes kunt zien of alles goed werkt.
Ik ben heel benieuwd hoe dat solderen van draden op de print je gaat bevallen.
Printplaten aan de onderkant van een module heb ik inmiddels ook als "absoluut niet handig" bestempeld. Leds op een printplaat die van alles aangeven is wel weer superhandig ;D
-
Inderdaad Albert. Ik zie het bij ons op de club: het is een crime om overal bij te kunnen. Wat je wil is gewoon alles eenvoudig toegankelijk aan de achterzijde. Maar ruimte aan de achterkant is doorgaans wel meer beperkt en vandaar dus mijn drive om alles zo klein mogelijk te maken.
Met vriendelijke groet,
Dennis
-
Als ruimte aan de achterkant beperkt is, waarom dan niet aan de voorkant?
-
Omdat aan de voorkant helemaal geen ruimte is ;D. Het gaat om modulebakken en de voorkant moet er mooi uitzien zonder elektronica.
Met vriendelijke groet,
Dennis
-
Hi Dennis
Ziet er heel mooi uit. Het enige dat ik zou kunnen opmerken, is dat je geen beveiliging hebt / lijkt te hebben voor het geval de polarisatie verkeerd wordt aangesloten.
Het ziet er echt mooi uit. Redelijk wat originele / nieuwe componenten, die ik niet vaak elders zie. Je bent niet bang wat nieuws te proberen. Daar houd ik van (y)
Ik denk dat de software best wel een uitdaging gaat worden. Je gebruikt daarvoor Cube van STM? En neem je, net als OpenDCC/Bidib, een RTOS? Of worden het makkelijk herbruikbare Arduino libraries? Het zou mooi zijn als er zoiets komt.
Leuk!
Aiko
-
Ha Aiko,
Dank voor je feedback. De reverse polarity protection heb ik wel op de printplaat zitten in de eFuse (https://www.ti.com/product/TPS25947) waar de stroom op binnenkomt. De 'unieke' componenten word ik een beetje toe gedwongen omdat ik het allemaal zo klein wil maken ;D.
Voor wat betreft de software: ik weet nog niet of ik dat in STM32Cube ga maken of op een of andere manier in Visual Studio Code. Ik neig naar deze laatste, omdat er veel betere support in zit voor AI. Maar ik vind het opzetten van het een en ander wel ingewikkelder dan met Atmel Studio. Een RTOS ben ik niet van plan te gebruiken, ik wil eigenlijk gewoon native C libraries maken en dat aan elkaar knutselen.
Mij lijkt het inderdaad handig als er een goede BiDiB library komt. Ik zag laatst nog ergens iets van een universiteit waar ze een modern protocol zochten voor modelspoor. BiDiB kwam langs in hun analyse van geschikte protocollen, maar ze gingen het niet gebruiken omdat er geen goede vrije implementaties waren. Gemiste kans.
Ik kwam trouwens nog een klein foutje tegen: ik heb de PCA9685 chips gekloond in het schema maar ben nog vergeten het I2C adres aan te passen bij de tweede chip. Dat moet ik nog even fixen.
Met vriendelijke groet,
Dennis
-
Hi Dennis
Ja, klopt. Ik zat even te kijken naar een MOSFET, maar je hebt de TPS25947. Een mooi voorbeeld van wat ik eerder schreef over je keuze voor nieuwe type componenten. Vooral de inrush protectie van de TPS25947 lijkt me interessant. Misschien dat ik die ook maar moet gaan gebruiken in volgende schakelingen.
Als je in VS code gaat werken, hoop ik dat je een Bidib implementatie maakt die binnen de Arduino library structuur past. Ik weet ook eigenlijk niet of je daar op een STM toch (zoals de “trage” XMega) specifieke hardware (zoals DMA) voor moet gebruiken, of dat je het generiek kan maken. Als je toch specifieke hardware peripherals gaat gebruiken, dan hoop ik dat je de processor specifieke code in aparte “drivers” kan stoppen, die je met #ifdef en #includes kan selecteren.
Leuk:-)
Aiko
-
Ha Aiko,
Hoe ik precies een en ander ga opzetten moet ik nog bedenken. Ik heb al wel eens voor microcontrollers software geschreven, maar ik vind de STMCube software alleen al complex ogen. Als ik het een beetje goed heb begrepen is het in ieder geval wel wenselijk om UART verkeer via de DMA aan te spreken. Maar dat hoeft me natuurlijk niet te beletten om de daadwerkelijke BiDiB-implementatie in een library te stoppen.
Met vriendelijke groet,
Dennis
-
Hi Dennis,
Dit ga ik volgen, heb ook al eens naar BiDiB gekeken, technische een heel mooi systeem, alleen de prijs van modules, die is wel stevig.
Gaaf dat je gaat werken aan open source alternatieven, ben zelf ook groot fan van open source software.
Een open source library zou idd heel mooi zijn, zeker als die Arduino compatible is, zonder er afhankelijk van te zijn, dan kan deze nog breeder ingezet worden :)
Ben zelf bezig met het ontwikkelen van open source software voor het aansturen van een modelspoorbaan, heb nog geen BiDiB ondersteuning, ff een set kopen om het goed te kunnen test is me nog wat te duur.
Ben je ook van plan ze op ten duur aan te gaan bieden als product?
Groeten,
Reinder
-
Hallo Reinder,
Geen plannen ze aan te gaan bieden. Op basis van hoe de printplaat er nu uit ziet qua componenten kom ik op zo'n € 250 - € 300 voor een proefserie van 5 stuks bij JLCPCB. De grap is dat dat dus al goedkoper is dan de commercieel aangeboden producten. Maar... als je er bijvoorbeeld 20 laat maken daalt de stuksprijs significant. Ik denk dat er dan maar zo'n € 100,- bij komt, dus dan zit je op een moduleprijs van € 20,- per stuk.
Leuk dat jij met Traintastic bezig bent: goede open source modelspoorsoftware is ook welkom. Ik vind RocRail veel te ingewikkeld en dan heb ik zelfs nog een IT-achtergrond. Bovendien staat de ontwikkelfilosofie waarbij er eigenlijk geen stabiele versies zijn me niet aan: dat is leuk om (thuis) te hobbyen maar niet geschikt voor beurzen waar bedrijfszekerheid van belang is. Vind ik dan tenminste.
Mocht ik t.z.t. een BiDiB setje over hebben kan ik hem wel naar je toe sturen. Hoe lang heb je nodig om een protocolimplementatie te doen denk je?
Met vriendelijke groet,
Dennis
-
Hi Dennis,
JLCPCB is een hele mooie service, viel mij ook al op dat met wat hogere aantallen het een heel stuk goedkoper is. Heb er nu 2x wat laten maken incl. assembly, zit te broeden op een 3e projectje :)
Traintastic is nog wel een flinke klus, maar dat houd me van de straat. Mn doel is een makkelijk te leren programma te ontwikkelen. Persoonlijk vind ik de RocRail UI heel rommelig, er staat heel veel in beeld, lang niet alles is relevant. In Traintastic heb ik de UI zo gemaakt dat je alleen de relevante dingen ziet, b.v. als je verbinding maakt via netwerk met een LocoNet centrale, dan zie je geen seriele poort settings op dat moment.
Als ik tijdelijk een BiDiB setje zou kunnen lenen zou dat super zijn! BiDiB is wel ff een klus verwacht ik uitgebreid protocol en zal ook wat extra UI dialoogjes vereisen, schat 2 a 3 maand doorloop tijd.
Groeten,
Reinder
-
Ik vond iTrain aanvankelijk helemaal ruk om een sporen plan in te tekenen. Eerst op een vakje klikken dan op een onderdeel klikken....
Totdat ik hetzelfde ging doen in Rocrail, ik snapte daar al helemaal niks van. Ik denk dat het sporenplan tekenen in rocrail kwa gebruikersvriendelijk een diepte punt is. Toen vond ik iTrain op eens zo erg niet meer.
Als ik een toolbar heb, wil ik gewoon een ding kunnen slepen naar ze plek toe. Makkelijker dan dat, kan haast niet.
Op basis van hoe de printplaat er nu uit ziet qua componenten kom ik op zo'n € 250 - € 300 voor een proefserie van 5 stuks bij JLCPCB
Dan heb je of veel extended dingen of dure dingen gepakt.
Als ik nu 10 stuks van mijn 8 voudige spoel decoder zou bestellen, kom ik op €116.71. Ik kan dan nog net global standard line shipping gebruiken. Geen achteraf rekeningen met inklaringskosten ed. Er komt nog wel iets van ~€2,50 bij per stuk aan die screw terminal plugjes. Maar 8 voudige 5A spoeldecoders voor < €15 per stuk. Tel uit je winst ::).
Mvg,
Bas
-
Dat klopt Bas, alleen ontwerp ik mijn printplaten niet om zo goedkoop mogelijk te zijn, maar om zo compact mogelijk te zijn (en daarbij ook nog goed te werken).
Bepaalde componenten, zoals mijn efuse, vereisen min of meer via's van 0,25mm. Kies je die optie bij jlcpcb dan schiet je printplaat prijs omhoog en kun je ook niet meer basic assembly doen.
Op zich was dat laatste toch al niet interessant omdat ik vanwege de kleine componenten zoveel extended parts heb dat advanced goedkoper is (omdat extended parts bij advanced niet 2,60 maar 1,30 o.i.d. per reel zijn). Maar goed, al met al zit je dan wel in een andere prijsklasse.
Met vriendelijke groet,
Dennis
-
Nu ook maar een printplaat gemaakt voor ( 8 ) servo's:
(https://images.beneluxspoor.net/bnls_2025/BiDiB-ServoControl8-69230109da0b4.png) (https://images.beneluxspoor.net/bnls_2025/BiDiB-ServoControl8-69230109da0b4.png)
En voor het aansturen van 16 (of 8 dubbele) magneetartikelen of motoren (zoals de MTB MP-series):
(https://images.beneluxspoor.net/bnls_2025/BiDiB-SolenoidControl16-69230160624a0.png) (https://images.beneluxspoor.net/bnls_2025/BiDiB-SolenoidControl16-69230160624a0.png)
En het bijhorende relais-bordje dat je aan de bovengenoemde decoders kunt connecten:
(https://images.beneluxspoor.net/bnls_2025/BiDiB-RelayAddOn-6923018ecf6be.png) (https://images.beneluxspoor.net/bnls_2025/BiDiB-RelayAddOn-6923018ecf6be.png)
Deze printplaten zijn bedoeld voor mijn nieuwe modulaire baan. Op elke module komt ook een 'stroomverdeler' die de stroom (en het DCC-signaal) verdeelt over de geplaatste modules:
(https://images.beneluxspoor.net/bnls_2025/BiDiB-PowerBoard-692301c4a6b81.png) (https://images.beneluxspoor.net/bnls_2025/BiDiB-PowerBoard-692301c4a6b81.png)
Nu nog even aan de slag met een decoder om stepper motoren of gewone motoren aan te sturen. Die heb ik ooit al eens in concept gemaakt maar na alles wat ik de afgelopen maanden geleerd heb moet daar nog wat rework aan gebeuren - ook om hem goed te integreren in dit concept :). Daarna moet ik nog een BiDiBus-hub af maken en tot slot een terugmelder. Ik ben nog ff bezig maar het schiet wel op zo.
Feedback, tips of vragen zijn welkom hoor ;D.
Met vriendelijke groet,
Dennis
-
Dennis, een zeer interessante ontwikkeling! Top gedaan.
Een vraag, waarom kies je voor een 18v voeding voor de decoder printen en niet voor bv 5v?
-
Ik heb 1 serieus punt van kritiek op de boards. En dat is dit
(https://images.beneluxspoor.net/bnls_2025/afbeelding-69236c15cece7.png) (https://images.beneluxspoor.net/bnls_2025/afbeelding-69236c15cece7.png)
Male headers en draadjes dat gaat niet samen. Ja je kan van dupont connectoren pakken en zelf al je wissel draden in elkaar krimpen, maar zelfs dan is het nog niks. En dat is best veel werk om te doen.
Ik zou op zijn allerminsts kijken naar 2.54mm screw terminals (C474921), die hebben ze bij JLCPCB. Persoonlijk vind ik die te klein en pak daarom 3.5mm. Die gaan echter niet op jouw board passen als ik zo kijk.
Verder heb ik een paar observaties waarmee je iets kan doen of niet. Zijn deels ook mening dingetjes.
Wat je doet met die relais uitbreiding, vind ik slim maar ook erg duur. Ik zie dat je een zes polige connector heb tussen de 2 printen, nou dat is prima. Maar dan zie ik een shitload aan elektronica op die relais kaart en ik niet bevatten waarom je dat nu vrijwillig doet.
Als je door die connector 12V voert, had je de relais kaart kunnen uitvoeren met 2x 74HC595 schuifregisters, een tweetal ULN2803 en een 5V spanningsregulator. Als je de 5V ook doorvoer heb je de spanningsregulator ook niet nodig. Dan kan je hem ook nog een keer daisychain-baar maken. Als jij namelijk met je spoeldecoder 8 elektrofrogs gaat aansturen met spoelaandrijving, dan heb je 2 relais per wissel dus 16 relais totaal nodig. En anders kan je nog I2C extenders pakken, maar dat is iets duurder. Ik zag SDL en SCL test pads, dus ik vermoed dat je I2C gebruik tussen de relais print en basis print?
Ik had zelf ook een insteek (letterlijk) voor relais printen. Ik heb uiteindelijk 2 versies, eentje met een enkele bistabiel relais en een met 2 monostabiel relais. En dat heeft bepaalde voordelen. Ik had eerste relais DCC decoders in de buis maar die heb ik vervangen door insteek modules
Die bovenste is de latching relay. Die is alleen goed voor unifrog wissels. Het idee is dat je screw terminal plug uit de decoder trekt, de relais printplaat, prik je dan in de decoder en de plug steek je dan weer in de andere kant van de relaisprint. De wisseldraden worden van links naar rechts gewoon 1 op 1 doorgevoerd.
Als je dan niet die 'male' plug soldeert maar een conventionele screw terminal. Dan kan je de relais zelf dicht bij de wissel plaatsen. En het ding kan je dan met elke andere decoders of standalone (denk aan viesmann 5552) gebruiken. Dit maakt hem veelzijdig.
Die print met 2 monostabiele relais, noem ik general purpose. Het zijn gewoon 2 monostabiele relais die je met een decoder uitgang kan schakelen. Niks fancy aan.
(https://images.beneluxspoor.net/bnls_2025/afbeelding-692372ab97d3e.png) (https://images.beneluxspoor.net/bnls_2025/afbeelding-692372ab97d3e.png)
Die general purpose relais, kan je aansluiten op zowel spoel als servo decoder. En ook hier gaat op, vervang de plug door een rechtstreekse screw terminal en hij is multi-inzetbaar. Met die general purpose kan je voor de servo decoder zowel unifrog als elektrofrog wissels afhandelen. En op de spoel decoder kan je voor alles gebruiken eigenlijk. Op die servo decoder heb ik ook een PCA9685 gezet, en ik had 8 pinnen over.. Dus die pinnen gaan naar een ULN2803, en daarmee kan ik mijn 8 relais schakelen.
Ik heb ze nog niet geprototyped, maar het zou ongeveer €3,50 fabricage kosten per relais print bedragen. En dan heb ik het over die dubbele! Dus €1,75 per relais.
Nog een handigheid is dat ze ook in through-hole variant bestaan, de printen. Die SMD dingen moet je eigenlijk (hoeft niet perse) als panel bestellen, dat is voordelig... per stuk maar je hebt dan wel meteen veel stuks ook ::). Enfin, die through hole dingen, kan je gewoon los kopen, als je wilt proberen of je hebt er weinig nodig.
(https://github.com/Open-Source-Model-Railway-Electronics/OS-relays/raw/main/docs/all.png)
Laatste handigheid. Dit zie je niet in de verouderde afbeelding, maar de printen zijn even breed als de connector afstand op de decoders. Dat betekent, als ik een panel bestel van 2x12 dan kan ik ze afbreken in groepjes van vier. Die kan ik dan als 1 unit in de decoder pluggen.
En wat gewoon mooi is, stel nu dat ik op mijn 8 voudige spoeldecoder slechts 1 relais wil hebben... dan kan dat gewoon. In jouw opstelling, als ik 1 relais nodig heb voor.. iets, dan heb ik er meteen 8.. met dure elektronica er bij.
Ik zeg niet dat wat ik doe beter ik. Ik zeg wel dat het anders, goedkoper en flexibeler is.
En lang leve Open hardware. Dat staat ook onderop m'n decoders en dingetjes
(https://images.beneluxspoor.net/bnls_2025/afbeelding-692377da8852a.png) (https://images.beneluxspoor.net/bnls_2025/afbeelding-692377da8852a.png)
Mvg,
Bas
-
Ha Bas,
Altijd blij met jouw feedback hoor: je bent op dit gebied 1000x zo ervaren als ik ;).
Had ik er misschien even bij moeten vertellen maar op alle bordjes komt een 'hat' printplaat (zie dat ik het in het eerste bericht van het topic wel genoemd had). Op de hat worden alle draden afgemonteerd en ik doe dat zelf middels solderen. Je zou er ook voor kunnen kiezen een hat te maken met schroefterminals. Het idee van de hat is dat je die heel makkelijk los kunt halen om de decoder te servicen of te vervangen. Dus niet 16 draden losschroeven en dan de boel uitwisselen en hopen dat je daarna alles goed gelabeld hebt als je het weer terug wil hangen.
Ja dat relais bordje dat is lastig te begrijpen als je niet het schema ziet om het uit te vogelen ;D. Maar wat ik daar heb ingebouwd is DCC detectie: 24 voltage dividers die de inkomende en uitgaande signalen omzetten naar 3.3V. Die gaan naar drie 8-bit analoge multiplexers (bovenin de printplaat) en vanaf daar naar drie ADC kanalen op de stm32 (c091). Doel is om te testen of het relais werkt en dat terug te melden. Nooit meer kortsluiting dus omdat een relais stuk is. Beetje nerdy idee ::).
Hier een plot van het relevant gedeelte van mijn schema (moet sommige dingen nog even netjes maken, zoals de connectors onderaan de pagina en het artikelnummer en JLCPCB-nummer bij de relais klopt ook niet):
(https://images.beneluxspoor.net/bnls_2025/Schematic-5-6923a00351338.png) (https://images.beneluxspoor.net/bnls_2025/Schematic-5-6923a00351338.png)
Verder zie je twee gescheiden circuits maar dat had je denk ik al uitgevogeld: er is een 3.3V circuit die vanaf de 6-polige connector komt (en inderdaad, daar zit ook de I2C op die ik gebruik tussen de bordjes) en de mcu voedt en er is een 5V circuit waarmee de relais aangestuurd worden. Daartussen zit een optocoupler met een flyback diode. Daarnaast nog 16 statusleds voor de relais die direct vanuit de microcontroller aangestuurd worden. Had ik natuurlijk ook rechtstreeks aan de inputs van de optocoupler kunnen hangen maar dan ben ik minder flexibel en kan ik niet visueel aangeven of het dcc testcircuit de correcte werking van het relais heeft bevestigd.
Je punt over de 16 relais is trouwens valide, daar zit ik ook een beetje mee. Ik wilde hem daisy chainen maar zit een beetje met de ruimte: die is echt he-le-maal vol.
Ik vind jouw oplossing met die insteekmodules superhandig en slim bedacht. Enorm flexibel zo. Prima oplossing voor de meeste modelbanen, maar ik heb mezelf ten doel gesteld om alles op 5 bij 8 cm bordjes te produceren. Ik wil dit gebruiken voor mijn (modulaire) treinbaan en daar komt alle elektronica aan de achterzijde (verticaal geplaatst) op een zodanige manier dat je daar zeer eenvoudig bij kan. Geen gekloot met onder de baan op je rug liggen en dan hopen dat je overal goed bij kunt. Nadeel is dat je aan de achterzijde veel minder ruimte beschikbaar hebt dan onder de baan en daarom maak ik alles zo klein mogelijk. De printplaten komen uiteindelijk op een rackmount: daar heb ik al een klein 3d-printje voor gemaakt:
(https://images.beneluxspoor.net/bnls_2025/pcbmount1-69239df1d5488.png) (https://images.beneluxspoor.net/bnls_2025/pcbmount1-69239df1d5488.png)
Dit is de 1-voudige versie maar ik maak uiteindelijk een 3-, 4- en 5-voudige versie.
De statusleds maak ik ook zo dat je direct aan de kleuren kunt zien of ergens iets mis is. En is er dus iets stuk dan kun je het in principe binnen twee minuten vervangen.
@vt175: dank voor je compliment. Ik kies voor (12-)18V omdat deze printplaten op een modulaire baan komen waar de spanning over een lengte van een tien tot twintigtal meters wordt vervoerd. Het lijkt mij het meest betrouwbaar om lokaal naar 5V te reduceren omdat je over zo'n lange lengte anders teveel spanningsverlies krijgt. Een andere reden is trouwens dat je ook magneetartikelen moet kunnen aansturen (met de SolenoidControl) en die hebben toch echt vaak 12V of meer nodig.
Met vriendelijke groet,
Dennis
-
Dus niet 16 draden losschroeven en dan de boel uitwisselen en hopen dat je daarna alles goed gelabeld hebt als je het weer terug wil hangen.
Dit had ik me ook bedacht, daarom ben ik toen op die plugbare screw terminals overgestapt.
Ik had toen voor mezelf ook gekeken of ik de relais als hats kon uitvoeren. Dat vond ik ook geen slecht plan, maar het werkt niet niet voor mij.
Waarom gebruik je eigenlijk niet gewoon 1 van de relais contacten als controle en het andere contact om dingen te schakelen? Dan heb je hetzelfde bereikt op een makkelijkere manier. Het kan praktisch niet voorkomen dat het ene contact wel schakelt en het andere niet. Die dingen zijn mechanisch onderling als 1 bewegend deel uitvoerd. Als het doel moet zijn om de deteceren of de contacten om zijn waarom probeer je dan 'DCC detectie'? Ik snap niet wat je daarmee bereikt.
(https://images.beneluxspoor.net/bnls_2025/image-6924212613d15.png) (https://images.beneluxspoor.net/bnls_2025/image-6924212613d15.png)
Ik heb ook vraagtekens over die weerstandsdeling en die hele methode met weerstandjes. Heb je dat al getest? Want je staat op het punt om 'live' DCC draadjes via slechts 12k Ohm aan de Ground van je dure printplaten te hangen. Daar zou ik nog eerder optocouplers voor toepasen. Een van de grootste voordelen van relais, is dat ze galvanische isolatie hebben, en precies dat doe je nu teniet met die weerstanden.
Ik vind de optocoupler ook een beetje overkill. Je hebt geen galvanische scheiding op die print zitten, daarmee vervalt het nut van de optoupler ook. En een transistor..die heb je al. Dus je uProcerssor is al voldoende beschermd
Nooit meer kortsluiting dus omdat een relais stuk is.
Voor unifrog wissels is dat niet zo'n deal, omdat die pas sluiting geven nadat er een trein op staat. Daarmee kan je snel het probleem vinden. Met elektrofrog wissels is dat idd wel een ding, omdat die wissels zonder trein ook sluiting kunnen geven. Dat is een royal payne in the ass ::). Ik raad om die reden mensen altijd aan om puntstuk polarisatie mechanisch op te lossen indien mogelijk.
Ik heb mijn decoders dusdanig uitgevoerd dat bij het opstarten de punstukken niet geschakeld zijn. Dan wordt de laatste stand bekeken en dan wordt het juiste relais ingeschakeld. Bij het schakelen doe ik dat ook: relais uit -> wissel omzetten -> andere relais aan. Stroom uit -> beide relais uit.
Heb je ook wel eens gekeken om een frogjuicer te maken? Ik heb met wat overleg met Patrick Smout een circuit bedacht wat zou moeten werken.
Mvg,
Bas
-
Ha Bas,
Daarom ben ik dus blij dat je even kritisch kijkt naar mijn ontwerp, want blijkbaar was ik weer eens een beetje naar een moeilijke oplossing aan het zoeken voor een 'makkelijk' probleem ;D.
De grap is dat ik wel had nagedacht over die tweede contacten gebruiken, maar ik vroeg me af of dat niet tot een probleem zou leiden omdat de belasting voor één van de twee contacten te veel is. Maar zit net even in de datasheet te kijken en waarschijnlijk loopt dat wel los met de beperkte hoeveelheid mA die een locomotief verstouwt. Jouw schema leidt dan (zoals je inderdaad zelf al zei) tot een enorme versimpeling:
- Verwijderen optocouplers
- Verwijderen analoge multiplexers
- Verwijderen flink aantal passives
Ik heb precies genoeg pins om die 8 uitgangen van de relais aan te sluiten op de mcu. Ik gebruik wel 3.3V omdat mijn STM32 niet 5V-tolerant zijn.
Voordeel is ook dat er wat ruimte vrij komt om mijn 6-polige I2c connector ook aan de bovenkant te plaatsen zodat je kunt daisy-chainen. Ik zal ook een 3-voudige jumper toevoegen zodat je tussen twee adressen - waar de mcu op luistert - kunt kiezen.
Dat wordt even opnieuw tekenen later deze week :).
Tot slot de frogjuicer: ik moet eerlijk zijn en zou nu - denk ik - niet zelf zo'n circuit kunnen ontwerpen. Ik kende het concept niet maar het klinkt interessant. Ik zie dat er verschillende producten op de markt zijn maar inderdaad leuk hier ook een open source versie van te maken. Lijkt me een mooie uitdaging een 4- of liever een 8-voudige variant op een 5x8 printplaatje te passen ;D.
Met vriendelijke groet,
Dennis
-
Ho Dennis,
je geeft aan dat je de decoders voor een modulebaan gaat gebruiken.
Mijn beeld van een modulebaan is dat je modules flexibel kan inzetten en daarmee dat het sporenplan wijzigt afhankelijk van hoe en welke modules je gebruikt.
Bijvoorbeeld hoe dit bij FREMO of AKTT gebeurt.
De besturing zal dan mee moeten bewegen. Dit betekend dat alle elektronica lokaal op een module zit en enkel voeding en de besturingssysteem worden doorgegeven.
Een kleine decoder welke meerdere taken kan uitvoeren is dan een must. Want op een module zitten vaak slechts geen of enkele wissels, enkele seinen en terugmelding.
of bedoel je een segmentbaan: Een vastte opstelling welke in kleinere segmenten is verdeeld welke altijd in een vaste opstelling wordt opgebouwd?
Naast voeding en de besturingsbussen maak ik uit jou verhaal op dat je ook de aansturing van wissels e.d. naar meerdere modules brengt.
Wat betreft de voeding voor de decoders. wat is de functie van e voeding verdeel print? en de zet deze print de baanvoeding om naar 18V voor de decoders en de decoders zetten de 18V weer om in 5V / 3,3V?
Zou dit niet eenvoudiger kunnen? en als je enkel servo's gaat toepassen heb je voor de decoders ook geen 12V nodig .
De vo
-
In principe heeft elke wissel, sein en terugmelder op een module een vast adres. Dat zal niet veranderen ongeacht de indeling.
Zelf zou ik een vast aantal adressen, 32 ofzo, per module toekennen voor zowel wissels, seinen en terugmelders. Die hebben onderling andere soort adressen, dus terugmelder 100 != wissel 100. Maar for the sake of logic kan je de nummers alsnog gescheiden houden.
Dus bij een andere opstelling, hoeft alleen het programma aangepast te worden. Zelf zou ik op voorhand verscheidene programma's voor verscheidene opstellingen gebruiken. Maar dit kan eigenlijk alleen als het aantal opstellingen beperkt is.
Wel een leuk idee om een computer programma het concept van 'modules' te laten kennen. Dan heb je modules met je wissels, seinen, blokken, terugmelders etc. Dan kan je in het programma on the fly eventjes de blokken in de volgorde zetten die matcht met je opstelling et voila. Misschien een leuk idee voor TrainTastic ::)
Ik heb een concept gemaakt, daarbij een beetje gespart met Patrick Smout, die hadden goede ingevingen.
In grote lijnen: Ik meet stroom met een ACS712 chip. Die output een spanning van ongeveer 2.5V bij 0A. Per A komt er afhankelijk van de richting 100mV of 185mV (afhankelijk van welke versie acs) bij of af.
Die spanning gaat naar een 2 tal comperators. En die hebben een vaste threshold waarde die overeenkomt met iets met net onder de 3A.
(https://images.beneluxspoor.net/bnls_2025/image-6925756a9d54e.png) (https://images.beneluxspoor.net/bnls_2025/image-6925756a9d54e.png)
Als die stroom dus bereikt wordt, schakelen de comperators. En die schakelen een JK flipflop. Die moet dan omtoggelen. Een klein RC circuit zorgt er voor dat het niet moet denderen.
Maar dit schema klopt inmiddels niet meer omdat de te grote back2back mosfets vervangen zijn door een te grote gelijkrichter. ::). Het mosfet circuit moet ik nog opnieuw doen. Ik denk overigens dat ik mede door de gelijkrichter de ACS712 zou kunnen vervangen door een shunt weerstand, die spanning kan ik dan direct naar 1 comperator leiden. Dat is wellicht geen slecht idee.
-
Wel een leuk idee om een computer programma het concept van 'modules' te laten kennen. Dan heb je modules met je wissels, seinen, blokken, terugmelders etc. Dan kan je in het programma on the fly eventjes de blokken in de volgorde zetten die matcht met je opstelling et voila.
Met Rocrail schijnt dat te kunnen: https://wiki.rocrail.net/doku.php?id=modules:modules-nl
Groeten,
Jos
-
Dat is wel leuk dat Rocrail dat kan.
Ik heb versimpeld schema gemaakt voor een frogjuicer, ik weet nog niet helemaal of die ook werkt. Ik moet nog het een en ander nalopen. Of de comperator geschikt is etc.
(https://images.beneluxspoor.net/bnls_2025/image-6925a7de8fc7c.png) (https://images.beneluxspoor.net/bnls_2025/image-6925a7de8fc7c.png)
Het past net aan 8x5cm. Je zou denken dat het veel ruimte is, maar voor elektrofrogs zou je anders 16 relais nodig hebben. Dan valt het dit wel weer mee.
(https://images.beneluxspoor.net/bnls_2025/image-6925a7a8e0ba7.png) (https://images.beneluxspoor.net/bnls_2025/image-6925a7a8e0ba7.png)
Er zit nu ook een zener om een vaste referentie te maken en een 33mOhm shunt weerstand. Het idee is dat bij ongeveer 3A, de spanning over de shunt weerstand 0.1V is. Dat moet een van de comperators trippen, die moet de flipflop toggelen, de flipflop moet beide mosfets (10A) toggelen waardoor het puntstuk zou moeten worden omgepoold naar de andere rail.
De stroom loopt van DCC -> gelijkrichter -> schottky diode -> Mosfet -> shunt weerstand -> gelijkrichter -> terug naar frog.
(https://images.beneluxspoor.net/bnls_2025/image-6925ab4549c69.png) (https://images.beneluxspoor.net/bnls_2025/image-6925ab4549c69.png)
Heeft alleen weer niet zoveel met BiDib te maken :-X
Bas
-
Hoi Dennis (en anderen),
Ik vind dit een interessante ontwikkeling. Naast mijn vast baan (met ESU Ecos 2) start ik zo af een toe een project(je) om wat nieuws uit te proberen. Zoals DCC-EX, Z21, Yamorc YD7001. Dat is voor mij onderdeel van de hobby. Wat er wordt aangeboden aan BiDib apparatuur vind ik echter te duur om hiervoor aan te schaffen. Dus als ik je kan helpen met testen in combinatie met Rocrail dan houd ik me aanbevolen. En ik wil je natuurlijk ook een passende vergoeding geven voor de onderdelen, maar daar komen we vast wel uit.
Misschien off-topic maar het onderwerp kwam hier ter sprake. Tijdens Houten Digitaal hebben we de modulebaan (Digibaan) van de HCC!m getoond in de grote opstelling en met Rocrail bestuurd.
Dat ging nog niet helemaal vlekkeloos, maar dat is onderdeel van het leerproces.
In Rocrail kun je elke modulebak in een afzonderlijk baanplan tekenen en vervolgens in elke mogelijke samenstelling de modules samenvoegen in aparte werkruimtes. Voorwaarde is wel dat de wissels, seinen en melders per module een vast adres hebben. Bij de Digibaan is dat het geval. Locomotieven kunnen gedeeld worden over de verschillende samenstellingen heen.
Succes met de ontwikkeling. Gelukkig krijg je op de inhoud genoeg feedback. Ik blijf het volgen.
-
Er zit nu ook een zener om een vaste referentie te maken en een 33mOhm shunt weerstand. Het idee is dat bij ongeveer 3A, de spanning over de shunt weerstand 0.1V is. Dat moet een van de comperators trippen, die moet de flipflop toggelen, de flipflop moet beide mosfets (10A) toggelen waardoor het puntstuk zou moeten worden omgepoold naar de andere rail.
Hoi Bas, als ik me niet vergis moeten de signalen op de + en - ingang van de opamp onderling verwisseld worden. Als de stroommeting tript dan wil je een positieve flank hebben op de klok van je JK flipflop. Zoals het nu getekend is krijg je dan volgens mij een negatieve flank en een gefrituurde meetweerstand ;)
-
Ho Dennis,
je geeft aan dat je de decoders voor een modulebaan gaat gebruiken.
Mijn beeld van een modulebaan is dat je modules flexibel kan inzetten en daarmee dat het sporenplan wijzigt afhankelijk van hoe en welke modules je gebruikt.
Bijvoorbeeld hoe dit bij FREMO of AKTT gebeurt.
Dat klopt.
De besturing zal dan mee moeten bewegen. Dit betekend dat alle elektronica lokaal op een module zit en enkel voeding en de besturingssysteem worden doorgegeven.
Een kleine decoder welke meerdere taken kan uitvoeren is dan een must. Want op een module zitten vaak slechts geen of enkele wissels, enkele seinen en terugmelding.
Ik weet niet of je het goed hebt gezien, maar mijn decoders zijn vrij klein hè ;). 5 bij 8 centimeter. En hoewel ik nu decoders heb gemaakt die zich specifiek toeleggen op één functie is het allemaal zodanig opgezet dat je vrij eenvoudig een variant zou kunnen maken die meerdere 'aandachtsgebieden' heeft. Ik gebruik immers dezelfde componenten tussen alle decoders en ook hebben ze allemaal dezelfde microcontroller. En straks ook een groot deel van de software hetzelfde.
of bedoel je een segmentbaan: Een vastte opstelling welke in kleinere segmenten is verdeeld welke altijd in een vaste opstelling wordt opgebouwd?
Naast voeding en de besturingsbussen maak ik uit jou verhaal op dat je ook de aansturing van wissels e.d. naar meerdere modules brengt.
Nee, maar het is een beetje een combi. Ik ben nu drie modules aan het maken die we op een echte modulebaan gaan gebruiken. De bakovergangen zijn genormeerd dus je kunt ze aansluiten hoe je wil, hoewel ik mijn drie modules onderling in één volgorde kan plaatsen.
Mijn uiteindelijke doel is om een 'onderbouw'-baan te maken waar ik mijn eigen modules dan bovenop kan plaatsen. Zo kan ik ze thuis gebruiken op mijn toekomstige baan en er ook 'uit' halen en meenemen naar een beurs voor de modulebaan.
Tussen de modules komen alleen een vier-aderige kabel met 2x DCC en 2x reguliere spanning en een BiDiBus-kabel. Als je ergens de indruk hebt gekregen dat er nog meer kabels tussen mijn modules komen dan heb ik het niet duidelijk uitgelegd. Dat is namelijk niet zo :).
Wat betreft de voeding voor de decoders. wat is de functie van e voeding verdeel print? en de zet deze print de baanvoeding om naar 18V voor de decoders en de decoders zetten de 18V weer om in 5V / 3,3V?
Zou dit niet eenvoudiger kunnen? en als je enkel servo's gaat toepassen heb je voor de decoders ook geen 12V nodig .
Nee, de voedingverdeelprint zet niets om. Je kunt hem met 12-18V voeden en die geeft hij ongewijzigd door naar de andere decoders op de betreffende module. De printplaat heeft een aantal functies:
- Hij detecteert de DCC polariteit en geeft met een LED weer of deze correct is. Als iemand dus zijn module verkeerd heeft bedraad of er een foutieve verbindingskabel is tussen de modules kun je dat snel zien.
- Hij heeft beveiliging voor overvoltage, overvoltage, reverse current, reverse polarity en nog een paar. Dit zorgt ervoor dat een elektriciteitsprobleem op de ene module geen effect heeft op andere modules. Ik heb niet zo'n zin dat mijn printplaten gefrituurd worden omdat iemand per ongeluk een kabel verkeerd heeft afgemonteerd.
- Hij kan de uitgangen van de verschillende decoders trapsgewijs inschakelen en dit kun je zelfs ook via de modeltreinsoftware regelen. Zo beperk je een grote spanningspiek als je de modulebaan aan zet en alles tegelijk gaat schakelen en opladen.
Met vriendelijke groet,
Dennis
-
als ik me niet vergis moeten de signalen op de + en - ingang van de opamp onderling verwisseld worden.
ff kijken
In rust is de + poot 0V en de - poot 0.1V. Dus de uitgang der comparator is uit. R4 trekt de basis van die transistor open, die geleidt dus. En die transistor trekt dan clock omlaag.
Als de + poot boven 0.1V komt (sluiting!!), raakt de comparator in geleiding. Die trekt de basis der transistor naar 0V, die gaat uit. En R6 trekt de clock lijn omhoog.
Dus ik denk dat je een kleine vergissing heb. ::) ken beurn. En als die niet zou schakelen, zou de weerstand niet frituren omdat de centrale/booster 50ms later alsnog de spanning afschakelt, hoop ik althans. Ik heb wel eens een marklin booster meegemaakt die gewoon door ging met zijn 5A ;D
Ik heb inmiddels wel die transistor er ook al uit gehaald en de + en - omgedraaid. Want dat scheelt me gewoon componenten. Ik heb ook geen 5V elektronica meer over. Al die chips zijn 20V compatibel. Het is me alleen net even teveel moeite om dit ff in elkaar te solderen. ::) en zelf heb ik ze niet nodig.
Hij heeft beveiliging voor overvoltage, overvoltage, reverse current, reverse polarity en nog een paar
Ik gebruik... simpelweg een gelijkrichter achter de power terminal (y). Zelfs als een apparatus kortsluiting zou veroorzaken, dan worden je andere modules niet beinvloed omdat de power supply simpelweg wordt kortgesloten.
Hij kan de uitgangen van de verschillende decoders trapsgewijs inschakelen
Je kan ook een decoder een variabele opstart tijd geven die adres afhankelijk is. Dat is sorta KISS Een spoel decoder houdt zich meestal sws rustig bij opstarten. Een servo decoder, die wil je wel al zijn servo's een voor een even laten positioneren waar ze zouden moeten staan. Ook dit kan je rustig in programmatuur oplossen van de decoders.
Bas
-
In principe heeft elke wissel, sein en terugmelder op een module een vast adres. Dat zal niet veranderen ongeacht de indeling.
Zelf zou ik een vast aantal adressen, 32 ofzo, per module toekennen voor zowel wissels, seinen en terugmelders. Die hebben onderling andere soort adressen, dus terugmelder 100 != wissel 100. Maar for the sake of logic kan je de nummers alsnog gescheiden houden.
Dus bij een andere opstelling, hoeft alleen het programma aangepast te worden. Zelf zou ik op voorhand verscheidene programma's voor verscheidene opstellingen gebruiken. Maar dit kan eigenlijk alleen als het aantal opstellingen beperkt is.
Wel een leuk idee om een computer programma het concept van 'modules' te laten kennen. Dan heb je modules met je wissels, seinen, blokken, terugmelders etc. Dan kan je in het programma on the fly eventjes de blokken in de volgorde zetten die matcht met je opstelling et voila. Misschien een leuk idee voor TrainTastic ::)
Met BiDiB maakt het niet zoveel uit, want de wissels en seinen etc. worden niet via DCC geschakeld maar via BiDiB en dat gebeurt middels het unieke adres dat elke BiDiB-module heeft en je in de modelbaansoftware invoert. Zie de iTrain handleiding (https://berros.eu/download/5-1/iTrain%205%20handleiding.pdf), pagina 92 onderaan.
Ik heb een concept gemaakt, daarbij een beetje gespart met Patrick Smout, die hadden goede ingevingen.
In grote lijnen: Ik meet stroom met een ACS712 chip. Die output een spanning van ongeveer 2.5V bij 0A. Per A komt er afhankelijk van de richting 100mV of 185mV (afhankelijk van welke versie acs) bij of af.
Die spanning gaat naar een 2 tal comperators. En die hebben een vaste threshold waarde die overeenkomt met iets met net onder de 3A.
[plaatje]
Als die stroom dus bereikt wordt, schakelen de comperators. En die schakelen een JK flipflop. Die moet dan omtoggelen. Een klein RC circuit zorgt er voor dat het niet moet denderen.
Maar dit schema klopt inmiddels niet meer omdat de te grote back2back mosfets vervangen zijn door een te grote gelijkrichter. ::). Het mosfet circuit moet ik nog opnieuw doen. Ik denk overigens dat ik mede door de gelijkrichter de ACS712 zou kunnen vervangen door een shunt weerstand, die spanning kan ik dan direct naar 1 comperator leiden. Dat is wellicht geen slecht idee.
Heel interessant, ik ga het morgenavond eens even uitgebreid bestuderen. Ik had zelf al een schakeling bedacht met een microcontroller, maar als je het zonder kunt doen is dat natuurlijk eigenlijk nog mooier.
Je hebt nu flink wat ruimte op je printplaat gebruikt, maar sommige componenten kunnen vast kleiner. Van die LM393 zie ik bij TI een kleinere versie (https://www.ti.com/product/LM393B/part-details/LM393BIDSGR) en de CD4027B is er ook als TSSOP (https://www.ti.com/product/CD4027B). Dat scheelt je bij elkaar al enorm veel ruimte.
Dat is ook een beetje mijn modus operandi geworden: concept ongeveer uitdenken en dan alvast opzoek naar zo klein mogelijke geschikte componenten om te zorgen dat zoveel mogelijk op de print past. En daar een beetje je schema op bouwen. Vast een beetje een rare volgorde :P.
Met vriendelijke groet,
Dennis
-
ff kijken
In rust is de + poot 0V en de - poot 0.1V. Dus de uitgang der comparator is uit. R4 trekt de basis van die transistor open, die geleidt dus. En die transistor trekt dan clock omlaag.
Als de + poot boven 0.1V komt (sluiting!!), raakt de comparator in geleiding. Die trekt de basis der transistor naar 0V, die gaat uit. En R6 trekt de clock lijn omhoog.
Dus ik denk dat je een kleine vergissing heb. ::) ken beurn.
De datasheet van TI bevestigd mijn kijk op het verhaal hoor . Toch nog eens wat dieper induiken. ;) .
The following is a list of input voltage situation and the outcomes:
1. When both IN- and IN+ are both within the common-mode range:
a. If IN- is higher than IN+ and the offset voltage, the output is low and the output transistor is sinking current
b. If IN- is lower than IN+ and the offset voltage, the output is high impedance and the output transistor is not conducting
-
Ja duidelijk, dan vergis ik me ;) iig ebdankt voor je scherpe blik
-
De printplaten komen ook niet aan de onderkant van de modules te hangen, maar plaats ik aan de achterkant zodat je er eenvoudig bij kunt en ook direct aan de lampjes kunt zien of alles goed werkt.
Elke tip, suggestie of verbetering is welkom. Als ik nog iets moet toelichten: vraag het vooral.
Met vriendelijke groet,
Dennis
Hoi Dennis,
zelf bouw en ik al vele jaren met modules. Voordeel van modules is dat je ze eenvoudig uit de baan kan halen en op de zijkant zetten om er aan te werken. Jou punt "an de achterkant zodat je er eenvoudig bij kunt " begrijp ik dan ook niet zo goed.
Ik schroef alles aan de onderzijde zodat het beschermd is voor transport. Als alles fysiek goed en stevig is aangesloten dan hoef je er eigenlijk ook niet meer bij. De meeste digitale besturingsaspecten kan je via de software instellen en is vaak maar eenmalig.
Mocht er toch wat kapot gaan dan haal ik de module uit de baan, zet deze op de zijkant, ontkoppel de decoder en vervang deze. schroef of steek conrectors zijn dan wel handig.
Waar ik meer behoeft aan heb is één decoder welke meerdere functies kan bedienen. Dus servo sturing voor de wissels, seinen en terugmelding door één decoder. Dit bespaart ruimte en kosten.
In jouw concept heb je al 3 decoders nodig welke allemaal meestal slechts gedeeltelijk wordt gebruikt.
Zou zo iets mogelijk zijn?
-
Ha vt175,
Mijn BiDiB-decoders komen ook 'binnen profiel'. Heb even een foto'tje gemaakt:
(https://images.beneluxspoor.net/bnls_2025/IMG20251129195657-692b423f11ff4.jpg) (https://images.beneluxspoor.net/bnls_2025/IMG20251129195657-692b423f11ff4.jpg)
Verzonken in die ruimte tussen twee planken komt een andere verticale plank en daar komen de decoders op. Hoop dat het duidelijk is, anders toch even wachten tot het klaar is ;D. Voordeel is dat je dus niet onder de baan hoeft te liggen om te zien of alles werkt. Door de ledjes kun je dat, door aan de achterzijde te kijken, eenvoudig zien.
Wat betreft connectors heb ik intussen even een 'test-hat' gemaakt:
(https://images.beneluxspoor.net/bnls_2025/BiDiB-LedControl32-Hat-692b432f5de1f.png) (https://images.beneluxspoor.net/bnls_2025/BiDiB-LedControl32-Hat-692b432f5de1f.png)
Ideaal om mijn led-decoder, waar ik dit topic mee begon, te testen.
Een decoder voor meerdere functies is júist supersimpel met mijn concept. Mijn intentie is om straks de hele boel open source te maken. De decoders zijn allemaal gelijk opgebouwd, dus je zou heel simpel een 'deeltje' servo-componenten kunnen pakken en een 'deeltje' led-componenten. Punt blijft wel dat de ruimte op de print beperkt is (of je zou naar tweezijdig bestukken moeten, maar dan moet je eigenlijk ook naar een 6-laags printplaat om daar maximaal van te profiteren). En je moet checken welke voltages je nodig hebt. Mijn solenoid-decoder bijvoorbeeld heeft geen 5V, want die heeft 'ie niet nodig. Wil je daar dus een stukje servo bij plakken, dan moet er een buck of iets bij.
Tot slot heb je pas rendement bij iets grotere series dus wil je doen wat jij zegt is de truc m.i. een variant te maken die geschikt is voor al je modules.
Met vriendelijke groet,
Dennis
-
Waar ik meer behoeft aan heb is één decoder welke meerdere functies kan bedienen. Dus servo sturing voor de wissels, seinen en terugmelding door één decoder. Dit bespaart ruimte en kosten.
Zou zo iets mogelijk zijn?
Natuurlijk is het handig één decoder te hebben die alles kan. Maar het als één auto die alles kan (comfortabel rijden, klein zijn om in te parkeren, groot genoeg om er mee te verhuizen en liefst ook nog in staat de F1 te winnen). Maar als je een “manusje voor alles” wilt bouwen, dan zal blijken dat die in de praktijk vaak slecht presteert.
Concreet. Als je een servo decoder bouwt, dan worden er zware eisen gesteld aan de 5V voeding. Als je terugmelders bouwt, dan speelt de voeding nauwelijks een rol, maar ben je best veel print ruimte kwijt voor alleen al de aansluitingen. Als je alle secties een eigen opto-coupler wilt geven, dan kost ook dat veel print ruimte. Als je wissels met magneet aandrijving wilt schakelen, dan heb je 15V nodig. Etc. Etc.
Wat wel kan, is 1 opsteek print maken met daarop processor en DCC signaal. Die print steek je dan (net als een Arduino Nano) op de servo print, de print voor wissels met magneet aandrijving etc.
Er zullen vast mensen zijn die dit handig vinden, maar ik denk dat je dan te veel consessies moet doen en iets krijgt wat uiteindelijk nergens echt goed in is. Ik sluit me dus helemaal aan bij wat Dennis hierover heeft gezegd.
@Dennis: ik ben heel benieuwd hoe je printen het straks gaan doen. Je doet nieuwe dingen, en daar leer ik graag van :)
Groet, Aiko
-
Ik was laatst gevraagd voor een all-in-one decoder. En dat idee had ik zelf al wat langer. De club in kwestie wilde ook modules maken en 1 printplaat per module hebben. Zij werkten dan met Loconet, maar dat maakt kwa functionaliteit niet uit.
Zij hadden geen eis voor spoelaandrijvingen, wel eisen voor servo's, schakelaars, bezetmelding en lichtseinen. Ze wilden uiteindelijk geen 1 printplaat omdat ik ze verteld heb dat dat rond de €75 zou kosten per stuk. Dus ik heb ze een DIY equivalent aangeboden met losse boardjes. Ik heb het praatplaatje uit m'n mail gevist:
(https://images.beneluxspoor.net/bnls_2025/thumbnail-image-1-692d69644977a.png) (https://images.beneluxspoor.net/bnls_2025/thumbnail-image-1-692d69644977a.png)
Het belangrijkste is hoe het zou moeten werken.
Elke module zou geconfigureerd moeten worden. Ik had bedacht om elke module een standaard begin adres te geven en dan 32 opvolgende adressen te gebruiken. Beter te veel dan te weinig. Je zou 8 adressen krijgen voor 8 terug melders, en de rest van de adressen zou je over wissels en seinen verdelen. En dan heb je nog adressen over.
Adressen zijn voor het gemak sequentieel, dus daar hoef je weinig aan te passen. De 16 knopjes zouden direct de accessoires bedienen, ook die zouden sequentieel werken. Out of the box zou knopje 1 ook servo 1 moeten aansturen.
Verder zouden wat custom instellingen moeten gebeuren voor de seinen en de servo standen. Maar that's it. Dus de hoeveel instellingen zouden wel meevallen.
Als ik een printplaat zou maken, zou die krijgen een buckconverter voor servo's, stroomdecties en een paar versterkte transistor uitgangen. Waarschijnlijk zou het net als een dccNext worden maar dan versterkte uitgangen. Dan zou je door middel van een soldeerpad kunnen kiezen of de uitgang een spoel of een servo moet aansturen. Dit ontwerp bestaat ook al
https://images.beneluxspoor.net/bnls_2025/image-692d6d2ec7104.png (https://images.beneluxspoor.net/bnls_2025/image-692d6d2ec7104.png)
Al bij al, is het idee goed te doen. Voor inspiratie kan je kijken naar m'n Jack of all trades board. Dat is een soort gelijk idee, maar er zit geen terugmeld bus op.
https://forum.beneluxspoor.net/index.php?topic=105407.msg3222446402#msg3222446402 (https://forum.beneluxspoor.net/index.php?topic=105407.msg3222446402#msg3222446402)
(https://images.beneluxspoor.net/bnls_2024/deleteme-65ad60f225f97.png)
Het originele idee van veel jaar geleden.
https://forum.beneluxspoor.net/index.php?topic=105407.msg3222361570#msg3222361570 (https://forum.beneluxspoor.net/index.php?topic=105407.msg3222361570#msg3222361570)
Gecombineerde IO printen kan werken IMO, maar het idee moet goed uitgwerkt zijn. Als ik het nu voor de 3e of 4e keer opnieuw zou bedenken ::), zou ik een basis print maken met vier groepjes van 4 IO waarin je andere printen kan steken, voor versterkte uitgangen, met relais, stroomdetecties, servo uitgangen of screw terminals. Misschien dat ik het als hat zou uiitvoeren, dat is ruimte technisch makkelijker maar dat is ook weer duurder en meer handwerk.
Misschien met een gleuf systeem. Dan kan je een van die bij-printjes haaks door een gleuf in de hoofdprint steken. Soldeerpads vast solderen, en dan scheelt het veel geld in de vorm van connectoren die je niet meer nodig heb ;D
Mvg,
Bas
-
Hoi Aiko, De vraag is niet één alles kunner, maar een decoder welke het meest geschikt is voor een modulebaan.
Op een module baan heb je zelden 8 wissels, 16 terugmelders en 32 led seinen en groot aantal lokale knoppen
Vaak zie je geen of 1 tot 2 wissels, paar terugmelders en een sein. De wissels zou je ook optionele ook lokaal willen bedienen met knoppen.
Als je werkt met jou idee van 'grote' specialistische decoder betekend dat per module meerdere decoders moet gebruiken waarvan het grootste deel ongebruikt blijven.
Het voorstel van Bas sluit veel beter aan bij de praktijk van een module baan. Een flexibele basis decoder welke je met i/o in groepjes van 4 kan uitbreiden.
-
@Aiko: Ik ben ook benieuwd ;D. Ik ben vooral heel nerveus en bang dat mijn printplaat niet werkt als ik 'm aansluit. Dat een power good naar enable niet goed gaat ofzo, waardoor de buck converter zichzelf niet aan zet. Slaat vast nergens op, maar ja als het niet goed is ben je wel zo'n 300 € kwijt aan waardeloze prints. Dat is trouwens ook stiekem een beetje mijn motivatie om het hier te plaatsen. Heb afgelopen weekend nog een keer alles gecheckt en ik kwam geen bijzonderheden tegen. Dus het zou toch goed moeten gaan...
@Bas: Leuk concept zo. Op zich denk ik dat een generieke 'module-decoder' wel zou kunnen werken. Het doet me een beetje denken aan de OneControl (https://www.fichtelbahn.de/onecontrol_index.html) van Fichtelbahn. Alleen daar heb je de 'processor' (BiDiBone) die je op de grote print plakt.
@vt175: Je hebt gelijk hoor. Zou ook mooi zijn als het met zo'n generieke print zou werken. Maar uiteindelijk ga ik deze modules ook voor mijn schaduwstation gebruiken. En ik ben bezig met mijn 3D-geprinte seinen. En Zwitserse seinen hebben veeeel lampjes, dus daar kun je ook al mee in de knoei komen. Misschien maak ik nog een keer iets. Eerst maar eens kijken of ik dit allemaal werkend krijg.
Met vriendelijke groet,
Dennis
-
Allright, e.e.a. vervangen zoals o.a. door Bas voorgesteld (y).
(https://images.beneluxspoor.net/bnls_2025/BiDiB-RelayAddOn-6933e688d7826.png) (https://images.beneluxspoor.net/bnls_2025/BiDiB-RelayAddOn-6933e688d7826.png)
- Analoog-in DCC checker verwijderd
- 1 kanaal van elk relays teruggekoppeld aan de mcu
- Optocouplers verwijderd uit de aansturing
- Signal connector aan de andere kant toegevoegd om door te lussen
- Om dat mogelijk te maken een address jumper toegevoegd waar je adres 1 of 2 kunt kiezen
- Ontstond wat ruimte dus extra condensator toegevoegd op de printplaat
Dit deel van het schema is in ieder geval veel schoner geworden:
(https://images.beneluxspoor.net/bnls_2025/Schematic-5-6933e85c40cd9.png) (https://images.beneluxspoor.net/bnls_2025/Schematic-5-6933e85c40cd9.png)
Met vriendelijke groet,
Dennis
-
Dag Dennis, de weerstandswaarde van je basisweerstanden kan veel hoger. Met een min. Versterking van 200 en een collectorstroom van net boven de 20mA is 10k meer geschikt.
-
Hallo Patrick,
Dank voor het attenderen! (y) Die 150 waren blijven staan van het aansturen van de optocoupler. Jij suggereert 10k: ik heb het nog even doorgerekend (of althans, dat laten doen) en dat kan inderdaad werken, maar met 6.8k zit je iets veiliger. Ik heb echter 4.7k al elders op de printplaat dus kies ik daarvoor. De dissipatie is dan 1.4mW dus dat kan prima met mijn 0402-tjes :).
Met vriendelijke groet,
Dennis