Pagina 1 van 1

Arduino Mardec, experimenteren met .....

Geplaatst: 06 okt 2018 13:44
door Hube
Nu ik me sinds 1 jaar weer bezig houd met deze fantastische hobby is er voor mij, als her-her-intreder, een nieuwe modelbouwwereld opengegaan .
Eerst heb ik een 2de hands multimaus gekocht en al mijn oude lokjes gedigitaliseerd, decoders in rook laten opgaan. Maar ook een paar mooie nieuwe loks en treinstellen bijgekocht.
Peco code 55 rails en wissels ontdekt en met name het kruiswissel moest perse een plek krijgen op mijn baan. Vervolgens wisseldecoders voor servo's en spoelen gekocht en het "functie-mapping" uitgevogeld en mijn hoofd een paar keer gestoten tegen de "logische" functies. Overgestapt op een z21 centrale, gekoppeld aan de iPad; de Z21 app. Dan 3d (laten) printen; zelf modellen bouwen; NS uiteraard. Airbrush opgepakt. Het forum hier ontdekt en vele tips en adviezen opgedaan. Het station uit mijn geboorteplaats laten printen, samengebouwd en geverfd. Mijn baan heb ik bewust klein gehouden. Hij past in een ikea kast: 48 x 180 cm.

Nu wil ik me wagen aan een volgende uitdaging: Arduino/Mardec, dus wissels, servo's, relais, etc,... aansturen met een Arduino microcontroller.
Waar het eindigt? Misschien snel omdat ik met een Apple werk of omdat ik het toch te ingewikkeld vind of het uiteindelijk minder betrouwbaar is dan de wisseldecoders die ik nu gebruik? We zien het wel...

Eerst maar eens de Mardec handleiding gedownload.
Vervolgens de, in deze handleiding, aangegeven spullen gekocht:
- een arduino uno clone
- een DDC shield setje
- relais met optocoupler
- kabels met pinnen om het e.e.a. te kunnen verbinden
ArduinoMardec.jpg
ArduinoMardec.jpg (116.95 KiB) 7104 keer bekeken
tips, adviezen, do's en don'ts zijn meer dan welkom;
Het feest kan beginnen!
eerst solderen :cry:

groetjes,
Gerard

Re: experimenteren met Arduino - Mardec

Geplaatst: 06 okt 2018 15:58
door erik-n-fan
Ikzelf heb Arduino's gebruikt voor aansturing rondom de baan - dus niet de treinen of treinloop zelf. Daar vond ik andere producten/centrales/software toch makkelijker. Een servo die een hek opent, verlichting schakelen, een geluid afspelen bij een bepaalde actie of een preisertje bewegen met een servo was met de Arduino erg goed te doen! Hierdoor is er ineens zoveel meer te zien op de baan dan alleen een rijdende trein en statisch: gras, bomen en huisjes.
De benodigde software en schakelingen hiervoor waren erg eenvoudig (zie beginnersgids). Ik ben benieuwd naar je ervaringen als het gaat om DCC besturing. Want (even dromen) wat nou als de Centrale een signaaltje stuurt naar een Arduino adres om de verlichting rond een laad/los platform aan te doen en het hek te openen wanneer RocRail of iTrain of Koploper heeft bedacht dat er een aantal wagons geplaatst gaan worden bij een industrie? Helemaal tof misschien wel?!

Gerard, ik wens je veel succes! En geduld en inzicht en ... nouja het gaat een mooie uitdaging zijn!

Re: experimenteren met Arduino - Mardec

Geplaatst: 07 okt 2018 21:40
door Hube
vandaag aan de slag....
Eerst moet de DDC shield samengebouwd worden. Ik heb strikt de montage handleiding voor de DDC shield gevolgd.
IMG_4152.jpg
IMG_4152.jpg (113.57 KiB) 7018 keer bekeken
Na een uurtje zitten alle componenten op de printplaat en kan de DDC shield boven op de Arduino geplaatst worden:
IMG_4153.jpg
IMG_4153.jpg (105.12 KiB) 7018 keer bekeken

Nu een DCC centrale aansluiten, een voeding en een USB kabel naar de computer:
IMG_4158.jpg
IMG_4158.jpg (107.98 KiB) 7018 keer bekeken
Ik gebruik om te testen een Roco 10764 met een multimaus


