Loading...
 

OM32, OC32 and LichtOrgel


OM32 standalone met RS485

Netherlands

Hallo
Gisteren hebben wij ons eerste project met standalone OM32's en Koploper in bedrijf gezien op een modelbouwbeurs in Veendam.
Haven complex met rangeerterrein.
Wij rijden niet digitaal in de zin dat onze locs digitaal worden aangestuurd van uit bv. Koploper. Wij gebruiken alleen de functionaliteit van de OM32's voor besturing van diverse zaken.( wissels,seinen,sporen aan/uit(relais), rolbrug etc. )
De opzet van onze modulebaan is ook zo dat besturen van de loc's er voorlopig niet in zit. Wel komen er straks diverse projecten op OM32 bij. (locdepot,station,diveunder,tuin )
Al deze projecten staan eigenlijk op zich zelf maar hebben allemaal een stukje beveiliging van de hoofdbaan in zich. De bedoeling is om een RS485 bus onder de baan te leggen om al die projecten met elkaar te verbinden. Op deze wijze kan Pietje de beveiliging op de hoofbaan over nemen als Klaas even iets anders aan het doen is.
In Koploper kan je op één tabblad je eigen project besturen en op een ander tabblad de hoofdbaan in zijn geheel bewaken.
Waarom nu RS485? De huidige RS232 spanningen uit de usb converters zijn vaak maar +8 en -8Volt en géén +12 en -12Volt zoals vroeger uit een echte PC kaart.
Hierdoor verwacht ik ook minder grote afstanden te kunnen overbruggen.
Tevens kan via de RS485 ook worden bewaakt of er al een andere PC iets verzend over de bus waardoor jouw PC even wacht met versturen van zijn bericht. dit in tegen stelling tot RS232 met MAX232. Heb al eens met de IC's max3082 iets geprobeerd maar had het idee dat er iets met de data verkeerd ging.
Nu mijn vraag wie kan mij helpen aan een schema waarbij ik vanuit RS232 naar RS485 kan en dat de OM32 het ook nog snapt? mvg Jan Hendriks

Netherlands

Hallo Jan,

"Waarom nu RS485? De huidige RS232 spanningen uit de usb converters zijn vaak maar +8 en -8Volt en géén +12 en -12Volt zoals vroeger uit een echte PC kaart. Hierdoor verwacht ik ook minder grote afstanden te kunnen overbruggen."

Het hang er een beetje van af wat de afstanden zijn waarover je praat. Die 8V is het probleem niet, RS485 werkt zelfs maar met 5V. Het verschil is echter dat RS485 gebalanceerd is, waardoor je over lange afstanden minder problemen hebt met stoorsignalen. Bovendien ben je minder afhankelijk van een gemeenschappelijk referentiepotentiaal ("aarde"), maar dat moet er nog steeds wel zijn, alleen minder nauwkeurig.

"Tevens kan via de RS485 ook worden bewaakt of er al een andere PC iets verzend over de bus waardoor jouw PC even wacht met versturen van zijn bericht."

Dat klopt, alleen is het wel de software op de PC die dat dan moet regelen, en Koploper doet dit zeker niet. Meerdere Koploper-PC's die samen iets moeten sturen op dezelfde RS485 bus, dat kun je vergeten (als je tenminste verwacht dat het goed gaat). Als je dat wilt zul je je dus zowiezo andere software moeten hebben, waarschijnlijk zelf maken. Je moet dan feitelijk een CSMA/CD, token passing of master/slave techniek implementeren.

"Nu mijn vraag wie kan mij helpen aan een schema waarbij ik vanuit RS232 naar RS485 kan en dat de OM32 het ook nog snapt?"

Met een converter ben je er dus niet.

Conversie van RS232 naar RS485 is lastig, omdat de converter niet weet wanneer de RS232 datastroom klaar is en de RS485 weer uit zendmodus moet. Het schema wat je me eerder prive stuurde (hierbij bijgevoegd) zet de RS485 in zendmodus als er een 0 gestuurd wordt en haalt de RS485 uit zendmodus als er een 1 gestuurd wordt. Aangezien bij RS232 idle=1 werkt dat, maar het is geen echte RS485 meer. De RS485 zendt namelijk nooit een echte 1, die pseudo-1 wordt gemaakt door een paar weerstanden op de bus.

Andere converters zetten de RS485 in zendmodus zodra de RS232 een 0 stuurt en halen de RS485 weer uit zendmodus als er een bepaalde tijd geen 0 meer is gestuurd. Dat is wel echt RS485, probleem is alleen, hoe lang moet die vertraging zijn? Het protocol moet daar rekening mee houden.

