МЕЖДУНАРОДНЫЙ КЛУБ ВЛАДЕЛЬЦЕВ И ЛЮБИТЕЛЕЙ CHEVROLET NIVA, LADA NIVA, LEGEND, TRAVEL   18+

 




 [ Сообщений: 59 ]  На страницу Пред.    След.
Автор Сообщение
 
Не в сети
 Заголовок сообщения: Re: Arduino - кто нибудь с ним работал?
Сообщение Добавлено: 18 янв 2017, 14:44  
Новичок
Новичок

    5
  •  31
  • 39

  •  29 авг 2013, 09:18

Блог: Просмотр записи (0)
@Lomonosov , понял, а в последствии что-нибудь будет по этому программному флагу "рулиться" ?

Хотя интересно посмотреть этот простой вариант в исполнении уже на машине и особенно как он в эксплуатации себя покажет, в морозы, тряске и т.д. Интересно как будет жить ардунина.


Вернуться к началу
 Профиль  
 
 
Не в сети
 Заголовок сообщения: Re: Arduino - кто нибудь с ним работал?
Сообщение Добавлено: 18 янв 2017, 15:36  
Аватара пользователя
Старожил
Старожил

    790
Автор темы
  •  2417
  • 44
  •   3

  •  30 ноя 2006, 16:52

  •  Москва, САО РШН 2016г.в. 120 ткм

Блог: Просмотр записи (0)
Алексей Козлов писал(а):
а в последствии что-нибудь будет по этому программному флагу "рулиться" ?
Нет. Это показатель для программы что машина заперта, и приказ ничего не делать пока флаг установлен. Флаг слетит при открытии любой двери.
Алексей Козлов писал(а):
Хотя интересно посмотреть этот простой вариант в исполнении уже на машине
На предыдущей машине это было реализовано в БК Шматрикс. Очень удобная фича. Но тот программист из штата ушел, и в новом БК этой фенички нет:
http://www.chevy-niva.ru/viewtopic.php?p=2097744#2097744

_________________
"...правильнописание у меня хорошее, но почему-то хромает..."(с)


Вернуться к началу
 Профиль Personal album  
 
 
Не в сети
 Заголовок сообщения: Re: Arduino - кто нибудь с ним работал?
Сообщение Добавлено: 20 янв 2017, 16:42  
Аватара пользователя
Старожил
Старожил

    790
Автор темы
  •  2417
  • 44
  •   3

  •  30 ноя 2006, 16:52

  •  Москва, САО РШН 2016г.в. 120 ткм

Блог: Просмотр записи (0)
Задал вопрос на форуме ардуинщиков, но тут тоже продублирую. Тем более, я так понимаю, с аппаратной частью тут многие знакомы. Надеюсь вы мне поможете дельными советами, т.к. мои познания в электротехнике остались в девяностых годах на уровне детекторных приемников. Мне необходимо подключиться к трем датчикам: педали газа, датчика скорости, концевика салонной двери.

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

В аппаратной части меня смущает одна вещь – в бортовой сети могут быть «всплески» (скачки напряжения) которые могут достигать 100В. Это обусловлено наличием нескольких десятков электромеханических реле (не всегда с шунтирующими диодами или резисторами) и большого количества коллекторных двигателей (от моторчика омывателя до электровентиляторов радиатора охлаждения и стартера).

Так как есть проблема ограниченного места на аппаратной плате, которая будет соразмерна плате NANO, то от откровенно лишних деталей хочется отказаться.

Теперь вопросы по конкретным реализациям аппаратной части.

1. Подключение к датчику педали газа (так называемая электронная педаль газа). Тут мне нужно определить когда она нажата, т.е. напряжение на датчике педали выше определенного порога. Датчик педали газа представляет из себя переменный резистор с дополнительными постоянными резисторами. Точнее он состоит из двух синхронизированных переменных резистора для самотестирования. Но данные естественно буду снимать только с одного. На схеме для датчика педали зеленым цветом даны реально снятые показания сопротивлений с моего конкретного датчика. На датчик подается стабилизированное опорное напряжение +5 вольт от контроллера двигателя. Реальный диапазон выходных напряжений датчика 0,79..4,24В. Датчик будет подключен к аналоговому входу Ардуины. По идеи вполне достаточно его подключить напрямую. Никаких «всплесков» на этом входе быть не должно ввиду отдельного стабилизированного питания датчика. Но опять же в проводах идущих к ардуине могут (теоретически) возникать паразитные наводки со скачками больше 5 вольт.
Изображение
Стабилитрон Vd1 должен защищать от всплесков.
Конденсатор С1 должен защищать от потери механической связи в механическом резисторе. Хотя может вносить некорректные показания в данные автомобильного контроллера, т.к. при «педалировании» будет происходить рассинхронизация напряжений снимаемых автомобильным контроллером с двух переменных резисторов педали газа.
Резистор R1 должен защищать от ошибочного подсоединения данного вывода напрямую к +12В.
Что из этого нужно, а чего можно отказаться, а что откровенно вредно?

