車用の最新ソフトウェア。 電子制御システムの診断

車の修理ソフトウェアの種類をご存知ですか?

自動車修理ソフトウェア

2 つの主なタイプの自動修復ソフトウェアは、診断またはフロント オフィス管理に使用されます。 診断 ソフトウェア自動車修理用のデータには、修理手順、トラブルシューティング手順、センサーの既知の「正しい」値、その他の貴重な情報など、さまざまな機能が含まれている場合があります。 このソフトウェアは、多くの場合、厳選された海外および国内の自動車修理サービスから入手でき、以下のことをカバーできます。 特定のブランド車。 自動車修理に特化したソフトウェアは、最新の診断ツールでも利用できます。診断ツールの中には、非常に複雑なコンピューティング デバイスを使用するものもあります。 フロントエンド ソフトウェアには、見積もり、スケジューラ、作業指示書ジェネレータが含まれる場合があります。 高品質のソフトウェア設定は、メルセデス、アウディ、BMW の車を修理している http://savtom.com/ で実行できます。

メカニックは歴史的に ほとんど修理マニュアルや経験から得た情報。 いくつかの出版社が作成した 有用な情報そしてそれを本の形で入手できるようにしました。 これらの本の主なタイプは、診断マニュアルと定額参考書の 2 つです。 診断マニュアルには仕様と修理手順が記載されており、固定速度マニュアルには特定の各ジョブが完了するまでにかかる時間を見積もっていました。 職場でのパーソナル コンピュータの普及に伴い、この種の情報は自動車修理ソフトウェアに変換されています。

最新の自動車修理施設のほとんどには、何らかのコンピューター化された設備が備わっています。 情報システム診断と修理を支援します。 最も単純な形式これは、修復手順、仕様、およびその他の情報が含まれるコンパクト ディスク (CD) またはデジタル多用途ディスク (DVD) のセットを含む 1 台のコンピューター端末です。 技術者は年、メーカー、モデルを入力できます 車両このタイプのシステムにアクセスして、特定の情報を検索します。 これらのプログラムの中には、さまざまな回路図、配線図、分解図も含まれているものもあります。

この基本的なタイプの自動車修理ソフトウェアにはいくつかのバリエーションがあります。 一部のサービス プロバイダーは、インターネット接続を通じてこれらすべての情報を提供します。 このようにして、技術者または販売店は月額料金を支払い、常に最新の情報にアクセスできます。 このようなサービスでは、その分野の本物の専門家によって編集された重要な情報や修理手順が提供されます。 通常、専用のスキャナーや診断装置用のソフトウェアも提供されており、一部のプログラムではラップトップをスキャン ツールに変えることもできます。

もう 1 つの主要なタイプの自動修復ソフトウェアは、通常、オフィスのフロントで使用されます。 レートの公正な評価は次の 1 つです。 必須の機能このソフトウェア。 このタイプのソフトウェアを使用すると、技術またはサービスの開発者は、車両の年式、メーカー、モデルを入力して、修理にどれくらい時間がかかるかを知ることができます。 これらの固定料金の数値を部品の価格と組み合わせて見積もりを作成できます。 このタイプのソフトウェアは、スケジュール機能を提供し、作業指示書を生成し、販売を追跡することもできます。

私たちのハイテク時代では、以下のような電子コンポーネントを基にして動作するすべての革新的な製品が使用されているのは周知の事実です。 携帯電話衛星に至るまで、ユニットの機能プロセスを制御する多くの内部「充填物」が含まれています。

多くの点で、これは車両、より単純に言えば自動車にも当てはまります。 現代の車には電子機器がたくさん搭載されているため、なぜここにドライバーがいるのかと不思議に思うことがあります。

自動システムはどの程度安全ですか?

しかし、すべてがそれほどシンプルで安全なので、ドライバーが車を運転しやすくすることが主な役割である車を完全に信頼できますか? 答えはまったく明らかではありません。

このソフトウェアが 現代の車これは、現在最も人気のあるコンピューター オペレーティング システムの 1 つである Windows 7 の約 2.5 倍のコード行で構成されています。

このことからどのような結論が導き出せるでしょうか? 非常に単純なことですが、このような膨大な量のデータを使用するとエラーが発生する可能性があり、その後、車全体の誤った動作に影響を与えることは明らかです。

