26

Re: Извлечение данных наддува из OBDII VAG

0x76c 0x03 0x22 0x24 0x15 0x55 0x55 0x55 0x55 - запрос кнопки руля;
      0x7d6 0x04 0x62 0x24 0x15 0xХХ 0xAA 0xAA 0xAA  - ответ со значением кнопки руля, где ХХ - значения.

      0x7e0  0x03 0x22 0x11 0xF1 0x55 0x55 0x55 0x55 - запрос заданного;
      0x7e8  0x05 0x62 0x11 0xF1 0xХХ 0xХХ 0x55 0x55 - ответ со значением заданного, где ХХ - значения.

      0x7e0  0x03 0x22 0x11 0xF0 0x55 0x55 0x55 0x55 - запрос фактического;
      0x7e8  0x05 0x62 0x11 0xF0 0xХХ 0xХХ 0x55 0x55 - ответ со значением фактического, где ХХ - значения.

27

Re: Извлечение данных наддува из OBDII VAG

Денис, с учетом, что в моём случае при отправке сообщений:
0x76C 0x03 0x22 0x24 0x15 0x55 0x55 0x55 0x55 - запрос кнопки руля;
0x7E0 0x03 0x22 0x11 0xF1 0x55 0x55 0x55 0x55 - запрос заданного;
0x7E0 0x03 0x22 0x11 0xF0 0x55 0x55 0x55 0x55 - запрос фактического;
у Всех моих запросов:
IRL - одинаковый;
D0 и D1 - одинаковые;
D4 и D5 - одинаковые;
D6 и D7 - одинаковые.
Имеет право быть, упрощенная диаграмма?
Будет ли она работать так же как и предыдущая, без ошибок?

P.S. думаю, чем меньше блоков, тем обработка диаграммы увеличивается у контроллера.

Вложений в сообщении

Иконка вложения Отправка сообщений2.cfd 2.54 кб, скачивался 76 раз, последний раз 2018-07-23 

28

Re: Извлечение данных наддува из OBDII VAG

Упрощенная диаграмма, в данном случае, вполне допустима и, действительно, даже полезна: меньше блоков на диаграмме - меньше затраты вычислительных ресурсов - меньше цикл выполнения диаграммы - больше циклов выполнения в единицу времени...
Диаграмма составлена верно и должна корректно работать. Остается добавить часть с обработкой принятых ответов на запросы.

29

Re: Извлечение данных наддува из OBDII VAG

Денис, CANNY пишет:

Упрощенная диаграмма, в данном случае, вполне допустима и, действительно, даже полезна: меньше блоков на диаграмме - меньше затраты вычислительных ресурсов - меньше цикл выполнения диаграммы - больше циклов выполнения в единицу времени...
Диаграмма составлена верно и должна корректно работать. Остается добавить часть с обработкой принятых ответов на запросы.

Тогда Денис, я могу и приём сообщений упростить?
Ведь кроме моих запросов в данной шине не будет других сообщений.
Большую фильтрацию из блоков, как у меня на приёме, видимо нет смысла городить?
----
Теперь вопрос Денис.
Какая может быть выбрана минимальная скорость отправки сообщений?
1 раз в сек, 1 раз в 500 мс, 1 раз в 100 мс и т.д.
Учитывая, что мне для работы моей диаграммы, необходимо чтобы скорость запрос-ответ был максимально быстрой, Какую я минимальную скорость могу выбрать для отправки сообщений?
Минимальное заполнение генератора ШИМ, какое могу выбрать?
----
Сегодня, если получится, попробую к главной шине другого блока подключиться.
Почему то мне кажется, что возможно мои сообщения уже там есть и возможно даже под этим же идентификатором.

Ответьте пожалуйста Денис на предыдущие вопросы.

30

Re: Извлечение данных наддува из OBDII VAG

oniava пишет:

...я могу и приём сообщений упростить?

Да, можно упростить. Достаточно проверять ID и байты D2,D3. Следует еще определить, в каком виде представлены значения нужных параметров. В случае с кнопкой - все просто, а в случае с давлением - сложнее. Следует найти описание этого ответа на запрос, где указано в каких единицах отображается параметр, или сопоставить полученные данные по CAN с показанием диагностического сканера, учитывая что они все равно есть в наличии.

oniava пишет:

...Какая может быть выбрана минимальная скорость отправки сообщений?

Теоретически, можно отправлять запросы на каджом цикле выполнения диаграммы, но нужно учитывать что нужно еще получить ответ на запрос. Пропускная способность шины 500кБ достаточно велика. Длительность цикла выполнения диаграммы будет около 5мс. Для того чтобы определить с какой частотой можно подавать запросы нужно либо найти эти данные в документации на диагностический протокол, либо проанализировать полученные логи запросов-ответов. Судя по логам, диагностический сканер отправляет запросы 1 раз в 120-200мс. Ответы на запрос давления приходят в течение 3-5мс после отправки запроса, ответ на запрос состояния кнопки - через 25мс.
Отправка запросов 1 раз в 50 мс наверное подойдет, может быть потом можно будет поиграть этой частотой в +/-. Итого отправляя последовательно 3 запроса 1 раз в 50 мс можно получить частоту обновления параметра 1 раз в 150мс.

oniava пишет:

...Минимальное заполнение генератора ШИМ, какое могу выбрать?

Эти параметры приведены в описании драйвера ШИМ и ВЧ ШИМ, в зависимости от того, что предполагается использовать.

oniava пишет:

...Почему то мне кажется, что возможно мои сообщения уже там есть и возможно даже под этим же идентификатором.

Очень сомневаюсь. Данные возможно есть, но наверняка не с такими ID. 0x7e0 и т.п. - это диагностические ID для обращения к тем или иным электронным блокам авто. Запрашиваемый параметр кодируется в байтах D1,D2,D3, т.е. в одном и том же ID, на одних и тех же местах (в одних и тех же байтах), могут находиться разные данные, в зависимости от запроса. В не диагностическом режиме CAN, обычно конкретный ID и его определенные байты несут информацию о каком-то одном параметре авто.

31

Re: Извлечение данных наддува из OBDII VAG

Денис, CANNY пишет:

Очень сомневаюсь. Данные возможно есть, но наверняка не с такими ID. 0x7e0 и т.п. - это диагностические ID для обращения к тем или иным электронным блокам авто. Запрашиваемый параметр кодируется в байтах D1,D2,D3, т.е. в одном и том же ID, на одних и тех же местах (в одних и тех же байтах), могут находиться разные данные, в зависимости от запроса. В не диагностическом режиме CAN, обычно конкретный ID и его определенные байты несут информацию о каком-то одном параметре авто.

Самое обидное, что эти данные я не могу проверить.
Сканером я запрашиваю и вижу ответ.
Но вот а в общем потоке данных, не представляю как мне найти свои данные.
Ваш пример про дверь, здесь не подходит.

32

Re: Извлечение данных наддува из OBDII VAG

Денис, CANNY пишет:

Да, можно упростить. Достаточно проверять ID и байты D2,D3. Следует еще определить, в каком виде представлены значения нужных параметров. В случае с кнопкой - все просто, а в случае с давлением - сложнее. Следует найти описание этого ответа на запрос, где указано в каких единицах отображается параметр, или сопоставить полученные данные по CAN с показанием диагностического сканера, учитывая что они все равно есть в наличии.

Попробовал упростить.
Но как всегда сомневаюсь.
Начинающему, очень сложно понять работу в диаграмме всех блоков сразу.
Проверьте меня пожалуйста Денис.

Вложений в сообщении

Иконка вложения Общее_упрощенное.cfd 6.06 кб, скачивался 78 раз, последний раз 2018-07-24 

33

Re: Извлечение данных наддува из OBDII VAG

Блок №23 Генератор ШИМ - на вход "Старт" нужно либо добавить инверсию, либо убрать регистр"Питание восстановлено" и просто поставить туда константу "1".
Как уже говорилось раньше, фильтры на прием сообщений CAN можно не ставить. А в остальном все должно работать. Но остается вопрос в интерпретации полученных данных давления - что будут означать данные в байтах 4 и 5?

34

Re: Извлечение данных наддува из OBDII VAG

Денис, CANNY пишет:

Следует найти описание этого ответа на запрос, где указано в каких единицах отображается параметр, или сопоставить полученные данные по CAN с показанием диагностического сканера, учитывая что они все равно есть в наличии.

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

35

Re: Извлечение данных наддува из OBDII VAG

Можно сопоставить показания скнера и данные из лога.

36

Re: Извлечение данных наддува из OBDII VAG

Денис, CANNY пишет:

Можно сопоставить показания сканера и данные из лога.

Если только так.
Но нужно будет время подогнать к одному времени данные сканера и лога.

37

Re: Извлечение данных наддува из OBDII VAG

Денис, CANNY пишет:

Блок №23 Генератор ШИМ - на вход "Старт" нужно либо добавить инверсию, либо убрать регистр"Питание восстановлено" и просто поставить туда константу "1".
Как уже говорилось раньше, фильтры на прием сообщений CAN можно не ставить. А в остальном все должно работать. Но остается вопрос в интерпретации полученных данных давления - что будут означать данные в байтах 4 и 5?

"Питание восстановлено" - я выбрал из тех соображений, что после включения зажигания и одновременной подачи питания на контроллер, на данном входе "Старт", появлялась 1, и контроллер сразу начинал "проигрывать" диаграмму.

Денис, CANNY пишет:

Как уже говорилось раньше, фильтры на прием сообщений CAN можно не ставить.

