1 (11-02-2026 08:10:45 отредактировано moroka.torquemada)

Тема: Подмена части сообщения через шлюз

Доброе утро, товарищи.
Помогите пожалуйста разобраться с ошибкой в диаграмме для Canny 7.2 duo.
Задача следующая: устройство принимает сообщение от педали газа, а затем подменяет байты с пропорциональным значением её наклона (байт №1 и №2 если считать от нуля).
Проблема: 1. Устройство ретранслирует все сообщения которые я отправляю, а именно с идентификаторами 0CF0F101, 0CF03333, 0C000003 (тот самый единственный, который необходимо ретранслировать).
2. Подмены байтов не происходит ни в одном из сообщений.

В разработке использую CannyLab 2.24, а системное ПО c72duov00251.ccx.

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

Иконка вложения MinerBrakePedalRetranslator.cfd 6.5 кб, скачивался 16 раз, последний раз 2026-02-11 

2

Re: Подмена части сообщения через шлюз

Алгоритм работы CAN-шлюза наглядно показан на блок-схеме в документации: https://canny.ru/docs/c72duo/cangateway … an-shlyuza

Если требуется запретить шлюзу пересылать любые не попавшие в отборы сообщения поступившие через определенный интерфейс (CAN0 или CAN1), то необходимо включить фильтрующий режим шлюза для соответствующего интерфейса. См. Регистр включения фильтрующего режима шлюза CAN для интерфейса CANx

3

Re: Подмена части сообщения через шлюз

Добрый день.
Установка режима фильтрации для CAN0 не изменило ситуацию.
Всё ещё пересылаются все сообщения без исключения, а также не меняются байты сообщения.

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

Иконка вложения MinerBrakePedalRetranslator.cfd 5.5 кб, скачивался 13 раз, последний раз 2026-02-13 

4

Re: Подмена части сообщения через шлюз

moroka.torquemada пишет:

Установка режима фильтрации для CAN0 не изменило ситуацию.

Похоже, вы не только включили режим фильтрации шлюза, но внесли и другие существенные изменения.

Теперь у вас на диаграмме в принципе отсутствует Регистр начала передачи CAN1, что полностью исключает передачу сообщений из вашей диаграммы через интерфейс CAN1 минуя шлюз. Однако и шлюз ничего не отправляет в CAN1. Несмотря на то, что вы теперь, вместо прямой оправки из диаграммы пытаетесь (некорректно) менять конфигурацию шлюза в процессе работы. При правильном подключении контроллера "в разрыв" CAN и правильной физической среде передачи (см. https://forum.canny.ru/viewtopic.php?pid=8823#p8823 ) ваша диаграмма, в нынешнем ее виде и в полном соответствии с заданным вами алгоритмом, не будет пропускать никаких сообщений с CAN0 на CAN1 и будет пропускать все сообщения с CAN1 на CAN0.


Перед тем, как задать следующий вопрос на форуме, пожалуйста, внимательно и полностью прочтите это сообщение: https://forum.canny.ru/viewtopic.php?pid=9810#p9810

5 (13-02-2026 14:24:48 отредактировано moroka.torquemada)

Re: Подмена части сообщения через шлюз

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

Перед тем, как задать следующий вопрос на форуме, пожалуйста, внимательно и полностью прочтите это сообщение: https://forum.canny.ru/viewtopic.php?pid=9810#p9810

Я не просил Вас ничего делать за меня, а лишь указать на причины неочевидного поведения. Более того, к топику приложена диаграмма и заданы два предельно конкретных вопроса:
1) Почему идёт пересылка всех сообщений, минуя модификацию?
2) Почему пересылка игнорирует включённый режим фильтрации?
Подобный стиль оформления топика я взял именно из этого сообщения при первом входе на форум.

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

ваша диаграмма, в нынешнем ее виде и в полном соответствии с заданным вами алгоритмом, не будет пропускать никаких сообщений с CAN0 на CAN1

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

6

Re: Подмена части сообщения через шлюз

moroka.torquemada пишет:

к топику приложена диаграмма и заданы два предельно конкретных вопроса:
1) Почему идёт пересылка всех сообщений, минуя модификацию?
2) Почему пересылка игнорирует включённый режим фильтрации?

В чем вы видите принципиальное отличие данных вопросов от:

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

Примеры плохих вопросов:

  • ...

  • "Ничего не работает".

  • "Я все сделал как вы говорили и все равно ничего не работает".

  • "Не понимаю, что здесь не так?", "А вот так - будет работать?" и другие подобные вопросы, сводящиеся к "Создайте диаграмму за меня" или "Проверьте всю мою диаграмму сами", "Разберитесь сами, что я хотел сделать и сделайте, чтобы работала". Для подобных вопросов есть специальный раздел: https://forum.canny.ru/viewforum.php?id=11

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

Что касается:

moroka.torquemada пишет:

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

то нет, не делает. Мы не только изучили вашу диаграмму визуально, но и проверили работу контроллера с этой диаграммой на стенде, прежде чем сообщить вам, как именно она работает при правильном подключении контроллера. Проверяйте коммутацию - куда подключен CAN0, куда CAN1, в каких точках и какими инструментами вы контролируете прохождение сообщений и т.д.

Успехов вам в ваших проектах!

7

Re: Подмена части сообщения через шлюз

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

Мы не только изучили вашу диаграмму визуально, но и проверили работу контроллера с этой диаграммой на стенде, прежде чем сообщить вам

Это очень странно, я перепроверил ещё раз на своём стенде и при отключении разъёма Х3 "ретрансляция" останавливается. При этом прозвонил две шины между собой, там разрыв. Будем собирать дополнительные стенды, отпишусь по результату. Цель - добиться хотя-бы отсутствия передачи.

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

Успехов вам в ваших проектах!

Спасибо, взаимно!

8

Re: Подмена части сообщения через шлюз

К какому разъему контроллера подключен кан от педали а к какому кан от ЭБУ?

9 (16-02-2026 08:08:42 отредактировано moroka.torquemada)

Re: Подмена части сообщения через шлюз

AlexN пишет:

К какому разъему контроллера подключен кан от педали а к какому кан от ЭБУ?

Доброе утро, Ваш вопрос оказался очень правильным. Сами CAN'ы были перепутаны. Поменял местами и пересылка пропала.
Однако всё равно не понимаю почему тогда CAN1 пропускал всё в CAN0, если фильтрацию у него я выключал.
Спасибо!

10

Re: Подмена части сообщения через шлюз

Получилось оформить готовое и рабочее решение.
Благодарю всех откликнувшихся на проблему.

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

Иконка вложения MinerBrakePedalRetranslator.cfd 8.23 кб, скачивался 15 раз, последний раз 2026-02-16 

11

Re: Подмена части сообщения через шлюз

moroka.torquemada пишет:

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

Вопрос был не мой вам его уже до меня дважды задавали:

Константин пишет:

Могу лишь рекомендовать вам проверить электрическую коммутацию компонентов системы с которой вы  экспериментируете

Константин пишет:

Проверяйте коммутацию - куда подключен CAN0, куда CAN1

но всё хорошо что хорошо кончается

moroka.torquemada пишет:

Благодарю всех откликнувшихся на проблему.

+