例として、次のようなケースがありました。 トヨタ プリウス。 システムの複雑さをすべて掘り下げるつもりはありません。 自動運転エンジンは、システムエラーが発生した場合に、設置に組み込まれた半導体が過熱し、これが車が突然停止する可能性があるという事実につながることにのみ注意します。 システム全体をアップデートするには、サービスセンターに行く必要があります。

電気自動車メーカー

現在、世界で最も人気のある電気自動車メーカーは、より高度な方法を実際に使用しています。つまり、無線通信を使用してリモートでシステムを更新できます。 しかし、ここでは専門家の意見に注意深く耳を傾ける必要があります。専門家の意見はほぼ満場一致で、この方法は当初思われているほど安全ではないと主張しています。 なぜ?

実際、この場合、優れたハッカーは通常のラップトップを使用して車両のオートメーションにアクセスできる可能性があります。 これを明確に確認したのは、コンピュータ専門家のチャーリー・ミラー氏とクリス・ヴァラセク氏がブラックハットカンファレンスで実証した実験だった。 ハッカーたちは車の電子機器のハッキングをシミュレートし、それがどのような結果をもたらすかを示しました。

これは単なる科学的な例であり、誰も怪我をしなかったのは良かったです。 速度が上がり時速80kmに達したところ、突然車が指令に反応しなくなり、ブレーキが完全に効かなくなり、アクセルペダルを踏むと車が右に急旋回した。

その後、最も驚くべきことが起こりました。害を及ぼしたソフトウェアです。 自動システム車のコントロールが電光石火で消えたので、外見上はすべてが事故のように見えました。 E

このハッカーの実験は、現代の自動車エレクトロニクスの世界ではすべてがそれほど完璧ではないことを示しており、自動車メーカーはエレクトロニクスを使用する際の快適さと安全性の最適な組み合わせを提供するためにまだ多くの作業を行っていることがわかりました。 車載システム車。

現代の車のソフトウェアとは何かについての記事。 ソフトウェアの機能、プロセス、テクノロジー。 記事の最後に - 興味深いビデオ車に必要な5つのライフハックについて!


レビュー内容:

現代の自動車は、複雑なソフトウェアを必要とする電子充填なしでは考えられません。 車を運転するとき、車の中でどのようなプロセスが行われているかについてはほとんど考えません。コンピューターのようなモニターがないため、プログラムの動作は存在しないかのように視覚化されません。 しかし、それらは存在します。

車載用ソフトウェアの特徴


自動車用の最新のソフトウェアは非常に信頼性が高く、ハードウェアの故障率は年間 100 万件に 1 件に過ぎず、それも例外的なものにすぎません。

現在、すべての自動車には複数の電子制御ユニット (ECU)、つまり電子制御ユニット (ECU) が搭載されており、自動車の電子ネットワークを通じて相互に通信します。


これらのブロック間の対話は、バス アーキテクチャによって実行されます。バス アーキテクチャは、CAN、コントローラ エリア ネットワーク、および特別なデジタル機器からの情報を送信するように設計された特別なネットワークである MOST、メディア指向システム トランス、FIexRay などのコントローラのセットです。 、ローカル相互接続システム (LIN) も同様です。

リストにあるバスを PC 向けのイーサネットと比較すると、車内で処理されるデータ量が少ないため、速度が低下します。 ただし、この最小限の情報は文字通り数ミリ秒以内に処理する必要があります。

ECUの数の増加に伴い、開発者はより複雑な構造を必要とする車載ネットワークの複雑な構造を作成する必要があります。 自動車用ソフトウェアと他の目的のデジタル技術の主な違いを見てみましょう。

  • 信頼性 - かなり複雑な ECU ネットワーク内の車両システム プログラムは、使用期間全体を通じて可能な限り確実に動作する必要があります。
  • 実行される機能の安全性 - ESC とブレーキ システムは故障なく動作する必要があり、これはソフトウェアとその開発プロセスそのものに対してすでに非常に深刻な要件を意味しています。
  • インタラクションの速度 – 特別なソフトウェア アーキテクチャと高度なオペレーティング システムがなければ、自動車の電子コンポーネントの即時応答 (最大ミリ秒) は不可能です。
  • 信頼性の高いアーキテクチャ - 車両ソフトウェアは最大限の電磁両立性を確保し、歪んだ信号の影響を受けないようにする必要があります。
  • 電子機械サイクルのノードの通信。
注意:いかなる場合でも、動作中に ECU をリセットしないでください。

ECUの主要コンポーネント


