Doel:€250.00
Donaties:€102.50

Per saldo:€-147.50

Steun ons nu!

Laatst bijgewerkt
op 23-07-2020
Algemeen

De stichting

Recente berichten

Kopstation aan Noordzeekust Duitsland door NS264
Vandaag om 19:36:54
SSN 41 105 door Gerke
Vandaag om 19:34:59
Beneluxforum Kalender 2021 door guus43
Vandaag om 18:54:09
Mijn eerste H0-modeltreinbaan in aanbouw door bosje77
Vandaag om 18:50:05
Länderbahn en Reichsbahn locomotieven. door Wim Vink
Vandaag om 18:49:18
(BNLS modulebaan) BNLS-Forumbaan algemeen door NS264
Vandaag om 18:46:53
Mooi weer om buiten te spelen door FritsT
Vandaag om 18:35:59
De bouw van mijn modelbaan in Thailand door Thai-Bundesbahn
Vandaag om 18:31:46
Beurs in Houten 29 augustus 2020 - de voor- en nabeschouwing door Falcon10
Vandaag om 18:29:37
Onlangs gespot - gefotografeerd, de foto's door Floris
Vandaag om 18:09:57
"Southern Pacific's Coos Bay Branchline in H0", een nieuwe thuisbaan. door Ronald Halma
Vandaag om 17:53:08
Wat is er momenteel te zien op de Betuweroute? door Floris
Vandaag om 17:44:27
Hoe plaats ik plaatjes via de IPad?... door johanw
Vandaag om 17:31:40
Koploper Delft stopt door Rondje_HO
Vandaag om 17:19:48
Rhätische Bahn in 0m; van Filisur naar Stuls door VvKan
Vandaag om 17:17:21
Havenbaantje, Duitse havenstad, periode 2e wereldoorlog. door AndréDev
Vandaag om 17:16:28
Toon hier je nieuwe (model-) spooraanwinst(en)... door 4020 281-4
Vandaag om 16:52:48
Van Swarzach naar Swarzburg door nkob
Vandaag om 16:39:55
NL-baan in Canada door ArjanB
Vandaag om 15:55:18
LTM-51 Garratt in messing, Spoor-0 door FritsT
Vandaag om 14:55:49
Doornvliet door cor_b
Vandaag om 14:37:59
MB-module: Hielan Ware door Hendrik Jan
Vandaag om 14:27:12
Een modelbaan in een garage...... zou dat kunnen? door Ronald Halma
Vandaag om 14:25:54
Schwarzburg door Thai-Bundesbahn
Vandaag om 13:49:02
BNLS-Module: Grasland - de keerlussen met schaduwbakken door MOVisser
Vandaag om 13:04:58
"Litter Bin" voor Brits spoor en Britse modelspoorprojecten door iarnrod
Vandaag om 13:03:31
Cushman Oregon, voorheen Project Unnamed door Ronald Halma
Vandaag om 13:00:19
Z21 App aansluiten door Gerke
Vandaag om 12:47:10
Motorschade Roco Hippel (Oudste model?) door meino
Vandaag om 12:41:57
Frans loodsje et cetera door Noordernet
Vandaag om 12:39:55
  

Auteur Topic: Wisselbedieningstableau met Arduino mega voor DCC; hulp gevraagd  (gelezen 2147 keer)

meino

  • Offline Offline
  • Berichten: 793
Re: Wisselbedieningstableau met Arduino mega voor DCC; hulp gevraagd
« Reactie #30 Gepost op: 21 mei 2020, 22:15:12 »
Misschien een gekke vraag. Ik meen me te herinneren dat je op het XpressNet een Master mag hebben en meerdere slaves. Ik weet dat er ook voor de Arduino 2 bibliotheken ion omloop zijn, een voor een Arduino als master en een voor een Arduino als slave. Is het misschien zo, dat zowel Koploper als het paneel zich als master gedragen waardoor ze afzonderlijk werken maar niet beide tegelijkertijd?

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

Kranenberg
De CanBus komt naar Kranenberg

Hans sprinter

  • Offline Offline
  • Berichten: 1497
  • Vriend van vlaflip
