woensdag 9 februari 2022

Speedsensor - probleempje

Een beetje teleurstellend zijn de resultaten van de test van de ontwikkelde Speedsensor. Bij 120 km/h draait het schijfje 2000 keer per minuut rond. Da's mooi, want dat is precies de maximum snelheid van mijn accu-boormachine. De oscilloscoop laat de volgende resultaten zien bij ongeveer 25 km/h:


25 km/h

Wat al meteen opvalt bij deze relatief lage snelheid is de breedte van de pulsjes. De 'hoog'-tijd is duidelijk minder lang dan de 'laag'-tijd. Onverwacht omdat de sleufjes in het meetschijfje bijna net zo breed zijn als de niet-sleufjes (bij gebrek aan een beter woord). Wat ook opvalt is dat de pulsjes niet even breed zijn en niet even ver uit elkaar staan. Dit zou te wijten kunnen zijn aan een oscillatie in de kabel. Iets wat bij een mechanische meter het zo typische trillen van de naald veroorzaakt. Ik lees hier en daar dat het eigenlijk niet de bedoeling is, maar ik denk dat ik mijn oude kabeltje maar eens ga smeren.

Het signaal is minder net dan ik verwacht had, maar hier kan ik in de software wel iets moois van maken. Ware het niet dat het signaal er op hogere snelheid (ongeveer 100 km/h) echt belabberd uit ziet:



100 km/h


De pulsjes worden nog smaller en soms vallen er zelfs pulsen helemaal weg... Dat kan niet de bedoeling zijn. Ook dit is software-matig - met wat meer moeite - wel glad te strijken, maar dat gaat me toch net effe te ver. Het lijkt erop dat de pulsjes te snel langs komen en dat de elektronica van de sensormodule het allemaal niet bij kan houden. Dat klinkt raar omdat de lichtgevoelige transistor deze snelheid makkelijk aan moet kunnen. Ook de opamp die het digitale signaal genereert moet deze snelheid met twee vingers in zijn neus kunnen verwerken.

Een nadere inspectie van de module laat zien dat er naast een aantal weerstanden ook nog twee condensatoren op zitten. Eén van die twee condensatoren zit in combinatie met een weerstand aan de uitgang van de fototransistor. Aha, dat zou wel eens een laag-doorlaatfiltertje kunnen zijn. De weerstandswaarde is 10 kOhm en de condensator heeft een capaciteitswaarde van 100 nF. Als je die twee met elkaar vermenigvuldigt krijg je een RC-tijd van 1 ms. Het analoge signaal heeft minimaal 1 ms nodig om op 63% van zijn eindwaarde te komen. Als dat ongeveer het omklappunt van de opamp is, dan zullen pulsjes korter dan 1 ms niet meer gedetecteerd worden. Bij een rotatiesnelheid van 2000 omw/min komen er ruim 666 pulsen per seconde langs, wat overeenkomt met een periodetijd van ongeveer 1,5 ms. Een puls duurt ongeveer de helft van die tijd, ruim minder dan 1 ms dus. Conclusie, het gaat fout!

Oké, het probleem is duidelijk. Nu nog een oplossing. Die ligt eigenlijk behoorlijk voor de hand. Zorg dat er niet zoveel/snel pulsjes langs komen. Als er een factor 10 minder snel pulsen langs komen is de RC-tijd van 1 ms geen enkel probleem meer. Sterker nog, het zorgt ervoor dat er minder ruis op het signaal zal zitten. Hele korte spikes worden immers weg gefilterd. In plaats van 20 sleufjes in het meetschijfje zou je dan maar twee gaten willen hebben. Zo gezegd, zo gedaan:


Met de Dremel en Sikaflex.

Op bovenstaande manier kan ik het schijfje nog steeds gebruiken, hoef ik ook verder niets aan de rest van het apparaat aan te passen en blijft het schijfje netjes in balans. Tijd voor een nieuwe test. En die stelt gelukkig niet teleur:


Maximum snelheid


Dat ziet er echt heel veel beter uit. Mooie strakke brede pulsen. Een hele opluchting - in mijn hoofd was ik al andere oplossingen aan het bedenken. Een ronddraaiende magneet met een Hall-sensor, enz... Allemaal niet nodig. Dit gaat prima werken.

Onderweg naar die hogere snelheid zag ik nog wel iets merkwaardigs:


88 km/h


Zo rond de 88 km/h (als de k-factor van 1.0 klopt) zit de meeste onbalans in de kabel. Misschien omdat dat een snelheid is die in het verleden vaak gereden is? Twee opeenvolgende pulsen laten duidelijk een verschil in lengte zien. Voor de software niet zo'n probleem, maar wel grappig om te zien dat hier zo'n groot verschil in zit. Wellicht wordt dit na smering wel minder.

En, oh ja, er zit ook nog een analoge uitgang op de sensor-module. Dat ik daar niet eerder aan gedacht heb. Nog even een draadje aan solderen en samen met het digitale signaal in één scope-beeld vangen:


Digitaal (boven) en analoog (onder)


Twee zaken vallen meteen op: (1) de opgaande flank van het analoge signaal laat inderdaad een mooie e-macht zien die door een RC-filter veroorzaakt wordt. Met een beetje fantasie is hier een RC-tijd van 1 ms in te herkennen. (2) de opamp klapt ongeveer op 50% van het analoge signaal om. Het bovenstaande beeld is gemaakt bij het maximum toerental van de accuboormachine, boven de 100 km/h.

Volgende stap is het bouwen van software die het pulssignaal omzet in een stabiele snelheidswaarde. Da's iets voor een later bericht. We kunnen weer verder.

1 opmerking:

  1. Mooie scoopbeelden. Bij het eerste plaatje (25 km/h) is de breedte van de pulsjes niet constant, bij de 100 k/h lijkt er wel 'ritme' (resonantie?) in te zitten (kort-lang-kort-lang) en dat komt natuurlijk dat er maar 2 gaten/rondje zijn en bij de 25 km/h er meer gaten/rondje zijn. Misschien is er daar dus bij lage snelheden ook wel een resonantie....
    Mooi opgelost (op de KISS methode ;-)) en de meting is nu in software prima glad te strijken.
    (en mooi om te zien dat Sikaflex tot in de haarvaten wordt gebruikt ;-))

    BeantwoordenVerwijderen