ECU はかなり複雑なボードであり、その上にはマイクロコントローラーに加えて、何百もの他の要素が搭載されています。 主な詳細を見てみましょう。
  1. アナログ - デジタル コンバーター (ADC) - この機器は、特定のデータからインジケーターを取得するように設計されています。 自動車用センサー、酸素センサーを含む。 実際のところ、プロセッサはデジタル値のみを認識でき、たとえば、酸素インジケーターは 0 ~ 1.1 V の電圧の電気信号のみを生成します。 ADC はこのデータを 10 ビットの 2 進数に変換し、プロセッサが理解できるようにします。
  2. ドライバーとは、信号を変換してデジタル機器を制御するためのプログラムです。
  3. デジタル - アナログ コンバーター (DAC) - 特定の車両エンジン コンポーネントを実行するためのアナログ信号を提供します。
  4. 通信チップ – これらのチップにより、車両に搭載されているさまざまな通信規格の実装が可能になります。 実稼働環境ではそのような標準がいくつかありますが、その中で最も一般的なのは CAN (Controller-Area Networking) です。 毎秒 500 k/ビットの速度を実現します。これは、毎秒最大数百の操作を実行するモジュールにとって不可欠です。

プロセスとテクノロジー


最初の自動車用ソフトウェアが登場して以来、多くのことが変わりました。 当初は 1 つのメーカーだけがソフトウェアを制御できましたが、現在ではそれはほぼ不可能になっています。

前世紀当初、アセンブラはソフトウェアとして使用されていました。 C言語は90年代に普及し始めました。 Robert Bosch と他の多くのメーカーは、Mathlab/Simulink および ASCET (制御およびシミュレーション テクノロジ) を使用したソフトウェアの開発を開始しました。

システム CANバス車のソフトウェアは非常に複雑になります。 その理由は、異なる ECU のプログラム間の相互作用を排除するものではないためです。 現代の車高級クラスの ECU には、合計で最大 1 億行のコードを持つ 80 個の ECU の複雑なネットワークを含めることができます。

ソフトウェアは常に複雑化しているため、エンジニアリング技術を向上させる必要があります。 したがって、業界では、新しいソフトウェアを認識するための技術的および組織的なプロセスが並行して発生し続けています。


プロセスとアーキテクチャのレベルでのエンジニアリング ソリューションも、アウトソーシングの主な条件の 1 つになりつつあります。 この状況に関連して、ボッシュは前世紀の 90 年代初頭から一部の開発を外部委託し始めました。

現在、自動車用ソフトウェアの開発は、世界中に分散したいくつかの団体によって行われています。 そして、この種の活動はビジネスにとって非常に最適なものになっています。

エンジン制御


国際的な環境規制では、車両の燃料消費量の削減とそれに伴う汚染の削減が求められています。 環境。 これは、最適な燃料噴射タイミングと点火タイミングを確保するためにトランスミッションを改善するインセンティブがあることを意味します。

たとえば、現代の ディーゼルエンジン 1行程あたり最低7回の燃料噴射が可能。 これは、最大 1800 rpm で回転する 4 気筒エンジンの場合、1 秒あたり 420 回になります。 これらすべてには、逸脱を最小限に抑えるために、新しいソフトウェア機能とより洗練された制御アルゴリズムが必要です。

有害な排出物を削減する必要があるため、交通を提供する最新の技術と方法が必要です。 したがって、補足すると、 従来型エンジン 内燃機関、将来的には、電気モーターと混合開発が自動車市場の大部分を占めるでしょう。 さらに、代替燃料の必要性も高まり、ソフトウェアがこれらの問題を解決する主な手段となるでしょう。

車両トランスミッションの制御センターはエンジン制御モジュールです。 最新のモジュールは、2 メガバイトを超えるデジタル メモリ容量を備え、最大 160 MHz のクロック周波数で動作します。 この場合、最大 30 万行のコードからなるプログラムが使用されます。

標準化


自動車用の最新のデジタル プログラムを開発する場合、必要な ECU の詳細が明確に考慮されます。つまり、ソフトウェアは特定の機器と直接対話します。 車載 ECU の数が増え続けるにつれ、ソフトウェアの再利用が優先事項になっています。 したがって、このような状況では標準化について話すのが適切です。

