Регулятор оборотов ДВС на Arduino Mega. Система запуска и прогрева ДВС. Счетчик мото-часов. ШИМ-регулятор оборотов вентиллятора.

OLD1976
Offline
Зарегистрирован: 28.12.2017

Делюсь своей разработкой. На двигателе еще не испытывал. Но думаю все заработает сразу.

1. Что это такое.

1.1 Регулятор оборотов (круиз-контроль, если тахометр будет считать обороты колеса).
Поддерживает постоянные обороты вне зависимости от нагрузки. Не нужна педаль "газа". Обороты выставляются потенциометром. Привод дроссельной заслонки от мощной серво-машинки. По сути, это PID-регулятор. Используется метод Зиглера-Никольса. Реагирование на внешние события. Например, поднятая навеска и КПП на нейтрали — перевод двигателя на ХХ.

1.2 Система запуска и прогрева ДВС. (Не нужна для инжекторных и дизельных двигателей)
1.2.1 "Автоподсос".Управление воздушной заслонкой в зависимости от температуры двигателя. Привод воздушной заслонки от мощной серво-машинки. Температура берется с цифрового датчика.
1.2.2 Обогащение топливной смеси. Эмуляция нескольких нажатий на педаль "газа" при запуске холодного двигателя.

1.3 Счетчик моточасов.

1.4 ШИМ-регулятор оборотов вентиллятора охлаждения.
Плавное управление вентиллятором. Растет температура — растут обороты вентиллятора.

2. Область применения.

2.1 Самодельные трактора, вездеходы, стационарные генераторы электроэнергии, мотопомпы и т.п.
 

3. Готовность кода проекта.

3.1 Регулятор оборотов ДВС 95% (остался датчик нейтрали)
3.2 Система запуска и прогрева ДВС 100%
3.3 Счетчик моточасов 0%
3.4 ШИМ-регулятор оборотов вентиллятора 95%

4. Испытания на ДВС.

4.1 Регулятор оборотов ДВС 0%
4.2 Система запуска и прогрева ДВС 0%
4.3 Счетчик моточасов 0%
4.4 ШИМ-регулятор оборотов вентиллятора 0%

5. Содержимое репозитория bitbucket.org/OLD1976/throttle-control

5.1 Директория libraries Библиотеки Arduino необходимые для компиляции проекта.
5.2 Директория throttle-control Директория проекта
5.2.1 Файл throttle-control.ino Код программы для Arduino (Mega).
5.2.2 Файл pitches.h Заголовочный файл для воспроизведения мелодии при старте Arduino.
5.2.3 Файл throttle-control.fzz Макетная плата проекта для программы Fritzing. (fritzing.org/download/)
5.2.4 Файл my_parts.fzbz Файл электронных компонентов для программы Fritzing, которые отсутствуют в Базе Элементов программы.
5.2.5 Файл readme.txt Файл описания проекта

6. Список компонентов.

6.1 Предохранитель в корпусе, 10А 1 шт.
6.2 БП DC/DC 12В --> 5В 10-12А 1 шт. ali.onl/O0r
6.3 Arduino Mega 2560 1 шт.
6.4 Плата расширения для Mega 2560 R3 (Шилд) 1 шт. ali.onl/O0q
6.5 Потенциометр-слайдер (можно крутилку) 1 шт. ali.onl/O0p
6.6 ИК датчик препятствий для тахометра и датчик нейтрали 2 шт. ali.onl/O0o
6.7 Датчик температуры DS18B20 1 шт. (для карбовых ДВС) ali.onl/NZE
6.8 Сервопривод MG996R 2 шт. (для ижекторов и дизелей — 1шт.) ali.onl/NZC
6.9 Дисплей LCD1602 + I2C ЖК 1 шт. ali.onl/NZA
6.10 Зуммер на 5В. ЗП-5, например. 1 шт.
6.11 2-х позиционный переключатель 2 шт.
6.12 Концевой переключатель для навески трактора 2 шт.
6.13 Провода для макетирования 1 набор ali.onl/NZv
6.14 Светодиоды. Красный, желтый, зеленый 3 шт.
6.15 Резистор 200-240 Ом для светодиодов 3 шт.
6.16 Резистор 4.7 кОм для датчика темперетуры 1 шт.

7. Управление и индикация.

