この記事は、Heart of Autonomous Driving の公開アカウントから許可を得て転載したものです。転載については出典元にお問い合わせください。 1. 背景シミュレーションは自動運転の研究開発において重要な役割を果たしており、研究開発の効率を大幅に向上させ、アルゴリズムの信頼性を保証することができます。 Baidu Apollo システムは、自動運転を学びたい人に適した優れたオープンソース プラットフォームです。 Carsim/Trucksim は、古典的な車両ダイナミクスシミュレーション ツールです。 本日は、Apollo と Trucksim を組み合わせてローカル リアルタイム シミュレーションを実現する方法についてご紹介したいと思います。このドキュメントは、シミュレーション プラットフォームを構築し、アポロ システムを学習する初心者に適しています。 2. 建築設計Apollo プロジェクトのコア コードは C++ で実装されています。Trucksim でよく使用されるインターフェイスは、simulink、python、C です。この記事では、まず、Apollo、simulink、Trucksim の共同シミュレーションのアーキテクチャと、このシミュレーションの欠点について説明します。 Apollo と Trucksim の共同シミュレーションについてお話しましょう。 2.1 Apollo、Simulink、TrucksimソリューションSimulink と Apollo は ROS を介して通信できます。Apollo のメッセージ データ形式は protobuf であり、Simulink の ROS ツールは標準の ROS msg のみをサポートしているため、Apollo に形式変換ノードを追加できます。 Simulink を使用して Trucksim を呼び出す方法についてはオンライン リソースが多数あるため、詳細には触れません。 Simulink ソリューション図 2.2 Apollo、rosbridge、TrucksimソリューションQT プロジェクトを作成し、Websocket を介して Apollo プロジェクトと通信します。Apollo プロジェクトに rosbridge を追加して (Apollo 5.0 以降のバージョンでは cyber_bridge を使用)、ros メッセージ (または cyber メッセージ) と Websocket 間の変換を実現します。 QT プロジェクトは、Websocket クライアントの役割を果たします。 QT は C++ で実装されており、Trucksim の動的ライブラリを呼び出して、Trucksim をリアルタイムで実行する機能を実現します。 ロズブリッジ解図 3. 機能実装3.1 Apollo、Simulink、Trucksimソリューション3.1.1 Simulinkの設定 Simulink ツールキットには ROS サポート パッケージが含まれています。ROS ネットワーク アドレスの構成を図 2 に示します。ホスト名/IP アドレスとポートは、それぞれ ROS_MASTER_URI のアドレスとポート番号であり、上記の通信メカニズムで説明されています。 ROSネットワークアドレスを設定する ROS サブスクライバーはインターフェースからメッセージを受信するため、トピック、メッセージ タイプ、サンプル時間はインターフェース内のプログラムに対応している必要があります。 ROS サブスクリプションの設定 デバッグと検証を容易にするために、MATLAB 側で ROS が起動されるようになりました。設定プロセスは次のとおりです。 MATLAB セットアップ手順: 3.1.2 トラックシムの設定 設定インターフェース Trucksim はウィザードベースのプログラミング プログラムです。パラメータ構成インターフェイス: トラックの場合は 5A Tractor (SS_SSS) を選択します。具体的なパラメータについては、図 3 を参照してください。制御インターフェイス: モデルの場合は simulink を選択します。 メインインターフェース 入力パラメータ設定インターフェース 出力パラメータ設定インターフェース 3.2 Apollo、rosbridge、Trucksimソリューション3.2.1 apollo での rosbridge の設定 rosbridge のインストールに関するオンライン チュートリアルは多数あるため、この記事では詳細には触れません。 使い方は次のとおりです: ros_pkgs_ws をCDに追加 キャットキンメイク rosbridgeを開始 ソース /apollo/ros_pkgs_ws/devel/setup.bash PATH=/usr/local/miniconda2/bin:$PATH roslaunch rosbridge_server rosbridge_websocket.launch 3.2.1 Qtプロジェクトの設定手順 3.2.1.1 Qt と CMake のバージョン情報 3.2.1.3 アポロ計画とQT計画のインターフェース定義 /アポロ/トラックシム/ポーズ
4. ユーザーエクスペリエンス
注: 2) モデルの更新頻度は、TruckSim 公式サイトで推奨されている 1000hz に設定されています。この頻度で車両の揺れの問題を解決できることが実証されています。
注: オリジナルリンク: https://mp.weixin.qq.com/s/8QNp5iQebE3lPJzEgq_bOA |
<<: 未来を受け入れる: 2024 年のホームオートメーションの 5 つのトレンド
>>: まだ NeRF に取り組んでいますか?リアルタイムレンダリングでリアルな自動運転データを生成!ストリートガウス:すべての SOTA を超えよう!
適応型学習は、人工知能などの高度なテクノロジーを活用して、パーソナライズされた学習体験を生み出す教育...
最近、ロボットに関する非常に良い記事をいくつか読んだので、自分の考えを書き留めながら翻訳してみようと...
1. 伝統的なナレッジマネジメントの背景と課題1. 企業知識管理の必要性ナレッジ マネジメントは、あ...
[[428092]]現在、AI の大きなトレンドは何ですか?そうです、データセットのサイズを拡大し...
BARD や CHATGPT/GPT-4 などの大規模言語モデルの機能は誰の目にも明らかです。これ...
最近、AIコードエディタCursorが人気になってきました—— GPT-3.5/GPT-4 に接続す...
最近、InstantX と名乗る、Xiaohongshu 出身の 95 歳以上の謎のチームが大きな動...
規模に関係なく、企業はニーズに合わせてカスタマイズされたビジネス インテリジェンス ツールを使用して...
近年、原子力技術と人工知能(AI)の融合により、原子力AIと呼ばれる強力な相乗効果が生み出されていま...
[[441526]]近年、ディープラーニングは一連のタスク(画像認識、物体認識、セマンティックセグメ...
この記事は、公開アカウント「Reading the Core」(ID: AI_Discovery)か...
ChatGPTが11月下旬にリリースされて以来、テクノロジー業界の多くの人々は、OpenAIの資金...