Vervolgens de handleiding "Mardec for non PC" er bij gehaald. Voor een OS (Apple) systeem moeten meer zaken handmatig gedaan worden dan voor een Windows PC. Als 1e moet er een USB driver van de Arduino geïnstalleerd worden. Deze is meegekomen met de zip file waar ook de handleiding bij zit. Het installeren van de driver (CH340) gaat niet in 1 keer goed. De firewall van Apple werkt eerst tegen en vervolgens moeten er toch nog een paar pogingen gedaan worden voordat de driver op zijn plek zit. Er is een een "read me" meegekomen die aangeeft hoe ik kan controleren of de driver juist geïnstalleerd is. Ik heb me voorgenomen om deze keer wel alle manuals en read-me's goed te lezen. Vervolgens de Arduino app (IDE) gedownload en geïnstalleerd. De Mardec monitor is ook al met een zip file meegekomen.
Dus hoppa, Arduina app starten en in de app de Mardec monitor openen. Een beetje rondneuzen op de app.; gedetecteerde poort en board controleren.
Ik heb blijkbaar een Arduino uno R3 kloon met een ATmega 328 chip. Deze is nagenoeg gelijk een de originele Arduino controller.

Toen geprobeerd de Mardec sw te uploaden naar de Arduino. Dat gaat mis. De app geeft de foutmelding dat de DCC_decoder.h file onvindbaar is. Zoeken op mijn Mac geeft ook geen resultaat. Googelen levert op dat deze file van internet geplukt kan worden. Dus zip file gedownload, unzip, en de files in de map gezet waar ook de Mardec monitor in staat. Vervolgens weer een upload geprobeerd. Dat gaat bijna goed, maar nu komt er een compiler fout.
Vervolgens alles maar eens afgesloten en de computer opnieuw gestart. Uploaden gaat goed, compilen gaat goed en ik kan de monitor openen waarmee commando's naar de Arduino gestuurd kunnen worden. Deze Mardec adres #1 geven en selecteren dat ik een multimaus, z21 of Z21 gebruik:
IMG_4156.jpg
IMG_4156.jpg (94.37 KiB) 7018 keer bekeken
Gereed om de volgende stap te maken: een servo aansturen.
Eerst de handleiding weer even bestuderen,

tevreden en genoeg voor vandaag,

groetjes,
Gerard

Re: experimenteren met Arduino - Mardec

Geplaatst: 08 okt 2018 13:11
door Hans
Hallo Gerard,

Ik heb helemaal geen ervaring met of verstand van de Arduino. Maar daarom is het des te leuker om je belevenissen te volgen.

m.vr.gr.

Hans

Re: experimenteren met Arduino - Mardec

Geplaatst: 08 okt 2018 13:31
door Hube
Arduino/Mardec seizoen 1, episode 3
Vandaag een servo aangesloten:
IMG_4162.jpg
IMG_4162.jpg (108.62 KiB) 6977 keer bekeken
- servovoeding op de GND en +5 V van de shield
- signaal van de servo op pin 4
- DCC signaal van de MM via versterker 10764 op de DCC pinnen van de DCC shield aangesloten.
- Voeding van een Arnold transformator ~ 16 V

Het voorbeeld uit de Mardec handleiding gevolgd.
In de configuratie mode werkt de servo
IMG_4163.jpg
IMG_4163.jpg (112.72 KiB) 6977 keer bekeken
Vervolgens in de operationele mode geprobeerd de servo te laten bewegen met de MM.
adres 32, er gebeurd niets. Nog verschillende andere dingen geprobeerd maar in de DCC mode wil de servo niet reageren op de DCC signalen van de MM.

Nu heb ik jullie hulp nodig. Wat kan er aan de hand zijn?

groetjes,

Gerard

Re: Arduino Mardec; reageert niet op MultiMaus

Geplaatst: 10 okt 2018 21:56
door Hube
Omdat ik nu echt tegen een probleem aanloop heb ik de titel van dit draadje aangepast.
De Arduin/Mardec reageert niet op de DCC signalen van de MultiMaus.

Wie heeft er ervaringen met de Arduino/mardec met een MultiMaus ??

Ik heb deze vraag ook bij de buren uitgezet.

groetjes,
Gerard

Re: Arduino Mardec; reageert niet op MultiMaus

Geplaatst: 10 okt 2018 23:13
door piksov
ik heb geen mardec en geen servo's, om daar mee te beginnen.

Je hebt het over adres 32 op je decoder.

Ergens bij een multimaus zit een adres verschuiving van 4, welke kant op weet ik nooit.

Probeer als alternatief eens adressen tussen 28 en 36, misschien zelfs tussen 27 en 37.

Dat zijn de adressen tussen 32 -5 en 32 + 5

Guus

Re: Arduino Mardec; reageert niet op MultiMaus

