Автоматическое управление воздушной заслонкой (автоподсос для карбюратора)

Badwolf
Offline
Зарегистрирован: 28.12.2019

И так есть у меня вторая машина  ваз 2106 для перевозки всякого хлама и вот  посетила меня идея дабы не мёрзнуть зимой это поставить автозапуск на авто да вот только это карбюратор собственно автозапуск не проблема проблема в том что она будет глохнуть, решил реализовать на ардуино и сервоприводе собственно с технической частью разберусь по ходу дела. Вот что мы имеем модуль управления на базе ардуино, сервопривод который будет двигать заслонку, датчик оборотов коленвала будет установлен вазовский с инжекторной классики, и штатный датчик температуры, Теперь вопрос как их подружить всех? 

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

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

P.S. наткнулся на похожий проект но реализован немного не так скетч имеется возможно от туда вырезать всё лишнее и переделать под мою задачу. Есть кто смелый и сможет мне помочь?

rkit
Offline
Зарегистрирован: 23.11.2016

Есть кто смелый и сможет покрасить мне дом?

Badwolf
Offline
Зарегистрирован: 28.12.2019

Слишком сложная задача? я просто реально не представляю как она реализуется на ардуино с их кучей разных библиотек и т.п в эти дебри нет времени лезть разбираться по этому и прошу помощи у тех кто с ардуино на ты. Но на мой взгляд задача несложная я уже примерный алгоритм подобрал и он довольно просто бы реализовался в том же питоне а вот ардуино для меня тёмный лес

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

Badwolf пишет:

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

я вот тоже траншеи копать не умею, но ведь есть люди, которые с лопатой на "ты".  Надо мне тоже кинуть клич на форуме траншеекопателей, задача то несложная. Наерна. 

asam
asam аватар
Offline
Зарегистрирован: 12.12.2018

Мне забор надо поменять. Задача несложная, я уже и примерный проект подобрал. Но в установке заборов я не разбираюсь и времени нет. Может за меня поставите? А я вам с воздушной заслонкой помогу?

Да ваша задача не слишком сложная, но это конкретная работа на которую надо потратить достаточно много времени. Зачем это делать тому кому такой автозапуск не нужен? Если умеете на питоне, то и с азами С разобраться должны суметь. Здесь готовы помочь советом но делать за вас _работу_ никто просто так не будет.

PS А если самому разбираться неохота или нет времени, так купите готовое - http://silich.ru/lite.html

Badwolf
Offline
Зарегистрирован: 28.12.2019

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

1- при включении зажигания проверям температуру двигателя 
2- если температура больше 50 гр. даём команду на сервопривод открыть полностью и больше не вмешиваемся
3- если температура меньше 50 гр. даём команду закрыть полностью
4 - (авто заводится) опрос датчика коленвала (обороты) и датчика температуры 
(опросы раз в секунду)
5- если обороты выше или равны 1500 но не выше 2500 и  температура до 50 гр. корректируем обороты до 1500 по 3% каждые 3 секунды
6- если обороты ниже 1500 открываем заслонку на 10%
7- опрос датчиков
8 -повтор 6
6.2 если обороты выше 2500 закрываем заслонку на 10% и опрашиваем датчики 
если обороты от 1800 до 2200 корректируем по 3% каждые 3 секунды
9 опрос датчиков (цикличность до появления нужного результата)
10-если температура более 50 гр. а обороты более иле равны 700 открыть заслонку полностью
11- опрос датчиков
12- если температура более 50 а обороты не ниже 700 оставляем открытой
 
 
ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

DetSimen пишет:

Badwolf пишет:

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

я вот тоже траншеи копать не умею, но ведь есть люди, которые с лопатой на "ты".  Надо мне тоже кинуть клич на форуме траншеекопателей, задача то несложная. Наерна. 

мне давали роту зольдат, 8 км выкопали вручную за неделю, под кабель 4 -ре 4-ки стирофлекс, оказалось несложно )))

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

Badwolf пишет:

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

1- при включении зажигания проверям температуру двигателя 
2- если температура больше 50 гр. даём команду на сервопривод открыть полностью и больше не вмешиваемся
3- если температура меньше 50 гр. даём команду закрыть полностью
4 - (авто заводится) опрос датчика коленвала (обороты) и датчика температуры 
(опросы раз в секунду)
5- если обороты выше или равны 1500 но не выше 2500 и  температура до 50 гр. корректируем обороты до 1500 по 3% каждые 3 секунды
6- если обороты ниже 1500 открываем заслонку на 10%
7- опрос датчиков
8 -повтор 6
6.2 если обороты выше 2500 закрываем заслонку на 10% и опрашиваем датчики 
если обороты от 1800 до 2200 корректируем по 3% каждые 3 секунды
9 опрос датчиков (цикличность до появления нужного результата)
10-если температура более 50 гр. а обороты более иле равны 700 открыть заслонку полностью
11- опрос датчиков
12- если температура более 50 а обороты не ниже 700 оставляем открытой
 
 

открытие заслонки наоборот снижает обороты )))

-NMi-
Offline
Зарегистрирован: 20.08.2018

Badwolf пишет:

1 И так есть у меня вторая машина  ваз 2106 

2 решил реализовать на ардуино

3 в ардуино я полный ноль 

4 по показаниям с датчика коленвала и температуре? 

5 Полёт фантазии неограничен

6 Есть кто смелый и сможет мне помочь?

1 поздравляю с имением ведра с болтами, и сочуствую заодно.

2 да, только на ардуино, больше же не на чем )))

3 да, ноль, но и в автомобилях, к сожалению, так-же.

4 зачем на карбюраторном авто ДПКВ и ДТОЖ ?

5 ещё как ограничен, если посмотреть баланс своего банковского счёта.

6 Я смелый, могу помочь. Вариантов у тебя всего ДВА:

Первый, самый простой и дешёвый - ставишь карбюратор от ВАЗ 2110 с автоподсосом (аналог Weber, Pierburg) а ардуину свою даришь детям, пусть разбираются и учатся, толк может будет.

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

Вариант совсем совсем безбашенный, но, хотЮ то-же рассказать... Давным давно видел "придурка" (IMHO) на ВАЗ2104 с "крутой" системой впрыска НА АРДУИНЕ!!! Там был карбюратор, инжектор и газ В ОДНОМ ФЛАКОНЕ!!! Ездий на чём угодно! Сколько это стоит и где продаётся - не знаю. Но блок ЭБУ точно сделан на AVR, т.к. я его лично разбирал и прошивал.

Удачи.

-NMi-
Offline
Зарегистрирован: 20.08.2018

ua6em пишет:

открытие заслонки наоборот снижает обороты )))

Закрадывается у меня мысль, что с ТС вы ... не... в...   ...лях совсем.    :))

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

-NMi- пишет:

ua6em пишет:

открытие заслонки наоборот снижает обороты )))

Закрадывается у меня мысль, что с ТС вы ... не... в...   ...лях совсем.    :))

как то в нашем ауле видел одного, выгружавшего тяпки для прополки картошки из автомобиля за 50 кило американских рублей, не из этих?

Badwolf
Offline
Зарегистрирован: 28.12.2019

ну мне это и нужно, при полностью закрытой заслонке обороты слишком высокие становятся по мере прогрева и мне её нужно приоткрывать понемногу.

Кстати по поводу идеи сделать ЭБУ на МК была такая мысль собрать простую систему моновпрыска, и в технической части особых проблем не возникает, но вот реализация программной части пока тёмный лес да и не так то это просто решил пока остановиться на автоподсосе чтобы и толк был и разобраться как работает МК а там может и моновпрыск соберу, по факту там ничего сложного 1 форсунка, дмрв, дпкв, и вместо трамблёра система DIS, но это всё потом мне расти и расти ещё, суть ещё стоит не просто в том чтобы сделать а в том чтобы разобраться в МК. И вот что мне не понятно:

1- Датчик температуры ОЖ будет штатный, таблица сопротивлений у меня есть, но если я подключусь к нему ардуиной то это не будет мешать показания на панели приборов?

2- как подключить датчик коленвала? штатный он индуктивный а если найти подходящий но хола всё равно не ясно какой будет проще и лучше а также как они прописываются для них нужны свои библиотеки или ещё что? 

3- как лучше сделать таблицей или алгоритмом? и если таблицей как это реализовывается в ардуино

-NMi-
Offline
Зарегистрирован: 20.08.2018

А кому какая разница сколько стоит автомобиль и что на нём возят???

Лично мне аписалютно монопинисуально.

PS вспомнилось, лет 20 назад на W164 поехали за рубемастом... Заходим в спецовках в магаз и говорим: - нам рубемасту нуно, продавец говорит, сколько, а мы ему: - сколько влезет, стока и купим... 14 или 15 рулонов запихали, ща не вспомню.  :))

О, а на Tahoe теплоизол возили,почти как в газель залезло!!!

-NMi-
Offline
Зарегистрирован: 20.08.2018

Badwolf пишет:

0- Кстати по поводу идеи сделать ЭБУ на МК была такая мысль собрать простую систему моновпрыска, и в технической части особых проблем не возникает, но вот реализация программной части пока тёмный лес да и не так то это просто решил пока остановиться на автоподсосе чтобы и толк был и разобраться как работает МК а там может и моновпрыск соберу, по факту там ничего сложного 1 форсунка, дмрв, дпкв, и вместо трамблёра система DIS, но это всё потом мне расти и расти ещё, суть ещё стоит не просто в том чтобы сделать а в том чтобы разобраться в МК. И вот что мне не понятно:

1- Датчик температуры ОЖ будет штатный, таблица сопротивлений у меня есть, но если я подключусь к нему ардуиной то это не будет мешать показания на панели приборов?

2- как подключить датчик коленвала? штатный он индуктивный а если найти подходящий но хола всё равно не ясно какой будет проще и лучше а также как они прописываются для них нужны свои библиотеки или ещё что? 

3- как лучше сделать таблицей или алгоритмом? и если таблицей как это реализовывается в ардуино

0 Не, там вааще всё просто, форсунка и DIS (ниразуневидел DIS на мониках)   :)) 

  ДМРВ и ДПКВ ниразу не видал на моновпрысках :))

1 Ничо не будет, поставишь делитель т.к. ДТОЖ 12-ти Вольтовый.

2 Ххде у ВАЗ2106 карбофосной стоит ДПКВ штатный???   :))

  д. холла есть в трамблёре, штатный, еслиЧо ДПКВ=ДПРВ * 2 или наоборот, поделить ДПКВ/2

3 какхошЪ так и делай.Только ОБЯЗАТЕЛЬНО АТПИШИ, когда сделаешь. Если за ГОД сделаешь - молодец!!!

PS эххххх, где-ш ты был лет 20 назад, А? LisCar, mEFi и мож чё ещё изобрёл бы, денег заработал бы себе и детям по квартире на мальдивах.  Каких-то сраных 20 лет...Йоптэ   :))

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

рекомендую датчик оборотов поставить Холла, его аппаратно намнооого проще подключить,  и датчик t свой поставить, например даллас, типа такой . 

ПС. карбюратор от десятки не пойдёт. Т.к. пока на газ не надавить, он обороты не сбросит.  И вообще капризная эта хрень полуавтомат шо ппц.  И в трамблере в шохе нету датчика Холла, там контакты "йоптэ"

-NMi-
Offline
Зарегистрирован: 20.08.2018

MaksVV пишет:

ПС. карбюратор от десятки не пойдёт. Т.к. пока на газ не надавить, он обороты не сбросит.

И вообще капризная эта хрень полуавтомат шо ппц.

И в трамблере в шохе нету датчика Холла, там контакты "йоптэ"

Возможно, а что этому мешает? Ато я уже забыл как он устроен, карбофос энтот.

Если знаешь, что там и зачем и как - нихрена не сложно!!!

"шоха" сафсем древняя?

-NMi-
Offline
Зарегистрирован: 20.08.2018

Badwolf пишет:

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

Тогда возникает другая проблема: моник (голова в сборе) стоит $100 , и "шохен" без датчика холла на чермете стоит $100.

ELITE
ELITE аватар
Offline
Зарегистрирован: 11.01.2018

а не проще ли в КЛАССИКЕ поставить КЛАССИЧЕСКУЮ механическую систему?!

как реализовать? - да на принцыпе термостата! - Для водопросода есть готовые автоматические саморегулирующие краны
 

типа такого

Ход штока у него порядка 6-8мм !! при этом с достаточным усилием!

колбу-датчик помещаете например в систему охлаждения мотора или в маслянную систему - в общем туда, где будет быстро и точно показывать Т двигателя...
а штоком двигаете "подсос"... 

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

 

Никакой электроники - чистая механика!

Badwolf
Offline
Зарегистрирован: 28.12.2019