2003 年に、サプライヤーとメーカーは Automotive Open System Architecture (Autosar) 協会を設立しました。 組織を設立する目的は、共通の標準と共通のテクノロジーを実装することです。 現在、この協会は 150 以上の組織をカバーしており、新しい ECU 構造、基本ソフトウェア、および実際に動作するソフトウェアを作成するために必要なものすべてを一緒に開発しています。

この種の対話には、ハードウェアから独立したノードの作成が含まれます。 これにより、サプライヤーとメーカーは設計を共有し、さまざまな ECU で再利用できるようになります。

Autosar の設計は、ソフトウェアとハ​​ードウェアを分離するいくつかの抽象レイヤーで構成されています。 最上位にはアプリケーション ソフトウェアがあり、すべてのアプリケーション アクティビティを実装します。 以下は基本的な公称ソフトウェアです。 たとえばパーソナル コンピューターで行われるのと同じ方法で、ハードウェアから必要な抽象化が保証されます。 Autosar ランタイム環境は、ECU 内の通信を処理します。

Autosar テクノロジーには、インフラストラクチャの生成と構成、およびインフラストラクチャの記述の両方に使用される、必要なすべての交換フォーマットとテンプレートが含まれています。

最も一般的なのは、 現代の自動車産業(高速) Ethernet バスです。 ECU間の通信だけでなく、安全性などの新たなオプションも確実にサポートします。


環境の客観的なモデルを作成するために、さまざまな情報が定性的に分析されます。これにより、極端な場合にドライバーをサポートする新しいオプションを作成できます。

たとえば、運転手は運転中に同乗者に気を取られていたとします。 この場合、アプリケーションは前方車両のブレーキを検出し、ドライバーに警告するか、自動的にブレーキをかけます。 ちなみに、ドライバーは、危険な状況に陥るまで、そのようなソフトウェアの存在にすぐには気づかない可能性があります。

結論

今日の現代の自動車産業では、デジタル技術と家庭用電化製品の機能がより広く使用され始めているため、ソフトウェア開発の分野で新たな科学技術革命の前提条件が現れつつあります。 自動車がすべての固定電話を通じてインターネットに接続し始める日はそう遠くないでしょう。 モバイルデバイス。 そして同時に、現実的な問題を解決するためのフリーソフトウェアの役割も増大するでしょう。

車に必要な 5 つのライフハック - ビデオ:

09.04.2010 ユルゲン・メッシンガー

いつ購入しますか? 次の車、それはすでに1億行のコードになるでしょう、そしておそらくあなたはそのような車載ソフトウェアシステムの作成に伴う困難と、それが自動車業界にもたらす新たな機会について考えるべきです。

最初の電子システムは 60 年代に自動車に登場し、そのおかげで業界は劇的に変化しました。今日ではエレクトロニクス、特にソフトウェアがイノベーションの主な源となっています。 このソフトウェアは、アンチロック ブレーキなどのアクティブおよびパッシブ安全システムにより信頼性を向上させます。 ブレーキシステムそしてエレクトロニック・スタビリティ・コントロール(ESC)。 さらに、今日では家庭用電化製品が徐々に自動車に統合されています。

自動車用ソフトウェアは非常に信頼性が高く、故障率は年間 100 万トランザクションあたり 1 回以下です。 最近では、多くの車の機能がソフトウェアによって制御されていることにほとんどの人が気づいていませんが、PC ではよくあることですが、車のブルー スクリーンについて聞いたことがある人はほとんどいないでしょう。

現在、各車両には複数の電子制御ユニット (電子制御ユニット、ECU) が搭載されており、車両内ネットワークによって相互接続されています。 これらのブロックは、コントローラー エリア ネットワーク (CAN)、データ ネットワークなどの標準バス アーキテクチャを介して通信します。 マルチメディア システム(メディア指向システム トランスポート、MOST)、FlexRay、ローカル インターコネクト ネットワーク (LIN)。 PC 通信に広く使用されているイーサネットと比較すると、これらのバスは低速です。自動車では、送信される情報の量は少ないですが、数ミリ秒で処理する必要があります。 相互接続される ECU の数が増加すると、特別な電気および電子アーキテクチャを必要とする、より複雑なマシン内ネットワーク構造を作成する必要が生じます。 自動車用ソフトウェアと他の種類のソフトウェアの主な違いは次のとおりです。

  • 信頼性:自動車ソフトウェア システムは、車両の寿命全体を通じて、複雑な ECU ネットワーク内で極めて高い信頼性で動作する必要があります。
  • 機能安全:アンチロック ブレーキ システムや ESC などの機能にはトラブルのない操作が必要であり、ソフトウェア開発プロセスとプログラム自体に高い要求が課せられます。
  • リアルタイムで動作します:外部イベントへの高速応答 (マイクロ秒からミリ秒) には、最適化されたオペレーティング システムと特別なソフトウェア アーキテクチャが必要です。
  • 最小限のリソース消費:コンピューティング リソースやメモリを追加すると製品のコストが上昇し、何百万ものコピーが作成されると多額の費用がかかります。
  • 堅牢なアーキテクチャ:自動車用ソフトウェアは信号の歪みに耐え、電磁両立性をサポートする必要があります。
  • 電子機械式閉ループ制御.