Conversie van USB naar RS485 (zonder tussenkomst van RS232) kan wel vrij probleemloos. Binnenkort kun je van mij een U485 kopen (USBRS485) die dat doet. Probleem daarbij is echter weer: omdat er een USB pakketstroom tussen zit kun je op de PC geen CSMA/CD implementeren. Dit kan m.i. dus alleen goed als je werkt met token-passing of master/slave.

Mvg,
Leon

Netherlands

Leon

Bedankt voor de uitleg.
Jammer had gehoopt zo te kunnen werken.
dat programmeren wordt niets, dus andere oplossing zoeken.
Toch veel reacties gehad op de beurs over de OM32's
Tevens veel mensen die weer opnieuw willen beginnen met treinen.
(her in treders?). Hebben vaak nog wel materieel van vroeger en vragen hoe verder digitaal. Heb diverse malen mijn verhaal gedaan over Dinamo.
Hybride sprak hun allemaal aan om niet in hun oude locs te hoeven solderen.
Afwachten dus.

mvg
Jan Hendriks


Netherlands

Hallo Jan,

Ik maak op dat je met meerdere PC's meerdere OM32's wilt kunnen sturen + "iets" van een beveiliging. Zonder dat ik weet wat ik me bij dat "iets" moet voorstellen en zonder de de details van de vraagstelling te kennen denk ik aan het volgende:

- Meerdere bedienstations die hun te verzenden informatie naar 1 "server" sturen, die vervolgens de data echt verstuurt. Zoiets als Xander heeft gemaakt met iTrain. 1 PC verzorgt de echte aansturing van de hardware, maar je kunt meerdere PC's in een LAN "human interface" laten spelen voor die centrale PC.
- Wellicht is er een oplossing waarmee je de "com" poort waarop Koploper de data verstuurt routeert via een IP stack naar een andere PC. Daarop draait iets dat de diverse inputs op de diverse kanalen verzamelt en op 1 fysieke poort naar buiten stuurt (nb: te timing is nauwelijks belangrijk, als het maar na elkaar gebeurt. Misschien is er een slimme IT-er in de zaal die hier een eenvoudige oplossing voor kan bedenken.
- Hang een interface aan elke PC waar "intelligentie" in zit. Die interface buffert de datastroom van de PC en onderhandelt dan met zijn "peers" over wanneer hij mag zenden. Zou een gestripte RM-U kunnen zijn waar speciale software in zit. Is echter geen goedkope oplossing.
- Laat elk "project" zijn eigen OM32's afzonderlijk besturen en regel de koppeling van de projecten met een ander type interface. Hoe je nu die verschillende projecten allemaal de beveiliging van de hoofdbaan wilt laten coördineren is me trouwens onduidelijk.

Maar zoals feitelijk al gezegd: maak eerst eens een heldere functionele specificatie wat je nu eigenlijk wilt bereiken.

Mvg,
Leon


Netherlands

Hallo Jan,

Zoals Leon al suggereerd zou een duidelijk beschrijving van wat je wilt berijken erg helpen, zonder al in oplossingen te denken, c.q. het probleem te beschrijven.

Net als Leon lees ik idd uit het verhaal dat er grotere baan is (modules?), waarbij meerdere OM32 aan zijn betrokken. (Een of enkele modules worden door een OM32 (aangestuurd?)). Wat is de functie van de OM32 onderling? Is er functionele relatie?

Als het idd meerdere OM32 zijn die d.m.v. meerdere computers (kunnen) worden aangestuurd. Is het waarschijnlijk aanzienlijk eenvoudiger per computer een heel klein web-servertje te installeren, waarop een klein stukje software draait, waarmee de OM32 aangestuurd wordt (en de toestand van de OM32 mee opgevraagd kan worden). Dan kun je via vervolgens met een willekeurige computer in het netwerk (Wifi?) die web-servertjes aanspreken, en opdrachten aan geven.

Zie ook bijvoegde afbeelding, met idee van situatie schets.

PS: Als het onduidlijk is, of te technisch, geef dit dan even aan. Dan zal ik proberen wat duidelijker te zijn.

Met vriendelijke groet, Tjeerd

Netherlands

Hallo Tjeerd

Zoals jij hebt geschets klopt het wel.
er komen een aantal op zich staande projecten in de modulebaan.
Ieder project heeft één of meerdere OM32's ( géén compleet dinamo systeem. OM32 standalone op compoort)
bv. het haven gebied met rangeer terrein heeft straks 5x OM32 als het gereed is.
komt nog station met 2x OM32 enz.
ieder project zou op eigen pc draaien direct op compoort.
Er zijn echter een paar hoofdsporen die je op afstand zou willen
kunnen schakelen in een ander project.
Dit omdat die persoon druk bezig is of even afwezig ivm pitstop.
Uit veiligheid zou je dan iemand hebben die even op de hoofdbaan let ipv op zijn project alleen.
zag in nieuwe handleiding van koploper ook iets staan over server
mogelijkheid.
maar dit zou volgens mij alleen voor Railz worden vrijgegeven.

Ik hoop dat jij een ""simpele"" oplossing hebt die we zouden kunnen
proberen.

mvg
jan Hendriks


Netherlands

Hoi Jan,

lees net je reactie. Mmm, een simple oplossing zo niet 1, 2, 3. Echter lijkt me een dergelijk oplossing 'eenvoudiger' te realiseren. Dit omdat je daarbij geen specifieke RS485 zaken meer hoeft te bedenken / ontwerpen. Je kunt gebruik maken van bestaande hardware. Daarnaast is er een grote kans dat de computer toch al in een netwerk zitten of in iedergeval een netwerk-kaart hebben.

Wat voor software wordt er nu gebruikt om de OM32 aan te sturen? Het opzetten en beschikbaar maken van de OM32 informatie en eventueel aansturen van de OM32, via een web-server applicatie valt waarschijnlijk wel mee. Maar er kan natuurlijk maar 1 process de OM32 echt aansturen. Dus als jullie nu b.v. gebruik maken van Koploper, zal de web-applicatie via Koploper naar de OM32 moeten communiseren. Maar geen idee of Koploper hier uberhaupt geschikt voor is.

Zou je nog wat meer achtergrond kunnen geven van jullie baan, metname over de software die wordt gebruikt om de OM32 aan te sturen.

Danke je, Tjeerd


Netherlands

Hoi Jan,

Nog een vraagje, wat besturen jullie eigenlijk met de verschillende OM32's ? Uit de documentetie lees ik dat er metname seinen en andere verlichtings mee bestuurd kunnen worden.

Echter uit de beschrijving die jij geeft, klinkt het alsof het bij jullie om meer gaat dan alleen een seinbeeld...

Een beetje meer achtergrond informatie, is daarom wel leuk!

Dank je, Tjeerd

Netherlands

Tjeerd

Met de OM32 sturen wij relais , wissels , seinen en verlichting aan.
Ben nog bezig met een rolbrug maar ook dat zijn eigenlijk gewoon relais.

Als ik jouw begrijp zeg je eigenlijk dat je koploper op één PC moet laten
draaien en vebinden met de communicatie bus rs232/rs485.
En dan via een "server"programma via andere computers laten bedienen?
Dit om diverse communicatie aansluitingen te voorkomen.

Nu stuurt één computer één of meerdere OM32's aan via koploper.
Eenrichting communicatie van koploper naar OM32's. ( komen géén signalen
terug van de baan, nu in ieder geval nog niet )
En zo zijn er straks meerdere pc's