MaksVV пишет:

рекомендую датчик оборотов поставить Холла, его аппаратно намнооого проще подключить,  и датчик t свой поставить, например даллас, типа такой . 

ПС. карбюратор от десятки не пойдёт. Т.к. пока на газ не надавить, он обороты не сбросит.  И вообще капризная эта хрень полуавтомат шо ппц.  И в трамблере в шохе нету датчика Холла, там контакты "йоптэ"

И так в кратце хочу автозапуск поставить чтобы прогревать пока кофе пью и время сэкономит и хочется что-то полезное сделать и разобраться с МК, ну и мне прям регулировки в диапазоне особой не нужно, мне бы только обороты держать чтобы не глохла.

суть в том что при закрытой заслонке авто заводится работает и постепенно набирает обороты и держит в районе 2000 но с прогревом ближе к 45-50 начинает глохнуть если не подгазнуть (без разницы открыта заслонка или закрыта всё равно заглохнет если не подгазнуть) но как только газанёшь обороты начинают стремительно расти примерно до 4000 вот тут мне и нужна регулировка чтобы открывать её по мере прогрева.

по поводу подгазнуть я вижу 2 решения

1- чуток подрегулировать карб и сделать таблицу регулировки заслонки.

2- поставить ещё серв на газульку) который будет подгазовывать например когда обороты ниже 600

3- добавить к карбу форсунку ( но это глупая идея)

2106 у меня старая но было установлено электронное зажигание (с датчиком хола) кстати об этом както не подумал, хорошая мысль брать сигнал от туда.

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

пока наверное попробую реализовать используя датчик хола в трамблёре, и штатный ДТОЖ, 

как прописать датчик хола в ардуино? библиотеки они универсальны? или под конкретные датчики?

Badwolf
Offline
Зарегистрирован: 28.12.2019

ELITE пишет:

а не проще ли в КЛАССИКЕ поставить КЛАССИЧЕСКУЮ механическую систему?!

как реализовать? - да на принцыпе термостата! - Для водопросода есть готовые автоматические саморегулирующие краны
 

типа такого

Ход штока у него порядка 6-8мм !! при этом с достаточным усилием!

колбу-датчик помещаете например в систему охлаждения мотора или в маслянную систему - в общем туда, где будет быстро и точно показывать Т двигателя...
а штоком двигаете "подсос"... 

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

 

Никакой электроники - чистая механика!

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

ELITE
ELITE аватар
Offline
Зарегистрирован: 11.01.2018

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

чтобы подключится к ШТАТНЫМ датчикам машины надо четко знать что они выдают на выходе! 

