Giter VIP home page Giter VIP logo

profi2021_bachelor_solution's Introduction

Важные замечания

  • Желаемая высота полета квадрокоптера в различных тестовых сценариях задается посредством рос-параметра altitude_desired в момент запуска рос-пакета. Участник должен реализовать соответствующий функционал.

  • Движение квадрокоптера по трассе должно осуществляться по часовой стрелке. Модель квадрокоптера создается в сцене так, что "перед" квадрокоптера направлен в том направлении трассы, куда должно быть начато движение. (Т.е. при создании модели квадрокоптера в сцене ось X системы координат base_link квадрокоптера направлена в сторону движения по трассе по часовой стрелке)

  • При реализации алгоритмов управления рекомендуется использоваться время симуляции rostime

  • Решение участника должно запскаться вызовом единствевнного ros-launch файла launch/solution.launch.

quadrator_track_1

Репозиторий содержит программное обеспечение для подготовки и сдачи задания категории Бакалавриат направления Робототехники олимпиады Я - Профессионал.

Данный репозиторий будет использоваться для проведения оценки заданий участников.

Предоставялемое программное обеспечение включает ROS-пакет, содержащий пример управления квадрокоптером и получения изображения с его бортовой камеры в симуляторе gazebo.

Работа с пакетом предполагается из docker-контейнера предоставляемого участникам в составе основного репозитория олимпиады и совместно с репозиторием с описанием сцены и квадрокоптера для симулятора, соответственно, предоставляемые далее инструкции требуют предварительно выполнить инструкции, представленные в обозначенных репозиториях.

Установка программного обеспечения

  1. В новом терминале вне docker-контейнера перейдите в корневую директорию основного репозитория олимпиады и склонируйте данный репозиторий в рабочее окружение выполнив:

     cd workspace/src
     git clone https://gitlab.com/beerlab/iprofi2021/profi2021_bachelor_solution.git
    
  2. Откройте bash-сессию внутри контейнера, перейдите в смонтированное рабочее окружение и соберите все пакеты:

     bash docker/into_docker.sh
     cd /workspace
     catkin build
    

Описание программного обеспечения

  1. Репозиторий представляет собой ROS-пакет, который участникам олимпиады предстоит использовать для представления своего решения для оценки. Пакет включает в себя пример управления квадрокоптером и получения изображения с его бортовой камеры.

  2. Перед запуском примера убедитесь, что программное обеспечение из репозитория с описанием сцены и квадрокоптера для симулятора установленно корректно.

    Запустите симулятор выполнив:

     roslaunch profi2021_bachelor_scene start_scene.launch
    

    Дождитесь окончания загрузки симулятора и появления квадрокоптера на сцене. Для запуска примера в новой bash-сессии внутри контейнера выполните:

     roslaunch profi2021_bachelor_solution solution.launch
    

    При успешном выполнении всех выше обозначенных действий должно появиться дополнительное окно с выводом изображения с бортовой камеры квадрокоптера, сам квадрокоптер осуществит взлет на некоторую высоту и начнет исполнять траекторию в форме восьмерки:

    quadrator_track_1_example

    Исходный код примера находится в scripts/simple_move.py (src/simple_move.cpp) и представляет собой ROS-узел /quadrator_simple_move. Узел подписывается на топик с изображением /image с камеры робота, запускает двигатели квадрокоптера используя сервис /enable_motors и публикует желаемую скорость робота в топик /cmd_vel. На рисунке ниже соответствующие топики и узлы представленны схематически:

    scheme

profi2021_bachelor_solution's People

Contributors

kirillin avatar nickodema avatar yladzislay avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.