2. Подключение к датчику скорости. Тут нужно определить когда частота датчика выше определенного порога. Датчик представляет из себя транзисторный ключ работающий от оптопары (в реальности с подтягивающим резистором 1,6кОм). Датчик будет подключен к цифровому входу Ардуины и отслеживаться по прерыванию на спад фронта.

Частота датчика меняется от 0 до 250гЦ, ну пусть даже до 300гЦ (соответствует 180км/ч). Соответственно дает прямоугольные импульсы с амплитудой напряжения питания (+12В или 0В). Датчик будет подключен через делитель (R2 и R3) к цифровому входу ардуины.
Изображение
Стабилитрон Vd1 должен защищать от всплесков, которые могут приходить на выход датчика скорости через его питание.
Конденсатор С1 должен сглаживать дребезг при смене фронта. Время RC (67% релаксации) равно 3,3нФ*47кОм = 155мкСек, что составляет 5% от периода (1/300=3300мкСек) или 10% от полупериода на максимальной частоте. Не знаю есть ли в этом смысл (подсмотрел в схеме бортового компьютера).
Резистор R1 должен обеспечить дополнительную подтяжку к +12В, если по какой то причине помрет штатная подтяжка в датчике, или произойдет обрыв с контроллером и приборкой (где тоже есть свои подтягивающие резисторы).
Что из этого нужно, а чего можно отказаться, а что откровенно вредно?

3. Подключение к концевику дверей. Тут нужно определить открытость/закрытость двери. Концевик будет подключен через делитель (R2 и R3) к цифровому входу Ардуины. Аппаратный алгоритм работы концевика такой же как и у датчика скорости, а именно дает логические +12В или 0В.
Изображение
Стабилитрон Vd1 должен защищать от всплесков, которые могут быть в бортовой сети.
Конденсатор С1 должен сглаживать дребезг механического выключателя, хотя в программе обязательно будет защита от дребезга.
Резистор R1 должен обеспечить дополнительную подтяжку к +12В, если по какой то причине пропадет штатная подтяжка (перегорание салонной лампочки, обрыв провода к блоку центрального замка и т.п.).
Что из этого нужно, а чего можно отказаться, а что откровенно вредно?

4. Выход – управляющий импульсный сигнал (0,5 сек) на просадку логического вывода блока центрального замка. В этом логическом выводе стоит подтягивающий резистор 500Ом, который дает ток просадки 30мА. Поэтому выход будет организован транзисторным ключем с одним каскадом.
Изображение
Резистор R1 задает ток базы транзистора 1мА.
Резистор R2 подтягивающий к земле.
Резистор R3 защитный, от неправильного подключения, чтобы не спалить транзистор или всю аппаратную плату.
Что из этого нужно, а чего можно отказаться, а что откровенно вредно?

5. Питание. Самое для меня сложное. Повторюсь, выходной ток ардуины – это импульс 0,5 сек с током 1мА на базу транзистора. Т.е. плата ардуино будет потреблять свои 20+/-2мА заявленные в даташите (и проверенные тестером в реальности). Изучив даташит встроенного линейного стабилизатора напряжения (ams1117 t50e28hc) и советы carmackа пришло осознание, что его должно вполне хватить для моих целей. Городить внешний линейный стабилизатор, на том же LM7805 без дополнительных потребителей и выходов не имеет смыла. Нужно только защититься от скачков напряжения. На схему я запихнул все свои познания с 90-х годов)))
Изображение
Диод Vd1 защитный от переплюсовки.
Резистор R1 токоограничивающий. Максимальное падение напряжения 2В, ну пусть даже будет 3В (при токе потребления 30мА).
Конденсаторы С1, С2, С3, С4 сглаживающие скачки (не знаю зачем так много и какого номинала – срисовал с типовых схем).
Индуктивность L1 для блокирования скачков напряжения (насколько я помню, как она работает).
Стабилитрон Vd1 опять же – защита от скачков.