Про фильтры, честно говоря, не совсем понял...

38

Re: Извлечение данных наддува из OBDII VAG

В картинках 1 сообщения данной темы есть совмещенные сканер и CAN-монитор. - по ним можно сориентироваться.
Ознакомьтесь с описанием основных регистров контроллера. Регистр "Питание восстановлено" появляется на 1 цикл диаграммы после включения контроллера. Начиная со следующего цикла он будет равен "0" и генератор ШИМ работать перестанет. Нужно использовать одно из моих выше приведенных предложений.

Назначение фильтров CAN - снизить нагрузку на контроллер при большом потоке данных и избежания потри данных. В данном случае - 3 известных  ID с невысокой загрузкой шины - фильтры можно не использовать без каких-либо потерь.

39

Re: Извлечение данных наддува из OBDII VAG

Денис, CANNY пишет:

В данном случае - 3 известных  ID с невысокой загрузкой шины - фильтры можно не использовать без каких-либо потерь.

Простите, но не понял.
Иначе как в моей диаграмме нужное сообщение принять?
----
Подключился к главной скоростной шине.
53 сообщения гуляет по шине, но с моими ID нет.
Я надеялся, что увижу их.
Видимо, мои данные на подслушать в кан шине без запроса...
Придется только через диагностическую шину.

40

Re: Извлечение данных наддува из OBDII VAG

Денис, CANNY пишет:

Но остается вопрос в интерпретации полученных данных давления - что будут означать данные в байтах 4 и 5?

Скорое всего мне придется составлять таблицу.
Отправлять запрос, допустим подставив в байтах 4 и 5 "0x0100",  смотреть и записывать ответ.
Потом подниматься по нарастающей, по поэтапно, по 100 допустим.
Все это записывать а затем подбирать формулу расчета.

Денис, CANNY пишет:

Нужно использовать одно из моих выше приведенных предложений.

Сделаю как посоветовали Денис, поставлю "1".

41

Re: Извлечение данных наддува из OBDII VAG

oniava пишет:

...Иначе как в моей диаграмме нужное сообщение принять?

Принимайте все которые приходят (их всего 3), для этого не нужно устанавливать фильтры. А уже принятые анализировать на соответствие ID и т.п.

oniava пишет:

...53 сообщения гуляет по шине, но с моими ID нет.
Я надеялся, что увижу их.
Видимо, мои данные на подслушать в кан шине без запроса

Это было ожидаемо. Но не исключено, что сами данные там есть, просто найти их сложно, но если они есть, то это вполне возможно.

oniava пишет:

...Придется только через диагностическую шину.

В данном случае это может оказаться проще.

42

Re: Извлечение данных наддува из OBDII VAG

Денис, CANNY пишет:
oniava пишет:

...Иначе как в моей диаграмме нужное сообщение принять?

Принимайте все которые приходят (их всего 3), для этого не нужно устанавливать фильтры. А уже принятые анализировать на соответствие ID и т.п.

Извините Денис, что то туплю.
Сможете показать примером?

Вложений в сообщении

Иконка вложения Заданное_упрощенное.cfd 3.33 кб, скачивался 74 раз, последний раз 2018-07-24 

43

Re: Извлечение данных наддува из OBDII VAG

Просто убрать фильтры. Примеры приведены в wiki

Вложений в сообщении

Иконка вложения Заданное_упрощенное1.cfd 3 кб, скачивался 79 раз, последний раз 2018-07-24 

44

Re: Извлечение данных наддува из OBDII VAG

Денис, CANNY пишет:

Просто убрать фильтры. Примеры приведены в wiki

Вот я тупень то)
Фильтры, я думал элементная база в диаграмме.
Спасибо Денис за разъяснение.

45

Re: Извлечение данных наддува из OBDII VAG

Денис, CANNY пишет:

Но остается вопрос в интерпретации полученных данных давления - что будут означать данные в байтах 4 и 5?

Извиняюсь за ФЛУД Денис, но на данный момент посоветоваться не с кем.
Я могу снять в Санни лаб данные по оборотам или скорости.
Просмотрев форум заметил, неоднократные подсказки Администраторов по этим данным.
Вот если я к своим запросам добавлю запрос по оборотам и скорости?
У Вас есть опыт в расшифровке этих данных?
Если есть, то подскажите, а я одновременно сниму лог со сканера по наддуву, + добавлю туда же обороты и скорость.
Вот токда , я думаю, получится у меня интерпретации полученных данных давления в байтах 4 и 5.

46

Re: Извлечение данных наддува из OBDII VAG

oniava пишет:

Если есть, то подскажите, а я одновременно сниму лог со сканера по наддуву, + добавлю туда же обороты и скорость.
Вот токда , я думаю, получится у меня интерпретации полученных данных давления в байтах 4 и 5.

