Делаем полный FTP доступ к AR Drone 2

Этой статьей я открою серию статей о проведённых мной модификациях стандартного квадрокоптера фирмы Parrot AR Drone 2.0. Данные улучшения я (команда СОЮЗ) делал в период участия в конкурсе Летающих Роботов проводимого фирмой КРОК. Успешно дойдя до финала победить к сожалению не смог, но получил много положительных эмоций и опыта. Это я на полигоне:
крок конкурс летающих роботовВот как выглядел модифицированный дрон
AR Drone 2
Я планирую рассказать о модификациях в такой последовательности:

  1. Модифицируем AR.Drone 2.0 – ставим кнопку питания (AR.Drone 2.0 mod)
  2. Модифицируем AR.Drone 2.0 – увеличиваем дальность WiFi (AR.Drone 2.0 mod)
  3. Модифицируем AR.Drone 2.0 – подключаем Ardurino (AR.Drone 2.0 mod + Ardurino )
  4. Модифицируем AR.Drone 2.0 – подключаем ультразвуковые датчики HC-SR04 (AR.Drone 2.0 mod + HC-SR04)
  5. Модифицируем AR.Drone 2.0 – подключаем GPS U-Blox Neo-6M (AR.Drone 2.0 mod + GPS U-Blox Neo-6M)

Итак начнём :

Для проведения некоторых манипуляций мне понадобился доступ к файловой системе дрона.
AR Drone 2 по-умолчанию позволяет подключиться по FTP только к двум портам: 21 и 5551.
21 порт настроен на папку для AR Academy: туда складываются данные о полете, которые впоследствии можно наложить на запись видео или выложить в интернет.

5551 порт предназначен исключительно для обновления квадрокоптера.

Ну и захотелось мне получить полный доступ к файловой структуре дрона. О том, как это сделать ниже.

1. Для тех кто пользует стационарный компьютер нужна будет WiFi-сетевая карта, через которую можно подключиться к точке доступа WiFi. Для ноутбуков это не проблема, но не в каждом настольном компьютере такая карта есть. AR Drone 2 запускает свою WiFi точку доступа, с которой и будем работать.

2. Для начала, если не установлен, то нужно добавить telnet, в Windows 7 необходимо сделать:

Start->Control Panel->Programs and Features-> Turn Windows features on or off и поставить галочку на Telnet Client. Конечно же, можно использовать и любой другой telnet клиент, но я люблю все стандартное, если оно работает.

window7_adding_telnet

3. Теперь стартуем telnet и подключаемся к дрону:

windows7_starting_telnet

4. Квадракоптер по-умолчанию всегда имеет IP адрес 192.168.1.1. Подключаемся, набрав команду

open 192.168.1.1:

Welcome to Microsoft Telnet Client
Escape Character is ‘CTRL+]’
Microsoft Telnet> open 192.168.1.1

Нас приветствует BusyBox, теперь можем выполнять команды непосредственно на квадракоптере:

BusyBox v1.14.0 () built-in shell (ash)
Enter ‘help’ for a list of built-in commands.
Переходим в папку /etc командой cd:

# cd etc
Смотрим листинг файлов в этой папке командой ls:

# ls
coredumb_enabled hosts ld.so.cache protocols
fstab inetd.conf nsswitch.conf resolv.conf
group init.d passwd udhcpd.conf
hostname inittab profile usb.ids

Будем править файл inetd.conf, запускаем редактор командой wi:

# wi inetd.conf
21 stream tcp nowait root ftpd ftpd -w /data/video
5551 stream tcp nowait root ftpd ftpd -w /update
Как видите, две строки уже прописаны. Это те порты FTP и их папки, о которых я говорил выше. Добавим новый порт 5000 с доступом ко всей файловой системе устройства. Для этого перемещаем курсор на конец второй строки и нажимаем ‘I’ (войти в режим вставки).

Добавляем еще одну строку:

5000 stream tcp nowait root ftpd ftpd -w /
Для окончания редактирования нажимаем ESC.
Теперь необходимо сохранить изменения в файле, выполняем команду сохранения :w:

:w
На этом все, выходим из редактора командой :q:

:q
Изменения вступят в силу после перезагрузки, поэтому можем сразу выполнить команду reboot для этого:

reboot
5. Подключаемся к FTP квадракоптера на 5000 порту. Для этого я использую встроенный FTP-клиент в Total Commander, но, конечно же, можно использовать любой.

Мои настройки в Total Commander:

ftp_settings_total_commander

6. Все, полный доступ к файловой систему дрона получен.

2 комментария

  1. Сергей:

    Полезно, спасибо! Хотелось бы и остальные пункты почитать, особенно про подключение gps

  2. Артём:

    команда WI на самом деле — VI часа 2 пытался понять что не так делаю… Правда появился странный глюк — только сейчас попробовал запустить — а он подключается к нему по IP 192.168.1.2 и в итоге программа не видит квадрик. Что делать не знаю 🙁

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *