Doel:€250.00
Donaties:€0.00

Per saldo:€-250.00

Steun ons nu!

Laatst bijgewerkt
op 03-12-2025

Vacature: secretaris bestuur
Algemeen

De stichting

Recente berichten

Servo's voor de deuren van de Volmer E-lokloods. door ruudns
Vandaag om 19:36:05
Een diorama in TT (VEB Schwellenrost) door Kees-Jan
Vandaag om 19:34:32
La vie...Sud-Est; zolderbaan met thema zuidoost Frankrijk door 741230
Vandaag om 19:32:59
Toon hier je nieuwe (model-) spooraanwinst(en)... door Mispoes
Vandaag om 19:31:45
upload deleten door Pauldg
Vandaag om 19:28:54
3 januari NVBS oliebollenrit door Forever Rocofan
Vandaag om 19:14:50
Modelspoordagen 10 & 11 januari 2026 door Ben
Vandaag om 19:09:36
De IJmuider spoorlijn - korte geschiedenis en plaatjes door Jeronimos
Vandaag om 19:06:33
ESU V5 Decoder setting door Remunj
Vandaag om 18:24:54
'Worst Case' materieel voor testen vrije ruimte, etc... door 741230
Vandaag om 18:22:29
Rondom Charlois door hervé
Vandaag om 18:20:55
Lima IRM pimpen door 008200
Vandaag om 17:32:13
Raadplaatje door Gerrit H
Vandaag om 17:18:35
Problemen met digikeijs drc1100 lichtset inbouw door Dave.......
Vandaag om 17:05:10
Klein mobiel ontwerp met thema stadsmuren door Slotticar
Vandaag om 17:04:30
Ervaringen met bezorgdiensten (PostNL, DHL, etc) door EddyK
Vandaag om 16:42:31
contacten roco line wissel door Klaas Zondervan
Vandaag om 16:32:41
Mijn eerste H0-modeltreinbaan in aanbouw door Silvolde
Vandaag om 15:58:47
Sankt Georgen. door AndrevdG
Vandaag om 15:42:43
US diorama in H0 door Ronald Halma
Vandaag om 15:34:35
Ombouwen Roco 1100 naar digitaal door Peter J K
Vandaag om 15:01:33
Nederland jaren 50 op basis van mijn roots door Wim Vink
Vandaag om 14:32:52
Bouwverslag BlueBrixx BR 01 No.108054 (plusminus 1:18) door MOVisser
Vandaag om 13:24:28
Booster voor de Marklin CS 1 (60212) door KNed
Vandaag om 13:05:27
De overeenkomst tussen een Ovaalramer en een Motorpost. door FritsT
Vandaag om 12:27:03
Ombouw/Pimpen Bolle neuzen door bollen neus
Vandaag om 11:51:16
De (3d) knutsels van Ronald. door DH1-3104
Vandaag om 10:20:24
Yamorc 8116 en MP1 MTB door FredD
Vandaag om 09:56:09
Etalage treinbaan aan de Burgemeester Reigerstraat Utrecht door henk
Vandaag om 09:32:24
Bahnstrecke 5867 door Jelmer
Vandaag om 08:39:19
  

Auteur Topic: Servo sturing, topic ###  (gelezen 1916 keer)

Stieven76

  • Offline Offline
  • Berichten: 128
Servo sturing, topic ###
« Gepost op: 29 September 2022, 19:52:36 »
Voor mijn nieuwe plan heb ik 10 wisselaandrijvingen nodig, met punstuk polarisatie.
Het liefst wil ik dit met servo's doen.
Na wat opzoek werk op het net en het MSM forum lijkt de ESU Switchpilot 3 de beste omdat deze reeds 8 servo's kan sturen, al heb ik er dan nog wel 2 te kort.  Kan hier ook puntstuk polarisatie op?

Of bestaan er reeds Arduino toepassingen die dit aantal servo's kan aansturen? Zelf een beetje knutselen is ook wel leuk en het drukt wss de prijs.
Servo's  digitaal schakelen is een optie, met knopjes moet wel kunnen.

Voor de Arduino had ik op mijn home forum(MSM) een tip gekregen om een PCA9685 bordje aan de Arduino te koppelen. Dan kan je idd 16 servo's besturen, meer dan voldoende voor mij.
Nu heb ik ondertussen al wat filmpjes hierover gezien, maar er zit nergens een voorbeeld hoe ik die servo's apart kan sturen met drukknoppen. Om 10 servo's te bedienen heb je 20 drukknoppen nodig. Zoveel pinnen zijn er niet op aanwezig.

