Picture

gerhard

Indlæg: 90

PB

arduino styring af elektriske skiftespor

Min 'opbygning' af bane(Minitrix N), som vist stadig må betegnes som et 'testanlæg' har for en dels vedkommende bestået i indkøb af diverse 'lot' fra ebay, af skinner og skiftespor. En del af disse skal drives af servoer, da de ikke længere virker med den oprindelige elektriske skifter, men nogle fungerer stadig. Nogle af disse skiftespor skal betjene et ranger-terræn, sammen med nogle servodrevne, måske med manuel styring via knapper, og så til spørgsmålet: Når jeg læser et af moppes' svar, ville han bruge nogle relæer, sammen med arduino--er der nogle her som har erfaring, er det i sin enkelthed 'bare' 2 relæer pr skifte, med styrestrømmen fra Arduino'en. Resten af anlæget er styret via Rocrail, og Intelliboks, Arduinoen skal styres enten via Loconet, eller DCC, eller en proces på Pc-, som får info fra Rocrail proces-process, og styrer arduinoen over usb, (har ikke udforsket mulighederne i Rocrail på dette område endnu) Wink Gerhard

PS. Er der nogen som kom i gang med en open fork af rocrail, evt. på Rasperry?

__________________

Modelbane: Spor N - Minitrix - Ib - Rocrail (samt lidt af hvert, afhængig af priser på Ebay og QXL - hvis jeg kan li det, og få en dekoder til at virke - får det lov at køre)

Like 0 kan lide
Top

Picture

Lars Skjærlund

Rødovre

Webmaster

Indlæg: 4.106

PB  Blog  Hjemmeside

Da' Gerhard.

Jeg forstår nok ikke helt, hvad det er, du vil - måske du kan forklare dig lidt nærmere? Hvorfor styre et sporskifte med to relæer, hvis man kan vælge en servo? Er servoerne ikke blevet så billige (ned til 10-20 kr. stykket), at det slet ikke kan betale sig at bruge relæer længere?

Eller er der noget ved relæer, der fungerer bedre end servoer?

Jeg har lavet et fork af Rocrail på Github, men indtil videre fungerer det kun som opbevaring, jeg har ikke kigget på det endnu. Det vil jo være et stort arbejde at kaste sig ud i, hvis man skal til at stå på egne ben uden nogen form for samarbejde med majoriteten af nuværende brugere. Og så er jeg slet ikke sikker på, jeg overhovedet vil bruge Rocrail fremadrettet.

Til gengæld har jeg efterhånden et meget godt overblik over, hvordan og hvorfor jeg vil bruge Arduino og Raspberry Pi på det kommende anlæg - og hvordan jeg vil få det til at fungere sammen med det øvrige landskab af modelbaneelektronik. Jeg skal prøve at finde tid til at skrive et indlæg om mine planer.

__________________

MVH
Lars

Like 0 kan lide
Top

Picture

Ole Vedel

Indlæg: 1.157

PB  Blog  Hjemmeside

Lars Skjærlund skrev:

Da' Gerhard.

Jeg forstår nok ikke helt, hvad det er, du vil - måske du kan forklare dig lidt nærmere? Hvorfor styre et sporskifte med to relæer, hvis man kan vælge en servo? Er servoerne ikke blevet så billige (ned til 10-20 kr. stykket), at det slet ikke kan betale sig at bruge relæer længere?

Eller er der noget ved relæer, der fungerer bedre end servoer?

Jeg har lavet et fork af Rocrail på Github, men indtil videre fungerer det kun som opbevaring, jeg har ikke kigget på det endnu. Det vil jo være et stort arbejde at kaste sig ud i, hvis man skal til at stå på egne ben uden nogen form for samarbejde med majoriteten af nuværende brugere. Og så er jeg slet ikke sikker på, jeg overhovedet vil bruge Rocrail fremadrettet.

Til gengæld har jeg efterhånden et meget godt overblik over, hvordan og hvorfor jeg vil bruge Arduino og Raspberry Pi på det kommende anlæg - og hvordan jeg vil få det til at fungere sammen med det øvrige landskab af modelbaneelektronik. Jeg skal prøve at finde tid til at skrive et indlæg om mine planer.

Hej Lars

Jeg gætter på de 2 relæer er til polarisering af hjertestykke og tilbagemelding i kontrol pult 

