Ignition Robotics プロジェクト

このページには、Google Season of Docs で承認されたテクニカル ライティング プロジェクトの詳細が掲載されています。

プロジェクトの概要

オープンソースの組織:
Ignition Robotics
テクニカル ライター:
タイ語の
プロジェクト名:
Ignition Physics チュートリアルと API ドキュメント
プロジェクトの長さ:
標準期間(3 か月)

プロジェクトの説明

動機

Ignition Physics ライブラリを使用すると、Ignition Gazebo シミュレーションのバックエンドにポートされた物理エンジンを柔軟に使用できます。多くの外部物理エンジンは、Gazebo シミュレーションを強化するために、その機能とアプリケーション コンテキストに応じてさまざまな機能セットで構成されるプラグインとしてライブラリに適応できます。ただし、ライブラリの現在の段階では、次の機能は提供されていません。

  • カスタムの物理エンジンを使用してシミュレーションを強化するカスタム物理プラグインの作成に関する包括的なチュートリアル
  • 一貫した API ドキュメント

この提案は、これらの問題を解決し、プロジェクトのメンテナンスの改善と、新しいコントリビューターとユーザーのより原則的なガイダンスを目的としています。文書化プロセスの詳細については次のセクションで説明します。その後に、プロジェクトを完了するための期間を計画するためのマイルストーンのセクションで説明します。最後に、現在のドキュメントに関する注意事項をいくつか説明します。

説明

このプロジェクトには、次の 2 つの主な目標があります。

  • 現在のライブラリ API とインターフェースするカスタム物理プラグインの作成に関する詳細なチュートリアルを作成します。
  • メンテナンスとコラボレーションを目的として、現在のライブラリ API ドキュメントを強化しました。

現在、このライブラリでサポートされている物理エンジンは DART のみです。そのため、チュートリアルでは DART を中心に説明します。初期のチュートリアルは次のとおりです。

  1. 概要: Ignition Physics ライブラリの概要、サポートされている物理エンジン、目標について説明します。
  2. インストール: アプリケーションのコンテキストに応じて必要な物理エンジンをインストールするようユーザーに案内します。このチュートリアルでは、特定のシミュレーションを適応させるための、各物理エンジン プラグインの構成例も示します。
  3. DART プラグインの使用: Gazebo シミュレーションでの DART 物理エンジンの使用例について説明します。このチュートリアルでは、特定のサンプル環境で Gazebo シミュレーションのバックエンドとしてこのライブラリを起動するための一連の実行と構成について説明します。
  4. カスタム プラグインを作成する: 新規ユーザーやデベロッパーが、なんらかの形式の設定ファイル(クラス テンプレートなど)を使用してカスタム物理エンジンに基づくカスタム プラグインを作成し、物理エンジン API とこのライブラリ API 間のインターフェースを開発できるようにガイドします。サニティ チェックの一部は、チュートリアルの最後に確認できます。
  5. シミュレーションで複数のプラグインを使用する(議論が必要): シミュレーションの例で、実行時に複数のプラグインを同時に使用する方法について説明します。

チュートリアルの構成、説明、コンテンツの詳細な計画については、コミュニティの結束期間に話し合います。これらのチュートリアルの作成者は、リポジトリにマージする前に、チュートリアルの手順の有効性を確認する必要があります。

API ドキュメントについては、このライブラリの Google C++ ドキュメント スタイルに適応できます。たとえば、すべてのクラスにクラスレベルの説明が必要です。さらに、すべての公開関数には、説明、すべての引数、可能な戻り値と例外を記述する必要があります。最も重要なクラス(dartsim::RetrieveWorld、Feature など)を、より簡単なトップダウン アプローチとして最初に記述することをおすすめします。ドキュメントのスタイルや重要なクラスの識別については、コミュニティ ボンディング期間に説明します。

マイルストーン

このセクションでは、プロジェクトの目標を達成するための最初のタイムラインを計画します。時間計画は次のとおりです。

  • 8 月 17 日~ 9 月 13 日: コミュニティの絆:

    1. プロジェクトのスコープとチュートリアルの計画、ライターとメンターの両方の期待値を定めるミーティングを設定します。
    2. Ignition Physics のソースコードの全体像を把握します。
  • 9 月 14 日~ 10 月 31 日: 上記のチュートリアルの下書きを作成し、メンターとライターがミーティングで反復的に調整します。

  • 11 月 1 日~ 11 月 30 日: 最も重要なクラスの API ドキュメントを作成し、Doxygen を使用してドキュメントをコンパイルします。

  • 12 月 1 日~ 12 月 5 日: プロジェクト レポートを作成する。

  • GSoD 2020 後: Ignition Robotics と連携して、作品をさらに改善し、維持していきたいです。

最終情報

apt-get を使用したバイナリ インストールが Ubuntu 18.04 で動作しないため、Ignition Physics のトップページにある現在の README.md を改訂する必要があります。ソース インストール セクションも、形式が正しくないためリビジョンが必要です。