Recente berichten

Pagina's: 1 ... 8 9 [10]
91
Bouw modelbaan / Re: De Geuldalbaan
« Laatste bericht door antoni-a Gepost op 10 augustus 2025, 20:28:44 »
iTom,

Dankjewel.
Het laagje Minitec zand is echt dun. Zonder de onderlaag van grover zand kreeg ik steeds bultjes en scheurtjes in het planumzand. Waarschijnlijk doordat er ondanks het voorbereiden met water/alcohol nog lucht zat opgesloten in het fijne zand. Daardoor zal het ook niet overal hebben gehecht aan de plaat.

De eenvoudigste manier van verwerken is simpelweg de plaat met lijm insmeren, en dan planumssand erover strooien. Maar dan lukt het (mij) niet om het zand een heel gladde structuur te geven.

Benieuwd naar jouw uitvoering.

Groet,
Tony
92
Bouw modelbaan / Re: De Geuldalbaan
« Laatste bericht door antoni-a Gepost op 10 augustus 2025, 20:21:32 »
Jack,

Dankjewel. Dit is dan het eerste stukje van het landschap, afgezien van de duizenden geschilderde dwarsliggers.

Het ballastbed wordt ook alweer zo'n experiment. Ik ben al maanden aan het stoeien met de juiste vorm en kleur van het grind. Na 10-tallen kleuren te hebben gemaakt, en deze te hebben gemengd in verschillende verhoudingen, ligt er nu een 'verweerde-maasgrind-mix' zal ik maar zeggen.

Groet,
Tony
93
Bouw modelbaan / Re: De Geuldalbaan
« Laatste bericht door iTom Gepost op 10 augustus 2025, 16:56:51 »
Ziet er goed uit. Goed om te onthouden en ook eens te proberen.
94
Bouw modelbaan / Re: De Geuldalbaan
« Laatste bericht door SuperSylvester Gepost op 10 augustus 2025, 15:48:46 »
Mooi gedaan! Ben benieuwd hoe dat uitziet als het ballast bed erin ligt
95
Bouw modelbaan / Re: De Geuldalbaan
« Laatste bericht door antoni-a Gepost op 10 augustus 2025, 11:22:57 »
verharding van de perrons

In werkelijkheid hadden de perrons die op de modelbaan worden gemaakt geen verharding van klinkers, maar van grind. Ik gebruik hier het Minitec planumzand voor in de kleuren roestbruin en phonolith. Hetzelfde materiaal dat ik voor de paden langs de sporen ga gebruiken.



Voordat ik aan de perrons van Ov begon heb ik een paar teststukjes gemaakt. Het beste resultaat heb ik bereikt door eerst een laag grover zand te strooien, en vervolgens daaroverheen een laagje planumssand. Dat scheelt ook in het benodigde volume van het planumssand. Het zand is zo fijn dat bij gebruik van een dikke laag planumssand het water-lijm mengsel niet overal tot de plaat bleek door te dringen, ook niet als er eerst met een water-alcoholmengsel werd besproeid. De onderste grovere zandlaag zorgt ervoor dat er ook lijm via de onderzijde van de laag planumssand vloeit.
Uitgangspunt is om de grindverharding van de perrons tot gelijke hoogte met de perronwanden te maken, zoals dat hoort.

Als eerste heb ik het volume achter de perronwanden gevuld met een iets grover zand. Dit is geëgaliseerd met een strookje styreen.




Vervolgens heb ik de perronwanden afgeplakt en het zand met een fijne verstuiver bespoten met een water-alcoholmengsel (10:1), waarna ik met een pipet verdunde boekbinderslijm heb aangebacht.



Met een theezeefje is het fijne Minitec zand aangebracht, waarbij er meer bruin is gebruikt dichter bij de sporen. Om te zorgen dat het grind langs de perronwaden dichtgelopen lijkt is het geheel langs de perronwanden afgesmeerd met een paletmes. Daarna heb ik nogmaals een beetje planumzand gestrooid. De bovenkant van de dwarsliggers is voorzichtig schoongemaakt met een penseel zodat het zand mooi gelijk blijft met de perronwand.





Uiteindelijk ziet alles er egaal uit zolang de lijm niet uitgehard is. Het verschil tussen 'veel belopen' en 'minder belopen grind' is nauwelijks zichtbaar. Het is een beetje moeilijk in te schatten hoe het uiteindelijke resultaat gaat worden.



Het perron rechts op de foto is pas gemaakt, en het perron links is een week eerder gemaakt.