Geplaatst: 11 okt 2018 07:58
door DirkH
Probeer een de dcc sniffer te laden op de arduino, en kijk dan of die dcc commando's ontvangt.
De sniffer kan je hier vinden : https://rudysmodelrailway.wordpress.com ... h-arduino/

Re: Arduino Mardec; reageert niet op MultiMaus

Geplaatst: 12 okt 2018 15:06
door Hube
Op advies van een van de forumleden van de buren heb ik de spanning op pootje 6 gemeten.
Als deze continue 5 V is, dan doet de optocoupler het niet.
Ook moet de gele led een paar keer oplichten als er een DCC signaal van de MM gegeven wordt.

De spanning was continue 5 V en de led lichte niet op bij een DCC signaal.
Dus optocoupler kapot !!!!!
Deze vervangen en de servo reageert nu op comando’s van de MM !!!!

Verder met experimenteren, kopje van dit draadje weer aangepast,

Groetjes,
Gerard

Re: Arduino Mardec, experimenteren met .....

Geplaatst: 12 okt 2018 16:27
door BenQ
Gerard,
De volgende keer ook het laatste bericht aanpassen, de aanpassing van de naam van draadje gaat niet door het hele draadje heen, helaas.

Re: Arduino Mardec; reageert niet op MultiMaus

Geplaatst: 12 okt 2018 16:52
door Willempie
piksov schreef:ik heb geen mardec en geen servo's, om daar mee te beginnen.

Je hebt het over adres 32 op je decoder.

Ergens bij een multimaus zit een adres verschuiving van 4, welke kant op weet ik nooit.

Probeer als alternatief eens adressen tussen 28 en 36, misschien zelfs tussen 27 en 37.

Dat zijn de adressen tussen 32 -5 en 32 + 5

Guus
Guus het is zeer eenvoudig de Maus en dus ook Lenz beginnen tellen vanaf 0 en de de rest telt vanaf 1.

Bij lenz is module 0 adres 1 t/m4
Bij de rest is module 1 adres 1 t/m 4.

En als de Mardec of om het even welke andere DCC decoder met de Maus wordt geprogrammeerd heb je helemaal geen last van de offset. Daar heb je pas last van als je hem met een Maus programmeert en later met een ECoS of een Intellibox gaat bedienen.

Groetjes

Re: Arduino Mardec, experimenteren met .....

Geplaatst: 15 okt 2018 21:18
door Hube
Ik heb inmiddels, van de ontwikkelaar, Mardec versie 4.0 gekregen.
Deze versie heeft, i.t.t. versie 2.0 waar ik mee begonnen ben, mogelijkheden m.b.t het aansturen van meerdere servo’s met 1 DCC commando. Het blijkt dat bij deze versie van Mardec de seriële monitor van de Arduino IDE niet meer werkt. Als Apple gebruiker moet ik zelf een seriële monitor selecteren en configureren.
Er zijn verschillende freeware monitoren te krijgen en Apple heeft er ook 1 ingebouwd in zijn OS, nl. Terminal. Terug naar msDos zeg maar.....
Uiteindelijk heb ik voor de makkelijkste weg gekozen: PUTTY for mac os (17 Euro). Het configureren bestaat uit het instellen van een seriële verbinding op de juiste poort en de juiste baudrate ingeven.
De benaming van de poort staat onder tools in de Afduino IDE, de baudrate voor Mardec 4.0 is 57600.
En het werkt weer...

Als test wil ik 4 servo’s en een relais aansturen voor de aandrijving en polariteit omschakeling van een Peco kruiswissel.
Voor elk, van de 4 mogelijke routes, over het kruiswissel moeten 2 servo’s aangestuurd worden en bij het “kruisen” moet, afhankelijk van de richting AD of CB het middenstuk de juiste polariteit krijgen m.b.v. een relais.
Zie plaatje.
Peco kruiswissel
Peco kruiswissel
Peco-kruiswissel.jpg (26.59 KiB) 6649 keer bekeken
Dit zou nu met Arduino Mardec moeten lukken.

met vriendelijke groeten,
Gerard

Re: Arduino Mardec, experimenteren met .....

Geplaatst: 18 okt 2018 20:25
door Hube
Ik heb een test set-up gemaakt voor het Peco kruiswissel (zie vorige foto).
Voor elke route over het kruiswissel moeten steeds 2 wissels goed gelegd worden.
Bij het kruisen van A naar D moet de polariteit van het middenstuk tegengesteld zijn aan de polariteit bij het kruisen van C naar B.

