Ардуинщики всех стран - объединяйтесь! В этом форуме, конечно.
Ответить

Расходомер топлива для карбюраторного двигателя

Вт май 30, 2023 13:04:08

Добрый день! Обзавелся очень хорошим датчиком расхода топлива швейцарской фирмы Aquametro VZO 4 OEM. Данный датчик имеет обычный герконовый импульсный выход и дает один импульс на каждые 0,005 литра. Максимальный расход для данного датчика 40 л/ч, длительный 25 л/ч, минимальный 0,5 л/ч. Импульсная частота при Qmax - 2,222 Гц, а при Qmin - 0,027 Гц.
Хочется сделать расходомер топлива на свою машину, чтобы считал мгновенный расход (л/100км), и с накоплением с возможностью обнуления кнопкой. Есть в наличии платка arduino nano, GPS модуль NEO-6M и ЖК дисплей 16х2. Собрал схему под скетч ниже, но с программированием ардуино пока на “вы” а с радиоэлектроникой на “ты”… Помогите, пожалуйста, модернизировать скетч ниже …

/*
YF‐ S201 Water Flow Sensor
Water Flow Sensor output processed to read in litres/hour
Adaptation Courtesy: hobbytronics.co.uk
*/
volatile int flow_frequency; // с помощью этой переменной мы будем подсчитывать импульсы от датчика расходы воды
// Calculated litres/hour
float vol = 0.0,l_minute;
unsigned char flowsensor = 2; // Sensor Input
unsigned long currentTime;
unsigned long cloopTime;
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 9);
void flow () // функция обработки прерывания
{
flow_frequency++;
}
void setup()
{
pinMode(flowsensor, INPUT);
digitalWrite(flowsensor, HIGH); // Optional Internal Pull-Up
Serial.begin(9600);
lcd.begin(16, 2);
attachInterrupt(digitalPinToInterrupt(flowsensor), flow, RISING); // Setup Interrupt
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Water Flow Meter");
lcd.setCursor(0,1);
lcd.print("Circuit Digest");
currentTime = millis();
cloopTime = currentTime;
}
void loop ()
{
currentTime = millis();
// каждую секунду рассчитываем и выводим на экран ЖК дисплея скорость потока воды в литрах в минуту
if(currentTime >= (cloopTime + 1000))
{
cloopTime = currentTime; // Updates cloopTime
if(flow_frequency != 0){
// Pulse frequency (Hz) = 7.5Q, Q is flow rate in L/min.
l_minute = (flow_frequency / 7.5); // (Pulse frequency x 60 min) / 7.5Q = flowrate in L/hour
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Rate: ");
lcd.print(l_minute);
lcd.print(" L/M");
l_minute = l_minute/60;
lcd.setCursor(0,1);
vol = vol +l_minute;
lcd.print("Vol:");
lcd.print(vol);
lcd.print(" L");
flow_frequency = 0; // сбрасываем счетчик
Serial.print(l_minute, DEC); // Print litres/hour
Serial.println(" L/Sec");
}
else {
Serial.println(" flow rate = 0 ");
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Rate: ");
lcd.print( flow_frequency );
lcd.print(" L/M");
lcd.setCursor(0,1);
lcd.print("Vol:");
lcd.print(vol);
lcd.print(" L");
}
}
}

Re: Расходомер топлива для карбюраторного двигателя

Ср май 31, 2023 00:25:45

ioniks писал(а):Обзавелся очень хорошим датчиком расхода топлива швейцарской фирмы Aquametro VZO 4 OEM.
ОнЕ же 200имп/л. :( И похоже, что в основном на солярку (она и смазка, и чуток погуще бензина). Что при замере бенза не айс, может подвирать или вообще встать.
Были же наши (без Швейцариев всяких :) ) датчики расхода бенза на 16000имп/л! Подвес вертушки был даже вроде на "камушках" и имелся даже готовый тарированный выход топливной "обратки". Точность счёта в автЕ (спецом мерной мензуркой замерял) была офифегительная. :) Имхо и нонче его ПРИ ЖЕЛАНИИ достать можно. Я с таким когда-то БК (Бортовой комп.) ваял.
ioniks писал(а):с радиоэлектроникой на “ты”…
Ежели оно так, и вам это действительно интересно, то могу подсказать как можно попробовать и без МК мгновенный расход измерять. Почти что на одной МС. :) Попробуете, может и понравится. :))
Последний раз редактировалось valentinovich Ср май 31, 2023 01:21:40, всего редактировалось 1 раз.

Re: Расходомер топлива для карбюраторного двигателя

Ср май 31, 2023 00:50:01

вполне нормальное число импульсов, зачем в любительской автомобильной электронике точнее? но вот с типом топлива соглашусь, может не только привирать, но и выйти из строя (может, действительно самосмазывающийся соляркой). Кроме того, температурный диапазон всего -10 ... +60°С что уже исключает установку на автомобиле, да и нежный он. Лучше продать (новый стоит дорого), а на вырученные средства собрать какой-то другой, с так сказать, AEQ-100

что касается скетча, то там не модернизировать надо, а писать всё заново: вода к километрам не привязывается

Re: Расходомер топлива для карбюраторного двигателя

Ср май 31, 2023 01:17:04

Martian писал(а):вполне нормальное число импульсов, зачем в любительской автомобильной электронике точнее?

Ответ достаточно прост:
При счёте (в БК) допустим идёт запоминание расхода, остатка, ... И при выключении зажигания (глушим двиг.) счёт, как правило, останавливается на не законченном цикле. И потеря импульсов в конечном итоге приведёт к накоплению ошибки в подсчёте (всегда в меньшую сторону). И чем меньше доля одного имп., тем меньше накопленная ошибка.
Можно конечно, используя внутреннюю флешь, запоминать промежуточные состояния, но это и усложнит программу (правда нам ведь чем сложнее алгоритм, тем интереснее :) ) и может также ускорить исчерпание ресурса внутр. флехи. Короче - "лишняя" точность чего либо никогда не бывает лишней. :)
Да и упомянутый мной прибор, был выпущен и "заточен" именно для бензинового движка да ещё конструктивно с "вычётом" обратки и возможных воздушных "пузырей", что, согласитесь, уже совсем немаловажно.

Re: Расходомер топлива для карбюраторного двигателя

Ср май 31, 2023 02:01:36

Ну, кашу маслом не испортишь, конечно. И да, погрешности при запуске-останове теоретически можно скорректировать, накопив данные.

Добавлено after 5 minutes 26 seconds:
с "вычётом" обратки
это, пожалуй, главное. Значит, с этим датчиком в любом случае будет неточно.

Re: Расходомер топлива для карбюраторного двигателя

Ср май 31, 2023 10:41:31

ioniks писал(а):Обзавелся очень хорошим датчиком расхода топлива швейцарской фирмы Aquametro VZO 4 OEM.
ОнЕ же 200имп/л. :( И похоже, что в основном на солярку (она и смазка, и чуток погуще бензина). Что при замере бенза не айс, может подвирать или вообще встать.
Были же наши (без Швейцариев всяких :) ) датчики расхода бенза на 16000имп/л! Подвес вертушки был даже вроде на "камушках" и имелся даже готовый тарированный выход топливной "обратки". Точность счёта в автЕ (спецом мерной мензуркой замерял) была офифегительная. :) Имхо и нонче его ПРИ ЖЕЛАНИИ достать можно. Я с таким когда-то БК (Бортовой комп.) ваял.
ioniks писал(а):с радиоэлектроникой на “ты”…
Ежели оно так, и вам это действительно интересно, то могу подсказать как можно попробовать и без МК мгновенный расход измерять. Почти что на одной МС. :) Попробуете, может и понравится. :))


Ну подскажите... Напомню, что у меня обычный карбюратор, никакого впрыска! Мерную тару под капотом и в салоне не предлагать! :)

Добавлено after 9 minutes 14 seconds:
ioniks писал(а):Обзавелся очень хорошим датчиком расхода топлива швейцарской фирмы Aquametro VZO 4 OEM.
ОнЕ же 200имп/л. :( И похоже, что в основном на солярку (она и смазка, и чуток погуще бензина). Что при замере бенза не айс, может подвирать или вообще встать.
Были же наши (без Швейцариев всяких :) ) датчики расхода бенза на 16000имп/л! Подвес вертушки был даже вроде на "камушках" и имелся даже готовый тарированный выход топливной "обратки". Точность счёта в автЕ (спецом мерной мензуркой замерял) была офифегительная. :) Имхо и нонче его ПРИ ЖЕЛАНИИ достать можно. Я с таким когда-то БК (Бортовой комп.) ваял.
ioniks писал(а):с радиоэлектроникой на “ты”…
Ежели оно так, и вам это действительно интересно, то могу подсказать как можно попробовать и без МК мгновенный расход измерять. Почти что на одной МС. :) Попробуете, может и понравится. :))


По поводу бензина...

Добавлено after 6 minutes 17 seconds:
А по поводу температуры... так я живу в РБ и у нас морозы в -10 уже давно редкость! А +60 в стороне от двигателя в пенопластовом коробе, да еще и в движении, когда подкапотное пространство все продувается, совсем не достижимо!
Вложения
Область применения VZO.jpg
(116.63 KiB) Скачиваний: 35

Re: Расходомер топлива для карбюраторного двигателя

Чт июн 01, 2023 00:22:24

ioniks писал(а):Ну подскажите... Напомню, что у меня обычный карбюратор...
Мерную тару под капотом и в салоне не предлагать! :)
Ну про карбюратор это было понятно сразу после первого поста. :)
По поводу что может мерить, приобретённый вами девайс - могу сказать только то, что вы не совсем поняли разницу между упомянутым мной и простейшем вашим. :(
Кстати, насчёт "мерной тары" вы явно заблуждаетесь - любой импульсный датчик расхода именно таким и является (один имп. на ед. объёма). Так что при установке оного, он у вас уже будет под капотом. :)
З.Ы. Не надо цитировать всё сообщение на которое вы отвечаете, а только ту часть фразы, которую вы хотите прокомментировать. Типа, чтоб ложилось в контекст повествования.
По поводу предлагаемого мной варианта схемы измерения мгновенного расхода топлива, если вы не против, плиз в личку. Там и поговорим. Лады?

Добавлено after 18 minutes 24 seconds:
Martian писал(а):можно скорректировать, накопив данные.
Так точно, но и вторая часть вашей фразы тоже должна была вас также убедить.
Я это к тому - акромя точности, когда и сколько раз во времени можно будет выводить данные измерения при разном кол-ве имп/л.
Т.е. может получится, что запаздывание выдачи параметра уже не будет соответствовать понятию "мгновенный" (т.е прям сейчас под "тапком" :) ) расход, а что оно было некоторое время и пару км. назад. Почему разрабы, упомянутого мной прибора, видимо и выбрали максимальное и прилично отьюстированное, что смогли выжать из устройства.
Ответить