ほとんどの ECU では、動作中の再起動は許容されないことを考慮する必要があります。

プロセスとテクノロジー

自動車用ソフトウェアが登場した最初の数年間は、1 人の開発者によって制御できたかもしれませんが、現在ではそれは不可能です。

70 年代に自動車ソフトウェア開発者はアセンブリ言語を使用し始め、90 年代には C が主要な言語になりました。 過去 10 年にわたり、ロバート ボッシュとその他の自動車部品サプライヤーは、ASCET (Advanced Simulation and Control Engineering Tools) と Mathlab/Simulink を使用したモデルベース ソフトウェアの開発を開始しました。

CAN などのバス システムでは、異なる ECU プログラム間の相互作用が可能になるため、ソフトウェアが大幅に複雑になります。 高級車では、現在、複雑なネットワークが最大 80 個の ECU をリンクし、合計最大 1 億行のコードが使用されています。 ソフトウェアがより複雑になるにつれて、エンジニアリング手法を改善する必要があるため、業界では現在、ソフトウェア開発のための組織的および技術的プロセスを並行して提供しています。 ボッシュには、CMMI レベル 3 に準拠したエンジニアリングおよび管理プロセスの開発に長い歴史があり、インドのエンジニアリング部門はすでにレベル 5 を達成しています。

プロセスとアーキテクチャに基づいた開発は、効果的なアウトソーシングの前提条件でもあります。ボッシュは 90 年代初頭に一部の開発のアウトソーシングを開始しました。 現在、ソフトウェアの作業は地理的に分散した複数の部門によって行われており、これはビジネスにとって非常に有益であることが判明しています。たとえば、現在 6,000 人以上のエンジニアがインドの支店で働いています。

エンジン制御

燃料消費量と排出ガスを削減するという課題 有害物質トランスミッションを改善する取り組みを促進します。たとえば、国際排出ガス規制に準拠するには、保証された燃料噴射と点火時期の遵守が必要です。 さらに、噴射頻度が大幅に増加しました - 最新 ディーゼルシステムピンヘッドより小さい燃料の液滴をストロークごとに最大 7 回噴射できます。これは、1,800 rpm で回転する 4 気筒エンジンの場合、1 秒あたり 420 回に相当します。 これには、偏差を最小限に抑えるための非常に高度な制御アルゴリズムとソフトウェア機能が必要です。

CO2 排出量削減の必要性により、さまざまな推進技術が導入され、従来の内燃エンジンに加えて、ハイブリッド システムや電気モーターが最終的には大きな市場シェアを占めるようになるでしょう。 代替燃料の消費も増加し、これらの技術を実現するにはソフトウェアが鍵となります。

エンジン制御モジュールはトランスミッション制御の基礎です 乗用車。 最新のモジュールには 2 MB を超える内蔵フラッシュ メモリが含まれており、最大 160 MHz のクロック周波数で動作し、最大 30 万行のコード量のプログラムを実行します。

サプライヤー 自動車システム多くの場合、個々の自動車メーカーよりも多くの製品を販売しています。 2008 年、ある最大手の自動車メーカーは世界生産台数 6,500 万台のうち約 900 万台を販売しましたが、ソフトウェア システム サプライヤーの販売台数はそれをはるかに上回っています。 これにより、システム プロバイダーは、 大量生産大規模なソフトウェア開発に必要です。

標準化

原則として、自動車用のソフトウェア システムは、特定の ECU の特性を考慮して開発されます。ソフトウェアは、対応するハードウェアと密接にリンクされています。 車載 ECU の数が増加するにつれて、ソフトウェアの再利用の重要性がますます高まっており、そのためには標準化が必要です。