De eenvoudige benadering is:
- Wissels A en D hetzelfde DCC adres geven
- Wissels C en B hetzelfde DCC adres geven
- zorgen dat een 2x om relais door de "puntstukpolaristie" wordt geschakeld zodat de polarisatie past bij de laatst gekozen kruisend route.

En er een gewoonte van maken dat, nadat de trein het kruiswissel gekruist heeft, de wissels weer in de recht doorgaande stand te zetten. Iets wat in werkelijkheid waarschijnlijk ook gebeurd.

Eerst moeten de wissels in Mardec gedefinieerd worden:

Putty:
"""
Specify action (P/A/R/T/D/E/I/?): P

Specify pin number (3-12,14-19): 3
Pin is undefined. Specify DCC address

Set DCC address for pin 3
Enter value from 1 to 2000: 1

DCC Address set to 1

Specify Accessory(1), Servo(2) or Input(3)
Enter value from 1 to 3: 2
Pin 3 set as Servo pin.
Servo on A1/P3 set to 75 degrees

Specify action for Servo on A1/P3
A/N/9/+/-/C/F/D/T/S/I/?/enter: +
LOW angle: 76 degrees

Specify action for Servo on A1/P3
A/N/9/+/-/C/F/D/T/S/I/?/enter: C
Servo on A1/P3 set to 105 degrees
Angle set to HIGH: 105

Specify action for Servo on A1/P3
A/N/9/+/-/C/F/D/T/S/I/?/enter: -
HIGH angle: 104 degrees

Specify action for Servo on A1/P3
A/N/9/+/-/C/F/D/T/S/I/?/enter: F
How many relays ? (0/1/2): 1

Pin 19 is set as first frogpin for servo on A1/P3, No inversion

Specify action for Servo on A1/P3
A/N/9/+/-/C/F/D/T/S/I/?/enter: enter

Pin settings are saved!
"""
De cursieve symbolen zijn de codes en variabelen die ik heb ingevoerd. Die zijn normaal niet te zien in de Putty monitor. De ander teksten is commentaar van Mardec.
F staat voor Frog-pin. Met dat commando wordt aangegeven dat er een relais gekoppeld moet worden aan dit DCC adres om het hart stuk te polariseren.
De Mardec handleiding is heel duidelijk m.b.t. de commando's en de variabelen.

Op deze wijze worden alle vier servo's in Mardec gedefinieerd waarbij servo A en B hetzelfde DCC adres krijgen en servo C en B hetzelfde DCC adres.

Het is ook mogelijk om een "pin" als input te definieren met het zelfde DCC adres als een servo.
Door deze "pin" even te koppelen aan de GND ("input laag" maken) kan ook de servo op dit DCC adres aangestuurd worden. Een servo, dus wissel, kan dus door een DCC centrale aangestuurd worden maar ook door een drukschakelaar:
Putty:
"""
Specify action (P/A/R/T/D/E/I/?): P

Specify pin number (3-12,14-19): 7
Pin is undefined. Specify DCC address

Set DCC address for pin 7
Enter value from 1 to 2000: 1
Address in use for servo/accessory on A1/P3
Is that OK ? (Y/N, N=default): Y

DCC Address set to 1

Specify Accessory(1), Servo(2) or Input(3)
Enter value from 1 to 3: 3
Pin 7 set as Input pin.

Specify action for Input on A1/P7
A/N/?/D/2/3/enter: enter

Pin settings are saved!
""""

De complexiteit valt mij heel erg mee. De Mardec handleiding is duidelijk en het werken met Putty is heel handig.

Met het D commando kunnen alle instellingen worden opgevraagd:

Putty:

"""
Settings of MARDEC #1

Default servo rotation speed: 50 ms/degree
Address offset: Yes
Servo's are detached at end of rotation
Startup mode: Normal

Pin 3: DCC 1, Servo #0, Angles 76/104, Not Inv., Speed 50, Frog pin 19
Pin 4: DCC 2, Servo #2, Angles 75/105, Not Inv., Speed 50, Frog pin no
Pin 5: DCC 2, Servo #3, Angles 75/105, Not Inv., Speed 50, Frog pin no
Pin 6: DCC 1, Servo #4, Angles 75/105, Not Inv., Speed 50, Frog pin no
Pin 7: DCC 1, Input #0, Second addr/delay: none, Third addr/delay: none
Pin 8: not used
Pin 9: not used
Pin 10: not used
Pin 11: not used
Pin 12: not used
Pin 14: not used
Pin 15: not used
Pin 16: not used
Pin 17: not used
Pin 18: not used
Pin 19: First relay (No inv.) for pin 3
""""

