Современное программное обеспечение для автомобиля. Программное обеспечение автомобиля

Занимаясь организацией или расширением автосервиса, необходимо помнить, что приобретенное оборудование и нанятые работники - это далеко не все, что необходимо для организации работы станции технического обслуживания, в том числе, диагностического поста. Как правило, один из самых необходимых компонентов -информационное обеспечение. Иногда на СТО пытаются утолить информационный голод книгами и компакт-дисками из магазинов и рынков, рассчитанными на использование автолюбителями и содержащими информацию по отдельной модели автомобиля определенных годов выпуска. Эти попытки обречены на провал по нескольким причинам: Во-первых, эти книги предназначены для частного, а не профессионального использования - в них отсутствуют важные аспекты ремонта, а главное - диагностики (при этим они изобилуют ненужными для профессионала подробностями), Во вторых, для хорошего покрытия такой информацией всего, кто и что у нас ездит, нужно много таких книг.

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

Должно использоваться) в любом автосервисе (от гаража до крупного дилерского центра):

1. Управленческо-учетное программное обеспечение (ПО)

К этому классу относится бухгалтерское ПО, ПО автоматизации бизнес-процессов, ПО ведения складского учета, ПО учета рабочего времени, ПО подготовки и учета заказ-нарядов и пр. Многие из программных продуктов обеспечивают интеграцию с каталогами запасных частей (для автоматической загрузки цен и моделей деталей в бухгалтерско-учетные документы), информационными базами нормо-часов (для автоматизации загрузки номенклатур работ и расчета их стоимости).

Специфика этого ПО пока не входит в сферу специализации нашей фирмы - поэтому более подробную информацию о нем я не даю. На рынке представлено большое количество программных продуктов для решения этих задач таких как автономных, так и являющихся надстройками к универсальным системам (например, продуктов на базе платформы 1С). Вот «для затравки» несколько ссылок - продукты компании «Автодилер», внедренческого центра 1С-Рарус, компании «BVS Logic», компании «VERDI», система «TurboService», система «LogicStar-Avto», система «АИС@».

2. ПО специализированного оборудования - сюда относится программное обеспечение сканеров, мотор-тестеров, ПО для работы с газоанализаторами и дымомерами, ПО для чип-тюнинга, ПО для измерительных систем кузовного ремонта и т.п. Здесь, в принципе все понятно. Как правило, такое ПО поставляется вместе с самим оборудованием. Зачастую программное обеспечение этого класса выполняет не только свои основные (диагностические и пр.), но и справочные, обучающие функции.

С одной стороны возможности того или иного программно-аппаратного комплекса ограничены возможностями существующего для него ПО. Например, очень популярный сейчас адаптер K-L-Line никак не сможет работать с большим количеством марок, чем работает сейчас без выхода для него нового программного обеспечения. С другой стороны, границы развития возможностей программного обеспечения жестко предопределены аппаратными возможностями «железа». Поэтому, например, тот же K-L-Line адаптер никак не сможет работать с автомобилями, имеющими диагностический протокол обмена OBD-II-VPW или OBD-II-PWM, так как они просто аппаратно несовместимы (то есть невозможно под него разработать ПО с соответствующими функциями).

Некоторое ПО специализированного оборудования может использоваться и отдельно (без аппаратной части) - например, программа Autorobot Data System для известного одноименного комплекса правки кузовов с электронной измерительной системой может использоваться отдельно как справочная система по контрольным точкам и размерам кузовов.

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

Дилерские базы данных включают в себя информацию по одной или нескольким родственным маркам автомобилей (например, VW-Audi) и подготовлены самим автопроизводителем. Информация в них по отдельной марке наиболее полная и достоверная. Однако, официально такие базы распространяются только в рамках дилерской сети соответствующей марки. Соответственно, недилерские станции(даже если они специализируются на одной марке) могут приобрести эту информацию только у пиратов. Наибольшую известность имеют дилерские базы по диагностике и ремонту VW-Audi (ELSA), BMW (BMW TIS, BMW WDS), Ford (Ford TIS), Mercedes (Mercedes WIS), Opel (Opel TIS), Renault (Dialogys), Volvo (VADIS) и пр., а также каталоги запчастей VW-Audi (ETKA), BMW (BMW ETK), Mercedes (Mercedes EPC) и пр.