Mvh. Ole Vedel

 

Like 0 kan lide
Top

Picture

gerhard

Indlæg: 90

PB

Jeg skal installere ca. 10 servoer, men har også nogle skiftespor med de oprindelige drev som virker, og det er dem det handler om mht. relæer. En del af banen styres udelukkende af Rocrail med nogle DCC Lifitenski enheder, men rangerterræn skal til dels anvendes servoer, men også et par elektriske, og skal kunne styres manuelt hen over Arduinoen.

Så vidt jeg kan se, sker der jo stadig udvikling på den oprindelige Rocrail, og ender det med, at det koster lidt, at anvende den, så er det jo ikke det eneste program som koster. Men uden at være gået i dybden, så lignede det, at det bare er en 'fedterøvsmeddelse' man må leve med, hvis man ikke donerer - ret mig hvis jeg tar fejl.

Ole, du har lidt ret i din antagelse, idet min plan for nærværende er, at kunne styre de pågældende skiftespor - både servoer  og opr.-elektriske, via en Arduino, for at kunne bygge en signalpult hen over den, da automatisk drift ikke giver mening i et rangerterræn. - Gerhard

Iøvrigt købte jeg 10 servoer for ca 70 kr, og 8 kanal relæ-blok til Arduino kan fåes for 31,50 på Wish(Kina og plus porto) - det jeg hidtil kar købt ved dem har været OK.

__________________

Modelbane: Spor N - Minitrix - Ib - Rocrail (samt lidt af hvert, afhængig af priser på Ebay og QXL - hvis jeg kan li det, og få en dekoder til at virke - får det lov at køre)

Like 0 kan lide
Top

Picture

Brian1980

Indlæg: 72

PB

Kender du www.mollehem.se

 

Like 0 kan lide
Top

Picture

Lars Skjærlund

Rødovre

Webmaster

Indlæg: 4.106

PB  Blog  Hjemmeside

Da' igen.

Det kommer nok til at trække lidt ud med et længere blogindlæg om mine Arduino-planer. Jeg havde tænkt mig at lave diagrammer med Fritzing, men fandt så ud af, hvor vanskeligt det er at lave nye komponenter til dette program, og fandt samtidigt ud af, at det er dejligt til diagrammer, men forfærdeligt til at lave printudlæg, så jeg endte med at kigge på KiCad, og så var jeg solgt...

Så jeg vil nøjes med her at skitsere mine planer i ren tekst, så kan du jo spørge, hvis du vil vide mere.

Jeg forestiller mig at bruge en stak Arduinoer til at styre alle mulige effekter på min modelbane: Sporskifter, lys i huse, kraner, lyde - alle mulige mærkelige ting. Lys, servoer mm. vil jeg ultimativt styre med en TLC5940, mens Arduinoen i andre tilfælde får lov at lave den direkte styring, når den er bedst.

Men det skal jo kobles sammen med resten af anlægget. Og der er en udfordring mere: Hvis jeg placerer en masse Arduinoer under mit anlæg, skal jeg grundlæggende ned på alle fire og kravle rundt, hvis jeg vil pille ved den software, jeg har lagt ind i mine Arduinoer. Det kommer nok til at ske jævnligt, så jeg tror, jeg hurtigt vil blive ret træt af den løsning.

Det er derfor min plan at sætte en Raspberry Pi foran en stak Arduinoer - den får lov at styre så mange, den nu kan trække, og som det vil være praktisk muligt. Fidusen er, at jeg kan slutte mine Arduinoer til en Raspberry Pi ved hjælp af almindelig USB-forbindelse. Til gengæld kan jeg kommunikere med min Raspberry Pi gennem almindeligt computernetværk, så jeg kan logge ind på fra en netværksforbundet computer, uploade en Arduino opdatering til min Raspberry Pi, og omprogrammere min Arduino fra RPi'en - uden at skulle ned på gulvet og kravle.

In-place opdatering, kunne man kalde det. Smile

Jeg plejer at programmere mine Arduinoer, så man kan kontrollere dem nogle simple tekststrenge via USB porten. Er der f.eks 16 LEDer koblet på, kan jeg tænde en af LEDerne ved at sende teksten "07=On" (I virkeligheden bruger jeg en lidt mere kryptisk, men simplere streng). Den slags kommandoer er lette at sende fra en Raspberry Pi, så jeg kan f.eks. skrive et Python program, der håndterer det. Python programmet kan have et browserinterface, så man kan tænde og slukket LEDerne - eller skifte et spor - fra en almindelig browser på netværket.

Men man skal jo også kunne integrere løsningen med resten af anlægget?

Naturligvis: Så jeg skal have et DCC signal ind i systemet på en eller anden måde. Det kunne umiddelbart være oplagt at bruge min Raspberry Pi til at dekode DCC signalet - men det tør jeg ikke. RPi er en dejlig lille computer - men der skal tryk på lille, og når den kører Linux, har den ind imellem travlt - f.eks. med at checke opdateringer eller rydde op i gamle logfiler. Den slags går meget langsomt på en RPi, så jeg er sikker på, den vil have problemer med samtidigt at decode et real-time signal som DCC.

Derfor er min plan at bruge en Arduino mere: Den har ikke noget operativsystem, så den finder ikke lige pludseligt på at lave noget andet - og er derfor velegnet som DCC dekoder. Jeg har tænkt mig at sætte den op som sniffer, så den fanger samtlige DCC pakker i systemet - uanset hvem, de er adresseret til. Denne information kan den så sende videre til min Raspberry Pi gennem nok et USB kabel, og mit program på RPi'en kan så sørge for, at Arduinoerne får de relevante kommandoer, når systemet ser en eller anden DCC kommando.

Den løsning burde køre stabilt, og den burde være kompatibel med al anden DCC hardware på markedet.

Jeg får jo samme behov som dig, så Arduinoerne skal også bruges til at styre relæer, der kan polarisere mine sporskifter.

__________________

MVH
Lars

Like 1 kan lide
Top

Picture

rh42200

Systemadministrator

Indlæg: 73

PB  Hjemmeside

Hej Gerhard

Mit setup kan muligvis ikke overføres til dit 1:1, men måske kan det inspirere alligevel...

Jeg har brugt Arduinoer og relæer til at påvirke mine Hoffmann-sporskiftedrev, der stiller mine sporskifter.  Jeg har valgt at bruge 2-kanals relæmoduler, da de kun kræver en 5 volts spændingsforsyning - der kræves kun et relæ til at påvirke hvert sporskiftdrev, så hvert modul kan bruges til at stille to sporskifter.  Relæmodulerne forsynes med 5V jævnspænding fra en selvstændig strømforsyning, da en Arduino ikke kan levere strøm nok til mere end højst to moduler.  Hoffmann-drevene har indbyggede dioder, så de kan forsynes med vekselstrøm, hvorved man kan nøjes med een strømforsyning og stadig bevæge drevet i begge retninger.  Jeg bruger en 18V ~ strømforsyning til dem.

Min station er bygget på Fremo-moduler, og jeg styrer relæerne med Arduino Nano'er på strategiske steder under min station - i mit sikringsanlæg/kontrolpult ligger en Arduino Mega, som sender ordrer ud til Nano'erne om stilling af sporskifter.   Jeg har valgt at bruge seriel kommunikation mellem Arduinoerne, baseret på en blanding af TTL og RS485.   RS485 er designet til asynkron, seriel kommunikation, og kan benyttes over lange afstande - alternativt kan man bruge I2C, men den er ikke designet til afstande på over 7 meter.   Kommunikationen mellem TTL- og RS485-busserne klares af TTL-til-RS485-moduler - et til hver Arduino. RS485-bussen består af to ledninger, og alle TTL-til-RS485-modulerne er koblet til denne bus. Kommunikationen mellem hver Arduino og tilhørende TTL-til-RS485-modul foregår på en lokal TTL-bus (I2C), der ligeledes består af to ledninger. Yderligere to ledninger mellem Arduinoerne og TTL-til-RS485-modulerne bruges til at stille modulerne om mellem modtagelse og afsendelse af data på RS485-bussen.  TTL-til-RS485-modul skal også forsynes med 5V jævnspænding.

 

 

 

__________________

Sæby station i virkelighed og model
http://www.tlarsen.dk
http://www.facebook.com/saebybanen

Like 0 kan lide
Top

Kommentarvisning

Vælg din foretrukne kommentarvisning og klik på "Gem indstillinger" for at aktivere dit valg.