Of zijn er nog andere Arduino oplossingen mogelijk?

Ik weet dat er al talloze topics hierover verschenen zijn maar het is toch niet gemakkelijk om de beste oplossing te vinden.

bask185

  • Offline Offline
  • Berichten: 5183
Re: Servo sturing, topic ###
« Reactie #1 Gepost op: 29 September 2022, 20:13:37 »
Ik kom er morgen op terug. Maar er zijn zat oplossingen. Ik heb er een paar.

Bas

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

heuvelbaan

  • Offline Offline
  • Berichten: 488
    • opbouw blog treinbaan
Re: Servo sturing, topic ###
« Reactie #2 Gepost op: 29 September 2022, 20:25:47 »
Had je al eens aan ArCoMoRa gedacht?
https://www.arcomora.com/
De bedenker hier van wandelt ook op dit forum rond.  (y)

haes

  • Offline Offline
  • Berichten: 835
  • Hellendoorn en NAM Schoonebeek in FiNe
Re: Servo sturing, topic ###
« Reactie #3 Gepost op: 30 September 2022, 14:55:13 »
Samen met mijn zwager uitgedokterd. Arduino met schakelaar besturing te vinden op https://github.com/videobuff/Servosturing-Modelbaan-Arduino
groet, Hans
Hellendoorn station en Schoonebeek Olieverlading in FiNescale/Fremo N normen

bask185

  • Offline Offline
  • Berichten: 5183
Re: Servo sturing, topic ###
« Reactie #4 Gepost op: 30 September 2022, 22:00:38 »
Citaat
Ik kom er morgen op terug
He he.. eindelijk computer tijd!

Citaat
Of zijn er nog andere Arduino oplossingen mogelijk?

Wat jij wilt, is allemaal mogelijk en het valt nog mee hoe moeilijk het is. Er zijn meerdere manieren waarop je je wissels dmv een arduino kan aansturen.

Om te beginnen, de gemiddelde arduino kan zonder PCA9685 zelfstandig 12 servo's aansturen.

Citaat
Om 10 servo's te bedienen heb je 20 drukknoppen nodig
Je kan wel 2 drukknoppen per losse wissel gebruiken. Maar waarom zou je dat doen? Je kan namelijk ook wipwap schakelaar gebruiken en dan heb je nog maar 1 inputpin nodig per wissel. Dat scheeltje al 10 pinnen en 10 draden.

Dat gezegd hebbende, losse wissels schakelen.. dat is onpraktisch. Mijn ervaring is dat je er altijd wel eentje vergeet. En met puntstukpolarisatie.. dan heb je kortsluiting  ;D

Waar je ook aan kan denken, is dat je dat je een complete wisselstraat kan stellen met een knopje. Ik ken je sporenplan niet, maar als we het bijvoorbeeld over een symmetrisch opstel terrein hebben (dus 6 sporen, 5 wissels links, 5 wissels rechts) dan zou je het in principe kunnen redden met 6 druktoetsen.

We kunnen ook 1 klein stapje verder gaan en dat is om te werken met het Nx principe. Dan moet je gelijktijdig een start en een stop knop indrukken, en geldige combinaties leiden dan tot het stellen van de juiste wissels. Dus eigenlijk hetzelfde als wat ik hier boven noemde, maar dan met 2 knopjes per straat ipv 1.

Citaat
Zoveel pinnen zijn er niet op aanwezig
Nee dat klopt, maar dat hindert niet. Knoppen ed kan je op meer manieren realiseren zodat je minder pinnen nodig heb. Je kan bijvoorbeeld door middel van weerstandsdelingen wel 50 of 100 knoppen aansluiten op een van de analoge pinnen. Het nadeel is dat je dus wel die weerstanden moet solderen. Een voordeel is dat je maar drie hele draden hoeft te trekken tussen arduino en je schakelpaneel. Dat zijn 5V, GND, en een analoge pin.


Een andere methode is om een matrix te maken. Wat je dan feitelijk doet, is werken met kolommen en rijen. De kolommen sluit je dan aan op een pin die als output fungeert en de rijen worden dan je inputs. De arduino maakt dan de kolompinnen 1 voor 1 hoog en leest dan alle inputs in. Als je dus 20 schakelaars wilt, kan dat met 9 pinnen. 4 kolommen, 5 rijen (of andersom)

(die diodes zijn strikt gezien niet nodig mits je maar 1 knop tegelijk indrukt. Als je bijvoorbeeld wel NX doet en dus 2 knoppen tegelijk wilt indrukken dan zijn die diodes nodig).

