OS-ServoDriver


De Open Source Servo Drivers/Decoder of OS-ServoDrivers zijn een paar simplistische DCC decoders om servomotoren aan te sturen. Er zijn twee varianten van. De eerste variant, de Mk1, kan acht servo’s aansturen. De tweede variant, de Mk2, kan zes servo’s aansturen te samen met onboard relais voor puntstukpolarisatie.

De decoders zijn zodoende geschikt voor alles wat je met een servo motor wilt doen. Behalve voor wissels kan je ook denken aan armseinen en ontkoppelaars.

  1. Gebruikershandleiding
    1. Aansluiten
    2. Configuren
      1. DCC Adres koppelen
      2. Configureren met de knopjes
      3. Configureren met je DCC systeem
    3. Werking
  2. Het ontwerp

Gebruikershandleiding

Aansluiten


Beide varianten hebben twee 2-polige aansluitingen naast elkaar zitten. Een voor spanning en een voor DCC. De voeding moet tussen de 7V en 19V bedragen en mag zowel AC(14V max) als DC zijn. Je kan de decoder ook voeden met DCC.

De servo motoren zelf kunnen direct op de daartoe bestemde aansluitingen aangesloten worden. Daarbij is het wel van belang dat dit goed om wordt gedaan. De decoder is gemarkeerd met GND, 5V en S1 – S8.

GND <> BRUIN
5V  <> ROOD
Sx  <> ORANJE

Bij de Mk2 zit een nog een 6-polige kroonsteen. Hierop kan je de puntstukken van je wissels aansluiten. Ze zijn genummerd F1-F6 en ze corresponderen met de servo nummers S1-S6.

N.B. Alle puntstuk relais delen dezelfde DCC aansluiting. Het nadeel is dat de Mk2 niet geschikt is als je wisselterugmelding wilt realiseren. Het voordeel daarentegen is dat je minder draden hoeft aan te sluiten.

Configuren


Elke servo kent twee standen voor wissel RECHT en wissel KROM. Standaard zijn de decoders voor-geconfigureerd om de servo’s tussen 80 en 100 graden te laten draaien. Dit zijn weloverwogen standen die voor menig wissels toereikend kunnen zijn. Uiteraard kan je de servo standen configureren naar wat je nodig hebt.

Er zijn twee manieren om de standen van de servo motors aan te passen. Dit kan met de onboard knopjes of via je DCC systeem. Het globale idee is dat je kan blijven kijken naar je wissels terwijl je het configureren uitvoert.

Omdat de decoders soms op onhandige plaatsen kunnen zitten, kan het voorkomen dat je niet gelijktijdig op de knoppen kan drukken en je wissel in de gaten kan houden. Om die reden bestaat de 2e configuratie methode via je DCC systeem. Dan kan je iets van een handregelaar gebruiken om de servo standen te configureren.

DCC Adres koppelen


Het eerste wat je moet doen, is adressen toekennen aan de decoder. De OS-ServoDrivers gebruiken opvolgende DCC adressen, 8 voor de MK1 en 6 voor de Mk2. Het begin adres kan je kiezen door de SELECT knop 2 seconde ingedrukt te houden. De rode LED gaat dan constant knipperen. Dit betekent dat de decoder wacht op een wisseladres. Het eerste wisseladres wat voorbij komt, wordt het eerste adres van de decoder. Standaard staat het adres van de eerste motor op 1.

Configureren met de knopjes


Beide decoders werken hetzelfde en hebben dezelfde knopjes met een klein verschil. De Mk1 versie heeft een pijltje naar links en naar rechts om de aan te passen servo’s te selecteren. Bij de Mk2 is dit maar 1 knop genaamd SELECT. Als je op deze knopjes drukt, zal telkens 1 servo omklappen. Dit is de servo die je kan aanpassen en ze klappen om zodat je kan zien wat je aan het doen bent.

Met de UP en DOWN knoppen (Bij de Mk1 gemarkeerd pijlen en bij de Mk2 gemarkeerd met UP en DOWN) kan je de servo stand aanpassen. Hij schuift telkens 3 graden op per druk.

Per servo kan je twee standen aanpassen. Met de SEL (Mk1)/TOGGLE (Mk2) knoppen (BLAUW omcirceld) kan je de motor laten toggelen naar de andere stand. Dan kan je met UP en DOWN de andere stand van de motor aanpassen.

Knoppen op de Mk1
Knoppen op de Mk2

N.B. Het configureren met de knoppen is geen aparte modus of iets dergelijks. De knoppen werken simpelweg altijd. Je hoeft je dus niet druk te maken over het betreden of het verlaten van deze configuratie modus, want het is dus geen modus.

