Doel:€250.00
Donaties:€50.00

Per saldo:€-200.00

Steun ons nu!

Laatst bijgewerkt
op 03-01-2024

Vacature: secretaris bestuur
Algemeen

De stichting

Recente berichten

De overeenkomst tussen een Ovaalramer en een Motorpost. door BartvD
Vandaag om 09:32:19
Onze Nederlandse Stoomlocomotieven (nieuwe druk) door R v/d Hoven
Vandaag om 09:24:48
Mijn eerste H0-modeltreinbaan in aanbouw door Wim Vink
Vandaag om 09:16:55
Hengelo in 1981-1982, maar dan anders: Kassenberg in N door Jeroen Water
Vandaag om 08:53:16
Internationale Spoor 0 en 1 dagen in Gießen, 23 en 24 maart, 2024 door bernhard67
Vandaag om 08:42:53
Variaties op Station Zetten Andelst in HO door tothebeach
Vandaag om 08:21:31
US diorama in H0 door Jelmer
Vandaag om 08:19:18
De Hondsrugbaan door mass am see
Vandaag om 08:15:11
Pfarrerwinkel bahn door Jelmer
Vandaag om 08:00:19
M.s.v. De Percee bouwt aan nieuwe clubbaan door J. Moors
Vandaag om 01:00:05
30 maart Modelspoorbeurs Houten & HCC Kennisdag door WimM
Vandaag om 00:42:50
Raadplaatje door Magic
27 maart 2024, 23:27:03
Ronald en Wanda's "Southern Comfort" swamp layout! door Ronald Halma
27 maart 2024, 23:17:30
Rio Grande Southern - Lizard Head Pass door Rody v. G.
27 maart 2024, 23:03:46
Al mijn goede ideeën... door MartinRT
27 maart 2024, 22:57:39
Bouw van materieel 40 treinstellen door Pauldg
27 maart 2024, 22:45:06
Martijn's rariteitenkabinet door Martijn193
27 maart 2024, 22:30:17
Beekdaelen in H0 door Link
27 maart 2024, 22:17:23
Les Billards du Vivarais door Hans1963
27 maart 2024, 22:08:52
"Litter Bin" voor Brits spoor en Britse modelspoorprojecten door BrightonBelle
27 maart 2024, 21:57:24
Bauarbeiten im gange door puntenglijder
27 maart 2024, 21:57:02
Kleine Baan in H0 (≤ 0.5m²) door Jack Black (NS1220)
27 maart 2024, 21:47:16
Lima Koploper ombouwen door Menno 1846
27 maart 2024, 21:31:51
Piko NS 2015 stroomafname probleem door brutus
27 maart 2024, 21:16:45
Zwederbaan door nighttrain1
27 maart 2024, 20:44:09
opbouw treinbaan weer opgepakt door teun van drunen
27 maart 2024, 19:21:25
NTM P1 in Schaal-1 door FritsT
27 maart 2024, 18:59:12
PB models: koplopers (voorbespreking) door Marnit
27 maart 2024, 18:58:04
Aachenau West door 741230
27 maart 2024, 18:55:45
Gebruik je Arduino zonder te "programmeren" ;) door bask185
27 maart 2024, 18:22:53
  

Auteur Topic: MARDEC, de Multifunctionele ARduino dcc DECoder.  (gelezen 347870 keer)

Hans van de Burgt

  • BMB
  • Offline Offline
  • Berichten: 6060
Re: MARDEC, de Multifunctionele ARduino dcc DECoder.
« Reactie #825 Gepost op: 20 januari 2017, 19:39:43 »
@72Sonnet,

Je hebt in principe gelijk. De discussie tussen Nico en Ruud gaat onder andere daar ook over.
Leuk dat je een traverse hebt gemaakt. Daar moet ik ook een keer mee aan de gang. Ik hoor graag wat meer details hoe je dat hebt aangepakt.

Gr, Hans

NTeering

  • Offline Offline
  • Berichten: 1023
    • ARduino Controlled MOdel RAilway
Re: MARDEC, de Multifunctionele ARduino dcc DECoder.
« Reactie #826 Gepost op: 23 januari 2017, 10:35:35 »
@72sonett

Het idee is om iedere stappenmotor aan te sturen met z'n eigen Attiny85.
Deze heeft 6 pinnen. 4 Voor de motor , 1 voor een eventueel puntstukrelais en 1 om te communiceren met een Arduino.
De Arduino ontvangt de DCC signalen voor de (maximaal 16) aangesloten motoren en stuurt een 0 of een 1 naar de Attiny85 die moet worden 'omgezet'.
De discussie gaat erover hoe daarbij de motoren gemakkelijk èn gebruiksvriendelijk te configureren v.w.b. de snelheid en hoeken.

