ashapipro 1.0.0

Creator: codyrutscher

Last updated:

Add to Cart

Description:

ashapipro 1.0.0

ashapipro
ASHAPIPRO - Autonomous Ship Handling Application Programming Interface Prototypes library - компонент Библиотека прототипов Имитационного Программного Комплекса Автономного Судовождения (ИПКАС).
Библиотека прототипов содержит примеры реализации систем управления движением судна, разработанные на основе известных алгоритмов и доступные стороннему разработчику, а также коллекцию примеров использования внешнего программного интерфейса комплекса, что облегчает сторонним разработчикам процесс ознакомления с доступными средствами разработки и набором доступных сигналов и данных симуляции.
Библиотека прототипов реализуется на языке Python на основе внешних программных интерфейсов, предоставляемых компонентом Шлюз программного интерфейса (ashapi). Таким образом системы управления, реализованные в библиотеке прототипов, получают доступ ко всем данным симуляции и осуществляют управление через Шлюз программного интерфейса.
Исследователь, который использует имитационный программный комплекс как интегрированную среду для разработки и тестирования своих проектов в сфере автономного судовождения, может воспользоваться предоставленными системами управления и/или алгоритмами напрямую для проведения испытания, или включить их в код своего проекта, что позволит ускорить разработку более высокоуровневых систем управления.
Примеры использования
Tutorials
В модуле tutorials даны примеры использования модуля ashapi совместно с ИПКАС:


tutorials/objects
Примеры работы с данными ИПКАС (получение списка моделей, областей маневрирования,сцен, записей и обработка этих данных).


tutorials/environment
Примеры получения свойств и установки настроек окружающей среды проводимого испытания (ветер, волнение, течение, время суток, условия видимости и погодные условия).


tutorials/objects
Примеры получения набора объектов в проводимом испытании, получение их свойств и управление параметрами объектов и оборудования, добавление объектов.


tutorials/recording
Примеры загрузки сохранённых файлов записи испытаний и работы с ними (запуск воспроизведения, перемотка времени, установка скорости воспроизведения, пошаговое воспроизведение и прочее).


tutorials/routes
Примеры получения набора маршрутов в проводимом испытании, получение данных о наборе точек маршрута и их свойств, добавление и редактирование маршрутов.


tutorials/scene
Примеры загрузки сохранённых сцен испытаний, создание новых сцен, и примеры работы с данными сцены (получение набора объектов, маршрутов и т.п.).


tutorials/simulation
Примеры управления симуляцией (запуск, пауза, изменение скорости симуляции, пошаговое исполнение).


Autopilot
В модуле autopilot дан пример реализации модели автопилота. Приведены реализации регуляторов управления курсом и скоростью судна, а также реализация регулятора, осуществляющего управление судном для удержания его на маршруте.
Примеры использования регуляторов для управления судном в ИПКАС даны в модуле tutorials:


Управление курсом:
tutorials/objects/cargo_keep_course.py


Управление скоростью:
tutorials/objects/cargo_keep_speed.py


Удержание на маршруте:
tutorials/routes/tuga_follow_route.py


Routes
В модуле routes даны реализация алгоритмов построения графов и поиска пути в графе, которые могут быть использованы для построения навигационных маршрутов в акватории. Построение графов производится на основе данных области маневрирования ИПКАС.
Примеры построения маршрутов в области маневрирования ИПКАС даны в модуле tutorials:


Построение маршрута по алгоритму А* (поиск кратчайшего пути) на графе, в основе которого лежит разбиение области на квадратные ячейки (вершины графа), а рёбрами являются 8 ближайших (соседних) ячеек:
tutorials/routes/build_astar_path_on_area_neighbours_graph.py


Построение маршрута по алгоритму Беллмана-Форда (поиск кратчайшего пути), с использованием графа на вершинах буферного полигона:
tutorials/routes/build_bellman_ford_path_on_area_polygon_graph.py


Построение маршрута по алгоритму Дейкстры (поиск пути) на графе "все со всеми", в основе которого лежит разбиение области на квадратные ячейки (вершины графа), а рёбрами являются все ячейки, доступные из вершины по прямой:
tutorials/routes/build_dijkstra_path_on_area_all_to_all_graph.py


Установка
$ pip install ashapipro

Зависимости


simcomplex (ИПКАС - Имитационный Программный Комплекс Автономного Судовождения)


Python >= 3.8


ashapi


geopandas


networkx


folium


matplotlib


mapclassify

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.