Doel:€250.00
Donaties:€92.50

Per saldo:€-157.50

Steun ons nu!

Laatst bijgewerkt
op 28-08-2019
Algemeen

De stichting

Recente berichten

VillaAlbaBaan Ho Afm 2.70 x 1.55m Marklin C-rails door TreinInVillaAlba
Vandaag om 15:46:54
Vaak gestelde vraag: 2- of 3-rail? door Zilte
Vandaag om 15:46:12
Update: baan in de tropen door André 1976
Vandaag om 15:10:34
Hoekdiorama door Piet Groot
Vandaag om 14:40:37
Neutraal Moresnet in H0 door André 1976
Vandaag om 14:30:21
Show je realistische treinsamenstelling door nighttrain1
Vandaag om 14:30:08
Mijn eerste H0-modeltreinbaan in aanbouw door Wim Vink
Vandaag om 14:26:29
Baanbouw Bosje77 door Edgy
Vandaag om 14:16:15
Seuthe 10 in BR 50 008 icm Lopiv4 door Ronald Halma
Vandaag om 14:16:01
Landerbahn en Reichsbahn locomotieven. door puntenglijder
Vandaag om 14:09:48
Toon hier je nieuwe (model-) spooraanwinst(en)... door johanw
Vandaag om 14:08:36
Roco De Hoop Golfkarton wagen, Echt of fake. door edwin1974
Vandaag om 14:08:21
Onlangs gespot - gefotografeerd, de foto's door Zilte
Vandaag om 14:03:34
De bouw van mijn modelbaan in Thailand door Thai-Bundesbahn
Vandaag om 13:56:01
DCC++ centrale en arduino: ervaringen? door Ronald Hofmeester
Vandaag om 13:54:29
Digikeijs DR5000 Centrale, productbeschrijving door Erik
Vandaag om 13:51:32
Projekt 083-338 door 44
Vandaag om 13:37:41
Once Upon A Time In My Computer Desk door Floris Dilz
Vandaag om 13:29:26
Fyra vervanger. NS bestelt Intercity Nieuwe Generatie (ICNG) door martijn v m
Vandaag om 13:20:53
Stenen muren schilderen van resin bouwpakket. door Falcon10
Vandaag om 13:17:15
Terschellinger Spoor door FritsT
Vandaag om 11:59:17
Raadplaatje door Hlv53
Vandaag om 11:29:39
ESU microdecoder 54686, flash light functie instellen met LokProgrammer door arnaudns
Vandaag om 11:11:18
Schwarzburg door 44
Vandaag om 11:04:16
Bouw NS 2200 in spoor-0 door JaJo
Vandaag om 10:10:36
Vensterbankbaan (H0-Märklin) door Nils
Vandaag om 09:51:51
NS modelbaan Hoekdam H0 door MOVisser
Vandaag om 09:34:51
Multi Modal Rail B.V. (MMR) begint een spoordienst tussen Rotterdam en Franse Ot door Hans Reints
Vandaag om 09:30:11
Buitenlust door edwin1974
Vandaag om 09:17:17
Project 0m, iets heel anders: Rhätische Bahn door Tulpendaal
Vandaag om 08:37:33
  

Auteur Topic: Automatisering voor Kranenberg - Arduino's, bezetmelders, wissels, seinen  (gelezen 8291 keer)

Robert E

  • Offline Offline
  • Berichten: 821
    • Micro controllers en modelspoor
Re: Automatisering voor Kranenberg - Arduino's, bezetmelders, wissels, seinen
« Reactie #30 Gepost op: 11 mei 2018, 21:20:58 »
Citaat
Arduino IDE voor eht schrijven van de code

Dat iemand daar mee kan werken.. ??? ??? ??? ???..
Ik gebruik Sloeber, is Eclipse based met alle voordelen (zoals code completion).

http://eclipse.baeyens.it/

Heb er de ESP8266 ook onder zitten en de STM32 ook.
Vanuit Sloeber kun je gewoon flashen en al..