Мультимарочные базы включают информацию сразу по многим маркам автомобилей (разработчики баз стараются охватить «все что ездит»). Мультимарочность базы не исключает того, что в ней содержаться и некоторые дилерские материалы. Наиболее известными продуктами являются базы по диагностике и ремонту BOSCH ESI, Alldata, Autodata, Mitchell-on-Demand, Atris WM-KAT-Technik, Open@Car, Workshop, CAPS, ATSG и др.

Лицензионные версии этих баз в России мало доступны в плане приобретения – так как нам известны всего два официальных распространителя - это фирма BOSCH (база ESIftronic]) и фирма Легион-Автодата (база Autodata). Стоимость лицензионных продуктов создает ДОС таточно высокий барьер перед мелкими и средними станциями - около 980 долл. за полную версию базы Autodata и от нескольких тысяч евро (!) за годовой абонемент (!) на полный ESI. Контрафактные версии мультимарчных баз предлагаются буквально на каждом шагу за десятикратно меньшие суммы - от 30 до 250 долл.

Мультимарочные базы могут быть неспециализированными (включают информацию практически обо всем - например, база Autodata содержит и регулировочные параметры, и нормо-часы и информацию по диагностике электронных систем управления, и электросхемы и многое-многое другое) и специализированными (касаются информации по отдельным системам автомобиля - например в базе CAPS рассматриваются электронные системы управления, а в базах ATSG и Mitchell for Transmissions - коробки передач). Естественно, каждая база содержит разное количество информационных разделов - как правило, мультимарочные базы содержат следующую информацию:

Technical data - различные регулировочные данные по автомобилям. В базах имеются сотни и тысячи различных параметров, нормативов и прочего. Помнить эти цифры даже по одной обслуживаемой марке невозможно, но также невозможно и заниматься ремонтом и/или диагностикой, не имея их под рукой;

Repair times - основные нормы времени на ремонтные и регулировочные операции. Этот раздел может быть «встроен» в базу (Autodata), поставляться как дополнительный модуль, поставляться в виде отдельной базы;

Maintenance и Service schedules - сервисные интервалы и описания сервисных операций;

TSB (Technical Service Bulletins) - технические сервисные бюллетени - руководства и рекомендации от автопроизводителей по устранению конкретных типичных неисправностей и по другим вопросам. Эти руководства содержатся практически по всех дилерских базах (Ford TIS, Opel TIS, BMW TIS), а также в некоторых мультимарочных базах (например, в Mitchell on Demand и Alldata). Также в мультимарочных базах, например в базе AutoData, встречается аналогичный по назначению раздел Trouble shooter (разрешение конкретных неполадок). Зачастую руководства по устранению неисправностей представляются в виде алгоритмов или блок-схем (такие блок-схемы можно купить и отдельно в виде книги - «Блок-схемы поиска неисправностей в системах впрыска и зажигания бензиновых двигателей».

Сюда можно отнести и полезные таблицы (Fault tables) с анализом диагностических кодов неисправностей (DTC - Diagnostic Trouble Code) - такие разделы есть практически во всех электронных базах (Mitchell, Autodata, ELSA, Opel TIS и пр.) и содержат не только расшифровки кодов неисправностей, но и симптомы их проявления, возможные причины их возникновения, перечни проверок для устранения. Такая информация особенно полезна для начинающих диагностов;

Workshop или Repair - описания устройства, ремонта и диагностики отдельных систем автомобиля - двигателя, КПП, АБС, системы кондиционирования и пр.;

Component locations - расположение электронных и механических компонентов в автомобиле;

Wiring diagrams или Current flow diagrams - электросхемы.

Также встречаются и другие «форматы» документации - OFM (Official Factory Manuals), SSP (Service Self Study Programm) и пр.

Отдельно можно выделить каталоги запасных частей (ЕРС -Electronic Parts Catalog). В них содержится информация о запасных частях, их применимости, взаимозаменяемости, цене, зачастую встречаются и изображения. Каталоги запчастей делятся на каталоги оригинальных (произведенных или рекомендованных автопроизводителем) и неоригинальных (произведенных сторонними производителями) запчастей. Также каталоги могут быть мономарочными (содержат информацию о, как правило, оригинальных запчастях для одной марки - наиболее известны Mercedes EPC, BMW ETK и пр.) и мультимарочные (содержат информацию по запчастям к многим маркам - например, Tecdoc). Также

встречаются специализированные каталоги по расходным материалам, тюнингу, сводные каталоги производителей запчастей и т.п.

Специально надо отметить, что обладание таким массивом ценнейшей информации не избавляет диагноста, механика или автоэлектрика от необходимости иметь большой уровень основных (базовых) знаний об устройстве автомобиля, принципах работы его систем и т.п.! Кроме того, требуются навыки работы с ПК и литературой, для того, чтобы уметь нужную информацию из этого массива достать.

Покупая информационную базу, необходимо учитывать (уточнить эти вопросы у продавца):

По каким автомобилям в базе имеется информация? Здесь важны марки, года выпуска (или модельные года), рынок, для автомобилей которого выпущена база. Относительно годов выпуска надо заметить, что практически все существующие базы содержат наиболее полную информацию только по автомобилям последнего десятилетия (в основном, начиная с 1993 г.) - в частности, это касается таких баз как ELSA, Autodata, BMW TIS и пр.

Требует пояснения момент относительно рынка автомобиля. Дело в том, что одна и та же модель автомобиля отличается в зависимости от того, в какой регион (рынок) она поставляется - причем отличия могут быть не только в комплектации (например,наличие кондиционера для жарких стран или предпускового подогревателя для Севера), но и конструкцией (правый руль вместо левого, увеличенный клиренс и т.п.). Соответственно, могут различаться электросхемы, расположение компонентов, каталожные номера запчастей и пр. В основном выделяются рынки Европы (отдельно выделяется Великобритания из-за левостороннего движения и, соответственно, машин с правым рулем), Азии (отдельно выделяется Япония - по той же причине,что и Великобритания) и Америки. «Российский рынок» обладает той спецификой, что у нас ездит понемногу и отовсюду.

При покупке базы дополнительно необходимо уточнить, для автомобилей какого рынка она предназначена. Например, база Mitchell on Demand содержит информацию об автомобилях американского рынка - то есть автомобилях, произведенных в США для внутреннего рынка, а также автомобилях, поставляемых на рынок США из других регионов (Европы, Азии). Некоторые автомобили имеет смысл искать в таких базах под другой маркой и/или с другой моделью (например, в базе нет Mitsubishi Pajero, но есть Mitsubishi Montero). Аналогичные предостережения касаются и базы Autodata (английский рынок). Однако, и в Mitchell, и в Autodata, как правило, указывается, когда приведенные параметры касаются только машин конкретного рынка.

По каким системам в базе имеется информация? Соответственно, если Ваша мастерская специализируется на КПП - надо иметь специализированную базу (например, Mitchell on Demand For Transmissions и/или ATSG), но и «общие» базы также не помешают.

На каком языке выполнена оболочка базы (меню и пр.) и на каком языке в базе представлена информация? Сразу скажу, что можете не обольщаться - на русском языке даже оболочки у считанных единиц программ. Полностью русские -BMW TIS, Volvo VADIS. Частично русские - BOSCH ESI, Mercedes WIS - эти базы имеют русские оболочки и часть информации. То есть для нормальной работы хотя бы английский язык знать необходимо. Хотя бы потому, что в некоторых базах кроме русского и английского встречаются и документы на немецком (ELSA, ESIftronic], Mercedes WIS). Однако, бояться этого не стоит - технические тексты читаются достаточно легко. Хорошими помощниками при этом служат специализированные электронные и бумажные словари. Как правило, современные базы поставляются на CD или DVD. При этом DVD формат стремительно приобретает популярность, особенно при поставке баз, занимающих более 3-5 компакт-дисков (Mitchell - около 15, ESI - около 30, Alldata - около 100 CD-дисков и т.п.). Грубо 1 DVD диск заменяет 6-7 CD. Последние версии некоторых баз поставляются уже только на DVD (например, ESI). Поэтому перед покупкой серьезной базы имеет смысл подумать о приобретении DVD-привода (тем более, что по сравнению со стоимостью самой базы это копейки).