Re: Wisselbedieningstableau met Arduino mega voor DCC; hulp gevraagd
« Reactie #31 Gepost op: 21 mei 2020, 22:49:33 »
Meino, nee, Arduino noch Koploper zijn master, maar hebben een Xpressnet nummer tussen 1 en 31. In dit geval is de Muis de master...
Ik denk dat je de situatie met een Multimuis door elkaar haalt. Bij de Lenz centrale is deze Master, en kan de Xpressnet bus volgens de oude
specificatie 350mA levereen, terwijl dit voor V3.6 meer lijkt te zijn. Ik voed nu 4 Mega's als TCO en dat geeft bij de MM geen problemen.
Ik heb dus een aardig schakelboxje werken, helaas nog niet alle schakelaars binnen, maar alles werkt al en is getest.
Ik heb eigen printen laten maken in China, en die werkten eerst ook niet, maar daar bleek een foutje in de schema's te zitten,
veroorzaakt door een onduidelijk moeder schema. Fout opgespoort, en alles werkt op de Xpressnet bus voeding en mijn arduino sniffer detecteerd alle commando's
correct. Ik gebruik de basis van https://www.gadis.cz/dcc/tco.htm
Helaas was dat maar tot 256 wissels geschikt en heb uj deze uitgebreid tot 1024. Ook de railstraten werken en ik heb een vrij programmeerbare versie gemaakt.
Leuk spul en werkt erg makkelijk!
Groetjes, Hans

PS: de capaciteit van de ATmel op de Multimuis is erg beperkt, hetgeen zich uit in ophangen. Als je de muis blijft gebruiken zul je inderdaad conflicten blijven ondervinden.
Deze worden met name door koploper veroorzaakt. Wat deze op de bus "flikkert" is ongelooflijk, en het lijkt erop of alle locomotieven uit koploper constant worden aangestuurd,
en die hoeveelheid kan de muis weer niet aan. Helaas zelf moeten ondervinden tijdens het testen. De muis slaat geregeld vast, oorzaak het gekoppelde koploper. Even een arduino sniffer aan je DCC hangen, dan herken je zo wat er gebeurd....

meino

  • Offline Offline
  • Berichten: 793
Re: Wisselbedieningstableau met Arduino mega voor DCC; hulp gevraagd
« Reactie #32 Gepost op: 21 mei 2020, 23:53:18 »
Is het niet zo dat de master dan de ExpresNet nummers toewijst? En hoe gebeurd dat, volgorde van de connectoren? Het lijkt er dan op dat de Arduino code van het paneel daar niet goed mee omgaat en op de een of andere wijze het zelfde ExpressNet nr als Koploper aanneemt. Ik ga er van uit dat Koploper hier wel  goed mee overweg kan.

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

Kranenberg
De CanBus komt naar Kranenberg

Remco_Nzo

  • Offline Offline
  • Berichten: 255
Re: Wisselbedieningstableau met Arduino mega voor DCC; hulp gevraagd
« Reactie #33 Gepost op: 22 mei 2020, 00:11:44 »
Ik verdenk de 120 ohm weestand op de Ali module.

In de documentatie van Lenz staat
The ends of the XpressNet Network lines A and B should be
connected to the resistor, which is enclosed with the LZV100. The
resistor has a value of 120 Ohm

In het schema http://pgahtow.de/wiki/index.php?title=XpressNet zie je ook dat deze optioneel is.

Ik denk niet dat je meerdere van die 'terminators' tegelijk (dus parallel) tussen A/B moet leggen.
Mijn vermoeden is dat er al 1 zit in de PC interface-module. Dus losse TCO + MM gaat prima, PC module er nog bij -> totale weerstandswaarde te laag.

Remco.
« Laatst bewerkt op: 22 mei 2020, 00:14:11 door Remco_Nzo »
N-spoor in de koelkast gezet - nu heerlijk bezig met LGB op zolder (dcc, multimaus, massoth, mardec, arloco)

Juroen

  • Offline Offline
  • Berichten: 238
Re: Wisselbedieningstableau met Arduino mega voor DCC; hulp gevraagd
« Reactie #34 Gepost op: 22 mei 2020, 08:15:14 »
Ik ga met beide suggesties aan de slag:

1) in de code van de arduino een ander Xpresnet-adres instellen
2) eens kijken hoe ik de 120 Ohm weerstand uit mijn Max484 bordje kan halen.

Ik heb nog een derde bedacht:
3) een kijken hoe het met RocRail werkt. Ik heb een deel van mijn baan en enkele loc's in RocRail. Het is niet voldoende om de baan mee te besturen maar kan ik er eens wat mee proberen.

Overigens,
Het MAX485 bordje heeft aan de uitgang naar de arduino vier weerstanden van 10k naar VCC.
Die staan niet op het schema ven pgatow.

Hopelijk kan k later vandaag weer verslag doen van mijn bevindingen.

Groet, Juroen

Juroen

  • Offline Offline
  • Berichten: 238