Als je dan nog clang  gebruikt wordt de code geformat naar standaard, en die standaard kun je zelf aanpassen.
Clang formater is onderdeel van https://llvm.org/

Citaat
Ik denk dat op veel plekken een byte / uint_8 of in ieder geval een unsigned type logischer is.

Een Atmel is een 8 bits processor, dus alles wat je byte / uint8_t kunt doen DOEN....
16 Bits is gelijk meer code,  en uint32_t en float is eigenlijk not done op een 8 bits...

Citaat
aantal situaties -1 als adres om het systeem iets te laten weten (ROUT_BARRED is -1).

Return een bool / enum van die functie, en geef de waarde die je wilt lezen als pointer mee in functie.

Mvg

Robert




MDRRC-II goedkope DIY centrale voor DCC en MM

meino

  • Offline Offline
  • Berichten: 482
Re: Automatisering voor Kranenberg - Arduino's, bezetmelders, wissels, seinen
« Reactie #31 Gepost op: 11 mei 2018, 21:38:13 »
Dat iemand daar mee kan werken.. ??? ??? ??? ???..


Robert ik heb het vak geleerd in de tijd van ponskaarten en teletypes. Later kregen we groene (of oranje) schermen met 24 regels van 80 posities. Dat was echt  high tech (3270, VT100, UTS200 etc). X11 terminals met xterm was nog weer later. Kortom ik heb het een en ander zien veranderen, dus de Arduino IDE daar kan ik wel mee overweg.

Met vriendelijke groet
Meino
« Laatst bewerkt op: 11 mei 2018, 21:54:14 door meino »
A clean desk is a sign of an empty mind

Kranenberg

Martin Hornis

  • Offline Offline
  • Berichten: 911
Re: Automatisering voor Kranenberg - Arduino's, bezetmelders, wissels, seinen
« Reactie #32 Gepost op: 24 juli 2018, 00:34:09 »
Wissel 1 staat rechtdoor, sein en wissel mogen met 120km/u gepasseerd worden, voor het perronspoor geldt een maximum van 80km/u.
   Stop voor sein 2                                  seinbeeld sein 2: rood-zwart-zwart
   Doorrijden sein 2, doorrijden sein 4      seinbeeld sein 2: groen-groen-wit
   Doorrijden sein 2, stop sein 4               seinbeeld sein 2: geel-wit-wit

Wissel 1 rechtsaf, wissel 2 linksaf , sein en wissel mogen met 60 km gepasseerd worden wat ook geldt voor het perronspoor.
   Stop voor sein 2                                  seinbeeld sein 2: zwart-rood-zwart
   Doorrijden sein 2, doorrijden sein 6      seinbeeld sein 2: wit-groen-wit
   Doorrijden sein 2, stop sein 6               seinbeeld sein 2: wit-geel-wit

Wissel1 rechtsaf, wissel2 rechtsaf, sein en wissel mogen met 60km/u gepasseerd worden, voor het volgende wissel en spoor geld een limiet van 40km/u.
   Stop voor sein 2                                  seinbeeld sein 2: zwart-zwart-rood
   Doorrijden sein 2, doorrijden sein 8      seinbeeld sein 2: wit-groen-groen
   Doorrijden sein 2, stop sein 8               seinbeeld sein 2: wit-geel-wit

De drie stop seinbeelden mogen ook vervangen worden door een beeld nl. rood-zwart-zwart, ...
Klopt dat wel? Vóór elke lamp waren slechts drie kleuren mogelijk. Dus de drie stop-seinbeelden moeten vervangen worden door één beeld nl. zwart-zwart-rood. Want bij de onderste lamp is geen Geel nodig.
« Laatst bewerkt op: 24 juli 2018, 00:40:03 door Martin Hornis »
Märklin K-rails met boogstralen > 500 mm; NS-lichtseinen met cijferbak: 4, 6 en 8 in één bak; iTrain; Intellibox I; OC32; eigen treindetectiesysteem aangesloten op OC32; controleprogramma's voor iTrain en OC32.

meino

  • Offline Offline
  • Berichten: 482
Re: Automatisering voor Kranenberg - Arduino's, bezetmelders, wissels, seinen
« Reactie #33 Gepost op: 24 juli 2018, 00:49:14 »
Of het klopt, dat weet ik niet. Ik ben in het bezit van de Kilometer kampioen uit 1954, aan het eind daarvan staan alle seinbeelden met hun betekenis, wat overeenstemde met de beschrijving op de site van seinarm. Kortom dat is wat ik geimplementeerd heb.

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

Kranenberg

Martin Hornis

  • Offline Offline
  • Berichten: 911
Re: Automatisering voor Kranenberg - Arduino's, bezetmelders, wissels, seinen
« Reactie #34 Gepost op: 24 juli 2018, 11:14:08 »
Dat boek heb ik ook. Het is mijn eerste treinenboek. Op de site van seinarm staat een tabel met de tien mogelijke seinbeelden. Onder die tabel staat het volgende:"Van de tien seinbeelden kunnen er per driehoogtesein maar negen weergegeven worden (drie lampen met elk een kleurenbril voor drie standen)."
Het gedeelte tussen haakjes moet niet overgeslagen worden. Dat er maar negen seinbeelden weergegeven konden worden, houdt verband met het rode licht dat noodzakelijk ergens een plek moet hebben. Dus één van de standen 2 t/m 10 in de tabel moet vervallen. Op een andere plaats op dit forum staat een foto van zo'n kleurenbril.
« Laatst bewerkt op: 24 juli 2018, 11:18:23 door Martin Hornis »
Märklin K-rails met boogstralen > 500 mm; NS-lichtseinen met cijferbak: 4, 6 en 8 in één bak; iTrain; Intellibox I; OC32; eigen treindetectiesysteem aangesloten op OC32; controleprogramma's voor iTrain en OC32.

meino

  • Offline Offline
  • Berichten: 482
Re: Automatisering voor Kranenberg - Arduino's, bezetmelders, wissels, seinen
« Reactie #35 Gepost op: 24 juli 2018, 12:53:00 »
Ok, dat was niet echt doorgedrongen. Ik heb nog even op de site van seinarm de situatie bij Blauwkapel bestudeerd en begrijp nu wat je bedoeld. Je ziet dat het rode licht niet echt een vaste plaats heeft. Ik ga kijken of dat te implementeren is. Het is wel een complex seinstelsel, want een driehoogte sein kan dan 9 seinbeelden weergeven, maar dat is een subset van de 12 mogelijke kleurcombinaties. Dus de seinbeelden die twee driehoogte seinen kunnen tonen zullen onderling afwijken (ieder driehoogte sein heeft zijn eigen unieke set van 9 seinbeelden).

Groet Meino
« Laatst bewerkt op: 24 juli 2018, 13:11:31 door meino »
A clean desk is a sign of an empty mind

Kranenberg

meino

  • Offline Offline
  • Berichten: 482
Re: Automatisering voor Kranenberg - Arduino's, bezetmelders, wissels, seinen
« Reactie #36 Gepost op: 25 juli 2018, 17:55:55 »
Naar aanleiding van de informatie van Martin, heb ik iets aangepast. Dat heeft te maken met de positie van het rode licht, dat niet op ieder lamp kan voorkomen. Aangezien de kleurwisselaar slechts 3 glazen heeft. Als een lamp rood moet tonen, zal een van de andere kleuren moeten vervallen. In de praktijk toont die lamp rood welke een van de andere kleuren (meestal geel of wit) niet hoeft te tonen. In het voorbeeld is dat de onderste lamp omdat die nooit geel toont.



Wissel 1 staat rechtdoor, sein en wissel mogen met 120km/u gepasseerd worden, voor het perronspoor geldt een maximum
                                         van 80km/u.
   Stop voor sein 2                                    seinbeeld sein 2: zwart-zwart-rood
   Doorrijden sein 2, doorrijden sein 4      seinbeeld sein 2: groen-groen-wit
   Doorrijden sein 2, stop sein 4               seinbeeld sein 2: geel-wit-wit



