BeneluxSpoor.net forum

Vraag en antwoord => Digitaal => Topic gestart door: RudyB op 01 December 2014, 16:13:38

Titel: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: RudyB op 01 December 2014, 16:13:38
Er is een nieuwe video uit over het inzetten van meerdere Arduino's in serie als S88 bezetmelding interface.

Link naar de video en naar de software download. (http://rudysmodelrailway.wordpress.com/2014/12/01/multiple-arduinos-chained-as-an-s88-occupancy-detector-interface/)

Waarom dit doen? Gewoon omdat het leuk is het werkend te krijgen. En natuurlijk ook omdat een Arduino rond de €4,- kost en een in de winkel aangeschafte S88 interface rond de €40,-.

(http://up.picr.de/20275128sq.jpg)

De software bestaat uit slechts 4 korte stukjes:

1. Initialisatie
Declaratie van interrupt routines en van de 16 input pinnen met interne pull up weerstand. De sensor moet de input naar 0 schakelen. Er is geen stroomdetectie voorzien, dat kan wel extern bijgebouwd worden.

2. Main loop
Continu alle 16 ingangen scannen. Bij een 0 het bijbehorende bit in de integer variabele 'sensors' zetten. Dit is een 'latch' functie ... bit blijft gezet totdat het is 'weggestuurd' over de S88 interface.

3. S88 PS interrupt.
De PS puls is het sein van de S88 bus dat een nieuwe cyclus van uitlezen van 512 bits gaat starten.
De inhoud van de 'sensors' variabele wordt overgenomen in een tweede variabele genaamd 'data'
De variabele 'sensors' wordt gereset naar 0.
De clockCounter wordt op 0 gezet (wat ie op dat moment al is, maar toch ...)

4. S88 Clock interrupt
De clock puls is het signaal van de S88 bis dat het volgende bit klaargezet moet worden om uitgelezen te worden.
Het bit met nummer 'clockCounter' uit de 16 bit 'data' variabele wordt op de data-Out pin gezet.
De data-In pin wordt gelezen en opgeslqgen in variabele 'data'. Zo lezen we dus een bit van de volgende Arduino in de 'ketting' uit en bewaren het tot de volgende 16 bits een voor een op de S88 bus worden gezet.
Increment de clockCounter, modulo 16
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW downlaod
Bericht door: Hans van de Burgt op 01 December 2014, 16:47:48
@Ruud,

Sounddecoders in locs zijn erg aan de prijs, en dan nog is het geluid soms niet om aan te horen.
Zou je de voorgesteld Arduino bezetmelding ook kunnen gebruiken om het geluid aan te sturen via speakers onder de baan die op strategische punten staan.
Een beetje zoals vroeger het stereogeluid van de ene naar de andere speaker leek te gaan.

Grzz, Hans
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW downlaod
Bericht door: RudyB op 01 December 2014, 17:18:32
Hans,

De Arduino heeft wel mogelijkheden voor sound output. Heb ik nog niet getest. Kan me niet voorstellen dat daar HiFi uit komt.

Dan zou ik toch eerder denken aan een lekkere stevige vette 5.1 surround sound set! :)
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW downlaod
Bericht door: Hans van de Burgt op 01 December 2014, 17:24:13
@Ruud,

Daar denken we ook aan, maar de .wav sounds moeten dan afgespeeld worden op de plek waar wij dat willen. Eventueel virtueel, dat het dus lijkt of het geluid van een loc komt bijvoorbeeld.

Grzz, Hans
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW downlaod
Bericht door: RudyB op 01 December 2014, 17:53:09
Dan hangen we wat camera's aan het plafond en middels driehoek berekening bepalen we waar elke loc is. Bijbehorende geluidsbeeld word real time gemixed naar een 5.1 digitale stream die via een Dolby Digital receiver wordt afgespeeld. Zoiets ...? :)
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: ruudns op 01 December 2014, 18:01:16
 (y) 5.1 voor kleine banen, 7.1 voor de iets grotere ;D.
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW downlaod
Bericht door: Hans van de Burgt op 01 December 2014, 18:16:31
Dan hangen we wat camera's aan het plafond en middels driehoek berekening bepalen we waar elke loc is. Bijbehorende geluidsbeeld word real time gemixed naar een 5.1 digitale stream die via een Dolby Digital receiver wordt afgespeeld.

Dat deden we indertijd bij TNO.
Met detectie (optisch of magnetisch) lijkt me ook goed mogelijk de positie van de locs te bepalen. Heb op het web al wel van dit soort systemen gevonden.
Maar dan denk ik weer ... Onnodig duur!

Grzz, Hans
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: Papierbouwer op 01 December 2014, 18:21:09
Wanneer je echt goedkoop een s88 wil maken kan het makkelijker en nog goedkoper.
Het s88 'protocol' is namelijk gebaseerd op een standaard cmos ic, namelijk de 4014. Hij is €0,75 per stuk bij conrad, maar in China zal hij wel voor minder te krijgen zijn.
https://www.conrad.nl/nl/texas-instruments-uitvoering-8-traps-static-shift-register-parallel-inserieel-uit-vertakt-opladen-cmos-ic-4014-soort-behuizing-dip-16-172707.html (https://www.conrad.nl/nl/texas-instruments-uitvoering-8-traps-static-shift-register-parallel-inserieel-uit-vertakt-opladen-cmos-ic-4014-soort-behuizing-dip-16-172707.html)

Erik
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW downlaod
Bericht door: RudyB op 01 December 2014, 18:39:03
Dat deden we indertijd bij TNO.

Da's leuk hobbyen! En daar kreeg je dan ook nog voor betaald???  ;D
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: Hans van de Burgt op 01 December 2014, 18:41:19
Yep! Tot er stevig bezuinigd moest worden, helaas.

Grzz, Hans
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: FreekH op 02 December 2014, 00:02:54
...
En natuurlijk ook omdat een Arduino rond de €4,- kost
...
Waar kun je zo'n Arduinoprintje voor €4,-  kopen?

Groeten,
Freek.
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: Hans van de Burgt op 02 December 2014, 00:08:15
@Freek,

Hier bijvoorbeeld:
http://m.aliexpress.com/item/1986980366.html

En dan is ie zelfs nog goedkoper dan 4,- euro.
(Zonder verzendkosten, ook nog).

Grzz, Hans
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: schillet op 02 December 2014, 10:40:18
Dag Rudy,

Mooi gedaan!

Hoe zit het met de storingsgevoeligheid van de verbindingen tussen de verschillende Arduino´s? Dat was soms een probleem bij de traditionele S88 bezetmelders.....

mvg,

Thomas
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: jowi op 25 July 2016, 20:07:17
Lijkt me mooi, een Arduino als bezetmelder... helaas kan ik de files etc niet meer van de site downloaden?
Zijn er wellicht nog meer ontwikkelingen/voorbeelden te vinden met arduino's als (s88?) bezetmelder? Dit topic is alweer van een tijdje geleden, de ontwikkelingen gaan ongetwijfeld door...
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: Fritsprt op 25 July 2016, 21:53:37
hmmmm, je hebt gelijk. Ik heb de software in het verleden wel gedownload maar kan me niet herinneren dat ik me daarvoor geregistreerd heb. Ruud zal vast wel reageren en anders kan ik je wel een kopietje sturen.

gr. Frits
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: RudyB op 25 July 2016, 23:46:56
Er zijn helaas vaak problemen met het downladen via box.com.

Als je naar de software pagina gaat via het menu, dan staat daar een download link voor een zip file die de software uit alle blog posts bevat ... ook de S88 sketch zit erbij. Die link doet het wel.
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: jowi op 26 July 2016, 06:23:32
Ga ik proberen!
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: Fritsprt op 26 July 2016, 06:28:05
Begrijpt iedereen wat je bedoelt Ruud? Op je Worldpress (https://dl.dropboxusercontent.com/u/4502966/Arduino_DCC_S88.zip) site dus.

gr. Frits
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: jowi op 26 July 2016, 09:34:07
Heb e.e.a. bekeken... ondanks dat ik erg gecharmeerd ben van de Arduino heb ik toch een beetje het idee dat het in dit geval wat overkill is? Dat hele S88 gebeuren is zo te zien niet meer dan een doorgeefluik, een Arduino voegt niet veel toe t.o.v. de gebruikelijke logische componenten. Wel leuk om te maken natuurlijk.
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: dickkoning op 26 July 2016, 09:45:12
hallo

je kan met een s88 melder op basis van een arduino, toch wel leuke dingen doen
Ik heb het programma van Ruud wat aangepast en behalve stroom "sensing" ook IR "sensing" ingebouwd
Blijft een leuke basis voor experimenten

Dick
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: Timo op 26 July 2016, 15:20:28
Het is inderdaad niet veel meer dan een doorgeefluik. Maar je kan wel wat dingen inbouwen. Zo kan je bijvoorbeeld de ingangen al debouncen zodat de signalen al stabieler zijn. Zonder dat je dit als hardware uit hoeft te voeren. Of je kan kiezen voor active high ipv active low wat normaal is bij S88 etc. En aangezien een Pro Mini zo'n beetje minder kost (en zeker kwa ruimte) dan alle losse chips, tja, waarom niet  ;D


Timo
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: jowi op 26 July 2016, 17:38:31
Is dat debouncen een serieus issue bij dit soort hardware/melders? Ik ga zeker op een breadboardje een poging doen hoor, sowieso wel leuk om eens te kijken hoe en of dat werkt, met een paar bezetmelders.

Vraagje aan Ruud; de sketch RB-S88 is echt het enige wat nodig is?
Ik meende ergens te lezen dat het geen echte 'bezetmelder'  was maar een 'terugmelder'... wat bedoeld men daarmee, en is dat zo?
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: Timo op 26 July 2016, 18:14:39
Bij stroomdetectie niet, die hebben het vaak al in hardware. Maar bij schakelaars gegarandeerd. Wel kan de meeste software er mee over weg en zal het genegeerd worden.

S88 is van nature een terugmelder. Het meldt aan de centrale wanneer een pin naar GND getrokken wordt. Maar hoe dit gebeurd of wat het betekend is aan de gebruiker. En een trein kan niet vanzelf een signaal naar GND trekken, het heeft daar wat voor nodig, een bezetmelder. Dit kan een onderbroken rail zijn bij 3-rail of lichtsluisjes of, wat gebruikelijk is bij 2-rail, stroomdetectie. Tegenwoordig wordt de term bezetmelder vaak ook gebruikt voor een bezetmelder met ingebouwde stroomdetectie.


Timo
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: jowi op 26 July 2016, 18:28:10
Maar dit is dus geen bezetmelder obv stroomdetectie begrijp ik? Dus niet functioneel gelijk aan s88 producten die je bijv. van digikeijs etc kunt kopen? Of is dit alleen bedoeld om met reedcontacten ofzo te werken?

Want ik zoek dus duidelijk een arduino-based bezetmelder obv stroomdetectie...
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: Robert E op 26 July 2016, 18:47:12
Citaat
Want ik zoek dus duidelijk een arduino-based bezetmelder obv stroomdetectie...

Is dan wel geen Arduino maar wel Atmel

http://members.home.nl/robert.evers/s88mega8.htm

Als de je Mega8 eraf haalt en de Arduino van Rudy eraan plakt heb je denk ik wat je zoekt....

Waarbij ik even in het midden laat of je nu een S88 Arduino met stroomdetectie zoekt of een bezetmelder zonder S88 maar met stroomdetectie...
Dat is altijd lekker verwarrend :)

Mvg

Robert
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: jowi op 26 July 2016, 18:54:27
Ha ja ik ben daar ook nog niet uit of ik wel goed vertel wat ik wil ;D

Ik denk een arduino-based bezetmelder obv stroomdetectie, die ik aan een Z21 of een Digikeijs 5000 centrale etc. kan knopen :)
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: Hans van de Burgt op 26 July 2016, 19:06:23
@Jowi,