Een ander punt waar je ook over moet nadenken. Servo kabels wil je kort houden. Als je je kabels te lang maakt dan kunnen de servo's uitslaan als een trein te hard rijdt ofzo. Dat is meestal oplosbaar door een pull down weerstand te plaatsen zo dicht mogelijk bij de servo zelf, maar de kabel kort houden, is altijd beter.

Om die reden en om je een 3e oplossing voor het pinnen tekort te bieden, raad ik aan om niet 1 arduino te gebruiken, maar om er 2 of 3 of 4 te gebruiken. Zo duur zijn ze ook weer niet.

Weet wel, als je dus meerdere arduino's gebruikt dat wisselstraten met of zonder NX iets lastiger worden maar ook daarvoor zijn er oplossingen. Die dingen kunnen namelijk met elkaar communiceren. Bedradingstechnisch is dat wel heel fijn, want je kan namelijk 1 arduino dan in een schakelpaneel bouwen en dan een tweede ( en een derde?) dicht bij je wissels zetten en dan hoef je tussen de twee of drie arduino's slechts 2 kabels te trekken voor de comminucatie (4 als je ook voeding en massa wilt doorvoeren). Hoe ze precies communiceren laat ik voor nu achterwege dat komt tzt wel of niet  ;D

Citaat
Servo's  digitaal schakelen is een optie, met knopjes moet wel kunnen.
Je kan 1 arduino (of alle arduino's net wat je kiest he?) voorzien van een DCC interface. Die kan je zelf maken, voor de arduino NANO kan ik je een shield toesturen. Dan kan je behalve de knopjes ook de wissels digitaal aansturen. Of je daarmee iets daadwerkelijk wint, kan ik niet voor je invullen. Naar mijn mening is fysieke knopjes icm wisselstraten de beste manier van aansturen  :angel:

Citaat
puntstuk polarisatie
About that zelf geloof ik heilig in mechanische schakelaars om dit probleem op te lossen. Maar relais .. dat kan natuurlijk ook.

Wat de hardware betreft. In jouw geval zou ik een (of meerdere  :P ) arduino Nano's kopen met een bijbehoren IO shield.

IO shield


Arduino nano


Dat shield vind ik fijn omdat je er direct servo's op kunt aansluiten.
Dat shield vind ik ook fijn omdat je er ook direct relais kaarten op kunt aansluiten.


Met deze drie items, hoef je dus niks te solderen. Je kan alles verbinden met dupont/jump kabels


Maak je niet druk om code. Als jij keuzes gemaakt heb, dingen gekocht heb en een half duidelijke uitleg geef van wat je wilt. Kan ik een kant&klaar programma voor je opstellen.

Ik heb eerder al een "ServoSweep" library gemaakt. Daarmee kan je makkelijk een servo langzaam laten opschuiven tussen 2 standen. De servo wordt automatisch afgeschakeld bij het bereiken van deze standen ( <== dit is wat je wilt hebben). Optioneel kan je halverwege de slag een relais laten toggelen.

Ik doe het programma dan dusdanig bouwen zodat alle informatie omtrent wisselstraten op een plaats komen te staan wat je dan zelf kan aanpassen. Dat kan er dan zo uitzien:
                       // knopje   // wissels + standen
const int wisselStraat1[] = { 1,    1|K  ,2|R  , 4|K  } ;  // Knopje 1 aan -> wissel 1 Krom, 2 Recht en 4 Krom
const int wisselStraat2[] = { 2,    4|R  ,7|R  , 9|R  } ;  // Knopje 2 aan -> wissel 4 recht, 7 Recht en 9 recht etc etc
const int wisselStraat3[] = { 3,    5|K  ,8|R  , 3|K,  6|R  } ;  // dit kan zo lang als je wilt..
// etc

const int servoSnelheid = 20 ; //  pas snelheid aan voor alle servo's

Als een wissel dan de verkeerde kant opklapt, dan kan jij zelf een 'R' in een 'K' veranderen en de richting is omgedraaid. Dat gezegd hebbende, sommigen vinden programmeren leuk. Ik weet niet of jij er iets van kaas heb gegeten. Mocht je het nou leuk vinden, of het willen oppakken. Ik heb in NL een verkapte samenvatting gemaakt waarin ik de gebruikte taal uitleg en waar wat tips en tricks in zitten.

Allerlaatste puntje, dan stop ik er mee  :police:. Zoals je waarschijnlijk al weet, servo's bewegen naar hun absolute posities of they die trying. Als een servo dit fysiek niet kan halen omdat je wisseltongen al in positie zijn. Dan blijven servo's doorduwen todat ze het wel halen. Servo's zoals de sg90 (sg = soft gear) die hebben plastic tandwielen en die gaan gewoon stuk. Gelukkig kosten deze 50 cent ofzo.... Maar ajb koop mg90 servo's (mg = metal gear) die gaan niet stuk. Vanwege dat 'doorduwen' doet mijn code de servo dus afschakelen na het draaien. Dan stoppen ze namelijk met duwen en dan stoppen ze ook met brommen, herrie maken en stroom trekken.

Ik heb, denk ik, alles behandeld omtrent het laten-bewegen-van-wissels-door-servo's-dmv-arduino's. Ik hoop dat ik duidelijk ben geweest in mijn uitleg  ;).