Даже если там чистый аналог (что вероятно и есть для классики) - то зависимость их показания от изменения уловий замера... а также рабочее напряжение на выходе (а в машине оно может быть до 15 и выше В.... - этого ардуина не перенесет!

также надо знать на сколько стабилен выходной уровень - в классике его может весьма прилично колбасить!....-----
Такми образом по мимо ардуины надо еще разрабатывать цепи согласования датчиков и ней - начните с этого
если получите стабильные показанию - уж тогда и цеплять на них ардуину и программу мутить....

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

MaksVV пишет:
рекомендую датчик оборотов поставить Холла, его аппаратно намнооого проще подключить,  и датчик t свой поставить, например даллас, типа такой .

для далласа ds18b20 и датчика Холла очень много на форуме, поиск рулит. 

по хорошему, кроме эл.привода воздушной заслонки очень желательно иметь РХХ, т.е. эл. привод на винт ХХ  

но для начала и так сойдёт, тем более если карбюратор Солекс - он гораздо более адекватен для этой задачи, т.к. кулиса привода воздушной заслонки задействует и дроссель, поэтому оборотами ХХ можно частично управлять воздушной заслонкой, особенно в начале хода. 

ПС. датчик Холла стоял в трамблере на классическом моторе в основном на Нивах, т.к. там электронное зажигание. Этого штатного датчика вполне хватит для этой задачи, так что переводите систему зажигания на Нивовскую (тем более у неё есть свои плюсы) и шкив и приколхоживание чужого датчика Холла вам не потребуется. 

Badwolf
Offline
Зарегистрирован: 28.12.2019

MaksVV пишет:

MaksVV пишет:
рекомендую датчик оборотов поставить Холла, его аппаратно намнооого проще подключить,  и датчик t свой поставить, например даллас, типа такой .

для далласа ds18b20 и датчика Холла очень много на форуме, поиск рулит. 

по хорошему, кроме эл.привода воздушной заслонки очень желательно иметь РХХ, т.е. эл. привод на винт ХХ  

но для начала и так сойдёт, тем более если карбюратор Солекс - он гораздо более адекватен для этой задачи, т.к. кулиса привода воздушной заслонки задействует и дроссель, поэтому оборотами ХХ можно частично управлять воздушной заслонкой, особенно в начале хода. 

ПС. датчик Холла стоял в трамблере на классическом моторе в основном на Нивах, т.к. там электронное зажигание. Этого штатного датчика вполне хватит для этой задачи, так что переводите систему зажигания на Нивовскую (тем более у неё есть свои плюсы) и шкив и приколхоживание чужого датчика Холла вам не потребуется. 

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

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

вы слушаете вообще что вам говорят? Похоже не очень.

Badwolf пишет:
У меня всё упирается в программную часть как это реализовывается на ардуино тоесть именно как привязать датчики к ней?

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

-NMi-
Offline
Зарегистрирован: 20.08.2018

Badwolf пишет:

У меня всё упирается в программную часть как это реализовывается на ардуино тоесть именно как привязать датчики к ней? а уже алгоритм составить смогу с питоном немного знаком думаю суть похожая будет

Ну питон дурдуине не товаРисЧ, но тем не менее... Бирёшь два счётчика, первый задаёт интервал счёта, второй, собственно, считает. Энто у тебя обороты ДВС с ДХ. Далее ПИД или ПИ регулЯстор, который "рулит" твоим ИМ на карбофосе. Помоему "этКакДваПальцаНапитоне" :_)))

BOOM
BOOM аватар
Offline
Зарегистрирован: 14.11.2018

Да всё уже придумано, нужно только взять и использовать!

Вот то, что Вам нужно:

КАРБЮРАТОР ВАЗ С АВТОПОДСОСОМ ВОЗДУХА

-NMi-
Offline
Зарегистрирован: 20.08.2018

BOOM пишет:

Да всё уже придумано, нужно только взять и использовать!

Вот то, что Вам нужно:

КАРБЮРАТОР ВАЗ С АВТОПОДСОСОМ ВОЗДУХА

Слушай, я уже предлагал такой вариант и вариант аналогов с опелей и фольцев дремучих...

Сказали, шо я нишарю нифчом, тем более в карбофосах. Ну я и отстал от них _)))

Badwolf
Offline
Зарегистрирован: 28.12.2019

-NMi- пишет:

BOOM пишет:

Да всё уже придумано, нужно только взять и использовать!

Вот то, что Вам нужно:

КАРБЮРАТОР ВАЗ С АВТОПОДСОСОМ ВОЗДУХА

Слушай, я уже предлагал такой вариант и вариант аналогов с опелей и фольцев дремучих...

Сказали, шо я нишарю нифчом, тем более в карбофосах. Ну я и отстал от них _)))

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

-NMi-
Offline
Зарегистрирован: 20.08.2018

Badwolf пишет:

да только в голове от этого не прибавиться) да и не совсем то что нужно

Ну это смотря в чЪей голове прибавитъся, а это момент относительный.

Ладно, я сегодня добрый и подскажу варианты решения твоей проблемы на дурдуине:

18В20 в качестве датчика температуры.

серва с шаговым двигателем с ходом 10-20 мм вполне справится.

любая ардуина. остальное всё решается программно и без всяких проблем.

Делай, ничего сложного тут нет, DIY на один-два вечера "спиффком"  ))_))

wdrakula
wdrakula аватар
Offline
Зарегистрирован: 15.03.2016

Сорри за вторжение! ;)

Я лет 10 назад подарил папе машинку праворукую - Мицубиси Либеро, 2002 года рождения с движком 4G13. Либеро это внутренний вариант 5ого Лансера, чтоб представить можно было.

Это машинка С КАРБЮРАТОРОМ! Да, и не надо смеяться!!! ;))) Как  положено японской машинке японской сборки - ездит она великолепно по сей день.

