1

Тема: Подмена динамического пакета CAN

Добрый день, вечер.

Помогите пожалуйста с решением задачи.

Исходные: Необходимо отслеживать пакет в CAN 500 kb. Идентификатор 0x316. Байты D3:D2.  Данные идут постоянно (передача информации о оборотах). Данный пакет необходимо исправить следующим образом - (hex2deс D3:D2)/6.4=RPM.
RPM*4, далее DEC2HEX.   И данную информацию отправить в тот же CAN но уже 0x0AA, байты D5:D4.

Возможна такая реальизация?

Спасибо.

2

Re: Подмена динамического пакета CAN

Делаете фильтр с дальнейшим запретом ретрансляции пакета 316. И после преобразования отправляйте пакет 0АА

3

Re: Подмена динамического пакета CAN

В тот же кан отправить возможно? из can0 в can0 ?

4

Re: Подмена динамического пакета CAN

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

5

Re: Подмена динамического пакета CAN

у меня 7.2 duo. Я хотел использовать can0 для моторной шины, а can1 для кузовной шины.  И вот теперь думаю, выйдет ли реализовать таким образом. И пытаюсь разобраться в построении диаграммы, но пока не получается ничего. Не могу никак вникнуть. Мне не понятен этот процесс.

Прошу прощения за свою безграмотность в данном вопросе, но именно по этому прошу помощи в реализации. 

Мне надо и другие пакеты с подменой передать, но думал по аналогии смогу реализовать сам.

6

Re: Подмена динамического пакета CAN

Если передавать требуется по тому же интерфейсу CAN по которому приняты данные, то вам возможно стоит сначала решить задачу приема, а потом добавить в получившуюся диаграмму передающую часть. Примеры как приема так и передачи есть в документации: https://canny.ru/docs/c72duo/can/ и на форуме.

Если требуется принимать по одному интерфейсу CAN, а предавать по другому, то в зависимости от задачи вы можете либо применить подход как в первом случае, с раздельным приемом и передачей, изменив лишь номер интерфейса передачи, либо воcпользоваться драйвером шлюза CAN. Динамическая замена данных рассмотрена в Примерах №3 и №4 соответствующего раздела документации:https://canny.ru/docs/c72duo/cangateway/

Общие рекомендациями по разработке собственных решений и получении консультаций на форуме можно найти здесь: https://canny.ru/docs/tips_tricks/solut … ents_tips/

7

Re: Подмена динамического пакета CAN

Спасибо большое, буду изучать далее.

8 (30-07-2021 12:59:56 отредактировано evgenii_shtepa)

Re: Подмена динамического пакета CAN

Правильное что нибудь получилось?

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

Иконка вложения RPM convert.png 79.94 кб, скачивался 60 раз, последний раз 2021-07-30 

9 (30-07-2021 13:01:01 отредактировано evgenii_shtepa)

Re: Подмена динамического пакета CAN

А теперь еще и устройство не опознано. Есть пусти решения?

10

Re: Подмена динамического пакета CAN

evgenii_shtepa пишет:

Правильное что нибудь получилось?


Прикладывайте пожалуйста файл диаграммы (CFD) а не ее фотографию/скриншот.

Если вам нужно поменять старшие и младшие биты значения местами, то лучше для этого использовать блок Циклический сдвиг: https://canny.ru/docs/fbd/bitwise_opera … lar_shift/


А теперь еще и устройство не опознано. Есть пусти решения?

Перед каждой попыткой подключения, отключить устройство от всех внешних разъемов, затем подключить только USB.

- Перезагрузить ПК
- Использовать другой USB кабель
- Использовать другой ПК

11

Re: Подмена динамического пакета CAN

Константин, CANNY пишет:
evgenii_shtepa пишет:

Правильное что нибудь получилось?

Прикладывайте пожалуйста файл диаграммы (CFD) а не ее фотографию/скриншот.

Если вам нужно поменять старшие и младшие биты значения местами, то лучше для этого использовать блок Циклический сдвиг: https://canny.ru/docs/fbd/bitwise_opera … lar_shift/


А теперь еще и устройство не опознано. Есть пусти решения?

Перед каждой попыткой подключения, отключить устройство от всех внешних разъемов, затем подключить только USB.

- Перезагрузить ПК
- Использовать другой USB кабель
- Использовать другой ПК



Спасибо за ответ.

P.S. Смена кабеля помогла, контроллер распознался, спасибо.

12

Re: Подмена динамического пакета CAN

Получилось. Тахометр заработал. Вроде бы осознал принцип всего этого дела ) Спасибо.

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

Иконка вложения RPM BMW.cfd 2.65 кб, скачивался 193 раз, последний раз 2021-07-31 

13

Re: Подмена динамического пакета CAN

Поздравляем! Успехов вам в ваших проектах!