Re: Wisselbedieningstableau met Arduino mega voor DCC; hulp gevraagd
« Reactie #35 Gepost op: 22 mei 2020, 16:28:26 »
Beste meedenkers,

Hierbij een bericht over de testjes van vandaag.

1) In de code van de arduino een ander Xpresnet-adres ingesteld
Het was adres 15, gewijzigd in 29: geen verandering.

2) Gekeken hoe het met RocRail werkt.
In eerste instantie werkt RocRail goed, na aansluiten van mijn bedieningspaneel geeft RocRail in het veld linksonder allerlei foutmeldingen. Wissels en lokomotieven via RocRail bedienen werkt niet meer. XpressnetLi opnieuw geconfigureerd om een en ander weer werkend te krijgen.

3) De 120 Ohm weerstand uit mijn Max484 bordje gehaald
Ha, ha, dit begint erop te lijken: (y) Koploper actief, en nu blijft alles werken.
Er treden geen foutmeldingen meer op, de XpressnetLi blijft in bedrijf.
Ook kan ik Koploper netjes afsluiten en weer opstarten.

Er is nog één ding wat niet werkt:
Als ik met het bedieningspaneel wissels bedien, dan laat Koploper dit niet zien.
Als ik met een multimaus (master of slave) wissels bedien, dan laat Koploper dit wel zien.

Ik denk dat ik hier voorlopig mee kan leven; het is wel mooi zo.  ;D
Waarschijnlijk gaat het over een tijdje toch kriebelen; dan zal ik eens de Tsjechische site gaan bekijken .

Nogmaals alle meedenkers bedankt.

Groet, Juroen

Remco_Nzo

  • Offline Offline
  • Berichten: 255
Re: Wisselbedieningstableau met Arduino mega voor DCC; hulp gevraagd
« Reactie #36 Gepost op: 22 mei 2020, 18:41:24 »
Je schrijft 1 ding nog niet werkt - en mijn vermoeden is dit patroon in de code

Citaat
        sendSwitchCommand(turnout,1,1);
        sendSwitchCommand(turnout,1,0);

Dit is volgens de spec omdat je een opdracht voor het aanzetten van de magneet moet geven, en even later weer een opdracht om de magneet uit te zetten. Er zijn zat decoders die dat met een korreltje zout nemen en zelf wel bepalen hoelang ze de magneet bekrachtigen (en dus dat uitzet bericht gewoon negeren), maaaaaaaaaaar
Ik heb ook gevallen gelezen waarbij er apparaten op de bus het 'negeerden/oversloegen' als de aan/uit te snel achter elkaar kwam.
Het is maar net hoe dat merk de specs geinterpreteerd en geimplementeerd heeft.

Dus je zou die theorie eens kunnen testen door in je ino op alle plekken waar er meteen achter elkaar twee sendSwitchCommands worden aangeroepen daar een korte delay tussen te stoppen. Ik heb in mijn code ontdekt dat een delay van bijvoorbeeld 10ms nog te weinig was in mijn situatie. Ik heb hem (uit mijn hoofd) nu op 100ms staan.

Remco.
N-spoor in de koelkast gezet - nu heerlijk bezig met LGB op zolder (dcc, multimaus, massoth, mardec, arloco)

Juroen

  • Offline Offline
  • Berichten: 238
Re: Wisselbedieningstableau met Arduino mega voor DCC; hulp gevraagd
« Reactie #37 Gepost op: 22 mei 2020, 21:13:03 »
Remco,

In de ino van nzin vind ik nergens een tweetal opvolgende instructies.

Wel staan er enkele delays in met verschillende waarden (bv 1, 10, 20) die eenzelfde functie hebben (bij een wissel-instructie). Die heb ik allemaal eens op 150 gezet.

Dat was geen succes, het leidde er toe dat de commando's vertraagd doorkomen.
Irritant. Ook leidde dit niet tot terugmelding in Koploper.

Ik heb ze nu allemaal op 20 ms gezet en het werkt naar wens, maar nog zonder visuele terugmelding in Koploper.
Zoals ik eerder vandaag al schreef, ik kan ermee leven.

Ook met mijn zoon nog even gespeeld; de een bediende de wissels en de ander reed met een trein.
Leuk tweemansbedrijf.

Groet Juroen

meino

  • Offline Offline
  • Berichten: 793
Re: Wisselbedieningstableau met Arduino mega voor DCC; hulp gevraagd
« Reactie #38 Gepost op: 22 mei 2020, 22:45:05 »
Juroen

