Синхронний танець кількох квадрокоптерів Ardrone 2.0

В цій статті я писав про квадрокоптери Ardrone 2.0, у якого є відкритий API, що дозволяє використовувати його в експериментах робототехніки. Для управління Ardrone 2.0 я використовував пакет ardrone_autonomy операційної системи для роботів ROS. Потім був експеримент з голосовим управлінням  - Голосове управління квадрокоптером Ardrone 2.0 з ROS.  І ось новий проект з Ardrone 2.0. Синхронний танець кількох квадрокоптерів Ardrone 2.0 - за мотивами шоу, показаного компанією Parrot на CES 2013, відео можна подивитися тут.

Комплектація
1. ARDrone 2.0 - 4 шт.
2. 4 нетбука
 Ubuntu 11.4
 ROS fuerte
 пакет ardrone_autonomy
 пакет vp_ardrone2 (https://github.com/victoruni/vp_ardrone2)

3. 1 ноутбук - rosbridge-сервер для нетбуків
  Ubuntu 11.10
  ROS fuerte
  пакет ardrone_autonomy, rosbridge, usb_cam
  пакет vp_ardrone2 (https://github.com/victoruni/vp_ardrone2)

4. Для організації мережі для 4 нетбуків і ноутбука - мережевий комутатор на 5 портів.

Про установку пакетів писати не буду, інформацію можна знайти в мережі.

Кожен нетбук з'єднаний по wifi з квадрокоптером, управління здійснюється з ROS, використовується пакет ardrone_autonomy та написаний для цього проекту пакет vp_ardrone2 (https://github.com/victoruni/vp_ardrone2), обробка команди сценарію, частина команд - це анімації з API Ardrone 2.0, частину рухів довелося прописувати вручну.Один з ноутбуків використовувався в якості табло, де можна вибрати попередньо написаний сценарій для кожного квадрокоптера, вибрати квадрокоптери для запуску, запустити шоу на виконання, на табло також відображається деяка інформація з датчиків.  При запуску сценаріїв на виконання центральний комп'ютер, зчитує покроково команди сценарію для кожного нетбука, і відправляє на кожен комп'ютер, по завершенню виконання команди від нетбука приходить сигнал, і центральний комп'ютер відправляє на виконання наступну команду сценарію. На табло відображається поточна команда сценарію для кожного квадрокоптера. І просто зображення з центральної камери одного з квадрокоптерів.

Запуск(для кожного нетбука і ноутбука): в якості терміналу зручно використовувати GuakeTerminal
  1 монітор
   roscore
  2 монітор
   roslaunch vp_ardrone2 www.launch
  3 монітор - після з'єднання нетбука з квадрокоптером
   roslaunch ardrone_autonomy ardrone1.launch
 В браузері ноутбука (тільки Google Chrome (не Chrome!!!) - в інших не запускається js файл музичного супроводу)

Браузер:
http://localhost:8000/vp_ardrone2/tablo.html

Файл проекту у вкладенні або взяти можна на github - https://github.com/victoruni/vp_ardrone2

І маленьке відео - запуск частини сценарію на одному квадрокоптері

І відео пояснення як запускати і як працює інтерфейс на прикладі сценарію світлових анімацій.

Прикріплені файли:
Top