Кто осилил до конца, прошу прощения за много букв и графики! Хотел максимально подробно описать свое понимание проблемы, чтобы получить дельные советы по существу вопросов.

_________________
"...правильнописание у меня хорошее, но почему-то хромает..."(с)


Вернуться к началу
 Профиль Personal album  
 
 
Не в сети
 Заголовок сообщения: Re: Arduino - кто нибудь с ним работал?
Сообщение Добавлено: 20 янв 2017, 19:18  
Аватара пользователя
Профи
Профи

    2100
  •  12848
  •   1

  •  18 окт 2006, 21:12

  •  Карелия, Петрозаводск

Блог: Просмотр записи (0)
Как вариант вместо vd2 поставить супрессор
И 100 ом на входе не нравятся мне, не будет ли грется vd2 он вроде 0.5 Вт, а по моим прикидкам через vd2 может пойти и 2.5+ вт если заглючит геннадий. Поправь меня если я напутал

_________________
Citroen C4 II '12 VTi+AL4
ШН '05 1.7-GT17, 1.6-16V TD05-16g (продал)
ШН '04 stock (продал)


Вернуться к началу
 Профиль Personal album  
 
 
Не в сети
 Заголовок сообщения: Re: Arduino - кто нибудь с ним работал?
Сообщение Добавлено: 20 янв 2017, 21:06  
Аватара пользователя
Старожил
Старожил

    310
  •  1420
  • 52
  •   26

  •  10 янв 2009, 17:55

  •  Карелия

Блог: Просмотр записи (0)
по п.4 оба R2 (30 ом и 47к ) ИМХО лишние

_________________
...И с приветом !
И спасибо всем тем,
кто мигал
дальним светом...
Изображение


Вернуться к началу
 Профиль Personal album  
 
 
Не в сети
 Заголовок сообщения: Re: Arduino - кто нибудь с ним работал?
Сообщение Добавлено: 20 янв 2017, 21:07  
Аватара пользователя
Старожил
Старожил

    790
Автор темы
  •  2417
  • 44
  •   3

  •  30 ноя 2006, 16:52

  •  Москва, САО РШН 2016г.в. 120 ткм

Блог: Просмотр записи (0)
Как вариант вместо vd2 поставить супрессор
Меня википедия по слову "супрессор" выкинула на страничку стабилитрона, который я нарисовал. Разницу между стабилитроном и супрессором попробую разглядеть в яндексе)))
И 100 ом на входе не нравятся мне, не будет ли грется vd2 он вроде 0.5 Вт, а по моим прикидкам через vd2 может пойти и 2.5+ вт если заглючит геннадий
Пойдем от обратного. Vd2 на 16В и 0,5Вт. Т.е. он через себя может пропустить 0,5/16=30мА. Ардуино через себя пропускает 20мА, итого в сумме они через себя пропускают 30+20=50мА. При таком раскладе падение напряжения на R1 составит 100 Ом* 0,05А= 5 вольт. Итого вся плата будет работать при таком напряжении: 5 вольт (напряжение падения на резисторе) + 16 вольт (напряжение стабилизации) = 21 вольт.
А если считать на прямую, то формулы следующие: пусть напряжение питания U, напряжение стабилизации 16, падение на резисторе U-16 вольт. Ток на резисторе (U-16)/100 ампер. Из них 0,02 ампера пройдет через андурино (ток питания андурино через линейный стабилизатор не зависит от напряжения). Остальные (U-16)/100-0,02 ампера пройдет через стабилитрон. Мощность тепловыделения на стабилитроне составит 16 вольт умножить на ток стабилитрона, т.е. 16*((U-16)/100-0,02) ВТ. При 21 вольте получаем тоже самое 16*((21-16)/100-0,02)=0,48вт.
Больше 21 вольта неисправный гена выдать теоретически не может (при наличии батарейки). Точнее уже при 18 батарейка начинает откровенно кипеть, скорость "динамических" потребителей напрямую зависит от оборотов двигателя, все лампочки накаливания перегорают, а эту неисправность незаметить сложно.

Добавлено спустя 10 минут 10 секунд:
по п.4 оба R2 (30 ом и 47к ) ИМХО лишние
записано Изображение

_________________
"...правильнописание у меня хорошее, но почему-то хромает..."(с)


Вернуться к началу
 Профиль Personal album  
 
 
