commaai/opendbc

a Python API for your car

解決する課題

opendbc は、車両の内部コンピュータシステムと通信するための標準化されたオープンソースインターフェースを提供します。これにより、開発者はリアルタイムの車両データ(速度や操舵角など)を読み取り、車線維持支援システム (LKAS) やアダプティブクルーズコントロール (ACC) を搭載した現代の自動車に対して制御コマンド(アクセル、ブレーキ、ステアリングなど)を送信できます。

仕組み

このプロジェクトは、高レベルのソフトウェアと自動車のコントローラーエリアネットワーク (CAN) バスとの間のブリッジとして機能します。DBC (CAN Database) ファイルを使用して、車両コンポーネント間で送信されるメッセージの構造を定義します。このライブラリには、メッセージを解析するためのツール、高レベル制御のための Python API、そして車両に送信されるコマンドが安全な動作パラメータ内に収まるよう厳格なルールを強制する安全レイヤーが含まれています。

対象ユーザー

カスタム車両管理アプリケーションを構築したい、あるいは openpilot のような高度な運転支援システム (ADAS) を自身の車両に統合したいと考えている自動車エンジニア、研究者、ホビーユーザー向けに設計されています。特に、CAN メッセージをリバースエンジニアリングして新しい車種のサポートを「移植」しようとしている人にとって非常に有用です。

ハイライト

  • 包括的な CAN ライブラリ: 標準化された DBC ファイルを使用して CAN メッセージを解析および構築するためのツールが含まれています。
  • 安全第一のアーキテクチャ: 危険な車両コマンドを防ぐために厳格な動作制限を強制する専用の安全ファームウェアレイヤーを備えています。
  • コミュニティ主導の移植: 新しい自動車メーカーやモデルのサポートを追加するための構造化されたフレームワークとドキュメントを提供します。
  • 豊富なツール群: 車両信号のリバースエンジニアリング、制御システムのチューニング、および自動テストによる車両ポートの検証のためのユーティリティが含まれています。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト