benzinemeter sensor

In auto's zit meestal een rechthoekige tank.
Dan heb je dat probleem niet.
Weinig motoren hebben een benzinemeter.
Als ze hem wel hebben werkt hij waarschijnlijk niet lineair.
Dat is een klacht van veel motorrijders.
Door de eprom kan ik dat probleem oplossen.

Groeten Joop...

ik heb mijn hersens niet in de hand.
High met Henk

Special Member

ik ben verbaasd dat het zo goed werkt joop: chapeau, mijn motor trilt hier echt veel teveel voor.

E = MC^2, dus de magnetische compatibiliteit doet kwadratisch mee???

Op 27 februari 2011 16:58:27 schreef joopoldenzaal:
Weinig motoren hebben een benzinemeter.
Als ze hem wel hebben werkt hij waarschijnlijk niet lineair.
Dat is een klacht van veel motorrijders.
Groeten Joop...

Eerlijk gezegd boeit mij de benzinemeter van mijn motor niet zoveel. Die zit er wel op maar is alleen interressant als hij in de buurt van het rode vlakje komt. Iedere motorrijder heeft wel een idee (meestal door schade en schande wijs geworden) hoeveel kilometer hij kan rijden met een volle tank, kwestie van dagtellertje gebruiken.

Maar ik blijf het een mooi project vinden !

Hallo Henk.

De bedoeling is nu juist om de gemeten druk uit te middelen.
Dan maakt het niet uit hoeveel je motor trilt.
De gemiddelde waarde is dan de juiste waarde.
Ik middel uit over een langere tijd door iedere 10 seconden maar 1 bit in de tellers te veranderen.
Dat levert een stabiele waarde op.
Moet goed werken.

Groeten Joop...

ik heb mijn hersens niet in de hand.
High met Henk

Special Member

kan best kloppen, maar

.1 heb ik 2 tankhelften die pas ellendig worden als het peil zakt (tank valt over frambuis)

.2 mijn motor staat altijd recht eigenlijk. dus elke seconde meten en maar 1 bit veranderen doet ij mij nog alles schommelen.

nogmaals: had niet verwacht dat het zo goed zou werken.

E = MC^2, dus de magnetische compatibiliteit doet kwadratisch mee???

Het volgende moet ik nu nog doen:

1-de aansturing van de meter met pulsbreedte modulatie doen.
2-de twee tellers 4029 vervangen door 1x 74ls469
3- de hele ingangstrap vervangen door een INA114
(daar zit alles al in)
4-clock module met deler gebruiken i.p.v. hef 4047
(temperatuur stabieler)

Tot zover ziet het schema er zo uit:
http://members.home.nl/joop.angelier/download/Benzinemeter/Schema.jpg

Het koppelstuk voor de benzine ziet er zo uit:
http://members.home.nl/joop.angelier/download/Benzinemeter/slangkoppel…

Groeten Joop...

ik heb mijn hersens niet in de hand.

Mooi hoor. Zo te zien worden hier kosten noch moeite bespaart.
Maar waarom moet de clock zo stabiel zijn, zo te zien maakt de frequentie in jouw schema toch niet zo heel veel uit.

De temperatuur op de motor kan 0 tot 30 graden zijn.
De frekwentie van de 4047 zal vast een beetje verlopen.
Misschien is het inderdaad maar weinig van invloed.
Het kost echter maar weinig extra om een kristal te gebruiken.

Eventueel wil ik de puls-breedte regeling geheel digitaal maken.
Dan zal ik een stabiele tijd-basis nodig hebben.
De meetwaarde wordt dan 200 keer per seconde in een teller geladen
en wordt de waarde afgeteld tot nul.
De tijd die hiervoor nodig is word dan de pulsbreedte.
Maar dat probeer ik pas als de rest probleemloos werkt.

Groeten Joop...

ik heb mijn hersens niet in de hand.

Op 4 maart 2011 07:48:50 schreef joopoldenzaal:
....
Eventueel wil ik de puls-breedte regeling geheel digitaal maken.
Dan zal ik een stabiele tijd-basis nodig hebben.
....
Groeten Joop...

ook hier is de absolute tijd niet zo van belang. Het gaat tenslotte alleen om de uit/aan verhouding.
Maar ik waardeer wel je inzet dat alleen het beste goed genoeg is !

De condensator in de zaagtand generator heeft een constante stijg tijd.
Wanneer de frekwentie verandert, en de stijg tijd niet veranderd,
dan veranderd de amplitude van de zaagtand.
En dus zal de breedte van de uitgang van de compatator mee veranderen.
Verandering van frekwentie zal dus een puls breedte verandering tot gevolg hebben.
Klopt toch?

Groeten Joop...

ik heb mijn hersens niet in de hand.

Hallo mensen.

Hier is het nieuwe schema:
http://members.home.nl/joop.angelier/download/Benzinemeter/Schema-3.jp…

Ik heb de drie opamps aan de sensor vervangen door een INA114.
Die is er voor gemaakt.
De timer CD4047 is vervangen door een kristal met twee delers.

Helaas kan ik de twee tellers niet vervangen door een 8-bits cmos teller.
Ze worden niet meer gemaakt en de oude voorraad is veel te duur.
Dan maar twee tellers.

Ik ben nu bezig de pulsbreedte aansturing van het metertje geheel digitaal te maken.
Dat moet gaan met twee 4-bit down tellers die de gemeten waarde aftellen tot nul.

De tijd die nodig is voor het aftellen bepaalt de pulsbreedte.
Het laden van de gemeten waarde gaat met 244Hz en het aftellen gaat met 31 kHz.
Dat wil zeggen maximaal 127 aftellen in een periode.

Een waarde 127 geeft de maximale pulsbreedte en een waarde van 1 geeft de minimale pulsbreedte.
Het metertje word dus aan gestuurd met een variabele pulsbreedte bij 244 Hz.Dat laat de wijzer mooi trillings vrij staan.

Groeten Joop..

ik heb mijn hersens niet in de hand.

Het ontwerp van de pulsbreedte regeling voor het metertje is klaar.
http://members.home.nl/joop.angelier/download/Benzinemeter/Schema-4.jp…

Nu nog kijken of het werkt.
Als het klaar is dan moet ik eens kijken of alle logica in een pld kan.

Ik heb er nog geen enkele ervaring mee, maar mijn werkgever zegt dat ik die oude rommel moet dumpen en er een pld inzetten.
Hij is de Willie Wortel van het bedrijf dus ik moet er wel aan.
Dat word dus een snel cursus pld programmeren.

Groeten Joop...

ik heb mijn hersens niet in de hand.

Joop, ik had je reply van 4 maart even gemist.
Betreffende de zaagtandgenerator, hier zie ik een probleempje.
Omdat de zaagtand generator door een signaal (244Hz) wordt aangestuurd kan hij gaan driften. Nl. als de blokgolf die aangeboden wordt niet helemaal symetrisch is of anderzins een verschil ontstaat tussen het laden en ontladen van de Condensator zal de uitgangsspanning gaan driften. De pulsbreedte wordt bepaald door de comperator die het zangtandsignaal vergelijkt met de analogespanning die gemaakt wordt middels de DAC (de tellers). Hier zit geen belang van de frequentie in dwz. deze mag uit de pas lopen met de rest van het systeem.
Ik zou voorstellen om de zaagtand zelfoscilerend te maken zie hiervoor bijv het volgend schema:
Aartsite het circuit rond U1A.

Ook begrijp ik het nut van T3 niet helemaal. Ik denk dat een LM339 een led wel direct kan aansturen en als je een transistor wilt gebruiken zal je nog een basisweerstand tussen basis en LM339 moeten toevoegen om de basistroom te begrenzen.

EDIT:
kan misschien iets meer vertellen over het reset-circuit, ik zie dat de schakeling pas wordt vijgegeven bij een boordspanning 13,25Volt. Ben je niet bang dat door het schakelen van grote verbruikers (remlichten, ABS, andere verlichting) kortstondig een spanningsdip ontstaat waardoor de reset actief wordt.

En wat betreft je werkgever, hij heeft gelijk een microcontroller met ingeboude ADC doet bijna alles dat in jouw schema staat

[Bericht gewijzigd door driessens_nl op woensdag 9 maart 2011 22:35:57 (12%)

Bedankt voor je reactie.

De zaagtand generator was inderdaad een probleem.
Te temperatuur gevoelig en deze moest afgeregeld worden wegens de tolerantie van de condensator.
In het laatste schema is deze niet meer nodig.
De schakeling moet nu stabiel zijn bij verschillende temperaturen.

De transistor T3 was nodig.
Waarschijnlijk zit er in het metertje geen led maar een lampje.
Ik kan niet in het inwendige kijken.
De stroom was te groot voor een LM339.
Vandaar.
Misschien vervang k deze nog door een fetje.
Groeten Joop...

ik heb mijn hersens niet in de hand.

De reset gaat er inderdaad van af bij 13,25 volt.
Dat is omdat er een membraan in de benzine-kraan zit,die de kraan afsluit totdat de motor draait.
Dan pas kan de meter zich instellen op de gemeten druk.
De electronica wordt aangesloten op de accessoire aansluiting van de motor.
Deze heeft een aparte zekering en gaat dan direct naar de hoofd zekering.
Als het problemen oplevert moet de voeding direct op de accu worden aangesloten.
Ik dank dat het wel goed gaat.
Alles moet natuurlijk nog in de praktijk getest worden.

Groeten Joop...

ik heb mijn hersens niet in de hand.

Het schema is klaar.

http://members.home.nl/joop.angelier/download/Benzinemeter/Schema-4.jp…

Ik heb de transistoren voor de aansturing van het metertje vervangen door fet's.

Als het geheel goed getest is dan ga ik kijken of alle logica in een pld kan.
Een goed werkend prototype moet voor pasen op de motor zitten.

Groeten Joop...

ik heb mijn hersens niet in de hand.

Hallo Mensen.
Er gaat iets niet goed met de puls-breedte regeling.
Het werkt niet en ik begrijp niet waarom.
Het gaat om IC11 en IC12

http://members.home.nl/joop.angelier/download/Benzinemeter/Schema-4.jp…

een 7 bits getal word ingeladen door een repeterende puls op pin1 van de tellers (20usec 244Hz).
De klok op pin 15 is 31kHz.
Tellers staan op binair en aftellen.
Voor het testen heb ik alleen ingang P12 van IC12 hoog gemaakt.
de rest van de ingangen zijn laag.

Het uitgangs signaal op pin7 IC12 zou dan 32% lang hoog moeten zijn.
Helaas meet ik op pin 7 rommel en een hoge frekwentie van 1,4 Mhz.
Vreemd omdat de hoogste frekwentie die van de clock-module is (1Mhz)
Alle IC's zijn goed ontkoppeld.
Het probleem lijkt met de terugkoppeling van IC12 pin 7 naar IC11 pin 5 te maken te hebben.

Wie heeft een idee wat ik verkeerd doe.
Graag advies.

ik heb mijn hersens niet in de hand.

Joop, ik heb vanmiddag al een tijdje naar jouw schema zitten kijken en proberen te begrijpen hoe het werkt. Hierbij viel mij ook de terugkoppeling op tussen IC12/7 -> NAND -> IC11/5 . Heb geen idee wat ermee beoogt is.
Is deze wel nodig en waarom ?
Edit: weet waarom het nodig is, is om het aftellen te stoppen.
Maar het lijkt op een race conditie getriggerd door de /CI , /CO. Ik heb het nog niet helemaal nagezien maar volgens mij is de Carry-out niet geklokt en dan gebeurt het volgendë:
Na een PE puls worden beide /CO hoog , na het terugtellen tot 0 wordt /CO laag van IC12. Hierdoor wordt de /CI van IC11 hoog, als gevolg waarchijnlijk ook /CO van IC11 en dus ook de /CI van IC12.
Hetzelfde geldt ook voor IC12 en zo heb je dus een oscilator gebouwd met de periode tijd bepaald door de propagation delays van de counters en de NAND poort.

Ik zelf zou een ander ontwerp gemaakt hebben. De counters van het benzine niveau op de adreslijnen 8-15 van de eprom en een vrijlopende counter op de adreslijnen 0-6 (0-7). Alleen moet je dan de eprom anders vullen. Een van de uitgangen van je EPROM wordt dan de PWM uitgang.

edit2:
een oplossing zou kunnen zijn dat je niet de /CI van IC11 gebruikt om het tellen te stoppen maar de CLK (32khz) naar de counter IC AND met de /CO van IC12.

Ik denk dat je gelijk hebt.
Het lijkt inderdaad te oscilleren.
Het werkt blijkbaar anders dan ik dacht.

Kun je me je laatste oplossing wat uitgebreider uitleggen.
Ik begrijp het nog niet helemaal.

Alvast bedankt.

ik heb mijn hersens niet in de hand.

IC13-8,IC13-10 losnemen.
IC11-5 (/CI) aan gnd.
IC11-15 en IC12-15 CLK los maken.
32khz clk aan IC13-8
IC13-10 aan IC11-15 en IC12-15

Kijk even of je zo er uit komt anders pas ik de tekening even aan.
edit:
aangepast schema

bedankt
ik ga het uitproberen.
Groeten Joop.

ik heb mijn hersens niet in de hand.

Het werkt prima.
Het schema is nu klaar:
http://members.home.nl/joop.angelier/download/Benzinemeter/Schema.jpg

Eerst ga ik alles afbreken en weer opbouwen aan de hand van het schema
om zo eventuele fouten in het schema te voorkomen.
Daarna ga ik proberen het onderstaande gedeelte in een pld te krijgen.

http://members.home.nl/joop.angelier/download/Benzinemeter/PLD.jpg

Groeten Joop

ik heb mijn hersens niet in de hand.

Op 13 maart 2011 11:28:14 schreef joopoldenzaal:
Daarna ga ik proberen het onderstaande gedeelte in een pld te krijgen.
Groeten Joop

Dat gaat zeker lukken.Ik weet niet of je al ervaring hebt met PLD's maar als je hier nog mee moet beginnen is het misschien verstandig om toch eens aan een mircrocontroller te gaan denken. Het overgrote deel van het schema kan nl. door een uController gedaan worden. Blijft alleen de de druksensor met zijn versterker over als analoog stuk (en uiteraard de 9v en 5v voeding). Als je dan de versterking van de INA114 instelbaar maakt zodanig dat je volle tank een spannning van bijv 4,5 volt aan de uitgang geeft kan je de rest digitaal oplossen.
Het niveau voor reserve en leeg kan je dan middels een drukknop instelbaar maken. Denk alleen dat dit allemaal niet mogeljk is als je het nog met Pasen op de motor wilt hebben.
Misschien een idee voor V2 ? Mocht het nodig zijn wil ik je altijd er mee helpen

Verder heb ik toch een beetje mijn bedenkingen bij de door jou gekozen methode om de schommelingen van het benzineniveau te nivelleren. Door ,zo als je nu doet, alleen elke 4e seconde de niveau counters met 1 op/af te tellen zal de meter wel een rustig beeld geven maar omdat geen gemiddelde wordt gemaakt over deze 4 seconde zal de aanwijzing er toch flink naast kunnen zitten.
Wellicht dat een praktijktest uitsluitsel zal geven.
(een uController kan bijv. wel een langtijd gemiddelde berekenen en de stand van de meter geleidelijk aan aanpassen).

Ben in elk geval benieuwd naar de vorderingen.
Succes er mee !

Hallo Marco

Ik probeer eerst een pld.
Ik heb er geen enkele ervaring mee,maar bij mij op het werk is die kennis er wel.
Ik zal dus wat hulp van collega's nodig hebben.

Wat betreft het uitmiddelen, denk daar maar nog eens over na.
Het klotsen in de tank zal gemiddeld 50% van de tijd een te hoge meting en 50% van de tijd een te lage meting geven.
De digitale waarde zal dan om de gemiddelde waarde heen komen te liggen.
Soms een paar bit te veel en soms een paar bit te weinig.
Die paar bit zullen op een resolutie van 127 bit echter nauwlijks zichtbaar zijn.
Het resultaat zal dus wel een gemiddelde waarde opleveren.

Een microprocessor zal het ook kunnen,maar dan komt er software aan te pas en daar heb ik geen ervaring mee.
Ik kom dan tijd te kort als ik me daarin moet verdiepen.
Er zal vast wel ooit nog een versie-2 komen.

Groeten Joop.

ik heb mijn hersens niet in de hand.

Op 13 maart 2011 21:54:45 schreef joopoldenzaal:
Wat betreft het uitmiddelen, denk daar maar nog eens over na.
Het klotsen in de tank zal gemiddeld 50% van de tijd een te hoge meting en 50% van de tijd een te lage meting geven.
De digitale waarde zal dan om de gemiddelde waarde heen komen te liggen.
Groeten Joop.

Ik kan niet uitleggen waarom maar gevoelsmatig heb ik er geen goed gevoel over.
Mocht je ooit aan een versie met uController willen beginnen dan zal ik je daar graag in bijstaan.