Als je vragen heb of keuzes gemaakt, horen we dat graag.

Mvg,

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

Hans van de Burgt

  • Onshape Gebruikersgroep
  • Offline Offline
  • Berichten: 6649
Re: Servo sturing, topic ###
« Reactie #5 Gepost op: 01 October 2022, 10:55:51 »
@Bas,

Wissels digitaal aansturen (naast jouw knopjes), heeft het voordeel dat je eea ook kunt gebruiken icm programma’s als Traincontroller of RocRail. Daarmee maak je (gedeeltelijk) automatisch rijden mogelijk.

Gr, Hans

Fritsprt

  • Offline Offline
  • Berichten: 2611
Re: Servo sturing, topic ###
« Reactie #6 Gepost op: 01 October 2022, 19:41:11 »
Citaat
We kunnen ook 1 klein stapje verder gaan en dat is om te werken met het Nx principe.
En wat is dat Nx principe?
Groet Frits

Klaas Zondervan

  • Online Online
  • Berichten: 27037
    • Pagina van klaas
Re: Servo sturing, topic ###
« Reactie #7 Gepost op: 01 October 2022, 21:31:19 »
NX is een afkorting van eNtrance-eXit. Simpel gezegd: je drukt een knop aan het begin van een te volgen route over een wisselstraat, en dan een knop aan het einde van de route. En dan worden alle wissels daartussen automatisch goed gezet.
Projecten:
Dubbelom
Halte Assel
Geluk, dat is vooraan staan als de overweg gesloten is.

bask185

  • Offline Offline
  • Berichten: 5183
Re: Servo sturing, topic ###
« Reactie #8 Gepost op: 01 October 2022, 21:37:16 »
Fair question. Bij het Nx systeem, moest een seinhuiswachter gelijktijdig op 2 knoppen drukken om een rijweg te leggen. Je had aparte begin knoppen en aparte eind knoppen. Dit systeem werd door de NS ook veel gebruikt. Waarom zou je dit willen hebben in plaats van 1 knop per wisselstraat?

Onderstaand heb ik drie voorbeelden van hetzelfde plan.

In plan 1 heb ik een drukknop per spoor. Dit betekent dat de wissels zowel links als rechts naar het spoor van de knop worden gesteld. Dit is makkelijk voor de bediening, maar heeft als nadeel dat treinen niet gelijktijdig van beide richtingen naar verschillende sporen kunnen rijden. Ze zouden beide op hetzelfde spoor uitkomen.

Plan 2, is net als plan 1 maar dan met 2 knoppen per spoor. Eentje voor de linker wissels en eentje voor de rechter wissels. Hiermee kan je wel gelijktijdig van twee kanten het emplacement op rijden.

Plan 3 werkt volgens het Nx principe. Je hebt nu weer 1 knop per spoor, maar je hebt nu 2 extra knoppen. Eentje voor het linker en eentje voor het rechter spoor. Voordeel is dat je minder knoppen nodig heb dan bij plan 2. Door gelijktijdig op of de linker of de rechter knop te drukken en op een van de 7 spoor knoppen, kan je een straat stellen.



In dit simpele voorbeelden zijn plan 2 en 3 praktisch even makkelijk in het gebruik. Maar wat nou als je sporenplan wat ingewikkelder is zoals bijvoorbeeld deze?

Dit is een verkapte kopie van station Hoorn (stoomtram zijde). In dit voorbeeld kan je simpelweg niet zo maar een knop toekennen aan 1 wisselstraat. Stel nou dat je naar dat schuine spoor wilt rijden helemaal boven in. Er zijn dan vijf mogelijke sporen waar een trein vandaan zou kunnen. Dit kan je dus niet onder 1 knop krijgen. Dat lukt niet omdat dit sporenplan daar te complex voor is.

In het eerste voorbeeld zijn er 14 mogelijke geldige rijwegen. In mijn versie van station Hoorn zijn er 19 (tel het gerust na, misschien zit ik er naast  :P)