Но я к тому, что автозапуск на ней, конечно есть. Я тогда был занят и отец в каком-то сервисе Старлайн поставил. И автоподсос на этом карбюраторе без электроники - на простом термоцилиндре. Есть момент, когда приходится чуть покрутить - горячая, около магазина через 10-15 минут. Холодная, или горячая сразу - с полоборота.

-------------------------

Это я рассказал, что если задача - сделать автоподсос на 2106 - то это одно, и решений мильён. А если задача поиграться в Ардуинку и мотивировать себя чем-то условно полезным - то это совсем другое  дело! ;)) Тоже вполне себе осмысленное.

Badwolf
Offline
Зарегистрирован: 28.12.2019

-NMi- пишет:

Badwolf пишет:

да только в голове от этого не прибавиться) да и не совсем то что нужно

Ну это смотря в чЪей голове прибавитъся, а это момент относительный.

Ладно, я сегодня добрый и подскажу варианты решения твоей проблемы на дурдуине:

18В20 в качестве датчика температуры.

серва с шаговым двигателем с ходом 10-20 мм вполне справится.

любая ардуина. остальное всё решается программно и без всяких проблем.

Делай, ничего сложного тут нет, DIY на один-два вечера "спиффком"  ))_))

 

В качестве датчика температуры хочу штатный использовать который на блоке стоит, таблица сопротивлений у меня есть, в качестве датчка оборотов то датчик хола в трамблёре, стоит БСЗ. датчик 12v так что буду цеплять либо через делитель либо стабилитрон.

Вся суть не столько сделать этот автоподсос сколько мозгами пошевелить и наконец-то разобраться в ардуино а то год уже лежит всё руки не дойдут, мне просто проще для понимания если есть какой нибуть шаблон от которого можно оттолкнуться собственно сейчас нашёл несколько подходящих вот сижу изучаю.

 

qwone
qwone аватар
Offline
Зарегистрирован: 03.07.2016

Badwolf пишет:
Вся суть не столько сделать этот автоподсос сколько мозгами пошевелить и наконец-то разобраться в ардуино а то год уже лежит всё руки не дойдут, мне просто проще для понимания если есть какой нибуть шаблон от которого можно оттолкнуться собственно сейчас нашёл несколько подходящих вот сижу изучаю.
Каккой к черту шаблон. Если перед Вами будет нормально написанный код, то даже в нем не разберетесь.  Ведь простой вход в Ардуину это пиджин-Си. Понятный бабушке куховарке. Но на нем ничего путного не получится. А нормальный рабочий код отправит бабушку-куховарку на кухню.

renoshnik
Offline
Зарегистрирован: 11.04.2013
BOOM
BOOM аватар
Offline
Зарегистрирован: 14.11.2018

Я бы на месте ТС, если уж сильно научиться хочется и с машиной повозиться, что то типа «метеостанции в авто» на дуине сделал. Температура «за бортом», в салоне, давления и т.п. А автозапуск по более «классическому решению» сделать. 
Но это я бы так сделал...

-NMi-
Offline
Зарегистрирован: 20.08.2018

wdrakula пишет:

Это машинка С КАРБЮРАТОРОМ! Да, и не надо смеяться!!! ;)))

А кто "фтеме" - тот не смеёцца )))

Я тебе больше скажу - на этих япах и КРУИЗ-КОНТРОЛЬ стоял!!! А ты про автозапуск )))  Японцы - они и в Африке Японцы!!!

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

Задача не нова - её уже многие решали. Например вот.

Не моё. Нарыл когда-то на просторах интернета. Автор Стоцкий П. Ему слово:

...
Кратко о самом устройстве:
- бюджет менее 20 у.е. Эта сумма непосредственно самого устройства и его монтажа в машине, без расходов на инструменты и приборы, необходимые для изготовления и монтажа. Поэтому тем, кто далек от увлечения электроникой, настоятельно советую заручиться поддержкой человека сведущего, что бы не покупать специально для пайки платы паяльник, измерительный прибор и т.д. Это значительно упростит, удешевит и повысит удовольствие от всего процесса. Думаю, каждый сможет отыскать такого человека в своём кругу.
- очень простой монтаж в машине, без каких-либо переделок в автомобиле. Само устройство крепится на "низкой" панели одним болтом и гайкой М4.
- возможность дальнейшего развития проекта, модификаций, внедрении дополнительный функций, интеграции устройства с другой бортовой электроникой и т.д.
- возможность использования для управление любого карбюратора. В случае, если датчик температуры используется другой, чем штатный ВАЗ 2108 это следует учесть.
 