De door Ruud tot S88 "verbouwde" Arduino's werken prima met de DR5000 van Digikeijs.
Het voordeel is vooral het prijsverschil met "echte" S88 schakelingen.

Gr, Hans
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: dickkoning op 26 July 2016, 19:23:26
hallo

ik heb uiteindelijk mijn s88 melders met discrete ic's opgebouwd maar ik heb destijds wel wat ontwerpjes gemaakt gebaseerd op een arduino ( een pro mini in dit geval).
Schema en print zijn ongetest, maar een prototype op een bread boardje heeft probleemloos gewerkt.
Ik kan je de eagle files als uitgangspunt wel opsturen.

Als je eea wilt bouwen zul je wat meer aandacht aan de voeding en aan de mogelijkheid meer arduino ingangen te gebruiken kunnen schenken ( verder groundplane etc)

Dick

(https://images.beneluxspoor.net/bnls/schema_s88_arduino.png)[/url

[url=https://images.beneluxspoor.net/bnls/s88_arduino.jpg](https://images.beneluxspoor.net/bnls/s88_arduino.jpg) (https://images.beneluxspoor.net/bnls/schema_s88_arduino.png)
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: jowi op 26 July 2016, 19:32:25
Oh dat vind ik wel mooi dit Dick! Wil ik graag proberen... stuur me de files maar als je wilt!
Ik geef je wel even mijn email adres in een pb!
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: Robert E op 26 July 2016, 20:11:45
We kapen Rudy's draadje...

Anyway

Citaat
Schema en print zijn ongetest, maar een prototype op een bread boardje heeft probleemloos gewerkt

Maak de printsporen van de connector naar de gelijkrichters (en terug) VEEL breder!!!
Eerste beste ontsporing met een kortsluiting bakt je spoor van print af bij een 2..3A booster en haperende / of geen kortsluit beveiliging....

Mvg

Robert
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: Timo op 26 July 2016, 21:33:22
Maar dit is dus geen bezetmelder obv stroomdetectie begrijp ik?
Nee, dit is puur de interface terug, de terugmelder dus.

Dus niet functioneel gelijk aan s88 producten die je bijv. van digikeijs etc kunt kopen?
Daar bedoel je waarschijnlijk de DR4088CS. Dan nee, CS staat niet voor niets voor Current Sens  ;) S88 was van oorsprong niets meer dan een manier om ingangen terug te sturen aan de centrale. De DR4088GND is hier nog een voorbeeld van, deze is dus vergelijkbaar met deze Arduino oplossing. Net als de oorspronkelijke versie van Märklin, de 60880 of de Viessmann 5217 of LDT RM-88-N. Tweerail hing daar dan een losse stroomdetectie aan. Bijvoorbeeld zoals die van Dick of de LB100 van Lenz of de (betere) variant van Klaas (http://people.zeelandnet.nl/zondervan/bonte%20verzameling.html#02b).

Of is dit alleen bedoeld om met reedcontacten ofzo te werken?
Kan, maar van oorsprong was het een idee van Märklin waar een contact naar massa enorm eenvoudig was/is. Door één railstaaaf te onderbreken verbond een trein deze vanzelf met de andere railstaaf (de massa) wanneer er over heen gereden werd. Iets wat Märklin al toepaste in het analoge tijdperk.

Maar je kan er alles aan sluiten, zolang het maar naar massa schakelt. Reedcontacten, lichtsluizen, IR-reflectie, schakelaars, stroomdetectie, massa schakelaars enz.

Want ik zoek dus duidelijk een arduino-based bezetmelder obv stroomdetectie...
Dan gewoon een van de stroomdetectie circuits aan iedere ingang toevoegen. Bijvoorbeeld de Klaas LB100 (werk met het verval van één diode) of een meer klassieke met het verval van twee diodes zoals die van Dick. Zou zelf wel gewoon voor de PC817 opto gaan, heerlijk goedkoop. Het gedender omdat de opto maar in één DCC richting werkt is vervolgens prima in software af te vangen (of door het plaatsen van een condensator maar dat is extra hardware  ;D). En inderdaad, dikke sporen!


Timo
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: gvandersel op 28 July 2016, 12:58:46
Kan er een relais bij voor een keerlus schakeling?

Groet,

Gerard van der Sel.
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: Timo op 28 July 2016, 13:01:27
Hoe bedoel je Gerard?


Timo
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: gvandersel op 28 July 2016, 13:08:24
Ik heb hier 8 terugmelders en een micro die staat te niksen. Kan daar niet een relais bij die samen met 5 ingangen een keerlusschakeling vormen.
Ik denk als volgt:
Terugmelders 1 t/m 8: 1 = A, 2 = B, 3 = C, 4 = D en 5 = E. 6, 7 en 8 spelen geen rol voor de keerlus en zijn vrij te gebruiken.
Nu met A t/m E het relais besturen en je hebt een Xtreme keerlusschakeling volgens mij.

Groet,

Gerard van der Sel.
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: Timo op 28 July 2016, 14:46:50
Yep, prima mogelijk :) Dan moet natuurlijk wel extra goed rekening gehouden worden met debouncing/signaal stabiliteit en over polariteit  van de bezetmelders als het gaat om stroomdetectie.


Timo
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: gvandersel op 29 July 2016, 09:09:23
Wat bedoel je met de polariteit van de stroommeting? Als er stroom loopt volgt er of een constante melding (ac opto-coupler) of een blokgolf (dc opto-coupler).
Als je de S88 methode van ontdenderen gebruikt is het vrij simpel (inverse waarde or'en).
Werkt al jaren bij mij onder Selectrix. Voordeel een keerlus schakeling voor minder dan 10 euro.
Voor het Selectrix voorbeeld zie hier:
(https://images.beneluxspoor.net/bnls/Keerlus_10.jpg) (https://images.beneluxspoor.net/bnls/Keerlus_10.jpg)
(Werkt niet met de Arduino, maar met een ATtiny2013)

Groet,

Gerard van der Sel.
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: Timo op 29 July 2016, 11:18:06
Dat je dus de polariteit naar alle melders van de keerlus moet omdraaien. Meer eigenlijk dus het correct ontwerpen.  ;D Maar als je losse stroomdetectie gebruikt met één voeding aansluiting voor meerdere secties dat je dus op let waar je ze gebruikt.

inverse waarde or'en
Wat bedoel je hier mee? Kan je een code voorbeeld geven?


Timo
Titel: Re: Arduino's in serie als S88 bezetmelder interface: video en SW download
Bericht door: gvandersel op 29 July 2016, 12:31:47
Tuurlijk. Het "hart" van de keerlus/terugmelder (helaas in assembly):
KEERLUS:
; Keerlus aansturing
;   Data vanaf de ingangen verzamelen
IN R27, PINB
COM R27
OR KLterugmeld, R27
;   Trein arriveert bij sectie A of B
    MOV     R26, R27
AND     R26, KLmaskAB
BREQ KEERLUS_10
CBI PORTD, REL1
SBRC KLstatus, Sect_combine
OR KLterugmeld, KLmaskAB
RET
KEERLUS_10:
;   Trein arriveert bij sectie D of E
    MOV     R26, R27
AND     R26, KLmaskDE
BREQ KEERLUS_20
SBI PORTD, REL1
SBRC KLstatus, Sect_combine
OR KLterugmeld, KLmaskDE
KEERLUS_20:
RET

Enige toelichting:
Poort B is als ingang geschakeld. De 8 terugmelders zijn hierop aangesloten. Het Selectrix protocol is een bidirectioneel 8 bits protocol. Door poort B als ingang of uitgang te schakelen kan ik zo een compleet byte van deSelectrix bus verwerken.
KLterugmeld wordt na versturen van de data naar de SX-nbus op 0 gezet.
In routine de eerste drie regels zie je wat ik bedoel. Hierna wordt gekeken of een trein bij de secties A/B of D/E is en het relais overeenkomstig aangestuurd.
Ook de terugmelding wordt eventueel aangepast, zodat sectie A/B of D/E gelijktijdig gemeld kan worden.

Groet,

Gerard van der Sel.