arduinotest.jpg
arduinotest.jpg (105.31 KiB) 6592 keer bekeken

De was en het kind.......

groetjes,
Gerard

Re: Arduino Mardec, experimenteren met .....

Geplaatst: 14 nov 2018 11:09
door Willempie
Dat wiel heb ik jaren geleden al eens uitgevonden, en in een document gezet.
Maar eigenlijk is het nog veel simpeler.

De 4 wissels hebben hetzelfde adres. dus die worden allemaal afbuigend of rechtdoor gezet.
Een tweede adres zet het polarisatie relais in de juiste stand.
Dus van A naar D of D naar A zet je het wissel afbuigend
En van B naar C of C naar B zet je het wissel rechtdoor.
En daarmee volg je ook wat er in de beschrijving staat van de scissor van Peco.

Groetjes

Re: Arduino Mardec, experimenteren met .....

Geplaatst: 14 nov 2018 18:22
door jerrytrein
Ik heb een arduino mega,en nog wat in bestelling
optocoupler en servo shield
waar kanik de handleiding voor arduino vinden
Wel een forum en wat sites ,maar geen handleiding
gr jerrytrein (ook van dat andere forum)

Re: Arduino Mardec, experimenteren met .....

Geplaatst: 14 nov 2018 19:23
door Hube
http://www.arcomora.com/Mardec/

Voor de Mardec servo shield.

Groetjes,

Gerard

Re: Arduino Mardec, experimenteren met .....

Geplaatst: 14 nov 2018 19:43
door Hube
Willempie schreef:Dat wiel heb ik jaren geleden al eens uitgevonden, en in een document gezet.
Maar eigenlijk is het nog veel simpeler.

De 4 wissels hebben hetzelfde adres. dus die worden allemaal afbuigend of rechtdoor gezet.
Een tweede adres zet het polarisatie relais in de juiste stand.
Dus van A naar D of D naar A zet je het wissel afbuigend
En van B naar C of C naar B zet je het wissel rechtdoor.
En daarmee volg je ook wat er in de beschrijving staat van de scissor van Peco.

Groetjes
Belgisch spreekwoord:
“Je hoeft niet altijd het wiel opnieuw uit te vinden. Maar je kunt het altijd proberen iets ronder te maken.....”


2 opmerkingen, eigenlijk 3:
- ik vind het niet zo mooi als steeds alle 4 de wissels omgaan als de rijroute verandert. In het echt gebeurt dat ook niet
- bij het Peco kruiswissel is de polariteit van het middenstuk van route A <> D tegengesteld aan die van route B<>C. Als dus alle wissels afbuigend staan dan is aan deze stand niet te zien welke richting bij de polariteit hoort m.a.w. welke richting gereden kan worden.
- het gaat mij vooral om de mogelijkheden van arduino/Mardec.

Ik gebruik nu een DR4024 servodecoder. Dat is weer een ander wiel

Met vriendelijk groeten,
Gerard

Re: Arduino Mardec, experimenteren met .....

Geplaatst: 14 nov 2018 22:41
door Willempie
Geeft niets hoor Gerard, heb er alweer spijt van dat ik mijn kennis en ervaring met je gedeeld heb.

Groetjes

Re: Arduino Mardec, experimenteren met .....

Geplaatst: 14 nov 2018 23:27
door jerrytrein
gerard
dank voor de link

Re: Arduino Mardec, experimenteren met .....

Geplaatst: 15 nov 2018 13:14
door Hube
Om een testje te doen met het aansturen van wissels met een spoel, zoals bij de standaard wissels, heb ik 2 mosfet modules (IRF520 mosfet module) besteld en volgens de Mardec handleiding aangesloten en geprogrammeerd. Zie resultaat:

https://youtu.be/wQkjdOrZkbk

Ook dit gaat vrij eenvoudig en het programmeren van de Mardec shield bestaat uit het invoeren van een paar letters en cijfers.
Voor de voeding van de wisselspoelen gebruik ik de wisselstroom uitgang van een normale Arnold trafo.

Op dit moment gebruik ik de DR4024 servodecoders en de DR4018 wisseldecoders van Digikeijs. Daar ben ik tevreden mee maar als ik in de toekomst mijn baan nog ga uitbreiden dan is de Arduino met de Mardec shield zeker een goed alternatief. Wat mij vooral bevalt zijn de veel lagere kosten, de flexibiliteit m.b.t. de DCC adressen en het eenvoudige programmeren met de computer. Uiteraard is dit een persoonlijke mening....

met vriendelijke groeten,

Gerard