Схема:

 

Программа (не Ардуино ни разу, но переделать можно):

/* Car engine carbiurator control module. Created on: 19-10-2012. Author: Pawel Stocki.
 *
 * Carbiurator is steering by car engine temperature.
 * Temperature signal is from car onboard temperature sensor (NTC type) (mounted by VAZ).
 * U ~11V   on stopped cold engine (all car electrical system are powered only from accumulator).
 * U ~13.1V on started cold engine (all car electrical system is powered from electrical generator).
 * U ~7.8V  on stopped hot engine.
 * U ~8.9V  on started hot engine.
 *
 *  * AtMega8 connected is:
 * PC0 - Actual engine temperature, voltage signal from NTC sensor mounted on engine.
 * PC2 - S_max. Potentiometer to set servo position when actual engine temperature <= minimal.
 * PC4 - S_med. Potentiometer to set servo in medium position (minimal < actual temperature < maximal)
 * PC5 - S_man. Potentiometer to set servo manually, engine temperature is ignoring
 * PC1 - T_min. Potentiometer to set minimal engine temperature. When engine is colder as T_min carbiurator must be opened by S_max setting.
 * PC3 - T_max. Potentiometer to set maximal engine temperature. When engine is warmer as that temperature carbiurator can be closed.
 * PB0 - LED indicator light
 * PB1 - PWM signal for servomotor
 * PB7 - servo on/off transistor driver
 */
#include <math.h>
#include <avr/io.h>
#include <util/delay.h>
#include <inttypes.h>
#include <stdio.h>
#include <stdlib.h>

#define servo PB1 //PWM signal to servo
#define servo_power PD7 //servo power ON/OFF
#define indicator PB0 //indicator LED
#define T_act 1024-measure(0)	//current engine temperature (1024-voltage signal) due temperatur sensor is NTC type.
#define T_max measure(3) //maximal engine temperature (minimal voltage signal from NTC sensor)
#define T_min measure(1) //minimal engine temperature (maximal voltage signal from NTC sensor)
#define S_man measure(5)/8 //servo position manually setting
#define S_max measure(2)/8 //maximal servo position
#define S_med measure(4)/8 //medium servo position
#define zero 95 //servo zero_position signal
#define cold 0 //engine status when T_ACT<=T_MIN
#define warm 1 //engine status when T_MIN<T_ACT<T_MAX
#define hot 2 //engine status when T_ACT>=T_MAX
#define limit 2000

//******************* FUNCTION declaration *************************************************
uint16_t measure(uint8_t canal); //measure canal selection
void wait(unsigned short int time); //time delay function (ms)
int set_servo(unsigned short int pos); //servo setting function
void blink(uint8_t qty); //blink LED function

//******************* VALUE declaration ****************************************************
unsigned short counter=2*limit;
uint8_t x=0;
uint8_t engine; //actual engine status value