2003 年、主要な自動車メーカーとサプライヤーは、単一の世界標準と関連テクノロジーを開発するために、Automotive Open System Architecture (Autosar、www.autosar.org) コミュニティを設立しました。 現在、Autosar には 150 社を超える企業が参加しており、このパートナーシップを通じて、ECU アーキテクチャ、コア ソフトウェア、方法論、およびアプリケーション ソフトウェアの標準化されたインターフェイスが開発されています。 この提携により、ハードウェアに依存しないコンポーネントの開発が促進され、自動車メーカーとサプライヤーがソフトウェアを共有し、異なる ECU 間で再利用できるようになります。

Autosar ECU アーキテクチャには、ソフトウェアとハ​​ードウェアを分離する複数の抽象化レイヤーがあります (図を参照)。 最上位には、すべてのアプリケーション機能を実装するアプリケーション ソフトウェアがあります。 次に、基礎となるソフトウェアが登場します。これは、PC オペレーティング システムと同様に、ハードウェアから必要な抽象化を提供します。 リアルタイム実行環境 (Autosar ランタイム環境、RTE) は、ECU 内および ECU 間のすべての対話を提供します。 Autosar 手法には、インフラストラクチャの記述、構成、生成に使用されるテンプレートと交換形式が含まれています。

現在、自動車業界の機能革新の約 80% はエレクトロニクスが占めており、そのほとんどの鍵を握るのはソフトウェアです。 ソフトウェアがハードウェア コストの中でより重要な部分を占めるようになるにつれて、ビジネス モデルではソフトウェアの再利用と共有の必要性が考慮され始めています。

イーサネットなどの高速バスは、ECU 間の通信や、特に安全分野での新機能の開発をサポートするために、今日の自動車業界でますます使用されています。 さまざまなソースからの情報が分析および統合されて環境の完全なモデルが形成され、ドライバーをサポートする新しい機能の開発が可能になります。 危機的な状況。 たとえば、ドライバーの注意が同乗者に気を取られている場合、アプリケーションは前方の車がブレーキをかけていることを検出してドライバーに警告したり、自律的にブレーキをかけたりすることができます。 ドライバーは、危険な状況が発生するまで、そのようなソフトウェアの存在に決して気づきません。

今日、自動車業界では新たなソフトウェア革命が熟しており、マルチメディアや家庭用電化製品の使用が増えています。 自動車はインターネット、あらゆる種類のモバイル機器や家庭用機器に接続され、フリーソフトウェアをベースとしたソリューションのシェアは着実に増加するでしょう。



エンジニアリング業界の現実に直面すると、ほとんどのソフトウェア開発者は対処できません。彼らが扱わなければならない製品は非常に専門的です。 これは、インターネット ユーザー、コンピュータ、さらにはプログラムを作成することではありません。 モバイルアプリケーション、初心者は映画「メイズ・ランナー」のトーマスのような気分になります。 トレーラーの約 50 秒を見ると、初めて自動車のソフトウェア開発に取り組む人が受ける衝撃がわかります。

あなたが持っているのは、まったく理解できない用語とツールの束だけです。 ある会社での面接のとき 自動車会社私は彼らがどの IDE を使用しているかを尋ねましたが、控えめに言っても、面接官は私の質問が気に入らなかったようです。 私は Visual Studio に慣れていたので、組み込みソフトウェア開発にも同様のものが必要になるだろうと素朴に期待していました。 何が私を待っているのか分かりませんでした! 小さくて深刻な(複雑さの点で)別の犠牲者を必要とする機器の海だけです。

さらに、自動車用ソフトウェアの開発に関して言えば、問題はツールだけではありません。 初心者向けの文献や、ライブラリや対応するプログラムのアーキテクチャに関する単なるトレーニング資料を見つけることはほとんど不可能です。 用語 " チュートリアル自動車業界は非常に閉鎖的なコミュニティであるため、これは完全に不適切に聞こえます。 そして、これをコミュニティと呼ぶことはほとんどできません。なぜなら、このような競争では、あなたがどのようにプログラムを作成したかを誰も推測できないからです。 プログラミングのこの部分の個々のツールやメカニズムについて少なくとも何かを学ぶには、法外に高価なコースに登録できますが、会社はかなりの金額を費やす覚悟が必要であり、資格を取得するには少なくとも数週間かかります。今のあなたに必要な経験。 自動車業界のプログラミングの詳細を理解するのが非常に難しいのは残念です。そのため、このトピックに記事を捧げることにしました。

