На этой странице содержится подробная информация о проекте технического написания, принятом для участия в Google Season of Docs.
Краткое описание проекта
- Организация с открытым исходным кодом:
- Зажигание Робототехника
- Технический писатель:
- Тай Ле
- Название проекта:
- Учебные пособия по физике зажигания и документация по API
- Длина проекта:
- Стандартная продолжительность (3 месяца)
Описание проекта
Мотивация
Библиотека Ignition Physics позволяет гибко использовать физические движки, переносимые на серверную часть моделирования Ignition Gazebo. Многие внешние физические движки можно адаптировать к библиотеке в виде плагинов, состоящих из различных наборов функций в соответствии с их возможностями и контекстами приложений, чтобы обеспечить симуляцию беседки. Однако текущий этап библиотеки не обеспечивает:
- подробные руководства по созданию пользовательских плагинов физики, которые используют собственные физические движки для моделирования.
- последовательная документация по API
Это предложение направлено на решение этих проблем для лучшего обслуживания проекта и более принципиального руководства новыми участниками и пользователями. Подробности процесса документирования будут обсуждаться в следующем разделе, а затем последует этапный раздел, посвященный планированию сроков завершения проекта. Наконец, упоминаются некоторые примечания к текущей документации.
Описание
Этот проект преследует две основные цели:
- Создайте подробные руководства по созданию собственного плагина физики, взаимодействующего с текущим API библиотеки.
- Улучшите текущую документацию по API библиотеки для целей обслуживания и совместной работы.
В настоящее время DART является единственным поддерживаемым физическим движком этой библиотеки. Следовательно, учебные пособия будут вращаться вокруг DART. Эти начальные учебные пособия будут рассмотрены:
- Введение : описывает высокоуровневую архитектуру библиотеки физики зажигания, поддерживаемые физические движки и цели.
- Установка : помогает пользователю при необходимости установить необходимые физические движки в зависимости от контекста приложения. В этом руководстве также демонстрируются примеры конфигураций для каждого плагина физического движка для адаптации к конкретной симуляции.
- Использование плагина DART : описывает пример использования физического движка DART при моделировании Gazebo. Учебное пособие состоит из последовательности выполнения и настройки для запуска этой библиотеки в качестве серверной части для моделирования Gazebo в конкретной примерной среде.
- Создать собственный плагин : помогает новому пользователю или разработчику создать собственный плагин на основе пользовательского физического движка с помощью некоторых форм файлов конфигурации (возможно, шаблонов классов) и разработать интерфейс между API физического движка и API этой библиотеки. Некоторые проверки работоспособности можно отметить в конце руководства.
- Использование нескольких плагинов при моделировании (нужно обсуждение) : описывает, как одновременно использовать несколько плагинов во время выполнения для примера моделирования.
Дальнейшее планирование структуры, описаний и содержания учебных пособий будет обсуждаться в период взаимодействия с сообществом. Действительно, автор этих учебных пособий должен убедиться в достоверности шагов учебного пособия перед слиянием с репозиторием.
Для документации API можно адаптировать стиль документации Google C++ для этой библиотеки. Например, все классы должны иметь описание уровня класса. Более того, все публичные функции должны быть задокументированы с описанием, всеми их аргументами, а также возможными возвращаемыми значениями и исключениями. Полезно, чтобы наиболее важные классы (например, dartsim::RetrieveWorld, Feature и т. д.) были задокументированы первыми, поскольку это более простой подход «сверху вниз». Дальнейший стиль документации, важная идентификация классов будут обсуждаться в период взаимодействия с сообществом.
Вехи
В этом разделе планируются первоначальные сроки достижения упомянутых целей проекта. Планирование времени следующее:
17 августа – 13 сентября: Сплочение сообщества:
- Организуйте встречи для определения объемов проекта и планирования обучения, а также ожиданий как от автора, так и от наставников.
- Взгляните на общую картину исходного кода Ignition Physics.
14 сентября – 31 октября: Составьте проекты упомянутых руководств с периодическими уточнениями между наставниками и автором посредством встреч.
1–30 ноября: Напишите документацию по API для наиболее важных классов и скомпилируйте документацию с помощью Doxygen.
1 декабря – 5 декабря: Напишите отчет по проекту.
После GSoD 2020: Я хотел бы оставаться на связи с Ignition Robotics, чтобы и дальше улучшать и поддерживать свои работы.
Заключительные замечания
Крайне важно пересмотреть текущий README.md на первой странице Ignition Physics , поскольку бинарная установка с использованием apt-get не работает в Ubuntu 18.04. Раздел установки исходного кода также нуждается в доработке из-за неправильного форматирования.