Configureren met je DCC systeem


Om de servo’s in te te stellen met je DCC systeem is het nodig dat je een lok met adres 9999 kan aansturen. Je moet hierbij bepaalde stappen langsgaan in de juiste volgorde.

1). Allereerst moet je de motor die je wilt aanpassen 1x aansturen met zijn DCC adres.

2). Van lok 9999 moet je de verlichting F0 aanzetten.

3). Dan moet je F1 en F2 uitzetten en de loksnelheid moet op 0 staan. Voor de Mk2 is het ook nodig dat F3 uitstaat. Als een van deze voorwaardes niet goed is, knippert de LED snel.

4). Als alle condities van stap 3 in orde zijn, zal de motor naar 90 graden gaan draaien. Vanaf dit moment is de servo continu bekrachtigd en de servo stand volgt de aangestuurde snelheid van de lok. Met snelheden in de richting vooruit kan je de servo boven de 90 graden draaien en met snelheden in de richting achteruit kan je de servo onder de 90 graden draaien.

Als je F1 aanzet, wordt de servo stand voor wissel GEBOGEN opgeslagen.
Als je F2 aanzet, wordt de servo stand voor wissel RECHT opgeslagen.
Als beide posities zijn opgeslagen kan je bij de Mk2 nog het puntstukrelais laten inverteren door op F3 te drukken.

5). Als beide servo standen ingeleerd zijn, moet je F0 weer uitzetten. Dit beëindigt de configuratie voor deze servo.

Als je het hele proces doorlopen heb, kan je dit proces herhalen voor de andere servo’s.

Werking


Als de decoder eenmaal geconfigureerd is en goed is aangesloten. Kan je de decoder simpelweg gebruiken door DCC accessoire adressen aan te sturen met een een van de ingeleerde adressen.

Nu kan het voorkomen dat een servo precies andersom beweegt dan je wilt. Dit kan je oplossen door opnieuw de servo standen aan te passen. Dan wissel je beide posities om.

De Servo Driver onthoudt alles wat je configureert. Hij onthoudt ook hoe de servo motoren staan. Als je de decoder dan en uit- en aanzet, zullen de motoren daarom niet bewegen naar een of andere beginpositie.

Bij de eerste keer opstarten, weet de decoder nog niet waar welke servo is. De servo decoder draait rond 90 graden dat is het midden van het bereik van de servo. Als je servo’s inbouwt voor je wissels, doe dit dan zo zodat de wisseltongen vrij liggen bij 90 graden,

N.B. Bij een veel voorkomende servo motor, de SG90, mag je eigenlijk niet aan de as draaien met je vingers omdat je dan de plastic tandwielen stuk kan maken. De letters SG staan dan ook voor Soft Gear. Ik raad ten alle tijden MG90 of andere servo’s aan met metalen tandwielen.

Omdat deze Servo Driver hoofdzakelijk voor wissels bedacht is, worden de servo motoren na het draaien altijd onbekrachtigd. Voor wissels is het vaak wenselijk om de motor net een klein beetje voorbij het eindpunt te draaien om er zeker van te zijn dat de tongen aanliggen. Het is echter onwenselijk om de motor dan door te laten drukken. Dit maakt vaak een brommend geluid en sommige servo’s kunnen dan zelfs doorbranden. Doordat de Servo Driver altijd de motoren weer afschakelt, kan het niet nagenoeg niet voorkomen dat een motor doorbrandt.

Het ontwerp


De servo decoder is een van mijn Open-Source projecten. Indien je erg krap bij kas zit, is het het voordeligst om ze zelf direct bij de bron te bestellen. Het bestel proces is nagenoeg hetzelfde als bij de OSSD en die vind je hier.

Root sheet van het schema in KiCad 7

Ik heb destijds voor Beneluxspoor.net een vijftal filmpjes gemaakt over het ontwerpen en bouwen van deze decoder. Deze filmpjes laten zien hoe je in ca 2.5 uur van helemaal niks werkt naar een volwaardige en werkende DCC servo decoder. Dus als je wilt weten waar decoders vandaan komen, stay tuned!

De Gerber files, BOM, CPL en source code zijn te vinden op de Train-Science DIY github. Klik hier om de OS-ServoDriver folder te downloaden in zip formaat.

Tevens is de decoder direct bij mij te bestellen via het contactformulier. De kosten bedragen €29,95 per stuk exclusief verzending.

Train Science
It ain’t rocket science

Blog op WordPress.com.