Какие системные требования к компьютеру и операционной системе предъявляет база? Большинство баз работают нормально под любой операционной системой -от Windows 98 (работа под Windows 95, как правило, не гарантируется, но и проблем не возникает) до Windows XP и Vista. Однако, бывают и «привередливые» базы - например, дилерская база по VW-Audi ELSA работает только под управлением систем на NT-платформе (Windows NT, 2000, XP, Vista). Особых требований к процессору и оперативной памяти базы, как правило, не предъявляют (естественно, чем современнее ПК - тем быстрее и комфортнее будет работа).

Важное требование - свободное место на жестком диске (винчестере). Всегда удобнее, когда база полностью будет перенесена на жесткий диск (некоторые базы предоставляют такую возможность как опцию, некоторые ставятся только в таком режиме) - это освобождает CD/DVD привод, делает ненужным постоянный поиск дисков и операции с ними, снижает вероятность порчи базы (диск легко поцарапать, облить и т.п.), ускоряет работу и т.п. Например, та же база ELSA ставится только полностью на жесткий диск и занимает на нем около 11 Гб.

Как осуществить регистрацию базы? Каков период беспрепятственного использования базы после покупки? Срок работы лицензионных баз, как правило, ограничен сроком действия абонемента (как правило, год). После его истечения требуется платное продление абонемента или покупка новой версии базы. Ограничения в работе нелицензионных версий зависят от способа регистрации базы, защиты базы, «качества взлома».

Каков порядок и стоимость обновлений? При покупке лицензионных баз эти условия обязательно оговариваются - как правило, обновления в рамках действия абонемента осуществляются бесплатно (например, у BOSCH - ежеквартально в течение года). Обновления для нелицензионных баз пиратами, как правило, не распространяются. При необходимости получения свежей версии базы Вы просто покупаете более свежую версию (справедливости ради надо отметить, что и пираты во многих случаях идут на встречу и дают в такой ситуации скидку).

4. Дополнительное (вспомогательное) справочное ПО - сюда можно отнести словари, программы для расшифровки VIN-кодов и пр. Некоторые из этих программ Вы можете даже найти в Интернет в бесплатном доступе.

5. Обучающее ПО - к сожалению, толковое обучающее ПО для специалистов сферы автосервиса нам не известно. Тем не менее, можно сказать, что некоторые производители уже включают обучающие подсистемы в поставляемое со специальными стендами ПО.

Необходимо отметить, что информация предлагается на рынке не только в электронном виде на CD и DVD, но и в виде профессиональной литературы. Преимуществами книг по сравнению с электронными базами являются доступность персоналу, не владеющему или слабо владеющему ПК (и такой еще есть!), меньшая цена лицензионных версий, наличие изданий на русском языке. Недостатками являются - неудобность поиска и работы с информацией, необходимость иметь большое количество литературы, чтобы заменить информацию по объему, соответствующую 1 компакт-диску, изнашиваемость.

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



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


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

  • Шина CAN – средство для надежного соединения множества электронных систем вместе с минимальным количеством проводов.
  • MISRA C (и C ++) – подробный список правил по использованию языка C в системах критической безопасности, таких как автомобили.
  • OSEK / VDX – стандарт для операционных систем реального времени, используемых в автомобилях и прочих подобных системах.
  • Genivi – стандарт для систем на базе Linux, используемых для информационно-развлекательных систем в автомобиле.

