BeneluxSpoor.net forum
Vraag en antwoord => Digitaal => Topic gestart door: Reinout van Rees op 26 December 2016, 21:42:40
-
Seinen aansturen via DCC, dat kan. Een arduino kan dat ook oppikken en dan een servo/sein aansturen, zie bijvoorbeeld de mardec.
Maar: kan je ook makkelijk van die DCC commando's sturen? Vanuit een centraal programma wel, maar mijn baan is lekker decentraal opgezet. Ik heb dus drie stations met elk een eigen bedieningspaneel. Zo'n bedieningspaneel is zelfbouw: stapeltje schakelaars plus een arduino. Vandaaruit lopen lekker ouderwetse draadjes naar de wissels en seinen, waar dan wel weer een arduino aan hangt om de servo aan te sturen.
Een inrijsein, dat zit gauw zo'n 3 meter van het bedieningspaneel af. Als ik vanuit de bedieningspaneel-arduino een DCC commando naar zo'n verafgelegen sein zou kunnen sturen is dat misschien wel handig.
Idem zou ik twee bedieningspanelen onderling willen kunnen laten kletsen ("jij mag nu een trein het enkelsporige baanvak opsturen i.p.v. ikke", "de trein is aangekomen"). Dus.... ouderwets Duits seinhuisgebeuren via DCC.
Hoofdvraag: is zo'n decentrale aansturing via DCC mogelijk met arduino's? Andere vraag kan zijn "is het makkelijk", "zijn er betere mogelijkheden". Ik wil even aftasten of het een optie is. Ik heb één sein al met een draadje aangesloten, maar misschien kan het makkelijker.
Reinout
-
Bedoel je zoiets Reinout: http://www.instructables.com/id/DCC-Command-Station-Introduction/ (http://www.instructables.com/id/DCC-Command-Station-Introduction/)?
Er zijn beslist nog meer voorbeelden te vinden.
Kijk ook hier eens: http://www.opendcc.de/index_e.html (http://www.opendcc.de/index_e.html)
Overigens zou ik voor seinen de Arsigdec nemen i.p.v. de Mardec; die kan alleen 2-lichtsseinen aansturen.
Mvg
Nico
-
Pak dan (als we toch eigen producten promoten :))
http://members.home.nl/robert.evers/mdrrc2.htm
Evt in combinatie met
http://forum.beneluxspoor.net/index.php?topic=58491.new;topicseen#new
Knoop er een switch XPressNet switch panel aan
http://members.home.nl/robert.evers/s88switchpanel.htm
http://www.digital-plus.de/digitalplus-schaltdecoder.php
En je bent half op weg..
bedieningspanelen onderling willen kunnen laten kletsen
Daar zit de pijn.. Dat krijg je wel voor elkaar met potje programmeren als je geen PC met koploper/ITrian/Rocrail/... wil/kan gebruiken...
Misschien dat Loconet hier wat kan toevoegen
http://forum.beneluxspoor.net/index.php?topic=67698.0
Loconet is meen ik wat meer modulair en ook beter geschikt voor "onderlinge" communicatie, XpressNet is master-slave...
Mvg
Robert
-
Reinout, ik weet niet of ik je vraag helemaal begrijp.
In een DCC systeem heb je een centrale die het DCC signaal genereert en op de rails/ringleiding zet. Meerdere centrales tegelijk gaat niet.
Op de centrale kunnen meerdere componenten aangesloten worden die de opdrachten aan de centrale doorgeven (pc-programma, handregelaars, arduinos)
Ik heb bijvoorbeeld een multimaus met bijbehorende kastje als 'centrale'. Deze heeft een xpressnet bus waar ik nog twee extra handregelaars op heb aangesloten. Maar vindt schakelen via de multimaus niks, wil de wissels via een bedieningpaneel gaan doen.
Dus ik heb nu de onderdelen in bestelling staan voor het maken van een schakelpaneel op basis van dit voorbeeld : http://youtu.be/JcD7iC3VbOw
De arduino software daarvan staat hier https://github.com/nzin/xpressnet_arduino
Remco.
-
Hoi,
Even voor de duidelijkheid:
Maar: kan je ook makkelijk van die DCC commando's sturen? Vanuit een centraal programma wel, maar mijn baan is lekker decentraal opgezet. Ik heb dus drie stations met elk een eigen bedieningspaneel. Zo'n bedieningspaneel is zelfbouw: stapeltje schakelaars plus een arduino. Vandaaruit lopen lekker ouderwetse draadjes naar de wissels en seinen, waar dan wel weer een arduino aan hangt om de servo aan te sturen.
In principe wil je maar één apparaat binnen je systeem dat het DCC-signaal genereert. Je wil geen meerdere apparaten die DCC-signaal dat signaal genereren. Dat gaat niet goed komen. Alle andere apparaten kunnen via bussen met de centrale praten en zo hun opdrachten en commando's doorsturen en doorgeven aan de aan. Je kan bussen met protocollen zoals Xpressnet of Loconet gebruiken.
Remco_Nzo gaf al een mooi voorbeeld van een bedieningspaneel via Arduino, Xpressnet en schakelaars. Dit is volgens mij de website van dezelfde persoon: LocoDuino: Un TCO xpressnet (http://www.locoduino.org/spip.php?article42)
Idem zou ik twee bedieningspanelen onderling willen kunnen laten kletsen ("jij mag nu een trein het enkelsporige baanvak opsturen i.p.v. ikke", "de trein is aangekomen"). Dus.... ouderwets Duits seinhuisgebeuren via DCC.
Met elkaar kletsen? Dat zou misschien mogelijk moeten zijn. Maar dan zou je bijna iets van een netwerkprotocol moeten inbouwen. Dat de andere commando's kan ontvangen. Of bijvoorbeeld DCC-commando's, Xpressnet-commando's of Loconet-commando's gebruiken om onderling te communiceren. Binnen het loconet-systeem zit die optie al ingebouwd.
Hoofdvraag: is zo'n decentrale aansturing via DCC mogelijk met arduino's? Andere vraag kan zijn "is het makkelijk", "zijn er betere mogelijkheden". Ik wil even aftasten of het een optie is. Ik heb één sein al met een draadje aangesloten, maar misschien kan het makkelijker.
Ja, dat is mogelijk :) Maar niet via DCC. Je zal het met andere bussen en protocollen moeten gaan doen. Een andere webzijde met Arduino en Xpressnet is deze: Arduino TCO - ovládací pult s Arduinem na XpressNet (http://www.dccmm.cz/index.php/dcc-modely/arduino-tco-ovladaci-pult-s-arduinem-na-xpressnet). Wil je een alternatief? Dan kan je eens kijken naar Lenz die heeft een complete module de LW150. Zie ook deze berichten: LW150 digitaal bedienen via knopjes (http://forum.beneluxspoor.net/index.php/topic,64582.msg3221566433.html#msg3221566433)
Succes!
Groeten Ronald.
-
Kijk! Leesvoer! Daar ga ik me vanavond eens op storten.
Het belangrijkste punt is me door jullie antwoorden duidelijk geworden: zo'n bedieningspaneel zal aan de bus aangesloten moeten worden zodat zijn commando's richting de dcc centrale gaan. In mijn geval xpressnet als bus omdat ik een multimaus heb. "Extra telefoonstekkertjes" dus :)
De dcc centrale/multimaus geeft het dan wel weer door aan de seinen die aan het DCC signaal ("de rails") zijn aangesloten.
Ok, ik had het onderscheid tussen "bus" en "dcc signaal" niet door. De wereld is weer wat duidelijker geworden.
Reinout
-
Reinout,
Als je voornamelijk Arduino's met elkaar wilt laten lullen is het misschien ook een optie om rs485 of rs232 (niet op ttl niveau) te gebruiken en een stukje eigen software te bakken. Je zou dan een "slip" kunnen gebruiken om de data er netjes overheen te krijgen. Als je dan ook met adressen per sein/wissel gaat werken kun je een mooi "event based" systeem bouwen waarbij bij het veranderen van een sein er een event de "lijn" op gaat en de anderen dan elk voor zich kunnen kijken of er een actie voor hun aan vast zit.
Dit is natuurlijk geen kant en klare oplossing, maar is zeker een leuke programmeer klus ;)
-
Kijk ook eens hier:
rudysmodelrailway.wordpress.com/
Ruud heeft veel interessante en eenvoudige oplossingen.
Verstuurd vanaf mijn MotoG3 met Tapatalk
-
Auke, eigenlijk is dat wat ik wil: meerdere arduino's met elkaar laten praten. En eigenlijk met het doel om minder draadjes te hoeven leggen.
Als ik dan met twee/vier draadjes met RSnogwattus de arduino's met elkaar kan laten praten zou dat prima zijn. Aan de andere kant... Naar een inrijsein lopen nu twee draadjes, dus dat scheelt niet veel. Twee bedieningspanelen met elkaar laten praten kost me denk ik 3 draadjes. Dus heel veel winst is er niet. Misschien wel eenvoudigheid/standaardisatie.
Daarom keek ik ook of het via DCC zou kunnen, omdat je dan van bestaande oplossingen gebruik kan maken. Ook qua bedrading. Wat er bij de bnls modulebaan qua hubs gebruikt wordt zit er bijvoorbeeld erg netjes uit.
Custom spul programmeren heeft z'n eigen lol, dat doe ik ook al, dus de RSnogwattus is duidelijk een optie :)
Hm... internet-of-things, wireless... nog minder draadjes...
Reinout
-
Wireless zegt meneer? Kijk eens naar de esp8266 (heeft Wi-Fi).. Mesh netwerk is mogelijk (via 2.4ghz), is al een mooie lading Arduino omgeving software voor en heeft zonder de Arduino omgeving ook nog mogelijkheid om een door hun ontwikkeld iot systeem te gebruiken.
-
Als ik mee mag brainstormen (nog zonder veel inhoudelijke kennis wat er kan met arduino's wat betreft modelbaanbesturing) over een mogelijk concept :
Wat je zou kunnen doen is een centrale Arduino inzetten die je DCC laat praten en deze aan laten sturen dmv individuele arduino's (wireless, via ESP8266). Die Arduino's laat je onderling uitmaken wie er "master"en "slave" is op dat moment, of wie er de baas is over een bepaalde lok/baanvak, om zo meerdere lokfuhrers/baanwachters mogelijk te maken.
Het enige probleem was je dan mogelijk hebt is dat je geen multimaus of andere centrale kan inzetten (denk ik, nogmaals, ik bedenk dit concept nog zonder veel kennis ;) ), omdat er, zoals eerder gezegd, maar een apparaat DCC kan praten tegen je baan. Je zou daarom de centrale Arduino door middel van loconet of een ander toepasselijk protocol kunnen laten communiceren met je multimaus/centrale, die vervolgens DCC commando's brult naar je loks, seinen, wissels etc.. Of je laat in dat geval de verschillende arduino's direct loconet praten met je centrale, maar misschien is het makkelijker om de communicatie over wie de baas is gescheiden te houden van het DCC signaal.
-
Maar het aansturen van treinen is niet de bedoeling geloof ik? Dus het heeft geen zin om de boel aan de baan (dcc) te hangen. Er is ook een kant en klaar stuk software waarmee je een Arduino aan de mous (nou ja de bus daarvan) kan koppelen geloof ik. Dat zou ik in zo'n geval gebruiken. Dan kan je Arduino tegen de maus de commando's doorgeven en de maus doet de rest. Als meer boosters een optie is dan zou je het zo wel met minder lange draden kunnen doen
-
Hoi,
Even wat opmerkingen over wat antwoorden:
Je zou daarom de centrale Arduino door middel van loconet of een ander toepasselijk protocol kunnen laten communiceren met je multimaus/centrale, die vervolgens DCC commando's brult naar je loks, seinen, wissels etc.. Of je laat in dat geval de verschillende arduino's direct loconet praten met je centrale, maar misschien is het makkelijker om de communicatie over wie de baas is gescheiden te houden van het DCC signaal.
Moet je centrale wel loconet ondersteunen ;) Bij LocoNet kunnen ook modules onderling met elkaar "praten", zoals in dit bericht uitgelegd door Falkenberg: Tweede arduino met loconet (http://forum.beneluxspoor.net/index.php/topic,71305.msg3221695550.html#msg3221695550)
Maar het aansturen van treinen is niet de bedoeling geloof ik? Dus het heeft geen zin om de boel aan de baan (dcc) te hangen.
DCC-protocol is meer dan alleen treintjes aansturen. Ook de wissel- en sein-decoders kunnen er mee worden aangestuurd ;) Dus het heeft wel zin om via de centrale te laten lopen.
Er is ook een kant en klaar stuk software waarmee je een Arduino aan de mous (nou ja de bus daarvan) kan koppelen geloof ik. Dat zou ik in zo'n geval gebruiken. Dan kan je Arduino tegen de maus de commando's doorgeven en de maus doet de rest.
Even goed de eerdere berichten doorlezen en wat linkjes volgen en je ziet dat er reeds oplossingen zijn aangedragen waarbij XpressNet en LocoNet worden gebruikt. Xpressnet voor de Multimaus en Lenz-centrales. LocoNet voor IB, Digitrax en andere centrales....
Als meer boosters een optie is dan zou je het zo wel met minder lange draden kunnen doen
Boosters (oftewel: Versterkers) hebben niets met dit verhaal te maken. Dit draadje gaat over het omzetten van het indrukken van drukknopjes of omzetten van schakelaars omzetten naar digitale commando's voor decoders.
Groeten Ronald.
-
Ik bedoelde dat je alles via dcc kan aansturen en voedden (minder draden) maar dan zijn er wel extra boosters nodig. Tussen de regels door lees ik namelijk dat Reinout weinig draden wil aanleggen
-
Wow, bedankt voor de tips. "esp8266" klinkt interessant, want daar kan je ook (micro)python op draaien. Op aliexpress staat er alleen vaak niet bij hoeveel MB erop zit (en micropython vreet nogal wat). Dat wordt wat uitzoeken.
Boosters: ik zat eraan te denken de servo's enzo via een aparte voeding (die heb ik toch de baan rond lopen) te voeden, dan heb ik geen extra spul nodig. Hoewel een viertal inrijseinen over de hele baan verdeeld waarschijnlijk geen deuk in de trafo staan, dus dat zo nog best kunnen.
Aaargh, keuzes, keuzes.
Ik ga hier nog wat nachtjes over slapen. M'n vragen zijn wel beantwoord en jullie hebben me 20 extra ideeën gegeven :)
Reinout
-
Hallo
De kleinste versies hebben 512KB aan boord. Deze worden ook het meest aangeboden op Alie.
Er staan diverse artikelen om deze te upgrade naar 4MB -zomaar een voorbeeld (http://hackaday.com/2016/07/16/your-esp8266-needs-more-memory/)
Volgens de datasheet zou je ook naar 16MB kunnen gaan.
Mvgr Peter
-
Reinout,
Je kunt denk ik het beste en esp12-e of esp12-f nemen. De f heeft een betere antenne dan de e.
http://www.esp8266.com/wiki/doku.php?id=esp8266-module-family
-
Het kan ook eenvoudiger dan meteen draadloos. Als je een arduino DCC signalen uit wilt laten zenden naar een sein met een DCC decoder kun je dit project (https://github.com/nmeunier/DccDongle)bij github proberen. Je hoeft in principe dan alleen maar die paar pakketjes op een DCC signaal te zetten, wat door een LM18200 versterkt wordt. Een centrale is dan niet nodig naar je sein, DCC loopt alleen tussen je paneel en dat specifieke sein(en)
Een andere mogelijkheid is om een zeer eenvoudige servoaandrijving mbv een PIC12 (http://forum.modelspoormagazine.be/index.php/topic,20099) aan een poort van een Arduino te hangen. Instellen dmv twee potmeters.
Voor het blokken tussen twee stations is er een eenvoudige schakeling (nou ja, eenvoudig) met relais, knoppen en leds. Info is n beetje groot, kan ik je wel mailen. Voorproefje: (https://images.beneluxspoor.net/bnls/7_vrijgave_blok.jpg) (https://images.beneluxspoor.net/bnls/7_vrijgave_blok.jpg)
dirkjan
-
Nou, zo'n arduino-naar-dcc-signaal ding moet ik nu juist niet hebben, want uiteindelijk is er slechts één ding dat de "master" is. In mijn geval de master multimaus.
Als ik met dcc wil werken moet ik dus via een bus (expressnet/"roconet" in mijn geval) commando's van een arduino richting de master-multimaus sturen. Dus... dat is wat anders.
Wat betreft die blokken:
a) de info: graag :) reinout |apestaartje| vanrees.org
b) Zo'n blok krijg ik met m'n arduinootjes ook wel voor elkaar, het gaat me vooral om de dradenwirwar die ik daartussen nodig heb. Of dat misschien minder kan. Niet dat het zoveel is, maar toch. De kastjes van jou, daar steekt ook wat stekkerspul uit, dus op het essentiële punt is het niet simpeler. Maar, zoals gezegd, ik ben wel erg geïnteresseerd, ook al om te kijken hoe die netwerkkabel hierbij wordt gebruikt.
Reinout
-
Hallo Reinout,
Heb je hier wat aan als startpunt http://pgahtow.de/wiki/index.php?title=XpressNet (http://pgahtow.de/wiki/index.php?title=XpressNet) voor je XpressNet oplossing?
gr Peter
-
DCC als in: de bus die ook op je rails staat en je loks van informatie voorziet: ja daarvan wil je maar 1 master hebben. Je kunt met het dcc signaal op een 'seinbus' achter andere zaken aansturen, zoals een seindecoder. Deze twee draadjes lopen dan alleen tussen arduino en sein, gebruiken het dcc protocol (waardoor je een seindecoder kunt gebruiken), maar mengt zich niet met je dcc bus voor je treinen. Soort van/variant op Loconet aansturing dus :)
Tipje voor de mod: je mailadres niet in plaintext in een bericht: scheelt je spam :P
Blok komt je kant op.
dirkjan