Управление вентиляторами двигателя с помощью freeduino
Здравствуйте всем. У меня в планах замена ЭСУД hyundai accent на январь 7, т.к он поддается настройке. Спортивное ПО января не поддерживает работу кондиционера и многоступенчатое управление вентиляторами, т.е он просто его включает и выключает по температуре тосола. В хундае два вентилятора на радиатор тосола и радиатор кондиционера. Работают они на двух скоростях по данной блок-схеме или алгоритму:
Код:
если кондиционер выкл:
скорость вентилятор температура тосола
-30 94,5 102 107
V < 45 тосол off low high
кондиц off low high
45 <= V < 80 тосол off low high
кондиц off low high
80 < V тосол off high
кондиц off high
если кондиционер включен:
среднее давление скорость вентилятор температура тосола
фреона kg/cm^2 -30 94,5 102 107
больше 18 тосол high
кондиц high
меньше 18 V < 20 тосол low low low high
кондиц low low low high
20 <= V < 80 тосол off low high
кондиц off low high
80 < V тосол off high
кондиц off high
low и high это первая и вторая скорость вентиляторов
В электронике я к сожалению не силен, могу совсем чучуть программировать, поэтому для реализации этого алгоритма выбор пал на Arduino. У меня проблема в том что я не могу посчитать длину импульса (функцией pulseIn) датчика скорости, потому что как я понял он у меня не цифровой, а исполнен в виде геркона в панели приборов. Посоветуйте мне что нибудь пожалуйста, я со своими познаниями в тупике. Есть только одна мысль в сторону АЦП для этого импульса.
Спасибо всем :confused:!
Re: Управление вентиляторами с помощью freeduino
Не совсем понял длителность какого импульса тебе нужно подсчитать?
Геркон это слаботочное реле, так же может срабатывать от постоянного магнита, поэтому тоже не понятно зачем тут АЦП
Re: Управление вентиляторами с помощью freeduino
магнит вращается через трос от кпп и замыкает/размыкает геркон (размещённый в приборке).
ЭСУД рассчитывает скорость от длительности замкнутого состояния (я так думаю). У меня на 1 км пути = 2550 импульсов по тех. документации (получается 2550 замыканий геркона). Вот как то так.
На ВАЗах инжекторных например датчик скорости с микросхемой внутри выдает квадратный сигнал (или цифровой импульс). Может ошибаюсь, но он есть датчик холла.
Какая форма сигнала нужна для pulseIn? (не знаю насколько корректный вопрос)
Re: Управление вентиляторами с помощью freeduino
Для pulseIn должен быть TTL, не более 5,5в на входе.
А на контактах геркона скольки вольтовый импульс?
Re: Управление вентиляторами с помощью freeduino
Когда машина стоит и герк. замкнут китайский тестер показывает 7.2, когда еду 3.18
Проблему вроде решил, ответ нашёл на http://www.arduino.cc/cgi-bin/yabb2/...=1244483843/13
Там у человека анемометр (скорость ветра) тоже геркон с магнитом, выдавал пилообразный сигнал. Вообщем на вход помимо провода от датчика кинул +5в (с freeduino) через резистор 20к (какой был), по двору вперёд назад покатался начал что то показывать (смотрю через Serial.Write). Щас поеду прокачусь, посмотрю что там на разных скоростях.
Chip скажи безграмотному что такое TTL? Time to live? т.е время жизни высокого или низкого сигнала?
Re: Управление вентиляторами с помощью freeduino
Транзисторно-транзисторная логика (ТТЛ, TTL)
Диапазон входных напряжений от 0в до + 5 В (уровень TTL)
Re: Управление вентиляторами с помощью freeduino
Поездил с этой схемой. В принципе показывает то что рассчитывал (~32000 мкс) на скорости около 40.
Но местами показывает совсем не то 37, 50 , 18, 323...........
Если поводить чем нибудь например пальцем по входному пину, получается тоже самое.
Chip не знаешь что может быть? Помехи или наводки какие нибудь? Может продумать другую схему, по грамотнее.
В той же теме на arduino.cc, кто то предложил включить через компаратор напряжения LM393, но на практике мой интеллект не осилит :confused:
Re: Управление вентиляторами с помощью freeduino
Нужно подтягивать вход Arduino на землю через резистор, тогда помех не будет
Re: Управление вентиляторами с помощью freeduino
а какой номинал резистора взять? и у меня уже подтянуто +5 ко входу через 20к
Re: Управление вентиляторами с помощью freeduino
Тогда я вообще не понимаю ...
Если с геркона приходит положительный импульс, то почему подтягиваешь к плюсу???
Re: Управление вентиляторами с помощью freeduino
Chip сначала сделал как писали на западном форуме:
Цитата:
You would attach a resistor, say 10k, from the analog or digital input pin to your logic supply voltage, 5V or 3.3V for the Arduino. One of your sensor leads would also be attached to this pin. Then the other sensor lead would go to ground.
The resulting signal may need to be debounced but the first step is to interface the sensor properly.
в переводе через промт:
Цитата:
Вы приложили бы резистор, сказали бы 10 КБ, от аналогового входного сигнала или штырькового вывода цифрового ввода к Вашему напряжению поставки логической схемы, 5V или 3.3V для Arduino. Один из Ваших выводов преобразователя был бы также присоединен к этому штырьковому выводу. Тогда другой вывод преобразователя пошел бы, чтобы заземлить.
Получающийся сигнал, возможно, должен быть debounced, но первый шаг должен соединять преобразователь должным образом.
Но только сейчас заметил что другой "вывод преобразователя" (т.е. геркона) нужно заземлить :o.
Положительный сигнал с геркона я беру с колодки диагностики OBD2 (на хундае он туда приходит на 14 контакт). Панель разбирать и впаиваться как то смущает.
Получается что ground я могу взять в любом месте в машине. Хотя на колодке диагностики есть две земли, одна от корпуса, вторая вроде от блока управления двигателем. Завтра попробую по новому.
Re: Управление вентиляторами с помощью freeduino
Сейчас нет возможности дать развернутый ответ , так как я выхожу с инет с коммуникатора, соеденение не стабильное и ужасно медленное
Re: Управление вентиляторами с помощью freeduino
думал в Москве всё в порядке с жпрсом
Re: Управление вентиляторами с помощью freeduino
Re: Управление вентиляторами с помощью freeduino
надеюсь про меня не забыли
Вложений: 1
Re: Управление вентиляторами с помощью freeduino
Если дейтвительно напряжение с геркона 7в , то тебе нужно добавить 2 резистора по схеме
Re: Управление вентиляторами с помощью freeduino
Спасибо Chip завтра буду пробовать.