Uiteindelijk ziet het er nu zo uit.





 
96
Planning modelbaan / Re: Klein en simpel rangeerbaantje
« Laatste bericht door Frits Gepost op 6 augustus 2025, 07:08:09 »
Dat opgebroken stukje spoor links naast de loods vind ik wel iets hebben. Wat niet in de weg lag kon blijven liggen. Merkwaardig. :)
97
Planning modelbaan / Re: Klein en simpel rangeerbaantje
« Laatste bericht door Bert Gepost op 4 augustus 2025, 17:32:27 »
Prima Tom, kan me voorstellen dat het je niet past.
Kreeg nog wel een idee. Je kunt het ook aansturen met een DCCnext uitgang.
98
Planning modelbaan / Re: Klein en simpel rangeerbaantje
« Laatste bericht door iTom Gepost op 4 augustus 2025, 15:54:15 »
Beste @Bert

Ik denk dat dit toch een beetje te hoge wiskunde voor mij is.
Verder heb ik geen DCC centrale zoals beschreven, ik heb de omgebouwde DR5000 als YaMoRC USB.

Ben nu bezig de beide s90 servo's om te wisselen voor MG90S kijken of dat beter is.
Bedankt voor je advies.
Zal de beide sketch zeker bewaren.
99
Planning modelbaan / Re: Klein en simpel rangeerbaantje
« Laatste bericht door Bert Gepost op 3 augustus 2025, 12:45:12 »
En dan een sketch om hem DCC aan te sturen


#include <Servo.h>
#include <DCC_Decoder.h>

#define SERVO_PIN 9    // Pin waar de servo op is aangesloten
#define DCC_ADDR 3     // DCC-adres voor deze servo (standaard = 3)

Servo mijnServo;

// Instelbare parameters via DCC
int beginHoek = 0;      // Standaard beginhoek (0°)
int eindHoek = 90;      // Standaard eindhoek (90°)
int snelheid = 15;      // Snelheid in ms per graad
int huidigePositie = 0; // Huidige positie van de servo

void setup() {
  Serial.begin(115200);
  Serial.println("DCC-gestuurde Servo Controller");

  mijnServo.attach(SERVO_PIN);
  mijnServo.write(beginHoek); // Startpositie instellen

  // DCC-decoder initialiseren
  DCC.SetBasicAccessoryDecoderPacketHandler(DCCPacketHandler, true);
  DCC.SetupDecoder(0x00, 0x00, 0); // Basis DCC-instellingen
  Serial.println("Wacht op DCC-commando's...");
}

void loop() {
  DCC.loop(); // DCC-decoder bijwerken
}

// Verwerkt DCC-commando's
void DCCPacketHandler(int adres, int functie, bool direction, bool power) {
  if (adres != DCC_ADDR) return; // Alleen reageren op het juiste DCC-adres

  if (functie == 1) { // Functie F1: Stel beginhoek in (0-180)
    beginHoek = map(direction ? 1 : 0, 0, 1, 0, 180);
    Serial.print("Beginhoek ingesteld op: ");
    Serial.println(beginHoek);
  }
  else if (functie == 2) { // Functie F2: Stel eindhoek in (0-180)
    eindHoek = map(direction ? 1 : 0, 0, 1, 0, 180);
    Serial.print("Eindhoek ingesteld op: ");
    Serial.println(eindHoek);
  }
  else if (functie == 3) { // Functie F3: Start beweging
    beweegServo();
  }
}

// Beweeg de servo van begin- naar eindpositie
void beweegServo() {
  Serial.println("Beweging gestart...");
 
  if (beginHoek < eindHoek) {
    // Naar boven bewegen
    for (huidigePositie = beginHoek; huidigePositie <= eindHoek; huidigePositie++) {
      mijnServo.write(huidigePositie);
      delay(snelheid);
    }
  } else {
    // Naar beneden bewegen
    for (huidigePositie = beginHoek; huidigePositie >= eindHoek; huidigePositie--) {
      mijnServo.write(huidigePositie);
      delay(snelheid);
    }
  }
  Serial.println("Beweging voltooid");
}


Met uitleg:

Hoe werkt het?**
1. **DCC-adres instellen** 
   - Het DCC-adres van de servo is standaard `3` (aanpasbaar via `#define DCC_ADDR`). 
   - Gebruik een DCC-centrale (zoals Rocrail, JMRI of een DCC-command station) om commando's te sturen.

2. **Commando's via DCC-functies** 
   - **F1 (Aan/Uit)** → Stelt de **beginhoek** in (0-180°). 
   - **F2 (Aan/Uit)** → Stelt de **eindhoek** in (0-180°). 
   - **F3 (Aan)** → Start de beweging van begin- naar eindstand. 

