Обявления

Для полноценной работы рекомендуется пройти регистрацию.

Рекламные сообщения будут удаляться вместе с пользователем. Что есть реклама - буду решать я.

Тахометр на ATtiny2313 с реакцией на скорость вращения

Здесь только проекты на ATtiny

Re: Тахометр на ATtiny2313 с реакцией на скорость вращения

Сообщение propell_ant » 24 окт 2016 13:00

lame_reef, да, именно тут.
propell_ant
Живу тут
 
Сообщения: 276
Зарегистрирован: 03 июн 2014 09:22

Re: Тахометр на ATtiny2313 с реакцией на скорость вращения

Сообщение lame_reef » 24 окт 2016 23:59

propell_ant, Сорри за глупые просьбы, но как-то не получается у меня пока совладать с этим СИ. :sorry:
Перемоделировав формулу получил такое:
OCR0A = 128 + 127*(Rpm_LoadOn - 2000) / 7000 +K_P* (Rpm_LoadOn - wRpm) / 7000.
В этом случае K_P - коэффициент противодействия (хорошо-бы его тоже заносить в переменную с клавиатуры, как и Rpm_LoadOn, но это уже "бирюльки").
А вот как вложить в программу - не могу понять. OCR0A - 8и битовый регистр. Ему надо целое число от 0 до 255. Да и значение скважности для двигателя не должно быть меньше 127 (иначе он отключается). Вот такое насочинял (только не смейтесь, плз) - это, ИМХО, максимум моих возможностей:
#ifdef PWM_OUT
unsigned char PWM_cycle;
PWM_cycle = (unsigned char) (128 + 127*(Rpm_LoadOn-2000)/7000 + K_P*(Rpm_LoadOn-wRpm)/7000);
if (PWM_cycle <128)
{
PWM_cycle = 128;
}
OCR0A = PWM_cycle;
#endif
Подправьте, плз, если что неправильно.
И тут-же возникли вопросы:
- а надо-ли ограничивать по верхнему пределу или формат переменной сам отрежет до 255?
- а если заносить в PWM_cycle дробное число от он туда засунет только целую часть или надо как-то округлять?
- ну и самое противное: Программа не влазит в контроллер. Компилятор говорит, что ему надо 1042 слова из 1024 доступных.
Сможете указать мне на мои "грабли"?
lame_reef
Пробегал мимо
 
Сообщения: 10
Зарегистрирован: 16 окт 2016 16:21

Re: Тахометр на ATtiny2313 с реакцией на скорость вращения

Сообщение propell_ant » 25 окт 2016 23:27

попробуйте убрать эти строчки, начиная с 759-ой:
Код: Выделить всё
if ((eeRpm_LoadOn > 8000) | (eeRpm_LoadOn < 30))    //если в EEPROM значение > 8000 или < 30 значит он не прошился, или

  eeRpm_LoadOn = 30;                             //чё-то глюкануло, поэтому запишем туда начальные значения.
  eeSwitchDelay = 10;                             //это тоже на всякий случай перезапишем
}

это проверка правильности настроек - можно ее пока убрать

Добавлено спустя 6 минут 55 секунд:
lame_reef писал(а):- а надо-ли ограничивать по верхнему пределу или формат переменной сам отрежет до 255?
- а если заносить в PWM_cycle дробное число от он туда засунет только целую часть или надо как-то округлять?

1. скажем так, если станет 257, то в переменной окажется 1
2. чтобы было дробное число нужно, чтобы тип переменной был ... не целочисленным. и с такими типами в attiny дулать нечего. Даже деление целых чисел довольно накладно. Результат деления целых чисел - тоже целое число.
propell_ant
Живу тут
 
Сообщения: 276
Зарегистрирован: 03 июн 2014 09:22

Re: Тахометр на ATtiny2313 с реакцией на скорость вращения

Сообщение lame_reef » 26 окт 2016 09:26

propell_ant, спасибо. Вечером попробую.
lame_reef
Пробегал мимо
 
Сообщения: 10
Зарегистрирован: 16 окт 2016 16:21

Re: Тахометр на ATtiny2313 с реакцией на скорость вращения

Сообщение nickjust » 31 окт 2016 12:32

привет
есть ваз 2106 со штатным тахометром - бесконтактная система зажигания
тахометр старый нах ,а ваш в разработку, -
нужно чтобы при >=2000 об/м срабатывало реле и выключало если меньше 2000 об/м
http://natapku.ru/ustrojstvo/taxometr-vaz-2106.html


З.Ы. А можно скомпилировать схему/прошивку под Attiny26 у меня их есть...?!
И вообще супер бы было если можно выбирать пороговое значение оборотов? :-)
nickjust
Пробегал мимо
 
Сообщения: 4
Зарегистрирован: 08 фев 2016 14:38
Откуда: Львов

Re: Тахометр на ATtiny2313 с реакцией на скорость вращения

Сообщение propell_ant » 01 ноя 2016 21:10

nickjust, это всё реализовано в прошивке, выложенной в первом посте этой темы.
Кроме Attiny26 - это нет.
propell_ant
Живу тут
 
Сообщения: 276
Зарегистрирован: 03 июн 2014 09:22

Пред.

Вернуться в ATtiny



Кто сейчас на конференции

Сейчас этот форум просматривают: Bing [Bot] и гости: 7