een vraagje, Als Koploper een wissel omzet, krijgt de Arduino dat via een XpresNet cpmmando te horen. Maar als jij via een drukknop de Arduino een wissel laat omzetten, meld de Arduino dat dan ook d.m.v een XpressNet commando aan de Centrale?
Mijn ervaring is dat als de Centrale dat weet, dat Koploper dat dan ook weet. Ik heb de indruk dat de centrale niet geinformeerd wordt.

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

Kranenberg
De CanBus komt naar Kranenberg

Remco_Nzo

  • Offline Offline
  • Berichten: 255
Re: Wisselbedieningstableau met Arduino mega voor DCC; hulp gevraagd
« Reactie #39 Gepost op: 23 mei 2020, 00:45:26 »
@Meino,

het programma in de arduino is een xpressnet-slave, net als de multimaus. Hij stuurt dus geen DCC opdrachten naar de wissels, maar X-BUS pakketjes naar de centrale -> en die maakt daar DCC opdrachten van voor de wisseldecoder.
Lang antwoord voor : ja (maar begrijp nog steeds niet waarom het uitmaakt)

@Juroen,
ALs je in de toekomst toch eens het verder wilt gaan onderzoeken : ke zou met een tweede arduino de 'xpressnet-monitor' sketch kunnen laden en dan 'opnemen' wat de x-bus precies ziet als je de wissel omzet met de multimaus en wat hij ziet met het omzetten door TCO. Je zou daar (als het goed is) geen verschil in de logging mogen zien.

Maar leuk dat het gelukt is. Veel plezier met spelen toegewenst
Remco.
N-spoor in de koelkast gezet - nu heerlijk bezig met LGB op zolder (dcc, multimaus, massoth, mardec, arloco)

Juroen

  • Offline Offline
  • Berichten: 238
Eind goed, al goed?

Ik kon het nog niet loslaten. Vooral de opmerking van Remco:

Je schrijft 1 ding nog niet werkt - en mijn vermoeden is dit patroon in de code

Dit is volgens de spec omdat je een opdracht voor het aanzetten van de magneet moet geven, en even later weer een opdracht om de magneet uit te zetten.

Vervolgens ben ik op een Frans forum eens gaan neuzen en kwam ik uit op onderstaande draadje:

http://forum.locoduino.org/index.php?topic=266.15

Daar constateert iemand dat er in de code die ik gebruik een stukje ontbreekt. Ik heb dat toegevoegd zoals ik denk dat het het bedoeling is. Et voila:
1) de wissels kan ik bedienen met multimaus, Koploper en mijn TCO;
2) als ik met mijn TCO de wissels bedien zie ik dat terug op multimaus en Koploper;
3) ik kan Koploper netjes afsluiten en weer opnieuw opstarten.
 (y)

Wat heb ik veranderd?

Oude code:

  // --- Commande pour Boutons à levier --------------------------------------------
  for (int i = NbrePoussoirs*2 +1; i < NbrePoussoirs*2 + NbreLevier +1; i++)
    {
    if (BtEtat != BtEtatAncien)
      {
        Serial.print("Aiguillage ayant l'adresse DCC "); Serial.print(Aig);
        Serial.print(" (Arduino "); Serial.print(Bt);
        BtEtatAncien = BtEtat ;
        XpressNet.setTrntPos (0x0, Aig-1, BtEtat );
        delay (20);
      }
    }

Nieuwe code (in vet de wijziging (een -8 en een regel):

  // --- Commande pour Boutons à levier --------------------------------------------
  for (int i = NbrePoussoirs*2 +1; i < NbrePoussoirs*2 + NbreLevier +1; i++)
    {
    if (BtEtat != BtEtatAncien)
      {
        Serial.print("Aiguillage ayant l'adresse DCC "); Serial.print(Aig);
        Serial.print(" (Arduino "); Serial.print(Bt);
        BtEtatAncien = BtEtat ;
        XpressNet.setTrntPos (0x0, Aig-1, BtEtat-8 );
        delay (20);
        XpressNet.setTrntPos (0x0, Aig-1, BtEtat );
        delay (20);

      }
    }

Groet Juroen

Remco_Nzo

  • Offline Offline
  • Berichten: 255
Re: Wisselbedieningstableau met Arduino mega voor DCC; hulp gevraagd
« Reactie #41 Gepost op: 23 mei 2020, 18:47:04 »
 (y)
Remco.
N-spoor in de koelkast gezet - nu heerlijk bezig met LGB op zolder (dcc, multimaus, massoth, mardec, arloco)