Wissel 1 rechtsaf, wissel 2 linksaf , sein en wissel mogen met 60 km gepasseerd worden wat ook geldt voor het
                                                        perronspoor.
   Stop voor sein 2                                    seinbeeld sein 2: zwart-zwart-rood
   Doorrijden sein 2, doorrijden sein 6      seinbeeld sein 2: wit-groen-wit
   Doorrijden sein 2, stop sein 6               seinbeeld sein 2: wit-geel-wit



Wissel1 rechtsaf, wissel2 rechtsaf, sein en wissel mogen met 60km/u gepasseerd worden, voor het volgende
                                                        wissel en spoor geld een limiet van 40km/u.
   Stop voor sein 2                                    seinbeeld sein 2: zwart-zwart-rood
   Doorrijden sein 2, doorrijden sein 8      seinbeeld sein 2: wit-groen-groen
   Doorrijden sein 2, stop sein 8               seinbeeld sein 2: wit-geel-wit

Om dit te laten gebeuren, heb ik de bibliotheek aangepast en een aantal extra parameters toegevoegt.
Deze parameters vertellen de bibliotheek welke lamp rood bevat, zodat de correcte lamp geselecteerd wordt om een stop beeld te tonen. Welke lamp dit is, moet van situatie tot situatie zelf bepaald worden aan de hand van de seinbeelden die getoond kunnen worden. Selecteer dan een lamp die een van de 3 andere kleuren (groen, geel of wit) niet zal tonen, dit zal vaak een lamp zijn die geen geel toont.

            SEIN46_DRIEHOOG,
Type van het sein, in dit geval een Driehoog sein.
            new RGBLed(PWM_PIN(2),INTENSITY(18),PWM_PIN(3),INTENSITY(15),PWM_PIN(4),INTENSITY(9)),
            new RGBLed(PWM_PIN(5),INTENSITY(20),PWM_PIN(6),INTENSITY(22),PWM_PIN(7),INTENSITY(9)),
            new RGBLed(PWM_PIN(8),INTENSITY(21),PWM_PIN(9),INTENSITY(14),PWM_PIN(10),INTENSITY(9), RED_ON, GREEN_ON, YELLOW_OFF, WHITE_ON)),
Definitie van de drie lampen, waarbij de onderste voor het tonen van rood wordt gebruikt. De definities voor RED_ON, RED_OFF etc ,zijn bools waarbij voor het gemak correcte #defines in de bibliotheek aanwezig zijn.


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

Kranenberg

meino

  • Offline Offline
  • Berichten: 482
Re: Automatisering voor Kranenberg - Arduino's, bezetmelders, wissels, seinen
« Reactie #37 Gepost op: 26 juli 2018, 17:01:31 »
Ok, het is tijd om de draad weer op te pakken. Het idee is om de automatisering te distribueren over een aantal afzonderlijke systeempjes, welke onderling d.m.v. een Can bus met elkaar communiceren. Zie onderstaand schema;



Ondertussen zijn de bestelde Can-bus interface kaartjes aangekomen uit China, type "MCP2515 CAN Bus Modul mit TJA1050 Transceiver"



Omdat ik voor dat ik de code van de bestaande systemen ga aanpassen, het een en ander wil uitproberen, een testopstelling gemaakt met twee arduinos die ik nog had liggen.



Het plan is om een bibliotheek te maken waarmee een systeem op een simpele manier via de Can-bus kan praten met de andere systemen aan de bus. Dat zal gaan gebeuren d.m.v een "Producer-Consumer Communication" model. Omdat misschien niet iedereen weet wat dat betekent, een kleine uitleg.

