Ви не увійшли.
Сторінки 1
Штатный датчик скорости авто выдает импульсы амплитудой до 12 В.
1 км/ч . соотваетствует частоте 1,66 Гц. на датчике.
60 км/ч = 100 Гц.
100км/ч = 166 Гц.
Датчик подключен на аналоговый, вход arduino pro mini , через делитель напряжения задача состоит в том чтобы считать текущею скорость автомобиля и его пробег.
Функция для определения скорости ниже.
int checkSpeed(){
unsigned long time1 =millis(); // определяем время начала выполнения функции если > 1000 возвращаем 0
unsigned long pulseStart; // начало первого импульса
int pulse=0; // длинна импульса в мс.
int schet=0; // 0 - начало первого импульса , 1 - конец первого , 2 начало второго (время между 0 и 2 -- частота )
while (millis()-time1<300){ //цыкл выполняется если с момента начала выполнения прошло меньше 300 мс.
if (analogRead(SPEEDPIN)>600 && schet==2){
pulse = millis()- pulseStart;
return 1000/pulse/1.66;
}
else if (analogRead(SPEEDPIN)>600 && schet==0){
pulseStart=millis();
schet =1;
}
else if(analogRead(SPEEDPIN)<600 && schet==1){
schet =2;
}
}
return 1000/pulse/1.66;
константа SPEEDPIN определена раньше (пин который подключен к датчику скорости).
Будет ли работать эта функция (протестировать на автомобиле пока нету возможности ), и как реализовать подсчет пробега?
Спасибо.
Нужно при помощи arduino считывать значения уровня топлива в баке ,
Вопрос правильно ли подобрано сопротивление на схеме.
Сторінки 1