Рассмотрим каждый из этих стандартов поподробнее.


Шина CAN


Проводка в автомобилях традиционно прокладывается по принципу «от точки к точке». Эта схема проста для понимания и технической поддержки, но быстро становится чрезмерно сложной, когда количество электронных систем увеличивается. В какой-то момент использование системной шины начинает иметь смысл. Пучок проводов направляется от одного устройства к другому, и каждое устройство имеет уникальный адрес шины и реагирует только тогда, когда оно видит этот адрес на шине. В автомобильных системах используются несколько систем шин, но шина CAN является наиболее хорошо известной и широко применяемой.



Разработчики встраиваемых систем часто сожалеют о том, что ни один язык программирования не идеально подходит для их конкретных потребностей. В некотором смысле, эта ситуация неудивительна, потому что, хотя очень многие разработчики работают над созданием встраиваемых приложений, они по-прежнему представляют собой лишь весьма небольшой коллектив в мире программирования сообщества. Тем не менее, некоторые языки были разработаны с учетом их использования во встраиваемых системах, например, PL/M, Forth и Ada. Но они не являются общепринятыми.


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


Именно поэтому в конце 1990-х годов ассоциация Motor Industry Software Reliability Association (MISRA) представила ряд правил для использования языка C в системах транспортных средств. Этот стандарт стал известен под именем MISRA-C. Также был установлен аналогичный подход к использованию языка C++. Хотя эти принципы были написаны для разработчиков программного обеспечения, применяемого в автомобилях, вскоре они начали распространяться на другие области применения, где безопасность имеет важнейшее значение.


OSEK/VDX


OSEK/VDX является стандартом для ОСРВ, предназначенных для использования в системах управления автомобилями. Он был разработан с нуля для этой цели и включает в себя основные характеристики, необходимые для обеспечения безопасности критической системы. Ключевой особенностью является отсутствие динамических объектов; все создается статически во время сборки. Внутренняя простота этой реализации не ограничивает значительно разработчиков программного обеспечения, но устраняет значительный потенциальный источник сбоя системы. И это неудивительно, что другие отрасли проявляют интерес к данному стандарту. Операционные системы, поддерживающие OSEK/VDX, сегодня доступны от целого ряда поставщиков.



Большинство информационно-развлекательных систем в автомобилях не имеют жестких требований по безопасности и не слишком привязаны к реальному времени, поэтому Linux является хорошим выбором, поскольку он предоставляет широкий выбор дополнительных программных компонентов. И Genivi является стандартом для реализации Linux в данном контексте.

Любой электронный блок автомобиля подключен к диагностической шине - цифровой линии, позволяющей бортовой электронике взаимодействовать с диагностическим оборудованием. Здесь кроется первая проблема: хотя теоретически существует единый стандарт OBD-II, стандартизирующий метод связи с ЭБУ и тип разъема, распространяется он только на системы впрыска. «Достучаться» до блоков ABS, SRS и так далее через протокол OBD- II нельзя. Но и в системах впрыска зачастую применяются специфичные для конкретной фирмы коды ошибок и кодировка данных состояния: при диагностике абсолютно исправного автомобиля не подходящей для его ЭБУ программой можно увидеть данные, несовместимые с реальностью.

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

  • Считывание текущих и сохраненных данных . Наиболее примитивные устройства способны считывать только сохраненные и текущие ошибки, но в целях диагностики такие вещи практически бесполезны: без возможности корректно считать текущие данные (расход воздуха, степень открытия дросселя, напряжения лямбда-зондов) прибор является скорее игрушкой, чем реальным инструментом.
  • Испытание исполнительных механизмов . В зависимости от степени интеграции бортовой электроники можно проверять исправность множества электромеханических узлов: от включения бензонасоса до испытания дворников (если мотором управляет контроллер, естественно).
  • Адаптация датчиков и исполнительных механизмов . Ряд сложных узлов требуют принудительного согласования с ЭБУ: установка нулевого положения сервопривода дроссельной заслонки, задание дебета пьезофорсунок на дизелях Common Rail и так далее.
  • Изменение конфигурации . Большинство блоков являются универсальными для всего семейства автомобилей, и в них задается конфигурация, соответствующая конкретной комплектации (например, в контроллер подушек безопасности прописано число и расположение подушек). Простейшие примеры реконфигурации - изменение языка приборной панели, активация бортового компьютера, отключение неисправных подушек безопасности.