Een veel gebruikte manier om systemen met elkaar te laten praten is het "Sender-Receiver Communication" model (sorry voor de Engelse termen, maar als ik dat vertaal wordt het misschien te verwarrend). In dit model zullen twee systemen direct met elkaar praten, dat betekend dat de zender van een bericht, dat bericht adresseert met een adres van een specifieke ontvanger. Kortom de zenders van berichten (de Producers) moet voor ieder bericht weten naar wie het gestuurd moet worden. Dit is analoog met iemand die een brief of eMail naar iemand anders stuurt, dat moet ook een adres krijgen, anders komt het niet aan. Een potentieel nadeel is, dat je voor verschillende situaties de systemen moet kunnen configureren met de correcte adressen.

Een "Producer-Consumer Communication" model werkt anders. Denk aan de dorpsomroeper die op het centrale plein zaken omroept, of een bakker die d.m.v zijn hoorn dorp/stadje verteld dat de broden uit de oven zijn. In dit model weet een zender (de Producer) niet wie een bepaald bericht gaat afhandelen. hij zet het bericht gewoon op de bus en ieder ander systeem aan de bus, leest dat bericht en als die weet hoe dat bericht moet worden afgehandeld dan doet hij dat. Het voordeel van dit systeem is dat de zenders (producers) en ontvangers (consumers) niet geconfigureerd hoeven te worden met adresgegevens van de andere systemen.
Wat wel moet gebeuren is een strakke definitie van de verschillende type berichten die op de bus gepubliceerd worden zodat zenders en ontvangers daar duidelijkheid over hebben. Verder moet de bus deze techniek ook ondersteunen, wat Broadcasting heet. De Can-bus ondersteund dit, zoals ook Ethernet dit ondersteund.

Tot zover, ik ga nu aan de slag met de test opstelling

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

Kranenberg

meino

  • Offline Offline
  • Berichten: 482
Re: Automatisering voor Kranenberg - Arduino's, bezetmelders, wissels, seinen
« Reactie #38 Gepost op: 27 juli 2018, 16:31:46 »
Nu de eerste testen, die zien er goed uit.
Ik heb vanuit Github de volgende bibliotheek https://github.com/coryjfowler/MCP_CAN_lib opgehaald, en de CAN_send en CAN_receive voorbeelden op de arduino's gezet. Wel moest ik nog een kleine aanpassing doen, beide voorbeelden gaan uit van een 16Mhz klok op de MCP2515, toevallig had ik gelezen dat de bewuste kaartjes een 8Mhz klok hebben, dus dat wel eerst aangepast. Dat werkte probleemloos. We viel het me op dat als de receiver niet aanstond, dat dan de zender op ieder bericht een fout gaf. Dus toch maar eens op zoek naar documentatie (Ja je bent natuurlijk een eigenwijze software man, dus eerst proberen voordat je het manual gaat opzoeken en lezen). Dat gedrag bleek normaal te zijn bij de CAN-bus.
Een heel goede beschrijving vond ik op Wikipedia.
Daar uit blijkt dat deze communicatie techniek primair ontwikkeld is om een hoge betrouwbaarheid te realiseren in een electrisch vuile omgeving. Verder is het masterloos, dus geen master die transmissie slots toewijst. Iedere node op de bus heeft de zelfde rechten. In de basis is alle communicatie op een "Producer-Consumer communication" protocol gebaseerd waarbij berichten gekenmerkt worden door een 11 of 29 bit grote ID en niet door een adres van de zender of de ontvanger. De maximale informatie die in een bericht geplaatst kan worden is 8 bytes. Verder bij 1Mbit transmissie is de maximale buslengte 40m en een maximale buslengte van 100m bij een transmissie snelheid van 500Kbit. Dat is meer dan voldoende voor de toepassingen waar ik nu mee bezig ben.

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

Kranenberg

meino

  • Offline Offline
  • Berichten: 482
Re: Automatisering voor Kranenberg - Arduino's, bezetmelders, wissels, seinen
« Reactie #39 Gepost op: 11 augustus 2018, 14:59:34 »
De eerste testen zagen er goed uit. Dat was met de voorbeeld programmaatjes van de bibliotheek. Dus een eigen bibliotheek geschreven, toegespitst op de toepassing. Helaas kwamen er toen problemen. Zolang een Arduino+MCP2515 als een pure zender en de andere Arduino+MCP2515 als een pure ontvanger werden gebruikt, liep alles als een zonnetje. In die combinatie werden er ongeveer 950-1000 berichten per seconde verwerkt (de limiet wordt bepaald door de verwerkingstijd op de MCP van 1 millsec per bericht).
Maar toen ik beide Arduino's tegelijkertijd liet zenden ontstonden er grote problemen in de vorm van berichten die door de Arduino niet uit de MCP gelezen werden. Kortom veel berichten kwamen niet aan in de Arduino.
Daarna met timers geprobeerd de hoeveelheid berichten te reduceren, Pas bij een reductie tot ongeveer 10 berichten per seconde begon het betrouwbaar te worden. Dit beviel me niet, dus iets anders geprobeerd, nl een extra MCP bordje aan de Arduino, zodat 1 als zender en 1 als ontvanger wordt gebruikt. Dit verbeterde de situatie aanmerkelijk. Op dit moment kan ik in deze constructie ongeveer 170-200 berichten per seconde betrouwbaar zenden (dus een totaal op de bus van 340-400 berichten/sec).
Wel ben ik overgegaan op een andere bibliotheek, nl. https://github.com/autowp/arduino-mcp2515. Deze bibliotheek is een ietsje efficienter en betrouwbaarder dan de bibliotheek waarmee it begon.
Een ding dat ik ontdekte, is dat het gebruik maken van de interrupt pin (die de MCP2515 laag trekt bij ontvangst van een bericht) niet bevorderend is voor de betrouwbaarheid. Communicatie met de MCP2515 vindt plaats via de SPI bus en dat is een betrouwbaardere methode om binnenkomende berichten te detecteren dan de interrupt pin. Daarom gebruik ik deze pin niet meer.
 
Ik ga dus nu verder volgens het volgende schema


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

Kranenberg

meino

  • Offline Offline
  • Berichten: 482
Re: Automatisering voor Kranenberg - Arduino's, bezetmelders, wissels, seinen
« Reactie #40 Gepost op: 11 augustus 2018, 15:05:33 »
Even nog iets. Al deze testen zijn gedaan met standaard bordjes uit China. Daarop wordt de MCP2515 aangestuurd op 8Mhz. Ik ben van plan om deze 8Mhz kristallen te vervangen door 16 of 20MHz kristallen om te kijken hoe groot het verschil is.

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

Kranenberg

meino

  • Offline Offline
  • Berichten: 482
Re: Automatisering voor Kranenberg - Arduino's, bezetmelders, wissels, seinen
« Reactie #41 Gepost op: 26 december 2018, 18:06:42 »
Nu de grote verbouwing is begonnen, is het is tijd om weer iets te laten zien. Alhoewel het allemaal goed werkte, vond ik de verzameling draad die zich onder de baan heeft verzameld toch wat minder.

Dus het overgaan op de Canbus biedt ook de gelegenheid om dit netter te doen.

Het plan is om dat volgens het volgende schema te gaan doen

Er zijn twee overgangen tussen de klassieke DCC omgeving, de DCC-Interface en de S88-Interface.
De DCC-Interface converteert alle DCC commando's (snelheid- en accessory commando's) naar simpele Canbus berichten. De S88-Interface doet dat de andere kant op, alle ontvangen bezetmelder berichten worden omgezet naar de S88 shiftregister. Dit zijn unieke systemen die slechts een keer voorkomen. Alle controllers kunnen vaker voorkomen. Bijvoorbeeld op dit moment plan ik 7 Sein-Controllers.

De ombouw ga ik in fasen doen. Ik begin met het overzetten van alle seincontrollers naar de Canbus. Daarvoor heb ik de DCC-Interface en een aantal Sein-Controllers nodig.

De DCC-Interface
en de Sein-Controller

Dat biedt gelijk de mogelijkheid om deze vlak bij de seinen te plaatsen.


