Получить скорость с датчика Тойоты, если до нуля ток не падает?

black-stripe
Offline
Зарегистрирован: 03.07.2018

Всем привет.

Делаю спидометр на toyota celica 1996 г.в..
Arduino uno.
Замерил вольтметром сигнал на пине SPD входящем в мозг двигателя и там:
1. Во время стоянки 0,2 В., иногда 5 В., но колебаний нет;
2. Во время движения амплитуда между ~2,35 В. - 2,55 В.
Замерил через аналоговый вход ардуины:
1. На стоянке 230 из 1024;
2. В движении ~280-300 из 1024, диапазон 20.

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

Есть идеи как считать импульсы?

Спасибо

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

1. Посмотреть сигнал осцилогрофом.

2. Если нет осцилографа - достать осцилограф и см. п.1

3. Ну на крайний случай смотреть напряжение тестером, но машину перемещать МЕДЛЕННО и на 1-2 метра. Датчик скорости  - несколько тактов на 1 м пробега. Точно не помню что то вроде 6/10 тактов на 1 м. Можно на нетрали покрутить вывешеное колесо, но может не прокатить.

black-stripe
Offline
Зарегистрирован: 03.07.2018

Выяснил следующее.
На ардуину приходит 0В или 5В, можно остановиться и тот, либо другой сигнал будет постоянным.

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

Как исправить?
.

black-stripe
Offline
Зарегистрирован: 03.07.2018

P.S.
Датчик подключен напрямую (врезка в провод между приборной панелью и блоком управления двигателем) во второй пин.

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

black-stripe пишет:
Выяснил следующее. На ардуину приходит 0В или 5В, можно остановиться и тот, либо другой сигнал будет постоянным.
 

Так и должно быть.

black-stripe пишет:
Если двигаться очень медленно, то видно, что при подаче на ардуину 5В с датчика скорости, в течение всего времени подачи будет срабатывать прерывание, а остановится оно только когда 5В пропадут. Пробовал разные режимы прерывания и пины. Как исправить? .
Насколько я смог понять что ты хотел сказать - тебе надо настоить чтобы прерывание срабатывало по фронту или спаду импульса. 

triac
triac аватар
Offline
Зарегистрирован: 03.05.2018

black-stripe пишет:
P.S. Датчик подключен напрямую (врезка в провод между приборной панелью и блоком управления двигателем) во второй пин.

Датчик надо подключить к пину через резистор 100 Ом ... 1 кОм. Иначе Ардуино может глючить от помех. Резистор расположить поближе к пину.

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

triac пишет:

black-stripe пишет:
P.S. Датчик подключен напрямую (врезка в провод между приборной панелью и блоком управления двигателем) во второй пин.

Датчик надо подключить к пину через резистор 100 Ом ... 1 кОм. Иначе Ардуино может глючить от помех. Резистор расположить поближе к пину.

И стабилитрончик  для защиты входа ардуинки.

black-stripe
Offline
Зарегистрирован: 03.07.2018

Да, но у устроят и варианты отдельно.

black-stripe
Offline
Зарегистрирован: 03.07.2018

Спасибо за советы. Резистор и стабилитрон включу в схему.

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

Победил следующим образом:
1. Подпаял экранированный USB кабель с обратной стороны платы к пину с прерыванием и земле.
2. Отвернул кабель в сторону от всех прочих проводов.

Вуа-ля! Идеальная работа без помех.
Вечером проверю в автомобиле, ведь, помехи генератора и прочего могут быть не менее значимыми.

Землю беру с кузова авто, не смотря на то, что ардуина запитана зарядкой от прикуривателя?

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

black-stripe пишет:
Землю беру с кузова авто, не смотря на то, что ардуина запитана зарядкой от прикуривателя?

Убедись что земля на разъеме зарадке и на кузове это одна и таже земля. А то всякое бывает с этими зарядками.

black-stripe
Offline
Зарегистрирован: 03.07.2018

Как правильно проверить?

black-stripe
Offline
Зарегистрирован: 03.07.2018

Ну что ж.
Скорость ардуина отображает.

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

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

Новый вопрос.
Хочу снять ограничение скорости в 180 км/ч.
Оказалось, что датчик скорости их коробки передач приходит в приборку, а из приборки в мозг идет провод, который приборка замыкает и размыкает на землю, сам же мозг выдает постоянные 4,5В.

Вопрос: как считать количество замыканий на землю, если провод из приборки я завел в ардуину?
Как организовать замыкание 4,5В от мозга на массу, чтобы имитировать его связь с приборкой и не получить ошибку?

Спасибо.

P.S.
Возможно проще будет править сигнал до того как он в приборку попал, нужно посмотреть, что туда приходит.

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

black-stripe пишет:
Как правильно проверить?

померь сопротивление земли на самой зарядке между минусом разъема который вставляешь в прикуриватель и минусом который выходит на разъем вместе с +5В. Это должна быть одна земля. В большинстве случаев так и есть. но убдиться лишним не будут.