Picture

Tue

Indlæg: 15

PB

Arduino koblet på CS3+ via S88

Hej Alle

Er er nogen der har prøvet at koble en Arduino på S88 bussen på en CS3+. Der er gode anvisninger på hvordan man får Arduino til at fungere som en S88 tilbagemeldingsmodul, og kobler det til fx CS2, S88Link, ECOS m.m., men ingen til CS3+.

Smile  Tue

Like 0 kan lide
Top

Picture

PerR

Indlæg: 71

PB

Dette emne diskuteres i øjeblikket på marklin-users.net

Men du skal være opmærksom på at CS3+ anvender 12 Volt på S88 bussen.

Jeg vil tro en en Arduino vil dø hvis du forbinder den til en CS3+ der har 12 Volt på S88 bussen.

Hvis man anvender en Link88, så er der en switch hvor man kan vælge mellem 12 Volt og 5 Volt på S88 bussen.

Det tror jeg er sundere for en Arduino.

 

__________________

Mvh Per

 Marklin K/(C) skinner / Marklin CS3+ (60216) /CS2 (60214, 60215) / Marklin 60061/60101 /  60174 Booster / MS1 / MS2
Tilbehør :  7286 Drejeskive(analog)  Applikationer : Marklin Mobilstation (Android), iTrain PC software

 

Like 1 kan lide
Top

Picture

Tue

Indlæg: 15

PB

Tak Per

Jeg ville gerne anvende Arduino sammen med CS3+ og lige nu er det bedste nok, at lade Arduino rapportere via s88 modulerne - altså at den gennem en optokopler slutter kontakten på en S88 (60881). Man kan så diskutere hvor meget man behøver Arduinoen, hvis man sammen med hver sensor indbygger en optokobler. Så er det blot sensore direkte, som med lidt strøm fra skinnerne gennem optokopleren, trigger S88.

Jeg holder lige øje med om nogen på Marklin-users.net har yderligere kommentarer.

Mvh Tue

 

Like 0 kan lide
Top

Picture

PerR

Indlæg: 71

PB

Jeg havde ikke lige bemærket at det var dig der havde skrevet det oprindelige indlæg på marklin-users.net.

Det kunne være interessant at vide hvilken funktion du ønsker at løse med Arduinoen eller om øvelsen mere går på at vise at man kan få dem til at snakke sammen.

Hvis det er for at vise at det kan lade sig gøre at forbinde CS3+ og en Arduino, så vil jeg mene at du får brug for en leveltranslater til at få de 5 Volt på udgangen af Arduinoen op på 12 Volt som skal bruges på S88 bussen.

På indgangene kan man nok klare sig med nogle spændingsdelere.

 

__________________

Mvh Per

 Marklin K/(C) skinner / Marklin CS3+ (60216) /CS2 (60214, 60215) / Marklin 60061/60101 /  60174 Booster / MS1 / MS2
Tilbehør :  7286 Drejeskive(analog)  Applikationer : Marklin Mobilstation (Android), iTrain PC software

 

Like 1 kan lide
Top

Picture

Tue

Indlæg: 15

PB

Hej Per
Den primære årsag er et problem med at detektere "aksler". Jeg prøver med RocRail at lave xml scrips som styre fordeling af nogen godsvogne, og for at kunne positionere vognene rigtig i forhold til en afkobler har jeg lavet et lille traditionelt isoleret skinnestykke som "tæller" hvor mange der køre hen over. Det gør at jeg kan afkorte toget i passende længder. Men der kommer alt for tit dobbelt registreringer eller ingen registreringer overhovedt - så det er altså ikke stabile aflæsninger jeg får.

Så læste jeg om en mulighed for at bruge gaffel optokoblere monteret nede i en skinne - så den blev afbrudt når et hjul kørte gennem lysstrålen - og det bragte mig på sporet af Arduino som jeg synes giver rigtig mange andre muligheder - fx REFID læsning og HAL sensor. Men skinne isolering fungere jo fint til blok registreringer, så min tanke var, at blive ved med at køre blokkene ind over S88 på CS3+ og så kun bruge Arduino på S88 bussen til de mere specielle sensore.