In de handleiding van koploper staat een stuk over de netwerk uitvoering van
koploper.
pag 277 van kopl67 handleiding.
Hier worden diverse zaken aangegeven die moeten worden gekoppeld.( blokken ,
treinnummers etc )
Dit hebben wij nog / niet in gebruik.
Misschien gaat het voor onze OM32's wel goed aangezien we de adressering al hebben gereserveerd per project?

mvg
Jan Hendriks

Netherlands

Hallo Jan,

Op afzienbare termijn komt er een nieuwe module beschikbaar die mogelijk een oplossing is voor je "probleem". Het is de opvolger voor de OM32 waar ik het al geruime tijd over heb. Deze module zal naast de huidige OM32 functies ook servomotoren kunnen aansturen. Een leuke bijkomstigheid is echter dat de module 2 seriële interfaces krijgt, zowel RS485 als RS232/TTL. De TTL interface is desgewenst zeer simpel om te bouwen (met 1 extern component) tot een RS485 ontvanger. Hoewel het hiervoor nooit zo bedoeld is, kun je beide interfaces tegelijk gebruiken, m.a.w. deze module accepteert 2 kapiteins op 1 schip. Zolang beide kapiteins niet tegelijkertijd tegenstrijdige opdrachten geven zou dat moeten werken. Tegelijk met de module komt er ook een betaalbare USB-RS485 interface beschikbaar.

Nadere details volgen als het zo ver is. Wanneer dat exact zo is kan ik nog niet zeggen. Het zal in elk geval niet voor de kerst zijn. Om speculaties en onnodig afwachten te voorkomen kan ik er wel over zeggen: De module wordt duurder dan de OM32, zal in eerste instantie naast de OM32 gevoerd worden, komt alleen beschikbaar in geassembleerde vorm (want er zit ca 50% SMD op (gerekend in pinnen, niet in oppervlak)), hij is qua afmetingen en functies OM32 compatible en de huidige OM32 kun je niet upgraden naar deze nieuwe functionaliteit.

Mvg,
Leon


 
Dutch (Nederlands, nl)English British (British English, en-uk)German (Deutsch, de)