Профессура помогите!
- Войдите на сайт для отправки комментариев
Уважаемые форумчане, требуется ваша не бескорыстная помощь в создании скетча.
суть вопроса : многим известна сложность запуска карбюраторного двигателя в морозный день, да и не очень приятно находиться в непрогретом авто, а уж тем более корректировать плавающие обороты ручкой подсоса которая постоянно заедает. вот так и родилась идея о создании данного девайса.
за основу решено было взять имеющийся ардуино уно . пересмотрев массу инфы о подобных наработках, а они как не странно все на шаговиках, я решил отойти от сложившихся традиций и вместо привода использовать сервопривод(поскольку и он имеется в наличии).
теперь о принципе работы. за отправную точку примем : температуру охлаждающей жидкости.
при включении зажигания подается питание на всю схему. первым делом проверяем температуру и если она ниже 80 С то, прикрываем заслонку пропорционально температуре в этом поможет серва механически связанная с заслонкой, чем ниже температура тем боьше заслонка прикрывается, при 80 открывается полностью. за условную отчетную точку температуры решено принять -20С. так при -20 и ниже заслонка полностью закрыта. хотя это условие можно реализовать програмно и корректируемо. датчик температуры решил использовать штатный. подключение простое : у датчика всего один провод(+) корпус на минусе. подключать буду через резистивный делитель 47к в землю, 100к к плюсу датчика, средняя точка на 0 аналоговый вход.
после того как заслонка выставлена запускается проверка оборотов. ее решил сделать на внешнем прерывании по фронтам импульса используя (0 ) прирывание то есть 2 цифровой вход. считать будем импульсы от коммутатора зажигания ,( на 4 тактных 4 горшковых двигателях : 2имп= 1 оборот) на ваз 2109 это 6 контакт. можно и от бобины низковольтный контакт. подключаем аналогично датчику температуры. так вот. как только двигатель запущен, считаются обороты и посредством той же сервы приводятся в уровень 1500об/мин. для этой цели будет логичным использовать ПИД-регулятор.
серва будет подключена к 9 шим пину. так же нужна индикация: 8 шим пин будет светодиодом, который будет включаться как только заслонка примет некое положение отличное от "полностью открытая" и обратно, гаснуль при переводе заслонки в "открыта".
следующий этап залючается в том чтобы подать +5 вольт на 10 шим пин при наборе температуры в районе 65С . это позволит включить печку. но данная функция должна включаться только после того как данная температура набрана в прцессе прогрева, а не тогда когда производится повторный запуск прогретого двигателя. как это правильнее осуществить пока не знаю, но думаю что 3 минутный таймер сможет помочь. если с момента запуска до достижения 65С прошло 3 мин и более-включаем, если не прошло _то нет. все просто. или как то иначе.
управляемый прогрев необходимо продолжать вплоть до достижения температуры 90С. как только данная температура набрана, серва полностью открывает заслонку и отключается. но +5 с 10 пина не снимается еще 5 минут. по истечении 5 промежутка времени все отключается и переходит в сон.
Как говорилось выше, помощь не бескорыстна. проект для личного использования, при необходимости схема и готовый скетч будут выложены здесь же открыто. все текущие коррекции скетча , преобразования температур в напряжение и пр. беру на себя. жду ответа здесь или по почте. gav707090@yandex.ru
не очень приятно находиться в непрогретом авто
поставьте предподогреватель Webasto или Eberspacher, тогда в машине будет уже тепло когда вы только сядите.
корректировать плавающие обороты ручкой подсоса которая постоянно заедает
а не легче поставить карбюратор с автоматическим подсосом?
Ну раз тут флудят. То и я пофлужу. Писать не мешки ворочать. В логике ошибки.
1. Ниже 0 градусов надо запустить "предпусковой подогреватель" и довести до +4 градуса охлаждающую жидкость. Например вебасто в Швеции.
2. Купить готовую "електронику кнопку старта" заводского изготовления, как я понимаю в вашем случае для карбюраторного двигателя. Например в Китае.
3. А вот кнопку можно уже поразвлекатся ардуинкой понажимать. Например если не хотим купить заводского изготовления сигнализацию с дистанционным пуском. Например в Москве.
4.Все узлы полные автоматы. Работают максимально независимо. Сами принимают решения по температурам, аккумуляторм, оборотам. Отстутствие одного из узлов не влиет на ручной запуск в целом.
5.Про подсос. Изучаем мат часть карбюраторного двигателя с подсосом. На сколько вытягивается при
5.1. -30...-10=100%
5.2. -10... 0... +4=30%
5.3.+4... +30= Не вытягивается!!! (Исключение сырая погода = 1%)
Вдумчивао перечитываем пункт 1-ый.
http://art1.by/vaz/
возможно и легче, но в моем случае решено использовать именно то , о чем написанно выше!
Ну раз тут флудят. То и я пофлужу. Писать не мешки ворочать. В логике ошибки.
1. Ниже 0 градусов надо запустить "предпусковой подогреватель" и довести до +4 градуса охлаждающую жидкость. Например вебасто в Швеции.
2. Купить готовую "електронику кнопку старта" заводского изготовления, как я понимаю в вашем случае для карбюраторного двигателя. Например в Китае.
3. А вот кнопку можно уже поразвлекатся ардуинкой понажимать. Например если не хотим купить заводского изготовления сигнализацию с дистанционным пуском. Например в Москве.
4.Все узлы полные автоматы. Работают максимально независимо. Сами принимают решения по температурам, аккумуляторм, оборотам. Отстутствие одного из узлов не влиет на ручной запуск в целом.
5.Про подсос. Изучаем мат часть карбюраторного двигателя с подсосом. На сколько вытягивается при
5.1. -30...-10=100%
5.2. -10... 0... +4=30%
5.3.+4... +30= Не вытягивается!!! (Исключение сырая погода = 1%)
Вдумчивао перечитываем пункт 1-ый.
http://art1.by/vaz/
теперь о принципах работы подсоса.:: -10 и +85 примем за 100%то 5 градусов ~5% отсекаем все что до -10 и после 85. так же не стоит забывать что штатный датчик работает не стабильно линейно, при повышенных температурах напряжение смещения меняется достаточно чувствительно, а вот при низких температурах сопротивление практически одно и тоже.!!
потому уважаемые коллеги предлагаю оставить немного покурить лишние советы которые мало чем помогают в данном проекте.
;)
насколько прикрывать заслонку, на 30% или как то иначе можно легко подправить в скетче внесением либо ограничения, либо опытным путем выявить необходимое положение при той или иной температуре. но суть немного не в том каким образом запускать и при каком положениии заслонки. суть в том чтобы стабильно держать обороты после запуска. на уровне 1500. так что уважаемый art100 давайте будем думать в этом направлении.
Вам слово.
арт100 отпишись. gav707090@yandex.ru
Лень думать. 00:03 спать пора идти. Я проблем на вижу. Я решение уже дал. У меня -30 мороза часто. Мои:Инжектор при -30 заводился,заводится, думаю будет заводится. Карбюратор при -30 мороза всегда заводился,заводится, уверен всегда будет заводится. На инжекторе педальку газа Да ножкой поднажимаю. На карбюраторе фильтр правильно повернут подсос 100% 3 качка педалькой газа. Пока машина греется все равно вокруг машины ходишь 5 минут и сбиваю лед со стекол пока нитинакала подплавят. Не интересно. Вот электромобиль забабахать может будет интересно.
Pnewmoslon Как продвинулись дела в перед? думаю поставить похожую систему для поддержания оборотов на свой IFA W50. будет как автопилот.
да пока как то своими силами ковыряю скетч, делаю робкие шаги к изучению ПИД. очень рекомендую если бессоница одолевает.))
давайте будем вместе код писать, не думаю что здесь нужен ПИД.. можно и без него обойтись. как вы обороты "смотрите"? Я вот думаю как мне это сделать? У меня дизель, причем старый без всякой электроники.. придется каким то способом к генератору подключается.
Что я хочу сделать:
1. Поставить серво на педаль газа которая будет подключена к ардуине.
2. Вывести кнопку(с лампочкой внутри) на панель управления которая будет подключена к ардуине.
3. Подключить ардуино через оптопару к генератору, к лягушки педали тормоза.
Принцип работы: Едим например со скоростью 80 километров в час. Нажимаем на кнопку, загорается зеленый свет - "автоматический газ" включен и поддерживает скорость. Один раз нажимаем на тормоз, лампочка тухнет - "автоматический газ" выключен. Еще не уверен но может сделаю и так что например: когда автопилот включен и поддерживает скорость, но машина едет в гору и мощности мотора не хватает чтобы поддержать заданные обороты - в кнопке загорается красная лампочка. До тех пор пока заданные обороты не будут соответствовать настоящим.
Логика моего кода будет примерно такова:
Режим "ожидание" - Ставим серво в положение 0. Считываем показания кнопки включения "автоматический газ". Если кнопка была нажата переходим в режим "подготовка". Все лампочки выключены.
Режим "подготовка" - Мигаем красной лампочкой. Считываем несколько раз показания генераторa и записываем эти показание, после переходим в режим "работы". Смотрим не нажата ли педаль тормоза, если да то переходим в режим "ожидание".
Режим "работа" - Зажигаем зеленую лампочку. Считываем показания генераторa и в зависимости от них управляем сервой. Смотрим не нажата ли педаль тормоза, если да то переходим в режим "ожидание".
Ну как то так
оч интересно, но в моем случае пид просто необходим. в вашем случае проще поставить серву прямо на тросике или тяге газа, но хочу вас огорчить, слишком большое уилие требуетсч для этого и серва которая будет в этом режиме пахать обойдется вам ой как дорого. может лучше готовый комплект круиз контроля с приветом из китая??? дешевле будет и надежнее
только серву на такой ответственный участок поставь хорошую
и лучше цифровую. питание то ведь у тебя не ограничено
хотя для проверки можно поставить и обычную
ага, серва около 40 гринов выходит с усилием более 30 кг на см, с металлическими и карбоновыми шестернями. питание от 4.8 до 7.2вольта
для нее питание нужно отдельное через преобразователь понижающий стабилизированный подавать. иначе дуину спалишь на первой минуте работы с такой сервой. у нее потребляемая около 1 А
зацени Жека, сегодня доделал. сейчас пробую править, правда все цифры от болды, потом править буду по сериал
и что 1А? не самое большое потребление. XM1584 или MP1584 ищешь на али и радуешься. ток до 3 ампер
там такое большое усилие думаешь нужно?
меня смущает оформление и goto как серпом по одному месту
у тросика моло того что трение большое, так и еще длинна хода не малая около 10 см. теперь считаем: 38кг/см, значит для того чтоб протягивать 10 см тросика нужно как минмум 5 см рычага, и того 38 /5=7.6 кг и это без преодоления трения тросика или тяги
Жека, я же только учусь. не все сразу, через некоторое время и оформление появится и прочие хитрости писания скетчей
так что 38кг/см еще может оказаться и мало
хотя бы от goto избавься
но какое усилие нужно на троссик так и не прозвучало
а 1 А это при нормальной нагрузке, а при той что будет на тросике все 3 и вылезут
завтра проснется и напишет какое усилие)) я же его тросик не дергал))
на 2109 ваз газ тросик около 3 кило, подсос 5кг
хотя бы от goto избавься
но какое усилие нужно на троссик так и не прозвучало
3 кило на каком рычаге?
может тогда использовать шаговый с редуктором
у меня не тросик..:) там тяга идет... и сила немалая нужна, нога давит устает когда долго едешь..
http://funkyimg.com/i/RYCu.jpg
можно вызвать функцию и гонять определенное количество раз с использованием for или бесконечно по while
у меня не тросик..:) там тяга идет... и сила немалая нужна, нога давит устает когда долго едешь..
http://funkyimg.com/i/RYCu.jpg
ты бы еще танк показал)))
3 кило на каком рычаге?
может тогда использовать шаговый с редуктором
можно вызвать функцию и гонять определенное количество раз с использованием for или бесконечно по while
а фор пока не трогал. думаю и до него доберусь, но не сегодня. устал, на работу утром рано
3 кило на каком рычаге?
может тогда использовать шаговый с редуктором
у меня серва подсос тянет легко, запас есть около 2 кг, стоит прямо на карбе, влагозащищеная, усиленная.
скетч можно юзать, настройки параметров температуры делаем сами)) вот так то)) сделано лично при поддержке jeka_tm, в чем собственно ему благодарность.
скетч можно юзать, настройки параметров температуры делаем сами)) вот так то)) сделано лично при поддержке jeka_tm, в чем собственно ему благодарность.
если проект реализовался, можно схему подключения, резисторы и т.д. и фото установенного устройства?
с какой целью серву включаешь только в фукнции zapuskPid(). там же отключаешь. защита от чего то?
1. в 37, 40, 48, 49 строке лишние скобки
2. в 39 зачем каждый раз объявляешь? объяви один раз в самом начале
3. в 4 строке реально нужен такой тип?
4. в 40 и 44 если уже дал название пину зачем управляешь через номер пина
ну и так пожелания:
1. пины объявляй через define
2. тяжело читается код. структурируй например. в самом начале пины объяви п.1. потом например переменные, потом еще что то.
через define также можно объявить константы в самом начале (которые в строках с 40 по 50) удобнее будет настраивать
год назад тема была))) думаю он сюда уже не заходит((
жека, я смотрю ты ему много помогал, не знаешь как можно сделать что бы на газ жмешь, и пид не начинал считать, а то уберет он мне подсос и все. газ отпустишь машина заглохнет.
я ему почти не помогал. почитай. так общие разговоры
а вообще врое если добавить еще одно условие в функцию zapuskPid() выполнять только если газ не нажат или газ ниже заданного уровня
как програмно я понял сделать. а как объяснить что газ нажал, датчик какой ставить... вот в чем вопрос.. концевик обычный не подойдет, потому что когода подсос вытаскиваешь газ тоже откланяется... и как ардуинке объяснить что не она нажала на газ, а именно я...
или ты сам голову ломай. смотри свои педали что и как там можно сделать. или фото выложи чтобы было о чем думать
думаю додумаюсь, когда придут все компоненты, будем пробовать. хотелось бы конечно что бы в мозгу у ардуинки было что то типа, " так, я не трогал подсос а обороты почему то резко выросли, значит не буду сдвигать серву" или что то наподобие.
ну что то типа такого
придумал. ставлю на коробку передач геркон, и когда скорость включена, не важно 1,2,3 и т.д. система автоматики не активна, а когда на нейтрали, будет дальше регулировать заслонку. и переделал код без пид регулятора)
подтяжка к минусу хуже чем к плюсу по защищенности. а вообще очень тяжело читать код, и кстати его можно сворачивать
не знаю зачем поправил под свой вкус
единственное странно. как реально работает if потом else if а потом еще else. вроде как снова должно быть else if
а почемуу бы не работать else. если ни одно условие не верно то выполнить функцию, if добавляют только для заданияя определенного условия я так понял. и еще вопросик. как мне можно в этом скетче использовать серву? что бы она шагала на 1 градус допустим в плюс или минус?