Jeg tænker dog at det ikke er et must at få Arduino ind over. Jeg mener sagtens jeg kan tappe lidt skinnestrøm (18 V C-rail) med modstand, diode og capacitor, og på den måde strømføde optokopleren og bare lade dens transistordel lave jorforbindelsen som en normal skinnekontakt gør på S88 modulet. Lidt det samme med HAL sensorene, med de skal så have påmonteret en normal optokobler for også at kunne lave jordforbindelen på S88. Tænker jeg helt galt? Jeg er som du måske kan mærke helt ny i elektronikdele men har en del professionel programmerings erfaring.
Smile Tue

Like 0 kan lide
Top

Picture

Lars Skjærlund

Rødovre

Webmaster

Indlæg: 4.115

PB  Blog  Hjemmeside

Da' Tue.

Jeg forstår godt dine tanker - men du må nok være lidt mere specifik, hvis du skal have kvalificeret hjælp.

En Arduino er jo ikke bare en Arduino: Det er efterhånden blevet en masse-betegnelse, der kan forståes på mange måder. For mange - inkl. mig selv - er Arduino produkter fra open source/open hardware projektet kendt som Arduino, og alle de kloner, der efterhånden er lavet. Men for mange er det efterhånden blevet en betegnelse for alverdens små-systemer, der kan programmeres med Arduinos IDE og/eller benytter Arduinos code framework. Det siger jeg, fordi ikke mindst ESP32 for nogle også er en "Arduino" - hvilket jeg har svært ved at se.

Det skal ikke misforståes: Jeg er stor fan af ESP32, jeg opfatter den bare ikke som en Arduino. Og jeg bruger ikke Arduinos IDE til at programmere dem, jeg er skiftet til Platform IO, som jeg iøvrigt også bruger til at programmere "rigtige" Arduinoer. Er man en erfaring udvikler, er det en meget bedre platform. Synes jeg.

Så: Når du siger "Arduino" - hvad mener du så?

__________________

MVH
Lars

Like 1 kan lide
Top

Picture

Tue

Indlæg: 15

PB

Hej Lars - tak for dit svar.

Men Arduion mener jeg blot de muligheder der ligger i at bruge en nano eller uno som en simpel S88 "bus" koblet på en CS3+ med mulighed for at tilpasse reaktionen på forskellige input porte. Det kunne for den sags skyld også være en Rasberry Pi - men nu fandt jeg en del "sketch" som passede til instruktioner til Arduino. Men jeg er lige nu mere i retning af at køre sensorene direkte i S88 modulet på CS3+  som jeg også skriver i min sidste kommentar. Det bliver nok for bøvlet med at koble noget på CS3+ 88 bussen som ikke er 60881 moduler fra Marklin.

 

Smile tue

Like 0 kan lide
Top

Picture

Lars Skjærlund

Rødovre

Webmaster

Indlæg: 4.115

PB  Blog  Hjemmeside

Da' igen.

Både Nano og Uno er 5V kredsløb. Nano skal forsynes med 5V, mens Uno har en indbygget spændingsregulator, der gør, at den godt kan køre på 12V. Det frarådes dog normalt, hvis man bruger bare lidt meget strøm, da Uno'en så bliver meget varm. Det kunne du lade komme an på en prøve.

Til din applikation vil en Raspberry Pi nok være en dårlig idé: Den har mange kvaliteter, men real-time kredsløb er ikke en af dem. Smile RPi kører jo Linux, og operativsystemet er her faktisk en hindring for at kunne lave løsninger, der kræver præcis timing. Det er meget lettere med Arduino, hvor der ikke er noget OS, der kommer i vejen - her kører du bare din applikation direkte på CPUen. Og så er det også billigere.

Hvis du kunne komme med et link - eller uploade et diagram - til det, du har kig på, kan vi kommentere lidt mere på det.

Arduinoerne kan faktisk godt i nogle tilfælde tåle 12V på ind/udgange, hvis man gør det på den rigtige måde.

__________________

MVH
Lars

Like 1 kan lide
Top

Picture

gejo

Indlæg: 668

PB