私は、インターネット ユーザーやコンピュータ向けのアプリケーションの作成から組み込みプログラムの開発へ、そしてまたその逆への切り替えを繰り返してきたので、初心者が主に製品の最初のブロックを扱うときに直面する問題を直接知っています。 自動車業界の詳細にまったく触れたことのないプログラマーにとっても、同様の困難が生じます。

今回と次回の記事では、自動車用の組み込みプログラムの動作原理について説明するとともに、組み込みアプリケーションの珍しいアーキテクチャの深さを見ていきたいと思います。

どのようなトピックを取り上げますか?

  • 組み込みソフトウェアはどのようにして車両の性能を向上させるのでしょうか?
  • 内蔵アプリは車の制御にどのように役立ちますか?
  • 一般的な CPU 制限はどれくらいですか?
  • 組み込みソフトウェアはどのようにしてセンサー データの継続的な処理を可能にするのでしょうか?
  • このソフトウェアはどのように構成されており、個々のアプリケーションはどのように相互作用して車を制御するのでしょうか?
これらの質問に具体的な例で答えながら、組み込みソフトウェア アーキテクチャ設計の概要も説明します。 完全電子ステアリング システムを例として取り上げます。 これは実際のモデルではありませんが、その構造は基本的に車で見たものとほぼ同じです。 アーキテクチャについて詳しく説明し、その後、システムの機能の本質を示す簡略化された図に進みます。

電子ステアリングシステムの開発に関するビデオをご覧いただけます。 ちなみに私もこのチームで働いていました。

このモデルは部分的にソフトウェアによって制御されています。 これは部分的には、専用ソフトウェアはドライバーを支援するだけで、ドライバーがシステムを完全に制御できることを意味します。

ステアリングホイールが車輪に直接接続されていない、完全に電子的なステアリング システムを作成したいとします。 代わりに、センサーはステアリング角度を測定し、結果のデータをプログラムに送信します。 自動車用語で言えばサーボです。 信じられないかもしれませんが、日産のおかげで、サーボドライブを搭載したモデルがすでに市場に登場しています。

ソフトウェアは、小さなプロセッサ、より正確には、ネットワークを介してセンサーに接続されたマイクロコントローラーによって実行されます。

ドライバーがステアリングホイールを回すと、現在の回転角度に関する情報を常に送信するセンサーのおかげで、ソフトウェアが対応する信号を受信します。 たとえば、ドライバーがステアリング ホイールを右に 90 度回転すると、1 秒以内にセンサー信号が次の原理に従って処理されます。

さらに、ソフトウェアは動作も制御します 電気モーター、これはラックを左から右へ、そしてその逆方向に動かします。これは、車の前輪の回転角度が変化することを意味します。 したがって、ソフトウェアは車を左または右に向けることができます。 ソフトウェアを実行するマイクロコントローラーと電気モーターの間の通信は、次の方法によって確保されます。 電子ユニットコントロールユニット (ECU) には、マイクロコントローラー自体と、エンジンパワーシステムを調整するパワーアンプが含まれます。 したがって、私たちのプログラムはモーターへの電流供給を変化させ、ラックの位置を希望の方向に変更します。


電子制御ユニット(ECU)

内蔵ソフトウェアが正しく動作していれば、ステアリングホイールを回すと、ほぼ瞬時にラックの位置が変わります。


ステアリングホイール - 青、 ステアリングラック- ピンク (約)

ここでの情報の処理でさえ、よく知られた GUI アプリケーションの場合のようなイベント駆動型プログラミングのロジックやバッチ ファイルの法則の影響を受けないことが明らかになります。 代わりに、受信データを継続的にタイムリーに処理する必要があります。 プログラムによるセンサーの分析に時間がかかりすぎると、車のステアリングラックと前輪が遅れて動き、ドライバーがそれに気づくことになります。 緊急事態の可能性が高い そうなると車のコントロールを失うことになりますたとえば、障害物を避けるためにステアリングホイールを回した場合、車はその操作にすぐには反応しません。 この特異性により、特に標準的な電子制御ユニットのプロセッサーの性能が限られていることを考慮すると、自動車のプログラムのタイミングに対する要件が高まります。

このシリーズを続ける中で、これらの問題に対処するソフトウェア アーキテクチャを検討し、意欲的な自動車組み込みアプリケーション開発者が業界の基礎を理解するのに役立つことを願っています。