Nico

72sonett

  • Team encyclopedie
  • Offline Offline
  • Berichten: 2083
    • El Carrilet
Re: MARDEC, de Multifunctionele ARduino dcc DECoder.
« Reactie #827 Gepost op: 23 januari 2017, 11:37:12 »
Een ATtiny is mogelijk, maar dan blijft het probleem van de beginstand van de stappenmotor; om een stappenmotor in een aantal stappen naar een bepaalde positie te laten draaien moet je weten wat de beginstand is na inschakelen.
Een oude matrixprinter lost dit op door na inschakelen de printkop eerst naar links /rechts te schuiven totdat een schakelaartje wordt ingedrukt, dan pas is de beginstand bekend.
Ik heb in mijn vakantiehuis een IP camera staan, die doet hetzelfde, na inschakelen draait die eerst helemaal links/rechts en op/neer.

Je komt dan dus een pin tekort, maar je zou de puntstukpin daarvoor kunnen gebruiken en dan het puntstuk mechanisch omschakelen via een microschakelaartje aan b.v. de stang naar de wisseltong.

Of je kunt er een 74595 serieel --> parallel schuifregister tussen maken, dwz drie pinnen van de ATtiny naar het schuifregister en dan 4 pennen van het schuifregister naar de stappenmotor (via b.v een ULN2001). Je houdt dan 1 pin op de ATtiny over.

Via die andere Arduino/ATtiny pin kun je natuurlijk ook serieel communiceren, dan kun je wat meer informatie overbrengen dan alleen een 0 of een 1...
« Laatst bewerkt op: 23 januari 2017, 12:13:41 door 72sonett »
El Carrilet
"te dom om te poepen"
MH

NTeering

  • Offline Offline
  • Berichten: 1023
    • ARduino Controlled MOdel RAilway
Re: MARDEC, de Multifunctionele ARduino dcc DECoder.
« Reactie #828 Gepost op: 23 januari 2017, 12:20:04 »
Het gaat om dit ding: https://nl.aliexpress.com/item/5V-stepper-motor-with-ULN2003-driver-board/32761755625.html
Daar valt een hoop over te vinden op internet ook i.c.m. een Arduino.
Het genoemde inschakelprobleem vind ik echter nergens terug in alle voorbeeldsketches.
Heeft dit model daar wellicht geen last van of zie ik iets over het hoofd?

Nico

72sonett

  • Team encyclopedie
  • Offline Offline
  • Berichten: 2083
    • El Carrilet
Re: MARDEC, de Multifunctionele ARduino dcc DECoder.
« Reactie #829 Gepost op: 23 januari 2017, 13:49:18 »
Die heb ik hier ook liggen, is bruikbaar, ik gebruik zoiets om een traverse aan te sturen.

Het 'probleem' van een stappenmotor is dat je bij inschakelen nooit weet in welke stand hij staat en dus ook niet weet hoeveel stappen je moet draaien om in de gewenste stand te komen.
Je kunt de motor wel met de hand verdaaien naar b.v. de stand 'wissel links' en dan van daaruit je programma schrijven door b.v. 100 stappen linksom te doen naar stand 'wissel rechts' en weer 100 stappen terug en aannemen dat dit altijd zo blijft, maar als de motor om welke reden dan ook is verdraaid, of tegengehouden tijdens het draaien zodat er stappen zijn overgeslagen, dan kun je de stand 'wissel rechts' nooit meer terugvinden.

Je moet in de initialisatie dus eerst de motor verdraaien totdat er b.v. een schakelaartje wordt ingedrukt die een puls geeft naar de processor om aan te geven dat de stand 'wissel rechts' (of 'wissel midden' of een andere bekende stand) is bereikt. Vanuit die stand kun je dan de stappen tellen om in iedere andere exacte stand te komen.

De hardware kan er dan zo uitzien:


« Laatst bewerkt op: 23 januari 2017, 13:52:27 door 72sonett »
El Carrilet
"te dom om te poepen"
MH

NTeering

  • Offline Offline
  • Berichten: 1023
    • ARduino Controlled MOdel RAilway
Re: MARDEC, de Multifunctionele ARduino dcc DECoder.
« Reactie #830 Gepost op: 23 januari 2017, 13:55:21 »
Maar waarom kom ik die initialisatie dan nergens tegen in alle voorbeeldcode ???
Lijkt me dan toch toch essentieel.
En je weet altijd in welke stand je de baan hebt afgesloten. Iedere verdraaiing wordt in EEPROM gezet.
Je moet er uiteraard niet tussentijds handmatig aan draaien.

