Конечно будет лучше
Вид для печати
Конечно будет лучше
Камрады, помогите, сил моих больше нет:)
итак, есть ардуина мега 2560. Делаю спидометр/тахометр в машину
2 порта сидят на attachInterrupt и просто плюсуют счетчики импульсов
использовано прерывание Timer2 с интервалом 100мс для анализа счетчиков
На столе от генератора частоты все прекрасно работает - и спидометр, и тахометр. Ардуина считает все четко, пропусков и лишнего нет.
поставил в машину, подключился к ДХ на трамблере. Тахометр показывает, но ровно то же самое показывает неподключенный спидометр. Какая-то дикая наводка.
перепробовал варианты подключения делителем на резисторах, диодом и оптроном - симптомы одинаковы.
Потом обратил внимание, что даже при отключенных ДХ тахометра и спидометра все равно на экран выскакивают какие-то случайные значения, то есть наводка и тут достает
Как сие вылечить? Уже мозг сломал в попытках разобраться с проблемой?
Длина проводов какая? Подтяжку на входе подключал?
Подтяжка включена.
Пробовал так
пробовал с INPUT_PULLUPPHP код:
pinMode(DP_SPEED, INPUT);
digitalWrite(DP_SPEED, HIGH);
attachInterrupt(INT_SPEED, int_onSpeed, FALLING);
пробовал с событием RISING
Длина каких именно проводов?
От ДХ к ардуине? метр под капотом в салон
От диода к ардуине? Он прямо на макетке стоит, пробовал выносить на 10, на 20 см, никакой разницы.
Если поставить конденсатор, ну, скажем 10мкф между входом дуины и землей, поможет? Или от такого дуина пострадать может? Или ставить его со стороны катода на землю?
Вечером поэкспериментировал. Подпаялся к макетке (которая вставлена в дуину сверху) на 18 порт, перевесил всю обработку скорости на прерывание этого порта. Никуда ничего не подключал, просто от 18 порта повесил кусок провода длиной сантиметров 30 (без диодов, делителей и т.д.). Включил комп в бортовую сеть и начал просто шевелить проводом висящим. В какой-то момент увидел, что показания скорости опять появились. При этом ни на порт тахометра, ни на порт спидометра сигналы не поданы. То есть помеха получается какая-то внешняя вообще.
Я вот ломаю еще голову - это не может быть проблема питания дуины?
у меня дуина запитана от такого девайса http://www.ebay.com/itm/LM2596-DC-DC...3D390359439531 напряжением 9В, и еще один такой же девайс стоит с напряжением 5В для подсветки LCD экранов.
Нужно развязать по постоянке и уменьшить входное сопротивление
Чисто для пробы, залей вложенный скетч и проверь. Первые 2 значения в строке монитора порта - скорость и обороты в явном виде. скорость порта 115200 Схема подключения во втором посте нашей темы, та которая для таврии-ваза. Единственное, что резистор подтяжки поставить 5-6кОм. Схема проверена на двух десятках разных автомобилей
Вложение 18459
Тыксь, ну очередной отчет.
Комп пересобран в металлическом корпусе, питание переделано, на входе куча фильтров. Теперь при заведенной машине помеха при неподключенном проводе тахометра уже не проявляется.
При подключении провода (экранирован, заземление возле коммутатора на массу) тахометра на 6 контакт коммутатора , все равно прет помеха и отражается на показаниях неподключенного спидометра :)
Попробовал вариант диода катодом на 6 контакт коммутатора. Помеха осталась.
Попробовал с делителем 100/47 как у камрадов в венаторе. Вообще ничего не показывает.
Но тут есть подозрение, что 100/47 дает слишком мало тока. В параллель на этих же датчиках (холла в трамблере и скорости) висит электроусилитель руля.
Попробую сейчас поставить делители из серии 10/4.7 или 20/8.5
З.Ы. Что делать с помехой не пойму никак. Обратил внимание, что провод от ДХ трамблера к коммутатору проходит недалеко от ВВ проводов на свечи (сантиметров 15 получается). Может, надо унести подальше проводку?
З.З.Ы. предложенный скетч ничем не отличается по методике от того, что прописано у меня. Но ради эксперимента влил его, почитал сериал - честные нолики в варианте 100/47, временами проскакивают случайные значения от помехи.
Вы невнимательно читали:) То, что датчик скорости идет с открытым коллектором, я знаю. На столе с отдельным датчиком скорости все работает прекрасно. И сигнальный провод на столе подтянут переменным резистором. Кстати, экспериментально выяснилось, что 47К для питания 12.7-13.5 много, терялись импульсы. Остановился на номинале 10К.
В принципе, похоже, я нашел причину всех своих бед. Начал прозванивать мультиметром цепи без БК просто при подключенном ЭУР (электроусилитель руля). Ощущение, что в ЭУРе кроме подтяжки по питанию, еще чего-то наверчено, потому как вольтметр (осциллографа, к сожалению нет) при движении на оооочень маленькой скорости показывал изменение напряжения не в диапазоне 0.3-10В (как пишут в инете и как получалось у меня на столе), а 4.2-4.7В. На тахометре при той частоте мерять цифровым мультиметром бесполезно, оно тупо показывает 3.6В плюс-минус пару десятых.
Завтра попробую развязать сигналы на ЭУР и БК диодами шоттки, ну и теперь надо будет датчик скорости подтянуть 10к резистором к питанию, ибо подтяжка в ЭУР по току обратно не пройдет.
Кстати, тут возникает вопрос: после установки диодов шоттки, в ЭУР подтяжка сигнала по питанию останется, но теперь сквозь диод в обратку не пройдет. Это как-то повлияет на работу ЭУР?
Ну внимательно невнимательно, это нормально))) Несколькими постами выше написано 5-6к. Читал про генератор, это датчик скорости? Размах сигнала генератора какой, как в реалии у ДС? Питание на столе от LM? ЭУР от чего? Если от таза, то в оригинале он подключается параллельно ЭСУД, а там подтяжка к 12 вольтам. По сути развязывание сигналов врядли поможет. На осцилографе разницу у себя я не увидел. Как уже проходили, ардуина в авто( у меня по крайней мере) жутко на все реагирует, если входы висят в воздухе. Попробуй неиспользуемые ноги в скетче отключить или керамикой 0,1 на массу. А так, из личного опыта LM редкосное г...о.)))
Да, на столе питание от ЛМ.
Настольный генератор брал у приятеля. 0-12В ставил, изменял длительность и частоту.
В машине от LM отказался, все переделал - поставил кренку 7809 для питания дуины, кренку 7805 для ЛСД и датчиков, обвесил их с двух сторон гирляндой кондеров (47 электролит, 0.1 и 0.01 керамику) - вроде получшело с точки зрения помехи.
ЭУР от Хюндая какого-то, без понятия. Там из сигналов ДХ с трамблера и ДХ скорости надо было подать. Вот он как раз работает отлично.
В прицнипе, есть для Нивы на раздатку крышка под 2 датчика скорости в параллель, она даже де-то валяется в гараже. Но это жестяк такое громоздить, хочется цивильно сделать.
З.Ы. Что подразумевается под программным отключением неиспользованных ног? Для цифровых портов сделать digitalwrite? или INPUT_PULLUP?
Аналоги, в принципе, все подвешены на делители, так что там свободного ничего не болтается
Про програмно это кне ко мне))) Не понимаю))) А аппаратно должно работать и без таких ухищрений. Отцепи ЭУР и попробуй без него, два датчика это и правда неразумно))) Ардуину я питаю 5 вольтами, и по схеме хорошо и встроенный крен побоку.
5 вольт питания дуины лично у меня оставили ощущение нестабильности. Уж как-то ни с того ни с сего она у меня начинала подвисать через какое-то время. Перевел на 9В - подвисаний нет. Может, к тому моменту просто софт изменился, может совпало, но в 5 вольт питания я верить перестал.
Разводку уже спаял :) Так что сегодня попробую разнести все это хозяйство. Если просветления не наступит, на крайняк попробую сляпать что-то вроде компаратора с фильтром (на вход оба ДХ, на выходе чистые раздельные сигналы на ЭУР и БК).
По поводу керамики на незадействованные порты задумался. Но чет мне кажется, что при наличии входных фильтров по питанию, логичнее свободные порты навесить делителями не подавая сигнал. Контакт с очищенной от помех массой уже будет, а потом при необходимости можно задействовать порт просто подачей сигнала.
Теперь вот почитал по поводу Венатора и задумался. Старый андроидовский планшет у мну в хозяйстве есть, USB host шилд для дуины тоже есть. Главный минус венаторовского софта для меня - там нет части функций, которые мне нужны. А под андроид я пока еще даже не пробовал писать. Ну то уже лирика. Если сейчас БК удастся нормально запустить, займусь потом своим софтом под андроид.
По поводу отсутствующих функций. У меня в Ниве стоит ГБО, посему я себе сделал раздельные одометры по бензину-газу. Ибо вечно хер поймешь расход и остаток топлива на газу. Ну и еще по мелочи всякие автовключения света по датчику освещенности, ДХО, таймер подогрева зеркал/заднего стекла и т.д.
З.Ы. После всех этих моих игр с БК для Нивы, я теперь искренне не могу понять какого хрена в свежем Авенсисе супруги не реализовали всех этих мелочей на заводе. Там же и работы, и деталей на 5 копеек.
В Венаторе есть все)))
Внутри ардуины 5 вольт. Как это она нестабильно работает??
Так, ну, пожалуй, можно продолжить описание моего цирка.
Собрал на дуине примитивный осциллограф, через делитель 100/47 подал сигнал на А0 с ДХ трамблера. Рисуем картинки - периодический сигнал, ровненький, аккуратненький. Только вот амплитуда 6В.
Офигел, полез в инет. Упс: http://www.autodiagnos.com.ua/Diagnos/VAZ2109_karb.htm пишут, что там и должно быть 6В. Тогда я перестаю понимать как работает ваш Венатор. Или на карбовой машине типа моей никто раньше его не запускал?
Рою дальше. Звоню мужикам, которые продали мне ЭУР. Естественно, они ничего внятно объяснить не смогли, но в процессе разговора выяснилось: экспериментально они вычислили, что им пофиг напряжение с ДХ, проверяли на разных машинах и системах зажигания. При делителе или опторазвязке такое невозможно - либо сгорит, либо не даст сигнал. Такое возможно только если у них все работает по схеме диода в сторону ДХ. Это, кстати, объясняет тот факт, что когда я попытался развязать сигнал двумя диодами шоттки катодами к ЭУР и БК, ЭУР перестал работать.
И это, по идее, может объяснить почему у меня настолько смазанный сигнал в ДХ скорости - кроме подтяжки сигнала к питанию, там еще добавляется некий ток от ЭУР.
Итого, получается, что единственный вариант для меня как-то вычитать сигнал - ставить 2 диода катодами к ДХ скорости и ДХ трамблера. Я правильно понимаю?
З.Ы. И вот тут тогда не совсем понятен вопрос. На самом датчике скорости никакого резитора для ОК нет. То есть он, по идее, должен стоять где-то в ЭУР. Но как тогда оно работает если резистор получается за диодом?
UPD:
Пришла мысля. А что, если изменить схему таким образом: сначала идет стабилитрон на 7.5В ( на случай, если с ДХ вдруг пойдет напряжение 10-12В), потом делитель 20/40 (который из 7.5В даст ровно 5, а из 6В получится 4В), дальше порт дуины. В этом случае 4В достаточно для прерывания по RISING. Остается вопрос какое напряжение выдает ЭУР в сторону ДХ если он сидит диодом в сторону ДХ. Чтобы не было ложных сработок
Цирк закончен, ЭУР с дуиной разведены по своим углам, всем спасибо:)
Проблема датчика скорости решена при помощи повторителя на ОУ. 47к резистор на сигнальном проводе подтянут к +12, оттуда же взят сигнал на БК. Дальше LM358 в режиме повторителя, на выходе сигнал в ЭУР. По осциллографу получился чудесный меандр и на входе, и на выходе. ЭУР на сигнал теперь никак не влияет, амплитуда сигналов с двух сторон ОУ честные 12В.
Проблема датчика холла в трамблере с его 6В амплитуды решена по сути так же. Выход с ОУ на ЭУР. А вот на входе в БК стоит схемка на стабилитроне 5.1В с делителем 1.2, на вход дуины приходит такой же красивый сигнал 4В.
Вложение 18471
добавил.
Только подумал, что интереснее было бы вообще сразу выделить чистые меандры и для БК и для ЭУР, поэтому взял два сдвоенных LM358.
Собрал, подключил - работает.
Только оказалось, что конденсаторы можно не ставить, после ОУ шума нет.
Ну и заодно попробовал еще вариант включения дуины: диод катодом в сторону выхода ОУ - тоже работает прекрасно. Так что тут на вкус и цвет :)