3. **Snelheid aanpassen** 
   - De snelheid is handmatig instelbaar in de code (`int snelheid = 15;`). 

---

### **Benodigdheden**
- **DCC Decoder** (zoals een Arduino met DCC-interface of een standaard DCC-accessoire-decoder). 
- **Servo** (aangesloten op de ingestelde pin, standaard **Pin 9**). 
- **DCC Command Station** (bijv. Digitrax, Lenz, Roco). 

### **Mogelijke uitbreidingen**
- Meerdere servos aansturen met verschillende DCC-adressen. 
- Snelheid instelbaar maken via DCC (bijv. via F4). 
- Feedback geven naar de centrale (bijv. via RailCom). 
100
Planning modelbaan / Re: Klein en simpel rangeerbaantje
« Laatste bericht door Bert Gepost op 3 augustus 2025, 12:38:53 »
Hoi Tom,
Mooi bezig.

Je zou een losse Nano kunnen gebruiken en daar een sketch op kunnen laden met een instelbare snelheid die veel lager is.

Ik laat AI vaak het meeste werk dien, meestal gaat dat meteen goed.
Onderstaand een voorbeeld, niet getest.


#include <Servo.h>

Servo mijnServo;  // Maak een servo object aan

// Standaardwaarden
int beginHoek = 0;
int eindHoek = 90;
int snelheid = 10;  // milliseconden vertraging per graad
int huidigePositie;

void setup() {
  mijnServo.attach(9);  // Sluit servo aan op pin 9
  Serial.begin(9600);
 
  // Initialiseer servo op beginpositie
  huidigePositie = beginHoek;
  mijnServo.write(huidigePositie);
 
  // Toon instructies
  Serial.println("Servo controller met instelbare begin/eindstand en snelheid");
  Serial.println("Gebruik de volgende commando's:");
  Serial.println("b[hoek] - Stel beginhoek in (0-180)");
  Serial.println("e[hoek] - Stel eindhoek in (0-180)");
  Serial.println("s[snelheid] - Stel snelheid in (1-100 ms per graad)");
  Serial.println("r - Start beweging");
  Serial.println("p - Pauzeer beweging");
  Serial.println("Huidige instellingen:");
  printInstellingen();
}

void loop() {
  if (Serial.available() > 0) {
    verwerkCommando(Serial.read());
  }
}

void verwerkCommando(char commando) {
  static int waarde = 0;
 
  if (isDigit(commando)) {
    waarde = waarde * 10 + (commando - '0');
  } else {
    switch (commando) {
      case 'b':  // Beginhoek instellen
        beginHoek = constrain(waarde, 0, 180);
        Serial.print("Beginhoek ingesteld op: ");
        Serial.println(beginHoek);
        break;
      case 'e':  // Eindhoek instellen
        eindHoek = constrain(waarde, 0, 180);
        Serial.print("Eindhoek ingesteld op: ");
        Serial.println(eindHoek);
        break;
      case 's':  // Snelheid instellen
        snelheid = constrain(waarde, 1, 100);
        Serial.print("Snelheid ingesteld op: ");
        Serial.print(snelheid);
        Serial.println(" ms per graad");
        break;
      case 'r':  // Start beweging
        beweegServo();
        break;
      case 'p':  // Pauzeer beweging
        // Pauzeren gebeurt automatisch aan het eind van een beweging
        Serial.println("Beweging voltooid of gepauzeerd");
        break;
    }
    waarde = 0;
    printInstellingen();
  }
}

void beweegServo() {
  Serial.println("Beweging gestart...");
 
  if (beginHoek < eindHoek) {
    // Naar boven bewegen
    for (huidigePositie = beginHoek; huidigePositie <= eindHoek; huidigePositie++) {
      mijnServo.write(huidigePositie);
      delay(snelheid);
      if (Serial.available() > 0 && Serial.peek() == 'p') {
        Serial.read();  // Leeg de buffer
        break;
      }
    }
  } else {
    // Naar beneden bewegen
    for (huidigePositie = beginHoek; huidigePositie >= eindHoek; huidigePositie--) {
      mijnServo.write(huidigePositie);
      delay(snelheid);
      if (Serial.available() > 0 && Serial.peek() == 'p') {
        Serial.read();  // Leeg de buffer
        break;
      }
    }
  }
 
  Serial.println("Beweging voltooid");
}

void printInstellingen() {
  Serial.print("Begin: ");
  Serial.print(beginHoek);
  Serial.print("°, Eind: ");
  Serial.print(eindHoek);
  Serial.print("°, Snelheid: ");
  Serial.print(snelheid);
  Serial.println("ms/graad");
}

Pagina's: 1 ... 8 9 [10]