Dit voorbeeld ontleent zich daarom perfect aan het Nx systeem. Je kan elk spoor waar een trein zou kunnen stoppen een knopje toekennen en dan kan je elke mogelijke combinatie leggen.



Dus wat de 'beste' keuze is omtrent het gebruik van schakelaars kan erg afhangen van het sporenplan.

Mvg,

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

Frank 123

  • Offline Offline
  • Berichten: 6550
Re: Servo sturing, topic ###
« Reactie #9 Gepost op: 02 October 2022, 10:16:40 »
Als ik alle spoor beëindigen als mogelijk start en/of eind punt beschouw zijn het er volgens mij nog wel een paar meer dan 19.

Maar principe en voordeel van Nx is wel helder uitgelegd  (y)
Bahnstrecke 5867
Am Ende der Strecke
Den gamla sågverket (gepland)

Stieven76

  • Offline Offline
  • Berichten: 128
Re: Servo sturing, topic ###
« Reactie #10 Gepost op: 04 October 2022, 12:38:22 »
Bas,

Bedankt voor je grondige uitleg! Much appreciated ;D
Voor mij mag het simpel zijn, rijwegen instellen hoeft niet. Is maar een kleine 'baan', bestaande uit 2 modules. Ik vind het wel leuk om de wissels zelf goed te zetten.
Gewoon een knopje of iets dergelijks om de wissels om te zetten. Op mijn vorige module had ik 3 Conrad wissel aandrijvingen zitten. Deze kon ik sturen met een tuimelschakelaar.

Als illustratie het originele baanplan. Het is sindsdien wel wat geöptimaliseerd maar hier heb ik nu geen afbeelding van. Op mijn Flickr vind je wel meer foto's.
new-layout_2

Een arduino Uno heb ik hier wel liggen en heb ik een jaar geleden wel eens wat mee geëxperimenteerd. Kabels heb ik ook een doosje vol van.
Solderen kan ik wel, en programmeren ook.
Al is Arduino programmeren wel iets volledig anders dan wat ik dagelijks doe, nl Microsoft .Net (backend en frontend, vooral webbased).

De shields die je voorstelt, passen deze ook op een Arduino Uno r3? Zoja dan kijk ik al eens om ze te bestellen.
Alvast bedankt voor de info! Je kan me ook altijd bereiken via email of pm.
« Laatst bewerkt op: 04 October 2022, 12:46:02 door Stieven76 »

bask185

  • Offline Offline
  • Berichten: 5183
Re: Servo sturing, topic ###
« Reactie #11 Gepost op: 04 October 2022, 14:00:36 »
Was al bijna bang dat je je eigen draadje vergeten was  ;D

Citaat
Voor mij mag het simpel zijn, rijwegen instellen hoeft niet. Is maar een kleine 'baan', bestaande uit 2 modules. Ik vind het wel leuk om de wissels zelf goed te zetten.
Fine by me, bovendien omprogrammeren naar rijwegen kan achteraf altijd nog   :P

Citaat
De shields die je voorstelt, passen deze ook op een Arduino Uno r3?
Als ik die gaten zo zie van dat IO shield, kan je er headers op solderen zodat hij ook op een uno past. Maar ik heb even gauw gegoogled en deze is misschien beter geschikt.

Dit shield heeft zo'n PCA9685 ingebouwd, waardoor je meteen 16 outputs meer tot je beschikking heb. Dit shield gebruikt alleen de pinnen A4 en a5 van de arduino. Dat betekent dat je buiten de servo's om A0 t/m A3 + 0 t/m 13 = 18 IO pinnen. Voor 10 puntstukrelais en 10 schakelaars, kom je er net 2 te kort, maar de pinnen van de PCA9685 kunnen ook gebruikt worden als digitale uitgangen (ipv pwm) en daar zijn er nog 6 beschikbaar.

In totaal heb je dan nodig:
- een 8-voudig relaiskaart + 2-voudig relaiskaart (of 5x 2-voudig, net wat je wilt) https://www.otronic.nl/c-5326459/relais/
- dat shield van de link in dit bericht
- je arduino uno
- wat jumper kabels om je relais aan te sluiten (male-female en een setje female-female)
- 10x toggle switches om in je paneel te bouwen. https://www.elektronicawereld.nl/categorie/componenten_onderdelen_schakelaars/schakelaars_tuimel/product/5565/mini_tuimelschakelaar_1x_om/details

Schema komt tzt wel, stelt niet veel voor  ;)

Mvg,

Bas



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