int main(void)
{
	//*********************** PORT configuration *******************************************
	DDRB |= (1<<indicator) | (1<<servo); //set PB0 and PB1 (outputs)
	PORTB = 0x00; //clear PortB

	DDRC &= ~(1<<PC0) | ~(1<<PC1) | ~(1<<PC2) | ~(1<<PC3) | ~(1<<PC4) | ~(1<<PC5); 	//clear PC0-PC5 (inputs)
	PORTC = 0x00; //clear PortC

	DDRD |= (1<<servo_power); //set PD7 (output)
	PORTD = 0x00; //clear PortD

	//*********************** ADC configuration ********************************************
	ADCSRA |= (1<<ADEN) | (1<<ADPS0) | (1<<ADPS1) | (1<<ADPS2); //ADC on, prescaler 128, external voltage reference "on"
	ADMUX |= (1<<REFS0);

	//*********************** TIMER configuration ******************************************
	TCCR1A |= (1<<COM1A1) | (1<<COM1B1) | (1<<WGM11); //fastPWM, 10-bit, prescaler 64
	TCCR1B |= (1<<CS11) | (1<<CS10) | (1<<WGM13) | (1<<WGM12);

	ICR1 = 2499;	//start value (20ms pause between impus)
	OCR1A = zero;	//set servo in zero position

	//*********************** main program *************************************************
	while(1)
	{
		//************ ERROR_1: maximal temperature is less (or equal) as minimal **********
		while(T_max<=T_min)
		{
			set_servo(zero); //set servo in zero position, close carbiurator
			PORTD &= ~_BV(servo_power); //turn off servo power
			blink(2); //indicator twice
			wait(1500); //wait (ms)
		}

		//************ ERROR_2: servo maximal angle is less (or equal) as medium angle *****
		while(S_max<=S_med)
		{
			set_servo(zero); //set servo in zero position, close carbiurator
			PORTD &= ~_BV(servo_power); //turn off servo power
			blink(3); //indicator three times
			wait(1500);// wait (ms)
		}

		//********************** AUTO MODE *************************************************
		if(S_man<=2) //manual potentiometer is on zero position, not rotatet at all
		{
			if(T_act>=T_max) //engine is HOT (temperature is higher as set by T_max)*******************************
			{
				if(counter<2*limit) //wait 6 second
				{
					counter++;
					wait(1);
				}
				else //if engine is still hot close carbiurator, turn off indicator, turn off servo power
				{
					engine=hot; //set actual engine state
					PORTB &= ~_BV(indicator); //turn off indicator
					set_servo(zero); //set servo in zero position
					PORTD &= ~_BV(servo_power); //turn off servo power
				}
			}
			else //(T_act<T_max)**********************************************************************************
			{
				PORTB |= _BV(indicator); //turn on indicator
				PORTD |= _BV(servo_power); //turn on servo power
				//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
				if (T_act<=T_min) //engine is COLD (temperature is lower as set by T_min) open carbiurator maximal
				{
					engine=cold; //set actual engine state
					set_servo(zero+S_max); //set servo in maximum position
					counter=0; //reset counter
				}
				//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
				else //(T_max<T_act<T_min) engine is WARM ========================================================
				{
					if(engine==hot) //if engine was hot set servo in medium position immediately
						{
						engine=warm; //set actual engine state
						set_servo(zero+S_med); //set servo in medium position
						counter=limit;
						}
					else //if engine wasn`t hot (was cold)
					{
						if (counter<limit) //wait 3s
						{
							counter++;
							wait(1);
						}
						else //if engine is still warm close carbiurator
						{
							engine=warm; //set actual engine state
							set_servo(zero+S_med); //set servo in medium position
							counter=limit;
						}
					}
				} //==============================================================================================
			}
			x=0; //reset blink counter
		}
		//**************** SLEEPING MODE ***************************************************
		else if(S_man<=12) //manual potentiometer is rotated a little
		{
			set_servo(zero); //set servo in zero position
			PORTD &= ~_BV(servo_power); //turn off servo

			if(x<7)
			{
				blink(1);
				x++;
			}
		}
		//**************** MANUAL MODE *****************************************************
		else //manual potentiometer is rotated more
		{
			PORTB |= _BV(indicator); //turn on indicator
			PORTD |= _BV(servo_power); //turn on servo
			set_servo(zero+S_man); //set servo manual
			x=0; //reset blink counter
		}
	}
}
//******************* FUNKTION definition **********************************************
uint16_t measure(uint8_t canal)		// function for measuring each of ADC canals
{
	ADMUX = (ADMUX & 0xF8) | canal;	//set ADC canal
	ADCSR |= (1<<ADSC);				//set ADSC bit in ADCSR to start konversion
	while(ADCSR & (1<<ADSC));		//wait for end of konversion
	return ADCW;					//return value in 16 bit
}
//*******************
void wait(unsigned short int time) //time delay function, set time delay in ms
{
	for(int t=0; t<time; t++)
	{
		_delay_ms(1);
	}
}
//*******************
//servo setting function, servo rotating slower as possible (less current, longer mechanical life etc.)
int set_servo(unsigned short int pos)
{
	while(OCR1A<pos)
	{
		OCR1A++;
		_delay_ms(11);
	}
	while(OCR1A>pos)
	{
		OCR1A--;
		_delay_ms(11);
	}
	return(0);
}
//*******************
void blink(uint8_t qty) //blink LED function
{
	for(uint8_t q=0; q<qty; q++)
	{
		PORTB |= (1<<indicator); //turn on indicator
		_delay_ms(200);
		PORTB &= ~(1<<indicator); //turn off indicator
		_delay_ms(200);
	}
}
//**************************************************************************************** 

Типа на посмотреть...