BeneluxSpoor.net forum

Vraag en antwoord => Digitaal => Topic gestart door: Curious T!mo op 01 January 2016, 12:42:39

Titel: Ultrasone Bezetmelding
Bericht door: Curious T!mo op 01 January 2016, 12:42:39
Hallo Allemaal,

Ik heb een testbaan gelegd om eens te kunnen experimenteren met bezetmelding via ultrasoon sensoren. Deze manier van bezetmelden is vergelijkbaar met de afstandssensoren in een moderne auto. De HC-SR04 sensoren die ik gebruik zijn redelijk nauwkeurig. Tot op de cm voor zover ik kan meten. Om deze sensoren te kunnen gebruiken maak ik gebruik van een Arduino.

Er wordt veelal van uitgegaan dat deze manier van bezetmelden niet geschikt is voor de modelbaan omdat er sprake zou zijn van valse meldingen tussen parallelsporen. Maar in mijn testopstelling heb ik tijdens meerder uren testen nog geen valse meldingen gehad. Ik maak gebruik van de standaard Marklin 77,5mm railafstand. Misschien dat het bij minder afstand wel fout gaat.. ik heb geen idee.

Deze manier van bezetmelden lijkt mij aantrekkelijk in schaduwstations en uit het zicht liggende baandelen. Het is dan echter niet mogelijk om daar bovenleiding te plaatsen, maar dat lijkt me voor dit soort plekken toch niet echt een probleem.

Op de testbaan het ik 3 sporen parallel liggen met 3 maal een HC-SR04. Deze worden bestuurd door een Arduino Leonardo.

Deze Arduino is een i2c slave en wordt uitgelezen door een andere Arduino die als i2c master fungeert en de sensorinformatie omzet naar, in mijn geval, loconet. Maar dat kan/mag natuurlijk ook iets anders zijn. Je kunt bv ook een aantal uitgangen aanmaken en daar wat mee doen. Heb het moeilijker gemaakt dan noodzakelijk omdat ik ook met i2c communicatie wilde spelen.

Het is een testopstelling en een proof of concept, maar als er interesse is wil ik best de code een beetje opschonen en deze delen. Deze HC-SR04 sensoren sturen per keer 8 korte pulsen van 40kHz. Mensenoren gaan maar tot 23kHz dus dat ligt ruim onder de 40kHz van de sensor. Maar honden kunnen tot 45kHz horen, katten zelfs 64kHz dus die kunnen er mogelijk van hinder van ondervinden. Heb zelf geen huisdieren dus geen ervaring helaas.

Nu komt het beste gedeelte van het verhaal. De HC-SR04 kost 0,85 eurocent per stuk vanuit China. Een Arduino Pro mini koop je voor 2,50 en die kan met gemak 10 van deze sensoren aansturen. Plus je hoeft er je rails of baan niet voor aan te passen.

Doe er je voordeel mee zou ik zeggen. Ik ben in ieder geval van plan om dit straks in mijn schaduwstation te gaan gebruiken.

Heb wat foto's en een filmpje gemaakt voor ieders vermaak.

(http://s1.postimg.org/d9xy3f0cr/IMG_1109.jpg) (http://postimg.org/image/d9xy3f0cr/)

(http://s1.postimg.org/qpkysv8uj/IMG_1110.jpg) (http://postimg.org/image/qpkysv8uj/)

(http://s1.postimg.org/mvrijprij/IMG_1111.jpg) (http://postimg.org/image/mvrijprij/)

(http://s1.postimg.org/l58hi89zf/IMG_1112.jpg) (http://postimg.org/image/l58hi89zf/)

https://www.youtube.com/v/AhNFrX2sPCk
Filmpje

Groeten,

Timo
Titel: Re: Ultrasone Bezetmelding
Bericht door: Klaas Zondervan op 01 January 2016, 16:41:43
Interessante toepassing. Heb je perse een Arduino nodig om zo'n sensor aan te sturen, of kan het ook met hardware elektronica?
Titel: Re: Ultrasone Bezetmelding
Bericht door: nighttrain1 op 01 January 2016, 17:13:37
Misschien eren nuttige toepassing voor in een schaduwstation, maar zo op de vrije baan tussen de scenery zie ik nog geen toepassing.
Succes in ieder geval!
Titel: Re: Ultrasone Bezetmelding
Bericht door: apenkop op 01 January 2016, 17:25:24

Mooie sensors (y) Wat is eigenlijk de diameter van die sensors?
Als ik jou test opstelling zo bekijk zou deze ook gebruikt kunnen worden voor het positioneren van de brug van een draaischijf.
Of zou de meting daarvoor niet precies genoeg zijn?
Hang natuurlijk ook een beetje af van hoe de constructie dan weggewerkt zou kunnen worden maar denk dat daar wel mogelijkheden voor zijn.

Ben inderdaad ook wel benieuwd of dit ook op een simple wijze zonder arduino zou kunnen, maar voor terugmelding zit je toch weer te kijken naar loconet oid.

Blijf dit toch wel even volgen ziet er uit alsof er veel meer mee gedaan kan worden.
Titel: Re: Ultrasone Bezetmelding
Bericht door: Fred Eikelboom op 01 January 2016, 19:26:12
Dit lijkt me een toepassing die mogelijkheden biedt. Heb zelf een jaar of vier geleden een Kemo bouwpakket gebruikt, Conrad 114456 - 8J, maar dat bleek bij het uittesten veel te onnauwkeurig te werken. Dat ding was in combinatie met Koploper (aangesloten op S88) niet af te regelen. Later nog de ontvanger en zender aan weerszijden van de opstelsporen geplaatst, maar het bleef aanmodderen.
Ik houdt dit draadje in de smiezen!
Titel: Re: Ultrasone Bezetmelding
Bericht door: NTeering op 02 January 2016, 17:38:40
Inderdaad heel leuk Timo. Ik ga er direct een bestellen.
Het valt me op dat de afstand tussen de sensors en de trein nogal groot is. Als je nu geen problemen hebt met valse meldingen denk ik dat het met een kleinere afstand ook goed zou moeten gaan bij een kleinere schaal. Zelf rij ik met TT-spoor.
Het gebruik van twee Arduino's lijkt me inderdaad wat overbodig.
Hoe sluit je ze aan? Direct op een pin van de Arduino? Een klein schemaatje zou handig zijn.
En uiteraard zie ik graag wat basiscode voor de Arduino om ze aan te sturen en uit te lezen.
Als de diameter klein genoeg is kunnen ze wellicht tussen de rails?

mvg
Nico
Titel: Re: Ultrasone Bezetmelding
Bericht door: Curious T!mo op 03 January 2016, 14:23:06
Hier is wat informatie:

(http://www.tinyosshop.com/image/data/sensors/Ultrasonic/Ultra-Sonic-dimen.JPG)
Afmetingen

(https://iprototype.nl/docs/hc-sr04-aansluitvoorbeeld.png)
Aansluiten op de Arduino

http://playground.arduino.cc/Code/NewPing (http://playground.arduino.cc/Code/NewPing)
Library voor de Arduino

@Klaas Zondervan: Ik denk dat het gebruik van een Arduino de meest makkelijk en betaalbare optie is. Een Arduino Nano kost namelijk maar een euro of 3 hooguit incl. verzenden.

@ Apenkop: Voor de terugmelding ben je helemaal vrij. Op https://rudysmodelrailway.wordpress.com/2014/12/01/multiple-arduinos-chained-as-an-s88-occupancy-detector-interface/ (https://rudysmodelrailway.wordpress.com/2014/12/01/multiple-arduinos-chained-as-an-s88-occupancy-detector-interface/) staat een sketch hoe je een Arduino direct kunt gebruiken als S88. Xpressnet en CAN zijn ook libraries voor. Of je kunt een Arduino uitgang gebruiken per sensor. Dus alles wat op 5v kan reageren kun je verbinden.

Ik zal een kijken of ik van de week een loconet versie en sketch kan maken voor 1 Arduino.

Groeten,

Timo