Dit is het even voor nu.
Groet Meino


A clean desk is a sign of an empty mind

Kranenberg

Robert E

  • Offline Offline
  • Berichten: 821
    • Micro controllers en modelspoor
Re: Automatisering voor Kranenberg - Arduino's, bezetmelders, wissels, seinen
« Reactie #42 Gepost op: 26 december 2018, 21:51:18 »
Citaat
vond ik de verzameling draad die zich onder de baan heeft verzameld toch wat minder.

:) Herkenbaar

Nav seindecoder, kun je niet gebruik maken van een 328Pro Mini / Nano boardjes, zo'n ding van Ali of zo voor 2 dollar...
Board wat je nu gebruikt lijkt me wat overkill :)

Dan kun je met Eagle oid zelf printje maken en in China voor weinig bestellen ....
Beperkt ook de kabel salade rond de seindecoder en de losse printen, die losse CAN print en Mega328 zet je dan gewoon op eigen printje..

Mvg

Robert
MDRRC-II goedkope DIY centrale voor DCC en MM

meino

  • Offline Offline
  • Berichten: 482
Re: Automatisering voor Kranenberg - Arduino's, bezetmelders, wissels, seinen
« Reactie #43 Gepost op: 26 december 2018, 22:10:12 »
Dag Robert

Ik weet dat, maar ik heb zelf absoluut geen ervaring met printjes en Eagle.
Maar belangrijker is, dat ik een Arduino met minimaal 9 PWM pinnen nodig heb. Veel van de seinen zijn driehoogte seinen uit het stelsel 46. Bij de driehoogte seinen heb ik per lamp een driekleuren led. Het vervelende is, is dat er best wel wat variatie in de lichtintensiteit zit tussen de ledjes onderling. Dat is geen probleem als je alleen de primaire kleur (rood, groen of blauw) moet tonen. Maar in dit seinstelsel moet ik ook twee mengkleuren gebruiken, geel en wit. Het vervelende is dat als je bijv. voor geel, rood en groen mengt, dan krijg je een tint die vaak te groen, of te oranje is. Dat hangt van het spectrum van de led en de onderlinge intensiteit af. Om de kleuren van ieder lamp apart op elkaar af te stemmen, moet ik iedere led-kleur apart in zijn intensiteit kunnen regelen, verder bij de mengkleuren moet ik ook de onderlinge menging kunnen regelen om een goede tint te krijgen. Met PWM pinnen is dat allemaal perfect te doen. Maar 3x3 kleurtjes zijn dus 9 PWM pinnen. Vandaar de Mega. O ja, wat ik bijna nog vergeet, ik heb ook nog 4 pinnen voor SPI nodig om met de MCP2515 te kunnen communiceren. 3 van de 4 SPI pinnen hebben een vaste definitie, Op de Uno bijt dat bijv. met een paar PWM pinnen.
Om de bekabeling toch een beetje in de hand te houden, monteer ik iedere Arduino met de ondersteunende hardware (MCP2515, DCC bordje etc) op een stukje spaanplaat, dat ik verder als een eenheid onder de baan schroef. Overigens, qua kosten denk ik dat het niet zoveel uitmaakt, ik heb net weer een paar Mega's besteld voor 6 euri per stuk. Misschien dat een ander bordje wat goedkoper is, maar dan heb je toch ook weer kosten voor een PCB.

Groet Meino
« Laatst bewerkt op: 26 december 2018, 22:20:49 door meino »
A clean desk is a sign of an empty mind

Kranenberg

meino

  • Offline Offline
  • Berichten: 482
Re: Automatisering voor Kranenberg - Arduino's, bezetmelders, wissels, seinen
« Reactie #44 Gepost op: 26 december 2018, 22:30:15 »
Nog even wat meer, de CanBus bestaat uit twee aders die in elkaar gedraaid zijn. Verder combineer ik de Canbus draden ook met een ringleiding voor 5V, waar ik alle systemen, seinen, servo's etc van spanning kan voorzien.


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

Kranenberg