В рейтинге лучших мы постарались учесть как доступные простые автосканеры, обычно покупаемые автовладельцами для собственного использования, так и профессиональное оборудование. Единственное исключение - это дилерские сканеры, предназначенные для конкретных марок автомобилей: цена таких комплексов составляет несколько сотен тысяч рублей, а в широкой продаже дилерского оборудования нет - можно найти только дешевые китайские клоны.

Самое же главное в диагностике автомобиля - не «навороченность» прибора, а профессионализм человека, его использующего. Поэтому, покупая диагностический сканер в личное пользование, стоит задуматься - не станет ли это лишней тратой денег, и не лучше ли обратиться к настоящему диагносту?

Сталкиваясь с реалиями машиностроительной промышленности, большинство разработчиков программного обеспечения не справляются – уж очень узкоспециализированы продукты, с которыми приходится работать. Это вам не создание программ для интернет-пользователей, компьютеров и даже не мобильные приложения, а потому новички чувствуют себя, как Томас из фильма «Бегущий в лабиринте». Посмотрите, примерно, 50 секунд трейлера – и вы поймете, какой шок испытывают те, кто имеет дело с разработкой ПО для автомобилей впервые.

Все, что у вас есть - это множество терминов и инструментов, о которых вы понятия не имеете. Когда во время собеседования в одной автомобильной компании я поинтересовался, какую IDE они используют, интервьюеру мой вопрос, мягко говоря, не понравился. Я привык к Visual Studio, и наивно надеялся, что здесь для разработки встроенного программного обеспечения понадобится что-то аналогичное. Я даже не представлял, что меня ожидало! Просто море мелких и серьезных (по сложности) инструментов, которым нужна была очередная жертва.

Причем, когда речь идет о разработке программного обеспечения для автомобилей, инструменты отнюдь не единственная проблема. Практически невозможно найти литературу для новичков или просто обучающие материалы, касающиеся библиотек или архитектуры соответствующих программ. Термин «учебное пособие» и вовсе звучит неуместно, ведь сфера автомобилестроения – весьма закрытое сообщество. Да и сообществом ее вряд ли назовешь, ведь при такой конкуренции никто не должен догадаться, как вы создаете ту или иную программу. Чтобы узнать хоть что-то об отдельных инструментах и механизмах этого сегмента программирования, вы можете записаться на запредельно дорогие курсы, но ваша компания должна быть готова выложить немалую сумму и потребуется не меньше нескольких недель, чтобы получить опыт, который вам нужен уже сейчас. Очень жаль, что разобраться в специфике программирования для автомобилестроения так сложно, а потому я решил посвятить свою статью именно этой теме.

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

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

Какие темы мы рассмотрим?

  • Как встроенное программное обеспечение повышает производительность автомобиля?
  • Как встроенные приложения позволяют управлять автомобилем?
  • Какие существуют типичные ограничения CPU?
  • Как благодаря встроенным программам осуществляется процесс непрерывной обработки данных с датчиков?
  • Как это программное обеспечение структурировано и как отдельные приложения взаимодействуют между собой для управления автомобилем?