Nico

72sonett

  • Team encyclopedie
  • Offline Offline
  • Berichten: 2083
    • El Carrilet
Re: MARDEC, de Multifunctionele ARduino dcc DECoder.
« Reactie #831 Gepost op: 23 januari 2017, 14:38:23 »
Alle voorbeeldcode geeft alleen aan hoe je in half step of full step pulsen naar de stappenmotor kan sturen zodat die stapsgewijs linksom of rechtsom draait.
Dat gaat dan altijd zo (in pseudocode):
stap[1] = %1000    // in full step
stap[2] = %0100
stap[3] = %0010
stap[4] = %0001

t = 0
repeat
  t = t+1
  out D = stap[t]             // op resp. pin 5, 6, 7, 2  van de ATtiny
  if t = 4 then t = 0
until false

en dan blijft het motortje vanuit een willekeurige beginstand voor eeuwig in grote stappen in één richting rondjes draaien.

Citaat
Je moet er uiteraard niet tussentijds handmatig aan draaien.
Precies, want dan is alles ontregeld, net als bij spanningsuitval/reset e.d.

Wat je in EEPROM op kan slaan is voor iedere wisselmotor het aantal stappen om vanuit de stand 'wissel links' naar 'wissel rechts' te gaan. Nogmaals; je moet dan wel eerst weten wat de beginstand 'links' is.

 Voor uitwerking zie hier.
« Laatst bewerkt op: 29 januari 2017, 17:36:24 door 72sonett »
El Carrilet
"te dom om te poepen"
MH

Goosie

  • Offline Offline
  • Berichten: 161
    • www.henkdegans.nl
Re: MARDEC, de Multifunctionele ARduino dcc DECoder.
« Reactie #832 Gepost op: 23 januari 2017, 16:51:54 »
Heel interessant, maar heeft weinig met MARDEC te maken! :police:
Hoe ver zou het zijn met een eigen plek op dit forum voor de ARDUINO?
Met vriendelijke groet,

Henk de Gans

NTeering

  • Offline Offline
  • Berichten: 1023
    • ARduino Controlled MOdel RAilway
Re: MARDEC, de Multifunctionele ARduino dcc DECoder.
« Reactie #833 Gepost op: 23 januari 2017, 17:16:18 »
Sorry Henk,

Ik zal er niks meer over zeggen :angel:

Nico

Timo

  • Team encyclopedie
  • Offline Offline
  • Berichten: 4656
Re: MARDEC, de Multifunctionele ARduino dcc DECoder.
« Reactie #834 Gepost op: 23 januari 2017, 17:17:54 »
@Goosie, Dat past naar mijn idee prima tussen Vraag en antwoord -> Elektronica. Waar ik meer op zit te wachten is een Wat zijn we aan het bouwen -> Elektronica. Een showcase board waar iets als een MARDEC beter zou passen.

En inderdaad, 72sonett heeft gelijk. In alle voorbeelden zal het de maker een worst wezen waar begonnen wordt, het gaat er om hoe te draaien. Ja, je kan dit altijd opslaan in EEPROM maar dan moet de boel niet ooit van slag raken.

@72sonett, [plaag modus aan] mooie pseudocode met een pseudo data overflow  ;D ;D ;D


Timo
Verzonden vanaf mijn desktop met Firefox

Hans van de Burgt

  • BMB
  • Offline Offline
  • Berichten: 6060
Re: MARDEC, de Multifunctionele ARduino dcc DECoder.
« Reactie #835 Gepost op: 23 januari 2017, 18:10:59 »
Heel interessant, maar heeft weinig met MARDEC te maken!

@Henk,

Het heeft m.i. alles met de Mardec te maken. Al moet ik het iets nuanceren. De claim van het Mardec programma is dat het icm een Arduino en Mardec Shield een universele DCC decoder vormt waarmee je servo's en andere accessoires kunt besturen via een DCC centrale en/of PC. Een stappenmotor wordt hier gezien als een accessoire. En anders dan een servo of ledstrip kun je die niet zomaar aan een Mardec knopen. De onderlinge vraag was, wat moet je doen om zo'n stappenmotor toch te kunnen gebruiken in het Mardec "verhaal".

Ik ben geen techneut. Wat ik zag was dat de proefopstelling van Paul werkte. De wisseltongen bewogen simpel van de rechtdoor stand (=startpositie) naar afbuigend. Niet meer en niet minder.

Gr, Hans

72sonett

  • Team encyclopedie
  • Offline Offline
  • Berichten: 2083
    • El Carrilet