Не в сети
 Заголовок сообщения: Re: Arduino - кто нибудь с ним работал?
Сообщение Добавлено: 20 янв 2017, 22:10  
Аватара пользователя
Участник
Участник

    20
  •  72
  •   0

  •  09 янв 2011, 23:22

  •  УФА

Блог: Просмотр записи (0)
В п1,2,3 установить развязывающие диоды
подтягиваюшие резисторы на 12V не нужны
(насколько помню по входам МК подтяжку
можно включать в конфигурации)
в программе где возможно использовать активный уровень
низкий для исключения помех по питанию
Я бы делал так


Вернуться к началу
 Профиль  
 
 
Не в сети
 Заголовок сообщения: Re: Arduino - кто нибудь с ним работал?
Сообщение Добавлено: 20 янв 2017, 22:42  
Аватара пользователя
Старожил
Старожил

    790
Автор темы
  •  2417
  • 44
  •   3

  •  30 ноя 2006, 16:52

  •  Москва, САО РШН 2016г.в. 120 ткм

Блог: Просмотр записи (0)
Маг12 писал(а):
подтягиваюшие резисторы на 12V не нужны
(насколько помню по входам МК подтяжку
можно включать в конфигурации)
Точно, осознал. Не нужны.
Маг12 писал(а):
В п1,2,3 установить развязывающие диоды
Зачем и куда? В п.п. 1,2,3 как раз происходят переходы от высокого уровня к низкому, и от низкого уровня к высокому. Там направление сигнала (точнее тока) в обе стороны идет.

_________________
"...правильнописание у меня хорошее, но почему-то хромает..."(с)


Вернуться к началу
 Профиль Personal album  
 
 
Не в сети
 Заголовок сообщения: Re: Arduino - кто нибудь с ним работал?
Сообщение Добавлено: 20 янв 2017, 23:16  
Аватара пользователя
Участник
Участник

    20
  •  72
  •   0

  •  09 янв 2011, 23:22

  •  УФА

Блог: Просмотр записи (0)
диоды для развязки сигналов
для мк не важно направление тока
важно высокий или низкий уровень на входе
R2 естественно пересчитать по току
как то так
P.S. Вместо отслеживания положения ДЗ
удобней следить за оборотами там вроде
прямоугольный импульс
С1 то же по большому счету лишний
Vd1 на 5,1v


Вложения:
ard003.jpg
ard003.jpg [ 18.12 КБ | Просмотров: 752 ]
Вернуться к началу
 Профиль  
 
 
Не в сети
 Заголовок сообщения: Re: Arduino - кто нибудь с ним работал?
Сообщение Добавлено: 21 янв 2017, 12:42  
Аватара пользователя
Старожил
Старожил

    790
Автор темы
  •  2417
  • 44
  •   3

  •  30 ноя 2006, 16:52

  •  Москва, САО РШН 2016г.в. 120 ткм

Блог: Просмотр записи (0)
Маг12 писал(а):
подтягиваюшие резисторы на 12V не нужны
(насколько помню по входам МК подтяжку
можно включать в конфигурации)
Переосознал. Встроенную подтяжку задействовать нельзя. Она может быть только положительной (на 20кОм). Тогда получится, что при логическом нуле, на андурине будет делитель 5 вольт из R1 и R2*R3/(R2+R3), т.е. со стороны 5 вольт 20кОм, со стороны земли 50*100/(50+100)=33кОм. И на входе андурину будет 3В (логическая единица, притом неустойчивая):

Добавлено спустя 19 минут 35 секунд:
Маг12 писал(а):
P.S. Вместо отслеживания положения ДЗ
удобней следить за оборотами там вроде
прямоугольный импульс
Обороты - не показатель наличия водителя. Контроллер при прогреве их сам спокойно может поднимать до 2000.
Маг12 писал(а):
Vd1 на 5,1v
Тоже думал об этом.
Маг12 писал(а):
диоды для развязки сигналов
для мк не важно направление тока
важно высокий или низкий уровень на входе
Согласен, диод не будет влиять на показания (при условии внутренней подтяжки), но и не от чего не защищает. Его предназначение мне не понятно.


Вложения:
Датчик 1.jpg
Датчик 1.jpg [ 23.35 КБ | Просмотров: 740 ]

_________________
"...правильнописание у меня хорошее, но почему-то хромает..."(с)
Вернуться к началу
 Профиль Personal album  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 59 ]  На страницу Пред.    След.

 

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти: