Увеличиваем радиус связи у Ar.Drone 2.0

Тема в разделе "Глядите, что я сделал", создана пользователем Александр Земсков, 15 янв 2016.

  1. Всем привет! Думаю, что многие знают про квадрокоптер Parrot Ar.Drone 2.0.
    Некоторые сведения об устройстве:
    • Является недорогим устройством, идеальным для начинающих.
    • Управляется с телефона при помощи специальной программы от Parrot или с компьютера(но там уже программы сторонних разработчиков)
    • При включении раздает незащищенную wifi сеть, к которой вы подключаетесь и управляете им.
    И вот увидев коробку с ним у себя на полке, я смахнул с нее пыль и начал мучать бедный квадрокоптер.
    Поиграв с бедным устройством пол часа я поставил аккумуляторы на зарядку и тут мою голову посетила мысль: "Так что же это получается? Если wifi без пароля, то хакнуть квадрокоптер не составляет труда!" И тут же я начал изучать всякие мануалы и инструкции. И из них я узнал следующую полезную информацию:
    • ip квадрокоптера в его сети 192.168.1.1
    • Квадрокоптер работает на БизиБоксе
    • Квадрокоптер имеет telnet интерфейс на порту 23
    И тут ко мне в голову закралась мысль: А что если сделать сеть и защищенной и дальность увеличить?
    После еще часа изучения всяких мануалов и проработки разных вариантов функционирования, я пришел к одной лучшей на мой взгляд идее, которой готов с вами поделиться.
    Итак на понадобятся:
    • Parrot Ar.Drone 2.0
    • Компьютер (можно обойтись и телефоном, но на компьютере удобнее работать с telnet)
    • Wi-fi роутер (подойдет любой современный роутер, но лучше брать с большим радиусом связи) Лично я использовал Asus RT-N12VP


    Шаг 1: Настройка роутера:

    Для начала нам надо раздать сеть с роутера (я раздал без пароля(ибо плохо знаю iwconfig в линуксе), но сделал ее скрытой, выдав ей ssid - drone) и еще одна важная вещь: роутер желательно должен оперировать с диапазоном ip 192.168.1.x и админку его НАДО повесить на любой ip, кроме 192.168.1.1(а ведь этот адрес везде по умолчанию стоит). Лично я поставил админку на 192.168.1.51 и успокоился.


    Шаг 2: Подготовка скрипта для дрона:

    Итак нам надо подключиться к wifi использую консоль дрона, которая доступна по wifi (который при наших манипуляциях отключится), что же нам делать? На помощь придут .sh скрипты в linux'е!
    Сначала открываем блокнот на компьютере и редактируем вот этот скрипт:
    Код (Bash):
    killall udhcpd
    ifconfig ath0 down
    iwconfig ath0 mode managed essid СЮДА ИМЯ СЕТИ РОУТЕРА
    ifconfig ath0 192.168.1.1 netmask 255.255.255.0 up
    Лично у меня получилось вот так:
    Код (Bash):
    killall udhcpd
    ifconfig ath0 down
    iwconfig ath0 mode managed essid drone
    ifconfig ath0 192.168.1.1 netmask 255.255.255.0 up
    И оставляем блокнот с этим скриптом открытым для последующих шагов.


    Шаг 3: Подключаемся!

    Для подключения к telnet дрона лучше всего подойдет программка putty, подключаем компьютер к wifi, розданному квадрокоптером и открываем терминал, вписав в putty ip 192.168.1.1, порт 23 и выбрав в ней telnet. Откроется консоль.


    Шаг 4: Выгружаем скрипт

    Скрипт у нас будет храниться в директории data и называться wifi.sh, поэтому выполняем в терминале команду:
    Код (Text):
    vi /data/wifi.sh
    Откроется редактор vi, нажимаем клавишу i для начала редактирования и скопировав наш скрипт из блокнота, вставляем в vi, нажав правой кнопкой мыши по окну putty.
    Теперь нажимаем Esc для выхода из режима редактирования и вводим:
    Код (Text):
    :wq
    Нажимаем Enter, все. Наш скрипт сохранился и мы попали обратно в консоль.


    Шаг 5: Манипуляции со скриптом

    Скрипт выружен, но запустить мы его не сможем потому, что он не исполяемый, чтобы его таковым сделать надо прописать следующую команду:
    Код (Text):
    chmod +x /data/wifi.sh
    Теперь он стал исполняемым и у нас все готово!


    Шаг 6: Проверяем скрипт

    Выполняем в консоли команду:
    Код (Text):
    ./data/wifi.sh
    После ее выполнения wifi квадрокоптера отключится и он подключится к роутеру.
    Подключаем телефон к нашему роутеру и открываем freeflight(ПО для управления), если мы все сделали правильно, то все заработает, если ничего не работает, то не бойтесь, ваш ar.drone не превратился в кирпич! Так как мы не прописали наш скрипт в автозапуск(И НЕ РЕКОМЕНДУЮ ЭТОГО ДЕЛАТЬ!), все настройки системы вернутся в нормальное состояние после перезагрузки коптера(отключить и подключить аккумулятор). Если ничего не заработало, ищите ошибку в своих действиях, а если заработало, то поздравляю!


    Шаг 7: Как использовать в дальнейшем

    Теперь, когда скрипт загружен нам остается по приезду на место полетов только несколько действий:
    1. Включить квадрокоптер
    2. Подключиться к его wi-fi сети
    3. Открыть telnet с Ar.Drone (я это делаю с телефона так как там надо ввести всего одну команду)
    4. Ввести команду
      Код (Text):
      ./data/wifi.sh
    5. Подключиться к роутеру
    6. Летать
    ВНИМАНИЕ! Во время полета в таком режиме уровень сигнала отображается не правильно и есть вероятность его потери


    Все материалы в данной статье несут строго ознакомительный характер и ответственность за свои квадрокоптеры несете только вы.
     
  2. vvr

    vvr Инженерище

    Саша, это классно, а причём здесь ардуино ?:)
     
  3. А с чего ты взял, что форум посвящён сугубо ардуино? ;)
     
  4. MilkyWay

    MilkyWay Нерд


    Используй специальную антену как у провайдеров она и как мощная антена и как роутер. На 2км WiFi будет. На даче поставил так на всю деревню WiFi. Только очень дорогая антена
     
  5. olegtur77

    olegtur77 Нерд

    А ниче что ардрон расчитан на недлительный полет и несколько начинающих "пилотов" , которым противопоказано здравым смыслом отпускать от себя модель далеко. Он хоть и на колекторниках, но в случае нанесения травмы могут быть последствия. Ардрон это игрушка и использовать его нужно как игрушку.