Я отвечу на эти вопросы, рассмотрев конкретный пример, а заодно сделаю обзор по разработке архитектуры встроенного программного обеспечения. В качестве примера мы возьмем полностью электронную систему рулевого управления. Это не настоящая модель, но по строению она, в принципе, похожа на то, что вы, скорее всего, видели в своем автомобиле. Мы поговорим подробнее об архитектуре, а затем перейдем к упрощенной схеме, раскрывающей суть функционала системы.

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

Данная модель частично управляется программно. Частично означает, что специализированное ПО лишь помогает водителю, но полный контроль над системой имеет именно он.

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

Работу ПО обеспечивает крошечный процессор или, если говорить точнее, микроконтроллер, по сети подключенный к датчику.

Когда водитель поворачивает руль, благодаря датчику, который постоянно передает информацию о текущем угле поворота, ПО получает соответствующий сигнал. Например, если водитель поворачивает руль на 90 ° вправо, в течение секунды сигнал датчика обрабатывается по следующему принципу:

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


Электронный блок управления (ECU)

При условии, что встроенное программное обеспечение работает корректно, при повороте руля почти мгновенно изменяется положение зубчатой рейки.


Руль - синий, рулевая рейка - розовый (прим.)

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

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

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

Лидером в разработке программ для проектирования автомобилей является компания Dassault Systemes.

Корпорации принадлежит 11 брендов программного обеспечения, которые продаются в Азии, Америке и Европе. Эти продукты включают 3-D моделирование, создание производственных симуляторов, программы, изучающие динамику жидкостей и многое другое. Корпорация предлагает программное обеспечение не только для автопроизводителей, но и для геологов и горняков. Популярные продукты компании — это система автоматизированного проектирования - CATIA, САПР (системы автоматизированного проектирования) и программный комплекс для автоматизации работ промышленного предприятия на этапах конструкторской и технологической подготовки производства -SOLIDWORKS.

В механических САПР (системы автоматизированного проектирования) компания первая на рынке. 14 из 16 автопроизводителей используют CATIA. Примечательно, что первым клиентом, производящим автомобили у Dassault Systemes была компания Honda, еще в начале 1980-х годов. До этого Dassault Systemes имели дело только с аэрокосмической промышленностью.

Методы разработки и производства автомобилей кардинально изменились за последние 20 лет. До появления мощных компьютеров и 3-D САПР в 1970 году легионы рисовальщиков в отутюженных брюках и с тощими галстуками давили на карандаши и перемалывали тонны информации. Логарифмические линейки и рейсшины доминировали в процессе, что замедляло работу и увеличивало стоимость автомобиля.

В те дни нужно было "вживую" испытать каждый компонент транспортного средства. С приходом 3-D моделирования и 3-D симуляторов делать это начали виртуально.

Для примера возьмем краш - тесты. Производство одной «живой» модели для одного краш-теста обойдется производителю в 25 тысяч долларов США. Затраты возрастают с каждым новым шагом в дизайне. Сделайте поправки на неудачные испытания и переработку некоторых параметров машины, на появление с каждым годом новых видов краш-тесов, наподобие « », и поймете, почему разорились некоторые автоконцерны. Снизить затраты помогают компьютеры и специальное программное обеспечение, которое прогнозирует поведение автомобиля, участвующего в краш-тесте, еще до посадки туда несчастных кукол.

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

Последние разработки компании Dassault Syatemes

Компания Dassault Syatemes, в этом году, разработала программу Target Zero Defects, которая помогает автопроизводителям и компаниям-поставщикам воспрепятствовать попаданию потенциально дефектного компонента в собираемое транспортное средство до запуска на линию сборки.

Инженер закладывает в программу параметры нового транспортного средства и Target Zero Defects виртуально тестирует работу электрических и механических систем автомобиля, выявляя сбои и причины сбоев. В результате, когда автолюбитель включит дворники в транспортном средстве, сработают дворники, а не клаксон или фары.

Постоянная конкурентная борьба автоконцернов увеличивает вероятность ошибки при проектировании и производстве автомобиля. Теперь с подобными проблемами будет бороться новое программное обеспечение Target Zero Defects от компании Dassault Systeme.