Nano'en har også indbytgget en spændingsregulator (1A) dog uden køleplade, så strømmen skal nolk ikke nå derop permanet. Spændingsforsyningsindgang betegnet "Vin", og den tåler op til 15V,  ja faktisk 18V, hvilket dog er lige på grænsen, men 12V er absolut intet problem.

Gert

Like 1 kan lide
Top

Picture

PerR

Indlæg: 71

PB

Jeg vil ikke anbefale at man forsøger at forbinde en Arduino til RJ45 stikket i bunden af en CS3+.

Jeg synes at det er bedre at forbinde den til Bus 3 på en Link88 (60883).

Og det er der flere grunde til.

For det første, så slipper du for at tænke på 5 Volt / 12 Volt problemet, hvis du indstiller Link88 til 5 Volt.

For det andet, så kan du finde alle de informationer du har brug for i et svar på dit opslag på marklin-users.net

For det tredje, så er den simple Arduino løsning kun beregnet til at der er en Arduino på S88 bussen, så man kan ikke koble flere efter hinanden, og så er Link88 til stor hjælp med sine 3 S88 busser.

Og så det vigtigste argument efter min mening, at du ikke risikerer at brænde CS3 af under eksperimentet med Arduino.

 

__________________

Mvh Per

 Marklin K/(C) skinner / Marklin CS3+ (60216) /CS2 (60214, 60215) / Marklin 60061/60101 /  60174 Booster / MS1 / MS2
Tilbehør :  7286 Drejeskive(analog)  Applikationer : Marklin Mobilstation (Android), iTrain PC software

 

Like 1 kan lide
Top

Picture

Tue

Indlæg: 15

PB

Hej Per

Det er også den konklusion jeg hæler mest til nu. Tak for det gode råd.

Smile Tue

Like 0 kan lide
Top

Picture

Tue

Indlæg: 15

PB

 

 

Lars Skjærlund skrev:

Da' igen.

Både Nano og Uno er 5V kredsløb. Nano skal forsynes med 5V, mens Uno har en indbygget spændingsregulator, der gør, at den godt kan køre på 12V. Det frarådes dog normalt, hvis man bruger bare lidt meget strøm, da Uno'en så bliver meget varm. Det kunne du lade komme an på en prøve.

Til din applikation vil en Raspberry Pi nok være en dårlig idé: Den har mange kvaliteter, men real-time kredsløb er ikke en af dem. Smile RPi kører jo Linux, og operativsystemet er her faktisk en hindring for at kunne lave løsninger, der kræver præcis timing. Det er meget lettere med Arduino, hvor der ikke er noget OS, der kommer i vejen - her kører du bare din applikation direkte på CPUen. Og så er det også billigere.

Hvis du kunne komme med et link - eller uploade et diagram - til det, du har kig på, kan vi kommentere lidt mere på det.

Arduinoerne kan faktisk godt i nogle tilfælde tåle 12V på ind/udgange, hvis man gør det på den rigtige måde.

Hej Lars

