RU2816885C2 - Способ взаимодействия с вычислительным устройством на бортовой шине транспортного средства - Google Patents

Способ взаимодействия с вычислительным устройством на бортовой шине транспортного средства Download PDF

Info

Publication number
RU2816885C2
RU2816885C2 RU2022101288A RU2022101288A RU2816885C2 RU 2816885 C2 RU2816885 C2 RU 2816885C2 RU 2022101288 A RU2022101288 A RU 2022101288A RU 2022101288 A RU2022101288 A RU 2022101288A RU 2816885 C2 RU2816885 C2 RU 2816885C2
Authority
RU
Russia
Prior art keywords
computing device
command
field
response
auxiliary
Prior art date
Application number
RU2022101288A
Other languages
English (en)
Other versions
RU2022101288A (ru
Inventor
Эрик АБАДИ
Original Assignee
Рено С.А.С
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Рено С.А.С filed Critical Рено С.А.С
Publication of RU2022101288A publication Critical patent/RU2022101288A/ru
Application granted granted Critical
Publication of RU2816885C2 publication Critical patent/RU2816885C2/ru

Links

Images

Abstract

Изобретение относится к способу взаимодействия с вычислительным устройством на бортовой шине транспортного средства. Технический результат заключается в предотвращении бесполезной нагрузки шины. Способ диалога при помощи первой шины (1), установленной в транспортном средстве, с первым вычислительным устройством (12, 13, 14), соединенным со второй бортовой шиной (2) транспортного средства, при этом первая шина соединена со второй шиной через второе вычислительное устройство (11), а третье вычислительное устройство (10) соединено с первой бортовой шиной и выполнено с возможностью обработки главной команды, предназначенной для первого вычислительного устройства (12, 13, 14), содержит этапы, на которых: генерируют (102), с помощью третьего вычислительного устройства (10), команду записи описания (27) указанной главной команды в первой выделенной зоне (61) данных второго вычислительного устройства (11); передают (104), с помощью третьего вычислительного устройства (10), указанную команду записи на второе вычислительное устройство (11), когда обнаруживают (103) готовность второго вычислительного устройства (11) ответить на указанную команду записи; передают (114), с помощью второго вычислительного устройства (11), на первое вычислительное устройство (12, 13, 14) одну или более вспомогательных команд, чтобы ответить на главную команду после получения (111) указанной команды записи; передают (122), с помощью первого вычислительного устройства (12, 13, 14), ответ на каждую полученную вспомогательную команду (121); сохраняют (116), с помощью второго вычислительного устройства (11), по меньшей мере один полученный ответ (115) во второй выделенной зоне (62) данных; передают (108), с помощью третьего вычислительного устройства (10), команду считывания указанной второй выделенной зоны (62), при обнаружении (107) готовности второго вычислительного устройства (11) ответить на указанную команду считывания, обеспечиваемого посредством передачи, вторым вычислительным устройством (11), по первой шине (1), сигнала с двумя состояниями «готово», «не готово»; передают (124), с помощью второго вычислительного устройства (11), ответ на полученную команду считывания (119); отвечают (126), с помощью третьего вычислительного устройства, на главную команду, по меньшей мере, с момента получения (109) ответа на команду считывания второй выделенной зоны второго вычислительного устройства (11), в которой сохранен ответ, переданный первым вычислительным устройством (12, 13, 14). 13 з.п. ф-лы, 6 ил.

Description

Изобретение относится к способу взаимодействия с вычислительным устройством на бортовой шине транспортного средства. В частности, изобретение относится к способу взаимодействия, при помощи первой шины, установленной в транспортном средстве, с первым вычислительным устройством, соединенным с второй бортовой шиной транспортного средства.
Заявленный способ является исключительно полезным для актуализации бортовых вычислительных устройств и параллельно обеспечивает исполнение программ в реальном времени для обеспечения работы транспортного средства.
Обновление данных бортовых вычислительных устройств и исполнение программ в реальном времени обычно требуют передачи команд на одной или нескольких бортовых шинах. Как правило, применяют счетчики времени, чтобы контролировать время, которое отделяет передачу команды от получения ответа на эту команду, при этом недостатком является увеличение времени, когда количество команд увеличивается.
Например, в документе ЕР1434129А2 раскрыт прибор контроля перезаписи для бортовой программы, в котором команда переключения основана на сигнале, поступающем от счетчика времени. Раскрытый прибор контролирует два рабочих режима: нормальный режим, который может соответствовать режиму диагностики, и режим перезаписи бортовой программы, применяемый для актуализации вычислительного устройства. Раскрытый прибор переключает нормальный режим на режим перезаписи, когда он получает команду перезаписи программы от сервера, и производит переключение из режима перезаписи в нормальный режим, когда он получает команду переключения на нормальный режим во время режима перезаписи. Недостатком является то, что при каждом переключении происходит выход из текущего режима.
Чтобы преодолеть недостатки известных технических решений, объектом изобретения является способ взаимодействия, при помощи первой шины, установленной в транспортном средстве, с первым вычислительным устройством, соединенным с второй бортовой шиной транспортного средства, при этом первая шина соединена с второй шиной через второе вычислительное устройство, в котором третье вычислительное устройство, соединенное с первой бортовой шиной, обрабатывает главную команду, предназначенную для первого вычислительного устройства, при этом способ содержит этапы, на которых:
- третье вычислительное устройство генерирует команду записи описания указанной главной команды в первой выделенной зоне второго вычислительного устройства;
- третье вычислительное устройство передает указанную команду записи во второе вычислительное устройство, когда обнаруживают готовность второго вычислительного устройства ответить на указанную команду записи;
- второе вычислительное устройство передает в первое вычислительное устройство одну или более вспомогательных команд, чтобы ответить на главную команду после получения указанной команды записи;
- первое вычислительное устройство передает ответ на каждую полученную вспомогательную команду;
- второе вычислительное устройство сохраняет каждый полученный ответ во второй выделенной зоне;
- третье вычислительное устройство передает во второе вычислительное устройство команду считывания указанной второй выделенной зоны, когда обнаруживают готовность второго вычислительного устройства ответить на указанную команду считывания;
- второе вычислительное устройство передает ответ на полученную команду считывания;
- третье вычислительное устройство отвечает на главную команду по меньшей мере с момента получения ответа на команду считывания второй зоны второго вычислительного устройства, в которой сохранен ответ, переданный первым вычислительным устройством.
В частности, второе вычислительное устройство периодически передает сигнал с двумя состояниями «готовое», «не готовое», при этом способ содержит этапы, на которых второе вычислительное устройство устанавливает сигнал:
- в занятое состояние после получения команды записи от третьего вычислительного устройства;
- в готовое состояние после получения ответа от первого вычислительного устройства.
Предпочтительно способ содержит этап, на котором третье вычислительное устройство выжидает сигнал, установленный в готовое состояние, после получения указанного сигнала, установленного в занятое состояние.
В частности, указанная команда записи включает в себя первый фрейм, который содержит первое поле идентификатора команды, первое поле идентификатора первой выделенной зоны и по меньшей мере одно поле описания главной команды.
В частности, описание главной команды содержит поле типа главной команды, поле идентификации второго вычислительного устройства и поле идентификации данной, необходимой для второго вычислительного устройства, чтобы выработать передаваемый ответ.
В частности, способ содержит этап, на котором второе вычислительное устройство передает квитанцию в первое вычислительное устройство после получения указанной команды записи.
В частности, квитанция включает в себя второй фрейм, который содержит поле идентификатора квитанции и второе поле идентификатора первой выделенной зоны.
В частности, указанная команда считывания, передаваемая третьим вычислительным устройством, включает в себя третий фрейм, который содержит второе поле идентификации команды и первое поле идентификатора второй выделенной зоны.
В частности, указанный ответ на команду считывания включает в себя четвертый фрейм, который содержит четвертое поле идентификатора ответа на команду, второе поле идентификатора второй выделенной зоны, по меньшей мере одно поле вызова описания главной команды и поле контента ответа, передаваемого первым вычислительным устройством.
Указанная главная команда является командой для считывания резидентной данной в первом вычислительном устройстве, при этом вспомогательная команда включает в себя пятый фрейм, который содержит поле идентификации команды считывания и поле идентификации указанной резидентной данной, при этом ответ, передаваемый первым вычислительным устройством, включает в себя шестой фрейм, который содержит поле идентификации ответа на команду считывания, поле идентификации указанной резидентной данной и поле, содержащее значение указанной резидентной данной.
Предпочтительно команды считывания и команды записи являются командами по протоколу UDS (объединенного сервиса диагностики).
Способ может также содержать этапы, на которых:
- второе вычислительное устройство проверяет, является ли описание указанной главной команды целостным или нет после получения указанной команды записи;
- второе вычислительное устройство передает в первое вычислительное устройство одну или более вспомогательных команд, чтобы ответить на главную команду, только если описание указанной главной команды является целостным;
- второе вычислительное устройство записывает в памяти сигнал тревоги во второй выделенной зоне, если описание указанной главной команды не является целостным.
Другие преимущества и отличительные признаки изобретения будут более очевидны из подробного описания вариантов осуществления и выполнения, представленных в качестве иллюстративных и не ограничительных примеров, со ссылками на прилагаемые чертежи, на которых:
Фиг. 1 - схема бортовой системы транспортного средства, в которой применяют изобретение.
Фиг. 2 - схема фреймов команд, с которыми применяют изобретение.
Фиг. 3 - этапы заявленного способа для обработки главной команды считывания.
Фиг. 4 - этапы первой части заявленного способа для обработки главной команды установки.
Фиг. 5 - этапы второй части заявленного способа для обработки главной команды установки.
Фиг. 6 - этапы третьей и последней части заявленного способа для обработки главной команды установки.
На фиг. 1 показаны два вычислительных устройства 9, 10, соединенные с бортовой шиной 1 в транспортном средстве, и три вычислительных устройства 12, 13, 14, соединенные с бортовой шиной 2 в транспортном средстве. Вычислительное устройство 9 является, например, бортовым вычислительным устройством, предназначенным для телекоммуникаций типа IVC (In Vehicle Communication на английском языке). Вычислительное устройство 10 является, например, бортовым вычислительным устройством типа IVI (In Vehicle Infotainment на английском языке), производительность обработки данных которого сравнима с производительностью микрокомпьютера. С бортовой шиной 1 могут быть также соединены другие не показанные вычислительные устройства. Вычислительные устройства 12, 13, 14, соединенные с бортовой шиной 2, предпочтительно являются бортовыми вычислительными устройствами контроля-управления органами транспортного средства типа ECU (Electronic Control Unit). Вычислительное устройство 11, соединенной с бортовой шиной 1 и с бортовой шиной 2, выполняет функции шлюза между двумя бортовыми шинами.
На фиг. 3 показаны этапы способа диалога, согласно которому вычислительное устройство 10 обрабатывает главную команду, которая является командой для считывания резидентной данной в одном из вычислительных устройств 12, 13, 14, например, в вычислительном устройстве 12. Этот тип команды используют, например, для считывания ссылки цифрового компонента или номера версии цифрового компонента в вычислительном устройстве 12, например, чтобы решить, следует или не следует обновлять цифровой компонент. Цифровой компонент может представлять собой как исполняемую программу, так и базу данных или любую другую цифровую структуру, например, программу источника или таблицу параметров.
Вычислительное устройство 10, первоначально находящееся на этапе 100 спящего режима, переходит на этап 102, когда запрос считывания, исходящий от способа высшего порядка, например, от способа обновления вычислительного устройства 12, подтверждает переход 101. Например, запрос считывания может содержать идентификатор вычислительного устройства среди вычислительных устройств 12, 13, 14, соединенных с бортовой шиной 2, в данном случае идентификатор вычислительного устройства 12. Идентификатор вычислительного устройства может представлять собой адрес вычислительного устройства согласно протоколу связи шины 2 типа CAN (Controller Area Network), Flex Ray или ТТР, которые известны также в области авиации, Ethernet автомобиля или другого типа. Идентификатор вычислительного устройства может представлять собой также последовательность знаков ASCII, которая называет вычислительное устройство в его функциональной среде, например, “BCM” (Body Control Module или модуль контроля кузова на английском языке), “HEVC” (Hybrid Electric Vehicle Controller или контроллер гибридного электрического транспортного средства), “VDC” (сокращение от Vehicle Dynamic Control) и т.д. Преимуществом последовательности знаков ASCII является возможность обозначать вычислительное устройство независимо от архитектуры бортовой системы. Последовательность знаков ASCII образует мнемотехническое средство, легче понимаемое человеком. Например, запрос считывания может содержать идентификатор 63 данных в идентифицированном вычислительном устройстве.
На этапе 102 вычислительное устройство 10 создает описание главной команды на основании запроса, который подтвердил переход 101, затем генерирует команду записи описания главной команды в первой выделенной зоне 61 данных, которая является резидентной в памяти вычислительного устройства 11.
На фиг. 2 представлен пример команды записи, которая содержит фрейм 21. Фрейм 21 содержит поле 31, идентифицирующее команду, генерированную в качестве команды записи, поле 32, идентифицирующее первую выделенную зону 61, и по меньшей мере одно поле 33, 34, 35 для контента описания 27 главной команды.
Поле 33, образующее описание 27, указывает на тип главной команды. Например, но не ограничительно, тип главной команды идентифицирован двумя буквами из кода ASCII. Первая буква идентифицирует класс главной команды: “E” для исполнения, “R” для считывания или “W” для записи. Вторая буква в комбинации с первой идентифицирует действие внутри класса главной команды: “EA” для «Исполнить активацию», “ED” для «Исполнить дистанционную загрузку», “EI” для «Исполнить установку», “EC” для «Исполнить удаление», “ER” для «Исполнить повторную инициализацию», “RD” для «Считать данную», “RX” для «Считать расширенные данные», “WD” для «Записать данную». Поле 34, образующее описание 27, дает идентификатор бортового вычислительного устройства, в частности, как он указан в запросе. Поле 35, образующее описание 27, содержит параметры, используемые для исполнения команды. Например, если поле 33 содержит типы команды “EI”, “EA”, параметрами являются идентификаторы устанавливаемых, соответственно активируемых цифровых компонентов. В примере, представленном на фиг. 3, описание 27 главной команды содержит поле 33, дающее тип главной команды “RD”, поле 34 идентификации вычислительного устройства, соединенного с шиной 2, например. функциональное название вычислительного устройства 12, и поле 35 параметров, содержащее в качестве параметра, используемого вычислительным устройством 11 для участия в обработке главной команды, идентификатор считываемой данной.
В частности, преимуществом использования команды записи в соответствии с протоколом UDS объединенных сервисов диагностики является возможность применить механизм, как правило, установленный заранее в большинстве бортовых вычислительных устройств в автомобильной области, в частности, чтобы осуществлять функции диагностики, не изменяя нижних уровней связи для осуществления заявленного способа диалога. В этом случае, в частности, поле 31 содержит SID (Service Identifier от «идентификатор сервиса» на английском языке) $2Е, который является известным шестнадцатеричным кодом записи данных при помощи идентификатора DID.
Переход 103 от этапа 102 к этапу 104 подтверждается, когда обнаружено, что вычислительное устройство 11 готово ответить на команду записи, поддерживаемую фреймом 21. Таким образом, если вычислительное устройство 11 осуществляет функцию шлюза для команды, генерированной в рамках другого способа, например, способа диагностики, вычислительное устройство остается в режиме ожидания на этапе 102. Вычислительное устройство 10 не производит бесполезной загрузки шины 1 попытками передать команду, которые останутся без результата по причине занятости вычислительного устройства 11 другими функциями. В примере текущей обработки команды диагностики, относящейся к другому способу, моментальный переход в режим ожидания способа диалога на этапе 102 позволяет исполнить команду диагностики, не прерывая способа диагностики.
Чтобы обнаружить, что вычислительное устройство 11 готово для ответа на команду записи, поддерживаемую фреймом 21, можно предусмотреть несколько решений. Например, в случае, когда с вычислительным устройством 11 на шине 1 диалог ведет только вычислительное устройство 10, верхний уровень упорядочения в вычислительном устройстве 10 может контролировать готовое или не готовое состояние вычислительного устройства 11. Это решение было бы затруднено в осуществлении, если бы другое вычислительное устройство 9 вело диалог с вычислительным устройством 11 на шине 1, например, для осуществления дистанционной диагностики. В другом случае вычислительное устройство 10 может, например, наблюдать шину 1 для обнаружения в ней фреймов, предназначенных для вычислительного устройства 11, при которых вычислительное устройство 11 может не быть готовым ответить на команду записи, поддерживаемую фреймом 21. Это другое решение могло бы быстро создать проблему сложности в случае многочисленных способов, использующих канал шины 1. Не выходя за рамки изобретения, можно предусмотреть и другие решения.
Согласно предпочтительному решению для обнаружения готовности вычислительного устройства 11, вычислительное устройство 11 само объявляет себя готовым или нет для обработки команд, передаваемых в рамках заявленного способа диалога. Вычислительное устройство 11 периодически передает на шину 1 сигнал, имеющий два состояния: готовое, занятое или не готовое.
На первоначальном этапе 110 спящего режима вычислительное устройство 11 по умолчанию устанавливает сигнал в готовое состояние. Как только вычислительное устройство 11 получает команду, как в рамках заявленного способа диалога, так и любого другого способа, например, способа диагностики, вычислительное устройство 11 устанавливает сигнал в занятое состояние, пока не будет завершена обработка текущей команды.
На этапе 104, когда вычислительное устройство 11 обнаружено готовым для ответа на команду записи, вычислительное устройство 10 передает команду записи в вычислительное устройство 11. Для передачи команды записи вычислительное устройство 10 может включить фрейм 21 в фрейм CAN на шине 1 или другим образом, например, включать фрейм 21 в фрейм на IP, если на шине 1 используется протокол Ehernet для транспортного средства.
Получение команды записи в вычислительном устройстве 11 подтверждает переход 111, который является необходимым для перевода вычислительного устройства 11 от первоначального этапа 110 к этапу 114, на котором вычислительное устройство 11 передает в то из вычислительных устройств 12, 13, 14, которое было идентифицировано в поле 34, например, в вычислительное устройство 12, вспомогательную команду для ответа на главную команду на основании описания 27 главной команды, записанного в выделенной зоне 61 данных вычислительного устройства 11.
В конкретном случае, представленном на фиг. 3, в котором главная команда является командой для считывания резидентной данной в вычислительном устройстве 12, на фиг. 2 представлен пример вспомогательной команды, которая включает в себя фрейм 25, содержащий поле 48 идентификации команды считывания и поле 49 идентификации резидентной данной в вычислительном устройстве 12.
В частности, использование команды считывания согласно протоколу UDS объединенных сервисов диагностики имеет вышеупомянутые преимущества. В этом конкретном случае поле 48 содержит SID $22, который является известным шестнадцатеричным кодом считывания данных при помощи идентификатора DID. Поле 49 содержит идентификатор DID зоны 63 данных вычислительного устройства 12, которая была указана в поле 35 фрейма 21.
Переход 111 может напрямую перевести способ от первоначального этапа 110 на этап 114. Предпочтительно, но не обязательно, переход 111 переводит способ от первоначального этапа 110 на промежуточный этап 112.
На этапе 112 вычислительное устройство 11 проверяет, является ли целостным или нет описание 27 главной команды с учетом заранее определенных правил безопасности, которые не являются объектом настоящего изобретения. В случае, когда осуществляют этап 112, переход 113 подтверждается, если проверенное описание 27 главной команды является целостным, или переход 117 подтверждается, если проверенное описание 27 главной команды не является целостным. После подтверждения перехода 113 активируют этап 114.
На этапе 114 или после этапа 112, если он существует, вычислительное устройство 11 устанавливает периодический сигнал в занятое состояние, то есть после подтверждения перехода 111 при получении команды записи от вычислительного устройства 10. Соответственно, вычислительное устройство 11 отвечает на команду записи путем передачи подтверждения получения или квитанции. Например, в случае использования протокола UDS вычислительное устройство 11 передает фрейм 22, первое поле 37 которого содержит код SID со значением $6Е и второе поле 38 которого содержит значение поля 32 фрейма 21, чтобы вычислительное устройство 10 могло распознать переданную команду записи, которой соответствует полученное подтверждение получения. Иначе говоря, поле 38 представляет собой поле идентификатора первой выделенной зоны 61.
Получение вычислительным устройством 10 периодического сигнала, установленного в занятое состояние, или получение фрейма 22 подтверждает переход 105, который переводит способ с этапа 104 на этап 106 в вычислительном устройстве 10. На этапе 106 вычислительное устройство 10 находится в ожидании сигнала, установленного в готовое состояние.
Первоначально на этапе 120 спящего режима заявленного способа диалога вычислительное устройство 12 подтверждает переход 121, когда оно получает вспомогательную команду, выраженную фреймом 25, переданным вычислительным устройством 11 на бортовой шине 2. Подтверждение перехода 121 активирует этап 122, на котором вычислительное устройство 12 передает ответ на полученную вспомогательную команду. Ответ, переданный в вычислительное устройство 11, включает в себя фрейм 26, который содержит поле 50 идентификации ответа, в данном случае на команду считывания, поле 51 идентификации указанной резидентной данной и поле 52, содержащее значение резидентной данной 63, идентифицированной полем 51, как показано на фиг. 2.
В предпочтительном случае применения протокола UDS поле 50 содержит SID $62, который является известным шестнадцатеричным кодом ответа на считывание данных при помощи идентификатора DID. Поле 51 содержит идентификатор DID зоны 63 данных вычислительного устройства 12, которая была указана в поле 49 фрейма 25. После этого вычислительное устройство 12 возвращается на этап 120 спящего режима.
Получение ответа вычислительным устройством 11 подтверждает переход 115, который переводит способ диалога с этапа 114 на этап 116, на котором вычислительное устройство 11 генерирует описание 28 ответа на главную команду, которая в данном случае является командой для считывания резидентной данной 63 в вычислительном устройстве 12. Описание 28 ответа включает в себя поля 43, 44, 45, каждое из которых содержит соответственно значения полей 33, 34, 35 описания 27 команды, чтобы идентифицировать, что описание ответа является именно описанием, соответствующим описанию главной команды. Описание 28 ответа включает в себя также поле 47, которое содержит значение, содержащееся в поле 52 фрейма 26. Вычислительное устройство 11 сохраняет описание 28 ответа во второй выделенной зоне 62 данных, резидентной в памяти вычислительного устройства 11.
После этого на этапе 116 вычислительное устройство 11 устанавливает периодический сигнал в готовое состояние.
Переход 107 подтверждается, когда вычислительное устройство 10 обнаруживает, что вычислительное устройство 11 готово для ответа. В случае предпочтительного варианта осуществления изобретения переход 107 подтверждается получением периодического сигнала в готовом состоянии.
Подтверждение перехода 107 активирует этап 108 в вычислительном устройстве 10. На этапе 108, поскольку вычислительное устройство 11 было обнаружено готовым для ответа на команду считывания, вычислительное устройство 10 передает команду считывания второй выделенной зоны 62 в вычислительное устройство 11. Команда считывания выражается, например, фреймом 23, как показано на фиг. 2. Фрейм 23 содержит поле 39 идентификации команды как команды считывания и поле 40 идентификатора второй выделенной зоны 62 данных.
В частности, в предпочтительном случае применения протокола UDS поле 39 содержит значение $22, которое идентифицирует команду считывания, и поле 40 содержит значение DID, которое является адресом выделенной зоны 62 данных в памяти вычислительного устройства 11.
Переход 119 подтверждается, когда вычислительное устройство 11 получает команду считывания, выраженную фреймом 23.
Подтверждение перехода 119 активирует этап 124, на котором вычислительное устройство 11 передает ответ в вычислительное устройство 10. Ответ на полученную команду считывания включает в себя фрейм 24, который содержит поле 41 идентификатора ответа на команду считывания и поле 42 идентификатора второй выделенной зоны 62, чтобы можно было проверить, что фрейм представляет собой ответ на команду считывания, выраженную фреймом 23. Фрейм 24 включает в себя также описание 28, которое содержит поля 43, 44, 45, каждое из которых содержит значение, соответственно равное значению, содержащемуся в каждом из полей 33, 34, 35, чтобы вызвать описание главной команды. Описание 28 включает в себя также поле 47, которое содержит ответ на главную команду.
После этого вычислительное устройство 11 возвращается на первоначальный этап 110 спящего режима в рамках заявленного способа диалога.
Переход 109 подтверждается, когда вычислительное устройство 10 получает ответ на команду считывания, выраженную фреймом 24.
Подтверждение перехода 109 активирует этап 126, на котором вычислительное устройство 10 отвечает на главную команду на основании контента поля 47, извлеченного из ответа на команду считывания второй выделенной зоны вычислительного устройства 11, в которой сохранен ответ, переданный вычислительным устройством 12.
Затем вычислительное устройство 10 возвращается на первоначальный этап 100 спящего режима в рамках заявленного способа диалога.
Из всего вышесказанного понятно, что применение протокола UDS для команд заявленного способа диалога позволяет обрабатывать главную команду, которая составляет способ обновления вычислительного устройства, не прибегая к переключению из режима диагностики в режим обновления. Команды остаются командами диагностики на уровне диалога между вычислительными устройствами. Обработка функции обновления происходит через обработку главной команды в вычислительном устройстве 10 на более высоком уровне, что сравнимо с обработкой функции диагностики. Вычислительное устройство 11 может обрабатывать фреймы, связанные с функциями диагностики, передавая их напрямую от шины 1 на шину 2 и наоборот, наподобие шлюза. Вычислительное устройство 11 может обрабатывать фреймы, связанные с функциями диагностики, обрабатывая их при помощи функций диагностики, резидентных в вычислительном устройстве 11. Вычислительное устройство 11 может обрабатывать фреймы, связанные с функциями обновления, при помощи функций обновления, резидентных в вычислительном устройстве 11, как оно бы делало для функций диагностики, резидентных в вычислительном устройстве 11. Достаточно одного протокольного пакета, а именно протокольного пакета UDS, чтобы обрабатывать как команды чистой диагностики, так и команды обновления. Когда команда чистой диагностики передается от шины 1 на шину 2 в отсутствие команды, связанной с обновлением цифрового компонента, вычислительное устройство 11 устанавливает периодический сигнал в занятое состояние, просто переводя в режим ожидания команду, связанную с обновлением, которая могла бы поступить во время обработки команды чистой диагностики. Когда команда, связанная с обновлением, передается от шины 1 на шину 2 в отсутствие команды чистой диагностики, вычислительное устройство 11 устанавливает периодический сигнал в занятое положение, просто игнорируя команду чистой диагностики, которая могла бы поступать во время обработки команды, связанной с обновлением цифрового компонента, что в рамках способа диагностики дает возможность опять передать команды чистой диагностики, когда вычислительное устройство 11 опять устанавливает периодический сигнал в готовое состояние.
Передача команд считывания и записи, связанных с обработкой главной команды, от вычислительного устройства 10, соединенного с бортовой шиной 1, не требует команды, получаемой от удаленного сервера, чтобы опять запустить процесс обновления, как только периодический сигнал будет установлен в готовое состояние. Таким образом, процесс обновления может происходить без необходимости дистанционного соединения транспортного средства, поскольку данные обновления были предварительно дистанционно загружены в вычислительное устройство 10.
Все, что было пояснено в качестве примера для процесса обновления совместно с процессом диагностики, можно применять для других процессов, совпадающих с процессом диагностики, посредством применения заявленного способа диалога.
Главная команда способа диалога, когда она предназначена для считывания данной в одном из вычислительных устройств 12, 13, 14, соединенном с шиной 2, может просто применяться при помощи простой команды считывания данной, предназначенной напрямую для того из вычислительных устройств 12, 13, 14, в котором находится данная, например, для вычислительного устройства 12. Однако это априори простое решение может создать проблему управления общим временем, которое будет разделять передачу простой команды считывания и получение ответа и которое будет представлять собой суммарное время, необходимое для передачи простой команды считывания от вычислительного устройства 10 в вычислительное устройство 11, затем для передачи простой команды считывания от вычислительного устройства 11 в вычислительное устройство 12, передачи ответа вычислительным устройством 12, передачи ответа от вычислительного устройства 12 в вычислительное устройство 11, затем передачи ответа от вычислительного устройства 11 в вычислительное устройство 10. Это суммарное время может быстро оказаться неприемлемым в случае сильной активности на шинах 1 и 2, что часто происходит на работающем транспортном средстве.
Замена простой команды считывания на команду записи в первой выделенной зоне данных вычислительного устройства 11, после которой следует команда считывания во второй выделенной зоне данных вычислительного устройства 11, позволяет преодолеть проблему слишком длительного времени, упомянутого в предыдущем абзаце. Первое время, которое разделяет команду записи в соответствии с изобретением и ответ на команду записи, уменьшается до суммарного времени, необходимого для передачи команды записи от вычислительного устройства 10 в вычислительное устройство 11, затем для передачи ответа, как правило, простой квитанции от вычислительного устройства 11 в вычислительное устройство 10. Второе время, которое разделяет команду считывания в соответствии с изобретением и ответ на команду считывания, уменьшается до суммарного времени, необходимого для передачи команды считывания от вычислительного устройства 10 в вычислительное устройство 11, затем для передачи ответа от вычислительного устройства 11 в вычислительное устройство 10. Третье время, которое разделяет конец первого времени и начало второго времени не имеет значения, так как на этапе ожидания 106 способа достаточно постоянно считывать состояние периодического сигнала до обнаружения его готовности. В частности, способ является робастным в отношении прерывания, которое могло бы произойти в течение указанного третьего времени, например, в случае отключения электрического контакта в транспортном средстве. Заявленный способ может возобновиться на этапе, на котором он был остановлен перед прерыванием.
Согласно версии выполнения, содержащей этап 112, на котором вычислительное устройство 11 проверяет, является ли целостным или нет описание 27 главной команды, переход 117 подтверждается, когда проверенное описание 27 главной команды оказывается нецелостным. Подтверждение перехода 117 активирует этап 118, на котором вычислительное устройство 11 записывает тревожный сигнал во второй выделенной зоне 62, затем устанавливает периодический сигнал в готовое состояние.
Заявленный способ диалога можно применять для других главных команд, отличных от главной команды для считывания данной в первом вычислительном устройстве, соединенном с бортовой шиной 2, при обработке которой вычислительное устройство 11 передает в первое вычислительное устройство только одну вспомогательную команду, которая представляет собой команду считывания данной, чтобы ответить на главную команду.
На фиг. 4 показаны этапы способа диалога, в котором вычислительное устройство 10 обрабатывает главную команду, которая является командой для установки цифрового компонента, например, в вычислительном устройстве 12. Этот тип команды применяют, например, для установки одной или нескольких цифровых программ. Цифровой компонент может относиться как к исполняемой программе, так и к базе данных или любой другой цифровой структуре, например, такой как программа источника или таблица параметров конфигурации.
Вычислительное устройство 10, первоначально находящееся на этапе 100 спящего режима, переходит на этап 202, когда запрос установки в рамках способа более высокого порядка, например, способа обновления вычислительного устройства 12, подтверждает переход 201. Например, запрос установки может содержать идентификатор вычислительного устройства среди вычислительных устройств 12, 13, 14, соединенных с бортовой шиной 2, в данном случае идентификатор вычислительного устройства 12. Например, запрос установки может содержать файл, например, в формате HTML, с метками, идентифицирующими блоки физической памяти вычислительного устройства 12, в каждом из которых записан контент файла HTML, заключенный между двумя метками, идентифицирующими один и тот же блок 64 физической памяти. Блоки физической памяти являются блоками типа перезаписываемой постоянной памяти, например, типа EEPROM.
На этапе 202 вычислительное устройство 10 создает описание главной команды на основании запроса, который подтвердил переход 201, затем генерирует команду записи описания главной команды в первой выделенной зоне 61 данных, резидентной в памяти вычислительного устройства 11.
На фиг. 2 представлен пример команды записи, в котором поле 31 фрейма 21 постоянно идентифицирует команду, генерируемую как команду записи, поле 32 постоянно идентифицирует первую выделенную зону 61. В описании 27 главной команды поле 33 содержит, например, две буквы “EI”, которые указывают главную команду типа «Исполнить установку». В примере, представленном на фиг. 4, поле 34 идентифицирует, в частности, номинативно, целевое вычислительное устройство, соединенное с шиной 2, для которого применяют главную команду, например, вычислительное устройство 1.. Поле 35 содержит параметр, значение которого идентифицирует пакет, содержащий по меньшей мере, один цифровой компонент, устанавливаемый в целевом вычислительном устройстве.
В частном случае применения команды записи в соответствии с протоколом UDS поле 31 содержит SID $2E, который является известным шестнадцатеричным кодом записи данных при помощи идентификатора DID, в данном случае соответствующего выделенной зоне 61.
Переход 203 от этапа 202 к этапу 204 подтверждается, когда обнаружена готовность вычислительного устройства 11 ответить на команду записи, поддерживаемую фреймом 21. И в данном случае тоже, если вычислительное устройство 11 осуществляет функцию шлюза для другого применения заявленного способа диалога или функцию шлюза для команды, генерируемой другим способом, например, способом диагностики, вычислительное устройство остается в ожидании на этапе 202. Вычислительное устройство 10 не занимает бесполезно шину 1 попытками передачи команды, которые остались бы без результата с учетом занятости вычислительного устройства 11 другими функциями. В примере текущей обработки команды диагностики, относящейся к другому способу, моментальный перевод в режим ожидания способа диалога на этапе 202 позволяет исполнить команду диагностики, не прерывая способа диагностики.
Можно обнаружить, является ли вычислительное устройство 11 готовым, например, при помощи сигнала, имеющего два состояния: готовое, занятое, периодически передаваемого вычислительным устройством 11 на шину 1.
На первоначальном этапе 110 спящего режима вычислительное устройство 11 по умолчанию устанавливает сигнал в готовое состояние. Как только вычислительное устройство 11 получает команду как в рамках заявленного способа диалога, так и любого другого способа, например, способа диагностики, вычислительное устройство 11 устанавливает сигнал в занятое состояние, пока не завершит обработку текущей команды.
На этапе 204, поскольку вычислительное устройство 11 обнаружено как готовое для ответа на команду записи, вычислительное устройство 10 передает команду записи в вычислительное устройство 11. Для передачи команды записи вычислительное устройство 10 может включить фрейм 21 в фрейм CAN на шине 1 или иным образом, например, включить фрейм 21 в фрейм на IP, если на шине 1 применяют протокол Ethernet для транспортного средства.
Получение команды записи в вычислительном устройстве 11 подтверждает переход 211, который переводит вычислительное устройство 11 из первоначального этапа 100 на этап 212, на котором вычислительное устройство 11 записывает описание 27 в первой выделенной зоне 61, затем сразу же передает в вычислительное устройство 10 подтверждение нормального исполнения команды записи. Например, в случае применения протокола UDS подтверждение нормального исполнения команды записи выражено фреймом 22, в котором поле 37 содержит значение $6E, и поле 38 содержит DID зоны 61.
Получение фрейма 22 в вычислительном устройстве 10 подтверждает переход 205, который переводит вычислительное устройство 10 от этапа 204 на этап 206, на котором вычислительное устройство 10 считывает состояние сигнала, периодически передаваемого вычислительным устройством 11, в ожидании считывания готового состояния. В предпочтительной версии заявленного способа периодический сигнал содержит также указание на состояние продвижения исполнения этапов в вычислительном устройстве 11.
На этапе 212 вычислительное устройство 11 устанавливает периодический сигнал в занятое состояние, затем передает в одно из вычислительных устройств 12, 13, 14, идентифицированное в поле 34, например, в вычислительное устройство 12, последовательность из одной или нескольких вспомогательных команд для ответа на главную команду на основании описания 27 главной команды, записанного в выделенной зоне 61 данных вычислительного устройства 11. Когда периодический сигнал дополнительно содержит указание на состояние продвижения, вычислительное устройство 11 указывает соответствующее состояние продвижения на этапе 212.
В конкретном случае, представленном на фиг. 4, в котором главная команда является командой для установки по меньшей мере одного цифрового компонента в вычислительном устройстве, каждая первая вспомогательная команда состоит в считывании атрибута вычислительного устройства 12, знание которого необходимо для правильной установки цифрового компонента или цифровых компонентов. В качестве первой вспомогательной команды можно использовать пример, представленный на фиг. 2, который содержит фрейм 25, содержащий поле 48 идентификации команды считывания и поле 49 идентификации резидентной данной в вычислительном устройстве 12, соответствующей считанному атрибуту.
Получение последовательности первых вспомогательных команд в вычислительном устройстве 12 подтверждает переход 221, который активирует этап 222, на котором вычислительное устройство 12 передает ответ на каждую полученную первую вспомогательную команду.
В случае использования команд, соответствующих протоколу UDS, поле 48 содержит SID $22. Каждый ответ на первую вспомогательную команду на модели фрейма 26 на фиг. 2 содержит SID $62 в поле 50, идентификацию атрибута в поле 51 и считанное значение атрибута в поле 52.
Получение в вычислительном устройстве 11 последнего ответа на последовательность первых вспомогательных команд подтверждает переход 213, который переводит вычислительное устройство 11 из этапа 212 на этап 214, на котором вычислительное устройство 11 передает в вычислительное устройство 12 последовательность из одной или нескольких вторых вспомогательных команд, чтобы проверить, что вычислительное устройство 12 не затронуто неисправностью, которая может помешать установке цифрового компонента.
На фиг. 2 представлен пример вспомогательной команды, который включает в себя фрейм 29, содержащий поле 53 указания вспомогательной команды, поле 54 идентификации цели в вычислительном устройстве 12, к которой относится вспомогательная команда и которая может содержать или нет поле 55 расширения команды. В частности, для второй вспомогательной команды цель является кодом неисправности.
Получение последовательности вторых вспомогательных команд в вычислительном устройстве 12 подтверждает переход 223, активирующий этап 224, на котором вычислительное устройство 12 передает ответ на каждую полученную вторую вспомогательную команду.
В случае применения команд в соответствии с протоколом UDS поле 53 содержит SID $29, который указывает считывание информации DTC (сокращение от “Diagnostic Trouble Codes” или «Коды диагностируемой неисправности» на английском языке). Поле 54 содержит код идентификации неисправности, как правило, на пять буквенно-цифровых знаков. Например, но не ограничительно, первым знаком является буква Р, обозначающая силовую установку транспортного средства (например, включающую в себя двигатель и коробку передач), буква С обозначает шасси транспортного средства, буква В обозначает корпус транспортного средства, буква U обозначает сеть пользователя. Например, но не ограничительно, вторым знаком является цифра 0, обозначающая родовую неисправность, цифра 1 обозначает фабричный дефект. Следующие знаки относятся к элементам подсистемы системы, идентифицированной буквой в начале кода неисправности, например, Р01хх для измерения топлива и окислителя, Р02хх для измерений топлива и окислителя, связанных более конкретно с системой впрыска, Р04хх для вспомогательного контроля выбросов. Каждый ответ на вторую вспомогательную команду, показанную на модели фрейма 30 на фиг. 2, содержит SID $59 в поле 56, вызов кода неисправности в поле 57 и считанное значение состояния кода неисправности в поле 59, например, «неисправно» или «исправно».
Когда периодический сигнал дополнительно содержит указание состояния продвижения, вычислительное устройство 11 указывает состояние продвижения, соответствующее неисправному или исправному состоянию, содержащемуся в поле 59.
Получение в вычислительном устройстве 11 последнего ответа на последовательность вторых вспомогательных команд подтверждает переход 215, который переводит вычислительное устройство 11 из этапа 214 на этап 216, на котором вычислительное устройство 11 передает в вычислительное устройство 12 третью вспомогательную команду для запуска сеанса обновления.
Можно использовать фрейм 29, показанный на фиг. 2, чтобы отобразить третью вспомогательную команду. В случае третьей вспомогательной команды целью является, в частности, окончание операции, осуществляемой в вычислительном устройстве 12.
Получение третьей вспомогательной команды в вычислительном устройстве 12 подтверждает переход 225, который активирует этап 226, на котором вычислительное устройство 12 передает ответ на полученную третью вспомогательную команду.
В случае использования команд в соответствии с протоколом UDS поле 53 содержит SID $10, который обозначает контроль диагностического сеанса. Можно напомнить, что доступность различных сервисов зависит от сеанса диагностики, который является активным. Например, используют сеанс, называемый “Extended Diagnostic Session”, чтобы освободить дополнительные функции диагностики, например, регулировку датчиков. Например, используют также сеанс, называемый “Safety system Diagnostic Session”, чтобы протестировать все функции диагностики, критические для безопасности, например, протестировать подушки безопасности. В отсутствие конкретного сеанса диагностики обычно активным является сеанс по умолчанию “Default Session”, в частности, на этапе 120, и сохраняют его до подтверждения перехода 225. Поле 54 содержит код идентификации сеанса, который в данном случае специально предназначен для установки одного или нескольких цифровых компонентов в вычислительном устройстве 12, например, программного обеспечения “FOTA”. Ответ на третью вспомогательную команду, показанный на модели фрейма 30 на фиг. 2, содержит SID $50 в поле 56 и вызов кода идентификации сеанса в поле 57. Когда периодический сигнал дополнительно содержит указание состояния продвижения, вычислительное устройство 11 указывает состояние продвижения, соответствующее началу сеанса обновления.
Получение в вычислительном устройстве 11 ответа на третью вспомогательную команду подтверждает переход 217, который переводит вычислительное устройство 11 с этапа 216 на этап 218, на котором вычислительное устройство 11 передает в вычислительное устройство 12 четвертую вспомогательную команду, чтобы проверить отсутствие неисправностей в блоках памяти вычислительного устройства 12 с целью их использования для записи в них обновлений цифровых компонентов.
Можно использовать фрейм 29, показанный на фиг. 2, чтобы отобразить четвертую вспомогательную команду. Для четвертой вспомогательной команды целью является код неисправности памяти.
Получение четвертой вспомогательной команды в вычислительном устройстве 12 подтверждает переход 227, который активирует этап 228, на котором вычислительное устройство 12 передает ответ на полученную четвертую вспомогательную команду.
В случае использования команд в соответствии с протоколом UDS поле 53 содержит SID $19, который обозначает считывание диагностируемой неисправности. Ответ на четвертую вспомогательную команду, показанный на модели фрейма 30 на фиг. 2, содержит SID $59 в поле 56 и вызов кода неисправности в поле 57. Поле 59 содержит значение, которое показывает, присутствует или отсутствует неисправность, идентифицируемая кодом, содержащимся в поле 57. Когда периодический сигнал дополнительно содержит указание состояния продвижения, вычислительное устройство 11 указывает состояние продвижения, соответствующее состоянию присутствия или отсутствия неисправности, содержащемуся в поле 59.
Получение в вычислительном устройстве 11 ответа на четвертую вспомогательную команду подтверждает переход 219, который переводит вычислительное устройство 11 от этапа 218 на этап 220, на котором вычислительное устройство 11 передает в вычислительное устройство 12 последовательность пятых вспомогательных команд, чтобы проверить отсутствие неисправностей в счетчиках блоков памяти вычислительного устройства 12 с целью их использования для записи обновлений цифровых компонентов в блоках памяти.
Можно использовать фрейм 29, показанный на фиг. 2, чтобы отобразить каждую пятую вспомогательную команду. Для пятой вспомогательной команды целью является код неисправности счетчика памяти.
Получение последовательности пятых вспомогательных команд в вычислительном устройстве 12 подтверждает переход 229, который активирует этап 230, на котором вычислительное устройство 12 передает ответ на каждую полученную пятую вспомогательную команду.
В случае использования команд в соответствии с протоколом UDS поле 53 содержит SID $19, который обозначает считывание диагностируемой неисправности. Ответ на каждую пятую вспомогательную команду, показанный на модели фрейма 30 на фиг. 2, содержит SID $59 в поле 56 и вызов кода неисправности в поле 57. Поле 59 содержит значение, которое показывает, присутствует или отсутствует неисправность, идентифицируемая кодом, содержащимся в поле 57. Когда периодический сигнал дополнительно содержит указание состояния продвижения, вычислительное устройство 11 указывает состояние продвижения, соответствующее состоянию присутствия или отсутствия неисправности, содержащемуся в поле 59.
На фиг. 5 показаны этапы, следующие за этапами, показанными на фиг. 4. Получение в вычислительном устройстве 12 ответа на последнюю пятую вспомогательную команду подтверждает переход 251, который переводит вычислительное устройство 11 с этапа 220 на этап 252 первого цикла, на котором вычислительное устройство 11 передает в вычислительное устройство 12 шестую вспомогательную команду для считывания адреса начала первого блока памяти в памяти вычислительного устройства 12.
Можно использовать фрейм 29, показанный на фиг. 2, для отображения каждой шестой вспомогательной команды. Для шестой вспомогательной команды целью является, в частности, ссылка DID данной, относящейся к регистру адресации блоков памяти в вычислительном устройстве 12.
Получение шестой вспомогательной манды в вычислительном устройстве 12 подтверждает переход 261, который активирует этап 262, на котором вычислительное устройство 12 передает ответ на полученную шестую вспомогательную команду.
В случае использования команд в соответствии с протоколом UDS поле 53 содержит SID $22, который обозначает считывание данной, идентифицированной ссылкой DID в поле 54. Ответ на шестую вспомогательную команду, показанный на модели фрейма 30 на фиг. 2, содержит SID $62 в поле 56 и вызов ссылки DID в поле 57. Поле 59 содержит значение, указывающее адрес начала первого блока памяти, предусмотренного для загрузки в него первого цифрового компонента.
Получение в вычислительном устройстве 11 ответа на шестую вспомогательную команду подтверждает переход 253, который переводит вычислительное устройство 11 с этапа 252 на этап 254 первого цикла, на котором вычислительное устройство 11 передает в вычислительное устройство 12 седьмую вспомогательную команду для записи ссылки первого цифрового компонента в начале первого блока памяти вычислительного устройства 12.
Можно использовать фрейм 29, показанный на фиг. 2, чтобы отобразить каждую седьмую вспомогательную команду. Для седьмой вспомогательной команды целью является, в частности, ссылка DID данной, относящейся к регистру именования цифровых компонентов в вычислительном устройстве 12.
Получение седьмой вспомогательной команды в вычислительном устройстве 12 подтверждает переход 263, который активирует этап 264, на котором вычислительное устройство 12 передает ответ на полученную седьмую вспомогательную команду.
В случае использования команд в соответствии с протоколом UDS поле 53 содержит SID $2Е, который обозначает запись данной, идентифицированной ссылкой DID поля 54. Ответ на седьмую вспомогательную команду, показанный на модели фрейма 30 на фиг. 2, содержит SID $6Е в поле 56 и вызов ссылки DID в поле 57. Поле 59 содержит значение, указывающее квитанцию команды записи.
Получение в вычислительном устройстве 11 ответа на седьмую вспомогательную команду подтверждает переход 255, который переводит вычислительное устройство 11 с этапа 254 на этап 256 первого цикла, на котором вычислительное устройство 11 передает в вычислительное устройство 12 восьмую вспомогательную команду, чтобы затребовать загрузку цифрового компонента в первый блок памяти вычислительного устройства 12.
Можно использовать фрейм 29, показанный на фиг. 2, чтобы отобразить восьмую вспомогательную команду. Для восьмой вспомогательной команды целью является, в частности, адрес первого блока памяти.
Получение восьмой вспомогательной команды в вычислительном устройстве 12 подтверждает переход 265, который активирует этап 266, на котором вычислительное устройство 12 стирает содержимое текущего блока памяти, затем передает ответ на полученную восьмую вспомогательную команду, который подтверждает нормальное исполнение восьмой команды. Можно напомнить, что физический блок памяти типа перезаписываемой памяти требует стирания перед повторной записью.
В случае использования команд в соответствии с протоколом UDS поле 53 содержит SID $34, который обозначает запрос загрузки из вычислительного устройства 11 в вычислительное устройство 12. Поле 55 содержит размер загружаемого цифрового компонента. Ответ на восьмую вспомогательную команду, показанный на модели фрейма 30 на фиг. 2, содержит SID $74 в поле 56 и вызов адреса блока памяти в поле 57. Поле 58 указывает размер загружаемого цифрового компонента. Поле 59 содержит значение, указывающее максимально допустимый размер загрузки.
Получение в вычислительном устройстве 11 ответа на восьмую вспомогательную команду подтверждает переход 257, который переводит вычислительное устройство 11 с этапа 256 на этап 258 первого цикла, на котором вычислительное устройство 11 передает в вычислительное устройство 12 девятую вспомогательную команду для переноса контента цифрового компонента в первый блок памяти вычислительного устройства 12.
Можно использовать фрейм 29, показанный на фиг. 2, чтобы отобразить девятую вспомогательную команду. Для девятой вспомогательной команды целью является, в частности, адрес первого блока памяти.
Получение девятой вспомогательной команды в вычислительном устройстве 12 подтверждает переход 267, который активирует этап 268, на котором вычислительное устройство 12 передает ответ на полученную девятую вспомогательную команду.
В случае использования команд в соответствии с протоколом UDS поле 53 содержит SID $36, который обозначает команду переноса контента цифрового компонента в текущий физический блок памяти. Как известно, перенос производят пакетами максимального размера. Если размер контента превышает максимальный размер пакета, перенос повторяют до полной передачи контента. Ответ на девятую вспомогательную команду, показанный на модели фрейма 30 на фиг. 2, содержит SID $76 в поле 56 и вызов адреса блока памяти в поле 57.
Получение ответа в вычислительном устройстве 11 ответа на девятую вспомогательную команду подтверждает переход 259, который переводит вычислительное устройство 11 с этапа 258 на этап 260 первого цикла, на котором вычислительное устройство 11 передает в вычислительное устройство 12 десятую вспомогательную команду, чтобы выйти из операции переноса.
Можно использовать фрейм 29, показанный на фиг. 2, чтобы отобразить десятую вспомогательную команду.
Получение десятой вспомогательной команды в вычислительном устройстве 12 подтверждает переход 269, который активирует этап 270, на котором вычислительное устройство 12 передает ответ на полученную десятую вспомогательную команду.
В случае использования команд в соответствии с протоколом UDS поле 53 содержит SID $37, который обозначает команду выхода из режима переноса. Ответ на девятую вспомогательную команду, показанный на модели фрейма 30 на фиг. 2, содержит SID $77 в поле 56 и вызов адреса блока памяти в поле 57.
Получение в вычислительном устройстве 11 ответа на десятую вспомогательную команду подтверждает переход 291, который переводит вычислительное устройство 11 с этапа 260 на этап 292 первого цикла, на котором вычислительное устройство 11 проверяет, существует ли следующий цифровой компонент, предназначенный для загрузки в следующий блок памяти.
Присутствие следующего цифрового компонента подтверждает переход 293, который возвращает способ на повторное исполнение этапов 252-292, каждый из которых соответствует следующему блоку памяти с точки зрения идентификации, размера и адреса блока памяти.
Отсутствие цифрового компонента, требующего следующего физического блока памяти, подтверждает переход 295, который активирует этап 296, на котором вычислительное устройство 11 передает в вычислительное устройство 12 одиннадцатую вспомогательную команду, чтобы проверить отсутствие ошибок в записи блоков памяти вычислительного устройства 12.
Можно тоже использовать фрейм 29, показанный на фиг. 2, для отображения одиннадцатой вспомогательной команды. Для одиннадцатой вспомогательной команды целью является, в частности, код неисправности памяти.
Получение одиннадцатой вспомогательной команды в вычислительном устройстве 12 подтверждает переход 271, который активирует этап 272, на котором вычислительное устройство 12 передает ответ на полученную одиннадцатую вспомогательную команду.
В случае использования команд в соответствии с протоколом UDS поле 53 содержит SID $19, который указывает на считывание диагностируемой неисправности. Ответ на одиннадцатую вспомогательную команду, показанный на модели фрейма 30 на фиг. 2, содержит SID $59 в поле 56 и вызов кода неисправности в поле 57. Поле 59 содержит значение, которое указывает, присутствует или отсутствует неисправность, идентифицированная кодом, содержащимся в поле 57.
На фиг. 6 показаны последние этапы способа после этапов, показанных на фиг. 5. Получение в вычислительном устройстве 11 ответа на одиннадцатую вспомогательную команду подтверждает переход 297 второго цикла, который активирует этап 298, на котором вычислительное устройство 11 передает в вычислительное устройство 12 двенадцатую вспомогательную команду, чтобы активировать первую локальную программу, в которой вычислительное устройство 12 проверяет, что первый цифровой компонент был правильно записан в первом блоке памяти вычислительного устройства 12.
Можно использовать фрейм 29, показанный на фиг. 2, для отображения каждой двенадцатой вспомогательной команды. Для двенадцатой вспомогательной команды целью, вписанной в поле 54, является, в частности, ссылка программы уплотнения, записанной в памяти в вычислительном устройстве 12. Поле 55 содержит адрес проверяемого блока памяти.
Получение двенадцатой вспомогательной команды в вычислительном устройстве 12 подтверждает переход 273, который активирует этап 274, на котором вычислительное устройство 12 активирует программу уплотнения, которая состоит, в частности, в вычислении уплотненного контента, записываемого в физический блок памяти. Вычислительное устройство 12 передает ответ на полученную двенадцатую вспомогательную команду, который содержит вычисленное уплотнение. Ответ на двенадцатую вспомогательную команду позволяет вычислительному устройству 11 сравнить уплотнение, вычисленное вычислительным устройством 12, с уплотнением, полученным вычислительным устройством 11 до загрузки контента в физический блок памяти. Таким образом, вычислительное устройство 11 может проверить, что контент физического блока памяти после повторной записи соответствует контенту, загружаемому в физический блок памяти.
В случае использования команд в соответствии с протоколом UDS поле 53 содержит SID $31, который обозначает активацию программы, идентифицированной ссылкой программы поля 54. Ответ на двенадцатую вспомогательную команду, показанный на модели фрейма на фиг. 2, содержит SID $62 в поле 56 и вызов ссылки DID в поле 57. Поле 59 содержит значение, указывающее адрес начала первого блока памяти, предусмотренного для загрузки первого цифрового компонента.
Получение в вычислительном устройстве 11 ответа на шестую вспомогательную команду подтверждает переход 299, который активирует этап 300, на котором вычислительное устройство 11 проверяет, существует ли следующий физический блок памяти для следующей загрузки цифрового компонента.
Наличие следующего физического блока памяти подтверждает переход 301, который возвращает на этап 298, на котором первый блок заменяют следующим блоком и так далее до последнего физического блока памяти.
Отсутствие следующего физического блока памяти подтверждает переход 303, который активирует этап 304, на котором вычислительное устройство 11 передает в вычислительное устройство 12 тринадцатую вспомогательную команду для считывания памяти вычислительного устройства 12, выделенной для записи обнаруженных неисправностей.
Получение тринадцатой вспомогательной команды в вычислительном устройстве 12 подтверждает переход 275, который активирует этап 276, на котором вычислительное устройство 12 передает ответ на полученную тринадцатую вспомогательную команду, который содержит неисправности, обнаруженные в ходе исполнения предыдущих этапов.
В случае использования команд в соответствии с протоколом UDS поле 53 содержит SID $19, который обозначает считывание информации Диагностики Кодированного Нарушения (DTC). Следует напомнить, что каждая неисправность DTC, обработанная вычислительным устройством 12, записывается со своим собственным кодом в выделенную память вычислительного устройства 12, называемую памятью ошибок, которую можно считывать в любой момент. Соответствующие каждой неисправности дополнительные данные, в частности, связанные с контекстом появления неисправности, тоже записываются и могут быть считаны в любой момент. Ответ на тринадцатую вспомогательную команду, показанный на модели фрейма 30 на фиг. 2, содержит SID $59 в поле 56 и вызов ссылки DID в поле 57. Поле 59 воспроизводит контент памяти ошибок.
Получение в вычислительном устройстве 11 ответа на тринадцатую вспомогательную команду подтверждает переход 305, который активирует этап 306, на котором вычислительное устройство 11 передает четырнадцатую вспомогательную команду в вычислительное устройство 12. Четырнадцатая вспомогательная команда выводит вычислительное устройство 12 из сеанса, открытого на этапе 216, чтобы вернуть его в сеанс по умолчанию. Таким образом, вычислительное устройство 12 учитывает между этапами 216 и 306 только команды, исходящие от вычислительного устройства 11 в рамках описанного выше способа диалога. Перед этапом 216 и после этапа 306 вычислительное устройство 12 может учитывать как команды, исходящие от вычислительного устройства 11 в рамках части способа диалога, описанной выше со ссылками на фиг. 5 и 6, так и команды, исходящие от вычислительного устройства 11 в рамках другой части способа диалога, описанной выше со ссылками на фиг. 4, а также команды, полученные в рамках другого способа, например, способа локальной диагностики или дистанционной диагностики.
Получение четырнадцатой вспомогательной команды в вычислительном устройстве 11 подтверждает переход 277, который активирует этап 278, на котором вычислительное устройство 12 передает ответ на полученную четырнадцатую вспомогательную команду.
В случае использования команд в соответствии с протоколом UDS поле 53 содержит SID $10, который обозначает контроль сеанса диагностики. Поле 54 содержит код идентификации сеанса, который является в данном случае сеансом по умолчанию “Default Session”. Ответ на четырнадцатую вспомогательную команду, показанный на модели фрейма 30 на фиг. 2, содержит SID $50 в поле 56 и вызов кода идентификации сеанса в поле 57. Если периодический сигнал дополнительно содержит указание состояния продвижения, вычислительное устройство 11 указывает состояние продвижения, соответствующее завершению сеанса обновления.
Получение в вычислительном устройстве 11 ответа на четырнадцатую вспомогательную команду подтверждает переход 307, который переводит вычислительное устройство 11 с этапа 306 на этап 308, на котором вычислительное устройство 11 передает в вычислительное устройство 12 пятнадцатую вспомогательную команду для активации второй локальной программы.
Согласно первому варианту выполнения, вычислительное устройство 12 содержит единственный активируемый банк перезаписываемой памяти и два не активируемых банка перезаписываемой памяти. Единственный активируемый банк содержит блоки памяти, содержащие цифровые компоненты, исполняемые и/или доступные в реальном времени для вычислительного устройства 12, когда транспортное средство работает. Первый не активируемый банк содержит вышеупомянутые блоки памяти для загрузки цифрового компонента или цифровых компонентов обновления. Второй не активируемый банк используется второй локальной программой, исполнение которой состоит в копировании контента активируемого банка во второй не активируемый банк до копирования контента первого не активируемого банка в единственный активируемый банк, когда работа транспортного средства остановлена, чтобы активировать единственный активируемый банк с цифровыми компонентами, обновляемыми при следующем запуске транспортного средства.
Согласно второму варианту выполнения, вычислительное устройство 12 содержит два спаренных активируемых банка перезаписываемой памяти. Первый спаренный активируемый банк содержит блоки памяти, содержащие цифровые компоненты, исполняемые и/или доступные в реальном времени для вычислительного устройства 12, когда транспортное средство работает. Второй спаренный активируемый банк содержит вышеупомянутые блоки памяти для загрузки цифрового компонента или цифровых компонентов обновления. Исполнение второй локальной программы состоит в этом случае в простом переключении начала исполнения в реальном времени первого спаренного активируемого банка на второй спаренный активируемый банк, когда работа транспортного средства остановлена, чтобы активировать второй спаренный активируемый банк с цифровыми компонентами, обновляемыми при следующем запуске транспортного средства, при этом второй спаренный активируемый банк будет выполнять роль первого спаренного активируемого банка и наоборот.
Следует отметить, что все или часть вспомогательных команд, предшествующих пятнадцатой вспомогательной команде, могут исполняться во время работы транспортного средства. Оба описанных выше варианта выполнения требуют лишь короткого времени для перевода работы транспортного средства на исполнение и/или доступ цифровых компонентов в реальном времени, иначе говоря, короткого времени для остановки работы транспортного средства для осуществления обновления цифровых компонентов.
Можно использовать фрейм 29, показанный на фиг. 2, для отображения пятнадцатой вспомогательной команды. Для пятнадцатой вспомогательной команды целью, записанной в поле 54, является, в частности, ссылка программы переключения, записанной в памяти вычислительного устройства 12.
Получение пятнадцатой вспомогательной команды в вычислительном устройстве 12 подтверждает переход 279, который активирует этап 280, на котором вычислительное устройство 12 активирует вторую локальную программу, иначе говоря, программу переключения до передачи ответа на полученную пятнадцатую вспомогательную команду, который содержит подтверждение нормального исполнения второй локальной программы. Таким образом, вычислительное устройство 11 может проверить, что вычислительное устройство 12 готово для любого будущего доступа и/или исполнения считываемых обновленных цифровых компонентов.
В случае использования команд в соответствии с протоколом UDS поле 53 содержит SID $31, который обозначает активацию программы, идентифицированной ссылкой программы поля 54. Ответ на пятнадцатую вспомогательную команду, показанный на модели фрейма 30 на фиг. 2, содержит SID $62 в поле 56.
Получение в вычислительном устройстве 11 ответа на пятнадцатую вспомогательную команду подтверждает переход 309, который активирует этап 310, на котором вычислительное устройство 11 переводит периодический сигнал в готовое состояние. Периодический сигнал может также содержать степень продвижения по фазам, объединяющим несколько вспомогательных команд. Например, вычислительное устройство 11 устанавливает степень продвижения на этапе 212, чтобы указать фазу проверки параметров, на этапе 252, чтобы указать фазу текущей установки, и на этапе 310, чтобы указать конец фазы установки.
Получение в вычислительном устройстве 10 периодического сигнала в готовом состоянии подтверждает переход 207, который активирует первоначальный этап 100 в вычислительном устройстве 10, в ожидании возможной другой главной команды.

Claims (27)

1. Способ диалога, при помощи первой шины (1), установленной в транспортном средстве, с первым вычислительным устройством (12, 13, 14), соединенным со второй бортовой шиной (2) транспортного средства, при этом первая шина соединена со второй шиной через второе вычислительное устройство (11), а третье вычислительное устройство (10) соединено с первой бортовой шиной и выполнено с возможностью обработки главной команды, предназначенной для первого вычислительного устройства (12, 13, 14), содержащий этапы, на которых:
- генерируют (102), с помощью третьего вычислительного устройства (10), команду записи описания (27) указанной главной команды в первой выделенной зоне (61) данных второго вычислительного устройства (11);
- передают (104), с помощью третьего вычислительного устройства (10), указанную команду записи на второе вычислительное устройство (11), когда обнаруживают (103) готовность второго вычислительного устройства (11) ответить на указанную команду записи;
- передают (114), с помощью второго вычислительного устройства (11), на первое вычислительное устройство (12, 13, 14) одну или более вспомогательных команд, чтобы ответить на главную команду после получения (111) указанной команды записи;
- передают (122), с помощью первого вычислительного устройства (12, 13, 14), ответ на каждую полученную вспомогательную команду (121);
- сохраняют (116), с помощью второго вычислительного устройства (11), по меньшей мере один полученный ответ (115) во второй выделенной зоне (62) данных;
- передают (108), с помощью третьего вычислительного устройства (10), команду считывания указанной второй выделенной зоны (62), при обнаружении (107) готовности второго вычислительного устройства (11) ответить на указанную команду считывания, обеспечиваемого посредством передачи, вторым вычислительным устройством (11), по первой шине (1), сигнала с двумя состояниями «готово», «не готово»;
- передают (124), с помощью второго вычислительного устройства (11), ответ на полученную команду считывания (119);
- отвечают (126), с помощью третьего вычислительного устройства, на главную команду, по меньшей мере, с момента получения (109) ответа на команду считывания второй выделенной зоны второго вычислительного устройства (11), в которой сохранен ответ, переданный первым вычислительным устройством (12, 13, 14).
2. Способ по п. 1, дополнительно содержащий этапы, на которых:
- устанавливают (112), с помощью второго вычислительного устройства (11), сигнал в состояние «не готово» после получения (111) команды записи от третьего вычислительного устройства (10);
- устанавливают (116), с помощью второго вычислительного устройства (11), сигнал в состояние «готово» после получения (115) ответа от первого вычислительного устройства (12, 13, 14).
3. Способ по п. 2, дополнительно содержащий этап, на котором ожидают (106), с помощью третьего вычислительного устройства (10), сигнал, установленный в состояние «готово», после получения (105) указанного сигнала, установленного в состояние «не готово».
4. Способ по п. 2 или 3, в котором указанный сигнал дополнительно содержит степень продвижения одной или более вспомогательных команд, передаваемых вторым вычислительным устройством (11).
5. Способ по любому из пп. 1-4, в котором указанная команда записи включает в себя первый фрейм (21), содержащий первое поле (31) идентификации указанной команды записи, первое поле (32) идентификации первой выделенной зоны (61) и по меньшей мере одно поле (33, 34, 35) описания (27) главной команды.
6. Способ по любому из пп. 1-5, в котором описание (27) главной команды содержит поле (33) типа главной команды, поле (34) идентификации второго вычислительного устройства (12, 13, 14) и поле (35) параметра, необходимого для второго вычислительного устройства (12, 13, 14), для генерирования передаваемого ответа.
7. Способ по любому из пп. 1-6, дополнительно содержащий этап, на котором передают (112), с помощью второго вычислительного устройства (11), подтверждение на первое вычислительное устройство (10) после получения (111) указанной команды записи.
8. Способ по п. 7, в котором подтверждение включает в себя второй фрейм (22), содержит поле (37) идентификатора подтверждения и второе поле (38) идентификатора первой выделенной зоны (61).
9. Способ по любому из пп. 1-8, в котором указанная команда считывания, передаваемая третьим вычислительным устройством (10), включает в себя третий фрейм (23), содержащий второе поле (39) идентификации команды и первое поле (40) идентификатора второй выделенной зоны (62).
10. Способ по любому из пп. 1-9, в котором указанный ответ на команду считывания включает в себя четвертый фрейм (24), содержащий четвертое поле (41) идентификатора ответа на команду считывания, второе поле (42) идентификатора второй выделенной зоны (62), по меньшей мере одно поле (43, 44, 45) вызова описания главной команды и поле (47) контента ответа на главную команду.
11. Способ по любому из пп. 1-10, в котором команды считывания и команды записи являются командами по протоколу объединенных сервисов диагностики (UDS).
12. Способ по любому из пп. 1-11, дополнительно содержащий этапы, на которых:
- проверяют (112), с помощью второго вычислительного устройства (11), является ли описание указанной главной команды целостным, после получения (111) указанной команды записи;
- передают (114), с помощью второго вычислительного устройства (11), на первое вычислительное устройство (12, 13, 14), одну или более вспомогательных команд, для ответа на главную команду, только если описание указанной главной команды является целостным (113);
- записи (118), с помощью второго вычислительного устройства (11), в памяти, сигнала тревоги во второй выделенной зоне, если описание указанной главной команды не является целостным (117).
13. Способ по любому из пп. 1-12, в котором указанная главная команда является командой для считывания резидентных данных в первом вычислительном устройстве, а вспомогательная команда включает в себя пятый фрейм (25), содержащий поле (48) идентификации команды считывания и поле (49) идентификации указанных резидентных данных, причем ответ, передаваемый первым вычислительным устройством (12, 13, 14), включает в себя шестой фрейм (26), содержащий поле (50) идентификации ответа на команду считывания, поле (51) идентификации указанных резидентных данных и поле (52), содержащее значение указанных резидентных данных.
14. Способ по любому из пп. 1-12, в котором указанная главная команда является командой установки цифрового компонента в указанном первом вычислительном устройстве.
RU2022101288A 2019-06-25 2020-05-29 Способ взаимодействия с вычислительным устройством на бортовой шине транспортного средства RU2816885C2 (ru)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FRFR1906883 2019-06-25

Publications (2)

Publication Number Publication Date
RU2022101288A RU2022101288A (ru) 2023-07-25
RU2816885C2 true RU2816885C2 (ru) 2024-04-08

Family

ID=

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150071115A1 (en) * 2012-05-16 2015-03-12 Bayerische Motoren Werke Aktiengesellschaft Data Logging or Stimulation in Automotive Ethernet Networks Using the Vehicle Infrastructure
US20150242198A1 (en) * 2014-02-25 2015-08-27 Ford Global Technologies, Llc Silent in-vehicle software updates
US20160294855A1 (en) * 2014-04-17 2016-10-06 Panasonic Intellectual Property Corporation Of America Method for sensing fraudulent frames transmitted to in-vehicle network
US20170351445A1 (en) * 2015-01-05 2017-12-07 Autonetworks Technologies, Ltd. Vehicle-mounted relay device
US20180203685A1 (en) * 2015-07-23 2018-07-19 Denso Corporation Relay device, electronic control unit, and vehicle-mounted system
US20180217953A1 (en) * 2017-01-27 2018-08-02 Ford Global Technologies, Llc Method and apparatus for distributed computing using controller area network protocols
WO2019069308A1 (en) * 2017-10-03 2019-04-11 Argus Cyber Security Ltd. SYSTEM AND METHOD FOR VALIDATION OF COMMUNICATION AUTHENTICITY IN ONBOARD NETWORKS

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150071115A1 (en) * 2012-05-16 2015-03-12 Bayerische Motoren Werke Aktiengesellschaft Data Logging or Stimulation in Automotive Ethernet Networks Using the Vehicle Infrastructure
US20150242198A1 (en) * 2014-02-25 2015-08-27 Ford Global Technologies, Llc Silent in-vehicle software updates
US20160294855A1 (en) * 2014-04-17 2016-10-06 Panasonic Intellectual Property Corporation Of America Method for sensing fraudulent frames transmitted to in-vehicle network
US20170351445A1 (en) * 2015-01-05 2017-12-07 Autonetworks Technologies, Ltd. Vehicle-mounted relay device
US20180203685A1 (en) * 2015-07-23 2018-07-19 Denso Corporation Relay device, electronic control unit, and vehicle-mounted system
US20180217953A1 (en) * 2017-01-27 2018-08-02 Ford Global Technologies, Llc Method and apparatus for distributed computing using controller area network protocols
WO2019069308A1 (en) * 2017-10-03 2019-04-11 Argus Cyber Security Ltd. SYSTEM AND METHOD FOR VALIDATION OF COMMUNICATION AUTHENTICITY IN ONBOARD NETWORKS

Similar Documents

Publication Publication Date Title
US11360762B2 (en) Information update apparatus and information update method
CN109804355B (zh) 软件更新装置、软件更新方法、软件更新系统
US10735260B2 (en) Gateway device, firmware update method, and recording medium
US20170192770A1 (en) Gateway device, in-vehicle network system, and firmware update method
US11455393B2 (en) Device for securing diagnostic commands to a control unit, and corresponding motor vehicle
CN111381844A (zh) 更新车辆ecu固件的方法及装置
US10274919B2 (en) Method, device and computer program product for programming a plurality of control units
CN112051832B (zh) 基于仿真节点的故障测试方法、装置、系统及存储介质
US20230297368A1 (en) Software update apparatus, software update method, non-transitory storage medium storing program, vehicle, and ota master
US20220055637A1 (en) Electronic control unit and computer readable medium
RU2816885C2 (ru) Способ взаимодействия с вычислительным устройством на бортовой шине транспортного средства
KR20090000008A (ko) 차량진단시 진단단말기간의 충돌방지 시스템 및 그 방법
US20220245085A1 (en) Method of dialogue with a computer on an on-board bus of a vehicle
CN116382735A (zh) 域控制器升级的进度显示、异常处理方法及其系统、设备
US20230367664A1 (en) Method for managing ecu on vehicle, and ecu and readable storage medium
CN111505977B (zh) 功能辅助调试方法、功能调试方法、装置、系统及介质
KR102290796B1 (ko) Lin 통신 오류 발생에 따른 ecu 자동 재시작 방법
CN113711209A (zh) 电子控制装置
CN112799370B (zh) 一种控制装置、车载系统软件还原方法及其系统
US7216261B2 (en) Method for controlling a program run of a central data processor
CN112698885B (zh) 运行方法和装置
US20230373500A1 (en) Management of supervision of an electronic component of a land motor vehicle
CN113824620A (zh) 一种分区切换方法、装置、车辆和存储介质
CN117130635A (zh) 一种诊断升级方法、诊断系统、电子设备及汽车
JP2908430B1 (ja) マルチプロセッサシステムのホストプロセッサ監視装置および監視方法