7.1 Тумблер выбора режима.
7.1.1 Режим регулирования оборотов.
7.1.2 Режим принудительного ХХ/прогрева ДВС (зависит от температуры).
7.2 Кнопка обогащения (без фиксации). При нажатии, если двигатель холодный и включен режим прогрева, сработает сервопривод дросселя и 4 раза "нажмет на педаль газа".
7.3 Потенциометр. Можно задать рабочие обороты ДВС, которые будут поддерживаться постоянными. В пределах от ХХ до 3000 (переменная RPMmax).
7.4 Тумблер включения автоматического перехода на ХХ при поднятой навеске (концевик) и (или) положении КПП в нейтрали (концевик или датчик). Либо любые другие события.
7.5 Красный светодиод. Горит, если выбран режим ХХ/прогрева.
7.6 Желтый светодиод. Горит, если выбран режим ХХ/прогрева и температура ниже 40 градусов. Мигает 4 раза, если нажали кнопку обогащения.
7.7 Зеленый светодиод. Горит, если выбран режим регулирования оборотов.
7.8 Дисплей. Показывает обороты ДВС (RPM), температуру ДВС (T), начальную температуру ДВС ™, угол открытия дроссельной заслонки (Out).

8. Алгоритм работы системы.

Включаем зажигание. Подается питание на контроллер и сервоприводы. Контроллер готов к работе. Звучит мелодия. Производится замер начальной температуры ДВС. Перед запуском холодного двигателя нужно выбрать режим ХХ/прогрева. Если температура ниже 40гр (TempMax), включается режим прогрева ДВС (желтый светодиод). Возможно нажать кнопку обогащения смеси (только если ДВС не вращается) для уверенного пуска. Заводим двигатель. С первыми оборотами закрывается воздушная заслонка. Далее, по мере пррогрева, она приоткрывается. Желтый светодиод погас, красный горит — ДВС работает на ХХ. Переключаем тумблер в режим регулирования. Обороты устанавливаются согласно положению потенциометра. По необходимости, вторым тумблером включаем автоматический переход на ХХ. Например, если остановились и включили "нейтраль", ДВС сам перешел на ХХ.

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Из описания трудно что-нмбудь понять кроме того, что педаль газа заменчяется на кнопку и два тумблера.

Лично мне это кажется неудобным решением. Думаю, автору следует тщательнее подходить к разработке пользовательского интерфейса.

MaksVV
Offline
Зарегистрирован: 06.08.2015

OLD1976 пишет:
На двигателе еще не испытывал. Но думаю все заработает сразу.

Ключевая фраза. Да вы оптимист, батенька. 

OLD1976
Offline
Зарегистрирован: 28.12.2017

Да, я -  оптимист. Исправный ДВС поддается дрессировке. Уж поверьте. :)

sadman41
Offline
Зарегистрирован: 19.10.2016

А куда моточасы пишутся?

Да там всё по классике... дилеи, чтение с далласа без проверки контрольной суммы и сразу верчение заслонок по этой температуре.

В каком регионе, говорите, на улицу не стоит выходить?

OLD1976
Offline
Зарегистрирован: 28.12.2017

Моточасы должны писаться на внешний EEPROM. Но я код, касаемый счетчика, еще не писал.

Abbat
Abbat аватар
Offline
Зарегистрирован: 23.08.2017

ТС, как Ваш проект?

Интересно посмотреть скетч. К сожалению репозитарий недоступен. Может переложите код куда нибудь ещё?

b707
Offline
Зарегистрирован: 26.05.2017

Abbat пишет:

ТС, как Ваш проект?

 

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

OLD1976
Offline
Зарегистрирован: 28.12.2017

Abbat пишет:

ТС, как Ваш проект?

Интересно посмотреть скетч. К сожалению репозитарий недоступен. Может переложите код куда нибудь ещё?

У меня пока нет времени продолжать. Хотя вся механическая часть работы с двигателем закончена. Осталось соединить проводки и можно испытывать. Но это оптимистично...  Проект будет завершен по той простой причине, что мне очень нужен регулятор. :) Репозиторий я открою, когда проверю код в реальной работе. Также, сделаю проект только регулятора, ничего лишнего. Ему не нужна Mega, хватит Uno.

Поторопился я, конечно, с созданием этой темы. Тут моя ошибка: тема есть - регулятора нет.

sva_khv
Offline
Зарегистрирован: 19.12.2016

MaksVV пишет:

OLD1976 пишет:
На двигателе еще не испытывал. Но думаю все заработает сразу.

Ключевая фраза. Да вы оптимист, батенька. 

бОООльшой оптимист!  :-))))

При реальной реализации на авто особое внимание обратите внимание на качественную  фильтрацию помех по питанию. Очень неожиданные вещи вылазят.