Jeg havde ikke tænkt på den forskel du næver vedr. styresystem Rasberry PI og linux contra Arduino. Det er en væsentlig forskel. Men som Per nævner i sit indlæg bliver det alt i alt for risikabelt i forhold til fordelene at gå uden om en Link88 som "interface" til S88 bussen. Så jeg er ved at gå videre med de lidt mere komplekse sensorer som jeg kan koble direkte op 60881 enhederne. Jeg uploader et lille diagram snarest for den simpleste løsning som blot er en optokobler monteret i skinneniveau.
Tak for gode råd - og det vil være alle tiders hvis du vil kikke på mit opload
(som er kraftigt inspireret fra denne youtube... https://www.youtube.com/watch?v=cpmpmH5HX1M).
Smile tue 

 

Like 1 kan lide
Top

Picture

Tue

Indlæg: 15

PB

gejo skrev:

Nano'en har også indbytgget en spændingsregulator (1A) dog uden køleplade, så strømmen skal nolk ikke nå derop permanet. Spændingsforsyningsindgang betegnet "Vin", og den tåler op til 15V,  ja faktisk 18V, hvilket dog er lige på grænsen, men 12V er absolut intet problem.

Gert

Tak gejo - det er taget ad notam.

 

Like 0 kan lide
Top

Picture

Tue

Indlæg: 15

PB

Hej Lars
Vil du tage et kik på vedlagte diagram (som er mit første af slagsen)
Smile Tue

Like 0 kan lide
Top

Picture

PerR

Indlæg: 71

PB

Jeg ville nok fjerne den forbindelse du har under optokobleren, der går fra Brun skinne stelforbindelse og stel på S88.

 

__________________

Mvh Per

 Marklin K/(C) skinner / Marklin CS3+ (60216) /CS2 (60214, 60215) / Marklin 60061/60101 /  60174 Booster / MS1 / MS2
Tilbehør :  7286 Drejeskive(analog)  Applikationer : Marklin Mobilstation (Android), iTrain PC software

 

Like 1 kan lide
Top

Picture

Mikael

Udviklingsingeniør

Indlæg: 594

PB  Hjemmeside

Jeg vil anbefale at bytte om på modstand og diode.

 

Like 1 kan lide
Top

Picture

gejo

Indlæg: 668

PB

Du angiver "rød" som plus, men det er ikke rigtigt. Rød er en digital AC-spænding - dvs. den indeholder både plus og minus spænding. Derfor vil elektrolytten ikke have det godt i din opstilling. Dioden skal ind i kredsløbet før elektrolytten. -og så bør den i øvrigt være langt mindre, hvis du ikke vil have en alt for lang reaktionstid. Den kan godt undlades eller ersttes af 100nF.

Gert

Like 1 kan lide
Top

Picture

Tue

Indlæg: 15

PB

Hej Gert
Du har selvfølgelig ret. Jeg har ændret som vist i vedlagte.Ser det rigtigere ud? 
Er der en eller anden tærskel modstand før optokobler transistoren åbner for gennemgang til jord til S88 kontakten? - eller er den måske så lille at det ikke betyder noget?

Smile Tue

Like 0 kan lide
Top

Picture

Tue

Indlæg: 15

PB

Jeg har tilrettet layout og vedlagt i svar til Gert. Men kommer pludselig i tvivl om jeg har forstår optokoblerens ind og udgang rigtigt. Er det ikke c-skinnens jord som skal være indgang i optokoblerens højre side - så den føres igennem og ned til en af S88 modulets (60881) indgange?

Smile tue

Like 0 kan lide
Top

Picture

Tue

Indlæg: 15

PB

Mikael skrev:

Jeg vil anbefale at bytte om på modstand og diode.

 

Tak Michael - du har helt ret. Jeg har lavet nyt layout som vedlagt i mit svar til Gert

 

Like 0 kan lide
Top

Picture

Tue

Indlæg: 15

PB

PerR skrev:

Jeg ville nok fjerne den forbindelse du har under optokobleren, der går fra Brun skinne stelforbindelse og stel på S88.

 

Tak Per - Forstår. Det vil nok i praksis være den samme "jord" men på diagrammet er det i hvertfald ikke nogen direkte forbindelse der er brug for.

Jeg har laet nyt layout og uploaded under svar til Gert.

Men måske er der alligevel noget galt her... På 80661 er det jo en forbindelse fra C-skinnens Jord som skal føres ned på en af indgangene. Så det må vel være C-skinnens jord som skal føres in på optokoblerens indgang i højre side ikke?

Smile tue

 

Like 0 kan lide
Top

Picture

gejo

Indlæg: 668

PB

Det ser fint ud. Du kan dog uden problemer hæve modstanden til 2k ohm. Det spiller ikke nogen rolle men halverer strømforbruget, som dog er minimalt.

Gert

Like 1 kan lide
Top

Picture

Tue

Indlæg: 15

PB

gejo skrev:

Det ser fint ud. Du kan dog uden problemer hæve modstanden til 2k ohm. Det spiller ikke nogen rolle men halverer strømforbruget, som dog er minimalt.

Gert

Tak Gert. Og tror du ikke jeg skal koble "C-skinne brun" til indgangen på højre side af optokobleren?

Smile tue

 

Like 0 kan lide
Top

Picture

PerR

Indlæg: 71

PB

Du skal koble den nederste terminal på optokobleren til den terminal på S88 der ligner et omvendt T (Innocent.

Det er kun den første S88 som skal have forbindelse mellem den terminal på S88 med det omvendte T og den brune ledning på C-skinnerne.

Hvis du laver flere forbindelser, så kan der komme til at løbe nogle "støjstrømme"

__________________

Mvh Per

 Marklin K/(C) skinner / Marklin CS3+ (60216) /CS2 (60214, 60215) / Marklin 60061/60101 /  60174 Booster / MS1 / MS2
Tilbehør :  7286 Drejeskive(analog)  Applikationer : Marklin Mobilstation (Android), iTrain PC software

 

Like 1 kan lide
Top

Picture

Tue

Indlæg: 15

PB

PerR skrev:

Du skal koble den nederste terminal på optokobleren til den terminal på S88 der ligner et omvendt T (Innocent.

Det er kun den første S88 som skal have forbindelse mellem den terminal på S88 med det omvendte T og den brune ledning på C-skinnerne.

Hvis du laver flere forbindelser, så kan der komme til at løbe nogle "støjstrømme"

OK - så skal jeg altså bruge 2 ledninger til sensoren - det er også fint nok - vedlægger lige endelig layout...

 

AttachmentStørrelse
Marklin c-rail optocoupler sensor to 80661 S88 Final.jpg 22.42 kB
Like 0 kan lide
Top

Picture

gejo

Indlæg: 668

PB

Per har givet dig svaret, men hvad skal du bruge optokobleren til. Er det for at se om der er strøm på skinnen? S88 kan godt tåle, at du sætter den "røde" ledning direkte til en af indgangene, og den vil også registrere, at der om der er spænding på skinnen - altså den "røde" ledning eller ej. Da digitalspændingen er en AC spændig vil den passere 0 V på et tidspunkt (mange gange) og det vil S88 registrere. Hvis der ikke er spænding på den "røde" ledning vil S88 indgangen forblive "høj", altså ingen aktivitet.

Gert

Like 1 kan lide
Top

Picture

Tue

Indlæg: 15

PB

gejo skrev:

Per har givet dig svaret, men hvad skal du bruge optokobleren til. Er det for at se om der er strøm på skinnen? S88 kan godt tåle, at du sætter den "røde" ledning direkte til en af indgangene, og den vil også registrere, at der om der er spænding på skinnen - altså den "røde" ledning eller ej. Da digitalspændingen er en AC spændig vil den passere 0 V på et tidspunkt (mange gange) og det vil S88 registrere. Hvis der ikke er spænding på den "røde" ledning vil S88 indgangen forblive "høj", altså ingen aktivitet.

Gert

Hej Gert

Optokobleren er en "gaffel" type, som jeg vil montere på tværs af en skinne således at når et hjul passere vil den bryde lyset. Jeg har brug for en meget sikker måde at tælle aksler på, nå jeg automatisk skal bryde en vognstamme op i mindre enheder som skal rangeres væk. 

Når jeg har fået det til at virke, vil jeg udbygge med forskellige andre sensore - nogen måske konstrueret med en Arduino Nano - men som blot på samme måde trigger en indgang på S88 60881 modulet via en optokobler (dog ikke en gaffel type som er udgangpunktet for mit første forsøg).

Gerhart Kruse har vist hvodan man montere den i en C-Skinne...  https://www.youtube.com/watch?v=OFfrP3ewYY8
Smile Tue

Like 0 kan lide
Top

Picture

gejo

Indlæg: 668

PB

Fint nok. Jeg vedhæfter dog Märklins egne oplysninger om S88 af hensyn til dig og andre, der skulle have brug for det.

Gert

AttachmentStørrelse
IMG20240331175612.jpg 1.17 MB
Like 1 kan lide
Top

Picture

PerR

Indlæg: 71

PB

Hej Gert,

jeg er lidt overrasket over de spændinger der nævnes i din .jpg fil.

Hvor stammer disse oplysninger fra?

Hvis det er officiel Märklin dokumentation, så tror jeg at det måske kan være skrevet af en person der måske ikke har læst specifikationerne helt rigtigt.

De oprindelige S88 (6088) er opbygget af standard CMOS logik kredse som 4044 og 4014 og data opgives ved forsyningsspændinger på 5 Volt, 10 Volt og 15 Volt.

Jeg synes at spændinger på +- 40 Volt virker helt forkert for denne type kredsløb.

Jeg kan ikke huske diagrammet for en S88 og da min bog med diagrammet er udlånt, har jeg ikke mulighed for at checke det.

Muligvis er der indsat modstande i serie med indgangene som sammen med sikringsdioderne på indgangene kan gøre at man kan tolerere en højere spænding på indgangen af S88, men +- 40 Volt virker voldsomt.

Jeg har set CMOS indgange der gik i latchup på grund af for høje spændinger på indgangen,  så jeg vil ikke foreslå at amvende indgangsspændinger højere end forsyningsspændingen, og max 15 Volt.

Spændings niveauet der er nævnt på 2,5 Volt, gælder kun hvis S88 anvendes på en S88 bus der kører på 5 Volt.

For en 60881 der er der tilsluttet i bunden af en CS3+ eller en Link88 der er indstillet til 12 Volt, så er spændings niveauet 6 Volt i stedet for 2,5 Volt.

De nye S88 moduler (60881), er også opbygget af standard CMOS logik kredse som 4044 og 4014, men de anvender desuden også en 40106.

 

__________________

Mvh Per

 Marklin K/(C) skinner / Marklin CS3+ (60216) /CS2 (60214, 60215) / Marklin 60061/60101 /  60174 Booster / MS1 / MS2
Tilbehør :  7286 Drejeskive(analog)  Applikationer : Marklin Mobilstation (Android), iTrain PC software

 

Like 0 kan lide
Top

Picture

gejo

Indlæg: 668

PB

 

Oplysningerne er fotograferet fra side 181 i bogen "Einstieg in Märklin Digital" udgivet af Märklin i 1994, men da S88 ikke er ændret selvom den har fået nyt nummer og udseende - det er som du skriver de samme C-mos kredse. Du har ret i, at terskelværdierne henviser til at Märklin den gang kørte med 5 Volt på kredsene og selvfølgelig er højere (6 V), når spændingen på kredsene er ændret til 12 V.

Jeg er helt sikker på, at Märklin har været meget bevist om, hvad de skrev, da de bl.a. brugte denne mulighed for at styre den gamle metal drejeskive til spornumre.

Indgangsmodstanden i serie er 10 k, hvilket er nok til at begrænse strømmen, så den ikke ødelægger sikringsdioderne. Nu er digitalspændingen jo også "kun" 22V plus/minus.

40106 kommer ikke umiddelbart i berøring med indgangene. Den sikrer bare et mere præcist signal mellem modulerne.

Gert

Like 0 kan lide
Top

Picture

gejo

Indlæg: 668

PB

Hej Per

Jeg kunne ikke lade være med at finde Philips bog fra 1983 om C-mos kredse frem for at se, hvad der står om beskyttelsesdioderne. Af bogen fremgår det, at strømme gennem dioderne på 10 mA vil ødelægge kredsen. Märklin holder sig med den valgte formodstand 10 kohm og spænding på +/- 40 V på en strøm på 4 mA altså pænt under de 10 mA. Så alt er som det burde være, selvom det er lidt utraditionelt.

Gert

Like 0 kan lide
Top

Picture

PerR

Indlæg: 71

PB

Hej Gert

De +-40 Volt gælder naturligvis kun for de 16 indgange der er beregnet til at blive forbudet til sporene og det giver god mening.

Nu startede diskussionen om spændinger på selve S88 bussen og der skal man holde sig fra+- 40 Volt.

 

__________________

Mvh Per

 Marklin K/(C) skinner / Marklin CS3+ (60216) /CS2 (60214, 60215) / Marklin 60061/60101 /  60174 Booster / MS1 / MS2
Tilbehør :  7286 Drejeskive(analog)  Applikationer : Marklin Mobilstation (Android), iTrain PC software

 

Like 0 kan lide
Top

Picture

gejo

Indlæg: 668

PB

Hej Per

Helt enig. Det er ikke forsyningspænding vi taler om.

Gert

Like 0 kan lide
Top

Kommentarvisning

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