Путем сравнения данных по оборотам в двух разных логах.
В сканере это выглядит так:

об/min     ЗЗН/hPa   ФЗН/hPa
1472    773,83    1033,75
1520    789,14    1033,75
1536    763,13    1036,64
1571    760,39    1037,11
1587    749,06    1037,97
1613    746,02    1039,45
1597    1926,02    1461,64

Пересчитав обороты в Кан мониторе, я их попробую сопоставить со вторым логом, логом сканера.

47

Re: Извлечение данных наддува из OBDII VAG

Не совсем понятно какова цель. Я имел в виду сопоставить значения давления, отображаемого в сканере и значения, получаемого в ответе на запрос по CAN, раз уж другой возможности установить связь между этими данными нет.
Из картинок первого сообщения мне удалось заметить:
заданное:
- сканер - 321,41 hPa (гектопаскаль) = 321,41х100 Па = 32141 Па
- CAN: 0x1012 = 4114.
   32141/4114=7,81 ~ 8.
Т.е., возможно, каждая единица из CAN соответствует 8 Па.
Проверим:
фактическое:
- сканер - 1017,34 hPa (гектопаскаль) = 101734 Па
- CAN: 0x32CB = 13003.
   13003<<3 (т.е. умножить на 8) = 104024 Па. Погрешность ~2%. Но возможно в сканере отображены не мгновенные, а осредненные значения.
Но это только предположение.

48

Re: Извлечение данных наддува из OBDII VAG

Денис, CANNY пишет:

Не совсем понятно какова цель. Я имел в виду сопоставить значения давления, отображаемого в сканере и значения, получаемого в ответе на запрос по CAN, раз уж другой возможности установить связь между этими данными нет.
Из картинок первого сообщения мне удалось заметить:
заданное:
- сканер - 321,41 hPa (гектопаскаль) = 321,41х100 Па = 32141 Па
- CAN: 0x1012 = 4114.
   32141/4114=7,81 ~ 8.
Т.е., возможно, каждая единица из CAN соответствует 8 Па.
Проверим:
фактическое:
- сканер - 1017,34 hPa (гектопаскаль) = 101734 Па
- CAN: 0x32CB = 13003.
   13003<<3 (т.е. умножить на 8) = 104024 Па. Погрешность ~2%. Но возможно в сканере отображены не мгновенные, а осредненные значения.
Но это только предположение.

Отличная логика мышления Денис!
Попробую суть своего вопроса объяснить.
Если я сниму лог оборотов в Кан мониторе, из него Вы можете реальные обороты узнать?
Если можете, то я могу с запросом о значениях наддува, так же отправить запрос оборотов.
Одновременно, я вместе с логом в Кан мониторе, снимаю лог со сканера по наддуву.

об/min  ЗЗН/hPa   ФЗН/hPa
1472    773,83    1033,75
1520    789,14    1033,75
1536    763,13    1036,64
1571    760,39    1037,11
1587    749,06    1037,97
1613    746,02    1039,45
1597    1926,02  1461,64

Затем выбираю с лого данные оборотов и сморю на данные в логе сканера по оборотам.
В нем будет видно уже нужное значение.

49

Re: Извлечение данных наддува из OBDII VAG

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

50

Re: Извлечение данных наддува из OBDII VAG

Денис, CANNY пишет:

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

Вот лог моих оборотов:
     0x7e0  0x03 0x22 0xF4 0x0C 0x55 0x55 0x55 0x55 382028 ."..UUUU
     0x7e8  0x05 0x62 0xF4 0x0C 0x0A 0xE2 0x55 0x55 382028 .b....UU
     0x7e0  0x03 0x22 0xF4 0x0C 0x55 0x55 0x55 0x55 382228 ."..UUUU
     0x7e8  0x05 0x62 0xF4 0x0C 0x0B 0x04 0x55 0x55 382250 .b....UU
     0x7e0  0x03 0x22 0xF4 0x0C 0x55 0x55 0x55 0x55 382432 ."..UUUU
     0x7e8  0x05 0x62 0xF4 0x0C 0x0A 0xEC 0x55 0x55 382455 .b....UU
     0x7e0  0x03 0x22 0xF4 0x0C 0x55 0x55 0x55 0x55 382635 ."..UUUU
     0x7e8  0x05 0x62 0xF4 0x0C 0x0A 0xD0 0x55 0x55 382637 .b....UU
     0x7e0  0x03 0x22 0xF4 0x0C 0x55 0x55 0x55 0x55 382837 ."..UUUU
     0x7e8  0x05 0x62 0xF4 0x0C 0x0B 0x02 0x55 0x55 382861 .b....UU
     0x7e0  0x03 0x22 0xF4 0x0C 0x55 0x55 0x55 0x55 383049 ."..UUUU
Но я не знаю как привести к значению об/мин