snímání spotřeby dieselagregátu
Moderátor: Moderátoři
zajimavá diskuse vcelku se správným řešením. Pokud chcete snímat spotrebu u dieslu pomocí průtokoměrů a nechcete za vhodný kvalitní průtokoměr zaplatit šílenou cenu, tak je jedinou variantou starý průtokoměr z Wartburgu 353 z bývalé DDR. Tento průtokoměr se sice dnes už nevyrábí (a je to velká škoda), ale i na dnešní dobu by dokázal ve své třídě překonat dražší průtokoměry z EU, o průtokoměrech made in China nemluvě.
Soudruzi z bývalé DDR dokázali ve své době vyrobit průtokoměr cenově dostupný každému automobilistovi a navíc s parametry, které dnes nedosahuje takměr žádný turbínkový HALL průtokoměr. Prostě na svou dobu špičkový a velmi levný výrobek !!!
V čem je tento průtokoměr jiný oproti dnes dostupným průtokoměrum néjen z číny?
1. nejedná se o turbínkový průtokoměr ani o průtokoměr s ozubenými oválnými kolečky. Jedná se o průtokoměr s jednim ozubeným kolečkem.
2. princip snímání je neni HALL senzor (snímání magnetického pole), ale optický. Snímá se paprsek z IR led, který je přerušovaný zuby ozubeného kolečka.
3. Počet pulsů na cca 1L tekutiny je 15000 !!! Pro porovnání, nejlepší průtokoměry s HALL snímačem dosahují cca 4 až 6000 pulsů na 1L a to jen průtokoměry s menším maximálním průtokem kapaliny.
Vyššího počtu pulsů u DDR průtokoměru je dosaženo právě díky optickému principu snímání pohybu ozubeného kolečka, kdy každý zub znamená jeden puls. To u průtokoměrů z Hall senzorem nelze dosáhnout, protože ke změně magnetického pole dochází vždy jen jednou za jednu otočku snímacího kolečka.
4. Součástí kompletního průtokoměru je i vyrovnávací tlaková nádoba (stejný tvar jako průtokoměr) s pružnou membránou, která zajistí u benzinových, ale i některých naftových motorů vyrovnání pulsování paliva v potrubí vlivem pohonu palivového čerpadla vačkou. Právě toto pulsování paliva v potrubí je jednou z příčin menší přesnosti turbinkových a podobných Hall průtokoměrů.
5. V originálním provedení je napájení omezeno na cca 6 (5V) až 13.5V a výstup není uplně obdelníkový, ale lehce sinus. Tyto nevýhody, ale nejsou velký problem a jakékoliv arduino si i tento lehký sinus vyhodnotí správně. Navíc po velmi lehké upravě elektronilky v prutokáči je výstup naprostý obdelník.
6. Větší nevýhodou je, že průtokoměr není uplně linearní a pokud chcete velmi přesné měření (opravdu velmi přesné), tak budete muset provést kromě standartního výpočtu ještě korekci nelinearnosti.
7. Velikou výhodou je dnešní cena tohoto průtokoměru cca 200,-Kč většinou z vrakáče, nebo nějakého přežívajícího servisu IFA automobilů. Nevýhodou je však dnes jíž opravdu velmi těžká sehnatelnost a to i po vrakáčích. O kvalitě z vrakoviště sehnaných kusů nemluvě.
Co se týče programu pro arduino pro snímání pulsů z dvou průtokoměrů (diferenční měření průtoku), není to nic zas, tak složitého. Nejlépe je použít s arduino kompatibilní 32 bitovou vývojovou desku s více 16 bit čítačema např. STM32F103C8T6 sehnatelnou v různých provedeních např. zde: http://www.automatizace.kvalitne.cz/vyv ... duino.html
a dohrát si do arduino ide plug in pro podporu STM32 desek. Schema programu je pak následující:
1.deklarovat dvě proměné pro ukládaní obsahu čítačů, deklarovat proměnou pro rozdíl předchozích dvou proměných a nakonec proměnou pro výpočet průtoku.
2. nastavit dva 16 bit timery jako čítače externích pulsů
3. vytvořit smyčku programu s jednim čekáním (např. 1s) a po této pauze načíst obsah obou čítačů(zastavit načítání přečist obsah každého čítače do proměných,vynulovat čítače a znovu začít snímat pulsy), provést výpočet a to celé stále ve smyčce stále dokola. Pokud Vám bude vadit nic nedělání po dobu 1s pausy, můžete tuto pauzu nahradit přerušením dalšího timeru, které se vykoná vždy za 1s a provede načtení a výpočet průtoku na pozadí programu, takže program nebude na nic čekat a stále poběží.
Výhodou 16 bit timeru je v zásadě nemožnost přetečení v časovém úseku 1s.
Stejný program lze napsat i pro klasické arduino (UNO, NANO apod), ale musíte počítat jen s jednim 16 bit čítačem a dvěma 8 bit z toho jeden pouze jako timer. Řešením ne uplně bezchybným může být pravidelné přerušení cca každou desetinu ms a v něm manuální snímání stavu vstupních pinů, na které jsou průtokoměry připojený, výpočet lze provést také v rámci tohoto přerušení. Takovéto řešení však nemusí být moc přesné, je možné, že některé velmi krátké pulsy nebudou zaznamenaný a navíc MCU bude jíž dost časově vytížený. Přesnost tedy bude menší než při použití 32 bit desky kompatibilní s arduino IDE. Pro normální domácí použití, ale výsledek bude určitě dostačovat.
Nezapomeňte na nutnost vložit na výstup průtokoměru PULL UP rezistor cca 6K a nebo zapnout PULL UP na vstupu MCU. Výstup je typu NPN bez vloženého PULL UP rezistoru.
Přeju mnoho úspěchů při pokusech s tímto průtokoměrem.