Подключение датчика расхода топлива

В качестве датчика я намереваюсь использовать следующее купленное на Aliexpress устройство:

IMG_0088

Модель: LP-GF24
RED — VCC
WHITE — GND
BLUE — DATA
2174 импульсов на 1 литр

Скорее всего оно было скопировано с этого устройства:

Снимок экрана 2015-02-01 в 23.29.15

В этом блоге ругают копию. На ebay можно купить оригинал. Попробую пока с тем датчиком, который уже купил. Импульсы он честно выдает, а как себя будет вести, когда будет подключен к топливопроводу — посмотрим.

Я подключил датчик ко второму пину Arduino Pro Mini, чтобы считать импульсы, приходящие от него. Для этого я буду обрабатывать прерывание 0. Уже в процессе сборки добавил подтягивающий вниз резистор 10k на второй пин, на схеме его нет.

Кабель к датчику нужен экранированный, я использовал FTP патч корд.

Снимок экрана 2015-04-25 в 14.19.43

//*****************************************************************
//* Инициализация подсистемы подсчета расхода топлива
//*****************************************************************
void setupFuelMeter(void) {
attachInterrupt(fuelMeterInt, ISRfuelMeter, RISING); // Разрешения прерывания
}

//*****************************************************************
//* Обработчик прерывания - импульс счетчика топлива
//*****************************************************************
void ISRfuelMeter(void) {
app.fuelPulsesAll.number++;
app.fuelPulsesLate.number++;
}

Переменные были определены как volatile:

volatile UnsignedLong_Bytes fuelPulsesAll; // Расход топлива в импульсах с момента установки счетчика
volatile UnsignedLong_Bytes fuelPulsesLate; // Расход топлива в импульсах с момента заправки

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *