zondag 21 januari 2024

deKoder, even een zijsprong..

Het programma  WMapp is nu zo ver dat alles wat ik tot nu toe op mijn baan heb gemaakt kan worden aangestuurd. Nog lang niet af natuurlijk, dat duurt nog wel even. Even wat anders doen, een stukje scenery. Ik heb bedacht een segment draaischijf, 2 standen. Geplaatst in een locloods met twee deuren. Loc gaat de ene deur in en komt de andere deur weer uit. Rest van het verhaal achter dit stukje scenery zal ik de lezer besparen. Het model voor de segment draaischijf getekend in onshape en in het verre China laten 3D printen. De schijf wordt aangedreven door een 28byj-48 stappenmotor. De deurtjes straks door twee servo's en dan zijn er vast ook nog wel knipperlichten en seinen te vinden in het project. Nodig zijn dan een stepperdriver, servo drivers en andere logische schakelingen. Ik kwam daardoor op het idee van een arduino-project welke een stepperdriver en servodrivers heeft, en outputs voor leds. En logica om alles met elkaar te laten samen werken. Maar zo een 'module' zou geschikt zijn voor nog veel meer andere zelfbouw modelspoor projecten, denk dan aan een spoorwegovergang, spoor draai- of hefbruggen, kranen en nog veel meer. En besloten om er een arduino project van te maken. Ik hoop komende Houten beurs ze bij me te hebben. Met zo een project ben ik meestal een 3 maanden bezig dus dat verklaart waarom er weinig posts de laatste tijd op dit blog kwamen. Blog daarom maar opgewaardeerd en zal ik ook  zijsprongen als deze beschrijven. In het blog kan ik veel meer uitweiden over de grote lijnen en het hoe en waarom, de handleiding, die voor dit project echt 'huge' wordt, volgt later. 

Project deKoder. 

Bestaat uit een standaard arduino uno met daarop gestoken een speciale deKoder shield die ik heb ontworpen  en ook weer bij mijn chineze vrienden heb laten maken.

Aansluitingen zijn er voor een DCC signaal, voeding, een 28byj-48 stappenmotor, 2 servo's, 2 sensoren, 4 drukknoppen en 6 aan/uit outputs.

Op de shield 4 drukknoppen en een reset toets. Een 4-digit 7segment display. Dit samen is dit de ui. (User interface)

In de sketch, het programma in de arduino, is opgenomen de aansturing van de stappenmotor en servo's. Deze hebben minimaal 2 en maximaal 8 instelbare standen. Ook in het project 8 timers. Iedere timer heeft een 'aan'tijd en een 'uit'tijd, deze worden afwisselend afgeteld. Na aflopen van een timertijd kunnen tot max. 6 verschillende of dezelfde  acties worden ingesteld. Deze worden na elkaar uitgevoerd. Wanneer de aantijd begint wordt de actie aangezet, na afloop van de aantijd wordt de actie uitgezet. Na afloop van de uittijd en weer het begin van de aantijd wordt de volgende actie aangezet en zo door totdat alle acties zijn gedaan. Dat is dan het einde van 1 cyclus. Het aantal cycli kan worden ingesteld of continue zodat dit gewoon door blijft gaan. 

Die acties kan zijn het omzetten van stappenmotor of servo, aanzetten van outputs. Maar het meest bijzondere is dat de timers kunnen worden genest, je kan met een timer een timer starten, die op zijn beurt weer een andere timer start die dan iets doet. Hiermee kunnen hele sequenties van gebeurtenissen worden gestart. 

Als voorbeeld mijn segmentdraaischijf. Over de DCC een commando sturen om de schijf naar stand 2 te zetten. De segment schijf is nu bezet. Daar is in voorzien met een functie die een instelbare actie aanzet. Output'bezet' is daar bv.voor te gebruiken. Deze 'bezet' output is dan optioneel weer te gebruiken voor een bezetmelding. De stappenmotor en de servo's  hebben een mogelijkheid om een timer te starten na het ontvangen van een draaicommando. De motor wacht met draaien totdat deze timer is afgelopen. Deze timer zet de beide servo's om, zodat de deuren opengaan. Ook start deze timer een andere timer welke is ingesteld op een wisselend knipperlicht op de outputs 1 en 2. Na aflopen van deze timer doet de stappenmotor de beweging. Daarna wordt de bezetmelding weer vrijgegeven en een timer gestart die de deuren weer sluit en de knipperlichten uitzet.

Wordt vervolgt...



Geen opmerkingen:

Een reactie posten

SchakelBord

Tijdje niet gepost. Werk aan WMapp staat even stil omdat ik aan andere projecten momenteel werk. Een robot schip, werknaam RoBoot waarmee st...