Re: MARDEC, de Multifunctionele ARduino dcc DECoder.
« Reactie #836 Gepost op: 23 januari 2017, 19:59:18 »
Als ik geautomatiseerd wissels zou willen aansturen zou ik als eerste denken aan een relais en vertrouwen op de eindafschakeling van de wissel.
Als tweede oplossing een wisselmotortje type Conrad e.d.
Als derde een lineaire servo gekoppeld aan een microprocessor, dan kun je met 2 I/O pinnen via een 16-kanaals servo driver (meer dan) 16 servo's aansturen.
Uiteindelijk, als het dan echt moet, iets met een stappenmotor...  :)

Citaat van: Hans van de Burgt
... Wat ik zag was dat de proefopstelling van Paul werkte. De wisseltongen bewogen simpel van de rechtdoor stand (=startpositie) naar afbuigend
Dat is zonder meer mogelijk, maar hoe ziet de code van Paul er uit?

Citaat van: Timo
... pseudo data overflow
Wat bedoel je precies?

Citaat van: Goosie
... heeft weinig met MARDEC te maken!
Jawel hoor, we zitten hier wat te brainstormen hoe je via een Mardec/Arduino een stappenmotor kan aansturen, voor een wissel of wat anders; havenkraan, draaischijf ...
El Carrilet
"te dom om te poepen"
MH

Goosie

  • Offline Offline
  • Berichten: 161
    • www.henkdegans.nl
Re: MARDEC, de Multifunctionele ARduino dcc DECoder.
« Reactie #837 Gepost op: 23 januari 2017, 20:33:33 »
Jawel hoor, we zitten hier wat te brainstormen hoe je via een Mardec/Arduino een stappenmotor kan aansturen, voor een wissel of wat anders; havenkraan, draaischijf ...
Dat laatste wil ik ook graag(rolbrug met stappenmotor /arduino).
Alleen denk ik dat het MARDEC Topic er voor de nieuwkomer cq inlezer niet eenvoudiger op wordt als er teveel "zijstromingen"invoegen!
Met vriendelijke groet,

Henk de Gans

Hans van de Burgt

  • BMB
  • Offline Offline
  • Berichten: 6060
Re: MARDEC, de Multifunctionele ARduino dcc DECoder.
« Reactie #838 Gepost op: 23 januari 2017, 20:34:45 »
@72sonett,

Paul heeft me onderstaande code gestuurd.

Gr, Hans

#include <EEPROM.h>
#include <CustomStepper.h>

CustomStepper stepper(2, 3, 4, 5, (byte[]){8, B1000, B1100, B0100, B0110, B0010, B0011, B0001, B1001}, 4075.7728395, 12, CW);//parametrisering module CustomStepper: pin 2, 3, 4 en 5; instelling steps; aantal steps van de steppermotor 28BYJ-48 voor volledige rotatie, RPM en clockwise,
boolean quit = false;
int wisselstatus;
int teller = 0;
int eeaddress = 0;

void setup()
{
    stepper.setRPM (0.25);  //rotatiesnelheid instelling
    stepper.setSPR(4075.7728395);
 }

void loop()
{
  EEPROM.get (eeaddress, wisselstatus);
  if (stepper.isDone() && wisselstatus == 0 && quit == false)
  {
     stepper.setDirection (CW);
     stepper.rotateDegrees(9.0);// rotatieboog instelling clock wise
     wisselstatus = 1;
     EEPROM.put (eeaddress, wisselstatus);
     quit = true;
   }
 
  if (stepper.isDone() && wisselstatus == 1 && quit == false)
  {
    stepper.setDirection(CCW);
    stepper.rotateDegrees(9.0);// rotatieboog instelling counter clock wise
    wisselstatus = 0;
    EEPROM.put (eeaddress, wisselstatus);
    quit = true;
  }
    stepper.run();
}


NTeering

  • Offline Offline
  • Berichten: 1023
    • ARduino Controlled MOdel RAilway
Re: MARDEC, de Multifunctionele ARduino dcc DECoder.
« Reactie #839 Gepost op: 23 januari 2017, 21:04:35 »
Ik denk dat Henk helemaal gelijk heeft.
De Mardec sketch kan en zal geen stappenmotor ondersteunen. Misschien wel ooit door een 'ArduStepper'.
Alhoewel het een interessant onderwerp is, is het in dit draadje inderdaad een non discussie.

Nog een laatste opmerking.
Niet in dit script opgenomen, maar wel nodig, is het vooraf eenmalig vaststellen van de gewenste snelheid en beide standen.

@Hans
Wil je code tags (# button) toevoegen aan het script.

Nico