Відповісти

Введіть повідомлення і натисніть Надіслати
Параметри

Назад

Огляд теми (нові повідомленні вгорі)

Kaka
2019-04-24 14:29:00
Rimarko пише:

Мне нужно что бы опытные люди помогли реализовать этот проект(помогли с кодом в конце конов) wink , обьяснили что и как нужно писать... smile

Так обратись к своему корешу AlexGyver. У него и форум собственный есть https://community.alexgyver.ru/

Надеюсь, этот безграмотный блогер тебе поможет.

tom Smith
2019-04-23 11:20:54

Вот более подробные руководства ... о датчиках и таймерах https://www.allicdata.com/blog.html

Вячеслав Азаров
2019-01-30 01:21:17
Rimarko пише:

...ну тогда подскажите или дайте пример как нужно делать... smile

Это руководство по использованию таймеров: https://www.microchip.com/wwwAppNotes/A … e=en591026 Готовой программы зажигания, для демонстрации в качестве примера, у меня нет. Поищите в интернете, может найдете.

Rimarko
2019-01-30 01:00:42

...ну тогда подскажите или дайте пример как нужно делать... smile

MikeM
2019-01-29 23:41:29

Прерывания нулевого таймера, будучи асинхронным с сигналами датчиков Холла, будут сбивать работу системы.

Вячеслав Азаров
2019-01-29 20:39:58

У вас период оборота менее 80 мс при превышении 750 об/мин. А системные часы Ардуино с разрешением 1 мс и то не точно. Вам еще много придется изучить. Начните с улучшения знаний С/С++ и изучения даташита на микроконтроллер. И с таблицей станет понятнее. Читайте тексты хороших программ, например, исходники библиотек Ардуино.

Rimarko
2019-01-29 20:28:05

VS9ZpyL
L1yVtx9

Rimarko
2019-01-29 20:26:23

обороты    время сигнала         L1- расстояние до ВМТ, мм            β- расстояние до ВМТ в градусах                α*- угол модулятора в             время сигнала с задержкой            задержка сигнала в
ω    Т        (опережение)            если считать вмт 0 градусов                зависимости от оборотов                        зависимости от оборотов
750    0,012222222        2,35            6,51                57,21            0,012713333            0,000491111
1000    0,009166667        2,4            6,65                57,08            0,009513333            0,000346667
1250    0,007333333        2,45            6,78                56,95            0,007593333            0,00026
1500    0,006111111        2,5            6,92                56,82            0,006313333            0,000202222
1750    0,005238095        2,55            7,06                56,69            0,005399048            0,000160952
2000    0,004583333        2,6            7,20                56,56            0,004713333            0,00013
2250    0,004074074        2,65            7,34                56,43            0,00418            0,000105926
2500    0,003666667        2,7            7,48                56,3            0,003753333            8,66667E-05
2750    0,003333333        2,75            7,62                56,17            0,003404242            7,09091E-05
3000    0,003055556        2,8            7,75                56,04            0,003113333            5,77778E-05
3250    0,002820513        2,85            7,89                55,91            0,002867179            4,66667E-05
3500    0,002619048        2,9            8,03                55,78            0,00265619            3,71429E-05
3750    0,002444444        2,95            8,17                55,65            0,002473333            2,88889E-05
4000    0,002291667        3            8,31                55,52            0,002313333            2,16667E-05
4250    0,002156863        3,05            8,45                55,39            0,002172157            1,52941E-05
4500    0,002037037        3,1            8,58                55,26            0,002046667            9,62963E-06
4750    0,001929825        3,15            8,72                55,13            0,001934386            4,5614E-06
5000    0,001833333        3,2            8,86                55            0,001833333            0

Rimarko
2019-01-29 20:24:00

Вот графики опережения зажигания:
https://ibb.co/VS9ZpyL
https://ibb.co/L1yVtx9

Rimarko
2019-01-29 20:18:31

Вот то что начал писать... Я совсем зеленый, так что не сочтите... Критика приемлима, на ошибках учимся... Спасибо за понимание...)
/*
FUOZ
*/

unsigned long lastflash;
int RPM;

void setup() {
  Serial.begin(9600);  //открыть порт
  attachInterrupt(0,HallSensor1,RISING); //подключить прерывание на 2 пин при повышении сигнала
  attachInterrupt(1,HallSensor2,RISING); //подключить прерывание на 3 пин при повышении сигнала
  pinMode(2, INPUT_PULLUP);   //2 пин как вход
  pinMode(3, INPUT_PULLUP);  //3 пин как вход
 
}
void Hallsensor1() {
  RPM=60/((float)(micros()-lastflash)/1000000);  //расчет
  lastflash=micros();  //запомнить время последнего оборота
}

void Hallsensor2() {
  RPM=60/((float)(micros()-lastflash)/1000000);  //расчет
  lastflash=micros();  //запомнить время последнего оборота
}
void loop() {
  if ((micros()-lastflash)>1000000){ //если сигнала нет больше секунды
    RPM=0;  //считаем что RPM 0
  }
  Serial.println(RPM);   //вывод в порт
  delay(50);  //задержка для стабильности
}

Вячеслав Азаров
2019-01-29 20:01:59

Используйте аппаратный таймер для формирования задержки. По другому не получится.

renoshnik
2019-01-29 19:54:38
Rimarko пише:

Мне нужно что бы опытные люди помогли реализовать этот проект(помогли с кодом в конце конов) wink , обьяснили что и как нужно писать... smile

давайте код, посмотрим...

Rimarko
2019-01-29 19:52:50

Моя задумка такова: есть 2 датчика Холла, подключаем их на пины с прерыванием и считаем колличество оборотов в минуту, если это значение больше 750 об\мин- то на каждый диапазон частот прибавляем своё время задержки сигнала(время уменьшается с увеличением оборотов коленчатого вала) и посылаем сигнал на выход с ардуинки к коммутатору, а тот, в свою очередь, подаёт сигнал на катушку зажигания, что в последствии приводит к искре на свечке... Если обороты меньше 750-обходим блок прибавления задержки и работаем"на прямую"-то есть подучили сигнал с датчика Холла-передали его на коммутатор... Проблема в том, что куски примитивного кода есть, а собрать все в кучу не получается... И не понятно как вставить масив зависимости задержки от оборотов roll

Вячеслав Азаров
2019-01-29 19:03:40

А что вам непонятно с кодом?

Rimarko
2019-01-29 18:41:24

Мне нужно что бы опытные люди помогли реализовать этот проект(помогли с кодом в конце конов) wink , обьяснили что и как нужно писать... smile

Підвал форуму